summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--mesecons_movestones/init.lua25
1 files changed, 17 insertions, 8 deletions
diff --git a/mesecons_movestones/init.lua b/mesecons_movestones/init.lua
index dcbb00b..7790658 100644
--- a/mesecons_movestones/init.lua
+++ b/mesecons_movestones/init.lua
@@ -67,7 +67,7 @@ minetest.register_node("mesecons_movestones:movestone", {
local direction=mesecon.get_movestone_direction(pos)
if not direction then return end
minetest.remove_node(pos)
- mesecon.update_autoconnect(pos)
+ mesecon.on_dignode(pos, node)
minetest.add_entity(pos, "mesecons_movestones:movestone_entity")
end
}}
@@ -100,16 +100,20 @@ minetest.register_entity("mesecons_movestones:movestone_entity", {
or minetest.registered_nodes[name].liquidtype == "none") then
mesecon.mvps_push(pos, self.lastdir, maxpush)
end
- minetest.add_node(pos, {name="mesecons_movestones:movestone"})
+ local nn = {name="mesecons_movestones:movestone"}
+ minetest.add_node(pos, nn)
self.object:remove()
+ mesecon.on_placenode(pos, nn)
return
end
local success, stack, oldstack =
mesecon.mvps_push(pos, direction, maxpush)
if not success then -- Too large stack/stopper in the way
- minetest.add_node(pos, {name="mesecons_movestones:movestone"})
+ local nn = {name="mesecons_movestones:movestone"}
+ minetest.add_node(pos, nn)
self.object:remove()
+ mesecon.on_placenode(pos, nn)
return
else
mesecon.mvps_process_stack (stack)
@@ -147,7 +151,7 @@ minetest.register_node("mesecons_movestones:sticky_movestone", {
local direction=mesecon.get_movestone_direction(pos)
if not direction then return end
minetest.remove_node(pos)
- mesecon.update_autoconnect(pos)
+ mesecon.on_dignode(pos, node)
minetest.add_entity(pos, "mesecons_movestones:sticky_movestone_entity")
end
}}
@@ -184,20 +188,25 @@ minetest.register_entity("mesecons_movestones:sticky_movestone_entity", {
if name ~= "air" and name ~= "ignore"
and ((not minetest.registered_nodes[name])
or minetest.registered_nodes[name].liquidtype == "none") then
- mesecon.mvps_push(pos, self.lastdir, MOVESTONE_MAXIMUM_PUSH)
+ mesecon.mvps_push(pos, self.lastdir,
+ mesecon.setting("movestone_max_push", 50))
--STICKY
mesecon.mvps_pull_all(pos, self.lastdir)
end
- minetest.add_node(pos, {name="mesecons_movestones:sticky_movestone"})
+ local nn = {name="mesecons_movestones:sticky_movestone"}
+ minetest.add_node(pos, nn)
self.object:remove()
+ mesecon.on_placenode(pos, nn)
return
end
local success, stack, oldstack =
- mesecon.mvps_push(pos, direction, MOVESTONE_MAXIMUM_PUSH)
+ mesecon.mvps_push(pos, direction, mesecon.setting("movestone_max_push", 50))
if not success then -- Too large stack/stopper in the way
- minetest.add_node(pos, {name="mesecons_movestones:sticky_movestone"})
+ local nn = {name="mesecons_movestones:sticky_movestone"}
+ minetest.add_node(pos, nn)
self.object:remove()
+ mesecon.on_placenode(pos, nn)
return
else
mesecon.mvps_process_stack (stack)