CvLeague::GetFeatureYieldChange(FeatureTypes, YieldTypes)
- Defined in
- CvVotingClasses.cpp, line 3949
- Class
- CvLeague
- Hook name
CivHooks::CvLeague_GetFeatureYieldChange
Hooks
static bool BeforeCvLeague_GetFeatureYieldChange(CvLeague* self, FeatureTypes eFeature, YieldTypes eYield, int& result);static void AfterCvLeague_GetFeatureYieldChange(CvLeague* self, FeatureTypes eFeature, YieldTypes eYield, int& result);static int ReplaceCvLeague_GetFeatureYieldChange(int (*original)(CvLeague*, FeatureTypes, YieldTypes), CvLeague* self, FeatureTypes eFeature, YieldTypes eYield);CivRegisterBefore<CivHooks::CvLeague_GetFeatureYieldChange>(host, &BeforeCvLeague_GetFeatureYieldChange);CivRegisterAfter<CivHooks::CvLeague_GetFeatureYieldChange>(host, &AfterCvLeague_GetFeatureYieldChange);CivRegisterReplace<CivHooks::CvLeague_GetFeatureYieldChange>(host, &ReplaceCvLeague_GetFeatureYieldChange);
Code
3949int CvLeague::GetFeatureYieldChange(FeatureTypes eFeature, YieldTypes eYield)3950{3951 CvAssertMsg(eFeature != NO_FEATURE, "Looking for yield changes to NO_FEATURE. Please send Anton your save file and version.");3952 int iValue = 0;39533954 CvFeatureInfo* pInfo = GC.getFeatureInfo(eFeature);3955 if (pInfo)3956 {3957 // Natural Wonders3958 if (pInfo->IsNaturalWonder())3959 {3960 int iNaturalWonderMod = 0;3961 if (eYield == YIELD_CULTURE)3962 {3963 for (ActiveResolutionList::iterator it = m_vActiveResolutions.begin(); it != m_vActiveResolutions.end(); it++)3964 {3965 if (it->GetEffects()->iCulturePerNaturalWonder != 0)3966 {3967 iNaturalWonderMod += it->GetEffects()->iCulturePerNaturalWonder;3968 }3969 }3970 }3971 3972 iValue += iNaturalWonderMod;3973 }3974 }39753976 return iValue;3977}
Calls
BaseVector::beginBaseVector::end- CvFeatureInfo::IsNaturalWonder() const
- CvGlobals::getFeatureInfo(FeatureTypes)
- CvResolution::GetEffects()