CvPlayer::removeBuildingClass(BuildingClassTypes)
- Defined in
- CvPlayer.cpp, line 9075
- Class
- CvPlayer
- Hook name
CivHooks::CvPlayer_removeBuildingClass
Hooks
static bool BeforeCvPlayer_removeBuildingClass(CvPlayer* self, BuildingClassTypes eBuildingClass);static void AfterCvPlayer_removeBuildingClass(CvPlayer* self, BuildingClassTypes eBuildingClass);static void ReplaceCvPlayer_removeBuildingClass(void (*original)(CvPlayer*, BuildingClassTypes), CvPlayer* self, BuildingClassTypes eBuildingClass);CivRegisterBefore<CivHooks::CvPlayer_removeBuildingClass>(host, &BeforeCvPlayer_removeBuildingClass);CivRegisterAfter<CivHooks::CvPlayer_removeBuildingClass>(host, &AfterCvPlayer_removeBuildingClass);CivRegisterReplace<CivHooks::CvPlayer_removeBuildingClass>(host, &ReplaceCvPlayer_removeBuildingClass);
Code
9075void CvPlayer::removeBuildingClass(BuildingClassTypes eBuildingClass)9076{9077 CvCity* pLoopCity;9078 BuildingTypes eBuilding;9079 int iLoop;90809081 eBuilding = ((BuildingTypes)(getCivilizationInfo().getCivilizationBuildings(eBuildingClass)));90829083 if(eBuilding != NO_BUILDING)9084 {9085 for(pLoopCity = firstCity(&iLoop); pLoopCity != NULL; pLoopCity = nextCity(&iLoop))9086 {9087 if(pLoopCity->GetCityBuildings()->GetNumRealBuilding(eBuilding) > 0)9088 {9089 pLoopCity->GetCityBuildings()->SetNumRealBuilding(eBuilding, 0);9090 break;9091 }9092 }9093 }9094}