CvPlayer::CanLiberatePlayer(PlayerTypes)
- Defined in
- CvPlayer.cpp, line 3669
- Class
- CvPlayer
- Hook name
CivHooks::CvPlayer_CanLiberatePlayer- Lua events
GameEvents.PlayerCanLiberate
Hooks
static bool BeforeCvPlayer_CanLiberatePlayer(CvPlayer* self, PlayerTypes ePlayer, bool& result);static void AfterCvPlayer_CanLiberatePlayer(CvPlayer* self, PlayerTypes ePlayer, bool& result);static bool ReplaceCvPlayer_CanLiberatePlayer(bool (*original)(CvPlayer*, PlayerTypes), CvPlayer* self, PlayerTypes ePlayer);CivRegisterBefore<CivHooks::CvPlayer_CanLiberatePlayer>(host, &BeforeCvPlayer_CanLiberatePlayer);CivRegisterAfter<CivHooks::CvPlayer_CanLiberatePlayer>(host, &AfterCvPlayer_CanLiberatePlayer);CivRegisterReplace<CivHooks::CvPlayer_CanLiberatePlayer>(host, &ReplaceCvPlayer_CanLiberatePlayer);
Code
3669bool CvPlayer::CanLiberatePlayer(PlayerTypes ePlayer)3670{3671 // Other Player must be dead now3672 if(GET_PLAYER(ePlayer).isAlive())3673 {3674 return false;3675 }36763677 if(GET_PLAYER(ePlayer).IsEverConqueredBy(m_eID))3678 {3679 return false;3680 }36813682 if(GET_TEAM(GET_PLAYER(ePlayer).getTeam()).GetKilledByTeam() == getTeam())3683 {3684 return false;3685 }3686 3687#if defined(MOD_EVENTS_LIBERATION)3688 if (MOD_EVENTS_LIBERATION) {3689 if (GAMEEVENTINVOKE_TESTALL(GAMEEVENT_PlayerCanLiberate, GetID(), ePlayer) == GAMEEVENTRETURN_FALSE) {3690 return false;3691 }3692 }3693#endif36943695 return true;3696}
Calls
- CustomMods::eventTestAll(const char *, const char *, ...)
- CustomMods::isEVENTS_LIBERATION()
- CvPlayer::GetID() const
- CvPlayer::getTeam() const
- CvPlayer::isAlive() const
- CvPlayer::IsEverConqueredBy(PlayerTypes)
- CvPlayerAI::getPlayer(PlayerTypes)
- CvTeam::GetKilledByTeam() const
- CvTeam::getTeam(TeamTypes)
FAutoVariable::operator const PlayerTypes &