CvCity::GetYieldPerTurnFromReligion(ReligionTypes, YieldTypes) const
- Defined in
- CvCity.cpp, line 10402
- Class
- CvCity
- Hook name
CivHooks::CvCity_GetYieldPerTurnFromReligion
Hooks
static bool BeforeCvCity_GetYieldPerTurnFromReligion(const CvCity* self, ReligionTypes eReligion, YieldTypes eYield, int& result);static void AfterCvCity_GetYieldPerTurnFromReligion(const CvCity* self, ReligionTypes eReligion, YieldTypes eYield, int& result);static int ReplaceCvCity_GetYieldPerTurnFromReligion(int (*original)(const CvCity*, ReligionTypes, YieldTypes), const CvCity* self, ReligionTypes eReligion, YieldTypes eYield);CivRegisterBefore<CivHooks::CvCity_GetYieldPerTurnFromReligion>(host, &BeforeCvCity_GetYieldPerTurnFromReligion);CivRegisterAfter<CivHooks::CvCity_GetYieldPerTurnFromReligion>(host, &AfterCvCity_GetYieldPerTurnFromReligion);CivRegisterReplace<CivHooks::CvCity_GetYieldPerTurnFromReligion>(host, &ReplaceCvCity_GetYieldPerTurnFromReligion);
Code
10401/// Yield per turn from Religion10402int CvCity::GetYieldPerTurnFromReligion(ReligionTypes eReligion, YieldTypes eYield) const10403{10404 int iYieldPerTurn = 0;10405 const CvReligion* pReligion = GC.getGame().GetGameReligions()->GetReligion(eReligion, NO_PLAYER);1040610407 // Only do this for food and production, other yields from religion are handled at the player level10408 if (pReligion && (eYield == YIELD_FOOD || eYield == YIELD_PRODUCTION))10409 {10410 if (GetCityReligions()->IsHolyCityForReligion(eReligion))10411 {10412 iYieldPerTurn += pReligion->m_Beliefs.GetHolyCityYieldChange(eYield);10413 }10414 }1041510416 return iYieldPerTurn;10417}