CvCity::ChangeBaseYieldRateFromTerrain(YieldTypes, int)
- Defined in
- CvCity.cpp, line 10719
- Class
- CvCity
- Hook name
CivHooks::CvCity_ChangeBaseYieldRateFromTerrain
Hooks
static bool BeforeCvCity_ChangeBaseYieldRateFromTerrain(CvCity* self, YieldTypes eIndex, int iChange);static void AfterCvCity_ChangeBaseYieldRateFromTerrain(CvCity* self, YieldTypes eIndex, int iChange);static void ReplaceCvCity_ChangeBaseYieldRateFromTerrain(void (*original)(CvCity*, YieldTypes, int), CvCity* self, YieldTypes eIndex, int iChange);CivRegisterBefore<CivHooks::CvCity_ChangeBaseYieldRateFromTerrain>(host, &BeforeCvCity_ChangeBaseYieldRateFromTerrain);CivRegisterAfter<CivHooks::CvCity_ChangeBaseYieldRateFromTerrain>(host, &AfterCvCity_ChangeBaseYieldRateFromTerrain);CivRegisterReplace<CivHooks::CvCity_ChangeBaseYieldRateFromTerrain>(host, &ReplaceCvCity_ChangeBaseYieldRateFromTerrain);
Code
10718/// Base yield rate from Terrain10719void CvCity::ChangeBaseYieldRateFromTerrain(YieldTypes eIndex, int iChange)10720{10721 VALIDATE_OBJECT10722 CvAssertMsg(eIndex >= 0, "eIndex expected to be >= 0");10723 CvAssertMsg(eIndex < NUM_YIELD_TYPES, "eIndex expected to be < NUM_YIELD_TYPES");1072410725 if(iChange != 0)10726 {10727 m_aiBaseYieldRateFromTerrain.setAt(eIndex, m_aiBaseYieldRateFromTerrain[eIndex] + iChange);1072810729 // JAR - debugging10730 s_lastYieldUsedToUpdateRateFromTerrain = eIndex;10731 s_changeYieldFromTerreain = iChange;107321073310734 if(getTeam() == GC.getGame().getActiveTeam())10735 {10736 if(isCitySelected())10737 {10738 DLLUI->setDirty(CityScreen_DIRTY_BIT, true);10739 }10740 }10741 }10742}
Calls
- CvCity::getTeam() const
- CvCity::isCitySelected()
- CvGame::getActiveTeam()
- CvGlobals::GetEngineUserInterface()
- CvGlobals::getGame()
FAutoVariable::operator[]FAutoVariable::setAtICvUserInterface1::setDirty