CvCityCulture::GetCultureFromWonders() const
- Defined in
- CvCultureClasses.cpp, line 5249
- Class
- CvCityCulture
- Hook name
CivHooks::CvCityCulture_GetCultureFromWonders
Hooks
static bool BeforeCvCityCulture_GetCultureFromWonders(const CvCityCulture* self, int& result);static void AfterCvCityCulture_GetCultureFromWonders(const CvCityCulture* self, int& result);static int ReplaceCvCityCulture_GetCultureFromWonders(int (*original)(const CvCityCulture*), const CvCityCulture* self);CivRegisterBefore<CivHooks::CvCityCulture_GetCultureFromWonders>(host, &BeforeCvCityCulture_GetCultureFromWonders);CivRegisterAfter<CivHooks::CvCityCulture_GetCultureFromWonders>(host, &AfterCvCityCulture_GetCultureFromWonders);CivRegisterReplace<CivHooks::CvCityCulture_GetCultureFromWonders>(host, &ReplaceCvCityCulture_GetCultureFromWonders);
Code
5248/// City's current culture from wonders5249int CvCityCulture::GetCultureFromWonders() const5250{5251 int iRtnValue = 0;5252 CvPlayer &kPlayer = GET_PLAYER(m_pCity->getOwner());52535254 CvCivilizationInfo *pkCivInfo = GC.getCivilizationInfo(kPlayer.getCivilizationType());5255 if (pkCivInfo)5256 {5257 int iNumBuildingClassInfos = GC.getNumBuildingClassInfos();52585259 for(int iI = 0; iI < iNumBuildingClassInfos; iI++)5260 {5261 BuildingTypes eWonderBuilding = ((BuildingTypes)(pkCivInfo->getCivilizationBuildings(iI)));5262 if (eWonderBuilding != NO_BUILDING)5263 {5264 if(m_pCity->GetCityBuildings()->GetNumBuilding(eWonderBuilding) > 0)5265 {5266 CvBuildingEntry *pkBuildingInfo = GC.getBuildingInfo(eWonderBuilding);5267 if (pkBuildingInfo)5268 {5269 if (isWorldWonderClass(pkBuildingInfo->GetBuildingClassInfo()))5270 {5271 iRtnValue += pkBuildingInfo->GetYieldChange(YIELD_CULTURE);5272 iRtnValue += GC.getGame().GetGameLeagues()->GetWorldWonderYieldChange(m_pCity->getOwner(), YIELD_CULTURE);5273 }5274 }5275 }5276 }5277 }5278 }52795280 return iRtnValue;5281}
Calls
- CvBuildingEntry::GetBuildingClassInfo() const
- CvBuildingEntry::GetYieldChange(int) const
- CvCity::GetCityBuildings() const
- CvCity::getOwner() const
- CvCityBuildings::GetNumBuilding(BuildingTypes) const
- CvCivilizationInfo::getCivilizationBuildings(int) const
- CvGame::GetGameLeagues()
- CvGameLeagues::GetWorldWonderYieldChange(PlayerTypes, YieldTypes)
- CvGlobals::getBuildingInfo(BuildingTypes)
- CvGlobals::getCivilizationInfo(CivilizationTypes)
- CvGlobals::getGame()
- CvGlobals::getNumBuildingClassInfos()
- CvPlayer::getCivilizationType() const
- CvPlayerAI::getPlayer(PlayerTypes)
- isWorldWonderClass(const CvBuildingClassInfo &)