CvCity::getDomainFreeExperienceFromGreatWorks(DomainTypes) const
- Defined in
- CvCity.cpp, line 11179
- Class
- CvCity
- Hook name
CivHooks::CvCity_getDomainFreeExperienceFromGreatWorks
Hooks
static bool BeforeCvCity_getDomainFreeExperienceFromGreatWorks(const CvCity* self, DomainTypes eIndex, int& result);static void AfterCvCity_getDomainFreeExperienceFromGreatWorks(const CvCity* self, DomainTypes eIndex, int& result);static int ReplaceCvCity_getDomainFreeExperienceFromGreatWorks(int (*original)(const CvCity*, DomainTypes), const CvCity* self, DomainTypes eIndex);CivRegisterBefore<CivHooks::CvCity_getDomainFreeExperienceFromGreatWorks>(host, &BeforeCvCity_getDomainFreeExperienceFromGreatWorks);CivRegisterAfter<CivHooks::CvCity_getDomainFreeExperienceFromGreatWorks>(host, &AfterCvCity_getDomainFreeExperienceFromGreatWorks);CivRegisterReplace<CivHooks::CvCity_getDomainFreeExperienceFromGreatWorks>(host, &ReplaceCvCity_getDomainFreeExperienceFromGreatWorks);
Code
11179int CvCity::getDomainFreeExperienceFromGreatWorks(DomainTypes eIndex) const11180{11181 VALIDATE_OBJECT11182 CvAssertMsg(eIndex >= 0, "eIndex expected to be >= 0");11183 CvAssertMsg(eIndex < NUM_DOMAIN_TYPES, "eIndex expected to be < NUM_DOMAIN_TYPES");1118411185 int iXP = 0;1118611187 CvBuildingXMLEntries* pkBuildings = GetCityBuildings()->GetBuildings();11188 for(int iBuilding = 0; iBuilding < GetCityBuildings()->GetBuildings()->GetNumBuildings(); iBuilding++)11189 {11190 CvBuildingEntry* pInfo = pkBuildings->GetEntry(iBuilding);11191 if(pInfo)11192 {11193 if (pInfo->GetDomainFreeExperiencePerGreatWork(eIndex) != 0)11194 {11195 int iGreatWorks = GetCityBuildings()->GetNumGreatWorksInBuilding((BuildingClassTypes)pInfo->GetBuildingClassType());11196 iXP += (iGreatWorks * pInfo->GetDomainFreeExperiencePerGreatWork(eIndex));11197 }11198 }11199 }1120011201 return iXP;11202}
Calls
- CvBuildingEntry::GetBuildingClassType() const
- CvBuildingEntry::GetDomainFreeExperiencePerGreatWork(int) const
- CvBuildingXMLEntries::GetEntry(int)
- CvBuildingXMLEntries::GetNumBuildings()
- CvCity::GetCityBuildings() const
- CvCityBuildings::GetBuildings() const
- CvCityBuildings::GetNumGreatWorksInBuilding(BuildingClassTypes) const