Bazaar developer reference

IsSafe(CvPlayerAI *)

Defined in
CvPlayerAI.cpp, line 1061
Hook name
CivHooks::IsSafe

Hooks

static bool BeforeIsSafe(CvPlayerAI* pPlayer, bool& result);static void AfterIsSafe(CvPlayerAI* pPlayer, bool& result);static bool ReplaceIsSafe(bool (*original)(CvPlayerAI*), CvPlayerAI* pPlayer);CivRegisterBefore<CivHooks::IsSafe>(host, &BeforeIsSafe);CivRegisterAfter<CivHooks::IsSafe>(host, &AfterIsSafe);CivRegisterReplace<CivHooks::IsSafe>(host, &ReplaceIsSafe);

Code

1061bool IsSafe(CvPlayerAI* pPlayer)1062{1063	CvAssertMsg(pPlayer, "Need a player");1064	if(!pPlayer)1065	{1066		return false;1067	}10681069	if(pPlayer->GetDiplomacyAI()->GetStateAllWars() == STATE_ALL_WARS_WINNING)1070	{1071		return true;1072	}1073	else1074	{1075		CvMilitaryAI* pMilitaryAI = pPlayer->GetMilitaryAI();1076		CvAssertMsg(pMilitaryAI, "No military AI");1077		if(!pMilitaryAI)1078		{1079			return false;1080		}10811082		MilitaryAIStrategyTypes eAtWarStrategy = (MilitaryAIStrategyTypes)GC.getInfoTypeForString("MILITARYAISTRATEGY_AT_WAR");1083		if(!pMilitaryAI->IsUsingStrategy(eAtWarStrategy))1084		{1085			return true;1086		}10871088		return false;1089	}1090}

Calls

Called by