From 4775d98fb7e12f7210cf778351767828e551011d Mon Sep 17 00:00:00 2001
From: SmallJoker <mk939@ymail.com>
Date: Thu, 20 Oct 2022 20:08:56 +0200
Subject: [PATCH] Unify and simplify LED/Lamp node definition

---
 technic_chests/init.lua |   70 +++++++++++++++++++++++++++++++++-
 1 files changed, 67 insertions(+), 3 deletions(-)

diff --git a/technic_chests/init.lua b/technic_chests/init.lua
index 5fa96ff..188e516 100644
--- a/technic_chests/init.lua
+++ b/technic_chests/init.lua
@@ -2,17 +2,81 @@
 -- namespace: technic
 -- (c) 2012-2013 by RealBadAngel <mk@realbadangel.pl>
 
-modpath = minetest.get_modpath("technic_chests")
+local modpath = minetest.get_modpath("technic_chests")
 
-technic = technic or {}
+technic = rawget(_G, "technic") or {}
 technic.chests = {}
 
 dofile(modpath.."/common.lua")
 dofile(modpath.."/register.lua")
-dofile(modpath.."/wooden_chest.lua")
 dofile(modpath.."/iron_chest.lua")
 dofile(modpath.."/copper_chest.lua")
 dofile(modpath.."/silver_chest.lua")
 dofile(modpath.."/gold_chest.lua")
 dofile(modpath.."/mithril_chest.lua")
 
+-- undo all of the locked wooden chest recipes created by default and
+-- moreblocks, and just make them use a padlock.
+
+if minetest.get_modpath("moreblocks") then
+	minetest.clear_craft({
+		type = "shapeless",
+		recipe = {
+			"default:chest",
+			"default:gold_ingot",
+		}
+	})
+
+	minetest.clear_craft({
+		type = "shapeless",
+		recipe = {
+			"default:chest",
+			"default:bronze_ingot",
+		}
+	})
+
+	minetest.clear_craft({
+		type = "shapeless",
+		recipe = {
+			"default:chest",
+			"default:copper_ingot",
+		}
+	})
+end
+
+minetest.clear_craft({
+	type = "shapeless",
+	recipe = {
+		"default:chest",
+		"default:steel_ingot",
+	}
+})
+
+minetest.clear_craft({output = "default:chest_locked"})
+
+minetest.register_craft({
+	output = "default:chest_locked",
+	recipe = {
+		{ "group:wood", "group:wood", "group:wood" },
+		{ "group:wood", "basic_materials:padlock", "group:wood" },
+		{ "group:wood", "group:wood", "group:wood" }
+	}
+})
+
+minetest.register_craft({
+	output = "default:chest_locked",
+	type = "shapeless",
+	recipe = {
+		"default:chest",
+		"basic_materials:padlock"
+	}
+})
+
+minetest.register_lbm({
+	name = "technic_chests:fix_wooden_chests",
+	nodenames = {"default:chest"},
+	action = function(pos, node)
+		local meta = minetest.get_meta(pos)
+		meta:set_string("formspec", "")
+	end
+})

--
Gitblit v1.8.0