diff --git a/wielder.lua b/wielder.lua index 8f71cd7..88f8e67 100644 --- a/wielder.lua +++ b/wielder.lua @@ -43,8 +43,14 @@ local function wielder_on(data, wielder_pos, wielder_node) wieldstack = inv:get_stack(wield_inv_name, 1) end local dir = minetest.facedir_to_dir(wielder_node.param2) - local above_pos = vector.subtract(wielder_pos, dir) - local under_pos = vector.subtract(above_pos, dir) + -- under/above is currently intentionally left switched + -- even though this causes some problems with deployers and e.g. seeds + -- as there are some issues related to nodebreakers otherwise breaking 2 nodes afar. + -- solidity would have to be checked as well, + -- but would open a whole can of worms related to difference in nodebreaker/deployer behavior + -- and the problems of wielders acting on themselves if below is solid + local under_pos = vector.subtract(wielder_pos, dir) + local above_pos = vector.subtract(under_pos, dir) local pitch local yaw if dir.z < 0 then