CvCityBuildings::SetBuildingProductionTimes100(BuildingTypes, int)
- Defined in
- CvBuildingClasses.cpp, line 2569
- Class
- CvCityBuildings
- Hook name
CivHooks::CvCityBuildings_SetBuildingProductionTimes100
Hooks
static bool BeforeCvCityBuildings_SetBuildingProductionTimes100(CvCityBuildings* self, BuildingTypes eIndex, int iNewValue);static void AfterCvCityBuildings_SetBuildingProductionTimes100(CvCityBuildings* self, BuildingTypes eIndex, int iNewValue);static void ReplaceCvCityBuildings_SetBuildingProductionTimes100(void (*original)(CvCityBuildings*, BuildingTypes, int), CvCityBuildings* self, BuildingTypes eIndex, int iNewValue);CivRegisterBefore<CivHooks::CvCityBuildings_SetBuildingProductionTimes100>(host, &BeforeCvCityBuildings_SetBuildingProductionTimes100);CivRegisterAfter<CivHooks::CvCityBuildings_SetBuildingProductionTimes100>(host, &AfterCvCityBuildings_SetBuildingProductionTimes100);CivRegisterReplace<CivHooks::CvCityBuildings_SetBuildingProductionTimes100>(host, &ReplaceCvCityBuildings_SetBuildingProductionTimes100);
Code
2568/// Accessor: Set how much construction is complete for this building (in hundredths)2569void CvCityBuildings::SetBuildingProductionTimes100(BuildingTypes eIndex, int iNewValue)2570{2571 CvAssertMsg(eIndex >= 0, "eIndex expected to be >= 0");2572 CvAssertMsg(eIndex < m_pBuildings->GetNumBuildings(), "eIndex expected to be < m_pBuildings->GetNumBuildings())");25732574 if(GetBuildingProductionTimes100(eIndex) != iNewValue)2575 {2576 if(GetBuildingProductionTimes100(eIndex) == 0)2577 {2578 NotifyNewBuildingStarted(eIndex);2579 }25802581 m_paiBuildingProduction[eIndex] = iNewValue;2582 CvAssert(GetBuildingProductionTimes100(eIndex) >= 0);25832584 if((m_pCity->getOwner() == GC.getGame().getActivePlayer()) && m_pCity->isCitySelected())2585 {2586 GC.GetEngineUserInterface()->setDirty(CityScreen_DIRTY_BIT, true);2587 }25882589 auto_ptr<ICvCity1> pCity = GC.WrapCityPointer(m_pCity);25902591 GC.GetEngineUserInterface()->SetSpecificCityInfoDirty(pCity.get(), CITY_UPDATE_TYPE_BANNER);2592 }2593}
Calls
- CvCity::getOwner() const
- CvCity::isCitySelected()
- CvCityBuildings::GetBuildingProductionTimes100(BuildingTypes) const
- CvCityBuildings::NotifyNewBuildingStarted(BuildingTypes)
- CvGame::getActivePlayer() const
- CvGlobals::GetEngineUserInterface()
- CvGlobals::getGame()
- CvGlobals::WrapCityPointer(CvCity *)
ICvUserInterface1::setDirtyICvUserInterface1::SetSpecificCityInfoDirtystd::auto_ptr::auto_ptrstd::auto_ptr::getstd::auto_ptr::operator auto_ptr_ref