Hooks
static bool BeforeCvLuaGame_lGetAvailableEnhancerBeliefs(lua_State* L, int& result);static void AfterCvLuaGame_lGetAvailableEnhancerBeliefs(lua_State* L, int& result);static int ReplaceCvLuaGame_lGetAvailableEnhancerBeliefs(int (*original)(lua_State*), lua_State* L);CivRegisterBefore<CivHooks::CvLuaGame_lGetAvailableEnhancerBeliefs>(host, &BeforeCvLuaGame_lGetAvailableEnhancerBeliefs);CivRegisterAfter<CivHooks::CvLuaGame_lGetAvailableEnhancerBeliefs>(host, &AfterCvLuaGame_lGetAvailableEnhancerBeliefs);CivRegisterReplace<CivHooks::CvLuaGame_lGetAvailableEnhancerBeliefs>(host, &ReplaceCvLuaGame_lGetAvailableEnhancerBeliefs);
Code
2349int CvLuaGame::lGetAvailableEnhancerBeliefs(lua_State* L)2350{2351#if defined(MOD_EVENTS_ACQUIRE_BELIEFS)2352 PlayerTypes ePlayer = (PlayerTypes)luaL_optint(L, 1, NO_PLAYER);2353 ReligionTypes eReligion = (ReligionTypes)luaL_optint(L, 2, NO_RELIGION);2354#endif23552356 lua_createtable(L, 0, 0);2357 const int t = lua_gettop(L);2358 int idx = 1;23592360#if defined(MOD_EVENTS_ACQUIRE_BELIEFS)2361 std::vector<BeliefTypes> availableBeliefs = GC.getGame().GetGameReligions()->GetAvailableEnhancerBeliefs(ePlayer, eReligion);2362#else2363 std::vector<BeliefTypes> availableBeliefs = GC.getGame().GetGameReligions()->GetAvailableEnhancerBeliefs();2364#endif2365 for(std::vector<BeliefTypes>::iterator it = availableBeliefs.begin();2366 it!= availableBeliefs.end(); ++it)2367 {2368 const BeliefTypes eBelief = (*it);2369 lua_pushinteger(L, eBelief);2370 lua_rawseti(L, t, idx++);2371 }23722373 return 1;2374}