Bazaar developer reference

CvUnitProductionAI::AddFlavorWeights(FlavorTypes, int)

Defined in
CvUnitProductionAI.cpp, line 140
Class
CvUnitProductionAI
Hook name
CivHooks::CvUnitProductionAI_AddFlavorWeights

Hooks

static bool BeforeCvUnitProductionAI_AddFlavorWeights(CvUnitProductionAI* self, FlavorTypes eFlavor, int iWeight);static void AfterCvUnitProductionAI_AddFlavorWeights(CvUnitProductionAI* self, FlavorTypes eFlavor, int iWeight);static void ReplaceCvUnitProductionAI_AddFlavorWeights(void (*original)(CvUnitProductionAI*, FlavorTypes, int), CvUnitProductionAI* self, FlavorTypes eFlavor, int iWeight);CivRegisterBefore<CivHooks::CvUnitProductionAI_AddFlavorWeights>(host, &BeforeCvUnitProductionAI_AddFlavorWeights);CivRegisterAfter<CivHooks::CvUnitProductionAI_AddFlavorWeights>(host, &AfterCvUnitProductionAI_AddFlavorWeights);CivRegisterReplace<CivHooks::CvUnitProductionAI_AddFlavorWeights>(host, &ReplaceCvUnitProductionAI_AddFlavorWeights);

Code

139/// Establish weights for one flavor; can be called multiple times to layer strategies140void CvUnitProductionAI::AddFlavorWeights(FlavorTypes eFlavor, int iWeight)141{142	// Loop through all units143	for(int iUnit = 0; iUnit < m_pUnits->GetNumUnits(); iUnit++)144	{145		CvUnitEntry* entry = m_pUnits->GetEntry(iUnit);146		if(entry)147		{148			// Set its weight by looking at unit's weight for this flavor and using iWeight multiplier passed in149			m_UnitAIWeights.IncreaseWeight(iUnit, entry->GetFlavorValue(eFlavor) * iWeight);150		}151	}152}

Calls

Called by