Hooks
static bool BeforeCvLuaMap_lGetPlotXY(lua_State* L, int& result);static void AfterCvLuaMap_lGetPlotXY(lua_State* L, int& result);static int ReplaceCvLuaMap_lGetPlotXY(int (*original)(lua_State*), lua_State* L);CivRegisterBefore<CivHooks::CvLuaMap_lGetPlotXY>(host, &BeforeCvLuaMap_lGetPlotXY);CivRegisterAfter<CivHooks::CvLuaMap_lGetPlotXY>(host, &AfterCvLuaMap_lGetPlotXY);CivRegisterReplace<CivHooks::CvLuaMap_lGetPlotXY>(host, &ReplaceCvLuaMap_lGetPlotXY);
Code
223// plot GetPlotXY([int x], [int y], int dx, int dy)224int CvLuaMap::lGetPlotXY(lua_State* L)225{226 int x, y, dx, dy;227 const int count = lua_gettop(L);228229 if(count == 2)230 {231 x = 0;232 y = 0;233 dx = lua_tointeger(L, 1);234 dy = lua_tointeger(L, 2);235 }236 else237 {238 x = lua_tointeger(L, 1);239 y = lua_tointeger(L, 2);240 dx = lua_tointeger(L, 3);241 dy = lua_tointeger(L, 4);242 }243244 CvPlot* pkPlot = plotXY(x, y, dx, dy);245 CvLuaPlot::Push(L, pkPlot);246 return 1;247}