Bazaar developer reference

CvCity::getBaseYieldRate(YieldTypes) const

Defined in
CvCity.cpp, line 10663
Class
CvCity
Hook name
CivHooks::CvCity_getBaseYieldRate

Hooks

static bool BeforeCvCity_getBaseYieldRate(const CvCity* self, YieldTypes eIndex, int& result);static void AfterCvCity_getBaseYieldRate(const CvCity* self, YieldTypes eIndex, int& result);static int ReplaceCvCity_getBaseYieldRate(int (*original)(const CvCity*, YieldTypes), const CvCity* self, YieldTypes eIndex);CivRegisterBefore<CivHooks::CvCity_getBaseYieldRate>(host, &BeforeCvCity_getBaseYieldRate);CivRegisterAfter<CivHooks::CvCity_getBaseYieldRate>(host, &AfterCvCity_getBaseYieldRate);CivRegisterReplace<CivHooks::CvCity_getBaseYieldRate>(host, &ReplaceCvCity_getBaseYieldRate);

Code

10663int CvCity::getBaseYieldRate(YieldTypes eIndex) const10664{10665	VALIDATE_OBJECT10666	CvAssertMsg(eIndex >= 0, "eIndex expected to be >= 0");10667	CvAssertMsg(eIndex < NUM_YIELD_TYPES, "eIndex expected to be < NUM_YIELD_TYPES");1066810669	int iValue = 0;10670#if defined(MOD_GLOBAL_GREATWORK_YIELDTYPES) || defined(MOD_API_UNIFIED_YIELDS)10671	iValue += GetBaseYieldRateFromGreatWorks(eIndex);10672#endif10673	iValue += GetBaseYieldRateFromTerrain(eIndex);10674#if defined(MOD_API_UNIFIED_YIELDS)10675	iValue += GetYieldPerTurnFromUnimprovedFeatures(eIndex);10676#endif10677	iValue += GetBaseYieldRateFromBuildings(eIndex);10678	iValue += GetBaseYieldRateFromSpecialists(eIndex);10679	iValue += GetBaseYieldRateFromMisc(eIndex);10680	iValue += GetBaseYieldRateFromReligion(eIndex);1068110682#if defined(MOD_API_UNIFIED_YIELDS)10683	if (IsRouteToCapitalConnected())10684	{10685		iValue += GET_PLAYER(getOwner()).GetYieldChangeTradeRoute(eIndex);10686		iValue += GET_PLAYER(getOwner()).GetPlayerTraits()->GetYieldChangeTradeRoute(eIndex);10687	}10688#endif1068910690	return iValue;10691}

Calls

Called by