Bazaar developer reference

CvDllNetMessageHandler::ResponseGreatPersonChoice(PlayerTypes, UnitTypes)

Defined in
CvDllNetMessageHandler.cpp, line 754
Class
CvDllNetMessageHandler
Hook name
CivHooks::CvDllNetMessageHandler_ResponseGreatPersonChoice

Hooks

static bool BeforeCvDllNetMessageHandler_ResponseGreatPersonChoice(CvDllNetMessageHandler* self, PlayerTypes ePlayer, UnitTypes eGreatPersonUnit);static void AfterCvDllNetMessageHandler_ResponseGreatPersonChoice(CvDllNetMessageHandler* self, PlayerTypes ePlayer, UnitTypes eGreatPersonUnit);static void ReplaceCvDllNetMessageHandler_ResponseGreatPersonChoice(void (*original)(CvDllNetMessageHandler*, PlayerTypes, UnitTypes), CvDllNetMessageHandler* self, PlayerTypes ePlayer, UnitTypes eGreatPersonUnit);// CivHooks.h gives this hook point no types, so nothing checks these hooks' parameters.host->RegisterHook(host->pluginIndex, CivHooks::CvDllNetMessageHandler_ResponseGreatPersonChoice::ID, CIV_HOOK_BEFORE, (void*)&BeforeCvDllNetMessageHandler_ResponseGreatPersonChoice);host->RegisterHook(host->pluginIndex, CivHooks::CvDllNetMessageHandler_ResponseGreatPersonChoice::ID, CIV_HOOK_AFTER, (void*)&AfterCvDllNetMessageHandler_ResponseGreatPersonChoice);host->RegisterHook(host->pluginIndex, CivHooks::CvDllNetMessageHandler_ResponseGreatPersonChoice::ID, CIV_HOOK_REPLACE, (void*)&ReplaceCvDllNetMessageHandler_ResponseGreatPersonChoice);

Code

754void CvDllNetMessageHandler::ResponseGreatPersonChoice(PlayerTypes ePlayer, UnitTypes eGreatPersonUnit)755{756	CvPlayerAI& kPlayer = GET_PLAYER(ePlayer);757	CvCity* pCity = kPlayer.GetGreatPersonSpawnCity(eGreatPersonUnit);758	if(pCity)759	{760#if defined(MOD_GLOBAL_TRULY_FREE_GP)761		pCity->GetCityCitizens()->DoSpawnGreatPerson(eGreatPersonUnit, true, false, MOD_GLOBAL_TRULY_FREE_GP);762#else763		pCity->GetCityCitizens()->DoSpawnGreatPerson(eGreatPersonUnit, true, false);764#endif765	}766	kPlayer.ChangeNumFreeGreatPeople(-1);767}

Calls