From 748446b3cc4d663764e632c9de62eff2e530b44c Mon Sep 17 00:00:00 2001 From: DS Date: Wed, 18 Oct 2017 21:53:22 +0200 Subject: MVPS: pull objects (#374) --- mesecons_movestones/init.lua | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) (limited to 'mesecons_movestones') diff --git a/mesecons_movestones/init.lua b/mesecons_movestones/init.lua index 48481ea..723c7fd 100644 --- a/mesecons_movestones/init.lua +++ b/mesecons_movestones/init.lua @@ -50,7 +50,6 @@ function mesecon.register_movestone(name, def, is_sticky, is_vertical) minetest.get_node_timer(pos):start(timer_interval) return end - mesecon.mvps_process_stack(stack) mesecon.mvps_move_objects(frontpos, direction, oldstack) -- ### Step 2: Move the movestone ### @@ -61,9 +60,13 @@ function mesecon.register_movestone(name, def, is_sticky, is_vertical) minetest.get_node_timer(frontpos):start(timer_interval) -- ### Step 3: If sticky, pull stack behind ### - if is_sticky then - local backpos = vector.subtract(pos, direction) - mesecon.mvps_pull_all(backpos, direction, max_pull) + if not is_sticky then + return + end + local backpos = vector.subtract(pos, direction) + success, stack, oldstack = mesecon.mvps_pull_all(backpos, direction, max_pull) + if success then + mesecon.mvps_move_objects(backpos, vector.multiply(direction, -1), oldstack, -1) end end -- cgit v1.2.3