CvCity::canMaintain(ProcessTypes, bool) const
- Defined in
- CvCity.cpp, line 3074
- Class
- CvCity
- Hook name
CivHooks::CvCity_canMaintain- Lua events
GameEvents.CityCanMaintain
Hooks
static bool BeforeCvCity_canMaintain(const CvCity* self, ProcessTypes eProcess, bool bContinue, bool& result);static void AfterCvCity_canMaintain(const CvCity* self, ProcessTypes eProcess, bool bContinue, bool& result);static bool ReplaceCvCity_canMaintain(bool (*original)(const CvCity*, ProcessTypes, bool), const CvCity* self, ProcessTypes eProcess, bool bContinue);CivRegisterBefore<CivHooks::CvCity_canMaintain>(host, &BeforeCvCity_canMaintain);CivRegisterAfter<CivHooks::CvCity_canMaintain>(host, &AfterCvCity_canMaintain);CivRegisterReplace<CivHooks::CvCity_canMaintain>(host, &ReplaceCvCity_canMaintain);
Code
3074bool CvCity::canMaintain(ProcessTypes eProcess, bool bContinue) const3075{3076 VALIDATE_OBJECT30773078 if(!(GET_PLAYER(getOwner()).canMaintain(eProcess, bContinue)))3079 {3080 return false;3081 }30823083 ICvEngineScriptSystem1* pkScriptSystem = gDLL->GetScriptSystem();3084 if(pkScriptSystem)3085 {3086 CvLuaArgsHandle args;3087 args->Push(getOwner());3088 args->Push(GetID());3089 args->Push(eProcess);30903091 // Attempt to execute the game events.3092 // Will return false if there are no registered listeners.3093 bool bResult = false;3094 if(LuaSupport::CallTestAll(pkScriptSystem, "CityCanMaintain", args.get(), bResult))3095 {3096 // Check the result.3097 if(bResult == false)3098 {3099 return false;3100 }3101 }3102 }31033104 return true;3105}
Calls
- CvCity::GetID() const
- CvCity::getOwner() const
- CvGlobals::getDLLIFace()
- CvLuaArgsHandle::CvLuaArgsHandle()
- CvLuaArgsHandle::get() const
- CvLuaArgsHandle::operator->() const
- CvPlayer::canMaintain(ProcessTypes, bool) const
- CvPlayerAI::getPlayer(PlayerTypes)
ICvEngineScriptSystemArgs1::PushICvEngineUtility1::GetScriptSystem- LuaSupport::CallTestAll(ICvEngineScriptSystem1 *, const char *, ICvEngineScriptSystemArgs1 *, bool &)