From 14cc07bfd35d9e82def5cd49e2015ead6a4a8102 Mon Sep 17 00:00:00 2001 From: 12Me21 <12Me21.MC@gmail.com> Date: Thu, 7 Feb 2019 20:53:55 -0500 Subject: [PATCH] Beds: Make on_rotate function check new param2 instead of rotation mode The on_rotate function now checks the new param2 value to determine if a rotation is valid, rather than checking the rotation mode. This is so screwdriver-like items with different rotation modes will not be able to rotate the bed into invalid orientations. --- mods/beds/api.lua | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/mods/beds/api.lua b/mods/beds/api.lua index ef07fc00..c545a201 100644 --- a/mods/beds/api.lua +++ b/mods/beds/api.lua @@ -109,7 +109,7 @@ function beds.register_bed(name, def) return itemstack end, - on_rotate = function(pos, node, user, mode, new_param2) + on_rotate = function(pos, node, user, _, new_param2) local dir = minetest.facedir_to_dir(node.param2) local p = vector.add(pos, dir) local node2 = minetest.get_node_or_nil(p) @@ -121,7 +121,7 @@ function beds.register_bed(name, def) minetest.record_protection_violation(p, user:get_player_name()) return false end - if mode ~= screwdriver.ROTATE_FACE then + if new_param2 % 32 > 3 then return false end local newp = vector.add(pos, minetest.facedir_to_dir(new_param2))