Hooks
static bool BeforeGetFractalFlags(lua_State* L, int idx, int& result);static void AfterGetFractalFlags(lua_State* L, int idx, int& result);static int ReplaceGetFractalFlags(int (*original)(lua_State*, int), lua_State* L, int idx);CivRegisterBefore<CivHooks::GetFractalFlags>(host, &BeforeGetFractalFlags);CivRegisterAfter<CivHooks::GetFractalFlags>(host, &AfterGetFractalFlags);CivRegisterReplace<CivHooks::GetFractalFlags>(host, &ReplaceGetFractalFlags);
Code
36int GetFractalFlags(lua_State* L, int idx)37{38 int flags = 0;39 luaL_checktype(L, idx, LUA_TTABLE);4041 const int top = lua_gettop(L);4243 if(HasFlag(L, idx, "FRAC_WRAP_X"))44 flags |= CvFractal::FRAC_WRAP_X;4546 if(HasFlag(L, idx, "FRAC_WRAP_Y"))47 flags |= CvFractal::FRAC_WRAP_Y;4849 if(HasFlag(L, idx, "FRAC_PERCENT"))50 flags |= CvFractal::FRAC_PERCENT;5152 if(HasFlag(L, idx, "FRAC_POLAR"))53 flags |= CvFractal::FRAC_POLAR;5455 if(HasFlag(L, idx, "FRAC_CENTER_RIFT"))56 flags |= CvFractal::FRAC_CENTER_RIFT;5758 if(HasFlag(L, idx, "FRAC_INVERT_HEIGHTS"))59 flags |= CvFractal::FRAC_INVERT_HEIGHTS;6061 lua_settop(L, top);6263 return flags;64}