Bazaar developer reference

CvPlayerPolicies::GetBuildingClassYieldModifier(BuildingClassTypes, YieldTypes)

Defined in
CvPolicyClasses.cpp, line 3203
Class
CvPlayerPolicies
Hook name
CivHooks::CvPlayerPolicies_GetBuildingClassYieldModifier

Hooks

static bool BeforeCvPlayerPolicies_GetBuildingClassYieldModifier(CvPlayerPolicies* self, BuildingClassTypes eBuildingClass, YieldTypes eYieldType, int& result);static void AfterCvPlayerPolicies_GetBuildingClassYieldModifier(CvPlayerPolicies* self, BuildingClassTypes eBuildingClass, YieldTypes eYieldType, int& result);static int ReplaceCvPlayerPolicies_GetBuildingClassYieldModifier(int (*original)(CvPlayerPolicies*, BuildingClassTypes, YieldTypes), CvPlayerPolicies* self, BuildingClassTypes eBuildingClass, YieldTypes eYieldType);CivRegisterBefore<CivHooks::CvPlayerPolicies_GetBuildingClassYieldModifier>(host, &BeforeCvPlayerPolicies_GetBuildingClassYieldModifier);CivRegisterAfter<CivHooks::CvPlayerPolicies_GetBuildingClassYieldModifier>(host, &AfterCvPlayerPolicies_GetBuildingClassYieldModifier);CivRegisterReplace<CivHooks::CvPlayerPolicies_GetBuildingClassYieldModifier>(host, &ReplaceCvPlayerPolicies_GetBuildingClassYieldModifier);

Code

3202/// Get yield modifier from policies for a specific building class3203int CvPlayerPolicies::GetBuildingClassYieldModifier(BuildingClassTypes eBuildingClass, YieldTypes eYieldType)3204{3205	int rtnValue = 0;32063207	for(int i = 0; i < m_pPolicies->GetNumPolicies(); i++)3208	{3209		// Do we have this policy?3210		if(m_pabHasPolicy[i] && !IsPolicyBlocked((PolicyTypes)i))3211		{3212			rtnValue += m_pPolicies->GetPolicyEntry(i)->GetBuildingClassYieldModifiers(eBuildingClass, eYieldType);3213		}3214	}32153216	return rtnValue;3217}

Calls

Called by