From d60e3fe9399dc57aa901e301c0d8e8aa022565d8 Mon Sep 17 00:00:00 2001 From: Zefram Date: Sat, 26 Jul 2014 19:33:48 +0100 Subject: [PATCH] Reduce dependencies of technic_chests technic_chests was depending on the technic mod, for the top-level "technic" table and the technic.swap_node function. Resolve that by sharing the top-level table and inlining the one use of the function. It was also depending on technic_worldgen, for the definitions of cast iron and wrought iron. Make the use of cast iron conditional on technic_worldgen, falling back to default "steel". Change the use of wrought iron to directly use default "steel", to which it is aliased anyway. --- technic_chests/copper_chest.lua | 2 +- technic_chests/depends.txt | 3 --- technic_chests/gold_chest.lua | 2 +- technic_chests/init.lua | 1 + technic_chests/iron_chest.lua | 20 +++++++++++++------- technic_chests/mithril_chest.lua | 2 +- technic_chests/register.lua | 4 +++- technic_chests/silver_chest.lua | 2 +- 8 files changed, 21 insertions(+), 15 deletions(-) diff --git a/technic_chests/copper_chest.lua b/technic_chests/copper_chest.lua index 2d58379..d40284b 100644 --- a/technic_chests/copper_chest.lua +++ b/technic_chests/copper_chest.lua @@ -19,7 +19,7 @@ minetest.register_craft({ minetest.register_craft({ output = 'technic:copper_locked_chest 1', recipe = { - {'technic:wrought_iron_ingot'}, + {'default:steel_ingot'}, {'technic:copper_chest'}, } }) diff --git a/technic_chests/depends.txt b/technic_chests/depends.txt index 2e151fa..4d04e9d 100644 --- a/technic_chests/depends.txt +++ b/technic_chests/depends.txt @@ -1,6 +1,3 @@ default -technic -technic_worldgen pipeworks intllib? - diff --git a/technic_chests/gold_chest.lua b/technic_chests/gold_chest.lua index 386d1c7..161d8fe 100644 --- a/technic_chests/gold_chest.lua +++ b/technic_chests/gold_chest.lua @@ -20,7 +20,7 @@ minetest.register_craft({ minetest.register_craft({ output = 'technic:gold_locked_chest', recipe = { - {'technic:wrought_iron_ingot'}, + {'default:steel_ingot'}, {'technic:gold_chest'}, } }) diff --git a/technic_chests/init.lua b/technic_chests/init.lua index 99af8ad..5fa96ff 100644 --- a/technic_chests/init.lua +++ b/technic_chests/init.lua @@ -4,6 +4,7 @@ modpath = minetest.get_modpath("technic_chests") +technic = technic or {} technic.chests = {} dofile(modpath.."/common.lua") diff --git a/technic_chests/iron_chest.lua b/technic_chests/iron_chest.lua index aa02533..90434bb 100644 --- a/technic_chests/iron_chest.lua +++ b/technic_chests/iron_chest.lua @@ -1,26 +1,32 @@ +local cast_iron_ingot +if minetest.get_modpath("technic_worldgen") then + cast_iron_ingot = "technic:cast_iron_ingot" +else + cast_iron_ingot = "default:steel_ingot" +end minetest.register_craft({ output = 'technic:iron_chest 1', recipe = { - {'technic:cast_iron_ingot','technic:cast_iron_ingot','technic:cast_iron_ingot'}, - {'technic:cast_iron_ingot','default:chest','technic:cast_iron_ingot'}, - {'technic:cast_iron_ingot','technic:cast_iron_ingot','technic:cast_iron_ingot'}, + {cast_iron_ingot,cast_iron_ingot,cast_iron_ingot}, + {cast_iron_ingot,'default:chest',cast_iron_ingot}, + {cast_iron_ingot,cast_iron_ingot,cast_iron_ingot}, } }) minetest.register_craft({ output = 'technic:iron_locked_chest 1', recipe = { - {'technic:cast_iron_ingot','technic:cast_iron_ingot','technic:cast_iron_ingot'}, - {'technic:cast_iron_ingot','default:chest_locked','technic:cast_iron_ingot'}, - {'technic:cast_iron_ingot','technic:cast_iron_ingot','technic:cast_iron_ingot'}, + {cast_iron_ingot,cast_iron_ingot,cast_iron_ingot}, + {cast_iron_ingot,'default:chest_locked',cast_iron_ingot}, + {cast_iron_ingot,cast_iron_ingot,cast_iron_ingot}, } }) minetest.register_craft({ output = 'technic:iron_locked_chest 1', recipe = { - {'technic:wrought_iron_ingot'}, + {'default:steel_ingot'}, {'technic:iron_chest'}, } }) diff --git a/technic_chests/mithril_chest.lua b/technic_chests/mithril_chest.lua index 69e7f17..bd2b981 100644 --- a/technic_chests/mithril_chest.lua +++ b/technic_chests/mithril_chest.lua @@ -19,7 +19,7 @@ minetest.register_craft({ minetest.register_craft({ output = 'technic:mithril_locked_chest 1', recipe = { - {'technic:wrought_iron_ingot'}, + {'default:steel_ingot'}, {'technic:mithril_chest'}, } }) diff --git a/technic_chests/register.lua b/technic_chests/register.lua index 17b1a0e..0344c2c 100644 --- a/technic_chests/register.lua +++ b/technic_chests/register.lua @@ -49,7 +49,9 @@ end local function check_color_buttons(pos, meta, chest_name, fields) for i = 1, 16 do if fields["color_button"..i] then - technic.swap_node(pos, chest_name..colorid_to_postfix(i)) + local node = minetest.get_node(pos) + node.name = chest_name..colorid_to_postfix(i) + minetest.swap_node(pos, node) meta:set_string("color", i) return end diff --git a/technic_chests/silver_chest.lua b/technic_chests/silver_chest.lua index 0370488..505156a 100644 --- a/technic_chests/silver_chest.lua +++ b/technic_chests/silver_chest.lua @@ -19,7 +19,7 @@ minetest.register_craft({ minetest.register_craft({ output = 'technic:silver_locked_chest', recipe = { - {'technic:wrought_iron_ingot'}, + {'default:steel_ingot'}, {'technic:silver_chest'}, } })