Bazaar developer reference

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

Called by