Bazaar developer reference

CvDangerPlots::ShouldIgnorePlayer(PlayerTypes)

Defined in
CvDangerPlots.cpp, line 491
Class
CvDangerPlots
Hook name
CivHooks::CvDangerPlots_ShouldIgnorePlayer

Hooks

static bool BeforeCvDangerPlots_ShouldIgnorePlayer(CvDangerPlots* self, PlayerTypes ePlayer, bool& result);static void AfterCvDangerPlots_ShouldIgnorePlayer(CvDangerPlots* self, PlayerTypes ePlayer, bool& result);static bool ReplaceCvDangerPlots_ShouldIgnorePlayer(bool (*original)(CvDangerPlots*, PlayerTypes), CvDangerPlots* self, PlayerTypes ePlayer);CivRegisterBefore<CivHooks::CvDangerPlots_ShouldIgnorePlayer>(host, &BeforeCvDangerPlots_ShouldIgnorePlayer);CivRegisterAfter<CivHooks::CvDangerPlots_ShouldIgnorePlayer>(host, &AfterCvDangerPlots_ShouldIgnorePlayer);CivRegisterReplace<CivHooks::CvDangerPlots_ShouldIgnorePlayer>(host, &ReplaceCvDangerPlots_ShouldIgnorePlayer);

Code

490/// Should this player be ignored when creating the danger plots?491bool CvDangerPlots::ShouldIgnorePlayer(PlayerTypes ePlayer)492{493	if(GET_PLAYER(m_ePlayer).isMinorCiv() != GET_PLAYER(ePlayer).isMinorCiv() && !GET_PLAYER(ePlayer).isBarbarian() && !GET_PLAYER(m_ePlayer).isBarbarian())494	{495		CvPlayer* pMinor = NULL;496		CvPlayer* pMajor;497498		if(GET_PLAYER(m_ePlayer).isMinorCiv())499		{500			pMinor = &GET_PLAYER(m_ePlayer);501			pMajor = &GET_PLAYER(ePlayer);502		}503		else504		{505			pMinor = &GET_PLAYER(ePlayer);506			pMajor = &GET_PLAYER(m_ePlayer);507		}508509		if(pMinor->GetMinorCivAI()->IsFriends(pMajor->GetID()))510		{511			return true;512		}513514		// if we're a major, we should ignore minors that are not at war with us515		if (!GET_PLAYER(m_ePlayer).isMinorCiv())516		{517			TeamTypes eMajorTeam = pMajor->getTeam();518			TeamTypes eMinorTeam = pMinor->getTeam();519			if (!GET_TEAM(eMajorTeam).isAtWar(eMinorTeam))520			{521				return true;522			}523		}524	}525526	return false;527}

Calls

Called by