Bazaar developer reference

CvMinorCivAI::IsPlayerCloseEnoughForThreatenedAnnouncement(PlayerTypes)

Defined in
CvMinorCivAI.cpp, line 3333
Class
CvMinorCivAI
Hook name
CivHooks::CvMinorCivAI_IsPlayerCloseEnoughForThreatenedAnnouncement

Hooks

static bool BeforeCvMinorCivAI_IsPlayerCloseEnoughForThreatenedAnnouncement(CvMinorCivAI* self, PlayerTypes eMajor, bool& result);static void AfterCvMinorCivAI_IsPlayerCloseEnoughForThreatenedAnnouncement(CvMinorCivAI* self, PlayerTypes eMajor, bool& result);static bool ReplaceCvMinorCivAI_IsPlayerCloseEnoughForThreatenedAnnouncement(bool (*original)(CvMinorCivAI*, PlayerTypes), CvMinorCivAI* self, PlayerTypes eMajor);CivRegisterBefore<CivHooks::CvMinorCivAI_IsPlayerCloseEnoughForThreatenedAnnouncement>(host, &BeforeCvMinorCivAI_IsPlayerCloseEnoughForThreatenedAnnouncement);CivRegisterAfter<CivHooks::CvMinorCivAI_IsPlayerCloseEnoughForThreatenedAnnouncement>(host, &AfterCvMinorCivAI_IsPlayerCloseEnoughForThreatenedAnnouncement);CivRegisterReplace<CivHooks::CvMinorCivAI_IsPlayerCloseEnoughForThreatenedAnnouncement>(host, &ReplaceCvMinorCivAI_IsPlayerCloseEnoughForThreatenedAnnouncement);

Code

3332/// Is player close enough for the game to send a notification about the barbarian threat?3333bool CvMinorCivAI::IsPlayerCloseEnoughForThreatenedAnnouncement(PlayerTypes eMajor)3334{3335	CvCity* pCapital = GetPlayer()->getCapitalCity();33363337	// Minor must have Capital3338	if(pCapital == NULL)3339	{3340		return false;3341	}33423343	// Has Minor met this player yet?3344	if(IsHasMetPlayer(eMajor))3345	{3346		bool bCloseEnoughForQuest = false;33473348		CvCity* pMajorsCapital = GET_PLAYER(eMajor).getCapitalCity();33493350		if(pMajorsCapital != NULL)3351		{3352			if(pCapital->getArea() == pMajorsCapital->getArea())3353			{3354				return true;3355			}33563357			if(!bCloseEnoughForQuest)3358			{3359				int iDistance = plotDistance(pCapital->getX(), pCapital->getY(), pMajorsCapital->getX(), pMajorsCapital->getY());33603361				if(iDistance <= /*50*/ GC.getMAX_DISTANCE_MINORS_BARB_QUEST())3362				{3363					return true;3364				}3365			}3366		}3367	}33683369	return false;3370}

Calls

Called by