Bazaar developer reference

MilitaryAIHelpers::GetWeightThresholdModifier(MilitaryAIStrategyTypes, CvPlayer *)

Defined in
CvMilitaryAI.cpp, line 4498
Hook name
CivHooks::MilitaryAIHelpers_GetWeightThresholdModifier

Hooks

static bool BeforeMilitaryAIHelpers_GetWeightThresholdModifier(MilitaryAIStrategyTypes eStrategy, CvPlayer* pPlayer, int& result);static void AfterMilitaryAIHelpers_GetWeightThresholdModifier(MilitaryAIStrategyTypes eStrategy, CvPlayer* pPlayer, int& result);static int ReplaceMilitaryAIHelpers_GetWeightThresholdModifier(int (*original)(MilitaryAIStrategyTypes, CvPlayer*), MilitaryAIStrategyTypes eStrategy, CvPlayer* pPlayer);CivRegisterBefore<CivHooks::MilitaryAIHelpers_GetWeightThresholdModifier>(host, &BeforeMilitaryAIHelpers_GetWeightThresholdModifier);CivRegisterAfter<CivHooks::MilitaryAIHelpers_GetWeightThresholdModifier>(host, &AfterMilitaryAIHelpers_GetWeightThresholdModifier);CivRegisterReplace<CivHooks::MilitaryAIHelpers_GetWeightThresholdModifier>(host, &ReplaceMilitaryAIHelpers_GetWeightThresholdModifier);

Code

4497// Figure out what the WeightThreshold Mod should be by looking at the Flavors for this player & the Strategy4498int MilitaryAIHelpers::GetWeightThresholdModifier(MilitaryAIStrategyTypes eStrategy, CvPlayer* pPlayer)4499{4500	int iWeightThresholdModifier = 0;45014502	CvMilitaryAIStrategyXMLEntries* pkAIStrategies = pPlayer->GetMilitaryAI()->GetMilitaryAIStrategies();4503	CvFlavorManager* pkFlavorManager = pPlayer->GetFlavorManager();4504	// Look at all Flavors for the Player & this Strategy4505	for(int iFlavorLoop = 0; iFlavorLoop < GC.getNumFlavorTypes(); iFlavorLoop++)4506	{4507		FlavorTypes eFlavor = (FlavorTypes) iFlavorLoop;4508		int iPersonalityFlavor = pkFlavorManager->GetPersonalityIndividualFlavor(eFlavor);4509		CvMilitaryAIStrategyXMLEntry* pkEntry = pkAIStrategies->GetEntry(eStrategy);4510		CvAssert(pkEntry != NULL);4511		if(pkEntry)4512		{4513			int iStrategyFlavorMod = pkEntry->GetPersonalityFlavorThresholdMod(eFlavor);45144515			iWeightThresholdModifier += (iPersonalityFlavor * iStrategyFlavorMod);4516		}4517	}45184519	return iWeightThresholdModifier;4520}

Calls

Called by