CvLuaGame::lGetNumWorldWonders(lua_State *)
- Defined in
- Lua/CvLuaGame.cpp, line 1125
- Class
- CvLuaGame
- Hook name
CivHooks::CvLuaGame_lGetNumWorldWonders
Hooks
static bool BeforeCvLuaGame_lGetNumWorldWonders(lua_State* L, int& result);static void AfterCvLuaGame_lGetNumWorldWonders(lua_State* L, int& result);static int ReplaceCvLuaGame_lGetNumWorldWonders(int (*original)(lua_State*), lua_State* L);CivRegisterBefore<CivHooks::CvLuaGame_lGetNumWorldWonders>(host, &BeforeCvLuaGame_lGetNumWorldWonders);CivRegisterAfter<CivHooks::CvLuaGame_lGetNumWorldWonders>(host, &AfterCvLuaGame_lGetNumWorldWonders);CivRegisterReplace<CivHooks::CvLuaGame_lGetNumWorldWonders>(host, &ReplaceCvLuaGame_lGetNumWorldWonders);
Code
1124//int GetNumWorldWonders();1125int CvLuaGame::lGetNumWorldWonders(lua_State* L)1126{1127 int iWonderCount = 0;11281129 // Loop through all players1130 PlayerTypes eLoopPlayer;1131 for(int iPlayerLoop = 0; iPlayerLoop < MAX_PLAYERS; iPlayerLoop++)1132 {1133 eLoopPlayer = (PlayerTypes) iPlayerLoop;1134 CvPlayerAI& kLoopPlayer = GET_PLAYER(eLoopPlayer);11351136 // Loop through all buildings, see if they're a world wonder1137 for(int iBuildingLoop = 0; iBuildingLoop < GC.getNumBuildingInfos(); iBuildingLoop++)1138 {1139 const BuildingTypes eBuilding = static_cast<BuildingTypes>(iBuildingLoop);1140 CvBuildingEntry* pkBuildingInfo = GC.getBuildingInfo(eBuilding);1141 if(pkBuildingInfo)1142 {1143 if(::isWorldWonderClass(pkBuildingInfo->GetBuildingClassInfo()))1144 {1145 iWonderCount += kLoopPlayer.countNumBuildings(eBuilding);1146 }1147 }1148 }1149 }11501151 lua_pushinteger(L, iWonderCount);1152 return 1;1153}