Bazaar developer reference

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}

Calls

Called by