Hooks
static bool BeforeCvLuaGame_lGetAvailableFounderBeliefs(lua_State* L, int& result);static void AfterCvLuaGame_lGetAvailableFounderBeliefs(lua_State* L, int& result);static int ReplaceCvLuaGame_lGetAvailableFounderBeliefs(int (*original)(lua_State*), lua_State* L);CivRegisterBefore<CivHooks::CvLuaGame_lGetAvailableFounderBeliefs>(host, &BeforeCvLuaGame_lGetAvailableFounderBeliefs);CivRegisterAfter<CivHooks::CvLuaGame_lGetAvailableFounderBeliefs>(host, &AfterCvLuaGame_lGetAvailableFounderBeliefs);CivRegisterReplace<CivHooks::CvLuaGame_lGetAvailableFounderBeliefs>(host, &ReplaceCvLuaGame_lGetAvailableFounderBeliefs);
Code
2295int CvLuaGame::lGetAvailableFounderBeliefs(lua_State* L)2296{2297#if defined(MOD_EVENTS_ACQUIRE_BELIEFS)2298 PlayerTypes ePlayer = (PlayerTypes)luaL_optint(L, 1, NO_PLAYER);2299 ReligionTypes eReligion = (ReligionTypes)luaL_optint(L, 2, NO_RELIGION);2300#endif23012302 lua_createtable(L, 0, 0);2303 const int t = lua_gettop(L);2304 int idx = 1;23052306#if defined(MOD_EVENTS_ACQUIRE_BELIEFS)2307 std::vector<BeliefTypes> availableBeliefs = GC.getGame().GetGameReligions()->GetAvailableFounderBeliefs(ePlayer, eReligion);2308#else2309 std::vector<BeliefTypes> availableBeliefs = GC.getGame().GetGameReligions()->GetAvailableFounderBeliefs();2310#endif2311 for(std::vector<BeliefTypes>::iterator it = availableBeliefs.begin();2312 it!= availableBeliefs.end(); ++it)2313 {2314 const BeliefTypes eBelief = (*it);2315 lua_pushinteger(L, eBelief);2316 lua_rawseti(L, t, idx++);2317 }23182319 return 1;2320}