Bazaar developer reference

CvPlayer::changeImprovementYieldChange(ImprovementTypes, YieldTypes, int)

Defined in
CvPlayer.cpp, line 21359
Class
CvPlayer
Hook name
CivHooks::CvPlayer_changeImprovementYieldChange

Hooks

static bool BeforeCvPlayer_changeImprovementYieldChange(CvPlayer* self, ImprovementTypes eIndex1, YieldTypes eIndex2, int iChange);static void AfterCvPlayer_changeImprovementYieldChange(CvPlayer* self, ImprovementTypes eIndex1, YieldTypes eIndex2, int iChange);static void ReplaceCvPlayer_changeImprovementYieldChange(void (*original)(CvPlayer*, ImprovementTypes, YieldTypes, int), CvPlayer* self, ImprovementTypes eIndex1, YieldTypes eIndex2, int iChange);CivRegisterBefore<CivHooks::CvPlayer_changeImprovementYieldChange>(host, &BeforeCvPlayer_changeImprovementYieldChange);CivRegisterAfter<CivHooks::CvPlayer_changeImprovementYieldChange>(host, &AfterCvPlayer_changeImprovementYieldChange);CivRegisterReplace<CivHooks::CvPlayer_changeImprovementYieldChange>(host, &ReplaceCvPlayer_changeImprovementYieldChange);

Code

21359void CvPlayer::changeImprovementYieldChange(ImprovementTypes eIndex1, YieldTypes eIndex2, int iChange)21360{21361	CvAssertMsg(eIndex1 >= 0, "eIndex1 is expected to be non-negative (invalid Index)");21362	CvAssertMsg(eIndex1 < GC.getNumImprovementInfos(), "eIndex1 is expected to be within maximum bounds (invalid Index)");21363	CvAssertMsg(eIndex2 >= 0, "eIndex2 is expected to be non-negative (invalid Index)");21364	CvAssertMsg(eIndex2 < NUM_YIELD_TYPES, "eIndex2 is expected to be within maximum bounds (invalid Index)");2136521366	if(iChange != 0)21367	{21368		CvAssertMsg(iChange > -50 && iChange < 50, "GAMEPLAY: Yield for a plot is either negative or a ridiculously large number. Please send Jon this with your last 5 autosaves and what changelist # you're playing.");2136921370		Firaxis::Array<int, NUM_YIELD_TYPES> yields = m_ppaaiImprovementYieldChange[eIndex1];21371		yields[eIndex2] = (m_ppaaiImprovementYieldChange[eIndex1][eIndex2] + iChange);21372		m_ppaaiImprovementYieldChange.setAt(eIndex1, yields);21373		CvAssert(getImprovementYieldChange(eIndex1, eIndex2) >= 0);2137421375		updateYield();21376	}21377}

Calls

Called by