CvPlot::ComputeYieldFromAdjacentImprovement(CvImprovementEntry &, ImprovementTypes, YieldTypes) const
- Defined in
- CvPlot.cpp, line 4866
- Class
- CvPlot
- Hook name
CivHooks::CvPlot_ComputeYieldFromAdjacentImprovement
Hooks
static bool BeforeCvPlot_ComputeYieldFromAdjacentImprovement(const CvPlot* self, CvImprovementEntry& kImprovement, ImprovementTypes eValue, YieldTypes eYield, int& result);static void AfterCvPlot_ComputeYieldFromAdjacentImprovement(const CvPlot* self, CvImprovementEntry& kImprovement, ImprovementTypes eValue, YieldTypes eYield, int& result);static int ReplaceCvPlot_ComputeYieldFromAdjacentImprovement(int (*original)(const CvPlot*, CvImprovementEntry&, ImprovementTypes, YieldTypes), const CvPlot* self, CvImprovementEntry& kImprovement, ImprovementTypes eValue, YieldTypes eYield);CivRegisterBefore<CivHooks::CvPlot_ComputeYieldFromAdjacentImprovement>(host, &BeforeCvPlot_ComputeYieldFromAdjacentImprovement);CivRegisterAfter<CivHooks::CvPlot_ComputeYieldFromAdjacentImprovement>(host, &AfterCvPlot_ComputeYieldFromAdjacentImprovement);CivRegisterReplace<CivHooks::CvPlot_ComputeYieldFromAdjacentImprovement>(host, &ReplaceCvPlot_ComputeYieldFromAdjacentImprovement);
Code
4865#if defined(MOD_API_UNIFIED_YIELDS)4866int CvPlot::ComputeYieldFromAdjacentImprovement(CvImprovementEntry& kImprovement, ImprovementTypes eValue, YieldTypes eYield) const4867#else4868int CvPlot::ComputeCultureFromAdjacentImprovement(CvImprovementEntry& kImprovement, ImprovementTypes eValue) const4869#endif4870{4871 CvPlot* pAdjacentPlot;4872 int iRtnValue = 0;48734874#if defined(MOD_API_UNIFIED_YIELDS)4875 if(kImprovement.GetYieldAdjacentSameType(eYield) > 0)4876#else4877 if(kImprovement.GetCultureAdjacentSameType() > 0)4878#endif4879 {4880 for(int iI = 0; iI < NUM_DIRECTION_TYPES; iI++)4881 {4882 pAdjacentPlot = plotDirection(getX(), getY(), ((DirectionTypes)iI));4883 if(pAdjacentPlot && pAdjacentPlot->getImprovementType() == eValue)4884 {4885#if defined(MOD_API_UNIFIED_YIELDS)4886 iRtnValue += kImprovement.GetYieldAdjacentSameType(eYield);4887#else4888 iRtnValue += kImprovement.GetCultureAdjacentSameType();4889#endif4890 }4891 }4892 }48934894 return iRtnValue;4895}