diff options
Diffstat (limited to 'mesecons_movestones/init.lua')
-rw-r--r-- | mesecons_movestones/init.lua | 16 |
1 files changed, 9 insertions, 7 deletions
diff --git a/mesecons_movestones/init.lua b/mesecons_movestones/init.lua index 76fd3cd..7a2f7e8 100644 --- a/mesecons_movestones/init.lua +++ b/mesecons_movestones/init.lua @@ -60,14 +60,16 @@ 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 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) + if is_sticky then + 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 + + -- ### Step 4: Let things fall ### + minetest.check_for_falling(vector.add(pos, {x=0, y=1, z=0})) end def.is_ground_content = false |