From 623fcae4a4ad3ec12cc242b29b0d781357cff3f7 Mon Sep 17 00:00:00 2001
From: Zefram <zefram@fysh.org>
Date: Sat, 24 May 2014 00:24:30 +0200
Subject: [PATCH] Fix supply converter

---
 technic/machines/other/frames.lua |    8 ++++++++
 1 files changed, 8 insertions(+), 0 deletions(-)

diff --git a/technic/machines/other/frames.lua b/technic/machines/other/frames.lua
index 2a5a554..427e60b 100644
--- a/technic/machines/other/frames.lua
+++ b/technic/machines/other/frames.lua
@@ -542,11 +542,15 @@
 		nnode.name = frames_pos[pos_to_string(nnodepos)]
 	end
 	local meta = minetest.get_meta(pos)
+	if meta:get_int("last_moved") == minetest.get_gametime() then
+		return
+	end
 	local owner = meta:get_string("owner")
 	if minetest.registered_nodes[nnode.name].frame==1 then
 		local connected_nodes=get_connected_nodes(nnodepos)
 		move_nodes_vect(connected_nodes,dir,pos,owner)
 	end
+	minetest.get_meta(vector.add(pos, dir)):set_int("last_moved", minetest.get_gametime())
 end
 
 minetest.register_node("technic:frame_motor",{
@@ -843,11 +847,15 @@
 	local dir = minetest.facedir_to_dir(node.param2)
 	local nnode=minetest.get_node(nnodepos)
 	local meta = minetest.get_meta(pos)
+	if meta:get_int("last_moved") == minetest.get_gametime() then
+		return
+	end
 	local owner = meta:get_string("owner")
 	if nnode.name == "technic:template" then
 		local connected_nodes=get_template_nodes(nnodepos)
 		move_nodes_vect(connected_nodes,dir,pos,owner)
 	end
+	minetest.get_meta(vector.add(pos, dir)):set_int("last_moved", minetest.get_gametime())
 end
 
 minetest.register_node("technic:template_motor",{

--
Gitblit v1.8.0