From a4a361317075c7cdf1d9f92131ad4d9d03221c41 Mon Sep 17 00:00:00 2001 From: Anthony Zhang Date: Sun, 22 Jul 2012 15:55:49 -0400 Subject: [PATCH] Remove WorldEdit markers if they are invalid. --- mark.lua | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/mark.lua b/mark.lua index 42a0b19..0f011d2 100644 --- a/mark.lua +++ b/mark.lua @@ -10,6 +10,7 @@ worldedit.mark_pos1 = function(name) end if pos ~= nil then --add marker worldedit.marker1[name] = minetest.env:add_entity(pos, "worldedit:pos1") + worldedit.marker1[name]:get_luaentity().active = true end end @@ -22,6 +23,7 @@ worldedit.mark_pos2 = function(name) end if pos ~= nil then --add marker worldedit.marker2[name] = minetest.env:add_entity(pos, "worldedit:pos2") + worldedit.marker2[name]:get_luaentity().active = true end end @@ -34,6 +36,11 @@ minetest.register_entity("worldedit:pos1", { "worldedit_pos1.png", "worldedit_pos1.png"}, collisionbox = {-0.55, -0.55, -0.55, 0.55, 0.55, 0.55}, }, + on_step = function(self, dtime) + if self.active == nil then + self.object:remove() + end + end, on_punch = function(self, hitter) self.object:remove() local name = hitter:get_player_name() @@ -50,6 +57,11 @@ minetest.register_entity("worldedit:pos2", { "worldedit_pos2.png", "worldedit_pos2.png"}, collisionbox = {-0.55, -0.55, -0.55, 0.55, 0.55, 0.55}, }, + on_step = function(self, dtime) + if self.active == nil then + self.object:remove() + end + end, on_punch = function(self, hitter) self.object:remove() local name = hitter:get_player_name()