Skip to content
Snippets Groups Projects
Commit 1237bc3a authored by PilzAdam's avatar PilzAdam Committed by sfan5
Browse files

Don't override param2 bits that are not used for rotation in screwdriver

parent 854415fd
No related branches found
No related tags found
No related merge requests found
......@@ -37,16 +37,18 @@ local function screwdriver_handler(itemstack, user, pointed_thing, mode)
end
-- Set param2
local n = node.param2
local axisdir = math.floor(n / 4)
local rotation = n - axisdir * 4
local rotationPart = node.param2 % 32 -- get first 4 bits
local preservePart = node.param2 - rotationPart
local axisdir = math.floor(rotationPart / 4)
local rotation = rotationPart - axisdir * 4
if mode == ROTATE_FACE then
n = axisdir * 4 + nextrange(rotation, 3)
rotationPart = axisdir * 4 + nextrange(rotation, 3)
elseif mode == ROTATE_AXIS then
n = nextrange(axisdir, 5) * 4
rotationPart = nextrange(axisdir, 5) * 4
end
node.param2 = n
node.param2 = preservePart + rotationPart
minetest.swap_node(pos, node)
if not minetest.setting_getbool("creative_mode") then
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment