From 9e4e7072da8f565eef37da7558053a436b9cbba3 Mon Sep 17 00:00:00 2001 From: kwolekr Date: Mon, 1 Sep 2014 14:20:31 -0400 Subject: Update Mapgen VoxelManipulator on buffer invalidation --- src/script/lua_api/l_vmanip.cpp | 13 +++++++++++++ src/script/lua_api/l_vmanip.h | 2 ++ 2 files changed, 15 insertions(+) (limited to 'src/script') diff --git a/src/script/lua_api/l_vmanip.cpp b/src/script/lua_api/l_vmanip.cpp index f3c1fa67a..2a3cfcafa 100644 --- a/src/script/lua_api/l_vmanip.cpp +++ b/src/script/lua_api/l_vmanip.cpp @@ -304,6 +304,18 @@ int LuaVoxelManip::l_update_map(lua_State *L) return 0; } +int LuaVoxelManip::l_was_modified(lua_State *L) +{ + NO_MAP_LOCK_REQUIRED; + + LuaVoxelManip *o = checkobject(L, 1); + ManualMapVoxelManipulator *vm = o->vm; + + lua_pushboolean(L, vm->m_is_dirty); + + return 1; +} + LuaVoxelManip::LuaVoxelManip(ManualMapVoxelManipulator *mmvm, bool is_mg_vm) { this->vm = mmvm; @@ -396,5 +408,6 @@ const luaL_reg LuaVoxelManip::methods[] = { luamethod(LuaVoxelManip, set_light_data), luamethod(LuaVoxelManip, get_param2_data), luamethod(LuaVoxelManip, set_param2_data), + luamethod(LuaVoxelManip, was_modified), {0,0} }; diff --git a/src/script/lua_api/l_vmanip.h b/src/script/lua_api/l_vmanip.h index fc7ef30e6..70468b344 100644 --- a/src/script/lua_api/l_vmanip.h +++ b/src/script/lua_api/l_vmanip.h @@ -58,6 +58,8 @@ private: static int l_get_param2_data(lua_State *L); static int l_set_param2_data(lua_State *L); + static int l_was_modified(lua_State *L); + public: LuaVoxelManip(ManualMapVoxelManipulator *mmvm, bool is_mapgen_vm); LuaVoxelManip(Map *map); -- cgit v1.2.3