Bazaar developer reference

CvUnitPromotions::IsInUseByPlayer(PromotionTypes, PlayerTypes)

Defined in
CvPromotionClasses.cpp, line 2382
Class
CvUnitPromotions
Hook name
CivHooks::CvUnitPromotions_IsInUseByPlayer

Hooks

static bool BeforeCvUnitPromotions_IsInUseByPlayer(CvUnitPromotions* self, PromotionTypes eIndex, PlayerTypes ePlayer, bool& result);static void AfterCvUnitPromotions_IsInUseByPlayer(CvUnitPromotions* self, PromotionTypes eIndex, PlayerTypes ePlayer, bool& result);static bool ReplaceCvUnitPromotions_IsInUseByPlayer(bool (*original)(CvUnitPromotions*, PromotionTypes, PlayerTypes), CvUnitPromotions* self, PromotionTypes eIndex, PlayerTypes ePlayer);CivRegisterBefore<CivHooks::CvUnitPromotions_IsInUseByPlayer>(host, &BeforeCvUnitPromotions_IsInUseByPlayer);CivRegisterAfter<CivHooks::CvUnitPromotions_IsInUseByPlayer>(host, &AfterCvUnitPromotions_IsInUseByPlayer);CivRegisterReplace<CivHooks::CvUnitPromotions_IsInUseByPlayer>(host, &ReplaceCvUnitPromotions_IsInUseByPlayer);

Code

2381// Is this (post-combat) promotion already present for some unit of this player?2382bool CvUnitPromotions::IsInUseByPlayer(PromotionTypes eIndex, PlayerTypes ePlayer)2383{2384	bool bRtnValue = false;2385	CvPlayer &kPlayer = GET_PLAYER(ePlayer);23862387	CvUnit *pLoopUnit;2388	int iValueLoop;2389	for(pLoopUnit = kPlayer.firstUnit(&iValueLoop); pLoopUnit != NULL; pLoopUnit = kPlayer.nextUnit(&iValueLoop))2390	{2391		if (pLoopUnit->isHasPromotion(eIndex))2392		{2393			return true;2394		}2395	}23962397	return bRtnValue;2398}

Calls

Called by