Add necessary bits to allow signs to be placed onto horizontal poles

(both wooden and steel signs)

only streets mod's "bigpole" supported for now.

Model changes:

To make a sign support horizontal mounting, make a single "_onpole"
model, with two copies of the pole mount, one rotated by 90°.  Make sure
the second copy appears has its own material entry, and that it is last
in the materials list in the exported .obj (`grep "g " file.obj` to
check).

When registered, signs_lib will set the "_onpole" and "_onpole_horiz"
tiles{} to reveal one mount or the other: entry 3 will expose the
vertical mount, entry 4 is the horizontal copy, with the opposite entry
being set to the "blank" image.
This commit is contained in:
Vanessa Dannenberg 2019-09-21 15:45:48 -04:00
parent c66c1b70bd
commit 9502812088
5 changed files with 582 additions and 106 deletions

152
api.lua
View File

@ -63,6 +63,20 @@ signs_lib.wall_fdir_to_back = {
{ 1, 0 },
}
signs_lib.fdir_flip_to_back = {
[0] = { 0, 2 },
[1] = { 2, 0 },
[2] = { 0, -2 },
[3] = { -2, 0 }
}
signs_lib.wall_fdir_flip_to_back = {
[2] = { 2, 0 },
[3] = { -2, 0 },
[4] = { 0, 2 },
[5] = { 0, -2 },
}
signs_lib.fdir_to_back_left = {
[0] = { -1, 1 },
[1] = { 1, 1 },
@ -114,6 +128,25 @@ signs_lib.rotate_facedir_simple = {
[5] = 0
}
signs_lib.flip_facedir = {
[0] = 2,
[1] = 3,
[2] = 0,
[3] = 1,
[4] = 6,
[5] = 4,
[6] = 4
}
signs_lib.flip_walldir = {
[0] = 1,
[1] = 0,
[2] = 3,
[3] = 2,
[4] = 5,
[5] = 4
}
-- Initialize character texture cache
local ctexcache = {}
@ -205,30 +238,44 @@ function signs_lib.handle_rotation(pos, node, user, mode)
local def = minetest.registered_items[node.name]
if string.match(node.name, "_onpole") then
local newparam2 = signs_lib.rotate_walldir_simple[node.param2] or 4
local t = signs_lib.wall_fdir_to_back_left
if not string.match(node.name, "_horiz") then
newparam2 = signs_lib.rotate_walldir_simple[node.param2] or 4
local t = signs_lib.wall_fdir_to_back_left
if def.paramtype2 ~= "wallmounted" then
newparam2 = signs_lib.rotate_facedir_simple[node.param2] or 0
t = signs_lib.fdir_to_back_left
if def.paramtype2 ~= "wallmounted" then
newparam2 = signs_lib.rotate_facedir_simple[node.param2] or 0
t = signs_lib.fdir_to_back_left
end
tpos = {
x = pos.x + t[node.param2][1],
y = pos.y,
z = pos.z + t[node.param2][2]
}
else
-- flip the sign to the other side of the horizontal pole
newparam2 = signs_lib.flip_walldir[node.param2] or 4
local t = signs_lib.wall_fdir_flip_to_back
if def.paramtype2 ~= "wallmounted" then
newparam2 = signs_lib.flip_facedir[node.param2] or 0
t = signs_lib.fdir_flip_to_back
end
tpos = {
x = pos.x + t[node.param2][1],
y = pos.y,
z = pos.z + t[node.param2][2]
}
end
tpos = {
x = pos.x + t[node.param2][1],
y = pos.y,
z = pos.z + t[node.param2][2]
}
local node2 = minetest.get_node(tpos)
local def2 = minetest.registered_items[node2.name]
if not def2 or not def2.buildable_to then return true end -- undefined, or not buildable_to.
minetest.set_node(tpos, {name = node.name, param2 = newparam2})
minetest.get_meta(tpos):from_table(minetest.get_meta(pos):to_table())
minetest.remove_node(pos)
signs_lib.delete_objects(pos)
elseif string.match(node.name, "_hanging") or string.match(node.name, "yard") then
minetest.swap_node(tpos, { name = node.name, param2 = signs_lib.rotate_facedir_simple[node.param2] or 0 })
elseif minetest.registered_items[node.name].paramtype2 == "wallmounted" then
@ -551,7 +598,11 @@ end
local function make_widefont_nodename(name)
if string.find(name, "_widefont") then return name end
if string.find(name, "_onpole") then
return string.gsub(name, "_onpole", "_widefont_onpole")
if string.find(name, "_horiz") then
return string.gsub(name, "_onpole_horiz", "_widefont_onpole_horiz")
else
return string.gsub(name, "_onpole", "_widefont_onpole")
end
elseif string.find(name, "_hanging") then
return string.gsub(name, "_hanging", "_widefont_hanging")
else
@ -701,20 +752,38 @@ function signs_lib.check_for_pole(pos, pointed_thing)
local pdef = minetest.registered_items[pnode.name]
if (signs_lib.allowed_poles[pnode.name]
or (pdef and pdef.drawtype == "fencelike")
or string.find(pnode.name, "default:fence_")
or string.find(pnode.name, "_post")
or string.find(pnode.name, "fencepost")
or string.find(pnode.name, "streets:streetlamp_basic_top")
or (pnode.name == "streets:bigpole" and pnode.param2 < 4)
or (pnode.name == "streets:bigpole" and pnode.param2 > 19 and pnode.param2 < 24)
)
and
(pos.x ~= ppos.x or pos.z ~= ppos.z) then
or (pdef and pdef.drawtype == "fencelike")
or string.find(pnode.name, "default:fence_")
or string.find(pnode.name, "_post")
or string.find(pnode.name, "fencepost")
or string.find(pnode.name, "streets:streetlamp_basic_top")
or (pnode.name == "streets:bigpole" and pnode.param2 < 4)
or (pnode.name == "streets:bigpole" and pnode.param2 > 19 and pnode.param2 < 24) )
and (pos.x ~= ppos.x or pos.z ~= ppos.z) then
return true
end
end
function signs_lib.check_for_horizontal_pole(pos, pointed_thing)
local node = minetest.get_node(pos)
local def = minetest.registered_items[node.name]
local ppos = minetest.get_pointed_thing_position(pointed_thing)
local pnode = minetest.get_node(ppos)
if pnode.name == "streets:bigpole" then
if def.paramtype2 == "wallmounted" then
if ((node.param2 == 2 or node.param2 == 3) and (pnode.param2 > 3 and pnode.param2 < 12)) -- E/W
or ((node.param2 == 4 or node.param2 == 5) and (pnode.param2 > 11 and pnode.param2 < 20)) -- N/S
then return true
end
else
if ((node.param2 == 1 or node.param2 == 3) and (pnode.param2 > 3 and pnode.param2 < 12)) -- E/W
or ((node.param2 == 0 or node.param2 == 2) and (pnode.param2 > 11 and pnode.param2 < 20)) -- N/S
then return true
end
end
end
end
function signs_lib.check_for_ceiling(pointed_thing)
if pointed_thing.above.x == pointed_thing.under.x
and pointed_thing.above.z == pointed_thing.under.z
@ -738,7 +807,6 @@ function signs_lib.after_place_node(pos, placer, itemstack, pointed_thing, locke
local ppos = minetest.get_pointed_thing_position(pointed_thing)
local pnode = minetest.get_node(ppos)
local pdef = minetest.registered_items[pnode.name]
if (def.allow_onpole ~= false) and signs_lib.check_for_pole(pos, pointed_thing) then
local newparam2
local lookdir = minetest.yaw_to_dir(placer:get_look_horizontal())
@ -749,6 +817,16 @@ function signs_lib.after_place_node(pos, placer, itemstack, pointed_thing, locke
end
local node = minetest.get_node(pos)
minetest.swap_node(pos, {name = itemstack:get_name().."_onpole", param2 = newparam2})
elseif def.allow_onpole_horizontal and signs_lib.check_for_horizontal_pole(pos, pointed_thing) then
local newparam2
local lookdir = minetest.yaw_to_dir(placer:get_look_horizontal())
if def.paramtype2 == "wallmounted" then
newparam2 = minetest.dir_to_wallmounted(lookdir)
else
newparam2 = minetest.dir_to_facedir(lookdir)
end
local node = minetest.get_node(pos)
minetest.swap_node(pos, {name = itemstack:get_name().."_onpole_horiz", param2 = newparam2})
elseif def.allow_hanging and signs_lib.check_for_ceiling(pointed_thing) then
local newparam2 = minetest.dir_to_facedir(placer:get_look_dir())
local node = minetest.get_node(pos)
@ -832,9 +910,9 @@ local function register_sign(name, rdef)
minetest.register_node(":"..name, def)
table.insert(signs_lib.lbm_restore_nodes, name)
if rdef.allow_onpole ~= false then
local opdef = table.copy(def)
local opdef = table.copy(def)
if rdef.allow_onpole ~= false or rdef.allow_onpole_horizontal then
local offset = 0.3125
if opdef.uses_slim_pole_mount then
@ -859,16 +937,32 @@ local function register_sign(name, rdef)
end
opdef.groups.not_in_creative_inventory = 1
opdef.tiles[3] = "signs_lib_pole_mount.png"
opdef.mesh = string.gsub(opdef.mesh, ".obj$", "_onpole.obj")
if opdef.entity_info then
opdef.entity_info.mesh = string.gsub(opdef.entity_info.mesh, ".obj$", "_onpole.obj")
end
end
-- setting one of item 3 or 4 to a texture and leaving the other "blank",
-- reveals either the vertical or horizontal pole mount part of the model
if rdef.allow_onpole ~= false then
opdef.tiles[3] = "signs_lib_pole_mount.png"
opdef.tiles[4] = "signs_lib_blank.png"
minetest.register_node(":"..name.."_onpole", opdef)
table.insert(signs_lib.lbm_restore_nodes, name.."_onpole")
end
local ophdef = table.copy(opdef)
if rdef.allow_onpole_horizontal then
ophdef.tiles[3] = "signs_lib_blank.png"
ophdef.tiles[4] = "signs_lib_pole_mount.png"
minetest.register_node(":"..name.."_onpole_horiz", ophdef)
table.insert(signs_lib.lbm_restore_nodes, name.."_onpole_horiz")
end
if rdef.allow_hanging then
local hdef = table.copy(def)

View File

@ -73,6 +73,62 @@ v -0.164063 0.125000 1.125000
v 0.164062 0.125000 1.125000
v -0.164063 0.187500 1.125000
v 0.164062 0.187500 1.125000
v 0.187500 -0.125000 0.812500
v 0.187500 -0.125000 0.875000
v -0.187500 -0.125000 0.812500
v -0.187500 -0.125000 0.875000
v -0.187500 0.125000 0.812500
v 0.187500 0.125000 0.812500
v 0.187500 0.125000 0.875000
v -0.187500 0.125000 0.875000
v 0.187500 -0.125000 1.125000
v 0.187500 -0.125000 0.812500
v 0.125000 -0.125000 1.125000
v 0.125000 -0.125000 0.812500
v 0.187500 -0.164063 1.125000
v 0.187500 -0.164063 0.812500
v 0.125000 -0.164063 1.125000
v 0.125000 -0.164063 0.812500
v -0.125000 -0.125000 1.125000
v -0.125000 -0.125000 0.812500
v -0.187500 -0.125000 1.125000
v -0.187500 -0.125000 0.812500
v -0.125000 -0.164063 1.125000
v -0.125000 -0.164063 0.812500
v -0.187500 -0.164063 1.125000
v -0.187500 -0.164063 0.812500
v 0.187500 0.164062 1.125000
v 0.187500 0.164062 0.812500
v 0.125000 0.164062 1.125000
v 0.125000 0.164062 0.812500
v 0.187500 0.125000 1.125000
v 0.187500 0.125000 0.812500
v 0.125000 0.125000 1.125000
v 0.125000 0.125000 0.812500
v -0.125000 0.164062 1.125000
v -0.125000 0.164062 0.812500
v -0.187500 0.164062 1.125000
v -0.187500 0.164062 0.812500
v -0.125000 0.125000 1.125000
v -0.125000 0.125000 0.812500
v -0.187500 0.125000 1.125000
v -0.187500 0.125000 0.812500
v 0.187500 -0.164063 1.164063
v 0.187500 0.164062 1.164063
v 0.125000 -0.164063 1.164063
v 0.125000 0.164062 1.164063
v 0.187500 -0.164063 1.125000
v 0.187500 0.164062 1.125000
v 0.125000 -0.164063 1.125000
v 0.125000 0.164062 1.125000
v -0.125000 -0.164063 1.164063
v -0.125000 0.164062 1.164063
v -0.187500 -0.164063 1.164063
v -0.187500 0.164062 1.164063
v -0.125000 -0.164063 1.125000
v -0.125000 0.164062 1.125000
v -0.187500 -0.164063 1.125000
v -0.187500 0.164062 1.125000
vt 0.468750 0.812500
vt 0.031250 0.812500
vt 0.031250 0.187500
@ -195,6 +251,110 @@ vt 0.453125 0.640625
vt 0.453125 0.593750
vt 0.312500 0.593750
vt 0.312500 0.640625
vt 0.843750 0.507812
vt 0.703125 0.507812
vt 0.703125 0.093750
vt 0.843750 0.093750
vt 0.015625 0.507812
vt 0.015625 0.093750
vt 0.156250 0.093750
vt 0.156250 0.507812
vt 0.156250 0.031250
vt 0.703125 0.031250
vt 0.703125 0.578125
vt 0.156250 0.578125
vt 0.312500 0.640625
vt 0.312500 0.992188
vt 0.453125 0.992188
vt 0.453125 0.640625
vt 0.234375 0.640625
vt 0.234375 0.992188
vt 0.312500 0.992188
vt 0.312500 0.640625
vt 0.234375 0.640625
vt 0.234375 0.992188
vt 0.093750 0.992188
vt 0.093750 0.640625
vt 0.015625 0.992188
vt 0.015625 0.640625
vt 0.312500 0.640625
vt 0.312500 0.992188
vt 0.453125 0.992188
vt 0.453125 0.640625
vt 0.234375 0.640625
vt 0.234375 0.992188
vt 0.312500 0.992188
vt 0.312500 0.640625
vt 0.234375 0.640625
vt 0.234375 0.992188
vt 0.093750 0.992188
vt 0.093750 0.640625
vt 0.015625 0.992188
vt 0.015625 0.640625
vt 0.312500 0.640625
vt 0.312500 0.992188
vt 0.453125 0.992188
vt 0.453125 0.640625
vt 0.234375 0.640625
vt 0.234375 0.992188
vt 0.312500 0.992188
vt 0.312500 0.640625
vt 0.234375 0.640625
vt 0.234375 0.992188
vt 0.093750 0.992188
vt 0.093750 0.640625
vt 0.015625 0.992188
vt 0.015625 0.640625
vt 0.312500 0.640625
vt 0.312500 0.992188
vt 0.453125 0.992188
vt 0.453125 0.640625
vt 0.234375 0.640625
vt 0.234375 0.992188
vt 0.312500 0.992188
vt 0.312500 0.640625
vt 0.234375 0.640625
vt 0.234375 0.992188
vt 0.093750 0.992188
vt 0.093750 0.640625
vt 0.015625 0.992188
vt 0.015625 0.640625
vt 0.781250 0.664062
vt 0.781250 0.992188
vt 0.921875 0.992188
vt 0.921875 0.664062
vt 0.484375 0.664062
vt 0.484375 0.992188
vt 0.562500 0.992188
vt 0.562500 0.664062
vt 0.703125 0.992188
vt 0.703125 0.664062
vt 0.234375 0.593750
vt 0.234375 0.640625
vt 0.093750 0.640625
vt 0.093750 0.593750
vt 0.453125 0.640625
vt 0.453125 0.593750
vt 0.312500 0.593750
vt 0.312500 0.640625
vt 0.781250 0.664062
vt 0.781250 0.992188
vt 0.921875 0.992188
vt 0.921875 0.664062
vt 0.484375 0.664062
vt 0.484375 0.992188
vt 0.562500 0.992188
vt 0.562500 0.664062
vt 0.703125 0.992188
vt 0.703125 0.664062
vt 0.234375 0.593750
vt 0.234375 0.640625
vt 0.093750 0.640625
vt 0.093750 0.593750
vt 0.453125 0.640625
vt 0.453125 0.593750
vt 0.312500 0.593750
vt 0.312500 0.640625
vn 0.0000 0.0000 -1.0000
vn 0.0000 0.0000 1.0000
vn 0.0000 -1.0000 0.0000
@ -244,3 +404,37 @@ f 71/112/1 72/111/1 70/113/1 69/114/1
f 69/114/3 70/113/3 66/106/3 65/105/3
f 67/115/6 71/116/6 69/117/6 65/118/6
f 72/119/5 68/120/5 66/121/5 70/122/5
g sign_on_pole.001_Cube.002_pole_mount_horizontal
f 73/123/3 74/124/3 76/125/3 75/126/3
f 78/127/4 77/128/4 80/129/4 79/130/4
f 76/125/6 80/129/6 77/131/6 75/132/6
f 73/133/5 78/134/5 79/130/5 74/124/5
f 74/124/2 79/130/2 80/129/2 76/125/2
f 81/135/4 82/136/4 84/137/4 83/138/4
f 83/139/6 84/140/6 88/141/6 87/142/6
f 87/143/3 88/144/3 86/145/3 85/146/3
f 85/146/5 86/145/5 82/147/5 81/148/5
f 89/149/4 90/150/4 92/151/4 91/152/4
f 91/153/6 92/154/6 96/155/6 95/156/6
f 95/157/3 96/158/3 94/159/3 93/160/3
f 93/160/5 94/159/5 90/161/5 89/162/5
f 97/163/4 98/164/4 100/165/4 99/166/4
f 99/167/6 100/168/6 104/169/6 103/170/6
f 103/171/3 104/172/3 102/173/3 101/174/3
f 101/174/5 102/173/5 98/175/5 97/176/5
f 105/177/4 106/178/4 108/179/4 107/180/4
f 107/181/6 108/182/6 112/183/6 111/184/6
f 111/185/3 112/186/3 110/187/3 109/188/3
f 109/188/5 110/187/5 106/189/5 105/190/5
f 113/191/2 114/192/2 116/193/2 115/194/2
f 115/195/6 116/196/6 120/197/6 119/198/6
f 119/198/1 120/197/1 118/199/1 117/200/1
f 117/200/5 118/199/5 114/192/5 113/191/5
f 115/201/3 119/202/3 117/203/3 113/204/3
f 120/205/4 116/206/4 114/207/4 118/208/4
f 121/209/2 122/210/2 124/211/2 123/212/2
f 123/213/6 124/214/6 128/215/6 127/216/6
f 127/216/1 128/215/1 126/217/1 125/218/1
f 125/218/5 126/217/5 122/210/5 121/209/5
f 123/219/3 127/220/3 125/221/3 121/222/3
f 128/223/4 124/224/4 122/225/4 126/226/4

View File

@ -1,6 +1,6 @@
# Blender v2.79 (sub 0) OBJ File: 'basic_signs wooden wall sign.blend'
# Blender v2.79 (sub 0) OBJ File: 'basic_signs wooden sign.blend'
# www.blender.org
o Cube.003_Cube
o sign_on_pole_Cube.002
v 0.437500 -0.812500 -0.312500
v 0.437500 -0.750000 -0.312500
v 0.437500 -0.812500 0.312500
@ -17,40 +17,6 @@ v -0.437500 -0.812500 -0.312500
v -0.437500 -0.750000 -0.312500
v -0.437500 -0.812500 0.312500
v -0.437500 -0.750000 0.312500
vt 0.468750 0.812500
vt 0.031250 0.812500
vt 0.031250 0.187500
vt 0.468750 0.187500
vt 0.531250 0.812500
vt 0.968750 0.812500
vt 0.968750 0.187500
vt 0.531250 0.187500
vt 0.234375 0.000000
vt 0.234375 1.000000
vt 0.015625 1.000000
vt 0.015625 -0.000000
vt 0.609375 -0.000000
vt 0.609375 1.000000
vt 0.390625 1.000000
vt 0.390625 -0.000000
vt 0.765625 0.000000
vt 0.765625 1.000000
vn 0.0000 1.0000 0.0000
vn 0.0000 -1.0000 0.0000
vn 0.0000 0.0000 -1.0000
vn 0.0000 0.0000 1.0000
vn 1.0000 0.0000 0.0000
vn -1.0000 0.0000 0.0000
g Cube.003_Cube_front-back
s off
f 8/1/1 4/2/1 2/3/1 6/4/1
f 3/5/2 7/6/2 5/7/2 1/8/2
g Cube.003_Cube_edges
f 13/9/3 14/10/3 10/11/3 9/12/3
f 11/13/4 12/14/4 16/15/4 15/16/4
f 11/13/5 9/17/5 10/18/5 12/14/5
f 13/9/6 15/16/6 16/15/6 14/10/6
o Cube.001
v -0.125000 -0.812500 -0.187500
v -0.125000 -0.875000 -0.187500
v -0.125000 -0.812500 0.187500
@ -107,6 +73,184 @@ v -0.164063 -1.125000 0.125000
v 0.164062 -1.125000 0.125000
v -0.164063 -1.125000 0.187500
v 0.164062 -1.125000 0.187500
v 0.187500 -0.812500 -0.125000
v 0.187500 -0.875000 -0.125000
v -0.187500 -0.812500 -0.125000
v -0.187500 -0.875000 -0.125000
v -0.187500 -0.812500 0.125000
v 0.187500 -0.812500 0.125000
v 0.187500 -0.875000 0.125000
v -0.187500 -0.875000 0.125000
v 0.187500 -1.125000 -0.125000
v 0.187500 -0.812500 -0.125000
v 0.125000 -1.125000 -0.125000
v 0.125000 -0.812500 -0.125000
v 0.187500 -1.125000 -0.164063
v 0.187500 -0.812500 -0.164063
v 0.125000 -1.125000 -0.164063
v 0.125000 -0.812500 -0.164063
v -0.125000 -1.125000 -0.125000
v -0.125000 -0.812500 -0.125000
v -0.187500 -1.125000 -0.125000
v -0.187500 -0.812500 -0.125000
v -0.125000 -1.125000 -0.164063
v -0.125000 -0.812500 -0.164063
v -0.187500 -1.125000 -0.164063
v -0.187500 -0.812500 -0.164063
v 0.187500 -1.125000 0.164062
v 0.187500 -0.812500 0.164062
v 0.125000 -1.125000 0.164062
v 0.125000 -0.812500 0.164062
v 0.187500 -1.125000 0.125000
v 0.187500 -0.812500 0.125000
v 0.125000 -1.125000 0.125000
v 0.125000 -0.812500 0.125000
v -0.125000 -1.125000 0.164062
v -0.125000 -0.812500 0.164062
v -0.187500 -1.125000 0.164062
v -0.187500 -0.812500 0.164062
v -0.125000 -1.125000 0.125000
v -0.125000 -0.812500 0.125000
v -0.187500 -1.125000 0.125000
v -0.187500 -0.812500 0.125000
v 0.187500 -1.164063 -0.164063
v 0.187500 -1.164063 0.164062
v 0.125000 -1.164063 -0.164063
v 0.125000 -1.164063 0.164062
v 0.187500 -1.125000 -0.164063
v 0.187500 -1.125000 0.164062
v 0.125000 -1.125000 -0.164063
v 0.125000 -1.125000 0.164062
v -0.125000 -1.164063 -0.164063
v -0.125000 -1.164063 0.164062
v -0.187500 -1.164063 -0.164063
v -0.187500 -1.164063 0.164062
v -0.125000 -1.125000 -0.164063
v -0.125000 -1.125000 0.164062
v -0.187500 -1.125000 -0.164063
v -0.187500 -1.125000 0.164062
vt 0.468750 0.812500
vt 0.031250 0.812500
vt 0.031250 0.187500
vt 0.468750 0.187500
vt 0.531250 0.812500
vt 0.968750 0.812500
vt 0.968750 0.187500
vt 0.531250 0.187500
vt 0.234375 0.000000
vt 0.234375 1.000000
vt 0.015625 1.000000
vt 0.015625 -0.000000
vt 0.609375 -0.000000
vt 0.609375 1.000000
vt 0.390625 1.000000
vt 0.390625 -0.000000
vt 0.765625 0.000000
vt 0.765625 1.000000
vt 0.843750 0.507812
vt 0.703125 0.507812
vt 0.703125 0.093750
vt 0.843750 0.093750
vt 0.015625 0.507812
vt 0.015625 0.093750
vt 0.156250 0.093750
vt 0.156250 0.507812
vt 0.156250 0.031250
vt 0.703125 0.031250
vt 0.703125 0.578125
vt 0.156250 0.578125
vt 0.312500 0.640625
vt 0.312500 0.992188
vt 0.453125 0.992188
vt 0.453125 0.640625
vt 0.234375 0.640625
vt 0.234375 0.992188
vt 0.312500 0.992188
vt 0.312500 0.640625
vt 0.234375 0.640625
vt 0.234375 0.992188
vt 0.093750 0.992188
vt 0.093750 0.640625
vt 0.015625 0.992188
vt 0.015625 0.640625
vt 0.312500 0.640625
vt 0.312500 0.992188
vt 0.453125 0.992188
vt 0.453125 0.640625
vt 0.234375 0.640625
vt 0.234375 0.992188
vt 0.312500 0.992188
vt 0.312500 0.640625
vt 0.234375 0.640625
vt 0.234375 0.992188
vt 0.093750 0.992188
vt 0.093750 0.640625
vt 0.015625 0.992188
vt 0.015625 0.640625
vt 0.312500 0.640625
vt 0.312500 0.992188
vt 0.453125 0.992188
vt 0.453125 0.640625
vt 0.234375 0.640625
vt 0.234375 0.992188
vt 0.312500 0.992188
vt 0.312500 0.640625
vt 0.234375 0.640625
vt 0.234375 0.992188
vt 0.093750 0.992188
vt 0.093750 0.640625
vt 0.015625 0.992188
vt 0.015625 0.640625
vt 0.312500 0.640625
vt 0.312500 0.992188
vt 0.453125 0.992188
vt 0.453125 0.640625
vt 0.234375 0.640625
vt 0.234375 0.992188
vt 0.312500 0.992188
vt 0.312500 0.640625
vt 0.234375 0.640625
vt 0.234375 0.992188
vt 0.093750 0.992188
vt 0.093750 0.640625
vt 0.015625 0.992188
vt 0.015625 0.640625
vt 0.781250 0.664062
vt 0.781250 0.992188
vt 0.921875 0.992188
vt 0.921875 0.664062
vt 0.484375 0.664062
vt 0.484375 0.992188
vt 0.562500 0.992188
vt 0.562500 0.664062
vt 0.703125 0.992188
vt 0.703125 0.664062
vt 0.234375 0.593750
vt 0.234375 0.640625
vt 0.093750 0.640625
vt 0.093750 0.593750
vt 0.453125 0.640625
vt 0.453125 0.593750
vt 0.312500 0.593750
vt 0.312500 0.640625
vt 0.781250 0.664062
vt 0.781250 0.992188
vt 0.921875 0.992188
vt 0.921875 0.664062
vt 0.484375 0.664062
vt 0.484375 0.992188
vt 0.562500 0.992188
vt 0.562500 0.664062
vt 0.703125 0.992188
vt 0.703125 0.664062
vt 0.234375 0.593750
vt 0.234375 0.640625
vt 0.093750 0.640625
vt 0.093750 0.593750
vt 0.453125 0.640625
vt 0.453125 0.593750
vt 0.312500 0.593750
vt 0.312500 0.640625
vt 0.843750 0.507812
vt 0.703125 0.507812
vt 0.703125 0.093750
@ -211,44 +355,86 @@ vt 0.453125 0.640625
vt 0.453125 0.593750
vt 0.312500 0.593750
vt 0.312500 0.640625
vn -1.0000 0.0000 0.0000
vn 1.0000 0.0000 0.0000
vn 0.0000 -0.0000 1.0000
vn 0.0000 0.0000 -1.0000
vn 0.0000 -1.0000 -0.0000
vn 0.0000 1.0000 0.0000
g Cube.001_Cube.001_pole_mount
vn 0.0000 -1.0000 0.0000
vn 0.0000 0.0000 -1.0000
vn 0.0000 0.0000 1.0000
vn 1.0000 0.0000 0.0000
vn -1.0000 0.0000 0.0000
g sign_on_pole_Cube.002_front-back
s off
f 17/19/7 18/20/7 20/21/7 19/22/7
f 22/23/8 21/24/8 24/25/8 23/26/8
f 20/21/9 24/25/9 21/27/9 19/28/9
f 17/29/10 22/30/10 23/26/10 18/20/10
f 18/20/11 23/26/11 24/25/11 20/21/11
f 25/31/8 26/32/8 28/33/8 27/34/8
f 27/35/9 28/36/9 32/37/9 31/38/9
f 31/39/7 32/40/7 30/41/7 29/42/7
f 29/42/10 30/41/10 26/43/10 25/44/10
f 33/45/8 34/46/8 36/47/8 35/48/8
f 35/49/9 36/50/9 40/51/9 39/52/9
f 39/53/7 40/54/7 38/55/7 37/56/7
f 37/56/10 38/55/10 34/57/10 33/58/10
f 41/59/8 42/60/8 44/61/8 43/62/8
f 43/63/9 44/64/9 48/65/9 47/66/9
f 47/67/7 48/68/7 46/69/7 45/70/7
f 45/70/10 46/69/10 42/71/10 41/72/10
f 49/73/8 50/74/8 52/75/8 51/76/8
f 51/77/9 52/78/9 56/79/9 55/80/9
f 55/81/7 56/82/7 54/83/7 53/84/7
f 53/84/10 54/83/10 50/85/10 49/86/10
f 57/87/11 58/88/11 60/89/11 59/90/11
f 59/91/9 60/92/9 64/93/9 63/94/9
f 63/94/12 64/93/12 62/95/12 61/96/12
f 61/96/10 62/95/10 58/88/10 57/87/10
f 59/97/7 63/98/7 61/99/7 57/100/7
f 64/101/8 60/102/8 58/103/8 62/104/8
f 65/105/11 66/106/11 68/107/11 67/108/11
f 67/109/9 68/110/9 72/111/9 71/112/9
f 71/112/12 72/111/12 70/113/12 69/114/12
f 69/114/10 70/113/10 66/106/10 65/105/10
f 67/115/7 71/116/7 69/117/7 65/118/7
f 72/119/8 68/120/8 66/121/8 70/122/8
f 8/1/1 4/2/1 2/3/1 6/4/1
f 3/5/2 7/6/2 5/7/2 1/8/2
g sign_on_pole_Cube.002_edges
f 13/9/3 14/10/3 10/11/3 9/12/3
f 11/13/4 12/14/4 16/15/4 15/16/4
f 11/13/5 9/17/5 10/18/5 12/14/5
f 13/9/6 15/16/6 16/15/6 14/10/6
g sign_on_pole_Cube.002_pole_mount
f 17/19/6 18/20/6 20/21/6 19/22/6
f 22/23/5 21/24/5 24/25/5 23/26/5
f 20/21/4 24/25/4 21/27/4 19/28/4
f 17/29/3 22/30/3 23/26/3 18/20/3
f 18/20/2 23/26/2 24/25/2 20/21/2
f 25/31/5 26/32/5 28/33/5 27/34/5
f 27/35/4 28/36/4 32/37/4 31/38/4
f 31/39/6 32/40/6 30/41/6 29/42/6
f 29/42/3 30/41/3 26/43/3 25/44/3
f 33/45/5 34/46/5 36/47/5 35/48/5
f 35/49/4 36/50/4 40/51/4 39/52/4
f 39/53/6 40/54/6 38/55/6 37/56/6
f 37/56/3 38/55/3 34/57/3 33/58/3
f 41/59/5 42/60/5 44/61/5 43/62/5
f 43/63/4 44/64/4 48/65/4 47/66/4
f 47/67/6 48/68/6 46/69/6 45/70/6
f 45/70/3 46/69/3 42/71/3 41/72/3
f 49/73/5 50/74/5 52/75/5 51/76/5
f 51/77/4 52/78/4 56/79/4 55/80/4
f 55/81/6 56/82/6 54/83/6 53/84/6
f 53/84/3 54/83/3 50/85/3 49/86/3
f 57/87/2 58/88/2 60/89/2 59/90/2
f 59/91/4 60/92/4 64/93/4 63/94/4
f 63/94/1 64/93/1 62/95/1 61/96/1
f 61/96/3 62/95/3 58/88/3 57/87/3
f 59/97/6 63/98/6 61/99/6 57/100/6
f 64/101/5 60/102/5 58/103/5 62/104/5
f 65/105/2 66/106/2 68/107/2 67/108/2
f 67/109/4 68/110/4 72/111/4 71/112/4
f 71/112/1 72/111/1 70/113/1 69/114/1
f 69/114/3 70/113/3 66/106/3 65/105/3
f 67/115/6 71/116/6 69/117/6 65/118/6
f 72/119/5 68/120/5 66/121/5 70/122/5
g sign_on_pole_Cube.002_pole_mount_horizontal
f 73/123/3 74/124/3 76/125/3 75/126/3
f 78/127/4 77/128/4 80/129/4 79/130/4
f 76/125/6 80/129/6 77/131/6 75/132/6
f 73/133/5 78/134/5 79/130/5 74/124/5
f 74/124/2 79/130/2 80/129/2 76/125/2
f 81/135/4 82/136/4 84/137/4 83/138/4
f 83/139/6 84/140/6 88/141/6 87/142/6
f 87/143/3 88/144/3 86/145/3 85/146/3
f 85/146/5 86/145/5 82/147/5 81/148/5
f 89/149/4 90/150/4 92/151/4 91/152/4
f 91/153/6 92/154/6 96/155/6 95/156/6
f 95/157/3 96/158/3 94/159/3 93/160/3
f 93/160/5 94/159/5 90/161/5 89/162/5
f 97/163/4 98/164/4 100/165/4 99/166/4
f 99/167/6 100/168/6 104/169/6 103/170/6
f 103/171/3 104/172/3 102/173/3 101/174/3
f 101/174/5 102/173/5 98/175/5 97/176/5
f 105/177/4 106/178/4 108/179/4 107/180/4
f 107/181/6 108/182/6 112/183/6 111/184/6
f 111/185/3 112/186/3 110/187/3 109/188/3
f 109/188/5 110/187/5 106/189/5 105/190/5
f 113/191/2 114/192/2 116/193/2 115/194/2
f 115/195/6 116/196/6 120/197/6 119/198/6
f 119/198/1 120/197/1 118/199/1 117/200/1
f 117/200/5 118/199/5 114/192/5 113/191/5
f 115/201/3 119/202/3 117/203/3 113/204/3
f 120/205/4 116/206/4 114/207/4 118/208/4
f 121/209/2 122/210/2 124/211/2 123/212/2
f 123/213/6 124/214/6 128/215/6 127/216/6
f 127/216/1 128/215/1 126/217/1 125/218/1
f 125/218/5 126/217/5 122/210/5 121/209/5
f 123/219/3 127/220/3 125/221/3 121/222/3
f 128/223/4 124/224/4 122/225/4 126/226/4

View File

@ -9,7 +9,8 @@ signs_lib.register_sign("default:sign_wall_wood", {
},
entity_info = "standard",
allow_hanging = true,
allow_widefont = true
allow_widefont = true,
allow_onpole_horizontal = true
})
signs_lib.register_sign("default:sign_wall_steel", {
@ -24,7 +25,8 @@ signs_lib.register_sign("default:sign_wall_steel", {
locked = true,
entity_info = "standard",
allow_hanging = true,
allow_widefont = true
allow_widefont = true,
allow_onpole_horizontal = true
})
minetest.register_alias("signs:sign_hanging", "default:sign_wall_wood_hanging")

Binary file not shown.

After

Width:  |  Height:  |  Size: 68 B