Bazaar developer reference

CvPlayer::swapPolicy(PolicyTypes, PolicyTypes)

Defined in
CvPlayer.cpp, line 13333
Class
CvPlayer
Hook name
CivHooks::CvPlayer_swapPolicy

Hooks

static bool BeforeCvPlayer_swapPolicy(CvPlayer* self, PolicyTypes iNewPolicy, PolicyTypes iOldPolicy, bool& result);static void AfterCvPlayer_swapPolicy(CvPlayer* self, PolicyTypes iNewPolicy, PolicyTypes iOldPolicy, bool& result);static bool ReplaceCvPlayer_swapPolicy(bool (*original)(CvPlayer*, PolicyTypes, PolicyTypes), CvPlayer* self, PolicyTypes iNewPolicy, PolicyTypes iOldPolicy);CivRegisterBefore<CivHooks::CvPlayer_swapPolicy>(host, &BeforeCvPlayer_swapPolicy);CivRegisterAfter<CivHooks::CvPlayer_swapPolicy>(host, &AfterCvPlayer_swapPolicy);CivRegisterReplace<CivHooks::CvPlayer_swapPolicy>(host, &ReplaceCvPlayer_swapPolicy);

Code

13333bool CvPlayer::swapPolicy(PolicyTypes iNewPolicy, PolicyTypes iOldPolicy)13334{13335	bool bWasFree = m_pPlayerPolicies->IsFreePolicy(iOldPolicy);13336	13337	if (!HasPolicy(iNewPolicy) && revokePolicy(iOldPolicy)) {13338		return grantPolicy(iNewPolicy, bWasFree);13339	}13340	13341	return false;13342}

Calls

Called by