Using Screwdriver rotates the signs clockwise. Fix issue #2
This commit is contained in:
		
							
								
								
									
										44
									
								
								init.lua
									
									
									
									
									
								
							
							
						
						
									
										44
									
								
								init.lua
									
									
									
									
									
								
							@@ -94,6 +94,50 @@ arrow_signs.on_place = function(itemstack, placer, pointed_thing)
 | 
			
		||||
	return minetest.item_place_node(itemstack, placer, pointed_thing, param2)
 | 
			
		||||
end
 | 
			
		||||
 | 
			
		||||
local matrix = {
 | 
			
		||||
	-- Mounted on Ground (-Y)
 | 
			
		||||
	[10]=19,
 | 
			
		||||
	[19]=4,
 | 
			
		||||
	[4]=13,
 | 
			
		||||
	[13]=10,
 | 
			
		||||
 | 
			
		||||
	-- Mounted on Top (+Y)
 | 
			
		||||
	[8]=17,
 | 
			
		||||
	[17]=6,
 | 
			
		||||
	[6]=15,
 | 
			
		||||
	[15]=8,
 | 
			
		||||
 | 
			
		||||
	-- Mounted at South (-Z)
 | 
			
		||||
	[2]=18, -- down
 | 
			
		||||
	[18]=22, -- left
 | 
			
		||||
	[22]=14, -- up
 | 
			
		||||
	[14]=2, -- right
 | 
			
		||||
 | 
			
		||||
	-- Mounted at North (+Z)
 | 
			
		||||
	[0]=12, -- down
 | 
			
		||||
	[12]=20, -- left
 | 
			
		||||
	[20]=16, -- up
 | 
			
		||||
	[16]=0, -- right
 | 
			
		||||
 | 
			
		||||
	-- Mounted at West (-X)
 | 
			
		||||
	[3]=7, -- down
 | 
			
		||||
	[7]=21, -- left
 | 
			
		||||
	[21]=11, -- up
 | 
			
		||||
	[11]=3, -- right
 | 
			
		||||
 | 
			
		||||
	-- Mounted at East (+X)
 | 
			
		||||
	[1]=9, -- down
 | 
			
		||||
	[9]=23, -- left
 | 
			
		||||
	[23]=5, -- up
 | 
			
		||||
	[5]=1, -- right
 | 
			
		||||
}
 | 
			
		||||
 | 
			
		||||
arrow_signs.on_rotate = function(pos, node, player, mode, new_param2)
 | 
			
		||||
	node.param2 = matrix[node.param2] or 0 --in case of error
 | 
			
		||||
	minetest.swap_node(pos,node)
 | 
			
		||||
	return true
 | 
			
		||||
end
 | 
			
		||||
 | 
			
		||||
arrow_signs.savetext = function(pos, formname, fields, sender)
 | 
			
		||||
	if fields.text then
 | 
			
		||||
		local playername = sender:get_player_name() or ""
 | 
			
		||||
 
 | 
			
		||||
@@ -1,7 +1,7 @@
 | 
			
		||||
--[[
 | 
			
		||||
    Shared Locked Arrow sign
 | 
			
		||||
	Shared Locked Arrow sign
 | 
			
		||||
 | 
			
		||||
    This work is licensed under the Creative Commons Attribution-ShareAlike 3.0 Unported License.
 | 
			
		||||
	This work is licensed under the Creative Commons Attribution-ShareAlike 3.0 Unported License.
 | 
			
		||||
	To view a copy of this license, visit http://creativecommons.org/licenses/by-sa/3.0/ or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA.
 | 
			
		||||
]]
 | 
			
		||||
minetest.register_node("arrow_signs:shared_locked", {
 | 
			
		||||
@@ -24,7 +24,7 @@ minetest.register_node("arrow_signs:shared_locked", {
 | 
			
		||||
			locks:lock_set_owner( pointed_thing.above, placer, "Shared locked sign");
 | 
			
		||||
			return itemstack
 | 
			
		||||
	end,
 | 
			
		||||
 | 
			
		||||
	on_rotate = arrow_signs.on_rotate,
 | 
			
		||||
	on_construct = function(pos)
 | 
			
		||||
			local meta =  minetest.get_meta(pos)
 | 
			
		||||
			-- prepare the lock of the sign
 | 
			
		||||
 
 | 
			
		||||
@@ -1,7 +1,7 @@
 | 
			
		||||
--[[
 | 
			
		||||
    Steel Arrow Sign
 | 
			
		||||
	Steel Arrow Sign
 | 
			
		||||
 | 
			
		||||
    This work is licensed under the Creative Commons Attribution-ShareAlike 3.0 Unported License.
 | 
			
		||||
	This work is licensed under the Creative Commons Attribution-ShareAlike 3.0 Unported License.
 | 
			
		||||
	To view a copy of this license, visit http://creativecommons.org/licenses/by-sa/3.0/ or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA.
 | 
			
		||||
]]
 | 
			
		||||
 | 
			
		||||
@@ -20,6 +20,7 @@ minetest.register_node("arrow_signs:steel", {
 | 
			
		||||
	groups = {cracky = 2},
 | 
			
		||||
	sounds = default.node_sound_defaults(),
 | 
			
		||||
	on_place = arrow_signs.on_place,
 | 
			
		||||
	on_rotate = arrow_signs.on_rotate,
 | 
			
		||||
	on_construct = function(pos)
 | 
			
		||||
		local meta = minetest.get_meta(pos)
 | 
			
		||||
		meta:set_string("formspec", arrow_signs.formspec)
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										5
									
								
								wood.lua
									
									
									
									
									
								
							
							
						
						
									
										5
									
								
								wood.lua
									
									
									
									
									
								
							@@ -1,7 +1,7 @@
 | 
			
		||||
--[[
 | 
			
		||||
    Wooden Arrow sign
 | 
			
		||||
	Wooden Arrow sign
 | 
			
		||||
 | 
			
		||||
    This work is licensed under the Creative Commons Attribution-ShareAlike 3.0 Unported License.
 | 
			
		||||
	This work is licensed under the Creative Commons Attribution-ShareAlike 3.0 Unported License.
 | 
			
		||||
	To view a copy of this license, visit http://creativecommons.org/licenses/by-sa/3.0/ or send a letter to Creative Commons, PO Box 1866, Mountain View, CA 94042, USA.
 | 
			
		||||
]]
 | 
			
		||||
 | 
			
		||||
@@ -20,6 +20,7 @@ minetest.register_node("arrow_signs:wall", {
 | 
			
		||||
	groups = {choppy = 2, flammable = 2, oddly_breakable_by_hand = 3},
 | 
			
		||||
	sounds = default.node_sound_defaults(),
 | 
			
		||||
	on_place = arrow_signs.on_place,
 | 
			
		||||
	on_rotate = arrow_signs.on_rotate,
 | 
			
		||||
	on_construct = function(pos)
 | 
			
		||||
		--local n = minetest.get_node(pos)
 | 
			
		||||
		local meta = minetest.get_meta(pos)
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user