From 5c6baef96f7d9cb79ccc6c10b670bf0078d93d55 Mon Sep 17 00:00:00 2001 From: tchncs Date: Sun, 4 Sep 2016 23:33:32 +0200 Subject: [PATCH] add technic_chest files with initial modifications --- common.lua | 71 ++++ copper_chest.lua | 46 +++ depends.txt | 4 + gold_chest.lua | 57 ++++ init.lua | 17 + iron_chest.lua | 41 +++ locale/de.txt | 41 +++ locale/template.txt | 39 +++ locale/tr.txt | 41 +++ mithril_chest.lua | 48 +++ register.lua | 303 ++++++++++++++++++ silver_chest.lua | 48 +++ textures/technic_checkmark_icon.png | Bin 0 -> 233 bytes textures/technic_chest_form_bg.png | Bin 0 -> 6404 bytes textures/technic_chest_overlay_black.png | Bin 0 -> 248 bytes textures/technic_chest_overlay_blue.png | Bin 0 -> 257 bytes textures/technic_chest_overlay_brown.png | Bin 0 -> 288 bytes textures/technic_chest_overlay_cyan.png | Bin 0 -> 259 bytes textures/technic_chest_overlay_dark_green.png | Bin 0 -> 269 bytes textures/technic_chest_overlay_dark_grey.png | Bin 0 -> 292 bytes textures/technic_chest_overlay_green.png | Bin 0 -> 278 bytes textures/technic_chest_overlay_grey.png | Bin 0 -> 299 bytes textures/technic_chest_overlay_magenta.png | Bin 0 -> 302 bytes textures/technic_chest_overlay_orange.png | Bin 0 -> 302 bytes textures/technic_chest_overlay_pink.png | Bin 0 -> 304 bytes textures/technic_chest_overlay_red.png | Bin 0 -> 262 bytes textures/technic_chest_overlay_violet.png | Bin 0 -> 287 bytes textures/technic_chest_overlay_white.png | Bin 0 -> 253 bytes textures/technic_chest_overlay_yellow.png | Bin 0 -> 274 bytes textures/technic_colorbutton0.png | Bin 0 -> 147 bytes textures/technic_colorbutton1.png | Bin 0 -> 148 bytes textures/technic_colorbutton10.png | Bin 0 -> 148 bytes textures/technic_colorbutton11.png | Bin 0 -> 148 bytes textures/technic_colorbutton12.png | Bin 0 -> 148 bytes textures/technic_colorbutton13.png | Bin 0 -> 148 bytes textures/technic_colorbutton14.png | Bin 0 -> 148 bytes textures/technic_colorbutton15.png | Bin 0 -> 3562 bytes textures/technic_colorbutton2.png | Bin 0 -> 148 bytes textures/technic_colorbutton3.png | Bin 0 -> 140 bytes textures/technic_colorbutton4.png | Bin 0 -> 148 bytes textures/technic_colorbutton5.png | Bin 0 -> 148 bytes textures/technic_colorbutton6.png | Bin 0 -> 148 bytes textures/technic_colorbutton7.png | Bin 0 -> 148 bytes textures/technic_colorbutton8.png | Bin 0 -> 148 bytes textures/technic_colorbutton9.png | Bin 0 -> 148 bytes textures/technic_copper_chest_front.png | Bin 0 -> 607 bytes textures/technic_copper_chest_inventory.png | Bin 0 -> 7661 bytes .../technic_copper_chest_lock_overlay.png | Bin 0 -> 160 bytes textures/technic_copper_chest_side.png | Bin 0 -> 570 bytes textures/technic_copper_chest_top.png | Bin 0 -> 557 bytes textures/technic_form_bg.png | Bin 0 -> 6404 bytes textures/technic_gold_chest_front.png | Bin 0 -> 687 bytes textures/technic_gold_chest_inventory.png | Bin 0 -> 9893 bytes textures/technic_gold_chest_lock_overlay.png | Bin 0 -> 204 bytes textures/technic_gold_chest_side.png | Bin 0 -> 743 bytes textures/technic_gold_chest_top.png | Bin 0 -> 729 bytes textures/technic_iron_chest_front.png | Bin 0 -> 750 bytes textures/technic_iron_chest_inventory.png | Bin 0 -> 7037 bytes textures/technic_iron_chest_lock_overlay.png | Bin 0 -> 153 bytes textures/technic_iron_chest_side.png | Bin 0 -> 746 bytes textures/technic_iron_chest_top.png | Bin 0 -> 860 bytes textures/technic_main_inventory.png | Bin 0 -> 7646 bytes textures/technic_mithril_chest_front.png | Bin 0 -> 770 bytes textures/technic_mithril_chest_inventory.png | Bin 0 -> 9893 bytes .../technic_mithril_chest_lock_overlay.png | Bin 0 -> 155 bytes textures/technic_mithril_chest_side.png | Bin 0 -> 756 bytes textures/technic_mithril_chest_top.png | Bin 0 -> 775 bytes textures/technic_pencil_icon.png | Bin 0 -> 294 bytes textures/technic_silver_chest_front.png | Bin 0 -> 851 bytes textures/technic_silver_chest_inventory.png | Bin 0 -> 9163 bytes .../technic_silver_chest_lock_overlay.png | Bin 0 -> 192 bytes textures/technic_silver_chest_side.png | Bin 0 -> 810 bytes textures/technic_silver_chest_top.png | Bin 0 -> 798 bytes textures/technic_wooden_chest_inventory.png | Bin 0 -> 5496 bytes textures/x32/technic_copper_chest_front.png | Bin 0 -> 2614 bytes textures/x32/technic_copper_chest_side.png | Bin 0 -> 2568 bytes textures/x32/technic_copper_chest_top.png | Bin 0 -> 2521 bytes textures/x32/technic_gold_chest_front.png | Bin 0 -> 2653 bytes textures/x32/technic_gold_chest_side.png | Bin 0 -> 2617 bytes textures/x32/technic_gold_chest_top.png | Bin 0 -> 2558 bytes textures/x32/technic_iron_chest_front.png | Bin 0 -> 2515 bytes textures/x32/technic_iron_chest_side.png | Bin 0 -> 2478 bytes textures/x32/technic_iron_chest_top.png | Bin 0 -> 2432 bytes textures/x32/technic_mithril_chest_front.png | Bin 0 -> 2656 bytes textures/x32/technic_mithril_chest_side.png | Bin 0 -> 2616 bytes textures/x32/technic_mithril_chest_top.png | Bin 0 -> 2558 bytes textures/x32/technic_silver_chest_front.png | Bin 0 -> 2241 bytes textures/x32/technic_silver_chest_side.png | Bin 0 -> 2146 bytes textures/x32/technic_silver_chest_top.png | Bin 0 -> 2226 bytes 89 files changed, 756 insertions(+) create mode 100644 common.lua create mode 100644 copper_chest.lua create mode 100644 depends.txt create mode 100644 gold_chest.lua create mode 100644 init.lua create mode 100644 iron_chest.lua create mode 100644 locale/de.txt create mode 100644 locale/template.txt create mode 100644 locale/tr.txt create mode 100644 mithril_chest.lua create mode 100644 register.lua create mode 100644 silver_chest.lua create mode 100644 textures/technic_checkmark_icon.png create mode 100644 textures/technic_chest_form_bg.png create mode 100644 textures/technic_chest_overlay_black.png create mode 100644 textures/technic_chest_overlay_blue.png create mode 100644 textures/technic_chest_overlay_brown.png create mode 100644 textures/technic_chest_overlay_cyan.png create mode 100644 textures/technic_chest_overlay_dark_green.png create mode 100644 textures/technic_chest_overlay_dark_grey.png create mode 100644 textures/technic_chest_overlay_green.png create mode 100644 textures/technic_chest_overlay_grey.png create mode 100644 textures/technic_chest_overlay_magenta.png create mode 100644 textures/technic_chest_overlay_orange.png create mode 100644 textures/technic_chest_overlay_pink.png create mode 100644 textures/technic_chest_overlay_red.png create mode 100644 textures/technic_chest_overlay_violet.png create mode 100644 textures/technic_chest_overlay_white.png create mode 100644 textures/technic_chest_overlay_yellow.png create mode 100644 textures/technic_colorbutton0.png create mode 100644 textures/technic_colorbutton1.png create mode 100644 textures/technic_colorbutton10.png create mode 100644 textures/technic_colorbutton11.png create mode 100644 textures/technic_colorbutton12.png create mode 100644 textures/technic_colorbutton13.png create mode 100644 textures/technic_colorbutton14.png create mode 100644 textures/technic_colorbutton15.png create mode 100644 textures/technic_colorbutton2.png create mode 100644 textures/technic_colorbutton3.png create mode 100644 textures/technic_colorbutton4.png create mode 100644 textures/technic_colorbutton5.png create mode 100644 textures/technic_colorbutton6.png create mode 100644 textures/technic_colorbutton7.png create mode 100644 textures/technic_colorbutton8.png create mode 100644 textures/technic_colorbutton9.png create mode 100644 textures/technic_copper_chest_front.png create mode 100644 textures/technic_copper_chest_inventory.png create mode 100644 textures/technic_copper_chest_lock_overlay.png create mode 100644 textures/technic_copper_chest_side.png create mode 100644 textures/technic_copper_chest_top.png create mode 100644 textures/technic_form_bg.png create mode 100644 textures/technic_gold_chest_front.png create mode 100644 textures/technic_gold_chest_inventory.png create mode 100644 textures/technic_gold_chest_lock_overlay.png create mode 100644 textures/technic_gold_chest_side.png create mode 100644 textures/technic_gold_chest_top.png create mode 100644 textures/technic_iron_chest_front.png create mode 100644 textures/technic_iron_chest_inventory.png create mode 100644 textures/technic_iron_chest_lock_overlay.png create mode 100644 textures/technic_iron_chest_side.png create mode 100644 textures/technic_iron_chest_top.png create mode 100644 textures/technic_main_inventory.png create mode 100644 textures/technic_mithril_chest_front.png create mode 100644 textures/technic_mithril_chest_inventory.png create mode 100644 textures/technic_mithril_chest_lock_overlay.png create mode 100644 textures/technic_mithril_chest_side.png create mode 100644 textures/technic_mithril_chest_top.png create mode 100644 textures/technic_pencil_icon.png create mode 100644 textures/technic_silver_chest_front.png create mode 100644 textures/technic_silver_chest_inventory.png create mode 100644 textures/technic_silver_chest_lock_overlay.png create mode 100644 textures/technic_silver_chest_side.png create mode 100644 textures/technic_silver_chest_top.png create mode 100644 textures/technic_wooden_chest_inventory.png create mode 100644 textures/x32/technic_copper_chest_front.png create mode 100644 textures/x32/technic_copper_chest_side.png create mode 100644 textures/x32/technic_copper_chest_top.png create mode 100644 textures/x32/technic_gold_chest_front.png create mode 100644 textures/x32/technic_gold_chest_side.png create mode 100644 textures/x32/technic_gold_chest_top.png create mode 100644 textures/x32/technic_iron_chest_front.png create mode 100644 textures/x32/technic_iron_chest_side.png create mode 100644 textures/x32/technic_iron_chest_top.png create mode 100644 textures/x32/technic_mithril_chest_front.png create mode 100644 textures/x32/technic_mithril_chest_side.png create mode 100644 textures/x32/technic_mithril_chest_top.png create mode 100644 textures/x32/technic_silver_chest_front.png create mode 100644 textures/x32/technic_silver_chest_side.png create mode 100644 textures/x32/technic_silver_chest_top.png diff --git a/common.lua b/common.lua new file mode 100644 index 0000000..47054f5 --- /dev/null +++ b/common.lua @@ -0,0 +1,71 @@ + +technic.chests.groups = {snappy=2, choppy=2, oddly_breakable_by_hand=2, + tubedevice=1, tubedevice_receiver=1} +technic.chests.groups_noinv = {snappy=2, choppy=2, oddly_breakable_by_hand=2, + tubedevice=1, tubedevice_receiver=1, not_in_creative_inventory=1} + +technic.chests.tube = { + insert_object = function(pos, node, stack, direction) + local meta = minetest.get_meta(pos) + local inv = meta:get_inventory() + return inv:add_item("main",stack) + end, + can_insert = function(pos, node, stack, direction) + local meta = minetest.get_meta(pos) + local inv = meta:get_inventory() + return inv:room_for_item("main",stack) + end, + input_inventory = "main", + connect_sides = {left=1, right=1, front=1, back=1, top=1, bottom=1}, +} + +technic.chests.can_dig = function(pos, player) + local meta = minetest.get_meta(pos) + local inv = meta:get_inventory() + return inv:is_empty("main") +end + +local function inv_change(pos, count, player) + local meta = minetest.get_meta(pos) + if not has_locked_chest_privilege(meta, player) then + minetest.log("action", player:get_player_name().. + " tried to access a locked chest belonging to ".. + meta:get_string("owner").." at ".. + minetest.pos_to_string(pos)) + return 0 + end + return count +end + +function technic.chests.inv_move(pos, from_list, from_index, to_list, to_index, count, player) + return inv_change(pos, count, player) +end +function technic.chests.inv_put(pos, listname, index, stack, player) + return inv_change(pos, stack:get_count(), player) +end +function technic.chests.inv_take(pos, listname, index, stack, player) + return inv_change(pos, stack:get_count(), player) +end + +function technic.chests.on_inv_move(pos, from_list, from_index, to_list, to_index, count, player) + minetest.log("action", player:get_player_name().. + " moves stuff in chest at " + ..minetest.pos_to_string(pos)) +end + +function technic.chests.on_inv_put(pos, listname, index, stack, player) + minetest.log("action", player:get_player_name().. + " puts stuff in to chest at " + ..minetest.pos_to_string(pos)) +end + +function technic.chests.on_inv_take(pos, listname, index, stack, player) + minetest.log("action", player:get_player_name().. + " takes stuff from chest at " + ..minetest.pos_to_string(pos)) +end + +function has_locked_chest_privilege(meta, player) + return player:get_player_name() == meta:get_string("owner") +end + diff --git a/copper_chest.lua b/copper_chest.lua new file mode 100644 index 0000000..d40284b --- /dev/null +++ b/copper_chest.lua @@ -0,0 +1,46 @@ +minetest.register_craft({ + output = 'technic:copper_chest 1', + recipe = { + {'default:copper_ingot','default:copper_ingot','default:copper_ingot'}, + {'default:copper_ingot','technic:iron_chest','default:copper_ingot'}, + {'default:copper_ingot','default:copper_ingot','default:copper_ingot'}, + } +}) + +minetest.register_craft({ + output = 'technic:copper_locked_chest 1', + recipe = { + {'default:copper_ingot','default:copper_ingot','default:copper_ingot'}, + {'default:copper_ingot','technic:iron_locked_chest','default:copper_ingot'}, + {'default:copper_ingot','default:copper_ingot','default:copper_ingot'}, + } +}) + +minetest.register_craft({ + output = 'technic:copper_locked_chest 1', + recipe = { + {'default:steel_ingot'}, + {'technic:copper_chest'}, + } +}) + +technic.chests:register("Copper", { + width = 12, + height = 5, + sort = true, + autosort = true, + infotext = false, + color = false, + locked = false, +}) + +technic.chests:register("Copper", { + width = 12, + height = 5, + sort = true, + autosort = true, + infotext = false, + color = false, + locked = true, +}) + diff --git a/depends.txt b/depends.txt new file mode 100644 index 0000000..b9ca665 --- /dev/null +++ b/depends.txt @@ -0,0 +1,4 @@ +default +moreores? +pipeworks? +intllib? diff --git a/gold_chest.lua b/gold_chest.lua new file mode 100644 index 0000000..c66b2f6 --- /dev/null +++ b/gold_chest.lua @@ -0,0 +1,57 @@ + +local material_list +if minetest.get_modpath("moreores") then + material_list = { 'silver' } +else + -- Make the gold chest obtainable for mere mortals (the silver chest is not obtainable) + material_list = { 'copper', 'silver' } +end + +for _, material in ipairs(material_list) do + minetest.register_craft({ + output = 'technic:gold_chest', + recipe = { + {'default:gold_ingot','default:gold_ingot','default:gold_ingot'}, + {'default:gold_ingot',"technic:"..material.."_chest",'default:gold_ingot'}, + {'default:gold_ingot','default:gold_ingot','default:gold_ingot'}, + } + }) + + minetest.register_craft({ + output = 'technic:gold_locked_chest', + recipe = { + {'default:gold_ingot','default:gold_ingot','default:gold_ingot'}, + {'default:gold_ingot',"technic:"..material.."_locked_chest",'default:gold_ingot'}, + {'default:gold_ingot','default:gold_ingot','default:gold_ingot'}, + } + }) +end + +minetest.register_craft({ + output = 'technic:gold_locked_chest', + recipe = { + {'default:steel_ingot'}, + {'technic:gold_chest'}, + } +}) + +technic.chests:register("Gold", { + width = 15, + height = 6, + sort = true, + autosort = true, + infotext = true, + color = true, + locked = false, +}) + +technic.chests:register("Gold", { + width = 15, + height = 6, + sort = true, + autosort = true, + infotext = true, + color = true, + locked = true, +}) + diff --git a/init.lua b/init.lua new file mode 100644 index 0000000..3565987 --- /dev/null +++ b/init.lua @@ -0,0 +1,17 @@ +-- Minetest 0.4.6 mod: technic_chests +-- namespace: technic +-- (c) 2012-2013 by RealBadAngel + +local modpath = minetest.get_modpath("technic_chests") + +technic = rawget(_G, "technic") or {} +technic.chests = {} + +dofile(modpath.."/common.lua") +dofile(modpath.."/register.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") + diff --git a/iron_chest.lua b/iron_chest.lua new file mode 100644 index 0000000..000867c --- /dev/null +++ b/iron_chest.lua @@ -0,0 +1,41 @@ +local cast_iron_ingot + +minetest.get_modpath('mobs_monster') + +minetest.register_craft({ + output = 'technic:iron_chest 1', + recipe = { + {'default:steel_ingot','default:steel_ingot','default:steel_ingot'}, + {'default:steel_ingot','mobs:lava_orb','default:steel_ingot'}, + {'default:steel_ingot','default:steel_ingot','default:steel_ingot'}, + } +}) + +minetest.register_craft({ + output = 'technic:iron_locked_chest 1', + recipe = { + {'default:steel_ingot'}, + {'technic:iron_chest'}, + } +}) + +technic.chests:register("Iron", { + width = 9, + height = 5, + sort = true, + autosort = false, + infotext = false, + color = false, + locked = false, +}) + +technic.chests:register("Iron", { + width = 9, + height = 5, + sort = true, + autosort = false, + infotext = false, + color = false, + locked = true, +}) + diff --git a/locale/de.txt b/locale/de.txt new file mode 100644 index 0000000..e22d2c2 --- /dev/null +++ b/locale/de.txt @@ -0,0 +1,41 @@ +# German Translation for technic_chests +# Deutsche Übersetzung von technic_chests +# by Xanthin + +%s Chest = %struhe +%s Locked Chest = Verschlossene %struhe +%s Locked Chest (owned by %s) = Verschlossene %struhe (gehoert %s) +Color Filter: %s = Farbfilter: %s +Edit chest description: = Bearbeite die Beschreibung + +# Colors +Black = Schwarz +Blue = Blau +Brown = Braun +Cyan = Tuerkis +Dark Green = Dunkelgruen +Dark Grey = Dunkelgrau +Green = Gruen +Grey = Grau +Magenta = Magenta +Orange = Orange +Pink = Rosa +Red = Rot +Violet = Violett +White = Weiss +Yellow = Gelb +None = Farblos + +# Materials +Copper = Kupfer +Gold = Gold +Iron = Eisen +Mithril = Mithril +Silver = Silber +Wooden = Holz + +# Sorting +Sort = +Auto-sort is %s = +Off = +On = diff --git a/locale/template.txt b/locale/template.txt new file mode 100644 index 0000000..4d422b2 --- /dev/null +++ b/locale/template.txt @@ -0,0 +1,39 @@ +# technic_chests translation template + +%s Chest = +%s Locked Chest = +%s Locked Chest (owned by %s) = +Color Filter: %s = +Edit chest description: = + +# Colors +Black = +Blue = +Brown = +Cyan = +Dark Green = +Dark Grey = +Green = +Grey = +Magenta = +Orange = +Pink = +Red = +Violet = +White = +Yellow = +None = + +# Materials +Copper = +Gold = +Iron = +Mithril = +Silver = +Wooden = + +# Sorting +Sort = +Auto-sort is %s = +Off = +On = diff --git a/locale/tr.txt b/locale/tr.txt new file mode 100644 index 0000000..6bef5be --- /dev/null +++ b/locale/tr.txt @@ -0,0 +1,41 @@ +# Turkish translation +# mahmutelmas06@hotmail.com +# Türkçe çeviri + +%s Chest = %s Sandık +%s Locked Chest = %s Kilitli sandık +%s Locked Chest (owned by %s) = %s Kilitli sandık (Sahibi %s) +Color Filter: %s = Renk süzgeci: %s +Edit chest description: = Sandık bilgilerini düzenle + +# Colors - Renkler +Black = Siyah +Blue = Mavi +Brown = Kahverengi +Cyan = Cam göbeği +Dark Green = Koyu yeşil +Dark Grey = Koyu gri +Green = Yeşil +Grey = Gri +Magenta = Mor +Orange = Turuncu +Pink = Pembe +Red = Kırmızı +Violet = Koyu mor +White = Beyaz +Yellow = Sarı +None = Hiç + +# Materials - Metaryeller +Copper = Bakır +Gold = Altın +Iron = Demir +Mithril = Mithril +Silver = Gümüş +Wooden = Ahşap + +# Sorting - Sıralama +Sort = Sırala +Auto-sort is %s = Otomatik sıralama %s +Off = Kapalı +On = Açık diff --git a/mithril_chest.lua b/mithril_chest.lua new file mode 100644 index 0000000..909ff9e --- /dev/null +++ b/mithril_chest.lua @@ -0,0 +1,48 @@ +if minetest.get_modpath("moreores") then + minetest.register_craft({ + output = 'technic:mithril_chest 1', + recipe = { + {'moreores:mithril_ingot','moreores:mithril_ingot','moreores:mithril_ingot'}, + {'moreores:mithril_ingot','technic:gold_chest','moreores:mithril_ingot'}, + {'moreores:mithril_ingot','moreores:mithril_ingot','moreores:mithril_ingot'}, + } + }) + + minetest.register_craft({ + output = 'technic:mithril_locked_chest 1', + recipe = { + {'moreores:mithril_ingot','moreores:mithril_ingot','moreores:mithril_ingot'}, + {'moreores:mithril_ingot','technic:gold_locked_chest','moreores:mithril_ingot'}, + {'moreores:mithril_ingot','moreores:mithril_ingot','moreores:mithril_ingot'}, + } + }) +end + +minetest.register_craft({ + output = 'technic:mithril_locked_chest 1', + recipe = { + {'default:steel_ingot'}, + {'technic:mithril_chest'}, + } +}) + +technic.chests:register("Mithril", { + width = 15, + height = 6, + sort = true, + autosort = true, + infotext = false, + color = false, + locked = false, +}) + +technic.chests:register("Mithril", { + width = 15, + height = 6, + sort = true, + autosort = true, + infotext = false, + color = false, + locked = true, +}) + diff --git a/register.lua b/register.lua new file mode 100644 index 0000000..25e4cde --- /dev/null +++ b/register.lua @@ -0,0 +1,303 @@ +local S = rawget(_G, "intllib") and intllib.Getter() or function(s) return s end + +local pipeworks = rawget(_G, "pipeworks") +if not minetest.get_modpath("pipeworks") then + -- Pipeworks is not installed. Simulate using a dummy table... + pipeworks = {} + local pipeworks_meta = {} + setmetatable(pipeworks, pipeworks_meta) + local dummy = function() + end + pipeworks_meta.__index = function(table, key) + print("[technic_chests] WARNING: variable or method '"..key.."' not present in dummy pipeworks table - assuming it is a method...") + pipeworks[key] = dummy + return dummy + end + pipeworks.after_place = dummy + pipeworks.after_dig = dummy +end + +local chest_mark_colors = { + {"black", S("Black")}, + {"blue", S("Blue")}, + {"brown", S("Brown")}, + {"cyan", S("Cyan")}, + {"dark_green", S("Dark Green")}, + {"dark_grey", S("Dark Grey")}, + {"green", S("Green")}, + {"grey", S("Grey")}, + {"magenta", S("Magenta")}, + {"orange", S("Orange")}, + {"pink", S("Pink")}, + {"red", S("Red")}, + {"violet", S("Violet")}, + {"white", S("White")}, + {"yellow", S("Yellow")}, +} + + +local function colorid_to_postfix(id) + return chest_mark_colors[id] and "_"..chest_mark_colors[id][1] or "" +end + + +local function get_color_buttons(coleft, lotop) + local buttons_string = "" + for y = 0, 3 do + for x = 0, 3 do + local file_name = "technic_colorbutton"..(y * 4 + x)..".png" + buttons_string = buttons_string.."image_button[" + ..(coleft + 0.1 + x * 0.7)..","..(lotop + 0.1 + y * 0.7) + ..";0.8,0.8;"..file_name..";color_button" + ..(y * 4 + x + 1)..";]" + end + end + return buttons_string +end + + +local function check_color_buttons(pos, meta, chest_name, fields) + for i = 1, 16 do + if fields["color_button"..i] then + 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 + end +end + +local function set_formspec(pos, data, page) + local meta = minetest.get_meta(pos) + local node = minetest.get_node(pos) + local formspec = data.base_formspec + if data.autosort then + local status = meta:get_int("autosort") + formspec = formspec.."button["..(data.hileft+2)..","..(data.height+1.1)..";3,0.8;autosort_to_"..(1-status)..";"..S("Auto-sort is %s"):format(status == 1 and S("On") or S("Off")).."]" + end + if data.infotext then + local formspec_infotext = minetest.formspec_escape(meta:get_string("infotext")) + if page == "main" then + formspec = formspec.."image_button["..(data.hileft+2.1)..",0.1;0.8,0.8;" + .."technic_pencil_icon.png;edit_infotext;]" + .."label["..(data.hileft+3)..",0;"..formspec_infotext.."]" + elseif page == "edit_infotext" then + formspec = formspec.."image_button["..(data.hileft+2.1)..",0.1;0.8,0.8;" + .."technic_checkmark_icon.png;save_infotext;]" + .."field["..(data.hileft+3.3)..",0.2;4.8,1;" + .."infotext_box;"..S("Edit chest description:")..";" + ..formspec_infotext.."]" + end + end + if data.color then + local colorID = meta:get_int("color") + local colorName + if chest_mark_colors[colorID] then + colorName = chest_mark_colors[colorID][2] + else + colorName = S("None") + end + formspec = formspec.."label["..(data.coleft+0.2)..","..(data.lotop+3)..";"..S("Color Filter: %s"):format(colorName).."]" + end + meta:set_string("formspec", formspec) +end + +local function sort_inventory(inv) + local inlist = inv:get_list("main") + local typecnt = {} + local typekeys = {} + for _, st in ipairs(inlist) do + if not st:is_empty() then + local n = st:get_name() + local w = st:get_wear() + local m = st:get_metadata() + local k = string.format("%s %05d %s", n, w, m) + if not typecnt[k] then + typecnt[k] = { + name = n, + wear = w, + metadata = m, + stack_max = st:get_stack_max(), + count = 0, + } + table.insert(typekeys, k) + end + typecnt[k].count = typecnt[k].count + st:get_count() + end + end + table.sort(typekeys) + local outlist = {} + for _, k in ipairs(typekeys) do + local tc = typecnt[k] + while tc.count > 0 do + local c = math.min(tc.count, tc.stack_max) + table.insert(outlist, ItemStack({ + name = tc.name, + wear = tc.wear, + metadata = tc.metadata, + count = c, + })) + tc.count = tc.count - c + end + end + if #outlist > #inlist then return end + while #outlist < #inlist do + table.insert(outlist, ItemStack(nil)) + end + inv:set_list("main", outlist) +end + +local function get_receive_fields(name, data) + local lname = name:lower() + return function(pos, formname, fields, sender) + local meta = minetest.get_meta(pos) + local page = "main" + if fields.sort or (data.autosort and fields.quit and meta:get_int("autosort") == 1) then + sort_inventory(meta:get_inventory()) + end + if fields.edit_infotext then + page = "edit_infotext" + end + if fields.autosort_to_1 then meta:set_int("autosort", 1) end + if fields.autosort_to_0 then meta:set_int("autosort", 0) end + if fields.infotext_box then + meta:set_string("infotext", fields.infotext_box) + end + if data.color then + -- This sets the node + local nn = "technic:"..lname..(data.locked and "_locked" or "").."_chest" + check_color_buttons(pos, meta, nn, fields) + end + meta:get_inventory():set_size("main", data.width * data.height) + set_formspec(pos, data, page) + end +end + + +function technic.chests:definition(name, data) + local lname = name:lower() + name = S(name) + local d = {} + for k, v in pairs(data) do d[k] = v end + data = d + + data.lowidth = 8 + data.ovwidth = math.max(data.lowidth, data.width) + data.hileft = (data.ovwidth - data.width) / 2 + data.loleft = (data.ovwidth - data.lowidth) / 2 + if data.color then + if data.lowidth + 3 <= data.ovwidth then + data.coleft = data.ovwidth - 3 + if data.loleft + data.lowidth > data.coleft then + data.loleft = data.coleft - data.lowidth + end + else + data.loleft = 0 + data.coleft = data.lowidth + data.ovwidth = data.lowidth + 3 + end + end + data.lotop = data.height + 2 + data.ovheight = data.lotop + 4 + + local locked_after_place = nil + local front = {"technic_"..lname.."_chest_front.png"} + data.base_formspec = "size["..data.ovwidth..","..data.ovheight.."]".. + "label[0,0;"..S("%s Chest"):format(name).."]".. + "list[context;main;"..data.hileft..",1;"..data.width..","..data.height..";]".. + "list[current_player;main;"..data.loleft..","..data.lotop..";8,4;]".. + "background[-0.19,-0.25;"..(data.ovwidth+0.4)..","..(data.ovheight+0.75)..";technic_chest_form_bg.png]".. + "background["..data.hileft..",1;"..data.width..","..data.height..";technic_"..lname.."_chest_inventory.png]".. + "background["..data.loleft..","..data.lotop..";8,4;technic_main_inventory.png]".. + "listring[]" + if data.sort then + data.base_formspec = data.base_formspec.."button["..data.hileft..","..(data.height+1.1)..";1,0.8;sort;"..S("Sort").."]" + end + if data.color then + data.base_formspec = data.base_formspec..get_color_buttons(data.coleft, data.lotop) + end + + if data.locked then + locked_after_place = function(pos, placer) + local meta = minetest.get_meta(pos) + meta:set_string("owner", placer:get_player_name() or "") + meta:set_string("infotext", + S("%s Locked Chest (owned by %s)") + :format(name, meta:get_string("owner"))) + pipeworks.after_place(pos) + end + table.insert(front, "technic_"..lname.."_chest_lock_overlay.png") + else + locked_after_place = pipeworks.after_place + end + + local desc + if data.locked then + desc = S("%s Locked Chest"):format(name) + else + desc = S("%s Chest"):format(name) + end + + local def = { + description = desc, + tiles = {"technic_"..lname.."_chest_top.png", "technic_"..lname.."_chest_top.png", + "technic_"..lname.."_chest_side.png", "technic_"..lname.."_chest_side.png", + "technic_"..lname.."_chest_side.png", table.concat(front, "^")}, + paramtype2 = "facedir", + groups = self.groups, + tube = self.tube, + legacy_facedir_simple = true, + sounds = default.node_sound_wood_defaults(), + after_place_node = locked_after_place, + after_dig_node = pipeworks.after_dig, + + on_construct = function(pos) + local meta = minetest.get_meta(pos) + meta:set_string("infotext", S("%s Chest"):format(name)) + set_formspec(pos, data, "main") + local inv = meta:get_inventory() + inv:set_size("main", data.width * data.height) + end, + can_dig = self.can_dig, + on_receive_fields = get_receive_fields(name, data), + on_metadata_inventory_move = self.on_inv_move, + on_metadata_inventory_put = self.on_inv_put, + on_metadata_inventory_take = self.on_inv_take, + } + if data.locked then + def.allow_metadata_inventory_move = self.inv_move + def.allow_metadata_inventory_put = self.inv_put + def.allow_metadata_inventory_take = self.inv_take + end + return def +end + +function technic.chests:register(name, data) + local def = technic.chests:definition(name, data) + + local nn = "technic:"..name:lower()..(data.locked and "_locked" or "").."_chest" + minetest.register_node(":"..nn, def) + + if data.color then + local mk_front + if string.find(def.tiles[6], "%^") then + mk_front = function (overlay) return def.tiles[6]:gsub("%^", "^"..overlay.."^") end + else + mk_front = function (overlay) return def.tiles[6].."^"..overlay end + end + for i = 1, 15 do + local postfix = colorid_to_postfix(i) + local colordef = {} + for k, v in pairs(def) do + colordef[k] = v + end + colordef.drop = nn + colordef.groups = self.groups_noinv + colordef.tiles = { def.tiles[1], def.tiles[2], def.tiles[3], def.tiles[4], def.tiles[5], mk_front("technic_chest_overlay"..postfix..".png") } + minetest.register_node(":"..nn..postfix, colordef) + end + end + +end + diff --git a/silver_chest.lua b/silver_chest.lua new file mode 100644 index 0000000..c615304 --- /dev/null +++ b/silver_chest.lua @@ -0,0 +1,48 @@ +if minetest.get_modpath("moreores") then + minetest.register_craft({ + output = 'technic:silver_chest', + recipe = { + {'moreores:silver_ingot','moreores:silver_ingot','moreores:silver_ingot'}, + {'moreores:silver_ingot','technic:copper_chest','moreores:silver_ingot'}, + {'moreores:silver_ingot','moreores:silver_ingot','moreores:silver_ingot'}, + } + }) + + minetest.register_craft({ + output = 'technic:silver_locked_chest', + recipe = { + {'moreores:silver_ingot','moreores:silver_ingot','moreores:silver_ingot'}, + {'moreores:silver_ingot','technic:copper_locked_chest','moreores:silver_ingot'}, + {'moreores:silver_ingot','moreores:silver_ingot','moreores:silver_ingot'}, + } + }) +end + +minetest.register_craft({ + output = 'technic:silver_locked_chest', + recipe = { + {'default:steel_ingot'}, + {'technic:silver_chest'}, + } +}) + +technic.chests:register("Silver", { + width = 12, + height = 6, + sort = true, + autosort = true, + infotext = true, + color = false, + locked = false, +}) + +technic.chests:register("Silver", { + width = 12, + height = 6, + sort = true, + autosort = true, + infotext = true, + color = false, + locked = true, +}) + diff --git a/textures/technic_checkmark_icon.png b/textures/technic_checkmark_icon.png new file mode 100644 index 0000000000000000000000000000000000000000..369d2946a3c8d87e92802b152480ec697042b3ed GIT binary patch literal 233 zcmV-ri0Zs{=y{S$5{r&sj6>{o#U;@Jgu|VcmrTPTd@A^X1hpB*_lA j*oI8c!8rx`w*RjWjgm~iO4KPJ00000NkvXXu0mjfxQSeR literal 0 HcmV?d00001 diff --git a/textures/technic_chest_form_bg.png b/textures/technic_chest_form_bg.png new file mode 100644 index 0000000000000000000000000000000000000000..37683f053edbcd46d12c62ccaeee73dd4dbc11bc GIT binary patch literal 6404 zcmeAS@N?(olHy`uVBq!ia0y~yVC7|CV9w-V1Bxs(lz$JTI14-?iy0WWg+Z8+Vb&Z8 zpdfpRr>`sfT_$NpRR!PAd$uz$NG$eraSW-r_2#Z&-XRA8hl`#mfe(IvkI`mtY|?Ud zI^-@8H2b@jciiq7pR$+KTFdasGXu?G_>enurlnlJ8Y75vX4ks-iv?-VN~~sbfcSeh z{H?P${w&R#o+HBqS^inw=GzJ+=krBEr}Hy|2$WJ{`sZ~$o>T8vfXzt z8^1pWl4ghz<^>5h2#ivrK`@#MMl-@_Suk20j@AgHwc%)OI9eNy)`p|C;b?6*S{shm zhNHFNXl*!J8;;h7qqX7CuMN+Cdneo4DACdMfGv&r<-hNxk4#PeJqs4qu1YjsFj~-$ z7W6bN=y&}6{KCfH82-q)vc<;6skjY?h;(Er8Ynuc>Y@W}CQo9VmqxUoKxj7#M z3qGsrY->^kNuQaPp&CT)vlbkaH z{Obpb;+k`>$<~(cs0iQ!DbHxNJ<8m;^g9fI0kAQKjWH4S7hO&jZ&v+iIEH2bybT5~ zoO%*MDkss_qo3CW4)+t*Ie~IzMgjn;b(f@apq0+FD3!)T{6>a{ai)dSahje(upTCc yxC=)7(HYl%kBKCR1cVTycwT4Syf213w7)SJ`^ZcCv0000Ckfm#nO}n095O9l9~Zs(=#o`#fj#AH_o(h zJWSGa2)x1D5I4b)KRTo5^q5G3NI(by#R^JYP;1QT>yLB=4r*AgQr?np00000NkvXX Hu0mjfAOLGZ literal 0 HcmV?d00001 diff --git a/textures/technic_chest_overlay_brown.png b/textures/technic_chest_overlay_brown.png new file mode 100644 index 0000000000000000000000000000000000000000..64c1d55aea4d758ad9d6c5bcb35b6a505a0fa057 GIT binary patch literal 288 zcmV+*0pI?KP);^IdNzplyH(;PI@kN|41l!t z0L&K#fatlVC#Mgxah>t7prxboJ=x}YHf^hQ0l|SG zm%kPRP&)35btwWDBp&VWa7=uEyG*q3`O(p>DNIH!y}No^d&K5Vl|u1W5@Q@ibrrFQ m7>qG^^?1J^Eca#SkMsio-%3DOxjp*;0000OK&t;uc GLK6UUp>7xe literal 0 HcmV?d00001 diff --git a/textures/technic_chest_overlay_dark_green.png b/textures/technic_chest_overlay_dark_green.png new file mode 100644 index 0000000000000000000000000000000000000000..941236b1dc4262878980df278eba572e70980f11 GIT binary patch literal 269 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`S3F%DLo7}wCrGd!W-v$+j@fAQ zU2jxAWDMfohnwxwQ{EIA7~gto-1h>ZmVc9ram0Um@@IobUHvzfxJ#xWjpU z!@|%q%P{e0cx={}TWH{yzQSwf*FYuQ)jwTJN}c*{%?M Q5A+{{r>mdKI;Vst0CrJni2wiq literal 0 HcmV?d00001 diff --git a/textures/technic_chest_overlay_dark_grey.png b/textures/technic_chest_overlay_dark_grey.png new file mode 100644 index 0000000000000000000000000000000000000000..e6b8f77d40812ec3599af1ecefc91a95a3ee6516 GIT binary patch literal 292 zcmV+<0o(qGP)fZf zh!}F_8Y^+S-DL)5X5k-y08+H<_ab#}<8xXAUa>ak@Te!H0)zBe2iYnBK@b3t=Q#lN z+Kk42SAG;2Wi7o=-vCIGWbPKnu>u@K0XyN1%n6LLmI7F>LN&aWWu6}=7iv8pf5ou1 zeI*89x84!!Rq#E(G_>#J1q;tlmwMZMS!&_*Wb=z$7~*(%u6Ga9!VsI$I@Pc(r8N%I qGZnFj7>qGEbvXAkA}meqgiWl}HFRThS>bNUTg@sxfr&&jeToMgRZ+ literal 0 HcmV?d00001 diff --git a/textures/technic_chest_overlay_grey.png b/textures/technic_chest_overlay_grey.png new file mode 100644 index 0000000000000000000000000000000000000000..8a1c9f0f9315d97d103ea4a8f0bd56e1f6bd084b GIT binary patch literal 299 zcmV+`0o4A9P)29fWv!7EQc*EL+?M7EJ1^T@meS9hd5Cj1L zNs<7tFn`Bp{aAh#7!8_w`%nZRilVVw9LEY!EtggI%kyArF9q#GP{ak8@i=`JT xVM{V=9QJlq#3Eua#^BW9+&k+V9r^P|`T%uqMsKAN)foT)002ovPDHLkV1m(3gJb{z literal 0 HcmV?d00001 diff --git a/textures/technic_chest_overlay_magenta.png b/textures/technic_chest_overlay_magenta.png new file mode 100644 index 0000000000000000000000000000000000000000..75b220d9390eafb39be3a60ccb5d3817a1050973 GIT binary patch literal 302 zcmV+}0nz@6P)Nkl2(@9h*~;`TAG}V@vHuxrX=(_4F#|+PpNz?KWVH0>)nW#ZlKq0Vd<04NS?l9T}O5+2x#00sbqr>mdKI;Vst0Ba0y*#H0l literal 0 HcmV?d00001 diff --git a/textures/technic_chest_overlay_pink.png b/textures/technic_chest_overlay_pink.png new file mode 100644 index 0000000000000000000000000000000000000000..0b6ccb42916f298d98bda76ef0870cf022144ad5 GIT binary patch literal 304 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`-#uL%Lo7}wCrGd!W-v$+j@fAQ z{T;fB(b41_!mfsElo_1 zjemWeTTR`)?YqC&8*^(jYfB3^Pc7wE76w|;y#2n98%Rx-{Ke6^s z{hnFd^Ss)%-KIBp=HH*zt#q8}@`(dLaOTj_1^=F^hov7n@_l2`ANw8qU)gI*3pY8$M^s8hxgalOV<2NHwv;kN8zjq@{&^D|x6zW9gXnWiiZdUXY`E=RG{l69V+9wW8R<2MX@ zg-bC2`-g3@E{AtM^Jw3PQ{w3PBGbZT+|;!x4Eqh8M$MH++`Yb{Sh|tS82d?0MJyr) lV+=t9A$)Lf)Rtd=q)(gBQoo#>Y$*T$002ovPDHLkV1ncdd!hgU literal 0 HcmV?d00001 diff --git a/textures/technic_chest_overlay_white.png b/textures/technic_chest_overlay_white.png new file mode 100644 index 0000000000000000000000000000000000000000..b49e253428d332e8770aa02ab6c70bd2d50ebb7f GIT binary patch literal 253 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`M?75|Lo7}wCrGd!W-v$+j@fAQ z_f9gLzI$AH$@X>rt|L^|r&)0lk z794$1WbpCr?V|t56^XBxefiG=1ZQ+&c;w>#R?OX*U;eT_O)QKp%uJ0<`?Z*x8XFMg z@1NNNQnE&84a?q+HImMs9yEG2#aWbXVXL>uxjm=dSfD&d`-gvsN#4B)zvfSzIJ0r$ x#LmXf&d!JT|JU>U|Mxfb!`JyIJ-)WEFoYeco5i49{}<>V22WQ%mvv4FO#tv~YS;h( literal 0 HcmV?d00001 diff --git a/textures/technic_chest_overlay_yellow.png b/textures/technic_chest_overlay_yellow.png new file mode 100644 index 0000000000000000000000000000000000000000..d5632576f7c3362c5deca9210816d3dd1c2f323c GIT binary patch literal 274 zcmV+t0qy>YP))1e0h;)yN^07z&1B()H9 zP4`{eeX=LGUbTHk*ls%fwt{UnZY0dEUj4b<{XE z)7O>#E}NWyqGtckxJ5uABTpB{5R22vDLcN;ZxlLk=l~EbIO4HO^ZP$zBLg5X4B&9% ml`u`1A#uPXGjGWaR)&2i*>3klIEnyuGkCiCxvX literal 0 HcmV?d00001 diff --git a/textures/technic_colorbutton1.png b/textures/technic_colorbutton1.png new file mode 100644 index 0000000000000000000000000000000000000000..cbf095df91b711a8fc70c6217f0600d06462aff5 GIT binary patch literal 148 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`oCO|{#S9GG!XV7ZFl&wkP>{XE z)7O>#E}NWyvdGir1%^N&V^0^y5R22vDLcN;ZxlLk=l~F;9Cp~G`M=M=z{mgy3{XE z)7O>#E}NWyp4dM2`~aYkv8Rh;h{fsTlpWvaHwqm%bl|{&54$prPcG}Y_S4A700;~N pINW$8OcQ2E9Pr4@TXKVyVNWLe?fzqXoq*aIJYD@<);T3K0RRYBDx?4a literal 0 HcmV?d00001 diff --git a/textures/technic_colorbutton11.png b/textures/technic_colorbutton11.png new file mode 100644 index 0000000000000000000000000000000000000000..3b279e00adf0935711efe2ff461e63db90ee11b8 GIT binary patch literal 148 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`oCO|{#S9GG!XV7ZFl&wkP>{XE z)7O>#E}NWyo-RL6TM1Ce*we)^#Nu>v%8u{z8-)%WI&k2?hx-#IrUXlz|DT?c00c=3 p1bU{XE z)7O>#E}NWyzO2Ey_L)E-V^0^y5R22vDLcN;ZxlLk=)i#k7Z!v$Z_?!59wi|uAt5nC qLW5;7TaT214^P4p6Z4=qObi_t*>7{Z8Y}>6XYh3Ob6Mw<&;$Um5hq#z literal 0 HcmV?d00001 diff --git a/textures/technic_colorbutton13.png b/textures/technic_colorbutton13.png new file mode 100644 index 0000000000000000000000000000000000000000..b1e7790cf5abdaed9cbc8d0d6aab08bb10a815fe GIT binary patch literal 148 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`oCO|{#S9GG!XV7ZFl&wkP>{XE z)7O>#E}NWyp|x3)?QWouv8Rh;h{fsTlpWvaHwqm%bl|{&5AhQlQ-USl8ygrI0D)lu oha0biX~GPN10I=qOKz|-e9>jQ9T&T4El@jyr>mdKI;Vst0LvOE{Qv*} literal 0 HcmV?d00001 diff --git a/textures/technic_colorbutton14.png b/textures/technic_colorbutton14.png new file mode 100644 index 0000000000000000000000000000000000000000..c4ad4868916567ec43e2dc59e9b6ac0bc2470cbf GIT binary patch literal 148 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`oCO|{#S9GG!XV7ZFl&wkP>{XE z)7O>#E}NWyk<5;zw}EmD#-1*YAr_~TQ+9lx-zaq8(18O7KE(TVqy$UI?@dlg0D`0i o0zFa&SqBUZ8zx@5zopr06GyXY5)KL literal 0 HcmV?d00001 diff --git a/textures/technic_colorbutton15.png b/textures/technic_colorbutton15.png new file mode 100644 index 0000000000000000000000000000000000000000..b7060d67a056ac8b52b47999e2e4a0aab5b20829 GIT binary patch literal 3562 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 literal 0 HcmV?d00001 diff --git a/textures/technic_colorbutton2.png b/textures/technic_colorbutton2.png new file mode 100644 index 0000000000000000000000000000000000000000..caf1fc6f284f4526bda3699133a3a0d6b9d9dd13 GIT binary patch literal 148 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`oCO|{#S9GG!XV7ZFl&wkP>{XE z)7O>#E}NWylI6~1SyrHsv8Rh;h{fsTlpWvaHwqm%bl|{&3-gxwZql5(d7Y7w0T37l paJcbGm?q4SIN*_)x8w#ZL)%IA+ndj9=KyMF@O1TaS?83{1OU}FDX#zk literal 0 HcmV?d00001 diff --git a/textures/technic_colorbutton3.png b/textures/technic_colorbutton3.png new file mode 100644 index 0000000000000000000000000000000000000000..6ac79a35659bcca0a9f1f1153a7239c58bdb35d0 GIT binary patch literal 140 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`oCO|{#S9GG!XV7ZFl&wkP>{XE z)7O>#E}NWyqTur1&uoA~+MX_sAr_~TQ+9lx-zao|Y3WJB)`^Wk(Anr@kab`M`c=_)2dIs~)78&qol`;+0LFYLaR2}S literal 0 HcmV?d00001 diff --git a/textures/technic_colorbutton4.png b/textures/technic_colorbutton4.png new file mode 100644 index 0000000000000000000000000000000000000000..dc4359210cee2b05e8097c52a5c43249ce4f19ba GIT binary patch literal 148 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`oCO|{#S9GG!XV7ZFl&wkP>{XE z)7O>#E}NWyis`fdZ!3U8#-1*YAr_~TQ+9lx-zaq8(18O76oMBxZPN5tyOWrb00c=3 p1bU{XE z)7O>#E}NWys>tTQ*S7{XE z)7O>#E}NWy8ei(BT0WqVv8Rh;h{fsTlpWvaHwqm%bl|{&2ft=cObIUg{4YHv0SJ;7 p2=qu9WF0UtY?yfIj>krBhTdBC+jCz{I04ko;OXk;vd$@?2>^W4E&Kog literal 0 HcmV?d00001 diff --git a/textures/technic_colorbutton7.png b/textures/technic_colorbutton7.png new file mode 100644 index 0000000000000000000000000000000000000000..85f6b93bf35fec67bb831f36e7fa85c12c5ec4bb GIT binary patch literal 148 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`oCO|{#S9GG!XV7ZFl&wkP>{XE z)7O>#E}NWyy5$j(mkvN7V^0^y5R22vDLcN;ZxlLk=)i#k8~#4yo8^+EEqVX| literal 0 HcmV?d00001 diff --git a/textures/technic_colorbutton8.png b/textures/technic_colorbutton8.png new file mode 100644 index 0000000000000000000000000000000000000000..868c35d0c1938d0b4152df30cf9d60d8f068ae82 GIT binary patch literal 148 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`oCO|{#S9GG!XV7ZFl&wkP>{XE z)7O>#E}NWyj@7=GiH1NSV^0^y5R22vDLcN;ZxlLk=)i#k1s<7JCzsv0dpad00SJ;7 p2=qu9WF0UtY?yfIj>krBhFMS9Z(rlsxg4mS!PC{xWt~$(699|XExrH% literal 0 HcmV?d00001 diff --git a/textures/technic_colorbutton9.png b/textures/technic_colorbutton9.png new file mode 100644 index 0000000000000000000000000000000000000000..50eac0b56bf70740a77bf04abe79de454deedc05 GIT binary patch literal 148 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`oCO|{#S9GG!XV7ZFl&wkP>{XE z)7O>#E}NWyuG;3$JoZ2#V^0^y5R22vDLcN;ZxlLk=)i#kAL_R=o?K?ID=r}=0SJ;7 p2=qu9WF0UtY?yfIj>krBhK+^nxAP^Zr31Ayc)I$ztaD0e0sv3cE8PG9 literal 0 HcmV?d00001 diff --git a/textures/technic_copper_chest_front.png b/textures/technic_copper_chest_front.png new file mode 100644 index 0000000000000000000000000000000000000000..add51e86da4ebe6ee54ced026ff6d0f83b4c9c71 GIT binary patch literal 607 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 UkB}ZDYDnJ2(cPh9PvFIW0~#dEtpET3 literal 0 HcmV?d00001 diff --git a/textures/technic_copper_chest_lock_overlay.png b/textures/technic_copper_chest_lock_overlay.png new file mode 100644 index 0000000000000000000000000000000000000000..49f7f2a96a9d9d8f58f77fa72b8ad9a80b2d4e32 GIT binary patch literal 160 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`Y)RhkE)4%caKYZ?lYt_f1s;*b z3=Dj$L71`c&5=JqK?hG4#}JFt$q5pyTUhJ3c>eztk@)vG_;8c|r|a>DrWrh(#9=Z; z=FVdQ&MBb@0I_g3 AHUIzs literal 0 HcmV?d00001 diff --git a/textures/technic_copper_chest_side.png b/textures/technic_copper_chest_side.png new file mode 100644 index 0000000000000000000000000000000000000000..2231ccef841362576cd373fa28bc6e4c59db964b GIT binary patch literal 570 zcmV-A0>%A_P)WFU8GbZ8()Nlj2>E@cM*00Ev!L_t(I%T<%RlG`v0 zMGrtyvSK^w-RBeX|9`VxiuL-n5=ExC(8wt?8h{{hAE5pDed%V94Tc1*13)rxQ`|b3 zfdjR}+F@j#D) zA45>O1e>y8zhbf*+$&I_pD$z&ZifV?0eaAxGW;Awp?Ad&+!h!NN`Xg`6CBI`>K{Y> z+QB;f8b$58=)!qavnSy0yYH=w##G>Yl{+QDl;E|B^O$7s(lpSWH)~82Zi^NLv~kx( zHQV{)-OAec%f;Xx#hYNCvvS+}xGxgaEE=w1UouVJ_P~R4ZLzX({_e)oAg@g@?{RQQ z5@=hZ;(NRyO$OH)YKGjlSLNEc*WFU8GbZ8()Nlj2>E@cM*00EInL_t(I%T1FxdfYG! zg@1sgMzh%I-RB6o|83Hx@OTzm;*#P)pQcbj;Q?(&9|j5dclaP@gSVn-W-v!{?NV?^`kqw^ z<}7uOs=+=bh@l)aTndaBcFOQJ?G}zD$cFIA!TSJ)Sk76JLCxHB|I=86LS(q`vlkJ}SPzINxGr)O*_oCEC)K7sQfV;ukHGOgw*8rai{Fa*EP)eT!y#n`sfT_$NpRR!PAd$uz$NG$eraSW-r_2#Z&-XRA8hl`#mfe(IvkI`mtY|?Ud zI^-@8H2b@jciiq7pR$+KTFdasGXu?G_>enurlnlJ8Y75vX4ks-iv?-VN~~sbfcSeh z{H?P${w&R#o+HBqS^inw=GzJ+=krBEr}Hy|2$WJ{`sZ~$o>T8vfXzt z8^1pWl4ghz<^>5h2#ivrK`@#MMl-@_Suk20j@AgHwc%)OI9eNy)`p|C;b?6*S{shm zhNHFNXl*!J8;;h7qqX7CuMN+Cdneo4DACdMfGv&r<-hNxk4#PeJqs4qu1YjsFj~-$ z7W6bN=y&}6{KCfH82-q)vc<;6skjY?h;(Er8Ynuc>Y@W}CQo9VmqxUoKxj7#M z3qGsrY->^kNuQaPp&Z1k5JgYb`{!6=2eKtge z{k?!{#as~J;d8?scB8W0G`6Gg`ln1(mH*-Ar$^kaZwV@dVDz(snbK-xu}I+X`00}C zivd+b1T=*I;6qY04wfrofS4czAq3DU#3bx5S9H-id45RWD=9)O#Tm!K+pB>`%Ol*b zaU!KbF$08FD{fH6E6^w0f4X5Tg;D}>w=-^r#%3nmu0N17ku9RtrC4FNPwJ$kQM}egvbG^8MA`f4YidipcvyASVcJ9jLqD=7bc*WW zKlg20Z`(002ovPDHLkV1if|KQ{mX literal 0 HcmV?d00001 diff --git a/textures/technic_gold_chest_inventory.png b/textures/technic_gold_chest_inventory.png new file mode 100644 index 0000000000000000000000000000000000000000..d4aa8b30bd8f9b791453c8982265909787c37c35 GIT binary patch literal 9893 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 literal 0 HcmV?d00001 diff --git a/textures/technic_gold_chest_lock_overlay.png b/textures/technic_gold_chest_lock_overlay.png new file mode 100644 index 0000000000000000000000000000000000000000..51dea7155326bc9ac5e1cfacfb20266a6d525ba2 GIT binary patch literal 204 zcmV;-05kuIP)hzK{svlmwxp1rulAS%qx(AlQ?P)WFU8GbZ8()Nlj2>E@cM*00K)%L_t(I%RQ3IZd6wg zMOW3SbMAF_Oe4D^1X4uid;uf=hCzNZ1pfyD;|wgtE$}0K`#h>LxR60!odSf1m3+naW=ucQRd=^3g^EhR68Dm08jr8 zBH&b&)$WA|Nf1nLQ2kj)^JxwH@4dh0WV(dxcPEG)e!+r=_he8Yb~g?@%PsQ&vuuD-w+sWKywF#(L3SL z>Q~U0JU-k}Tcfpvolef(VQ@SXzJ0%?6ewjuEF)x~15VKB&FJkGA8PrSG1}`XYCtndRLOXBw1y< z-Elf85uhW2Wf@$5IncWDc>fQ51bqbFol%|9gWiLO`#Wk?Zmtg;k52D_g~RbAhzzbj zADCxH70xA5$qW}1czkR`z~QjM%W1vNBH*tN1yRTeM8T4fEU=V7V05RCgpXCCK33Qr Z{sVHdVB2v|`*Z*R002ovPDHLkV1muKIK=<} literal 0 HcmV?d00001 diff --git a/textures/technic_gold_chest_top.png b/textures/technic_gold_chest_top.png new file mode 100644 index 0000000000000000000000000000000000000000..abfc081d37d75652a692ca3755c529e9acc346ce GIT binary patch literal 729 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 A_y7O^ literal 0 HcmV?d00001 diff --git a/textures/technic_mithril_chest_inventory.png b/textures/technic_mithril_chest_inventory.png new file mode 100644 index 0000000000000000000000000000000000000000..d4aa8b30bd8f9b791453c8982265909787c37c35 GIT binary patch literal 9893 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 literal 0 HcmV?d00001 diff --git a/textures/technic_mithril_chest_lock_overlay.png b/textures/technic_mithril_chest_lock_overlay.png new file mode 100644 index 0000000000000000000000000000000000000000..d227c51b6e6a54bcae6a65f36083c55c5b0b21f3 GIT binary patch literal 155 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`Y)RhkE)4%caKYZ?lYt_f1s;*b z3=Dj$L71`c&5=JqL2FMJ#}JFt$q5pyTUeXcnEhvs)cyB3_;8E=q{+>58(UlFHs&zT vm@z|ghehQH^M<)|TN@icp3jKkt7l-?UBbfX_tkU~&=>|!S3j3^P6WFU8GbZ8()Nlj2>E@cM*00LM^L_t(I%O%dsZWLD( zhS6{DbE>+!+cwz7_!1+eM2Rxb`@chm2+7F^Bv}29J z&27SsAajkeKsa6c1=*hPXR>cewrAl7?mKdNM~Ou8iO%i-BV!4p!99?iMkg$OB=ee< zdrX0v14DVH;|}>(B#}~sNO(kHiUX=E?ym?{qOOR7v4RCl5n9DkCcM6-YGSCLkb2y$ zMa-CQu$US3fO(L0O0Nfoc)+wLrIqUcA|Gh{6jU&4$id9jO(ofP%<@mnW)c%yO<;!8 z10z)nW&?`K-ey9HEUkR~?6@y%>Z5#e0l6|z}J z=WoC!f{9&o3k6y~W1DaAa?Zetvn6xR%s*`G0$GdmNKP~m7o<&3)Rsn^F(*BO6#E+j+7J?O7p_G}hkv0~{J+)S31+#^SLJ8r)fOAgq1640%yJW4;Eb)prfzq0uN0000WFU8GbZ8()Nlj2>E@cM*00L`CL_t(I%O%rYYn){e zfZ=;)p7(1vjVXdHP1~d`HhNM#@fUdDj~6^rQHWNW#SjD~$?m>i&&+t>^&c*I|LVIG znNdz~nNb9jQzV6&dorQbQ&NJO510x>Pt6BJdWxy?@7)>7OVsXJDm;-(GKGo1P!lRI zaSztKp=qGT8FTFT;`xliO2Y-PCp{U;B`yP1Z!zsL*)ZncsCG2v4NDbFAK1uSKq!bI z6jU2L3r%jBWJlqQjyFg+eY@kZ-m#Ilgcc%&#*9csGm?p0G?lhoqV$l4X-lgOjSW;E z5bvq3w0Q-RjJYE@pheCQ3Y}fhWzWo?boLorzU0UaV}7FN9YZ-m?1t7lPVGIG1C5?h z5GNz?T2SjjTT~j77L5T>Fd2Z3)sMKg#Nwn0k%HFT(@MuGe^A8O@-^!^Gutgs_=YXt zlI4!0&urxbZ5oq(Bwb0_qaqExo>R18jNh;ls3{sCol~O2Jz2daBH70^jSTd>MlgzI zGJAuyO00$OU?W#d{)t2Wj9J4vEqvZyQ6$(`C>BUHR0I_UJb$ODuV_>`)@w4IMlY#3 zv&6)#l_Ur`;^8cLz&$}n+><#MToxiLH4=3m zFQ1I3OdRzWEQJ$0 zr|5G$lePSWFrt}MnTS{s0)@(0cT_*p>NBcL)EcZTO#TS60t>4z2on*{2p^gABas#P z>h<@TjF_CF6r4v?S_&tuc~1hyQz8!_3&sgS{lB(s_zx&XUs}Dy84v&f002ovPDHLk FV1kTgLlpo3 literal 0 HcmV?d00001 diff --git a/textures/technic_pencil_icon.png b/textures/technic_pencil_icon.png new file mode 100644 index 0000000000000000000000000000000000000000..8079edef68a9184950c7f1dd0eb0db4ac41252f2 GIT binary patch literal 294 zcmV+>0oneEP)W~zlP5^@4N^$1$nZDA=X(<$O1#LlyLf;8p;DTEDH5mKbF%4VZxcV@|s z@+^cvP+@2D`tL6u??H=^(MV)C6aW>9-^OFYt%mY-#}CRXCMUs3WVaFKpPDF98&spFPl2TY-T|iKm+*Cn#>*XTAT)90CRVH sF6(tk92?$U%vt|A_`&4n`b20s-+1Yq=g`0?>Hq)$07*qoM6N<$g7?OKO#lD@ literal 0 HcmV?d00001 diff --git a/textures/technic_silver_chest_front.png b/textures/technic_silver_chest_front.png new file mode 100644 index 0000000000000000000000000000000000000000..5ae5831614792e2ecc09f2072a337e4eabaf34bf GIT binary patch literal 851 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 KzI>Peh5rWdYv=a> literal 0 HcmV?d00001 diff --git a/textures/technic_silver_chest_lock_overlay.png b/textures/technic_silver_chest_lock_overlay.png new file mode 100644 index 0000000000000000000000000000000000000000..cb1bdb0e15faf590d56d9ab33c3d35cee551369d GIT binary patch literal 192 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`Y)RhkE)4%caKYZ?lYt_f1s;*b z3=Dj$L71`c&5=Jq!30ki#}JFt$q5pyERG%_Yc%XC#cC$8if;Y?|Nrmv2Y{f%n^)M5 zx$f_ulLtWFU8GbZ8()Nlj2>E@cM*00NFlL_t(I%PrH%ZXHD! zK;cu>HFjSc>l)ck!~!8Uk$927%OkN#6oJeT8O7im`}S1BU&SIkz>&VqQEz|zsT*Ta zN@1-Cbb_q_W0$Y319py|CMA}FP(wUW}#x-48yBY)qInARG-HKKEj(X&?J>19Ugfx!+S z4K$>^l5(O+W!qLnggs@9h;W`4N~u`qa3PSlgpYxn;}ym^a><0zu_8R4&Xk<-8ngma zO6KFQ@A2Mat-%%E2alvD~ z=k9o9-ZIjJS_)Rf!>31@2-~{yaQ^{wI81!=>NP$D4%0*&N0Pu4J+JR>d3;`=3(wCl zTup(h6x+PuyyM|dgXv1slxDDwJ{XkqTslu2N5<)rH#fJ`TA9x;)KXY;=I;8)`8@OS zxAz#WH8aWpr>7@kjM#a> zhluk5=N#4=y0WNVF&eggXWMtyJ&|&u_l{{I)LJ=&Ko}!qh=e%ez2)`^e06cjysk{au`eqZ7Y7WA)&Xa!s-x*_+e+^Z(_7<@5AXQruX}P4ymz$T`8`Hb oDPO|>SMI&h>2zt7S`iWc1A5<$f!YJoNdN!<07*qoM6N<$g220b^#A|> literal 0 HcmV?d00001 diff --git a/textures/technic_silver_chest_top.png b/textures/technic_silver_chest_top.png new file mode 100644 index 0000000000000000000000000000000000000000..79196d63158482ea23d2dbe2dceb9ee9b3383aee GIT binary patch literal 798 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 I?R))y0Qmf6r~m)} literal 0 HcmV?d00001 diff --git a/textures/x32/technic_copper_chest_front.png b/textures/x32/technic_copper_chest_front.png new file mode 100644 index 0000000000000000000000000000000000000000..1769435837308c08dc1812fae4b7977cc235fec6 GIT binary patch literal 2614 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 e@+7d_oAZCC;eVc!XGCoP0000 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 LNkvXXu0mjf#r^%m literal 0 HcmV?d00001 diff --git a/textures/x32/technic_gold_chest_side.png b/textures/x32/technic_gold_chest_side.png new file mode 100644 index 0000000000000000000000000000000000000000..5d5ad0f73fa1928ac80aa058274305a2103a6e82 GIT binary patch literal 2617 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 UZJ{Wz>%07*qoM6N<$f}VcIi~s-t literal 0 HcmV?d00001 diff --git a/textures/x32/technic_iron_chest_front.png b/textures/x32/technic_iron_chest_front.png new file mode 100644 index 0000000000000000000000000000000000000000..79d5b49eb7912f64954ce5ca92f4b61d2c943a35 GIT binary patch literal 2515 zcmV;^2`u)BP)S?vdJsP>y4S2bF{)OS20efJ;X9K=^exK*!HarcDT&jh|5^HC1%_TA-d`Ob5 z=7~UV@x{A__~(E6N1tuhJgiC@^@LuxORZMJdylmir4(9gwAKIwK|mOWAf*JrIR`*d6o-3+5Ex@H#vp`12!XYhw{PFFPPc5PKe5gY`Z?DO z-~5I_zl##kYQ)@3u2{UhP?(H2Z@%H-;Q_Z>5WAPvlcf5%_W)RH0qFJGEEX>;URH#) zknwoTCbFXK_N1<^@t# zTPSuDcRC%0g8}#V_XJv_v_=R)Q50lp#%OeeDGkPytk-J*gaGRt^Z7HY<%(v#MOl{U zzxnIGMJq{`Z^-i;QWP-B}yhi}u zd+JHTa5&)eYz7G0ttRy(;ra2AG)=MA9wzWr+|1Cj{Pmt|r$AA!sxjByr5y z`8g`kw38Qb-m?Pg1_H6*|x2pON8 zlIJ-}NjjY_^Z7Gc1@wDE!g|8(r$15mOT>Tv$G`cr^J})gMm>)C;fEiHk5m$4O2Q!EyYJo+#WBvg%AB%{EXzpKlplZmkxiPC zh@4-4^BVo(;+FX$#ZlnOlJoQPLl8OVei26dTmX;v4iMly2#``xs|6Ti_^&_y@fTqv zcYG2;uv)FyY*RK^%8Og{UyhqBngOnPLL-hCpNv_r*9ZAXDXG!y6oo2|@jCM0ZKW2(=-~S!M<1xN0`S9USyn1!Q)6)~1ZC))P>a$v} zNwcgDo%8x4#TOm05Y>2_(g+vIt{WHKR5(_P2V zynFkW@87>iHX4nJKv9k7=VxA@zG5)wv6wHpo=zDajSlz=ArQN4s3*xGFDimbuC6AW z93Rsk^sxx0H=j8f9Z{==SZk|b0`eV{jYb14gdq5WOt-T;I_)mrdGey%LEnnACNbe7BWPpF_q5=A)gNYe}{CCk-{EH8NVYK(K9 zq9`cKvQmXHc;}FSF$Ewi2*O&3bDlgeC`>_~7hGLUDT)H66mcBmy{Fx75{4l+pFd;E zk|@*+`+d?ZMJl=Lf>i)rTwGF?S*1eC^FXT zHQVi$s8(aM*`R}fB#xFk!E7O~xKXg1r(?RJZGj=`YMYPC49+Brv>WkhjY=^c1_UZ8Y9t5K)dZt=2Q0%en zt#+I9$rLXX-A;#AtHs5|1wsg#jmF_zv5#c8KVL+3q!1)gNNH_l)9dw`&1QqOmUgSf zcswT0^UB?fsbX|@b7?J`&4$a#6;exjohJQGi;Ii%9Y@-9pINUtFM+I!H??1>RE_gW5qOgdnLW9FK-vPiG(lj!%wg z)a(53kN<-TbX8!yC(r@TT1sO;sj4FaX_`@%7HNzj&;gxR>(B{*cDIUD&00Vdgg9FT zO{38OFSwfAAeE-otdqnslgWfAiHYMFx$BmBmeQ;#Y*}EfK`4pXwIpK%y&fMDQV4-mm4WqpU1qZxQcB`DMr%zR$HY62n9gnq z1BvtwN{2*XOj*hN?c3k{VQ@5LbaYI=H{fM42Rybc`TF&1N@Lh$IeDHj9*@CuAk|)K zPfyQy?+**xlkYFy{0dtZWLZI;WgH!iI6i(wquIh(%gxOc@$dio4_=0Ky5nzIt(Nrr zecJ6dT5G~EJT&7V2oCbv!}KLj_62s&ezR-F)q$sS!^L93)6)};R*RRLkGNukUYDA? z*=N%Kn^CVPj7B3moeoN=!vgj%-Z$KRBJLNn|G&SskLvx2xhM*(wYct{|D?yoSw}>-i-hN002ovPDHLkV1mbv&Km## literal 0 HcmV?d00001 diff --git a/textures/x32/technic_iron_chest_side.png b/textures/x32/technic_iron_chest_side.png new file mode 100644 index 0000000000000000000000000000000000000000..e12daa5ca14af9da672cb93c10163c88364603c0 GIT binary patch literal 2478 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 literal 0 HcmV?d00001 diff --git a/textures/x32/technic_mithril_chest_front.png b/textures/x32/technic_mithril_chest_front.png new file mode 100644 index 0000000000000000000000000000000000000000..9f7ca7ebbf67322a52538a20d50ec3e029c294fc GIT binary patch literal 2656 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 aG5-(Ki?Hg;qy?}500002=ma)!UN@Nmn8 z%0*eFs_LmWdTP2oz})%Dz>J^5@ZA8u@C*0_=H2`T2JD%x?y8bfseQ|oawB=p313js zm_PyqNH8PfM121r>fitTZ?fO4xq0&R%7XDhg-bI;AOw#w25T+GS`?5Z3C^X|b&VhZ zC=_X$(lj+~+af^l9`8LN1dOpL1x>x@?qSJ#vt`=1WMvQQXc>)4e)z-h=@mJ<%@$(} zB7%sJBne59AR@#V(OTo213+sHK#UQ9rfFW^QA*LaEp6MPltL**2!T&O{lt2^W4rht z)^&@$uPxK>e}_-M=gwQsni0qI3!WYyAncjF|1GQ4iXa-~Ib)?LiULhw?-NiU!IKzI zIheA2dSLzZK$cp@hwr(&yT|)LnMVHU$3E6=$&Wnqzx|B)@A&6#mdqR>|%w{t_z8e!l3kVWD$|NYI(bgf+(`;AFPtOpgpN~FtbgPB~ zVpN=+%?UWPaYWyc+KAPE@A5!SP$@1+=nW@4-JheAlIduGOEdoZ%Qsrz@j_x`*vl!) z0&NmRBCS|NyYBq0MJLvFVCj$9ZdQnLpmbLOrD>Zz-yK!-235xaZP41{n?1Le-!QJE zC`tm3%hS(@%5Zswu^BOXcAG~&yy=mr2GA%JF?eDO&oosX*>0~Epi{IqC=`VgtO?Y0 z!?!O#Q&kmZua8m+K~T0tyB=9;84gOW&wil^28o^+T3n*Y%OOoL93Rh_j7J=dMrhk% z+!%{<4jp4xu82b$+hvJR@3;KsyN?VGW^8MCxSlf@R2U^7f=Rkb@XeO%>sxeEbn_mX zjwkhsqr(HTykNZxJlrmrO$Ovy0!m@6B}o#rh!8?Rh=@eW+~Az0iH57o1=Z+~;lUxB zec}EiagJ_dss6+{=$d1Bl6TCBD8JW z9YF{Ig+gNJGXHQy*&DE_;r8-`EbozJIc-ciKffTfH6jsXEXH-2ce8Ji82RDj5rg4~ zCRjGB3-aEGJkQzeVZOKo=@imhi+&+pmKxGD#glQq_{y-FQuYS4LGyHX!iS?NiE{)J z(8V*`JrV;F14WiGJUC?ED!zXCOxf#`rYWoCBb(&~hlf*~OW5vO>TXIq>5f9jfgrqn zGb7J)p0<(Zan58i#wCiqx125(gl60QDP6WoX(akrHT;M7BYM4(y*J!ncjYho75lp7 z^6Z$70!wR#2-rewK%;KREaqw$E_<&L|Hugs<+w1(Pi0`?ipilWF#6WjSA zZSj(Fe0t7wI^*D=EC2H58?(a+&Lz}d(}vEd_udV`iq;$U zjpy?Eo)}t`(I{mQgldpe76oVLOHdYx9zl58D!9GiV04IYJ?jmeE#?U7l?(0u312@E zLdJf-$42R-w%tD=BHZsIo7D}UK7Hcka?NfJ$^=9rT3g1WiV!uY^RJ+D@-l-M+1E9o zd3@RtniFPkjtCLzrX_|3r6SSSC_+~S-wyXz1e zNC<7jBoS>LR)m9Uz|GYHZF^X|rmb5v&mfwN57?}qkQgw!lTqJnuxW|X1`*BO@)1nR zpkGk*$L!X3L^1RSeI}zJ+s(3*-)9e@v?hiY37*jII9nXk#tw8LM!fgvrfF%KhWUI> z>jOsiWO@25qY7;tN*U^4iK5Azr5co6pMOIzOsaxjf56%4F_DC_SCXgZm8>F>7(I~; zo%FF<$n%u_Zi9%Ro4N}iM4>R%HDd zmy2KUQ8OI$sQNjN50@Po)&H~d#=J`M<7$c0rZXfj8_Z;UKy@(Td~u48svA8NSrRZB zV({Ja5i}txiX!99Y{Jd;1p&wGa7wR#z{#)wO^6-oM1(W}Yr5~n=nX1VLiU`}gmtePp|9P+`sZ@EwA}2SIBCN}=PH<-;9bY?mF~5~8Kyye^qM zd-@QScj>(fSYqP1Ddc4c>cJs}*;5ca*~+tHsa6W`kXO%hkm>yI(IUi=5SL zMO9T8V_pMz`LMMXtu-+|o7CrEUhZF>dGBAJy#x?KV7Xj!b#=vNyCY8`v+0=s0|571 UseL(XI{*Lx07*qoM6N<$g23Y9asU7T literal 0 HcmV?d00001 diff --git a/textures/x32/technic_silver_chest_front.png b/textures/x32/technic_silver_chest_front.png new file mode 100644 index 0000000000000000000000000000000000000000..fe5ce2cb61a5af37f2b061eb8c988aee985d09e6 GIT binary patch literal 2241 zcmV;y2tN0TP)*BK(_H)CCDShD+7Vi@SsMksez(6);!$0S*Y)Y zWCDZ$idA+0bIyOxq4k$9|D>usW0iJ9!vT}=7~l6%N+G4hwrw28!Eqb_T-U|(JnFjU z{>%4$nx>&`TL8MQqw6|z56iNs>zeI$OPUwVVuxTD;dr!6CPO~@#pgtWkTNf@Z5yQ& zN-12|#dTejQuKX~5CYHh01!d|(Dyw6P1Bg~Se8ZGwzO@FWm#C3g_M#{KmC-fEXWt% zlGQEFrgoTp_z9nX_8G%4FFtHnxd34(^{5A5CjhpkWvCL8jZ-Z zj5JMgU6)6X9eExVgD82sw^}l#-^d3H^}ibc*xq zU;Tzr5_5EPWFWk~y=69=(Y7s8$_LYrMk5A;0dL>FH8cnzXxkRswrSgz<#Nf>r%zcf zmvmi6-}hLSMc?;CQN+o~3BK?1`0-;L+jekW_W@s0O6t0P@L;7BVHh%*OgKM3$FeMj z!y#c9a&vQo<2VMPzVCVS<_%Ixf*?Q$LErZzNkSaQoS&cLx-PbDBZ45LC}n3Wz?>}r?*8vT*L4CK5yT?MJYvH*LVL<(-bKsv)PQY zEREW$sxt6NDe3#3%galerXdIdeBU>d#Bod<$5d5i4)N0=@;v9}<_6#QnNFuDrO2`j zakILiC&B#I(-yWJgiS)Kwt$H&KnVaRAS;`;g;Aq2K<8#t?~Vtu=zZ5ytx zmZ-kR_dUwI%_gyAOM||+?8NdI-?@&rH z91ame&@>HoUDLJ=3X8PJSu7Sf!~Q@dTGsm=ON><<~X zfMFO=lodsmQRD@aWQL1md%LD>Tk5)|C<>A!VZYx~RTWv5;SC2wcFRy5u>Sdvzo{S2 z-ccx@VHoo2)hog*DFFr|p63yU;R9N1+a`RUq(TVF zvgG9C1k1AMx(?TMna}6O)Ha(nKm7QHqHM7L{NGYtl5O>pFAo?080!B#0=A2*Z#hN!aan zJbChj@pw#@Wn5lfGM!Ehr$6ljS_7Jj#bUv1He);G0mv1Yb?tm z&vWX!=E;*MD5YrI)=;Pa>bfSSyrV#`mF@&>+nSiQZQGR8IF9jspVexGloHo<8IQ+i zTQovl*RfbE=(^7I1RY%S`TRjBIRJ;lf!S$(PF{nGy6I1YW^6UQ;D)e7JDDT?AwKU(qQ@tC40jH)AT_($@APme7_0n6uh{&Fil%)L1?SgkSV3iwEFZq*L5^UQN-otB|-?| zI3|iB7K;UzWtlM3s@HGZwoOCwecyP3$g+&0C{RifMUg3^+RK}!F}Wb6q%2Dl*-4Tx z8jX1O?w!%da5!YU-5Ml*x_*7%b2uE3Qj%pE&f#z{Vv6IK#bRM7xDTZ+85)To2$)W% zESF1!5KJZ$27>{wU%xi~aDRie3F%NO%aX(4fY8$>Ny7E@wef@dd+T|gfmH~>U@$-_ zWoU?^h#&~KxVSJ;t~a7-8e{MGhtfaeMBO&*(*tK`XJ(hRIfY?}>$+rF#&kL*48sR4 zSy#5vXvAu@GWu(m>VjkXqtxEY-Xliuh&eccY&oJ zZre6eN*0U7gWrU@NzLbTMxzm)=aJ{Rxwh>(9M5IFxyAbXU;n6tH)MSBF=={WI-N2a zjm#9f5o_zz576s%|1kRS+SK&=HBCd;b?oCNkk)|Sq}^`Ea=9eW3qnuvcsAw#w$gn7zonU8 P00000NkvXXu0mjf52s_t literal 0 HcmV?d00001 diff --git a/textures/x32/technic_silver_chest_side.png b/textures/x32/technic_silver_chest_side.png new file mode 100644 index 0000000000000000000000000000000000000000..3a2ed4a3c0f00f12c31c24c0f636df73b4f67ec8 GIT binary patch literal 2146 zcmV-o2%YzdP)_Wm#C3g%ECbhO@mSj+qQ9Cmth#Vy}e~T9y1z^P)f00uMI-3>mr1pYg-~e?Hk;A+Jwk{F-RF5u9LKzS_s-B@+ctgQ<2Vj|-?Lh+c=F^4tJR8O z7?4t8Sr$@Ck|g2${G1>NI6FJTbsQJZ^B(XegrIHP2L~&qh@yzeWWvS81(szo8jXme zi1m7n>$(OZDJ5^;zC{Q@7>3xkjg*os%Sh9di;D|9&%<#X>@bX|s)}J42*Z%B>kOpF zoC8cI6PC**0BQOGwd?C^qjvp0JuUih4Sx^>ynFW!r4()3e)#|4a6kybY&N5=Yoqq2 zX$*Wq2&9xOmrJ^?BMd`=ATXVzX-b-=G)-fQ__T?#ELpGD1VO-bIz=f(Q54wg&6=vJ zxW2x|wrzqSFkI>z`Mz&HQ%aHNIjhwQDJ7%Ph#&~qZnxOBO&ErFo`+>w*tU&Q3deDX z2ylp_t>^=48-$1Lq*^B{PN2$2q8>|>-CyA zj+xD7oSmJSk(5&6IF7l55L8vg)zuZd-R=Vdmy1h^y2N%IhGAg2Tw+-k&d2v!yK|v3s`rJG!zW zj$;EMK;QR7QDn?Ue=eou=H|wr)3zz zb=`wybgZYt;Xql{ln92mH@IJ%r|eS?nLZ&2L(b37A9SN9LmP~qisM6dF~`eD&$_l@ z%d$w4ge=b}>IVC8O`e9h?;D5Ty!mP7_|A%kC>$-u{>69$X@O__Q7&t#a zH*gCfc=qfWQc8T^CyF9Ni?-D0<0iFjo2F?vJ3GU&EQVpg^E~GBxzWaMx8>*my``!< zoL8@2efRwNbK*E=KA$rT165Vg_dSmuJ)$g2Grz+yJfKF?qS5&5v(IRnhNfw#s*1^E zf|QcBZ8;nc48vf4J3F0`Wf^voBt%g}mSx=C-SPPGW5(k#MNzO^E}2fJW|@4N2ebw> z6^q4!*=)vmJVq(SYPI6@^wb0zJwaMmNs?e6JDm`M&1OTIrc5RiT-Rm0-I|rGRi7jY zS(cetCZ%K;2AZZ}v)Pbk8F3r~aCLQMTvO9iRh97?R|tU+!U(Ks8t(4yc=6%|+wInP zxegwAo}-lF;^G3=bxksA+ZM~RD9e(zZF&6o@ki(D4R!jjwsaxH2MY99=}ge~y;-x4 z~hz2xxT(82m+!gqU$=YuC8z#2hZ~i#QLTE!F64vl%#3OX0ss(0;;O| zpdYRH@pw#CRYuiXy+II|P_f_daU6%yXhfQ(91e#E;iN1}1MzVZ7DAX}b<);au(efc z$dpp1TV1_&HtqjOlCWGZv2B|)O-Yi3#bSYFS!S7O)$7Y~9FvfOATXX_7ezr;RVbxM zlEj2j?d4t9nY|!{pss6{%O#HEkYyQpo^yG5X*4n#jkvwNHAs9qeo{*A@9z;pP!t93 z{r$ZWQ<|nM77IhcF_b!_Xe7cgWICO)TCK2co5^HC9LKzV{o44$@dRlT(o3nXYwqvw zv30jumT_})WBlNFZuJ(_qZr3AN-0A_k|cy-$ko-AS><{nx~?{8{eI7OyJeK;>=!>FyArn; zTvpdh>Yr~I#Sv#`XPlgz;5d#c;5hYYB_HpGPgQ=LmUIC^2=4CgSglr+RZZkc&Sq2o Y4`eBC;L;OB?f?J)07*qoM6N<$g5l*koB#j- literal 0 HcmV?d00001 diff --git a/textures/x32/technic_silver_chest_top.png b/textures/x32/technic_silver_chest_top.png new file mode 100644 index 0000000000000000000000000000000000000000..353a11cf228541b4bf5a9ab84da13944a8f7f8c0 GIT binary patch literal 2226 zcmV;j2u=5iP)Mo(%WLq^<71~owC#G5ymk}LsLs! z*TwTZJkLXGO&Ep*K}fMJK=X7t5JxdpRZ^BEj^j|*HFaInG!3rjBOEA;g4^Yi^?Jiz z77)d4JfD(o>hslif1r~l-2Zop@B5g`bzQujiw{2`Mxzl)obs?uUfTq-h$`G-YpZkNf+3 z>bka@E6bA4pFfjj8Br9Wl;Z5{%(g-ZfvhB(^_nz{84U)As;UuMad>cm>$*6O!+btx zGMU)^n@ej=uh*m7?Q(p4Yy-Qli&DydUtV5vaByH-VX9NtHE|sC!w)|Y1_AAM8uMs;Vf8f;`V(1=d;<1OcPbh}mq0>$;?AN~hCdu~<-+B~8=dI1WMxj*gDF zzrROojpH~drReo~3d+yJ_1n&&vqQ)X9JSGIR1h*AnEB}Yd`3YowHTo@d`bIXPi>cb9&@Z` zQi|zxO26MHj$>A<701WNOePb2-?tbOj==UqYt3e};oZA;BuRo&%7QG4B0SHt+HOD@ z1c3#m5CSPB@87?t)9E0D;P&>GPNzd0$0(&ZKR>rv@H`Lka=Q7xPZ)-L`t*t6a7db_ zmS%6>yutH48`RLue8MoK-|wTf=EH{%^m;vf-)FU2u~;l@`K6RLVWrel3k<4FdFs06 z=H`aIy*;b#d7e{Ml|`_*Z@3Qd_U&8ZI7SG;#l;0#meFdpkW!N8IYm*}N}EeK;t3F8 z7;$;qroY*-L1c7~C z6a^O-7wqrv6GhQ0B{ltb9LKg(RJF7eG#;*L8qUwptz4SP)$MkPqKNr?Zna}H8u9q} zXnmgn*K|64g%70^Ns{o@S6>mw@t0}nx=*`_qKM&eNT<^w2m;EoL~G4*xkO6&?1lp_ zE-pxtgq@uo3r@q1Fbuzd>sb|FYQld= z=eaGN0hSRQgJ#EZ2*Z%cWWsDV!}ongqY?dnpC5nx(ONOBwbcNVfWeCy_u}^MmfOXG z;c&?1$+dg z3R%|Yp{n@!(@)k)IgVrJLKucDmrHhccZuWJE@JRuoY8DHBM1V*FtpS)*(OHZ6X=A&x@aXF)NCld>#1JUpb;YT-Bzzx?tG`}_NL;Jg&5)6>&e$OqVNw|xEe z*LEDQ*K0