Fix a rare piston pushing bug and make piston updating faster.

This commit is contained in:
Anthony Zhang 2012-11-27 19:34:54 -05:00
parent 618fd31f43
commit aaddd9e74d
3 changed files with 7 additions and 10 deletions

View File

@ -134,7 +134,7 @@ local update = function(pos, node)
local timer = minetest.env:get_node_timer(pos)
timer:stop()
timer:set(0.1, 0)
timer:start(0)
end
mesecon:register_on_signal_on(update) --push action
mesecon:register_on_signal_off(update) --pull action
@ -150,14 +150,13 @@ function mesecon:piston_push(pos)
while true do
local checknode = minetest.env:get_node(checkpos)
--check for collision with stopper
if mesecon:is_mvps_stopper(checknode.name) then
--check for collision with stopper or bounds
if mesecon:is_mvps_stopper(checknode.name) or checknode.name == "ignore" then
return
end
--check for column end
if checknode.name == "air"
or checknode.name == "ignore"
or not(minetest.registered_nodes[checknode.name].liquidtype == "none") then
break
end

View File

@ -133,14 +133,13 @@ mesecon:register_on_signal_on(function(pos, node)
while true do
local checknode = minetest.env:get_node(checkpos)
--check for collision with stopper
if mesecon:is_mvps_stopper(checknode.name) then
--check for collision with stopper or bounds
if mesecon:is_mvps_stopper(checknode.name) or checknode.name == "ignore" then
return
end
--check for column end
if checknode.name == "air"
or checknode.name == "ignore"
or not(minetest.registered_nodes[checknode.name].liquidtype == "none") then
break
end

View File

@ -121,14 +121,13 @@ mesecon:register_on_signal_on(function(pos, node)
while true do
local checknode = minetest.env:get_node(checkpos)
--check for collision with stopper
if mesecon:is_mvps_stopper(checknode.name) then
--check for collision with stopper or bounds
if mesecon:is_mvps_stopper(checknode.name) or checknode.name == "ignore" then
return
end
--check for column end
if checknode.name == "air"
or checknode.name == "ignore"
or not(minetest.registered_nodes[checknode.name].liquidtype == "none") then
break
end