From 8952c55914163d8141bcc3a4ba3c4e5df3153b2e Mon Sep 17 00:00:00 2001 From: FaceDeer Date: Mon, 9 Jan 2017 01:19:35 -0700 Subject: Don't need player parameter for can_write_layout_image any more --- node_axle.lua | 2 +- util_layout.lua | 6 ++++-- 2 files changed, 5 insertions(+), 3 deletions(-) diff --git a/node_axle.lua b/node_axle.lua index c30a401..f78b220 100644 --- a/node_axle.lua +++ b/node_axle.lua @@ -38,7 +38,7 @@ minetest.register_node("digtron:axle", { end local image = digtron.get_layout_image(pos, clicker) digtron.rotate_layout_image(image, node.param2) - if digtron.can_write_layout_image(image, clicker) then + if digtron.can_write_layout_image(image) then digtron.write_layout_image(image) minetest.sound_play("whirr", {gain=1.0, pos=pos}) diff --git a/util_layout.lua b/util_layout.lua index 292b23f..da5ac6d 100644 --- a/util_layout.lua +++ b/util_layout.lua @@ -172,12 +172,14 @@ digtron.move_layout_image = function(layout_image, facing, player_name) end end -digtron.can_write_layout_image = function(layout_image, player) +digtron.can_write_layout_image = function(layout_image) for k, node_image in pairs(layout_image.all) do + -- check if the target node is buildable_to or is marked as part of the digtron that's moving if not layout_image.old_pos_pointset:get(node_image.pos.x, node_image.pos.y, node_image.pos.z) and not minetest.registered_nodes[minetest.get_node(node_image.pos).name].buildable_to then return false - elseif minetest.is_protected(node_image.pos, player:get_player_name()) and not minetest.check_player_privs(player, "protection_bypass") then + --check if we're moving into a protected node + elseif layout_image.protected:get(node_image.pos) then return false end end -- cgit v1.2.3