summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDiego Martinez <kaeza@users.sf.net>2016-03-14 20:09:45 -0300
committerDiego Martinez <kaeza@users.sf.net>2016-03-14 20:26:11 -0300
commit2f2f1e4b0a120e23e354f39fdb2fbc9c98c0401d (patch)
treece13646eecfcf766d491316d210841d05bf0f70b
parent7d870496938e993f97ce7224c5bf08cbe778a766 (diff)
downloadsigns_lib-2f2f1e4b0a120e23e354f39fdb2fbc9c98c0401d.tar.gz
signs_lib-2f2f1e4b0a120e23e354f39fdb2fbc9c98c0401d.tar.bz2
signs_lib-2f2f1e4b0a120e23e354f39fdb2fbc9c98c0401d.zip
Support renamed default wooden sign.
-rw-r--r--init.lua39
1 files changed, 25 insertions, 14 deletions
diff --git a/init.lua b/init.lua
index ce3e37a..1f43453 100644
--- a/init.lua
+++ b/init.lua
@@ -116,7 +116,7 @@ signs_lib.gettext = S
-- the list of standard sign nodes
signs_lib.sign_node_list = {
- "default:sign_wall",
+ "default:sign_wall_wood",
"signs:sign_yard",
"signs:sign_hanging",
"signs:sign_wall_green",
@@ -130,6 +130,17 @@ signs_lib.sign_node_list = {
"locked_sign:sign_wall_locked"
}
+local default_sign, default_sign_image
+
+-- Default sign was renamed in 0.4.14. Support both & old versions.
+if minetest.registered_nodes["default:sign_wall_wood"] then
+ default_sign = "default:sign_wall_wood"
+ default_sign_image = "default_sign_wood.png"
+else
+ default_sign = "default:sign_wall"
+ default_sign_image = "default_sign_wall.png"
+end
+
--table copy
function signs_lib.table_copy(t)
@@ -501,7 +512,7 @@ signs_lib.update_sign = function(pos, fields, owner)
elseif signnode.name == "signs:sign_hanging" then
sign_info = signs_lib.hanging_sign_model.textpos[minetest.get_node(pos).param2 + 1]
elseif string.find(signnode.name, "sign_wall") then
- if signnode.name == "default:sign_wall"
+ if signnode.name == default_sign
or signnode.name == "locked_sign:sign_wall_locked" then
sign_info = signs_lib.regular_wall_sign_model.textpos[minetest.get_node(pos).param2 + 1]
else
@@ -570,13 +581,13 @@ function signs_lib.determine_sign_type(itemstack, placer, pointed_thing, locked)
local pt_name = minetest.get_node(under).name
local signname = itemstack:get_name()
- if fences_with_sign[pt_name] and signname == "default:sign_wall" then
+ if fences_with_sign[pt_name] and signname == default_sign then
minetest.add_node(under, {name = fences_with_sign[pt_name], param2 = fdir})
- elseif wdir == 0 and signname == "default:sign_wall" then
+ elseif wdir == 0 and signname == default_sign then
minetest.add_node(above, {name = "signs:sign_hanging", param2 = fdir})
- elseif wdir == 1 and signname == "default:sign_wall" then
+ elseif wdir == 1 and signname == default_sign then
minetest.add_node(above, {name = "signs:sign_yard", param2 = fdir})
- elseif signname ~= "default:sign_wall"
+ elseif signname ~= default_sign
and signname ~= "locked_sign:sign_wall_locked" then -- it's a metal wall sign.
minetest.add_node(above, {name = signname, param2 = fdir})
else -- it must be a default or locked wooden wall sign
@@ -616,10 +627,10 @@ function signs_lib.receive_fields(pos, formname, fields, sender, lock)
end
end
-minetest.register_node(":default:sign_wall", {
+minetest.register_node(":"..default_sign, {
description = S("Sign"),
- inventory_image = "default_sign_wall.png",
- wield_image = "default_sign_wall.png",
+ inventory_image = default_sign_image,
+ wield_image = default_sign_image,
node_placement_prediction = "",
sunlight_propagates = true,
paramtype = "light",
@@ -659,7 +670,7 @@ minetest.register_node(":signs:sign_yard", {
},
tiles = {"signs_top.png", "signs_bottom.png", "signs_side.png", "signs_side.png", "signs_back.png", "signs_front.png"},
groups = {choppy=2, dig_immediate=2},
- drop = "default:sign_wall",
+ drop = default_sign,
on_construct = function(pos)
signs_lib.construct_sign(pos)
@@ -694,7 +705,7 @@ minetest.register_node(":signs:sign_hanging", {
"signs_hanging_front.png"
},
groups = {choppy=2, dig_immediate=2},
- drop = "default:sign_wall",
+ drop = default_sign,
on_construct = function(pos)
signs_lib.construct_sign(pos)
@@ -728,7 +739,7 @@ minetest.register_node(":signs:sign_post", {
drop = {
max_items = 2,
items = {
- { items = { "default:sign_wall" }},
+ { items = { default_sign }},
{ items = { "default:fence_wood" }},
},
},
@@ -909,7 +920,7 @@ function signs_lib.register_fence_with_sign(fencename, fencewithsignname)
node.name = fencename
minetest.add_node(pos, node)
end
- def_sign.drop = "default:sign_wall"
+ def_sign.drop = default_sign
minetest.register_node(":"..fencename, def)
minetest.register_node(":"..fencewithsignname, def_sign)
table.insert(signs_lib.sign_node_list, fencewithsignname)
@@ -950,7 +961,7 @@ minetest.register_craft({
minetest.register_craft({
output = "locked_sign:sign_wall_locked",
recipe = {
- {"default:sign_wall"},
+ {default_sign},
{"default:steel_ingot"},
},
})