From 0903ac60e43a6497051a23d0bbd5593367386390 Mon Sep 17 00:00:00 2001 From: PrairieWind Date: Sun, 30 Apr 2023 19:52:43 -0600 Subject: [PATCH 1/2] Make custom sign registration not absolutely require color --- mods/ITEMS/mcl_signs/signs_api.lua | 51 ++++++++++++++++++++++-------- 1 file changed, 38 insertions(+), 13 deletions(-) diff --git a/mods/ITEMS/mcl_signs/signs_api.lua b/mods/ITEMS/mcl_signs/signs_api.lua index 6d902c5dd..79bc2591b 100644 --- a/mods/ITEMS/mcl_signs/signs_api.lua +++ b/mods/ITEMS/mcl_signs/signs_api.lua @@ -797,10 +797,18 @@ function mcl_signs.register_sign_custom (modname, _name, tiles, color, inventory new_sign = table.copy(mcl_signs.wall_standard) - new_sign.wield_image = "(" .. wield_image .. "^[multiply:" .. color .. ")" - new_sign.tiles = { "(" .. tiles .. "^[multiply:" .. color .. ")" } - new_sign.inventory_image = "(" .. inventory_image .. "^[multiply:" .. color .. ")" + if not color or color == nil then + new_sign.wield_image = wield_image + new_sign.tiles = { tiles } + new_sign.inventory_image = inventory_image + else + new_sign.wield_image = "(" .. wield_image .. "^[multiply:" .. color .. ")" + new_sign.tiles = { "(" .. tiles .. "^[multiply:" .. color .. ")" } + new_sign.inventory_image = "(" .. inventory_image .. "^[multiply:" .. color .. ")" + end + new_sign.description = S(ttsign) + -- currently have to do this, because of how the base node placement works. new_sign.on_place = function(itemstack, placer, pointed_thing) local above = pointed_thing.above @@ -905,9 +913,15 @@ function mcl_signs.register_sign_custom (modname, _name, tiles, color, inventory local new_sign_standing = {} new_sign_standing = table.copy(mcl_signs.standing_standard) new_sign_standing.drop = "mcl_signs:wall_sign" .. _name - new_sign_standing.wield_image = "(" .. wield_image .. "^[multiply:" .. color .. ")" - new_sign_standing.tiles = { "(" .. tiles .. "^[multiply:" .. color .. ")" } - new_sign_standing.inventory_image = "(" .. inventory_image .. "^[multiply:" .. color .. ")" + if not color or color == nil then + new_sign_standing.wield_image = wield_image + new_sign_standing.tiles = { tiles } + new_sign_standing.inventory_image = inventory_image + else + new_sign_standing.wield_image = "(" .. wield_image .. "^[multiply:" .. color .. ")" + new_sign_standing.tiles = { "(" .. tiles .. "^[multiply:" .. color .. ")" } + new_sign_standing.inventory_image = "(" .. inventory_image .. "^[multiply:" .. color .. ")" + end new_sign_standing.on_rotate = function(pos, node, user, mode) if mode == screwdriver.ROTATE_FACE then node.name = "mcl_signs:standing_sign22_5" .. _name @@ -1253,9 +1267,15 @@ function mcl_signs.reregister_sign_custom (modname, _name, tiles, color, invento new_sign = table.copy(mcl_signs.wall_standard) - new_sign.wield_image = "(" .. wield_image .. "^[multiply:" .. color .. ")" - new_sign.tiles = { "(" .. tiles .. "^[multiply:" .. color .. ")" } - new_sign.inventory_image = "(" .. inventory_image .. "^[multiply:" .. color .. ")" + if not color or color == nil then + new_sign.wield_image = wield_image + new_sign.tiles = { tiles } + new_sign.inventory_image = inventory_image + else + new_sign.wield_image = "(" .. wield_image .. "^[multiply:" .. color .. ")" + new_sign.tiles = { "(" .. tiles .. "^[multiply:" .. color .. ")" } + new_sign.inventory_image = "(" .. inventory_image .. "^[multiply:" .. color .. ")" + end new_sign.description = S(ttsign) -- currently have to do this, because of how the base node placement works. new_sign.on_place = function(itemstack, placer, pointed_thing) @@ -1360,10 +1380,15 @@ function mcl_signs.reregister_sign_custom (modname, _name, tiles, color, invento -- standing sign base. local new_sign_standing = {} new_sign_standing = table.copy(mcl_signs.standing_standard) - new_sign_standing.drop = "mcl_signs:wall_sign" .. _name - new_sign_standing.wield_image = "(" .. wield_image .. "^[multiply:" .. color .. ")" - new_sign_standing.tiles = { "(" .. tiles .. "^[multiply:" .. color .. ")" } - new_sign_standing.inventory_image = "(" .. inventory_image .. "^[multiply:" .. color .. ")" + if not color or color == nil then + new_sign_standing.wield_image = wield_image + new_sign_standing.tiles = { tiles } + new_sign_standing.inventory_image = inventory_image + else + new_sign_standing.wield_image = "(" .. wield_image .. "^[multiply:" .. color .. ")" + new_sign_standing.tiles = { "(" .. tiles .. "^[multiply:" .. color .. ")" } + new_sign_standing.inventory_image = "(" .. inventory_image .. "^[multiply:" .. color .. ")" + end new_sign_standing.on_rotate = function(pos, node, user, mode) if mode == screwdriver.ROTATE_FACE then node.name = "mcl_signs:standing_sign22_5" .. _name From 5071a7c789152e3ace0052f89675b24c73c144c0 Mon Sep 17 00:00:00 2001 From: PrairieWind Date: Sun, 30 Apr 2023 20:26:11 -0600 Subject: [PATCH 2/2] Fix translator translating sign description api side instead of mod side --- mods/ITEMS/mcl_signs/init.lua | 18 +++++++++--------- mods/ITEMS/mcl_signs/signs_api.lua | 8 ++++---- 2 files changed, 13 insertions(+), 13 deletions(-) diff --git a/mods/ITEMS/mcl_signs/init.lua b/mods/ITEMS/mcl_signs/init.lua index 6a5f01c5f..117f5665c 100644 --- a/mods/ITEMS/mcl_signs/init.lua +++ b/mods/ITEMS/mcl_signs/init.lua @@ -93,41 +93,41 @@ mcl_signs.build_signs_info() -- ---------------------------- -- -- Standard (original) Sign -mcl_signs.register_sign("mcl_core", "#ffffff", "", "Sign") +mcl_signs.register_sign("mcl_core", "#ffffff", "", S("Sign")) mcl_signs.register_sign_craft("mcl_core", "mcl_core:wood", "") -- birchwood Sign "#d5cb8d" / "#ffdba7" mcl_signs.register_sign_custom("mcl_core", "_birchwood", "mcl_signs_sign_greyscale.png","#ffdba7", "mcl_signs_default_sign_greyscale.png", - "mcl_signs_default_sign_greyscale.png", "Birch Sign" + "mcl_signs_default_sign_greyscale.png", S("Birch Sign") ) mcl_signs.register_sign_craft("mcl_core", "mcl_core:birchwood", "_birchwood") -- sprucewood Sign mcl_signs.register_sign_custom("mcl_core", "_sprucewood", "mcl_signs_sign_dark.png","#ffffff", "mcl_signs_default_sign_dark.png", - "mcl_signs_default_sign_dark.png", "Spruce Sign" + "mcl_signs_default_sign_dark.png", S("Spruce Sign") ) mcl_signs.register_sign_craft("mcl_core", "mcl_core:sprucewood", "_sprucewood") -- darkwood Sign "#291f1a" / "#856443" mcl_signs.register_sign_custom("mcl_core", "_darkwood", "mcl_signs_sign_greyscale.png","#856443", "mcl_signs_default_sign_greyscale.png", - "mcl_signs_default_sign_greyscale.png", "Dark Oak Sign" + "mcl_signs_default_sign_greyscale.png", S("Dark Oak Sign") ) mcl_signs.register_sign_craft("mcl_core", "mcl_core:darkwood", "_darkwood") -- junglewood Sign -mcl_signs.register_sign("mcl_core", "#866249", "_junglewood", "Jungle Sign") +mcl_signs.register_sign("mcl_core", "#866249", "_junglewood", S("Jungle Sign")) mcl_signs.register_sign_craft("mcl_core", "mcl_core:junglewood", "_junglewood") -- acaciawood Sign "b8693d" -mcl_signs.register_sign("mcl_core", "#ea7479", "_acaciawood", "Acacia Sign") +mcl_signs.register_sign("mcl_core", "#ea7479", "_acaciawood", S("Acacia Sign")) mcl_signs.register_sign_craft("mcl_core", "mcl_core:acaciawood", "_acaciawood") if minetest.get_modpath("mcl_mangrove") then -- mangrove_wood Sign "#c7545c" - mcl_signs.register_sign("mcl_mangrove", "#b8693d", "_mangrove_wood", "Mangrove Sign") + mcl_signs.register_sign("mcl_mangrove", "#b8693d", "_mangrove_wood", S("Mangrove Sign")) mcl_signs.register_sign_craft("mcl_mangrove", "mcl_mangrove:mangrove_wood", "_mangrove_wood") end @@ -137,13 +137,13 @@ if minetest.get_modpath("mcl_crimson") then -- warped_hyphae_wood Sign mcl_signs.register_sign_custom("mcl_crimson","_warped_hyphae_wood", "mcl_signs_sign_greyscale.png", "#9f7dcf", "mcl_signs_default_sign_greyscale.png", "mcl_signs_default_sign_greyscale.png", - "Warped Hyphae Sign") + S("Warped Hyphae Sign")) mcl_signs.register_sign_craft("mcl_crimson", "mcl_crimson:warped_hyphae_wood", "_warped_hyphae_wood") -- crimson_hyphae_wood Sign mcl_signs.register_sign_custom("mcl_crimson", "_crimson_hyphae_wood","mcl_signs_sign_greyscale.png", "#c35f51","mcl_signs_default_sign_greyscale.png", "mcl_signs_default_sign_greyscale.png", - "Crimson Hyphae Sign") + S("Crimson Hyphae Sign")) mcl_signs.register_sign_craft("mcl_crimson", "mcl_crimson:crimson_hyphae_wood", "_crimson_hyphae_wood") end diff --git a/mods/ITEMS/mcl_signs/signs_api.lua b/mods/ITEMS/mcl_signs/signs_api.lua index 79bc2591b..3d8bd3e49 100644 --- a/mods/ITEMS/mcl_signs/signs_api.lua +++ b/mods/ITEMS/mcl_signs/signs_api.lua @@ -550,7 +550,7 @@ function mcl_signs.register_sign (modname, color, _name, ttsign) end new_sign = table.copy(mcl_signs.wall_standard) - new_sign.description = S(ttsign) + new_sign.description = ttsign new_sign.wield_image = "(mcl_signs_default_sign.png^[multiply:" .. color .. ")" new_sign.tiles = { "(mcl_signs_sign.png^[multiply:" .. color .. ")" } @@ -807,7 +807,7 @@ function mcl_signs.register_sign_custom (modname, _name, tiles, color, inventory new_sign.inventory_image = "(" .. inventory_image .. "^[multiply:" .. color .. ")" end - new_sign.description = S(ttsign) + new_sign.description = ttsign -- currently have to do this, because of how the base node placement works. new_sign.on_place = function(itemstack, placer, pointed_thing) @@ -1027,7 +1027,7 @@ function mcl_signs.reregister_sign (modname, color, _name, ttsign) end new_sign = table.copy(mcl_signs.wall_standard) - new_sign.description = S(ttsign) + new_sign.description = ttsign new_sign.wield_image = "(mcl_signs_default_sign.png^[multiply:" .. color .. ")" new_sign.tiles = { "(mcl_signs_sign.png^[multiply:" .. color .. ")" } @@ -1276,7 +1276,7 @@ function mcl_signs.reregister_sign_custom (modname, _name, tiles, color, invento new_sign.tiles = { "(" .. tiles .. "^[multiply:" .. color .. ")" } new_sign.inventory_image = "(" .. inventory_image .. "^[multiply:" .. color .. ")" end - new_sign.description = S(ttsign) + new_sign.description = ttsign -- currently have to do this, because of how the base node placement works. new_sign.on_place = function(itemstack, placer, pointed_thing) local above = pointed_thing.above