From 08acacba06a39d85e1bb9f16b7e7c9003ed6e6af Mon Sep 17 00:00:00 2001 From: Kyle Date: Thu, 21 Feb 2013 11:38:34 -0800 Subject: [PATCH] Remove the original only after creating the copy so players don't fall through moving frames --- technic/frames.lua | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/technic/frames.lua b/technic/frames.lua index efae0e5..0e095bd 100644 --- a/technic/frames.lua +++ b/technic/frames.lua @@ -364,7 +364,6 @@ function move_nodes_vect(poslist,vect) local node=minetest.env:get_node(pos) local meta=minetest.env:get_meta(pos):to_table() nodelist[#(nodelist)+1]={pos=pos,node=node,meta=meta} - minetest.env:remove_node(pos) end objects={} for _,pos in ipairs(poslist) do @@ -384,6 +383,15 @@ function move_nodes_vect(poslist,vect) minetest.env:set_node(npos,n.node) local meta=minetest.env:get_meta(npos) meta:from_table(n.meta) + for __,pos in ipairs(poslist) do + if npos.x==pos.x and npos.y==pos.y and npos.z==pos.z then + table.remove(poslist, __) + break + end + end + end + for __,pos in ipairs(poslist) do + minetest.env:remove_node(pos) end end