From 07e6c4ae8893fb2e81bfcfa42897f65818cbdcdf Mon Sep 17 00:00:00 2001 From: crabman77 Date: Wed, 12 Aug 2015 22:49:07 +0200 Subject: [PATCH] added news doors 3 panels added tin door updates all doors textures 16px to 32px --- minetestforfun_game/mods/doors/doors3.lua | 590 ++++++++++++++++++ minetestforfun_game/mods/doors/init.lua | 26 + .../mods/doors/textures/doors3_brown.png | Bin 0 -> 174 bytes .../mods/doors/textures/doors3_glass_inv.png | Bin 0 -> 496 bytes .../textures/doors3_obsidian_glass_inv.png | Bin 0 -> 673 bytes .../mods/doors/textures/doors3_steel_b.png | Bin 0 -> 534 bytes .../mods/doors/textures/doors3_steel_inv.png | Bin 0 -> 410 bytes .../mods/doors/textures/doors3_steel_m.png | Bin 0 -> 471 bytes .../mods/doors/textures/doors3_steel_t.png | Bin 0 -> 490 bytes .../mods/doors/textures/doors3_wood.png | Bin 0 -> 674 bytes .../mods/doors/textures/doors3_wood_b.png | Bin 0 -> 318 bytes .../doors/textures/doors3_wood_cherry_inv.png | Bin 0 -> 654 bytes .../mods/doors/textures/doors3_wood_m.png | Bin 0 -> 301 bytes .../mods/doors/textures/doors3_wood_t.png | Bin 0 -> 307 bytes .../mods/doors/textures/doors_glass.png | Bin 128 -> 195 bytes .../mods/doors/textures/doors_glass_a.png | Bin 151 -> 225 bytes .../mods/doors/textures/doors_glass_b.png | Bin 151 -> 225 bytes .../mods/doors/textures/doors_grey2.png | Bin 0 -> 157 bytes .../doors/textures/doors_obsidian_glass.png | Bin 130 -> 206 bytes .../doors/textures/doors_obsidian_glass_a.png | Bin 128 -> 193 bytes .../doors/textures/doors_obsidian_glass_b.png | Bin 128 -> 193 bytes .../mods/doors/textures/doors_steel.png | Bin 132 -> 280 bytes .../mods/doors/textures/doors_steel_a.png | Bin 215 -> 476 bytes .../mods/doors/textures/doors_steel_b.png | Bin 257 -> 397 bytes .../mods/doors/textures/doors_tin.png | Bin 0 -> 531 bytes .../mods/doors/textures/doors_tin_b.png | Bin 0 -> 508 bytes .../mods/doors/textures/doors_tin_t.png | Bin 0 -> 235 bytes .../mods/doors/textures/doors_trapdoor.png | Bin 257 -> 367 bytes .../doors/textures/doors_trapdoor_cherry.png | Bin 312 -> 417 bytes .../doors/textures/doors_trapdoor_side.png | Bin 170 -> 263 bytes .../mods/doors/textures/doors_wood.png | Bin 130 -> 256 bytes .../mods/doors/textures/doors_wood_a.png | Bin 293 -> 432 bytes .../mods/doors/textures/doors_wood_b.png | Bin 290 -> 434 bytes .../mods/doors/textures/doors_wood_cherry.png | Bin 235 -> 352 bytes .../doors/textures/doors_wood_cherry_a.png | Bin 217 -> 314 bytes .../doors/textures/doors_wood_cherry_b.png | Bin 236 -> 360 bytes 36 files changed, 616 insertions(+) create mode 100755 minetestforfun_game/mods/doors/doors3.lua create mode 100755 minetestforfun_game/mods/doors/textures/doors3_brown.png create mode 100755 minetestforfun_game/mods/doors/textures/doors3_glass_inv.png create mode 100755 minetestforfun_game/mods/doors/textures/doors3_obsidian_glass_inv.png create mode 100755 minetestforfun_game/mods/doors/textures/doors3_steel_b.png create mode 100755 minetestforfun_game/mods/doors/textures/doors3_steel_inv.png create mode 100755 minetestforfun_game/mods/doors/textures/doors3_steel_m.png create mode 100755 minetestforfun_game/mods/doors/textures/doors3_steel_t.png create mode 100755 minetestforfun_game/mods/doors/textures/doors3_wood.png create mode 100755 minetestforfun_game/mods/doors/textures/doors3_wood_b.png create mode 100755 minetestforfun_game/mods/doors/textures/doors3_wood_cherry_inv.png create mode 100755 minetestforfun_game/mods/doors/textures/doors3_wood_m.png create mode 100755 minetestforfun_game/mods/doors/textures/doors3_wood_t.png create mode 100755 minetestforfun_game/mods/doors/textures/doors_grey2.png create mode 100755 minetestforfun_game/mods/doors/textures/doors_tin.png create mode 100755 minetestforfun_game/mods/doors/textures/doors_tin_b.png create mode 100755 minetestforfun_game/mods/doors/textures/doors_tin_t.png diff --git a/minetestforfun_game/mods/doors/doors3.lua b/minetestforfun_game/mods/doors/doors3.lua new file mode 100755 index 00000000..9ac687a8 --- /dev/null +++ b/minetestforfun_game/mods/doors/doors3.lua @@ -0,0 +1,590 @@ +doors3 = {} + +-- Registers a door +function doors3.register_door(name, def) + def.groups.not_in_creative_inventory = 1 + + local box = {{-0.5, -0.5, -0.5, 0.5, 0.5, -0.5+1.5/16}} + + if not def.node_box_bottom then + def.node_box_bottom = box + end + if not def.node_box_middle then + def.node_box_middle = box + end + if not def.node_box_top then + def.node_box_top = box + end + if not def.selection_box_bottom then + def.selection_box_bottom= box + end + if not def.selection_box_middle then + def.selection_box_middle = box + end + if not def.selection_box_top then + def.selection_box_top = box + end + + if not def.sound_close_door then + def.sound_close_door = "doors_door_close" + end + if not def.sound_open_door then + def.sound_open_door = "doors_door_open" + end + + + minetest.register_craftitem(name, { + description = def.description, + inventory_image = def.inventory_image, + + on_place = function(itemstack, placer, pointed_thing) + if not pointed_thing.type == "node" then + return itemstack + end + + local ptu = pointed_thing.under + local nu = minetest.get_node(ptu) + if minetest.registered_nodes[nu.name].on_rightclick then + return minetest.registered_nodes[nu.name].on_rightclick(ptu, nu, placer, itemstack) + end + + local pt = pointed_thing.above + local pt1 = {x=pt.x, y=pt.y+1, z=pt.z} + local pt2 = {x=pt.x, y=pt.y+2, z=pt.z} + if + not minetest.registered_nodes[minetest.get_node(pt).name].buildable_to or + not minetest.registered_nodes[minetest.get_node(pt1).name].buildable_to or + not minetest.registered_nodes[minetest.get_node(pt2).name].buildable_to or + not placer or + not placer:is_player() + then + return itemstack + end + + if minetest.is_protected(pt, placer:get_player_name()) or + minetest.is_protected(pt2, placer:get_player_name()) then + minetest.record_protection_violation(pt, placer:get_player_name()) + return itemstack + end + + local p2 = minetest.dir_to_facedir(placer:get_look_dir()) + local pt3 = {x=pt.x, y=pt.y, z=pt.z} + if p2 == 0 then + pt3.x = pt3.x-1 + elseif p2 == 1 then + pt3.z = pt3.z+1 + elseif p2 == 2 then + pt3.x = pt3.x+1 + elseif p2 == 3 then + pt3.z = pt3.z-1 + end + if minetest.get_item_group(minetest.get_node(pt3).name, "door") == 0 then + minetest.set_node(pt, {name=name.."_b_1", param2=p2}) + minetest.set_node(pt1, {name=name.."_m_1", param2=p2}) + minetest.set_node(pt2, {name=name.."_t_1", param2=p2}) + else + minetest.set_node(pt, {name=name.."_b_2", param2=p2}) + minetest.set_node(pt1, {name=name.."_m_2", param2=p2}) + minetest.set_node(pt2, {name=name.."_t_2", param2=p2}) + minetest.get_meta(pt):set_int("right", 1) + minetest.get_meta(pt1):set_int("right", 1) + minetest.get_meta(pt2):set_int("right", 1) + end + + if def.only_placer_can_open then + local pn = placer:get_player_name() + local meta = minetest.get_meta(pt) + meta:set_string("doors_owner", pn) + meta:set_string("infotext", "Owned by "..pn) + meta = minetest.get_meta(pt1) + meta:set_string("doors_owner", pn) + meta:set_string("infotext", "Owned by "..pn) + meta = minetest.get_meta(pt2) + meta:set_string("doors_owner", pn) + meta:set_string("infotext", "Owned by "..pn) + end + + if not minetest.setting_getbool("creative_mode") then + itemstack:take_item() + end + return itemstack + end, + }) + + local tt = def.tiles_top + local tm = def.tiles_middle + local tb = def.tiles_bottom + + local function after_dig_node(pos, dir, name, num, digger) + local p + if dir == 0 then -- bottom + p = { {y=1, l="m"}, {y=2, l="t"} } + elseif dir == 1 then -- middle + p = { {y=-1, l="b"}, {y=1, l="t"} } + else -- top + p = { {y=-2, l="b"}, {y=-1, l="m"} } + end + for _,t in pairs(p) do + local pos1 = {x=pos.x, y=pos.y+t["y"], z=pos.z} + local node = minetest.get_node(pos1) + if node.name == name.."_"..t["l"].."_"..num then + minetest.node_dig(pos1, node, digger) + end + end + end + + local function check_and_blast(pos, name) + local node = minetest.get_node(pos) + if node.name == name then + minetest.remove_node(pos) + end + end + + local function make_on_blast(base_name, dir, num) + if def.only_placer_can_open then + return function() end + else + return function(pos, intensity) + local p + if dir == 0 then -- bottom + p = { {y=1, l="m"}, {y=2, l="t"} } + elseif dir == 1 then -- middle + p = { {y=-1, l="b"}, {y=1, l="t"} } + else -- top + p = { {y=-2, l="b"}, {y=-1, l="m"} } + end + for _,t in pairs(p) do + check_and_blast({x=pos.x, y=pos.y+t["y"], z=pos.z}, base_name.."_"..t["l"].."_"..num) + end + end + end + end + + + local function on_rightclick(pos, dir, name, oldnum, params) + local p + if dir == 0 then -- bottom + p = { {y=0, l="b"}, {y=1, l="m"}, {y=2, l="t"} } + elseif dir == 1 then -- middle + p = { {y=-1, l="b"}, {y=0, l="m"}, {y=1, l="t"} } + else -- top + p = { {y=-2, l="b"}, {y=-1, l="m"}, {y=0, l="t"} } + end + + local newnum + if oldnum == 1 then + newnum = 2 + else + newnum = 1 + end + for _,t in pairs(p) do + local pos1 = {x=pos.x, y=pos.y+t["y"], z=pos.z} + if minetest.get_node(pos1).name == name.."_"..t["l"].."_"..oldnum then + local p2 = minetest.get_node(pos1).param2 + p2 = params[p2+1] + minetest.swap_node(pos1, {name=name.."_"..t["l"].."_"..newnum, param2=p2}) + end + end + + local snd_1 = def.sound_close_door + local snd_2 = def.sound_open_door + if params[1] == 3 then + snd_1 = def.sound_open_door + snd_2 = def.sound_close_door + end + if minetest.get_meta(pos):get_int("right") ~= 0 then + minetest.sound_play(snd_1, {pos = pos, gain = 0.3, max_hear_distance = 10}) + else + minetest.sound_play(snd_2, {pos = pos, gain = 0.3, max_hear_distance = 10}) + end + end + + + local function check_player_priv(pos, player) + if not def.only_placer_can_open then + return true + end + local meta = minetest.get_meta(pos) + local pn = player:get_player_name() + return meta:get_string("doors_owner") == pn + end + + --on_rotate(pos, node, 1, user, name.."_t_1", mode) + local function on_rotate(pos, node, dir, user, name, num, mode, new_param2) + if not check_player_priv(pos, user) then + return false + end + if mode ~= screwdriver.ROTATE_FACE then + return false + end + + local p + if dir == 0 then -- bottom + p = { {y=0, l="b"}, {y=1, l="m"}, {y=2, l="t"} } + elseif dir == 1 then -- middle + p = { {y=-1, l="b"}, {y=0, l="m"}, {y=1, l="t"} } + else -- top + p = { {y=-2, l="b"}, {y=-1, l="m"}, {y=0, l="t"} } + end + + for _,t in pairs(p) do + local pos1 = {x=pos.x, y=pos.y+t["y"], z=pos.z} + if not minetest.get_node(pos1).name == name.."_"..t["l"].."_"..num then + return false + end + if minetest.is_protected(pos1, user:get_player_name()) then + minetest.record_protection_violation(pos4, user:get_player_name()) + return false + end + end + + for _,t in pairs(p) do + local pos1 = {x=pos.x, y=pos.y+t["y"], z=pos.z} + local node2 = minetest.get_node(pos1) + node2.param2 = (node2.param2 + 1) % 4 + minetest.swap_node(pos1, node2) + end + return true + end + + + minetest.register_node(name.."_b_1", { + tiles = {tb[2], tb[2], tb[2], tb[2], tb[1], tb[1].."^[transformfx"}, + paramtype = "light", + paramtype2 = "facedir", + is_ground_content = false, + drop = name, + drawtype = "nodebox", + node_box = { + type = "fixed", + fixed = def.node_box_bottom + }, + selection_box = { + type = "fixed", + fixed = def.selection_box_bottom + }, + groups = def.groups, + + after_dig_node = function(pos, oldnode, oldmetadata, digger) + after_dig_node(pos, 0, name, 1, digger) + end, + + on_rightclick = function(pos, node, clicker) + if check_player_priv(pos, clicker) then + on_rightclick(pos, 0, name, 1, {1,2,3,0}) + end + end, + + on_rotate = function(pos, node, user, mode, new_param2) + return on_rotate(pos, node, 0, user, name, 1, mode) + end, + + can_dig = check_player_priv, + sounds = def.sounds, + sunlight_propagates = def.sunlight, + on_blast = make_on_blast(name, 0, 1) + }) + + + minetest.register_node(name.."_m_1", { + tiles = {tm[2], tm[2], tm[2], tm[2], tm[1], tm[1].."^[transformfx"}, + paramtype = "light", + paramtype2 = "facedir", + is_ground_content = false, + drop = "", + drawtype = "nodebox", + node_box = { + type = "fixed", + fixed = def.node_box_middle + }, + selection_box = { + type = "fixed", + fixed = def.selection_box_middle + }, + groups = def.groups, + + after_dig_node = function(pos, oldnode, oldmetadata, digger) + after_dig_node(pos, 1, name, 1, digger) + end, + + on_rightclick = function(pos, node, clicker) + if check_player_priv(pos, clicker) then + on_rightclick(pos, 1, name, 1, {1,2,3,0}) + end + end, + + on_rotate = function(pos, node, user, mode, new_param2) + return on_rotate(pos, node, 1, user, name, 1, mode) + end, + + can_dig = check_player_priv, + sounds = def.sounds, + sunlight_propagates = def.sunlight, + on_blast = make_on_blast(name, 1, 1) + }) + + + + minetest.register_node(name.."_t_1", { + tiles = {tt[2], tt[2], tt[2], tt[2], tt[1], tt[1].."^[transformfx"}, + paramtype = "light", + paramtype2 = "facedir", + is_ground_content = false, + drop = "", + drawtype = "nodebox", + node_box = { + type = "fixed", + fixed = def.node_box_top + }, + selection_box = { + type = "fixed", + fixed = def.selection_box_top + }, + groups = def.groups, + + after_dig_node = function(pos, oldnode, oldmetadata, digger) + after_dig_node(pos, 2, name, 1, digger) + end, + + on_rightclick = function(pos, node, clicker) + if check_player_priv(pos, clicker) then + on_rightclick(pos, 2, name, 1, {1,2,3,0}) + end + end, + + on_rotate = function(pos, node, user, mode, new_param2) + return on_rotate(pos, node, 2, user, name, 1, mode) + end, + + can_dig = check_player_priv, + sounds = def.sounds, + sunlight_propagates = def.sunlight, + on_blast = make_on_blast(name, 2, 1) + }) + + + + + + + minetest.register_node(name.."_b_2", { + tiles = {tb[2], tb[2], tb[2], tb[2], tb[1].."^[transformfx", tb[1]}, + paramtype = "light", + paramtype2 = "facedir", + is_ground_content = false, + drop = name, + drawtype = "nodebox", + node_box = { + type = "fixed", + fixed = def.node_box_bottom + }, + selection_box = { + type = "fixed", + fixed = def.selection_box_bottom + }, + groups = def.groups, + + after_dig_node = function(pos, oldnode, oldmetadata, digger) + after_dig_node(pos, 0, name, 2, digger) + end, + + on_rightclick = function(pos, node, clicker) + if check_player_priv(pos, clicker) then + on_rightclick(pos, 0, name, 2, {3,0,1,2}) + end + end, + + on_rotate = function(pos, node, user, mode, new_param2) + return on_rotate(pos, node, 0, user, name, 2, mode) + end, + + can_dig = check_player_priv, + sounds = def.sounds, + sunlight_propagates = def.sunlight, + on_blast = make_on_blast(name, 0, 2) + }) + + + minetest.register_node(name.."_m_2", { + tiles = {tm[2], tm[2], tm[2], tm[2], tm[1].."^[transformfx", tm[1]}, + paramtype = "light", + paramtype2 = "facedir", + is_ground_content = false, + drop = "", + drawtype = "nodebox", + node_box = { + type = "fixed", + fixed = def.node_box_middle + }, + selection_box = { + type = "fixed", + fixed = def.selection_box_middle + }, + groups = def.groups, + + after_dig_node = function(pos, oldnode, oldmetadata, digger) + after_dig_node(pos, 1, name, 2, digger) + end, + + on_rightclick = function(pos, node, clicker) + if check_player_priv(pos, clicker) then + on_rightclick(pos, 1, name, 2, {3,0,1,2}) + end + end, + + on_rotate = function(pos, node, user, mode, new_param2) + return on_rotate(pos, node, 1, user, name, 2, mode) + end, + + can_dig = check_player_priv, + sounds = def.sounds, + sunlight_propagates = def.sunlight, + on_blast = make_on_blast(name, 1, 2) + }) + + + + minetest.register_node(name.."_t_2", { + tiles = {tt[2], tt[2], tt[2], tt[2], tt[1].."^[transformfx", tt[1]}, + paramtype = "light", + paramtype2 = "facedir", + is_ground_content = false, + drop = "", + drawtype = "nodebox", + node_box = { + type = "fixed", + fixed = def.node_box_top + }, + selection_box = { + type = "fixed", + fixed = def.selection_box_top + }, + groups = def.groups, + + after_dig_node = function(pos, oldnode, oldmetadata, digger) + after_dig_node(pos, 2, name, 2, digger) + end, + + on_rightclick = function(pos, node, clicker) + if check_player_priv(pos, clicker) then + on_rightclick(pos, 2, name, 2, {3,0,1,2}) + end + end, + + on_rotate = function(pos, node, user, mode, new_param2) + return on_rotate(pos, node, 2, user, name, 2, mode) + end, + + can_dig = check_player_priv, + sounds = def.sounds, + sunlight_propagates = def.sunlight, + on_blast = make_on_blast(name, 2, 2) + }) + +end + +doors3.register_door("doors:door3_wood", { + description = "Wooden Door 3", + inventory_image = "doors3_wood.png", + groups = {snappy=1,choppy=2,oddly_breakable_by_hand=2,flammable=2,door=1}, + tiles_bottom = {"doors3_wood_b.png", "doors3_brown.png"}, + tiles_middle = {"doors3_wood_m.png", "doors3_brown.png"}, + tiles_top = {"doors3_wood_t.png", "doors3_brown.png"}, + sounds = default.node_sound_wood_defaults(), + sunlight = false, +}) + +minetest.register_craft({ + output = "doors:door3_wood", + recipe = { + {"", "", ""}, + {"", "doors:door_wood", ""}, + {"", "doors:door_wood", ""} + } +}) + +doors3.register_door("doors:door3_steel", { + description = "Steel Door 3", + inventory_image = "doors3_steel_inv.png", + groups = {snappy=1,bendy=2,cracky=1,melty=2,level=2,door=1}, + tiles_bottom = {"doors3_steel_b.png", "doors_grey.png"}, + tiles_middle = {"doors3_steel_m.png", "doors_grey.png"}, + tiles_top = {"doors3_steel_t.png", "doors_grey.png"}, + only_placer_can_open = true, + sounds = default.node_sound_wood_defaults(), + sunlight = false, +}) + +minetest.register_craft({ + output = "doors:door3_steel", + recipe = { + {"", "", ""}, + {"", "doors:door_steel", ""}, + {"", "doors:door_steel", ""} + } +}) + +doors3.register_door("doors:door3_glass", { + description = "Glass Door 3", + inventory_image = "doors3_glass_inv.png", + groups = {snappy=1,cracky=1,oddly_breakable_by_hand=3,door=1}, + tiles_bottom = {"doors_glass_b.png", "doors_glass_side.png"}, + tiles_middle = {"doors_glass_a.png", "doors_glass_side.png"}, + tiles_top = {"doors_glass_a.png", "doors_glass_side.png"}, + sounds = default.node_sound_glass_defaults(), + sunlight = true, +}) + +minetest.register_craft({ + output = "doors:door3_glass", + recipe = { + {"", "", ""}, + {"", "doors:door_glass", ""}, + {"", "doors:door_glass", ""} + } +}) + + +doors3.register_door("doors:door3_obsidian_glass", { + description = "Obsidian Glass Door 3", + inventory_image = "doors3_obsidian_glass_inv.png", + groups = {snappy=1,cracky=1,oddly_breakable_by_hand=3,door=1}, + tiles_bottom = {"doors_obsidian_glass_b.png", "doors_obsidian_glass_side.png"}, + tiles_middle = {"doors_obsidian_glass_a.png", "doors_obsidian_glass_side.png"}, + tiles_top = {"doors_obsidian_glass_a.png", "doors_obsidian_glass_side.png"}, + sounds = default.node_sound_glass_defaults(), + sunlight = true, +}) + +minetest.register_craft({ + output = "doors:door3_obsidian_glass", + recipe = { + {"", "", ""}, + {"", "doors:door_obsidian_glass", ""}, + {"", "doors:door_obsidian_glass", ""} + } +}) + +-- From BFD: Cherry planks doors + +doors3.register_door("doors:door3_cherry", { + description = "Cherry Door 3", + inventory_image = "doors3_wood_cherry_inv.png", + groups = {choppy=2,oddly_breakable_by_hand=2,flammable=2,door=1}, + tiles_bottom = {"doors_wood_cherry_b.png", "default_wood_cherry_planks.png"}, + tiles_middle = {"doors_wood_cherry_a.png", "default_wood_cherry_planks.png"}, + tiles_top = {"doors_wood_cherry_a.png", "default_wood_cherry_planks.png"}, + sounds = default.node_sound_wood_defaults(), + sunlight = false, +}) + +minetest.register_craft({ + output = "doors:door3_cherry", + recipe = { + {"", "", ""}, + {"", "doors:door_cherry", ""}, + {"", "doors:door_cherry", ""} + } +}) + + diff --git a/minetestforfun_game/mods/doors/init.lua b/minetestforfun_game/mods/doors/init.lua index 5fd34148..39e67c13 100755 --- a/minetestforfun_game/mods/doors/init.lua +++ b/minetestforfun_game/mods/doors/init.lua @@ -442,6 +442,29 @@ minetest.register_craft({ } }) +-- doors tin MFF +doors.register_door("doors:door_tin", { + description = "Tin Door", + inventory_image = "doors_tin.png", + groups = {snappy=1,bendy=2,cracky=1,melty=2,level=2,door=1}, + tiles_bottom = {"doors_tin_b.png", "doors_grey2.png"}, + tiles_top = {"doors_tin_t.png", "doors_grey2.png"}, + only_placer_can_open = true, + sounds = default.node_sound_stone_defaults(), + sunlight = false, +}) + +minetest.register_craft({ + output = "doors:door_tin", + recipe = { + {"moreores:tin_ingot", "moreores:tin_ingot"}, + {"moreores:tin_ingot", "moreores:tin_ingot"}, + {"moreores:tin_ingot", "moreores:tin_ingot"} + + } +}) + + ----trapdoor---- function doors.register_trapdoor(name, def) @@ -540,3 +563,6 @@ minetest.register_craft({ {'default:cherry_plank', 'default:cherry_plank', 'default:cherry_plank'}, } }) + +-- door 3 nodes +dofile(minetest.get_modpath("doors").."/doors3.lua") diff --git a/minetestforfun_game/mods/doors/textures/doors3_brown.png b/minetestforfun_game/mods/doors/textures/doors3_brown.png new file mode 100755 index 0000000000000000000000000000000000000000..01cdec92540abb0341d8989ca7499db5b88bb5c4 GIT binary patch literal 174 zcmeAS@N?(olHy`uVBq!ia0vp^j6f{F!2~2D{x&@T2^0spJ29*~C-V}>VM%xNb!1@J z*w6hZkrl}2EbxddW?SB&28dFZAo;X80e^ewerEFAGp9 NgQu&X%Q~loCIH6~G2;LL literal 0 HcmV?d00001 diff --git a/minetestforfun_game/mods/doors/textures/doors3_glass_inv.png b/minetestforfun_game/mods/doors/textures/doors3_glass_inv.png new file mode 100755 index 0000000000000000000000000000000000000000..070c98f6bd88e747357e2ef5852f65e02ff69e00 GIT binary patch literal 496 zcmV<4i5a|n*XS?EyP zAZy5{D0RSkacs_@-Zg+H=WK*#P6pK4ALM-kKL$^4W z#Pht>bUME=O=1s+pC^%O3IG5&mn7Opsl-WAkVpWf6i3@R=R}zY+U;T4aSo58Cn1DW zZnc7v5)agBdxLzQ9Q1mV3rZ!fR?%{`(iVikezWO2N<6?=Q0n(5C(*ue@wh42IEXa( zOYxgXc*R)I_z4om_5eZ%F%~ooLpL$jwq~;h2LQ0FT-~g4?4}*Xp^)PnX|1b|8#It{ZSN{l4qKJpq zn^4xvc3H;`4>p*G20C)sQfGSU*c(mT#phvW)=}MF%IiQ36iSjNzr6R&=lu%Y@J3`# zwk%7SwgUh-4*lPbnYMGWuhZ!eCDmG%C4>-YHow|J2qd3Iqg_nC-@U&mWUiT!EnyWd`v%R&P%h~rG3QY_YLO0m`2NK-rH4MWfV?+His zgvuAAt0Yvq7Fkdg00002VoOIv048{V zrq2KX010qNS#tmY3ljhU3ljkVnw%H_000McNliru-v|s13^k|3=wAQ;0jEhsK~zY` zos~h3+b|489~mhvX4y@FIa9CF^Yk9YTw{*VZGj%3?ZlSNE<#I`V>ixl6GSGzsLxMQ zUJX7m@`YwEWX=ps7$AV42+@S!{9+(22j9cT8Bk6Lb9Fzh06-8RK}GDcEWz=R>_72wvC^Y(|TlZ63L{_DDL#_WO% z3`dgg1Jo)kb*GB;5ms~zb(TG+jWcm?-4Bc5x&ffxLlo|VunAzKUWxl<+aggYfL^=M z?uIMp)&1JK#SZaaI$kn`udND?KSSfM_+L8=A+h15*7Ok>Prx?{ntcj!r)YM*si-07*qoM6N<$f&k^?4*&oF literal 0 HcmV?d00001 diff --git a/minetestforfun_game/mods/doors/textures/doors3_steel_inv.png b/minetestforfun_game/mods/doors/textures/doors3_steel_inv.png new file mode 100755 index 0000000000000000000000000000000000000000..a87e23bda936198c649e2ac0860389c2439cb4f4 GIT binary patch literal 410 zcmV;L0cHM)P)kdg00002VoOIv048{V zrq2KX010qNS#tmY3ljhU3ljkVnw%H_000McNliru-v|s0Fe$0VU`0Q4?GCh$f_U`jYUQ_^b0TlRNJHyd47Q=V2x%2B0@P0Ep*+sJ?2C+Ek zdLYDojQg~{UvfYav>o4}tTo{2D0sKnzf5S0voHJ3Js$`pVp zV;h4^U%qPSlg$f7uQ^C~VIm$Bwvy3m%nJzy6&C=knAsp+u?uTufta%i-`;6y5m*3A zY80oQT8@SaEPq~$_=KOM0&jqzD1yU9hsnq3p5xGPZHF^xLTykQ+bC=3yG4Q3Z~+(4 zsr6j=t**4gC$XWWp{AxmX}P!TKyj3~kdg00002VoOIv0K=%@ zus8q!010qNS#tmY3ljhU3ljkVnw%H_000McNliru-v|s7F#=;Li+d3daX|Q$SD@0CVVH<9G#3O^Z-AiC=^1E$0AfTR`Hp+X2#x!Y4B7-zW&4hJ64n zd*F&=rvF#wn;>WhB#QtJ9vGI}Vh@H~{0~4E(5NVFA7CCtjpC0(kP}ia!+<4fJt^kdg00002VoOIv0K=%@ zus8q!010qNS#tmY3ljhU3ljkVnw%H_000McNliru-v|s7FEWv_gy#SN0eeYAK~zY` zos~gO!!Qs4~sZ)8tgQwcZog!&;0pg zn^%Pou2}+r1$a2yFbJS1S`0P_4L|(00Jl__vu$7^yghRybQw5=nvgrE1~s|#EmZ;l z!)J-8u%yiVrdHOj%rv!Uk7Wp3w$up zATe!b1#7RG00gRnh*c3H5D0)cKsYV#fkt@ofW~^30aUmo;yC;;!vj9~;D7yVwv%$U zgwKF=1s`r^xNzV^C1BVU{Jhr*03T-`>cyRS!FL)c2FrKh;CtrZ-SA$TYN9FZ**Fun zb(O)Ov#0S*g&L?hcGH+=X^MF{1f@yCG-ndFBO^x*+-%MB&Jcg`3ZL;hgsa0Nfab6C zxd85puvD~wkB`}sHm0mEI`L9*790l9%rxGd>Q(E!oWc9o*+;5c+QhU!P_IA(60m)z g+QF-X6@v%<0LRjGuNA8&+yDRo07*qoM6N<$f@)9AfdBvi literal 0 HcmV?d00001 diff --git a/minetestforfun_game/mods/doors/textures/doors3_wood.png b/minetestforfun_game/mods/doors/textures/doors3_wood.png new file mode 100755 index 0000000000000000000000000000000000000000..2066a66de7a931a0e1bbe26453bc6aa2d2efae91 GIT binary patch literal 674 zcmV;T0$u%yP)uuUT%@4rr}!Lx_miU+>b z_+ivFnmKl#gp;{#^iNau4((O|jK~uI-CA*Pa=@Dh%-@K>pc7O_-TIO6=^`fbC?Mfx zdyc+79s)TBq&AO06o@|A?_dP3XO^FnoRo$=vz7vs(Dz))HK}7!n++P5nFLoeG6$Mq4<@L6% zlGQ_%h8xU|YFX(D5Dh%w6r58|4)?IFsbW=(Krb|Cxo?d`B!rUpj%A^`n%V6ExS}`Q z?*)w1+^GX~6sn4Ke+cmWd)!WMC<47ukScGrv2_y+vOypD8&@#jnZSP#v;Y7A07*qo IM6N<$f-qnx5&!@I literal 0 HcmV?d00001 diff --git a/minetestforfun_game/mods/doors/textures/doors3_wood_b.png b/minetestforfun_game/mods/doors/textures/doors3_wood_b.png new file mode 100755 index 0000000000000000000000000000000000000000..1b91064d417abed892b1a244b4a144e0b8ff7afa GIT binary patch literal 318 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1SJ1Ryj={W7>k44ofy`glX(f`u%tWsIx;Y9 z?C1WI$O`0h7I;J!Gca%qfiUBxyLEqng6t)pzOL-|Ie2&lWJ}m&e*lFfN?apKg7ec# z$`gxH8440J^GfvcQcDy}^bGXO{`4f@2dbIl>EamT;r(`sBcFo^x9qhl1G|_mvCIJ_&qQ3@t(Xc-el1tn^`eX6YiGkrTgHF?ExH_96nFw}a~)7; z<@c;>3NhmRaIk2B>IZIfMyc4w_=t~>F4nrP2yax3-OF&2ft`~-a|+1M44$rjF6*2U FngB6@ZP)++ literal 0 HcmV?d00001 diff --git a/minetestforfun_game/mods/doors/textures/doors3_wood_cherry_inv.png b/minetestforfun_game/mods/doors/textures/doors3_wood_cherry_inv.png new file mode 100755 index 0000000000000000000000000000000000000000..20c3f4746bda49cc1c68d022bfc66ea6bb369394 GIT binary patch literal 654 zcmV;90&)F`P)} z0E4H}QRx5x010qNS#tmY3ljhU3ljkVnw%H_000McNliru-v|s82PV^b=(PX<0vkz0 zK~z}7?Uuny6j2<_P0J8UPwluxkxB17yG^%28@|iG=s(7Az=)11W zEr>?%49FC)v|a{av1|a)9Xaj0{<`^14T3_?pom5~TshOW00?S&eSKk|pBwjYH6KAK zIpJ#cz9UG4&$wE>8-g#DiaG@0P}tRS-$GMKHB;aq@V4BmAD+BYgTNbJ6pku2q7%Om z_=Ra(1T|d>fi7EdB9&~&36&ry#;%Ya$q-!&lF1FR`EG?wZiw#-<+`RvG9)^?*;gm@ z>cMqFNB^4>I(q1YhfXMiV9y0odB8 z)%SDpft^Pv;e@)Z6V4ZB+1jXavOTnuZ2!Igd3}|*q!UUZc(eMEYf}Z5YGvYguJU5} zbzK48uPp=csj{M`fK=!l0DZ^f0Gw@&xYWtVj&-P+f>LrqMB}l)*#8+v+gdr*f1a-5 z<>nhvp=VH-MpaCuZwu3?iU-%nef8y|r)rF-udNe+i{UQUtM{t1{{biJ6R=At`xuS& oX8+mRAGXC2O=oyC->?(@1hd?V9&++`fB*mh07*qoM6N<$f&t(w)c^nh literal 0 HcmV?d00001 diff --git a/minetestforfun_game/mods/doors/textures/doors3_wood_m.png b/minetestforfun_game/mods/doors/textures/doors3_wood_m.png new file mode 100755 index 0000000000000000000000000000000000000000..a081616056f6e207ab7ff49c6630958e1adbb56e GIT binary patch literal 301 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=fdzmUKs7M+SzC{oH>NS%G}c0*}aI z1_o{c5N2Gfytfo6$X?><>&kwggNIi@wuDXg2T(|JNMI6tkVJh3R1p&&6cuS72| zwM4;0&p^-YPfzlFpqd$;E{-7)?r*0Uay1z6xLRA66n|v+%EEW=;Ngn@OQjTroU&S@ zbU!iYXLy`gtXX>c#p1NNzh4*`^2QeOGcs~GFfa);IP7Msw&3oY(s1>#jnaV#rd@7} zt6%(?>A>-jf$8nOMyU)&CC!AV-aADW)D}4AGFrYCS#TtpsVK}^d%}n2m5uXCf3rn+ pJy+c+#j!>I!2iuh{aI`7FlZQAX>HkHXa;m6gQu&X%Q~loCICOmV-5fS literal 0 HcmV?d00001 diff --git a/minetestforfun_game/mods/doors/textures/doors3_wood_t.png b/minetestforfun_game/mods/doors/textures/doors3_wood_t.png new file mode 100755 index 0000000000000000000000000000000000000000..918a7a30806f5af4d6186c30227c3231ee8a10fa GIT binary patch literal 307 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=fdzmUKs7M+SzC{oH>NS%G}c0*}aI z1_o{c5N2Gfytfo6$X?><>&kwggNIi@wuDXg2T(|JNMI6tkVJh3R1p&&6cuS72| zwM4;0&p^-YPfzlFpqhD}E{-7)?r*0W@--;%FwB&_5mUpk@4!L(9}@rfFYwhk*d#SY z>zLWj#!I)lCoEVN7k$cRTi`kt=j$#zt5|vr_ccT-%z4VH@NtTR#p-+34bzq`++4zopr0GE$vy8r+H literal 0 HcmV?d00001 diff --git a/minetestforfun_game/mods/doors/textures/doors_glass.png b/minetestforfun_game/mods/doors/textures/doors_glass.png index 49ec245c1672b6c51664c1f4d7327e501d71fa59..b76a55770f71807db66f88218a94d7e2bc75a2f2 100755 GIT binary patch literal 195 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnH3?%tPCZz)@&H$efR|bak0|y>IeE9LoF3Uwg zLB^6GzhDN3XE)M7oFs2|7lsa2Sr3r%0*}aI1_o|n5N2eUHAey{$X?><>&kwggGZRn zc+m&#SwJCUPZ!4!iOb0e2|TP!>}+f*ZOkmn#xtZYNb*Q!@GNIr<`&Y{%;vM3O|JOD g+eNFZId1YXR8NuTKkm+W0jQn9)78&qol`;+00_7-MF0Q* literal 128 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!93?!50ihlx9oB=)|uK)l4KXBmj!-pT!XL5%C z1sO|%{DK)Ap4~_Ta#THC978ywlM{G&Qxg(coY>sd1P)%{P!SPnWMOyWad{BV9?Zlr X=`r&rp9bSVpaup{S3j3^P6p~#Ytkxjhhd?JTJJMS`v(3)=bTL&2!HvQ)OzC13F186LR Mr>mdKI;Vst0H^^#bpQYW literal 151 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!63?wyl`GbKJe}GSjE08{L;PL(YAI_Y4apcHj zZ<&Y_Kq1DGAirP+hi5m^fE+VV7srqa#^eMRW&ze@!vzd)n0yq(<|MHsvj`tbY+K1# uXn01!nIVzWiIux+Yet^Zu_%p(jSQNh3_hmZPG5m0FnGH9xvXpC zV@Z%-FoVOh8)+a;lDE4HLkFv@2S|B=M`SSr1Gg{;GcwGYBLNg-FY)wsWxvnCBg`tH zn%F1_6teSlaSV~ToScwwX4WjpR|gI>94Tl>sNq@0#^IKFV5vl>DZ5L+a`z~Q2i#HX`09BJ%(M diff --git a/minetestforfun_game/mods/doors/textures/doors_obsidian_glass_a.png b/minetestforfun_game/mods/doors/textures/doors_obsidian_glass_a.png index d5ac83d09d4f978330381944e2ca09138254aebb..203603014c0cb7e588031cc4eb9e8008170d7a4f 100755 GIT binary patch literal 193 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnH3?%tPCZz)@&H$efR|bZ30RaJdHN$FkyE>pC zV@Z%-FoVOh8)+a;lDE4HLkFv@2S|B=M`SSr1Gg{;GcwGYBLNg-FY)wsWxvnCBg`)M z&%|vVP{`2J#W6(Uaxw=mZ|qhP4}$}ej64YkyjYsK4@NLdR_b)@iM1$Ayw!JvL*Xcw d1+%gV!+vea{SW>K)&n&&c)I$ztaD0e0szG6EK2|Y literal 128 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!93?!50ihlx9oB=)|t{_1H0eLk;Q!^h?AcwIe z$S;_|;n|HeAV<~H#W95AdNN1vEU8lu4jeeZp*}-G%0Y*vaYC*`*rAqHy@EL+3|_lA VShk1sB>^=sc)I$ztaD0e0sw#{AIty% diff --git a/minetestforfun_game/mods/doors/textures/doors_obsidian_glass_b.png b/minetestforfun_game/mods/doors/textures/doors_obsidian_glass_b.png index d5ac83d09d4f978330381944e2ca09138254aebb..be8de36d5de32e2b57dda20cd5097a29d5bd133b 100755 GIT binary patch literal 193 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnH3?%tPCZz)@&H$efR|bZ30RaJdHN$FkyE>pC zV@Z%-FoVOh8)+a;lDE4HLkFv@2S|B=M`SSr1Gg{;GcwGYBLNg-FY)wsWxvnCBg}5T zr|sS$ppc=bi(`ny;8c(F8dAB^=sc)I$ztaD0e0sw#{AIty% diff --git a/minetestforfun_game/mods/doors/textures/doors_steel.png b/minetestforfun_game/mods/doors/textures/doors_steel.png index 042a1bc061e862a24b0a2caae6370a4f746a1eb1..df48c80308fc0467316aea51ca6a4316786c0d6b 100755 GIT binary patch literal 280 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=fdzwj^(N7l!{JxM1({$v_d#0*}aI z1_o|n5N2eUHAey{$X?><>&kwggGX46@&Dqu9YCR_o-U3d5r^M~9TYsQz%#k}?y21d zZS5Zih3An;w;=Et|%&_qd3UZ-d*G zhtpcF1ZCe2V`@Z8W9LK@$JYBwS9^1A7053co4n26D_p_qc@tWv8Azzl|FprSw z#&=z32m`bt+MB-br3A~eq`nYBYPl9v3{r$)D2;ob0Yc6ZCrM(R4Xo>00KhN|0Dv@2 zFXfYV@;o<$fpuLE_xNgXji_SVHmORcX)=TXUY~d4Dq}Q1F;NtSVLtFz4craxl;-&W zuUpzPo!6`KKaQt5V~o)N*8({lN22n4%GXs>5Cn!Xz@3T^WLb7zu*n-_Qv22 SeEGTn0000+MYV2v}jV| zoNHD2Tc>1Q62JB`VUg6ilfs2<`E?1eSSLDECBEQ|KX7f~)Ng7<$8!_9rXCkR`lP}8 z%F)TQcPQNPzOMV%;UB|4#;ltiJB)Vm@Yrta%ACCZbCB;#LB+0}bL!SMPCNan|C|-b N#h$KyF6*2UngFWeSM2}* diff --git a/minetestforfun_game/mods/doors/textures/doors_steel_b.png b/minetestforfun_game/mods/doors/textures/doors_steel_b.png index 8b77b2b3727c12d0d6eb075bd144316603ea9814..a46bd754fd9c0089b878b0da9db55cfd16fbb4a7 100755 GIT binary patch delta 339 zcmZo<>Sb2!4DfU3<&xrJU|`_&^l%9R(h4BV!3-o_mUJDPsOVbHnB?v5!qCAg>j4zx zEbxddW?{@Ir`FmM|Qrp(o(c|F1^mVL?+Mc#~p!6e-SH}*H&WNdNsnn zx&1l(J5`cfsov$cT$8HfN(Gi@bJAIS7dF|3dTKu3eL|d3GfBlMfLU3|t8?e|4_Z01 zzZ)jKT$%7-b5jRrfWpJ**0?7Q8$_19P<(ho!6vIhu&6EJY-E%BY-h*dKV6sKRvx@{ z#prKy(2VoNZU+)?rmcIhh=JqnE&i4ug(Yq)JEkPnpDDfK%$Td0mBDgdci+q63Q?D9 i$2Q%F-Z*vP2i6m-L}brJU7Q8=M&L2-L;)FYQhCRDI*L*{D?)UfNud`P5 z&3(x}eesLHY~%AqiZ4&dSW9QIWjk+s<>IQgZ3&0f+$+;;o2Si7NMd>7#%ydZ?>)hI yx!w#>nL9pz1J{XOR$s4JA@j0=C)Q-uY5Tq1PO%RXg`NVP#^CAd=d#Wzp$P!&gGyWg diff --git a/minetestforfun_game/mods/doors/textures/doors_tin.png b/minetestforfun_game/mods/doors/textures/doors_tin.png new file mode 100755 index 0000000000000000000000000000000000000000..0e4f405009215509a2c081bb05fba212ee200cd4 GIT binary patch literal 531 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=fdzmUKs7M+SzC{oH>NS%G}c0*}aI z1_r)EAj~ML;ne^XlqhkHC<)F_D=AMbN@XZW%*-p%%S$a$Fwry6GyBt%e4l}VaiXV- zV@QPi+v#V$4hIOd{dE!3l-O4|#>yIyRZS71;T|9S*P|S6w?yj!A z`|4BDiu29atTewC#JMheq3cmLjnqA2vsVA~dEj0DWGQ3A_2dhSf><<|L>Rjm{;M7M z`gyjGk8j!L3EmB1>FGL)*njB8^*eTRxtw~s=}gF~D+wYXZWq_q@70$qEu@S-EMVXJ z>&;h*Eh`+JJbLIl>0YNy{N0l`-zFPuQ2W(W{=zXoLfF_LIXn78X>;CxBL?RM=YPrV z-N`253Jgu_)*nTyHLw2MncudrEiU#s$e14t3$|@ixqS810h#ZcySLUbr`WPt|69Sx z_uKs8>uqT>TJBmp_`m3tWtel{-m`YEslo9VZ-0E`vn}fd`6TIR3719r?&6lj-Rxk8 ziZVZ}xf{4*r){;s*W*W;V%zj>O<8w*w`LElKPzF7ddw?NSb}}MdCwF(MwQY-;__`q RdcX)|@O1TaS?83{1OO~L<5d6v literal 0 HcmV?d00001 diff --git a/minetestforfun_game/mods/doors/textures/doors_tin_b.png b/minetestforfun_game/mods/doors/textures/doors_tin_b.png new file mode 100755 index 0000000000000000000000000000000000000000..ec8e41fc313cf509297ed0a08fbfd13c23d7c221 GIT binary patch literal 508 zcmVVGd000McNliru-v|s7HXWg05T*bC0f|XO zK~z}7)mO1JhR`7yI`jv;WGNIhx!^g_FX$(9@79m#7Zf@Nn#mBz;>ADE zAwx5SfCndYJDrgg$v=+Lgvv0c+cmVQ^0WAW5&1Y|NN zi@+(p))FAwZOiJpe-pF<(zItS1>=WD0Dy=Sh&aJ+TUNsdlm_i5V;Ca<0AHUU0D#H! zOEs6yrnNPyCn`w-l=mBiBYO&TL{u_5LNcKGElUF~WORgF0lf*>2wiL?tP#i-bBH+E z6U#6NvHn>)ZD?9M2uBccf^0G8M_^SJh@!|!Vi<(T^BlMLcgNEJk&rFdgVpMyu()NsdC{WhRbg{O;SNW|e}o!pH7=M5SfIujcX zo+vx;lG$1^;sUGh+MLX^hqI<`mVAi9 literal 0 HcmV?d00001 diff --git a/minetestforfun_game/mods/doors/textures/doors_trapdoor.png b/minetestforfun_game/mods/doors/textures/doors_trapdoor.png index e92c8b2e1a8aa8593be3e37a933ce4ea1ab58b75..1f3ec85e875c577b64c6f4ba468ff37571f4e23b 100755 GIT binary patch delta 286 zcmZoERLtq!mDzgBeJ=Ea^HnQ8BunG0EHAg`tC0)&nTW zS>O>_%)r1c48n{Iv*t(u1=&kHeO=k_bMOdrGr2W{z6A=c^mK6yu{b?<;%T8~1s>Op zEn66mg#7)VuiGCLE5U0kt!AA5tS#pAj)NL4jt}NCUf|R_{N~Osr?mN1EWwiQ?**Ul z^u27t6QyWBwL~JfZH4dYMdIH$T;4nHxZxk6+bP0l+XkKE{JAM delta 176 zcmaFQ)X1dR8Q|y6%O%Cdz`(%k>ERLtqy<2jgBeI_=<)|oRE(}K@N{tuk+>Y&_fY7t z0!Q;zg)Xb~yZ8P_x}T0MJv+bPzGD+N|IP>Ivh122g-7%+rn1c`UVkX~?OT5bD^rIn zcK_}@2zt-!scBkp-qPHfQG#{(Attp=JzCBti_d9li|lba`A_2i)&q;DonCdfwDI0= bwz`}zEZu?WmW4n!FnGGM`MIofN@xNALT*A8 diff --git a/minetestforfun_game/mods/doors/textures/doors_trapdoor_cherry.png b/minetestforfun_game/mods/doors/textures/doors_trapdoor_cherry.png index 85a9e95afaaa19fb7edb9ca7b64ed4650bbbcbf5..5db2b12b0666075b6997c34b82f9dcfcc17f769e 100755 GIT binary patch delta 371 zcmdnNw2)b+Gr-TCmrII^fq{Y7)59eQNGpIa2Q!d#S<-b3NZADVgt!9fi58aiyE=c& z0Wuj&g8YIR9G=}s196hP-CY(-A` zKguU339&L9U(#pzrL=yoM5Ll;U9?r$S@qKGo-cD!8)sel zr4?Is?zx^F>(XbH9H))WAJe#+c2D~8UY&^7bJjAnY*=^hqEK(```rR84PrX;mPngw z1TI){f2ZuVgw!ho4h*QPb6dZcjkTaVoK(kc3dJ~Z@0b- zf5+eG)%!TZJ7)9dc78>c8i#I$zUPPARXKi%hAy<<|1SR_`>HL<2e%#D>;?2IgQu&X J%Q~loCIBSuiDUo( delta 265 zcmZ3;yo1T2Gr-TCmrII^fq{Y7)59eQNDF{42Q!e=(B%&XQXT<5A+A;K$@O08D?*z$ zCG}k?Ts~39vi?+Y#1o)2Ye|qFNErjep=`E|Kx&q!i(^Q|E#LmvLQaYtEnh1vIg@5e zy#K#UcX`^Y*@8bAcYCi$?z#7OVbg^fkq1|vN@!hq`P)6E{?xRr#+JT0zNOEmY|B}5 z<;mOttG?c;MXL>u6ke7jYw*tv8%ld1UM zEM-lmCoi^5w+_3pTYJWH%v9c(!rx3HT0juBWS? J%Q~loCIDCIX!`&F diff --git a/minetestforfun_game/mods/doors/textures/doors_trapdoor_side.png b/minetestforfun_game/mods/doors/textures/doors_trapdoor_side.png index ed0cd99c31241b6f9cba8dda27b3b53b641e5a7e..6e316c14b596be7e5ac39b8c3337b34745c746de 100755 GIT binary patch delta 243 zcmZ3**v_Qb8Q|y6%O%Cdz`(%k>ERLtq!mDzg&9aThNK^#s3=#@nB?v5!qCAg>j4zx zEbxddW?o7qM8;N&2Tf200BJYJhxhDQat09v$!RD!; z&*6fpel3cgyN_LO?FznfQ)|!W_T4NqRwP^w-;!hfK-uE=%<~_VF9aE`?D+h9heK=l kc8yQ#VvdRy-LDguSJ4P%l)ZoNH_#~zp00i_>zopr0Q37(VE_OC delta 149 zcmZo?TE(c?8Q|y6%O%Cdz`(%k>ERLtqy<2jgBeI_=<)|oRFumO^K@|xsbKUy!^m|+ zL4^5YVcom>XQmmuYZX+w5_2ycKACsZLuZq3X4f&9;1{#J-4kVPPAC6=5wk~?{b$h2 y&Edvd?F??uYM*m*kHOSx%So1#6b;wdN7eb9W@`NK^MM}FCI(MeKbLh*2~7Ypy)|e6 diff --git a/minetestforfun_game/mods/doors/textures/doors_wood.png b/minetestforfun_game/mods/doors/textures/doors_wood.png index d3a62ab156db2d81442bcef039fed5148d09e9bd..a0982a77b8fbb71f024fa986646e8003e61e4416 100755 GIT binary patch literal 256 zcmeAS@N?(olHy`uVBq!ia0vp^3LwnE1|*BCs=fdzwj^(N7l!{JxM1({$v_d#0*}aI z1_o|n5N2eUHAey{$X?><>&kwggGX4FXYYcuwm_j?PZ!6Kh{MS#2bjH>m;N&jVBm|d zjyX_n%~&g`uMP14V;Z3_+I<)N_aW z^EGijxA zPBUH9k(m5hXU=k+mV~!DXSQy&U8b-_+;)C_ZHlnPG7SccaIdw=9=;X4JPZ@{MOc-N zOg&j?@+W+?>qCoM8|;pVv|f9)b8q>RsN^RX7BLu@ueuiW?$*x#oE_gq@4JXEo8NIL zB1)MpMV14E((O46! R+zj+FgQu&X%Q~loCIA|_k3awb delta 237 zcmdnMyp&0&Gr-TCmrII^fq{Y7)59eQNDF{42Q!e=(B%&XQmz3$A+A7rqK;Gj>F`bb zKqg~JkY6x^!?PP{Ku({hi(^Q|tGTmkWN;J&b zyue(b`36J!d)2!li{&S9Z_a+_p2RVmnfZ0ddgc_#g}RTM=1kjYBAZq>Z)$?1NA32> z5r40|a7bF)`*UZJSY7&wZJ*vRiPg4Pux{IZue2lIzR%$Owu_~?Ic1`eaZ_344$rjF6*2Ung9UmS`YvL diff --git a/minetestforfun_game/mods/doors/textures/doors_wood_b.png b/minetestforfun_game/mods/doors/textures/doors_wood_b.png index 14ca680c56e3dfc9a653a9fc08915282b5b614ec..8f2d44c0717e1b652bea468083c1b69aed0b285f 100755 GIT binary patch delta 364 zcmV-y0h9is03g5=X4 delta 219 zcmV<103`pi1EK;UiBL{Q4GJ0x0000DNk~Le0000G0000G2m=5B04OaFQ;{K2f161} zK~#9!MUPhw1ThFh9SEdO$&~wFb&Xcqec~fB#SW&v*OhZl2}CcP+qSugxYx?(O<^tj zQ5U9|BE~b>Q$rDRQ58i9XgJ-RH$sG#dV^DR_=3qB`{*MBUu9QA(U!DUmtgv$t$F3;<002ovPDHLkV1g7%R`37- diff --git a/minetestforfun_game/mods/doors/textures/doors_wood_cherry.png b/minetestforfun_game/mods/doors/textures/doors_wood_cherry.png index ef355517cb3300657e5b1c6693630b16ed285035..619aa8d0a0bdea580f754055f949bedd4d34eadb 100755 GIT binary patch delta 280 zcmaFO_<%{VGr-TCmrII^fq{Y7)59eQNGpIa2Q!d#S<-cEqGC`zW0JSK3quF1tOrn# zv%n*=n1O*?7=#%aX3dcR3bL1Y`ns~;=im{RWU?z!wF3$*_H=O!u{b?<@@>8r1s>MO zz;}!O{+}N^>lO>srBwCIngpST1p!?*%-$y-v_G;U%0*GNVGiTBx%-~))QaF1VCpSq z_`X+b$rNp;9eL|Q7ye^CS2EezF}vaMg5*afj-5@0mb;xQUYKceUHc^DYU>dsV6eiU zQT)GfPa$t?z@h_=ANQ#J)Jk~z>a^4sN1)s;qr)o8nXcCfZB;0E8WAO4!ff|6zE%JK XJSkao{XGwW?q%?F^>bP0l+XkK#*Si_ delta 162 zcmaFB^qNtzGr-TCmrII^fq{Y7)59eQNDF{42Q!e=(B%)Fs2Eg{?CIhdQgJJ^zn8B; zfurTKy0gxt@AWr1d|&L|xKn!0hP_8_MTy=rvz%$+9Xr3!psV5cD+Si~_3XDi9?jjH z(JIE|aL_Fv;nPCJ3FcfpH7ic#c4>)wd41o0CO#*4;~9_Uh^K!U+HKf6(%8280x3`sveQPIAhG0EHAg`tC0)&nTW zS>O>_%)r1c48n{Iv*t(u1=&kHeO=k_bMOdDTK3nUkpc=$@N{tu(Kw%bfm^Uafrl+Y zE1;1pEP_=lqLC{ENP&18m_8NQylbCrvA@|cWY)~NtNrKB6lHi?^L$R!6cweGX;lx! z59&p8McZ>+xffUF%2N6@v1jFE=M9@~oDVKj_~})j%;0!QPOx!FMnAjb*1ls2ER(vw zcesBzz45)^vH#wik1;u((w%mdKI;Vst076h% AlK=n! delta 163 zcmdnRbdyoBGr-TCmrII^fq{Y7)59eQNDF{42Q!e=(B%)FsAylA;_2cTQgJKPpOf!^ z0>|oe%**=z|1Wb)Nm(+9D|5BSnLE4X-k#A=@=ej2!gFW#q<;C3#ddL8iiamY*mTM= z`}K-_%F}=3&RV&Y<(Oe^AM1+fD|IjbOma3lyhUQ`$DiDPlY%8yS?@o3g==j}?B>5f Pdl@`k{an^LB{Ts5b3#A+ diff --git a/minetestforfun_game/mods/doors/textures/doors_wood_cherry_b.png b/minetestforfun_game/mods/doors/textures/doors_wood_cherry_b.png index 8d1b73603c247ae0492253f8166cbd2b583ede6c..45fccb444880e5a7060905f4988fee8f36508513 100755 GIT binary patch delta 305 zcmaFE_<~8XGr-TCmrII^fq{Y7)59eQNGpIa2Q!d#S<-cEqM}nhW0JSK3quF1tOrn# zv%n*=n1O*?7=#%aX3dcR3bL1Y`ns~;=im{R5_#Brcnwf!x2KC^h{fsN$+!7h6nI>A zDl6^!|9`7@w6IproVo3d2Rw7yv*vJb-^2g#@>AQLZ@%AkP&jrbOUFv&{LDWV1_9aG zZK1o4O-;Do+E_p3Mb_Vz1J64dwTxPfI!~$X-(A7FMt0*G$6RT)ASqSP=1t+T3<}47 zdYRvDZgN=rd0|{C$bF@L?VRgB)-{5@o=yp}W}+et yS+#u9y?L7VF3&Qy7h|~Ne^W2&=leSLeZ`M;_U2mLc@OjlgD1PIpUXO@geCwKJ8=g9 delta 180 zcmaFC^oCKfGr-TCmrII^fq{Y7)59eQNDF{42Q!e=(B%)FsOVH*;_2cTQgO?*ubZ#c zfWvwB^gC98|NdvIo+z8$#u(}E@OIs`v$JMi7j||Dxq3!7O?(-XLT%UGX68HgHMP}C zj8&a>1~hG5XfKl{-=Muo&G$u5`R_v