CvDiplomacyAI::IsEmbassyExchangeAcceptable(PlayerTypes)
- Defined in
- CvDiplomacyAI.cpp, line 5039
- Class
- CvDiplomacyAI
- Hook name
CivHooks::CvDiplomacyAI_IsEmbassyExchangeAcceptable
Hooks
static bool BeforeCvDiplomacyAI_IsEmbassyExchangeAcceptable(CvDiplomacyAI* self, PlayerTypes ePlayer, bool& result);static void AfterCvDiplomacyAI_IsEmbassyExchangeAcceptable(CvDiplomacyAI* self, PlayerTypes ePlayer, bool& result);static bool ReplaceCvDiplomacyAI_IsEmbassyExchangeAcceptable(bool (*original)(CvDiplomacyAI*, PlayerTypes), CvDiplomacyAI* self, PlayerTypes ePlayer);CivRegisterBefore<CivHooks::CvDiplomacyAI_IsEmbassyExchangeAcceptable>(host, &BeforeCvDiplomacyAI_IsEmbassyExchangeAcceptable);CivRegisterAfter<CivHooks::CvDiplomacyAI_IsEmbassyExchangeAcceptable>(host, &AfterCvDiplomacyAI_IsEmbassyExchangeAcceptable);CivRegisterReplace<CivHooks::CvDiplomacyAI_IsEmbassyExchangeAcceptable>(host, &ReplaceCvDiplomacyAI_IsEmbassyExchangeAcceptable);
Code
5038/// Are we willing to swap embassies with ePlayer?5039bool CvDiplomacyAI::IsEmbassyExchangeAcceptable(PlayerTypes ePlayer)5040{5041 CvAssertMsg(ePlayer >= 0, "DIPLOMACY_AI: Invalid Player Index. Please send Jon this with your last 5 autosaves and what changelist # you're playing.");5042 CvAssertMsg(ePlayer < MAX_MAJOR_CIVS, "DIPLOMACY_AI: Invalid Player Index. Please send Jon this with your last 5 autosaves and what changelist # you're playing.");50435044 MajorCivApproachTypes eApproach = GetMajorCivApproach(ePlayer, /*bHideTrueFeelings*/ true);50455046 switch(eApproach)5047 {5048 case MAJOR_CIV_APPROACH_WAR:5049 case MAJOR_CIV_APPROACH_HOSTILE:5050 case MAJOR_CIV_APPROACH_GUARDED:5051 return false;5052 case MAJOR_CIV_APPROACH_DECEPTIVE:5053 case MAJOR_CIV_APPROACH_AFRAID:5054 case MAJOR_CIV_APPROACH_FRIENDLY:5055 case MAJOR_CIV_APPROACH_NEUTRAL:5056 return true;5057 }50585059 return false;5060}