From 45e037402e1ef235012072b5c8ee394b08e7b9e2 Mon Sep 17 00:00:00 2001 From: sys4 Date: Fri, 6 Mar 2020 11:52:34 +0100 Subject: [PATCH] =?UTF-8?q?Remplit=20le=20d=C3=A9p=C3=B4t?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- crafting.lua | 253 ++++++ depends.txt | 13 + guide.lua | 397 ++++++++ hell.lua | 1044 ++++++++++++++++++++++ init.lua | 35 + items.lua | 1016 +++++++++++++++++++++ locale/hell.fr.tr | 8 + locale/template.txt | 8 + pearl.lua | 198 ++++ portal.lua | 561 ++++++++++++ sounds/hell_dig.1.ogg | Bin 0 -> 10577 bytes sounds/hell_dig.2.ogg | Bin 0 -> 8112 bytes sounds/hell_dug.1.ogg | Bin 0 -> 11184 bytes sounds/hell_dug.2.ogg | Bin 0 -> 11114 bytes sounds/hell_extract_blood.1.ogg | Bin 0 -> 12062 bytes sounds/hell_extract_blood.2.ogg | Bin 0 -> 18052 bytes sounds/hell_extract_blood.3.ogg | Bin 0 -> 20292 bytes sounds/hell_extract_blood.4.ogg | Bin 0 -> 16244 bytes sounds/hell_extract_blood.5.ogg | Bin 0 -> 28787 bytes sounds/hell_extract_blood.6.ogg | Bin 0 -> 19968 bytes sounds/hell_extract_blood.7.ogg | Bin 0 -> 22552 bytes sounds/hell_footstep.1.ogg | Bin 0 -> 5420 bytes sounds/hell_footstep.2.ogg | Bin 0 -> 5301 bytes sounds/hell_footstep.3.ogg | Bin 0 -> 5044 bytes sounds/hell_pearl.ogg | Bin 0 -> 8969 bytes sounds/hell_portal_usual.ogg | Bin 0 -> 19702 bytes sounds/hell_remove_leaf.1.ogg | Bin 0 -> 4780 bytes sounds/hell_remove_leaf.2.ogg | Bin 0 -> 4822 bytes sounds/hell_remove_leaf.3.ogg | Bin 0 -> 4909 bytes sounds/hell_teleporter.1.ogg | Bin 0 -> 9698 bytes sounds/hell_teleporter.2.ogg | Bin 0 -> 10599 bytes sounds/hell_teleporter.3.ogg | Bin 0 -> 13627 bytes textures/hell_axe_hellrack.png | Bin 0 -> 198 bytes textures/hell_axe_hellrack_blue.png | Bin 0 -> 220 bytes textures/hell_axe_white.png | Bin 0 -> 289 bytes textures/hell_bark.png | Bin 0 -> 440 bytes textures/hell_blood.png | Bin 0 -> 448 bytes textures/hell_blood_cooked.png | Bin 0 -> 541 bytes textures/hell_blood_empty.png | Bin 0 -> 474 bytes textures/hell_blood_extracted.png | Bin 0 -> 303 bytes textures/hell_blood_extractor.png | Bin 0 -> 726 bytes textures/hell_blood_side.png | Bin 0 -> 478 bytes textures/hell_blood_side_cooked.png | Bin 0 -> 493 bytes textures/hell_blood_side_empty.png | Bin 0 -> 401 bytes textures/hell_blood_stem.png | Bin 0 -> 446 bytes textures/hell_blood_stem_cooked.png | Bin 0 -> 607 bytes textures/hell_blood_stem_empty.png | Bin 0 -> 532 bytes textures/hell_blood_stem_top.png | Bin 0 -> 442 bytes textures/hell_blood_stem_top_cooked.png | Bin 0 -> 764 bytes textures/hell_blood_stem_top_empty.png | Bin 0 -> 544 bytes textures/hell_blood_top.png | Bin 0 -> 463 bytes textures/hell_blood_top_cooked.png | Bin 0 -> 709 bytes textures/hell_blood_top_empty.png | Bin 0 -> 471 bytes textures/hell_dirt.png | Bin 0 -> 673 bytes textures/hell_dirt_normal.png | Bin 0 -> 449 bytes textures/hell_dirt_top.png | Bin 0 -> 699 bytes textures/hell_dirt_top_normal.png | Bin 0 -> 481 bytes textures/hell_dirt_top_side.png | Bin 0 -> 807 bytes textures/hell_dirt_top_side_normal.png | Bin 0 -> 669 bytes textures/hell_dirt_transition.png | Bin 0 -> 670 bytes textures/hell_dirt_transition_normal.png | Bin 0 -> 528 bytes textures/hell_fim.png | Bin 0 -> 222 bytes textures/hell_forest_planks.png | Bin 0 -> 488 bytes textures/hell_forest_wood.png | Bin 0 -> 775 bytes textures/hell_forest_wood_normal.png | Bin 0 -> 550 bytes textures/hell_fruit.png | Bin 0 -> 244 bytes textures/hell_fruit_bottom.png | Bin 0 -> 211 bytes textures/hell_fruit_leaf.png | Bin 0 -> 359 bytes textures/hell_fruit_leaves.png | Bin 0 -> 519 bytes textures/hell_fruit_no_leaf.png | Bin 0 -> 529 bytes textures/hell_fruit_top.png | Bin 0 -> 214 bytes textures/hell_glowflower.png | Bin 0 -> 516 bytes textures/hell_grass.png | Bin 0 -> 184 bytes textures/hell_grass_big.png | Bin 0 -> 352 bytes textures/hell_grass_dried.png | Bin 0 -> 218 bytes textures/hell_grass_middle.png | Bin 0 -> 232 bytes textures/hell_grass_small.png | Bin 0 -> 186 bytes textures/hell_hellrack.png | Bin 0 -> 603 bytes textures/hell_hellrack_black.png | Bin 0 -> 582 bytes textures/hell_hellrack_black_normal.png | Bin 0 -> 490 bytes textures/hell_hellrack_blue.png | Bin 0 -> 831 bytes textures/hell_hellrack_blue_normal.png | Bin 0 -> 693 bytes textures/hell_hellrack_brick.png | Bin 0 -> 682 bytes textures/hell_hellrack_brick_black.png | Bin 0 -> 547 bytes textures/hell_hellrack_brick_blue.png | Bin 0 -> 726 bytes textures/hell_hellrack_normal.png | Bin 0 -> 533 bytes textures/hell_hellrack_soil.png | Bin 0 -> 397 bytes textures/hell_hellrack_soil_normal.png | Bin 0 -> 491 bytes textures/hell_hellrack_tiled.png | Bin 0 -> 724 bytes textures/hell_hellrack_tiled_normal.png | Bin 0 -> 521 bytes textures/hell_hotbed.png | Bin 0 -> 280 bytes textures/hell_leaves.png | Bin 0 -> 427 bytes textures/hell_pearl.png | Bin 0 -> 216 bytes textures/hell_pick_hellrack.png | Bin 0 -> 262 bytes textures/hell_pick_hellrack_blue.png | Bin 0 -> 309 bytes textures/hell_pick_mushroom.png | Bin 0 -> 375 bytes textures/hell_pick_white.png | Bin 0 -> 358 bytes textures/hell_pick_wood.png | Bin 0 -> 282 bytes textures/hell_portal_particle.png | Bin 0 -> 340 bytes textures/hell_portal_stuff.png | Bin 0 -> 676 bytes textures/hell_portal_stuff_normal.png | Bin 0 -> 503 bytes textures/hell_sapling.png | Bin 0 -> 331 bytes textures/hell_shovel_hellrack.png | Bin 0 -> 268 bytes textures/hell_shovel_hellrack_blue.png | Bin 0 -> 288 bytes textures/hell_shovel_white.png | Bin 0 -> 416 bytes textures/hell_shroom_stem.png | Bin 0 -> 147 bytes textures/hell_shroom_top.png | Bin 0 -> 127 bytes textures/hell_stick.png | Bin 0 -> 231 bytes textures/hell_sword_hellrack.png | Bin 0 -> 280 bytes textures/hell_sword_hellrack_blue.png | Bin 0 -> 326 bytes textures/hell_sword_white.png | Bin 0 -> 315 bytes textures/hell_teleporter.png | Bin 0 -> 11273 bytes textures/hell_torch.png | Bin 0 -> 1083 bytes textures/hell_torch_on_ceiling.png | Bin 0 -> 137 bytes textures/hell_torch_on_floor.png | Bin 0 -> 132 bytes textures/hell_transparent.png | Bin 0 -> 67 bytes textures/hell_tree.png | Bin 0 -> 788 bytes textures/hell_tree_corner.png | Bin 0 -> 777 bytes textures/hell_tree_sapling.png | Bin 0 -> 337 bytes textures/hell_tree_top.png | Bin 0 -> 762 bytes textures/hell_vine.png | Bin 0 -> 173 bytes textures/hell_vine_normal.png | Bin 0 -> 455 bytes textures/hell_white.png | Bin 0 -> 616 bytes textures/hell_wood.png | Bin 0 -> 453 bytes textures/hell_wood_cooked.png | Bin 0 -> 791 bytes textures/hell_wood_empty.png | Bin 0 -> 660 bytes textures/hell_wood_empty_normal.png | Bin 0 -> 501 bytes weird_mapgen_noise.lua | 88 ++ 128 files changed, 3621 insertions(+) create mode 100644 crafting.lua create mode 100644 depends.txt create mode 100644 guide.lua create mode 100644 hell.lua create mode 100644 init.lua create mode 100644 items.lua create mode 100644 locale/hell.fr.tr create mode 100644 locale/template.txt create mode 100644 pearl.lua create mode 100644 portal.lua create mode 100644 sounds/hell_dig.1.ogg create mode 100644 sounds/hell_dig.2.ogg create mode 100644 sounds/hell_dug.1.ogg create mode 100644 sounds/hell_dug.2.ogg create mode 100644 sounds/hell_extract_blood.1.ogg create mode 100644 sounds/hell_extract_blood.2.ogg create mode 100644 sounds/hell_extract_blood.3.ogg create mode 100644 sounds/hell_extract_blood.4.ogg create mode 100644 sounds/hell_extract_blood.5.ogg create mode 100644 sounds/hell_extract_blood.6.ogg create mode 100644 sounds/hell_extract_blood.7.ogg create mode 100644 sounds/hell_footstep.1.ogg create mode 100644 sounds/hell_footstep.2.ogg create mode 100644 sounds/hell_footstep.3.ogg create mode 100644 sounds/hell_pearl.ogg create mode 100644 sounds/hell_portal_usual.ogg create mode 100644 sounds/hell_remove_leaf.1.ogg create mode 100644 sounds/hell_remove_leaf.2.ogg create mode 100644 sounds/hell_remove_leaf.3.ogg create mode 100644 sounds/hell_teleporter.1.ogg create mode 100644 sounds/hell_teleporter.2.ogg create mode 100644 sounds/hell_teleporter.3.ogg create mode 100644 textures/hell_axe_hellrack.png create mode 100644 textures/hell_axe_hellrack_blue.png create mode 100644 textures/hell_axe_white.png create mode 100644 textures/hell_bark.png create mode 100644 textures/hell_blood.png create mode 100644 textures/hell_blood_cooked.png create mode 100644 textures/hell_blood_empty.png create mode 100644 textures/hell_blood_extracted.png create mode 100644 textures/hell_blood_extractor.png create mode 100644 textures/hell_blood_side.png create mode 100644 textures/hell_blood_side_cooked.png create mode 100644 textures/hell_blood_side_empty.png create mode 100644 textures/hell_blood_stem.png create mode 100644 textures/hell_blood_stem_cooked.png create mode 100644 textures/hell_blood_stem_empty.png create mode 100644 textures/hell_blood_stem_top.png create mode 100644 textures/hell_blood_stem_top_cooked.png create mode 100644 textures/hell_blood_stem_top_empty.png create mode 100644 textures/hell_blood_top.png create mode 100644 textures/hell_blood_top_cooked.png create mode 100644 textures/hell_blood_top_empty.png create mode 100644 textures/hell_dirt.png create mode 100644 textures/hell_dirt_normal.png create mode 100644 textures/hell_dirt_top.png create mode 100644 textures/hell_dirt_top_normal.png create mode 100644 textures/hell_dirt_top_side.png create mode 100644 textures/hell_dirt_top_side_normal.png create mode 100644 textures/hell_dirt_transition.png create mode 100644 textures/hell_dirt_transition_normal.png create mode 100644 textures/hell_fim.png create mode 100644 textures/hell_forest_planks.png create mode 100644 textures/hell_forest_wood.png create mode 100644 textures/hell_forest_wood_normal.png create mode 100644 textures/hell_fruit.png create mode 100644 textures/hell_fruit_bottom.png create mode 100644 textures/hell_fruit_leaf.png create mode 100644 textures/hell_fruit_leaves.png create mode 100644 textures/hell_fruit_no_leaf.png create mode 100644 textures/hell_fruit_top.png create mode 100644 textures/hell_glowflower.png create mode 100644 textures/hell_grass.png create mode 100644 textures/hell_grass_big.png create mode 100644 textures/hell_grass_dried.png create mode 100644 textures/hell_grass_middle.png create mode 100644 textures/hell_grass_small.png create mode 100644 textures/hell_hellrack.png create mode 100644 textures/hell_hellrack_black.png create mode 100644 textures/hell_hellrack_black_normal.png create mode 100644 textures/hell_hellrack_blue.png create mode 100644 textures/hell_hellrack_blue_normal.png create mode 100644 textures/hell_hellrack_brick.png create mode 100644 textures/hell_hellrack_brick_black.png create mode 100644 textures/hell_hellrack_brick_blue.png create mode 100644 textures/hell_hellrack_normal.png create mode 100644 textures/hell_hellrack_soil.png create mode 100644 textures/hell_hellrack_soil_normal.png create mode 100644 textures/hell_hellrack_tiled.png create mode 100644 textures/hell_hellrack_tiled_normal.png create mode 100644 textures/hell_hotbed.png create mode 100644 textures/hell_leaves.png create mode 100644 textures/hell_pearl.png create mode 100644 textures/hell_pick_hellrack.png create mode 100644 textures/hell_pick_hellrack_blue.png create mode 100644 textures/hell_pick_mushroom.png create mode 100644 textures/hell_pick_white.png create mode 100644 textures/hell_pick_wood.png create mode 100644 textures/hell_portal_particle.png create mode 100644 textures/hell_portal_stuff.png create mode 100644 textures/hell_portal_stuff_normal.png create mode 100644 textures/hell_sapling.png create mode 100644 textures/hell_shovel_hellrack.png create mode 100644 textures/hell_shovel_hellrack_blue.png create mode 100644 textures/hell_shovel_white.png create mode 100644 textures/hell_shroom_stem.png create mode 100644 textures/hell_shroom_top.png create mode 100644 textures/hell_stick.png create mode 100644 textures/hell_sword_hellrack.png create mode 100644 textures/hell_sword_hellrack_blue.png create mode 100644 textures/hell_sword_white.png create mode 100644 textures/hell_teleporter.png create mode 100644 textures/hell_torch.png create mode 100644 textures/hell_torch_on_ceiling.png create mode 100644 textures/hell_torch_on_floor.png create mode 100644 textures/hell_transparent.png create mode 100644 textures/hell_tree.png create mode 100644 textures/hell_tree_corner.png create mode 100644 textures/hell_tree_sapling.png create mode 100644 textures/hell_tree_top.png create mode 100644 textures/hell_vine.png create mode 100644 textures/hell_vine_normal.png create mode 100644 textures/hell_white.png create mode 100644 textures/hell_wood.png create mode 100644 textures/hell_wood_cooked.png create mode 100644 textures/hell_wood_empty.png create mode 100644 textures/hell_wood_empty_normal.png create mode 100644 weird_mapgen_noise.lua diff --git a/crafting.lua b/crafting.lua new file mode 100644 index 0000000..64b2a3e --- /dev/null +++ b/crafting.lua @@ -0,0 +1,253 @@ +minetest.register_craft({ + output = "hell:fim", + recipe = { + {"hell:shroom_head"}, + {"hell:fruit_no_leaf"}, + {"hell:shroom_head"}, + } +}) + +minetest.register_craft({ + output = "hell:fruit_leaves", + recipe = { + {"hell:fruit_leaf", "hell:fruit_leaf", "hell:fruit_leaf"}, + {"hell:fruit_leaf", "hell:fruit_leaf", "hell:fruit_leaf"}, + {"hell:fruit_leaf", "hell:fruit_leaf", "hell:fruit_leaf"}, + } +}) + +minetest.register_craft({ + output = "hell:pick_mushroom", + recipe = { + {"hell:shroom_head", "hell:shroom_head", "hell:shroom_head"}, + {"", "hell:shroom_stem", ""}, + {"", "hell:shroom_stem", ""}, + } +}) + +minetest.register_craft({ + output = "hell:pick_wood", + recipe = { + {"hell:wood_cooked", "hell:wood_cooked", "hell:wood_cooked"}, + {"", "group:stick", ""}, + {"", "group:stick", ""}, + } +}) + +for _,m in pairs({"hellrack", "hellrack_blue", "white"}) do + local input = "hell:"..m + + minetest.register_craft({ + output = "hell:pick_"..m, + recipe = { + {input, input, input}, + {"", "group:stick", ""}, + {"", "group:stick", ""}, + } + }) + + minetest.register_craft({ + output = "hell:axe_"..m, + recipe = { + {input, input}, + {input, "group:stick"}, + {"", "group:stick"}, + } + }) + + minetest.register_craft({ + output = "hell:sword_"..m, + recipe = { + {input}, + {input}, + {"group:stick"}, + } + }) + + minetest.register_craft({ + output = "hell:shovel_"..m, + recipe = { + {input}, + {"group:stick"}, + {"group:stick"}, + } + }) +end + +minetest.register_craft({ + output = "hell:hellrack_brick 4", + recipe = { + {"hell:hellrack", "hell:hellrack"}, + {"hell:hellrack", "hell:hellrack"}, + } +}) + +minetest.register_craft({ + output = "hell:hellrack_brick_black 4", + recipe = { + {"hell:hellrack_black", "hell:hellrack_black"}, + {"hell:hellrack_black", "hell:hellrack_black"}, + } +}) + +minetest.register_craft({ + output = "hell:hellrack_brick_blue 4", + recipe = { + {"hell:hellrack_blue", "hell:hellrack_blue"}, + {"hell:hellrack_blue", "hell:hellrack_blue"}, + } +}) + +minetest.register_craft({ + output = "default:furnace", + recipe = { + {"hell:hellrack_brick", "hell:hellrack_brick", "hell:hellrack_brick"}, + {"hell:hellrack_brick", "", "hell:hellrack_brick"}, + {"hell:hellrack_brick", "hell:hellrack_brick", "hell:hellrack_brick"}, + } +}) + +minetest.register_craft({ + output = "hell:extractor", + recipe = { + {"hell:hellrack_brick", "hell:blood_top_cooked", "hell:hellrack_brick"}, + {"hell:blood_cooked", "hell:shroom_stem", "hell:blood_cooked"}, + {"hell:hellrack_brick", "hell:blood_stem_cooked", "hell:hellrack_brick"}, + } +}) + +minetest.register_craft({ + output = "hell:wood 4", + recipe = { + {"hell:blood_stem"}, + } +}) + +minetest.register_craft({ + output = "hell:wood_empty 4", + recipe = { + {"hell:blood_stem_empty"}, + } +}) + +minetest.register_craft({ + output = "hell:stick 4", + recipe = { + {"hell:wood_empty"}, + } +}) + +minetest.register_craft({ + output = "hell:torch", + recipe = { + {"hell:bark"}, + {"group:stick"}, + } +}) + +minetest.register_craft({ + output = "hell:forest_wood", + recipe = { + {"hell:forest_planks", "hell:forest_planks", "hell:forest_planks"}, + {"hell:forest_planks", "", "hell:forest_planks"}, + {"hell:forest_planks", "hell:forest_planks", "hell:forest_planks"}, + } +}) + +minetest.register_craft({ + output = "hell:forest_planks 8", + recipe = { + {"hell:forest_wood"}, + } +}) + +minetest.register_craft({ + output = "hell:forest_planks 7", + recipe = { + {"hell:tree"}, + }, +}) + +local sound_allowed = true +minetest.register_on_craft(function(itemstack, player, old_craft_grid, craft_inv) + if itemstack:get_name() ~= "hell:forest_planks" + or itemstack:get_count() ~= 7 then + return + end + local tree + for i = 1,9 do + if old_craft_grid[i]:get_name() == "hell:tree" then + tree = i + break + end + end + if not tree then -- do nth if theres no tree + return + end + local rdif = math.random(-1,1) -- add a bit randomness + local barkstack = ItemStack("hell:bark "..4-rdif) + local inv = player:get_inventory() + if not inv:room_for_item("main", barkstack) then -- disallow crafting if there's not enough free space + craft_inv:set_list("craft", old_craft_grid) + itemstack:set_name("") + return + end + itemstack:set_count(7+rdif) + inv:add_item("main", barkstack) + if not sound_allowed then -- avoid playing the sound multiple times, e.g. when middle mouse click + return + end + minetest.sound_play("default_wood_footstep", {pos=player:getpos(), gain=0.25}) + sound_allowed = false + minetest.after(0, function() + sound_allowed = true + end) +end) + +minetest.register_craft({ + output = "default:paper", + recipe = { + {"hell:grass_dried", "hell:grass_dried", "hell:grass_dried"}, + } +}) + + +minetest.register_craft({ + type = "cooking", + output = "default:coal_lump", + recipe = "hell:tree", +}) + +minetest.register_craft({ + type = "cooking", + output = "hell:grass_dried", + recipe = "hell:grass", +}) + +minetest.register_craft({ + type = "cooking", + output = "hell:pearl", + recipe = "hell:fim", +}) + +minetest.register_craft({ + type = "cooking", + output = "hell:hotbed", + recipe = "hell:blood_extracted", +}) + +for _,i in ipairs({"hell:blood", "hell:blood_top", "hell:blood_stem", "hell:wood"}) do + local cooked = i.."_cooked" + + minetest.register_craft({ + type = "cooking", + output = cooked, + recipe = i, + }) + + minetest.register_craft({ + type = "fuel", + recipe = cooked, + burntime = 30, + }) +end diff --git a/depends.txt b/depends.txt new file mode 100644 index 0000000..9b7915e --- /dev/null +++ b/depends.txt @@ -0,0 +1,13 @@ +default +nether +creative? +glow +riesenpilz +stairs +moreblocks? +vector_extras +fence_registration? +function_delayer? +watershed? +darkage +witchcraft diff --git a/guide.lua b/guide.lua new file mode 100644 index 0000000..02478a8 --- /dev/null +++ b/guide.lua @@ -0,0 +1,397 @@ +local cube = minetest.inventorycube + +-- the content of the guide +local guide_infos = { + { + description = "Mushrooms", + {"text", "Hell mushrooms can be found on the hell's ground and\n".. + "on hellrack soil, it can be dug by hand."}, + {"image", {1, 1, "riesenpilz_nether_shroom_side.png"}}, + {"y", 0.2}, + {"text", "If you drop it without holding the fast key, you can split it into its stem and head:"}, + {"image", {1, 1, "hell_shroom_top.png", 1}}, + {"image", {1, 1, "hell_shroom_stem.png"}}, + {"y", 0.1}, + {"text", "You can get more mushrooms by using a hellrack soil:\n".. + "1. search a dark place and, if necessary, place hellrack with air about it\n".. + "2. right click with cooked blood onto the hellrack to make it soiled\n".. + "3. right click onto the hellrack soil with a hell mushroom head to add some spores\n".. + "4. dig the mushroom which grew after some time to make place for another one"}, + {"image", {1, 1, "riesenpilz_nether_shroom_side.png", 6, 0.12}}, + {"y", 1}, + {"image", {1, 1, "hell_hellrack.png^hell_hellrack_soil.png", 1.8}}, + {"image", {1, 1, "hell_hotbed.png", 1.3, -0.4}}, + {"image", {1, 1, "hell_hellrack.png^hell_hellrack_soil.png", 3.6}}, + {"image", {1, 1, "hell_shroom_top.png", 3.1, -0.5}}, + {"image", {1, 1, "hell_hellrack.png^hell_hellrack_soil.png", 6}}, + {"image", {1, 1, "hell_hellrack.png"}}, + }, + { + description = "Tools", + {"text", "You can craft 5 kinds of tools in the hell,\n".. + "which (except the mushroom pick) require sticks to be crafted:"}, + {"image", {1, 1, "hell_pick_mushroom.png"}}, + {"y", 0.1}, + {"text", "strength : 1\n".. + "The mushroom pick needs mushroom stems and heads to be crafted."}, + {"image", {1, 1, "hell_pick_wood.png"}}, + {"y", 0.1}, + {"text", "strength : 2\n".. + "The hell wood pick can be crafted with cooked hell blood wood."}, + {"image", {1, 1, "hell_axe_hellrack.png", 1.5}}, + {"image", {1, 1, "hell_shovel_hellrack.png", 3}}, + {"image", {1, 1, "hell_sword_hellrack.png", 4.5}}, + {"image", {1, 1, "hell_pick_hellrack.png"}}, + {"y", 0.1}, + {"text", "strength : 3\n".. + "The red hellrack tools can be crafted with usual hellrack."}, + {"image", {1, 1, "hell_axe_hellrack_blue.png", 1.5}}, + {"image", {1, 1, "hell_shovel_hellrack_blue.png", 3}}, + {"image", {1, 1, "hell_sword_hellrack_blue.png", 4.5}}, + {"image", {1, 1, "hell_pick_hellrack_blue.png"}}, + {"y", 0.1}, + {"text", "strength : 3\n".. + "The blue hellrack tools can be crafted with blue hellrack."}, + {"image", {1, 1, "hell_axe_white.png", 1.5}}, + {"image", {1, 1, "hell_shovel_white.png", 3}}, + {"image", {1, 1, "hell_sword_white.png", 4.5}}, + {"image", {1, 1, "hell_pick_white.png"}}, + {"y", 0.1}, + {"text", "strength : 3\n".. + "The siwtonic tools can be crafted with the siwtonic ore."}, + }, + { + description = "Blood structures", + {"text", "You can find blood structures on the ground and\n".. + "dig their nodes even with the bare hand."}, + {"y", 0.5}, + {"text", "One contains 4 kinds of blocks :"}, + {"image", {1, 1, cube("hell_blood.png"), 1}}, + {"image", {1, 1, + cube("hell_blood_top.png", "hell_blood.png^hell_blood_side.png", "hell_blood.png^hell_blood_side.png"), + 2}}, + {"image", {1, 1, "hell_fruit.png", 3}}, + {"image", {1, 1, cube("hell_blood_stem_top.png", "hell_blood_stem.png", "hell_blood_stem.png")}}, + {"y", 0.1}, + {"text", "Blood stem, blood, blood head and hell fruit"}, + {"y", 0.1}, + {"text", "You can craft 4 blood wood with the stem :"}, + {"image", {1, 1, cube("hell_wood.png")}}, + {"y", 0.1}, + {"text", "The 4 blood nodes can be cooked and, except\n".. + "blood wood, their blood can be extracted."}, + }, + { + description = "Fruits", + {"text", "You can find the hell fruits on blood structures\n".. + "and dig them even with the bare hand."}, + {"image", {1, 1, "hell_fruit.png"}}, + {"text", "Eating it will make you lose life but\n".. + "it might feed you and give you blood :"}, + {"image", {1, 1, "hell_blood_extracted.png"}}, + {"y", 0.2}, + {"text", "If you eat it at the right place inside a portal,\n".. + "you will teleport instead of getting blood."}, + {"y", 0.2}, + {"text", "If you drop it without holding the fast key,\n".. + "you can split it into its fruit and leaf:"}, + {"image", {1, 1, "hell_fruit_leaf.png", 1}}, + {"image", {1, 1, "hell_fruit_no_leaf.png"}}, + {"y", 0.2}, + {"text", "Craft a fruit leave block out of 9 fruit leaves\n".. + "The fruit can be used to craft a hell pearl."}, + {"image", {1, 1, cube("hell_fruit_leaves.png")}}, + {"y", 0.2}, + {"text", "A fruit leaves block"}, + }, + { + description = "Cooking", + {"text", "To get a furnace you need to dig at least 8 hellrack bricks.\n".. + "They can be found at pyramid like constructions and require at least\n".. + "a strength 1 hell pick to be dug.\n".. + "To craft the furnace, use the hellrack bricks like cobble:"}, + {"image", {0.5, 0.5, cube("hell_hellrack_brick.png"), 0.5}}, + {"image", {0.5, 0.5, cube("hell_hellrack_brick.png"), 1}}, + {"image", {0.5, 0.5, cube("hell_hellrack_brick.png")}}, + {"image", {0.5, 0.5, cube("hell_hellrack_brick.png"), 1}}, + {"image", {0.5, 0.5, cube("hell_hellrack_brick.png")}}, + {"image", {0.5, 0.5, cube("hell_hellrack_brick.png"), 0.5}}, + {"image", {0.5, 0.5, cube("hell_hellrack_brick.png"), 1}}, + {"image", {0.5, 0.5, cube("hell_hellrack_brick.png")}}, + {"y", 0.2}, + {"text", "To begin cooking stuff, you can use a mushroom or fruit.\n".. + "After that it's recommended to use cooked blood nodes."}, + {"y", 0.1}, + {"text", "Some hell items can be cooked:"}, + {"image", {1, 1, cube("hell_blood_stem_top_cooked.png", "hell_blood_stem_cooked.png", "hell_blood_stem_cooked.png"), 0.35}}, + {"image", {1, 1, cube("hell_blood_cooked.png"), 1.6}}, + {"image", {1, 1, + cube("hell_blood_top_cooked.png", "hell_blood_cooked.png^hell_blood_side_cooked.png", "hell_blood_cooked.png^hell_blood_side_cooked.png"), + 2.9}}, + {"image", {1, 1, cube("hell_wood_cooked.png"), 4.3}}, + {"y", 1.2}, + {"text", "Some cooked blood stem, cooked blood,\n".. + "cooked blood head and cooked blood wood,"}, + {"image", {1, 1, "hell_hotbed.png", 0.3}}, + {"image", {1, 1, "hell_pearl.png", 2}}, + {"y", 1.2}, + {"text", "Some cooked extracted blood and a hell pearl"}, + }, + { + description = "Extractors", + {"text", "Here you can find out information about the hell extractor."}, + {"y", 0.2}, + {"text", "Here you can see its craft recipe:"}, + {"image", {0.5, 0.5, cube("hell_blood_top_cooked.png", "hell_blood_cooked.png^hell_blood_side_cooked.png", "hell_blood_cooked.png^hell_blood_side_cooked.png"), 0.5}}, + {"image", {0.5, 0.5, cube("hell_hellrack_brick.png"), 1}}, + {"image", {0.5, 0.5, cube("hell_hellrack_brick.png")}}, + {"image", {0.5, 0.5, cube("hell_blood_extractor.png"), 2.5}}, + {"image", {0.5, 0.5, "hell_shroom_stem.png", 0.5}}, + {"image", {0.5, 0.5, cube("hell_blood_cooked.png"), 1}}, + {"image", {0.5, 0.5, cube("hell_blood_cooked.png")}}, + {"image", {0.5, 0.5, cube("hell_blood_stem_top_cooked.png", "hell_blood_stem_cooked.png", "hell_blood_stem_cooked.png"), 0.5}}, + {"image", {0.5, 0.5, cube("hell_hellrack_brick.png"), 1}}, + {"image", {0.5, 0.5, cube("hell_hellrack_brick.png")}}, + {"y", 0.2}, + {"text", "Extract blood from the blood nodes you get from the blood structures.\n".. + "You can also get blood with a hell fruit."}, + {"y", 0.2}, + {"text", "So you can use it:\n".. + "1. place it somewhere\n".. + "2. place blood blocks next to it (4 or less)\n".. + "3. right click with extracted blood onto it to power it\n".. + "4. take the new extracted blood and dig the extracted nodes"}, + {"y", 0.2}, + {"text", "Example (view from the top):"}, + {"y", 0.88}, + {"image", {1, 1, "hell_blood_stem_top.png", 0.82, -0.88}}, + {"image", {1, 1, "hell_blood.png", 1.63}}, + {"image", {1, 1, "hell_blood_extractor.png", 0.82}}, + {"image", {1, 1, "hell_blood_stem_top_empty.png", 3.82, -0.88}}, + {"image", {1, 1, "hell_blood_empty.png", 4.63}}, + {"image", {1, 1, "hell_blood_empty.png", 3.001}}, + {"image", {1, 1, "hell_blood_extractor.png", 3.82}}, + {"image", {1, 1, "hell_blood.png"}}, + {"image", {1, 1, "hell_blood.png", 0.82, -0.12}}, + {"image", {1, 1, "hell_blood_empty.png", 3.82, -0.12}}, + {"y", 1.2}, + {"text", "The empty blood stem can be crafted into empty hell wood,\n".. + "which can be crafted into hell sticks."}, + }, + { + description = "Ores", + {"text", "You can find 5 types of ores:"}, + {"image", {1, 1, cube("hell_hellrack_black.png"), 4}}, + {"image", {1, 1, cube("hell_hellrack.png")}}, + {"y", 0.2}, + {"text", "The red hellrack is generated like stone.\n".. + "The black hellrack is generated like gravel.\n".. + "Both require at least a strength 2 hell pick to be dug."}, + {"image", {1, 1, cube("hell_white.png"), 4}}, + {"image", {1, 1, cube("hell_hellrack_blue.png")}}, + {"y", 0.2}, + {"text", "The blue hellrack is generated like diamond ore.\n".. + "The siwtonic ore is generated like mese blocks.\n".. + "Both require at least a strength 3 hell pick to be dug."}, + {"image", {1, 1, cube("hell_hellrack_tiled.png"), 4}}, + {"image", {1, 1, cube("glow_stone.png")}}, + {"y", 0.2}, + {"text", "Glow stone can be used for lighting.\n".. + "Tiled hellrack is generated like coal ore.\n".. + "Glow stone requires at least a strength 1 pick to be dug.\n".. + "Dig tiled hellrack with at least a level 2 pickaxe."}, + }, + { + description = "Vines", + {"text", "Feed hell vines with blood.\n".. + "Dig them with anything."}, + {"image", {1, 1, "hell_vine.png"}}, + {"y", 0.2}, + {"text", "Grow hell child by placing\n".. + "placing it to a dark place onto a\n".. + "blood structure head node."}, + {"image", {1, 1, "hell_sapling.png"}}, + {"y", -0.10}, + {"image", {1, 1, "hell_blood.png^hell_blood_side.png"}}, + }, + { + description = "Pearls", + {"text", "The hell pearl can be used to teleport by throwing it.\n".. + "Here is how to get one :"}, + {"y", 0.2}, + {"text", "First of all craft 2 mushroom heads and 1 hell fruit\n".. + "without leaf together :"}, + {"image", {1, 1, "hell_shroom_top.png"}}, + {"image", {1, 1, "hell_fim.png", 3}}, + {"image", {1, 1, "hell_fruit_no_leaf.png"}}, + {"image", {1, 1, "hell_shroom_top.png"}}, + {"y", 0.2}, + {"text", "Put the result into the furnace\n".. + "to cook it into a hell pearl :"}, + {"image", {1, 1, "hell_pearl.png"}}, + }, + { + description = "Bricks", + {"text", "Craft bricks out of red,\n".. + "black and blue hellrack."}, + {"image", {1, 1, cube("hell_hellrack_brick_black.png"), 1}}, + {"image", {1, 1, cube("hell_hellrack_brick_blue.png"), 2}}, + {"image", {1, 1, cube("hell_hellrack_brick.png")}}, + {"y", 0.4}, + {"text", "Dig them with at least a level 1 pickaxe."}, + {"y", 0.2}, + }, + { + description = "Portals", + {"text", "Here you can find out how to built the hell portal."}, + {"y", 0.3}, + {"text", "A hell portal requires following nodes:"}, + {"y", 0.05}, + {"text", "25 empty hell wooden planks\n".. + "16 black hellrack\n".. + "12 blue hellrack bricks\n".. + "8 red hellrack\n".. + "8 cooked hell blood\n".. + "4 hell fruits\n".. + "2 siwtonic blocks"}, + {"y", 0.2}, + {"text", "It should look approximately like this one:"}, + {"image", {5.625, 6, "hell_teleporter.png", 0, -1.5}}, + {"y", 5.5}, + {"text", "Activate it by standing in the middle,\n".. + "on the siwtonic block and eating a hell fruit.\n".. + "Take enough stuff with you to build a portal when you'll come back."}, + }, + { + description = "Forests", + {"text", "The hell forest is generated in caves,\n".. + "above the usual hell."}, + {"y", 0.2}, + {"text", "There you can find some plants:"}, + {"image", {1, 1, "hell_grass_middle.png", 1}}, + {"image", {1, 1, "hell_grass_big.png", 2}}, + {"image", {1, 1, "hell_grass_small.png"}}, + {"y", 0.2}, + {"text", "Use the hell forest grass to get paper.\n".. + "Craft paper out of the dried grass."}, + {"image", {1, 1, cube("hell_tree_top.png", "hell_tree.png", "hell_tree.png")}}, + {"y", 0.2}, + {"text", "Hell trunks can be found at hell trees.\n".. + "Craft hell wood out of hell trunk."}, + {"image", {1, 1, "hell_glowflower.png"}}, + {"y", 0.2}, + {"text", "Use it for lighting and decoration."}, + }, +} + +-- the size of guide pages +local guide_size = {x=40, y=10, cx=0.2, cy=0.2} + +-- informations about settings and ... +local formspec_offset = {x=0.25, y=0.50} +local font_size +if minetest.is_singleplayer() then + font_size = tonumber(minetest.settings:get("font_size")) or 13 +else + font_size = 13 +end +guide_size.fx = math.floor((40*(guide_size.cx+formspec_offset.x))*font_size) +guide_size.fy = font_size/40 + +-- the default guide formspecs +local guide_forms = { + contents = "size[3.6,"..(#guide_infos)-2 ..";]label["..guide_size.cx+0.7 ..","..guide_size.cy+0.2 ..";Contents:]", +} + +-- change the infos to formspecs +for n,data in ipairs(guide_infos) do + local form = "" + local y = 0 + local x = guide_size.cx + for _,i in ipairs(data) do + local typ, content = unpack(i) + if typ == "y" then + y = y+content + elseif typ == "x" then + x = math.max(x, content) + elseif typ == "text" then + local tab = minetest.wrap_text(content, guide_size.fx, true) + local l = guide_size.cx + for _,str in ipairs(tab) do + form = form.."label["..guide_size.cx ..","..guide_size.cy+y..";"..str.."]" + y = y+guide_size.fy + l = math.max(l, #str) + end + x = math.max(x, l/font_size) + elseif typ == "image" then + local w, h, texture_name, px, py = unpack(content) + if not px then + form = form.."image["..guide_size.cx..","..guide_size.cy+y+h*0.3 ..";"..w..","..h..";"..texture_name.."]" + y = y+h + else + px = guide_size.cx+px + py = py or 0 + form = form.."image["..px..",".. + guide_size.cy+y+h*0.3+py ..";"..w..","..h..";"..texture_name.."]" + x = math.max(x, px+w) + end + end + end + form = "size["..x*1.8 ..","..y+1 ..";]"..form.."button["..x/2-0.5 ..","..y ..";1,2;quit;Back]" + guide_forms[n] = {data.description, form} +end + +local desc_tab = {} +for n,i in ipairs(guide_forms) do + desc_tab[i[1]] = n +end + +-- creates contents formspec +local y = 0 +for y,i in ipairs(guide_forms) do + local desc, form = unpack(i) + local s = #desc*1.3/font_size+1.5 + guide_forms.contents = guide_forms.contents.."button["..guide_size.cx*12/s-0.5 ..","..guide_size.cy+y/1.3 ..";"..s..",1;name;"..desc.."]" +end + +-- shows the contents of the formspec +local function show_guide(pname) + minetest.show_formspec(pname, "hell_guide_contents", guide_forms["contents"]) +end + +minetest.register_on_player_receive_fields(function(player, formname, fields) + if formname == "hell_guide_contents" then + local fname = fields.name + local pname = player:get_player_name() + if fname + and pname then + minetest.show_formspec(pname, "hell_guide", guide_forms[desc_tab[fname]][2]) + end + elseif formname == "hell_guide" then + local fname = fields.quit + local pname = player:get_player_name() + if fname + and pname then + minetest.show_formspec(pname, "hell_guide_contents", guide_forms["contents"]) + end + end +end) + +minetest.register_chatcommand("hell_help", { + params = "", + description = "Shows a hell guide", + func = function(name) + local player = minetest.get_player_by_name(name) + if not player then + minetest.chat_send_player(name, "Something went wrong.") + return false + end + if player:getpos().y > hell.start then + minetest.chat_send_player(name, "Usually you don't neet this guide here. You can view it in the hell.") + return false + end + minetest.chat_send_player(name, "Showing guide...") + show_guide(name) + return true + end +}) diff --git a/hell.lua b/hell.lua new file mode 100644 index 0000000..e4fd8b4 --- /dev/null +++ b/hell.lua @@ -0,0 +1,1044 @@ +-- Hell Mod (based on Nyanland by Jeija, Catapult by XYZ, and Livehouse by neko259) +-- lkjoel (main developer, code, ideas, textures) +-- == CONTRIBUTERS == +-- jordan4ibanez (code, ideas, textures) +-- Gilli (code, ideas, textures, mainly for the Glowstone) +-- Death Dealer (code, ideas, textures) +-- LolManKuba (ideas, textures) +-- IPushButton2653 (ideas, textures) +-- Menche (textures) +-- sdzen (ideas) +-- godkiller447 (ideas) +-- If I didn't list you, please let me know! + +local load_time_start = minetest.get_us_time() + +if not rawget(_G, "hell") then + hell = {} +end + +--== EDITABLE OPTIONS ==-- + +--says some information. +hell.info = true + +-- tell everyone about the generation +hell.inform_all = minetest.is_singleplayer() + +--1: 2: 3: +hell.max_spam = 2 + +-- Depth of the hell +local hell_middle = hell.DEPTH-360 + +-- forest bottom perlin multiplication +local f_bottom_scale = 4 + +-- forest bottom height +local f_h_min = hell_middle+10 + +-- forest top height +local f_h_max = f_h_min+250 + +-- Frequency of trees in the hell forest (higher is less frequent) +local tree_rarity = 200 + +-- Frequency of glowflowers in the hell forest (higher is less frequent) +local glowflower_rarity = 120 + +-- Frequency of hell grass in the hell forest (higher is less frequent) +local grass_rarity = 2 + +-- Frequency of hell mushrooms in the hell forest (higher is less frequent) +local mushroom_rarity = 80 + +local abm_tree_interval = 864 +local abm_tree_chance = 100 + +-- height of the hell generation's end +hell.start = f_h_max+100 + +-- Height of the hell (bottom of the hell is hell_middle - HELL_HEIGHT) +local HELL_HEIGHT = 30 +local HELL_BOTTOM = (hell_middle - HELL_HEIGHT) +hell.buildings = HELL_BOTTOM+12 + +-- Maximum amount of randomness in the map generation +HELL_RANDOM = 2 + +-- Frequency of Glowstone on the "roof" of the Hell (higher is less frequent) +local GLOWSTONE_FREQ_ROOF = 500 + +-- Frequency of lava (higher is less frequent) +local LAVA_FREQ = 100 + +local hell_structure_freq = 350 +local HELL_SHROOM_FREQ = 100 + +-- Maximum height of lava +--LAVA_HEIGHT = 2 +-- Frequency of Glowstone on lava (higher is less frequent) +--GLOWSTONE_FREQ_LAVA = 2 +-- Height of hell structures +--HELL_TREESIZE = 2 +-- Frequency of apples in a hell structure (higher is less frequent) +--HELL_APPLE_FREQ = 5 +-- Frequency of healing apples in a hell structure (higher is less frequent) +--HELL_HEAL_APPLE_FREQ = 10 +-- Start position for the Throne of Hades (y is relative to the bottom of the +-- hell) +--HADES_THRONE_STARTPOS = {x=0, y=1, z=0} +-- Spawn pos for when the hell hasn't been loaded yet (i.e. no portal in the +-- hell) (y is relative to the bottom of the hell) +--HELL_SPAWNPOS = {x=0, y=5, z=0} +-- Structure of the hell portal (all is relative to the hell portal creator +-- block) + +--== END OF EDITABLE OPTIONS ==-- + +if hell.info then + function hell:inform(msg, spam, t) + if spam <= self.max_spam then + local info + if t then + info = "[hell] " .. msg .. (" after ca. %.3g s"):format( + (minetest.get_us_time() - t) / 1000000) + else + info = "[hell] " .. msg + end + print(info) + if self.inform_all then + minetest.chat_send_all(info) + end + end + end +else + function hell.inform() + end +end + + +local path = minetest.get_modpath("hell") +dofile(path.."/weird_mapgen_noise.lua") +dofile(path.."/items.lua") +dofile(path.."/portal.lua") +--dofile(path.."/furnace.lua") +dofile(path.."/pearl.lua") + +-- Weierstrass function stuff from https://github.com/slemonide/gen +local SIZE = 1000 +local ssize = math.ceil(math.abs(SIZE)) +local function do_ws_func(depth, a, x) + local n = math.pi * x / (16 * SIZE) + local y = 0 + for k=1,depth do + y = y + math.sin(k^a * n) / k^a + end + return SIZE * y / math.pi +end + +local chunksize = minetest.settings:get("chunksize") or 5 +local ws_lists = {} +local function get_ws_list(a,x) + ws_lists[a] = ws_lists[a] or {} + local v = ws_lists[a][x] + if v then + return v + end + v = {} + for x=x,x + (chunksize*16 - 1) do + local y = do_ws_func(ssize, a, x) + v[x] = y + end + ws_lists[a][x] = v + return v +end + + +local function dif(z1, z2) + return math.abs(z1-z2) +end + +local function pymg(x1, x2, z1, z2) + return math.max(dif(x1, x2), dif(z1, z2)) +end + +local function r_area(manip, width, height, pos) + local emerged_pos1, emerged_pos2 = manip:read_from_map( + {x=pos.x-width, y=pos.y, z=pos.z-width}, + {x=pos.x+width, y=pos.y+height, z=pos.z+width} + ) + return VoxelArea:new({MinEdge=emerged_pos1, MaxEdge=emerged_pos2}) +end + +local function set_vm_data(manip, nodes, pos, t1, name, generated) + manip:set_data(nodes) + manip:write_to_map(not generated) + hell:inform(name.." grew at " .. minetest.pos_to_string(pos), + generated and 3 or 2, t1) +end + +-- Generated variables +--~ local HELL_ROOF_ABS = (hell_middle - HELL_RANDOM) +local f_yscale_top = (f_h_max-f_h_min)/2 +local f_yscale_bottom = f_yscale_top/2 +--HADES_THRONE_STARTPOS_ABS = {x=HADES_THRONE_STARTPOS.x, y=(HELL_BOTTOM + +--HADES_THRONE_STARTPOS.y), z=HADES_THRONE_STARTPOS.z} +--LAVA_Y = (HELL_BOTTOM + LAVA_HEIGHT) +--HADES_THRONE_ABS = {} +--HADES_THRONE_ENDPOS_ABS = {} +--HADES_THRONE_GENERATED = minetest.get_worldpath() .. "/hellhadesthrone.txt" +--HELL_SPAWNPOS_ABS = {x=HELL_SPAWNPOS.x, y=(HELL_BOTTOM + +--HELL_SPAWNPOS.y), z=HELL_SPAWNPOS.z} +--[[for i,v in ipairs(HADES_THRONE) do + v.pos.x = v.pos.x + HADES_THRONE_STARTPOS_ABS.x + v.pos.y = v.pos.y + HADES_THRONE_STARTPOS_ABS.y + v.pos.z = v.pos.z + HADES_THRONE_STARTPOS_ABS.z + HADES_THRONE_ABS[i] = v +end +local htx = 0 +local hty = 0 +local htz = 0 +for i,v in ipairs(HADES_THRONE_ABS) do + if v.pos.x > htx then + htx = v.pos.x + end + if v.pos.y > hty then + hty = v.pos.y + end + if v.pos.z > htz then + htz = v.pos.z + end +end +HADES_THRONE_ENDPOS_ABS = {x=htx, y=hty, z=htz}]] + +local c, hell_tree_nodes +local function define_contents() + c = { + ignore = minetest.get_content_id("ignore"), + air = minetest.get_content_id("air"), + lava = minetest.get_content_id("default:lava_source"), + gravel = minetest.get_content_id("default:gravel"), + coal = minetest.get_content_id("default:stone_with_coal"), + diamond = minetest.get_content_id("default:stone_with_diamond"), + mese = minetest.get_content_id("default:mese"), + + --https://github.com/Zeg9/minetest-glow + glowstone = minetest.get_content_id("glow:stone"), + + hell_shroom = minetest.get_content_id("riesenpilz:nether_shroom"), + + hellrack = minetest.get_content_id("hell:hellrack"), + hellrack_tiled = minetest.get_content_id("hell:hellrack_tiled"), + hellrack_black = minetest.get_content_id("hell:hellrack_black"), + hellrack_blue = minetest.get_content_id("hell:hellrack_blue"), + hellrack_brick = minetest.get_content_id("hell:hellrack_brick"), + white = minetest.get_content_id("hell:white"), + + hell_vine = minetest.get_content_id("hell:vine"), + blood = minetest.get_content_id("hell:blood"), + blood_top = minetest.get_content_id("hell:blood_top"), + blood_stem = minetest.get_content_id("hell:blood_stem"), + hell_apple = minetest.get_content_id("hell:apple"), + + hell_tree = minetest.get_content_id("hell:tree"), + hell_tree_corner = minetest.get_content_id("hell:tree_corner"), + hell_leaves = minetest.get_content_id("hell:leaves"), + hell_grass = { + minetest.get_content_id("hell:grass_small"), + minetest.get_content_id("hell:grass_middle"), + minetest.get_content_id("hell:grass_big") + }, + glowflower = minetest.get_content_id("hell:glowflower"), + hell_dirt = minetest.get_content_id("hell:dirt"), + hell_dirt_top = minetest.get_content_id("hell:dirt_top"), + hell_dirt_bottom = minetest.get_content_id("hell:dirt_bottom"), + } + local trn = {c.hell_tree, c.hell_tree_corner, c.hell_leaves, + c.hell_fruit} + hell_tree_nodes = {} + for i = 1,#trn do + hell_tree_nodes[trn[i]] = true + end +end + +local pr, contents_defined + +local function return_hell_ore(id, glowstone) + if glowstone + and pr:next(0,GLOWSTONE_FREQ_ROOF) == 1 then + return c.glowstone + end + if id == c.coal then + return c.hellrack_tiled + end + if id == c.gravel then + return c.hellrack_black + end + if id == c.diamond then + return c.hellrack_blue + end + if id == c.mese then + return c.white + end + return c.hellrack +end + +local f_perlins = {} + +-- abs(v) < 1-(persistance^octaves))/(1-persistance) = amp +--local perlin1 = minetest.get_perlin(13,3, 0.5, 50) --Get map specific perlin +-- local perlin2 = minetest.get_perlin(133,3, 0.5, 10) +-- local perlin3 = minetest.get_perlin(112,3, 0.5, 5) +local tmp = f_yscale_top*4 +local tmp2 = tmp/f_bottom_scale +local perlins = { + { -- amp 1.75 + seed = 13, + octaves = 3, + persist = 0.5, + spread = {x=50, y=50, z=50}, + scale = 1, + offset = 0, + }, + {-- amp 1.75 + seed = 133, + octaves = 3, + persist = 0.5, + spread = {x=10, y=10, z=10}, + scale = 1, + offset = 0, + }, + {-- amp 1.75 + seed = 112, + octaves = 3, + persist = 0.5, + spread = {x=5, y=5, z=5}, + scale = 1, + offset = 0, + }, + --[[forest_bottom = { + seed = 11, + octaves = 3, + persist = 0.8, + spread = {x=tmp2, y=tmp2, z=tmp2}, + scale = 1, + offset = 0, + },]] + forest_top = {-- amp 2.44 + seed = 21, + octaves = 3, + persist = 0.8, + spread = {x=tmp, y=tmp, z=tmp}, + scale = 1, + offset = 0, + }, +} + +-- buffers, see https://forum.minetest.net/viewtopic.php?f=18&t=16043 +local pelin_maps +local pmap1 = {} +local pmap2 = {} +local pmap3 = {} +local pmap_f_top = {} +local data = {} + +local structures_enabled = true +local vine_maxlength = math.floor(HELL_HEIGHT/4+0.5) + +local function grow_hellstructure(pos, generated) + local t1 = minetest.get_us_time() + + if not contents_defined then + define_contents() + contents_defined = true + end + + if not pos.x then print(dump(pos)) + hell:inform("Error: "..dump(pos), 1) + return + end + + local height = 6 + local manip = minetest.get_voxel_manip() + local rarea = r_area(manip, 2, height, pos) + local nodes = manip:get_data() + + local vi = rarea:indexp(pos) + for _ = 0, height-1 do + nodes[vi] = c.blood_stem + vi = vi + rarea.ystride + end + + for i = -1,1 do + for j = -1,1 do + nodes[rarea:index(pos.x+i, pos.y+height, pos.z+j)] = c.blood_top + end + end + + for k = -1, 1, 2 do + for l = -2+1, 2 do + local p1 = {pos.x+2*k, pos.y+height, pos.z-l*k} + local p2 = {pos.x+l*k, pos.y+height, pos.z+2*k} + local udat = c.blood_top + if math.random(2) == 1 then + nodes[rarea:index(p1[1], p1[2], p1[3])] = c.blood_top + nodes[rarea:index(p2[1], p2[2], p2[3])] = c.blood_top + udat = c.blood + end + nodes[rarea:index(p1[1], p1[2]-1, p1[3])] = udat + nodes[rarea:index(p2[1], p2[2]-1, p2[3])] = udat + end + for l = 0, 1 do + for _,p in ipairs({ + {pos.x+k, pos.y+height-1, pos.z-l*k}, + {pos.x+l*k, pos.y+height-1, pos.z+k}, + }) do + if math.random(2) == 1 then + nodes[rarea:index(p[1], p[2], p[3])] = c.hell_apple + --elseif math.random(10) == 1 then + -- nodes[rarea:index(p[1], p[2], p[3])] = c.apple + end + end + end + end + set_vm_data(manip, nodes, pos, t1, "blood", generated) +end + +local poshash = minetest.hash_node_position +local pos_from_hash = minetest.get_position_from_hash + +local function soft_node(id) + return id == c.air or id == c.ignore +end + +local function update_minmax(min, max, p) + min.x = math.min(min.x, p.x) + max.x = math.max(max.x, p.x) + min.z = math.min(min.z, p.z) + max.z = math.max(max.z, p.z) +end + +local fruit_chances = {} +for y = -2,1 do --like a hyperbola + fruit_chances[y] = math.floor(-4/(y-2)+0.5) +end + +local dirs = { + {-1, 0, 12, 19}, + {1, 0, 12, 13}, + {0, 1, 4}, + {0, -1, 4, 10}, +} + +local h_max = 26 +local h_stem_min = 3 +local h_stem_max = 7 +local h_arm_min = 2 +local h_arm_max = 6 +local r_arm_min = 1 +local r_arm_max = 5 +local fruit_rarity = 25 --a bigger number results in less fruits +local leaf_thickness = 3 --a bigger number results in more blank trees + +local h_trunk_max = h_max-h_arm_max + +local function grow_tree(pos, generated) + local t1 = minetest.get_us_time() + + if not contents_defined then + define_contents() + contents_defined = true + end + + local min = vector.new(pos) + local max = vector.new(pos) + min.y = min.y-1 + max.y = max.y+h_max + + local trunks = {} + local trunk_corners = {} + local h_stem = math.random(h_stem_min, h_stem_max) + local todo,n = {{x=pos.x, y=pos.y+h_stem, z=pos.z}},1 + while n do + local p = todo[n] + todo[n] = nil + n = next(todo) + + local used_dirs,u = {},1 + for _,dir in pairs(dirs) do + if math.random(1,2) == 1 then + used_dirs[u] = dir + u = u+1 + end + end + if not used_dirs[1] then + local dir1 = math.random(4) + local dir2 = math.random(3) + if dir1 <= dir2 then + dir2 = dir2+1 + end + used_dirs[1] = dirs[dir1] + used_dirs[2] = dirs[dir2] + end + for _,dir in pairs(used_dirs) do + local p = vector.new(p) + local r = math.random(r_arm_min, r_arm_max) + for j = 1,r do + local x = p.x+j*dir[1] + local z = p.z+j*dir[2] + trunks[poshash{x=x, y=p.y, z=z}] = dir[3] + end + r = r+1 + p.x = p.x+r*dir[1] + p.z = p.z+r*dir[2] + trunk_corners[poshash(p)] = dir[4] or dir[3] + local h = math.random(h_arm_min, h_arm_max) + for i = 1,h do + p.y = p.y + i + trunks[poshash(p)] = true + p.y = p.y - i + end + p.y = p.y+h + --n = #todo+1 -- caused small trees + todo[#todo+1] = p + end + if p.y > pos.y+h_trunk_max then + break + end + + n = n or next(todo) + end + local leaves = {} + local fruits = {} + local trunk_ps = {} + local count = 0 + + local ps = {} + local trunk_count = 0 + for i,par2 in pairs(trunks) do + local pos = pos_from_hash(i) + update_minmax(min, max, pos) + local z,y,x = pos.z, pos.y, pos.x + trunk_count = trunk_count+1 + ps[trunk_count] = {z,y,x, par2} + end + + for _,d in pairs(ps) do + if d[4] == true then + d[4] = nil + end + trunk_ps[#trunk_ps+1] = d + local pz, py, px = unpack(d) + count = count+1 + if count > leaf_thickness then + count = 0 + for y = -2,2 do + local fruit_chance = fruit_chances[y] + for z = -2,2 do + for x = -2,2 do + local distq = x*x+y*y+z*z + if distq ~= 0 + and math.random(1, math.sqrt(distq)) == 1 then + local x = x+px + local y = y+py + local z = z+pz + local vi = poshash{x=x, y=y, z=z} + if not trunks[vi] then + if fruit_chance + and math.random(1, fruit_rarity) == 1 + and math.random(1, fruit_chance) == 1 then + fruits[vi] = true + else + leaves[vi] = true + end + update_minmax(min, max, {x=x, z=z}) + end + end + end + end + end + end + end + + --ps = nil + --collectgarbage() + + for i = -1,h_stem+1 do + -- param2 explicitly set 0 due to possibly previous leaves node + trunk_ps[#trunk_ps+1] = {pos.z, pos.y+i, pos.x, 0} + end + + local manip = minetest.get_voxel_manip() + local emerged_pos1, emerged_pos2 = manip:read_from_map(min, max) + local varea = VoxelArea:new({MinEdge=emerged_pos1, MaxEdge=emerged_pos2}) + local nodes = manip:get_data() + local param2s = manip:get_param2_data() + + for i in pairs(leaves) do + local p = varea:indexp(pos_from_hash(i)) + if soft_node(nodes[p]) then + nodes[p] = c.hell_leaves + param2s[p] = math.random(0,179) + --param2s[p] = math.random(0,44) + end + end + + for i in pairs(fruits) do + local p = varea:indexp(pos_from_hash(i)) + if soft_node(nodes[p]) then + nodes[p] = c.hell_apple + end + end + + for i = 1,#trunk_ps do + local p = trunk_ps[i] + local par = p[4] + p = varea:index(p[3], p[2], p[1]) + if par then + param2s[p] = par + end + nodes[p] = c.hell_tree + end + + for i,par2 in pairs(trunk_corners) do + local vi = varea:indexp(pos_from_hash(i)) + nodes[vi] = c.hell_tree_corner + param2s[vi] = par2 + end + + manip:set_data(nodes) + manip:set_param2_data(param2s) + manip:write_to_map(not generated) + hell:inform("a hell tree with " .. trunk_count .. + " branch trunk nodes grew at " .. minetest.pos_to_string(pos), + generated and 3 or 2, t1) +end + +-- Create the Hell +minetest.register_on_generated(function(minp, maxp, seed) + --avoid big map generation + if not (maxp.y >= HELL_BOTTOM-100 and minp.y <= hell.start) then + return + end + + local t1 = minetest.get_us_time() + hell:inform("generates at: x=["..minp.x.."; "..maxp.x.."]; y=[" .. + minp.y.."; "..maxp.y.."]; z=["..minp.z.."; "..maxp.z.."]", 2) + + if not contents_defined then + define_contents() + contents_defined = true + end + + local buildings = 0 + if maxp.y <= HELL_BOTTOM then + buildings = 1 + elseif minp.y <= hell.buildings then + buildings = 2 + end + + local vm, emin, emax = minetest.get_mapgen_object("voxelmanip") + vm:get_data(data) + local varea = VoxelArea:new{MinEdge=emin, MaxEdge=emax} + + pr = PseudoRandom(seed+33) + local tab,num = {},1 + local trees,num_trees = {},1 + + --local perlin1 = minetest.get_perlin(13,3, 0.5, 50) + --local perlin2 = minetest.get_perlin(133,3, 0.5, 10) + --local perlin3 = minetest.get_perlin(112,3, 0.5, 5) + + local side_length = maxp.x - minp.x + 1 + local map_lengths_xyz = {x=side_length, y=side_length, z=side_length} + + if not pelin_maps then + pelin_maps = { + a = minetest.get_perlin_map(perlins[1], map_lengths_xyz), + b = minetest.get_perlin_map(perlins[2], map_lengths_xyz), + c = minetest.get_perlin_map(perlins[3], map_lengths_xyz), + forest_top = minetest.get_perlin_map(perlins.forest_top, + map_lengths_xyz), + } + end + pelin_maps.a:get2dMap_flat({x=minp.x, y=minp.z}, pmap1) + pelin_maps.b:get2dMap_flat({x=minp.x, y=minp.z}, pmap2) + pelin_maps.c:get2dMap_flat({x=minp.x, y=minp.z}, pmap3) + + local forest_possible = maxp.y > f_h_min and minp.y < f_h_max + + --local pmap_f_bottom = minetest.get_perlin_map(perlins.forest_bottom, + -- map_lengths_xyz):get2dMap_flat({x=minp.x, y=minp.z}) + local perlin_f_bottom, strassx, strassz + if forest_possible then + perlin_f_bottom = minetest.get_perlin(11, 3, 0.8, tmp2) + pelin_maps.forest_top:get2dMap_flat({x=minp.x, y=minp.z}, pmap_f_top) + strassx = get_ws_list(2, minp.x) + strassz = get_ws_list(2, minp.z) + end + + local num2, tab2 + if buildings >= 1 then + num2 = 1 + tab2 = hell_weird_noise({x=minp.x, y=hell.buildings-79, z=minp.z}, + pymg, 200, 8, 10, side_length-1) + end + + local count = 0 + for z=minp.z, maxp.z do + for x=minp.x, maxp.x do + + count = count+1 + + local test = pmap1[count]+1 + local test2 = pmap2[count] + local test3 = math.abs(pmap3[count]) + + local t = math.floor(test*3+0.5) + + local h + if test2 < 0 then + h = math.floor(test2*3+0.5)-1 + else + h = 3+t+pr:next(0,HELL_RANDOM) + end + + local generate_vine = false + if test3 >= 0.72+pr:next(0,HELL_RANDOM)/10 + and pr:next(0,HELL_RANDOM) == 1 then + generate_vine = true + end + + local bottom = HELL_BOTTOM+h + local top = hell_middle-pr:next(0,HELL_RANDOM)+t + + local py_h = 0 + local difn, noisp, py_h_g + if buildings >= 1 then + py_h = tab2[num2].y + num2 = num2+1 + + difn = hell.buildings-py_h + if difn == 5 then + noisp = 1 + elseif difn < 5 then + noisp = 2 + end + py_h_g = hell.buildings-7 + end + + local vi = varea:index(x, minp.y, z) + if buildings == 1 + and noisp then + if noisp == 1 then + for _ = 1,side_length do + data[vi] = c.hellrack_brick + vi = vi + varea.ystride + end + else + for _ = 1,side_length do + data[vi] = c.lava + vi = vi + varea.ystride + end + end + else + + local r_structure = pr:next(1,hell_structure_freq) + local r_shroom = pr:next(1,HELL_SHROOM_FREQ) + local r_glowstone = pr:next(0,GLOWSTONE_FREQ_ROOF) + local r_vine_length = pr:next(1,vine_maxlength) + + local f_bottom, f_top, is_forest, f_h_dirt + if forest_possible then + local p = {x=math.floor(x/f_bottom_scale), + z=math.floor(z/f_bottom_scale)} + local pstr = p.x.." "..p.z + if not f_perlins[pstr] then + f_perlins[pstr] = math.floor(f_h_min + (math.abs( + perlin_f_bottom:get2d{x=p.x, y=p.z} + 1)) + * f_yscale_bottom + 0.5) + end + local top_noise = pmap_f_top[count]+1 + if top_noise < 0 then + top_noise = -top_noise/10 + --hell:inform("ERROR: (perlin noise) ".. + -- pmap_f_top[count].." is not inside [-1; 1]", 1) + end + f_top = math.floor(f_h_max - top_noise*f_yscale_top + 0.5) + f_bottom = f_perlins[pstr]+pr:next(0,f_bottom_scale-1) + is_forest = f_bottom < f_top + f_h_dirt = f_bottom-pr:next(0,1) + end + + for y=minp.y, maxp.y do + local d_p_addp = data[vi] + --if py_h >= maxp.y-4 then + if y <= py_h + and noisp then + if noisp == 1 then + data[vi] = c.hellrack_brick + elseif noisp == 2 then + if y == py_h then + data[vi] = c.hellrack_brick + elseif y == py_h_g + and pr:next(1,3) <= 2 then + data[vi] = c.hellrack + elseif y <= py_h_g then + data[vi] = c.lava + else + data[vi] = c.air + end + end + elseif d_p_addp ~= c.air then + + if is_forest + and y == f_bottom then + data[vi] = c.hell_dirt_top + elseif is_forest + and y < f_bottom + and y >= f_h_dirt then + data[vi] = c.hell_dirt + elseif is_forest + and y == f_h_dirt-1 then + data[vi] = c.hell_dirt_bottom + elseif is_forest + and y == f_h_dirt+1 then + if pr:next(1,tree_rarity) == 1 then + trees[num_trees] = {x=x, y=y, z=z} + num_trees = num_trees+1 + elseif pr:next(1,mushroom_rarity) == 1 then + data[vi] = c.hell_shroom + elseif pr:next(1,glowflower_rarity) == 1 then + data[vi] = c.glowflower + elseif pr:next(1,grass_rarity) == 1 then + data[vi] = c.hell_grass[pr:next(1,3)] + else + data[vi] = c.air + end + elseif is_forest + and y > f_bottom + and y < f_top then + if not hell_tree_nodes[d_p_addp] then + data[vi] = c.air + end + elseif is_forest + and y == f_top then + local sel = math.floor(strassx[x]+strassz[z]+0.5)%10 + if sel <= 5 then + data[vi] = return_hell_ore(d_p_addp, true) + elseif sel == 6 then + data[vi] = c.hellrack_black + elseif sel == 7 then + data[vi] = c.glowstone + else + data[vi] = c.air + end + + elseif y <= HELL_BOTTOM then + if y <= bottom then + data[vi] = return_hell_ore(d_p_addp, true) + else + data[vi] = c.lava + end + elseif r_structure == 1 + and y == bottom then + tab[num] = {x=x, y=y-1, z=z} + num = num+1 + elseif y <= bottom then + if pr:next(1,LAVA_FREQ) == 1 then + data[vi] = c.lava + else + data[vi] = return_hell_ore(d_p_addp, false) + end + elseif r_shroom == 1 + and r_structure ~= 1 + and y == bottom+1 then + data[vi] = c.hell_shroom + elseif (y == top and r_glowstone == 1) then + data[vi] = c.glowstone + elseif y >= top then + data[vi] = return_hell_ore(d_p_addp, true) + elseif y <= top-1 + and generate_vine + and y >= top-r_vine_length then + data[vi] = c.hell_vine + else + data[vi] = c.air + end + end + vi = vi + varea.ystride + end + end + end + end + vm:set_data(data) +-- vm:set_lighting(12) +-- vm:calc_lighting() +-- vm:update_liquids() + vm:write_to_map(true) + + hell:inform("nodes set", 2, t1) + + local t2 = minetest.get_us_time() + local tr_bl_cnt = 0 + + if structures_enabled then -- Blood hellstructures + tr_bl_cnt = #tab + for i = 1,tr_bl_cnt do + grow_hellstructure(tab[i], true) + end + end + + if forest_possible then -- Forest trees + tr_bl_cnt = tr_bl_cnt + #trees + for i = 1,#trees do + grow_tree(trees[i], true) + end + end + + if tr_bl_cnt > 0 then + hell:inform(tr_bl_cnt .. " trees and blood structures set", 2, t2) + end + + t2 = minetest.get_us_time() + minetest.fix_light(minp, maxp) + + hell:inform("light fixed", 2, t2) + + hell:inform("done", 1, t1) +end) + +--abms + +minetest.register_abm({ + nodenames = {"hell:sapling"}, + neighbors = {"hell:blood_top"}, + interval = 20, + chance = 8, + action = function(pos) + local under = {x=pos.x, y=pos.y-1, z=pos.z} + if minetest.get_node_light(pos) < 4 + and minetest.get_node({x=pos.x, y=pos.y+1, z=pos.z}).name == "air" + and minetest.get_node(under).name == "hell:blood_top" then + grow_hellstructure(under) + end + end +}) + +minetest.register_abm({ + nodenames = {"hell:tree_sapling"}, + neighbors = {"group:hell_dirt"}, + interval = abm_tree_interval, + chance = abm_tree_chance, + action = function(pos) + if minetest.get_node({x=pos.x, y=pos.y+2, z=pos.z}).name == "air" + and minetest.get_node({x=pos.x, y=pos.y+1, z=pos.z}).name == "air" then + local udata = minetest.registered_nodes[ + minetest.get_node{x=pos.x, y=pos.y-1, z=pos.z}.name] + if udata + and udata.groups + and udata.groups.hell_dirt then + grow_tree(pos) + end + end + end +}) + +minetest.register_abm({ + nodenames = {"hell:hellrack_soil"}, + neighbors = {"air"}, + interval = 20, + chance = 20, + action = function(pos, node) + local par2 = node.param2 + if par2 == 0 then + return + end + pos.y = pos.y+1 + --mushrooms grow at dark places + if (minetest.get_node_light(pos) or 16) > 7 then + return + end + if minetest.get_node(pos).name == "air" then + minetest.set_node(pos, {name="riesenpilz:nether_shroom"}) + pos.y = pos.y-1 + minetest.set_node(pos, + {name="hell:hellrack_soil", param2=par2-1}) + end + end +}) + +local function grass_allowed(pos) + local nd = minetest.get_node(pos).name + if nd == "air" then + return true + end + if nd == "ignore" then + return 0 + end + local data = minetest.registered_nodes[nd] + if not data then + -- unknown node + return false + end + local drawtype = data.drawtype + if drawtype + and drawtype ~= "normal" + and drawtype ~= "liquid" + and drawtype ~= "flowingliquid" then + return true + end + local light = data.light_source + if light + and light > 0 then + return true + end + return false +end + +minetest.register_abm({ + nodenames = {"hell:dirt"}, + interval = 20, + chance = 9, + action = function(pos) + local allowed = grass_allowed({x=pos.x, y=pos.y+1, z=pos.z}) + if allowed == 0 then + return + end + if allowed then + minetest.set_node(pos, {name="hell:dirt_top"}) + end + end +}) + +minetest.register_abm({ + nodenames = {"hell:dirt_top"}, + interval = 30, + chance = 9, + action = function(pos) + local allowed = grass_allowed({x=pos.x, y=pos.y+1, z=pos.z}) + if allowed == 0 then + return + end + if not allowed then + minetest.set_node(pos, {name="hell:dirt"}) + end + end +}) + + +minetest.register_privilege("hell", + "Allows sending players to hell and extracting them") + +dofile(path.."/crafting.lua") +dofile(path.."/guide.lua") + + +local time = (minetest.get_us_time() - load_time_start) / 1000000 +local msg = ("[hell] loaded after ca. %g seconds."):format(time) +if time > 0.01 then + print(msg) +else + minetest.log("action", msg) +end diff --git a/init.lua b/init.lua new file mode 100644 index 0000000..ca75437 --- /dev/null +++ b/init.lua @@ -0,0 +1,35 @@ +local S +if minetest.get_translator ~= nil then + S = minetest.get_translator("hell") +else + -- mock the translator function for MT 0.4 + S = function(str, ...) + local args={...} + return str:gsub( + "@%d+", + function(match) return args[tonumber(match:sub(2))] end + ) + end +end + +-- Global Hell namespace +hell = {} +hell.modname = minetest.get_current_modname() +hell.path = minetest.get_modpath(hell.modname) +hell.get_translator = S + +-- Settings +hell.DEPTH = -20000 -- The y location of the Hell +hell.FASTTRAVEL_FACTOR = 10 -- 10 could be better value for Minetest, since there's no sprint, but ex-Minecraft players will be mathing for 8 +hell.HELL_REALM_ENABLED = true -- Setting to false disables the Hell and Hell portal + + +-- Override default settings with values from the .conf file, if any are present. +hell.FASTTRAVEL_FACTOR = tonumber(minetest.settings:get("hell_fasttravel_factor") or hell.FASTTRAVEL_FACTOR) +hell.HELL_REALM_ENABLED = minetest.settings:get_bool("hell_realm_enabled", hell.HELL_REALM_ENABLED) or hell.HELL_REALM_ENABLED + + +-- Load files +if hell.HELL_REALM_ENABLED then + dofile(hell.path .. "/hell.lua") +end diff --git a/items.lua b/items.lua new file mode 100644 index 0000000..09fd98c --- /dev/null +++ b/items.lua @@ -0,0 +1,1016 @@ +local hell_sound = default.node_sound_stone_defaults({ + dig = {name="hell_dig", gain=0.7}, + dug = {name="hell_dug", gain=1}, + footstep = {name="hell_footstep", gain=0.4} +}) + +local add_fence = minetest.register_fence +local function add_more_nodes(name) + local nd = "hell:"..name + if not string.find(name, "hell") then + name = "hell_"..name + end + local data = minetest.registered_nodes[nd] + if stairsplus then + stairsplus:register_all( + "hell", + name, + nd, + data + ) + minetest.register_alias("stairs:stair_"..name, "hell"..":stair_"..name) + minetest.register_alias("stairs:slab_"..name, "hell"..":slab_"..name) + else + stairs.register_stair_and_slab( + name, nd, + data.groups, + data.tiles, + data.description.." Stair", + data.description.." Slab", + data.sounds + ) + end + if add_fence then + add_fence({fence_of = nd}) + end +end + +--[[ +local function add_fence(name) + local def = minetest.registered_nodes[name] + local fencedef = {} + for _,i in pairs({"walkable", "sunlike_propagates"}) do + if def[i] ~= nil then + fencedef[i] = def[i] + end + end +end +--]] + +local creative_installed = minetest.global_exists("creative") + +local function digging_allowed(player, v) + if not player then + return false + end + if creative_installed and creative.is_enabled_for(player:get_player_name()) then + return true + end + local tool = player:get_wielded_item():get_name() + tool = minetest.registered_tools[tool] or tool == "" and minetest.registered_items[tool] + if not tool + or not tool.tool_capabilities then + return false + end + local groups = tool.tool_capabilities.groupcaps + if not groups then + return false + end + if groups.hell + and groups.hell.times[v] then + return true + end + return false +end + +-- Hellrack +minetest.register_node("hell:hellrack", { + description = "Hellrack", + tiles = {"hell_hellrack.png"}, + groups = {hell=2}, + sounds = hell_sound, + can_dig = function(_, player) + return digging_allowed(player, 2) + end, +}) +add_more_nodes("hellrack") + +minetest.register_node("hell:hellrack_tiled", { + description = "Tiled Hellrack", + tiles = {"hell_hellrack_tiled.png"}, + groups = {hell=2}, + sounds = hell_sound, + can_dig = function(_, player) + return digging_allowed(player, 2) + end, +}) +add_more_nodes("hellrack_tiled") + +minetest.register_node("hell:hellrack_soil", { + description = "Dirty Hellrack", + tiles = {"hell_hellrack.png^hell_hellrack_soil.png"}, + groups = {hell=2}, + sounds = hell_sound, + can_dig = function(_, player) + return digging_allowed(player, 2) + end, +}) + +minetest.register_node("hell:hellrack_black", { + description = "Black Hellrack", + tiles = {"hell_hellrack_black.png"}, + groups = {hell=2}, + sounds = hell_sound, + can_dig = function(_, player) + return digging_allowed(player, 2) + end, +}) +add_more_nodes("hellrack_black") + +minetest.register_node("hell:hellrack_blue", { + description = "Blue Hellrack", + tiles = {"hell_hellrack_blue.png"}, + groups = {hell=1}, + sounds = hell_sound, + can_dig = function(_, player) + return digging_allowed(player, 1) + end, +}) +add_more_nodes("hellrack_blue") + +-- Hellbrick +minetest.register_node("hell:hellrack_brick", { + description = "Hellrack Brick", + tiles = {"hell_hellrack_brick.png"}, + groups = {hell=3}, + sounds = hell_sound, + can_dig = function(_, player) + return digging_allowed(player, 3) + end, +}) +add_more_nodes("hellrack_brick") + +minetest.register_node("hell:hellrack_brick_blue", { + description = "Blue Hellrack Brick", + tiles = {"hell_hellrack_brick_blue.png"}, + groups = {hell=3}, + sounds = hell_sound, + can_dig = function(_, player) + return digging_allowed(player, 3) + end, +}) +add_more_nodes("hellrack_brick_blue") + +minetest.register_node("hell:hellrack_brick_black", { + description = "Black Hellrack Brick", + tiles = {"hell_hellrack_brick_black.png"}, + groups = {hell=3}, + sounds = hell_sound, + can_dig = function(_, player) + return digging_allowed(player, 3) + end, +}) +add_more_nodes("hellrack_brick_black") + +minetest.register_node("hell:white", { + description = "Siwtonic block", + tiles = {"hell_white.png"}, + groups = {hell=1}, + sounds = hell_sound, + can_dig = function(_, player) + return digging_allowed(player, 1) + end, +}) +add_more_nodes("white") + + +-- Hell blood +minetest.register_node("hell:sapling", { + description = "Hell Blood Child", + drawtype = "plantlike", + tiles = {"hell_sapling.png"}, + inventory_image = "hell_sapling.png", + wield_image = "hell_sapling.png", + paramtype = "light", + walkable = false, + selection_box = { + type = "fixed", + fixed = {-0.3, -0.5, -0.3, 0.3, 0.35, 0.3} + }, + groups = {snappy=2, oddly_breakable_by_hand=2, attached_node=1}, + sounds = default.node_sound_leaves_defaults(), +}) + +minetest.register_node("hell:blood", { + description = "Hell Blood", + tiles = {"hell_blood.png"}, + groups = {snappy=2, choppy=2, oddly_breakable_by_hand=1}, + sounds = default.node_sound_wood_defaults(), +}) +add_more_nodes("blood") + +minetest.register_node("hell:blood_cooked", { + description = "Cooked Hell Blood", + tiles = {"hell_blood_cooked.png"}, + groups = {hell=3}, + sounds = hell_sound, + furnace_burntime = 10, + can_dig = function(_, player) + return digging_allowed(player, 3) + end, +}) +add_more_nodes("blood_cooked") + +minetest.register_node("hell:blood_empty", { + description = "Hell Blood Extracted", + tiles = {"hell_blood_empty.png"}, + groups = {snappy=2, choppy=2, oddly_breakable_by_hand=1}, + sounds = default.node_sound_wood_defaults(), +}) +add_more_nodes("blood_empty") + + +minetest.register_node("hell:blood_top", { + description = "Hell Blood Head", + tiles = {"hell_blood_top.png", "hell_blood.png", "hell_blood.png^hell_blood_side.png"}, + groups = {snappy=2, choppy=2, oddly_breakable_by_hand=1}, + sounds = default.node_sound_wood_defaults(), +}) +add_more_nodes("blood_top") + +minetest.register_node("hell:blood_top_cooked", { + description = "Cooked Hell Blood Head", + tiles = {"hell_blood_top_cooked.png", "hell_blood_cooked.png", "hell_blood_cooked.png^hell_blood_side_cooked.png"}, + groups = {hell=3}, + sounds = hell_sound, + furnace_burntime = 10, + can_dig = function(_, player) + return digging_allowed(player, 3) + end, +}) +add_more_nodes("blood_top_cooked") + +minetest.register_node("hell:blood_top_empty", { + description = "Hell Blood Head Extracted", + tiles = {"hell_blood_top_empty.png", "hell_blood_empty.png", "hell_blood_empty.png^hell_blood_side_empty.png"}, + groups = {snappy=2, choppy=2, oddly_breakable_by_hand=1}, + sounds = default.node_sound_wood_defaults(), +}) +add_more_nodes("blood_top_empty") + + +minetest.register_node("hell:blood_stem", { + description = "Hell Blood Stem", + tiles = {"hell_blood_stem_top.png", "hell_blood_stem_top.png", "hell_blood_stem.png"}, + groups = {snappy=2, choppy=2, oddly_breakable_by_hand=1}, + sounds = default.node_sound_wood_defaults(), +}) +add_more_nodes("blood_stem") + +minetest.register_node("hell:blood_stem_cooked", { + description = "Cooked Hell Blood Stem", + tiles = {"hell_blood_stem_top_cooked.png", "hell_blood_stem_top_cooked.png", "hell_blood_stem_cooked.png"}, + groups = {hell=3}, + sounds = hell_sound, + furnace_burntime = 30, + can_dig = function(_, player) + return digging_allowed(player, 3) + end, +}) +add_more_nodes("blood_stem_cooked") + +minetest.register_node("hell:blood_stem_empty", { + description = "Hell Blood Stem Extracted", + tiles = {"hell_blood_stem_top_empty.png", "hell_blood_stem_top_empty.png", "hell_blood_stem_empty.png"}, + groups = {tree=1, choppy=2, oddly_breakable_by_hand=1}, + sounds = default.node_sound_wood_defaults(), +}) +add_more_nodes("blood_stem_empty") + + +minetest.register_node("hell:wood", { + description = "Hell Blood Wood", + tiles = {"hell_wood.png"}, + groups = {choppy=2, oddly_breakable_by_hand=2}, + sounds = default.node_sound_wood_defaults(), +}) +add_more_nodes("wood") + +minetest.register_node("hell:wood_cooked", { + description = "Cooked Hell Blood Wood", + tiles = {"hell_wood_cooked.png"}, + groups = {hell=3}, + sounds = hell_sound, + furnace_burntime = 8, + can_dig = function(_, player) + return digging_allowed(player, 3) + end, +}) +add_more_nodes("wood_cooked") + +minetest.register_node("hell:wood_empty", { + description = "Hell Wood", + tiles = {"hell_wood_empty.png"}, + groups = {choppy=2, oddly_breakable_by_hand=2, wood=1}, + sounds = default.node_sound_wood_defaults(), +}) +add_more_nodes("wood_empty") + +minetest.register_node("hell:extractor", { + description = "Hell Blood Extractor", + tiles = {"hell_blood_extractor.png"}, + groups = {hell=3}, + sounds = hell_sound, + can_dig = function(_, player) + return digging_allowed(player, 3) + end, +}) + +-- Hell fruit +minetest.register_node("hell:fruit_leaves", { + description = "Hell Fruit Leaves", + tiles = {"hell_fruit_leaves.png"}, + groups = {fleshy=3, dig_immediate=2}, + sounds = default.node_sound_defaults(), + furnace_burntime = 18, +}) +add_more_nodes("fruit_leaves") + +local function room_for_items(inv) + local free_slots = 0 + for _,i in ipairs(inv:get_list("main")) do + if i:get_count() == 0 then + free_slots = free_slots+1 + end + end + if free_slots < 2 then + return false + end + return true +end + +local drop_mushroom = minetest.registered_nodes["riesenpilz:nether_shroom"].on_drop +minetest.override_item("riesenpilz:nether_shroom", { + on_drop = function(itemstack, dropper, pos) + if dropper:get_player_control().aux1 then + return drop_mushroom(itemstack, dropper, pos) + end + local inv = dropper:get_inventory() + if not inv then + return + end + if not room_for_items(inv) then + return + end + minetest.sound_play("hell_remove_leaf", {pos = pos, gain = 0.25}) + itemstack:take_item() + inv:add_item("main", "hell:shroom_head") + inv:add_item("main", "hell:shroom_stem") + return itemstack + end, +}) + +minetest.register_node("hell:apple", { + description = "Hell Fruit", + drawtype = "nodebox", + tiles = {"hell_fruit_top.png", "hell_fruit_bottom.png", "hell_fruit.png", "hell_fruit.png^[transformFX", "hell_fruit.png^[transformFX", "hell_fruit.png"}, + node_box = { + type = "fixed", + fixed = { + {-1/6, -1/4, -1/6, 1/6, -1/6, 1/6}, + + {-1/6, -1/6, -1/4, 1/6, 1/6, 1/4}, + {-1/4, -1/6, -1/6, 1/4, 1/6, 1/6}, + + {-1/4, 1/6, -1/12, 1/4, 1/4, 1/12}, + {-1/12, 1/6, -1/4, 1/12, 1/4, 1/4}, + + {-1/6, 1/6, -1/6, 1/6, 1/3, 1/6}, + + {-1/12, 1/3, -1/12, 0, 5/12, 0}, + + {-1/12, 5/12, -1/6, 0, 0.5, 1/12}, + {-1/6, 5/12, -1/12, 1/12, 0.5, 0}, + } + }, + paramtype = "light", + groups = {fleshy=3, dig_immediate=3}, + sounds = default.node_sound_defaults(), + furnace_burntime = 6, + on_use = minetest.item_eat(-5, "hell:blood_extracted 2"), +}) + +local drop_fruit = minetest.registered_nodes["hell:apple"].on_drop +minetest.override_item("hell:apple", { + on_drop = function(itemstack, dropper, pos) + if dropper:get_player_control().aux1 then + return drop_fruit(itemstack, dropper, pos) + end + local inv = dropper:get_inventory() + if not inv then + return + end + if not room_for_items(inv) then + return + end + minetest.sound_play("hell_remove_leaf", {pos = pos, gain = 0.25}) + itemstack:take_item() + inv:add_item("main", "hell:fruit_leaf") + inv:add_item("main", "hell:fruit_no_leaf") + return itemstack + end, +}) + +-- Hell vine +minetest.register_node("hell:vine", { + description = "Hell vine", + walkable = false, + drop = "hell:sapling", + sunlight_propagates = true, + paramtype = "light", + tiles = { "hell_vine.png" }, + drawtype = "plantlike", + inventory_image = "hell_vine.png", + groups = { snappy = 3,flammable=2 }, + sounds = default.node_sound_leaves_defaults(), + after_dig_node = function(pos, _, _, digger) + if digger then + local p = {x=pos.x, y=pos.y-1, z=pos.z} + local nn = minetest.get_node(p) + if nn.name == "hell:vine" then + minetest.node_dig(p, nn, digger) + end + end + end +}) + + +-- forest stuff + +for n,i in pairs({"small", "middle", "big"}) do + minetest.register_node("hell:grass_"..i, { + description = "Hell Grass", + drawtype = "plantlike", + waving = 1, + tiles = {"hell_grass_"..i..".png"}, + inventory_image = "hell_grass_"..i..".png", + wield_image = "hell_grass_"..i..".png", + paramtype = "light", + walkable = false, + buildable_to = true, + drop = "hell:grass "..n, + groups = {snappy=3,flora=1,attached_node=1}, + sounds = default.node_sound_leaves_defaults(), + selection_box = { + type = "fixed", + fixed = {-0.5, -0.5, -0.5, 0.5, -5/16, 0.5}, + }, + }) +end + +minetest.register_node("hell:glowflower", { + description = "Glowing Flower", + drawtype = "plantlike", + tiles = {"hell_glowflower.png"}, + inventory_image = "hell_glowflower.png", + wield_image = "hell_glowflower.png", + sunlight_propagates = true, + paramtype = "light", + walkable = false, + buildable_to = true, + light_source = 10, + groups = {snappy=3,flammable=2,flower=1,flora=1,attached_node=1}, + sounds = default.node_sound_leaves_defaults(), + selection_box = { + type = "fixed", + fixed = { -0.15, -0.5, -0.15, 0.15, 0.2, 0.15 }, + }, +}) + +minetest.register_node("hell:tree_sapling", { + description = "Hell Tree Sapling", + drawtype = "plantlike", + tiles = {"hell_tree_sapling.png"}, + inventory_image = "hell_tree_sapling.png", + wield_image = "hell_tree_sapling.png", + paramtype = "light", + walkable = false, + selection_box = { + type = "fixed", + fixed = {-0.3, -0.5, -0.3, 0.3, 0.35, 0.3} + }, + groups = {snappy=2, oddly_breakable_by_hand=2, attached_node=1}, + sounds = default.node_sound_leaves_defaults(), +}) + +minetest.register_node("hell:tree", { + description = "Hell Trunk", + tiles = {"hell_tree_top.png", "hell_tree_top.png", "hell_tree.png"}, + paramtype2 = "facedir", + is_ground_content = false, + groups = {tree=1,choppy=2,oddly_breakable_by_hand=1}, + sounds = default.node_sound_wood_defaults(), + on_place = minetest.rotate_node +}) + +minetest.register_node("hell:tree_corner", { + description = "Hell Trunk Corner", + tiles = {"hell_tree.png^[transformR180", "hell_tree_top.png", "hell_tree_corner.png^[transformFY", + "hell_tree_corner.png^[transformR180", "hell_tree.png", "hell_tree_top.png"}, + paramtype2 = "facedir", + is_ground_content = false, + groups = {tree=1,choppy=2,oddly_breakable_by_hand=1,not_in_creative_inventory=1}, + drop = "hell:tree", + sounds = default.node_sound_wood_defaults(), + on_place = minetest.rotate_node +}) + +minetest.register_node("hell:forest_wood", { + description = "Hell Wood Block", + tiles = {"hell_forest_wood.png"}, + groups = {choppy=2,oddly_breakable_by_hand=2,wood=1}, + sounds = default.node_sound_wood_defaults(), +}) +add_more_nodes("forest_wood") + +minetest.register_node("hell:leaves", { + description = "Hell Leaves", + drawtype = "plantlike", + waving = 1, + visual_scale = math.sqrt(2) + 0.01, + tiles = {"hell_leaves.png"}, + inventory_image = "hell_leaves.png", + wield_image = "hell_leaves.png", + paramtype = "light", + paramtype2 = "degrotate", + is_ground_content = false, + groups = {snappy=3, leafdecay=3, leaves=1}, + drop = { + max_items = 1, + items = { + { + items = {"hell:tree_sapling"}, + rarity = 30, + }, + { + items = {"hell:leaves"}, + } + } + }, + sounds = default.node_sound_leaves_defaults(), +}) + +minetest.register_node("hell:dirt", { + description = "Hell Dirt", + tiles = {"hell_dirt.png"}, + groups = {crumbly=3,soil=1,hell_dirt=1}, + sounds = default.node_sound_dirt_defaults(), +}) + +minetest.register_node("hell:dirt_top", { + description = "Hell Dirt Top", + tiles = {"hell_dirt_top.png", "hell_dirt.png", + {name="hell_dirt.png^hell_dirt_top_side.png", tileable_vertical = false} + }, + groups = {crumbly=3,soil=1,hell_dirt=1}, + drop = "hell:dirt", + sounds = default.node_sound_dirt_defaults({ + footstep = {name="default_grass_footstep", gain=0.25}, + }), +}) + +minetest.register_node("hell:dirt_bottom", { + description = "Hellrack Dirt Transition", + tiles = {"hell_dirt.png", "hell_hellrack.png", + {name="hell_hellrack.png^hell_dirt_transition.png", tileable_vertical = false} + }, + groups = {hell=2}, + drop = "hell:hellrack", + sounds = default.node_sound_dirt_defaults({ + dig = {name="hell_dig", gain=0.7}, + dug = {name="hell_dug", gain=1}, + }), + can_dig = function(_, player) + return digging_allowed(player, 2) + end, +}) + + +-- Hell torch +minetest.register_node("hell:torch", { + description = "Hell Torch", + drawtype = "torchlike", + tiles = {"hell_torch_on_floor.png", "hell_torch_on_ceiling.png", + { + name = "hell_torch.png", + animation = { + type = "vertical_frames", + aspect_w = 16, + aspect_h = 16, + length = 2.0, + }, + }, + }, + inventory_image = "hell_torch_on_floor.png", + wield_image = "hell_torch_on_floor.png", + paramtype = "light", + paramtype2 = "wallmounted", + sunlight_propagates = true, + walkable = false, + light_source = 13, + selection_box = { + type = "wallmounted", + wall_top = {-0.1, 0.5-0.6, -0.1, 0.1, 0.5, 0.1}, + wall_bottom = {-0.1, -0.5, -0.1, 0.1, -0.5+0.6, 0.1}, + wall_side = {-0.5, -0.3, -0.1, -0.5+0.3, 0.3, 0.1}, + }, + groups = {choppy=2, dig_immediate=3, attached_node=1, hot=3, igniter=1}, + legacy_wallmounted = true, + sounds = default.node_sound_defaults(), +}) + +local invisible = "hell_transparent.png" +minetest.register_node("hell:portal", { + description = "Hell Portal Essence", + tiles = {invisible, invisible, invisible, invisible, "hell_portal_stuff.png"}, + inventory_image = "hell_portal_stuff.png", + wield_image = "hell_portal_stuff.png", + light_source = 12, + paramtype = "light", + sunlight_propagates = true, + use_texture_alpha = true, + walkable = false, + pointable = false, + buildable_to = false, + drop = "", + diggable = false, + groups = {not_in_creative_inventory=1}, + post_effect_color = {a=200, r=50, g=0, b=60},--{a=180, r=128, g=0, b=128} + drawtype = "nodebox", + paramtype2 = "facedir", + node_box = { + type = "fixed", + fixed = { + {-0.5, -0.5, -0.1, 0.5, 0.5, 0.1}, + }, + }, +}) + + +minetest.register_craftitem("hell:grass", { + description = "Hell Grass", + inventory_image = "hell_grass.png", +}) + +minetest.register_craftitem("hell:grass_dried", { + description = "Dried Hell Grass", + inventory_image = "hell_grass_dried.png", + furnace_burntime = 1, +}) + +minetest.register_craftitem("hell:forest_planks", { + description = "Hell Wooden Planks", + inventory_image = "hell_forest_planks.png", + stack_max = 990, +}) + +minetest.register_craftitem("hell:bark", { + description = "Hell Trunk Bark", + inventory_image = "hell_bark.png", + furnace_burntime = 5, +}) + +-- Hell Pearl +minetest.register_craftitem("hell:pearl", { + description = "Hell Pearl", + inventory_image = "hell_pearl.png", +}) + +minetest.register_craftitem("hell:stick", { + description = "Hell Stick", + inventory_image = "hell_stick.png", + groups = {stick=1}, +}) + +local tmp = {} +minetest.register_craftitem("hell:shroom_head", { + description = "Hell Mushroom Head", + inventory_image = "hell_shroom_top.png", + furnace_burntime = 3, + on_place = function(itemstack, _, pointed_thing) + if not pointed_thing then + return + end + + if pointed_thing.type ~= "node" then + return + end + + local pos = minetest.get_pointed_thing_position(pointed_thing) + local node = minetest.get_node(pos) + local pstr = pos.x.." "..pos.y.." "..pos.z + + if node.name == "hell:hellrack_soil" + and not tmp[pstr] then + minetest.sound_play("default_grass_footstep", {pos=pos}) + minetest.set_node(pos, {name="hell:hellrack_soil", param2=math.max(node.param2, math.random(3, 10))}) + tmp[pstr] = true + minetest.after(3, function() tmp[pos.x.." "..pos.y.." "..pos.z] = nil end) + end + end +}) + +minetest.register_craftitem("hell:shroom_stem", { + description = "Hell Mushroom Stem", + inventory_image = "hell_shroom_stem.png", + furnace_burntime = 3, +}) + +minetest.register_craftitem("hell:fruit_leaf", { + description = "Hell Fruit Leaf", + inventory_image = "hell_fruit_leaf.png", + furnace_burntime = 2, +}) + +minetest.register_craftitem("hell:fruit_no_leaf", { + description = "Hell Fruit Without Leaf", + inventory_image = "hell_fruit_no_leaf.png", + furnace_burntime = 4, +}) + +minetest.register_craftitem("hell:fim", { + description = "Hell FIM", --fruit in mushroom + inventory_image = "hell_fim.png", + furnace_burntime = 10, +}) + +local blood_exno = {} +for _,i in ipairs({"hell:blood", "hell:blood_top", "hell:blood_stem"}) do + blood_exno[i] = i.."_empty" +end + +minetest.register_craftitem("hell:blood_extracted", { + description = "Blood", + inventory_image = "hell_blood_extracted.png", + on_place = function(itemstack, _, pointed_thing) + if not pointed_thing then + return + end + + if pointed_thing.type ~= "node" then + return + end + + local pos = minetest.get_pointed_thing_position(pointed_thing) + local node = minetest.get_node_or_nil(pos) + + if not node then + return + end + + if node.name == "hell:vine" then + pos = {x=pos.x, y=pos.y-1, z=pos.z} + if minetest.get_node(pos).name == "air" then + minetest.set_node(pos, {name = "hell:vine"}) + end + itemstack:take_item() + return itemstack + end + + if node.name ~= "hell:extractor" then + return + end + itemstack:take_item() + minetest.after(1, function(pos) + for i = -1,1,2 do + for _,p in ipairs({ + {x=pos.x+i, y=pos.y, z=pos.z}, + {x=pos.x, y=pos.y, z=pos.z+i}, + }) do + local nodename = blood_exno[minetest.get_node(p).name] + if nodename then + minetest.set_node(p, {name=nodename}) + p = vector.add(p, {x=math.random()-0.5, y=math.random()+0.5, z=math.random()-0.5}) + minetest.sound_play("hell_extract_blood", {pos = p, gain = 1}) + minetest.add_item(p, "hell:blood_extracted") + end + end + end + end, pos) + + return itemstack + end +}) + +minetest.register_craftitem("hell:hotbed", { + description = "Cooked Blood", + inventory_image = "hell_hotbed.png", + on_place = function(itemstack, _, pointed_thing) + if not pointed_thing then + return + end + if pointed_thing.type ~= "node" then + return + end + local pos = minetest.get_pointed_thing_position(pointed_thing) + local node = minetest.get_node(pos) + + if node.name ~= "hell:hellrack" then + return + end + + minetest.sound_play("default_place_node", {pos=pos}) + minetest.set_node(pos, {name = "hell:hellrack_soil"}) + + itemstack:take_item() + return itemstack + end +}) + + +minetest.register_tool("hell:pick_mushroom", { + description = "Hell Mushroom Pickaxe", + inventory_image = "hell_pick_mushroom.png", + tool_capabilities = { + max_drop_level=0, + groupcaps={ + cracky = {times={[3]=3}, uses=1, maxlevel=1}, + hell = {times={[3]=3}, uses=1, maxlevel=1}, + }, + }, +}) + +minetest.register_tool("hell:pick_wood", { + description = "Hell Wood Pickaxe", + inventory_image = "hell_pick_wood.png", + tool_capabilities = { + full_punch_interval = 1.2, + max_drop_level=0, + groupcaps={ + cracky = {times={[3]=1.6}, uses=10, maxlevel=1}, + hell = {times={[2]=6, [3]=1.6}, uses=10, maxlevel=1}, + }, + damage_groups = {fleshy=2}, + }, +}) + +minetest.register_tool("hell:pick_hellrack", { + description = "Hellrack Pickaxe", + inventory_image = "hell_pick_hellrack.png", + tool_capabilities = { + full_punch_interval = 1.3, + max_drop_level=0, + groupcaps={ + cracky = {times={[2]=2.0, [3]=1.20}, uses=20, maxlevel=1}, + hell = {times={[1]=16, [2]=2, [3]=1.20}, uses=20, maxlevel=1}, + }, + damage_groups = {fleshy=3}, + }, +}) + +minetest.register_tool("hell:pick_hellrack_blue", { + description = "Blue Hellrack Pickaxe", + inventory_image = "hell_pick_hellrack_blue.png", + tool_capabilities = { + full_punch_interval = 1.0, + max_drop_level=1, + groupcaps={ + cracky = {times={[1]=4.00, [2]=1.60, [3]=0.80}, uses=30, maxlevel=2}, + hell = {times={[1]=4.00, [2]=1.60, [3]=0.80}, uses=30, maxlevel=2}, + }, + damage_groups = {fleshy=4}, + }, +}) + +minetest.register_tool("hell:pick_white", { + description = "Siwtonic Pickaxe", + inventory_image = "hell_pick_white.png", + tool_capabilities = { + full_punch_interval = 0.9, + max_drop_level=3, + groupcaps={ + cracky = {times={[1]=1, [2]=0.8, [3]=0.3}, uses=180, maxlevel=3}, + hell = {times={[1]=1, [2]=0.5, [3]=0.3}, uses=180, maxlevel=3}, + }, + damage_groups = {fleshy=5}, + }, +}) + +minetest.register_tool("hell:axe_hellrack", { + description = "Hellrack Axe", + inventory_image = "hell_axe_hellrack.png", + tool_capabilities = { + full_punch_interval = 1.3, + max_drop_level=0, + groupcaps={ + choppy={times={[1]=2.9, [2]=1.9, [3]=1.4}, uses=20, maxlevel=1}, + }, + damage_groups = {fleshy=4}, + }, +}) + +minetest.register_tool("hell:axe_hellrack_blue", { + description = "Blue Hellrack Axe", + inventory_image = "hell_axe_hellrack_blue.png", + tool_capabilities = { + full_punch_interval = 0.9, + max_drop_level=1, + groupcaps={ + choppy={times={[1]=2.5, [2]=1.5, [3]=1}, uses=30, maxlevel=2}, + }, + damage_groups = {fleshy=6}, + }, +}) + +minetest.register_tool("hell:axe_white", { + description = "Siwtonic Axe", + inventory_image = "hell_axe_white.png", + tool_capabilities = { + full_punch_interval = 0.9, + max_drop_level=1, + groupcaps={ + choppy={times={[1]=1.2, [2]=0.5, [3]=0.3}, uses=180, maxlevel=2}, + }, + damage_groups = {fleshy=8}, + }, +}) + +minetest.register_tool("hell:shovel_hellrack", { + description = "Hellrack Shovel", + inventory_image = "hell_shovel_hellrack.png", + wield_image = "hell_shovel_hellrack.png^[transformR90", + tool_capabilities = { + full_punch_interval = 1.4, + max_drop_level=0, + groupcaps={ + crumbly = {times={[1]=1.7, [2]=1.1, [3]=0.45}, uses=22, maxlevel=2}, + }, + damage_groups = {fleshy=2}, + }, +}) + +minetest.register_tool("hell:shovel_hellrack_blue", { + description = "Blue Hellrack Shovel", + inventory_image = "hell_shovel_hellrack_blue.png", + wield_image = "hell_shovel_hellrack_blue.png^[transformR90", + tool_capabilities = { + full_punch_interval = 1.1, + max_drop_level=1, + groupcaps={ + crumbly = {times={[1]=1.4, [2]=0.8, [3]=0.35}, uses=50, maxlevel=2}, + }, + damage_groups = {fleshy=3}, + }, +}) + +minetest.register_tool("hell:shovel_white", { + description = "Siwtonic Shovel", + inventory_image = "hell_shovel_white.png", + wield_image = "hell_shovel_white.png^[transformR90", + tool_capabilities = { + full_punch_interval = 1, + max_drop_level=1, + groupcaps={ + crumbly = {times={[1]=0.95, [2]=0.45, [3]=0.1}, uses=151, maxlevel=3}, + }, + damage_groups = {fleshy=4}, + }, +}) + +minetest.register_tool("hell:sword_hellrack", { + description = "Hellrack Sword", + inventory_image = "hell_sword_hellrack.png", + tool_capabilities = { + full_punch_interval = 1, + max_drop_level=0, + groupcaps={ + snappy={times={[2]=1.3, [3]=0.38}, uses=40, maxlevel=1}, + }, + damage_groups = {fleshy=5}, + }, +}) + +minetest.register_tool("hell:sword_hellrack_blue", { + description = "Blue Hellrack Sword", + inventory_image = "hell_sword_hellrack_blue.png", + tool_capabilities = { + full_punch_interval = 0.8, + max_drop_level=1, + groupcaps={ + snappy={times={[1]=2.5, [2]=1.1, [3]=0.33}, uses=40, maxlevel=2}, + }, + damage_groups = {fleshy=7}, + }, +}) + +minetest.register_tool("hell:sword_white", { + description = "Siwtonic Sword", + inventory_image = "hell_sword_white.png", + wield_image = "hell_sword_white.png^[transformR90", + tool_capabilities = { + full_punch_interval = 0.7, + max_drop_level=1, + groupcaps={ + snappy={times={[1]=1.7, [2]=0.8, [3]=0.2}, uses=100, maxlevel=3}, + }, + damage_groups = {fleshy=11}, + }, +}) + + +-- override creative hand +if minetest.settings:get_bool("creative_mode") then + local capas = minetest.registered_items[""].tool_capabilities + capas.groupcaps.hell = capas.groupcaps.cracky + minetest.override_item("", {tool_capabilities = capas}) +end diff --git a/locale/hell.fr.tr b/locale/hell.fr.tr new file mode 100644 index 0000000..96679df --- /dev/null +++ b/locale/hell.fr.tr @@ -0,0 +1,8 @@ +# textdomain: hell +For any reason you arrived here. Type /hell_help to find out things like craft recipes.=Peu importe la raison, vous vous retrouvez ici. Entrez /hell_help pour trouver quoi faire comme des recettes de craft. +Hell Gate=Porte de l'Enfer +Construction requires 16 blocks of ??. The finished frame must be in the shape of a circle and laid vertically, like a door.=La construction requiert 16 blocks de ??. Le cadre fini doit être en forme de cercle et posé verticalement, comme une porte. +However, I never knew what material to use for building this door despite my many attempts.=Par contre je n'ai jamais su quels matériaux utiliser pour construire cette porte malgré mes multiples essaies. +One day, however, I met an old lady who frankly looked like a witch. In the course of our discussion we came to talk about the Hell Gate. This old lady confessed to me that in her family there was a legend that one of her ancestors had managed to activate the portal. But that the poor man was instantly killed as he passed through it. The gate was destroyed and several years passed. But since a certain night, the poor widow of the deceased began to rave that her Husband had come back from the dead to take her also to hell because he said that he had made this world a wonderful place and that after several years, he would have found a way to come back and return to it as he wished without causing death. A few days later, the widow disappeared without a trace. Since then the house was destroyed in a fire with all the secrets it could hold. Only an old cauldron remained amidst the ashes.=Un jour cependant, je fis la rencontre d'une vielle dame qui franchement avait l'allure d'une sorcière. Au cours de notre discussion nous en vîmes à parler de la Porte de l'Enfer. Cette vieille dame me confessa que dans sa famille se perpétuait une légende selon laquelle un de ses ancêtres serait parvenu à activer le portail. Mais que le pauvre homme fût instantanément tué en le traversant. Le portail fût détruit et plusieurs années ont passées. Mais depuis une certaine nuit, la pauvre veuve du défunt se mit à délirer en affirmant que son Mari était revenue d'entre les morts pour l'emmener elle aussi en enfer car il disait qu'il avait fait de ce monde un endroit merveilleux et qu'après plusieurs années, il aurait découvert un moyen d'en revenir et d'y retourner à sa guise sans provoquer la mort. Quelques jours après, la veuve disparu sans laisser de traces. Depuis la maison fût détruite dans un incendie avec tous les secrets qu'elle pouvait renfermer. Il ne resta qu'un vieux chaudron au milieux des cendres. +When I wanted to ask the old lady with what material the gate was made, she stared at me with eyes so black that I had the impression that the Nether wanted to take over me, and I did not insist any further.=En voulant questionner la vielle dame de quelle matière le portail était fait, elle me fixa du regard avec des yeux si noirs que j'avais l'impression que les Bas-Fonds voulaient s'emparer de moi et je n'insista pas plus. +You shall not pass!=Vous ne passerez pas ! diff --git a/locale/template.txt b/locale/template.txt new file mode 100644 index 0000000..f141f4b --- /dev/null +++ b/locale/template.txt @@ -0,0 +1,8 @@ +# textdomain: hell +For any reason you arrived here. Type /hell_help to find out things like craft recipes.= +Hell Gate= +Construction requires 16 blocks of ??. The finished frame must be in the shape of a circle and laid vertically, like a door.= +However, I never knew what material to use for building this door despite my many attempts.= +One day, however, I met an old lady who frankly looked like a witch. In the course of our discussion we came to talk about the Hell Gate. This old lady confessed to me that in her family there was a legend that one of her ancestors had managed to activate the portal. But that the poor man was instantly killed as he passed through it. The gate was destroyed and several years passed. But since a certain night, the poor widow of the deceased began to rave that her Husband had come back from the dead to take her also to hell because he said that he had made this world a wonderful place and that after several years, he would have found a way to come back and return to it as he wished without causing death. A few days later, the widow disappeared without a trace. Since then the house was destroyed in a fire with all the secrets it could hold. Only an old cauldron remained amidst the ashes.= +When I wanted to ask the old lady with what material the gate was made, she stared at me with eyes so black that I had the impression that the Nether wanted to take over me, and I did not insist any further.= +You shall not pass!= diff --git a/pearl.lua b/pearl.lua new file mode 100644 index 0000000..a01da20 --- /dev/null +++ b/pearl.lua @@ -0,0 +1,198 @@ +local function table_contains(t, v) + for _,i in pairs(t) do + if v == i then + return true + end + end + return false +end + +local creative = minetest.settings:get_bool("creative_mode") +local function throw_pearl(item, player) + local playerpos = player:getpos() + playerpos.y = playerpos.y+1.625 + local obj = minetest.add_entity(playerpos, "hell:pearl_entity") + local dir = player:get_look_dir() + obj:setvelocity(vector.multiply(dir, 30)) + obj:setacceleration({x=dir.x*-3, y=-dir.y^8*80-10, z=dir.z*-3}) + obj:get_luaentity().player = player:get_player_name() + if not creative then + item:take_item() + return item + end +end + +local function get_node(pos) + local name = minetest.get_node(pos).name + if name ~= "ignore" then + return name + end + minetest.get_voxel_manip():read_from_map(pos, pos) + name = minetest.get_node_or_nil(pos) + if not name then + return + end + return name.name +end + +local softs = {} +local function is_soft(pos) + local name = get_node(pos) + if not name then + return false + end + local is_soft = softs[name] + if is_soft ~= nil then + return is_soft + end + if not minetest.registered_nodes[name] then + softs[name] = false + return false + end + is_soft = minetest.registered_nodes[name].walkable == false + softs[name] = is_soft + return is_soft +end + +-- teleports the player there if there's free space +local function teleport_player(pos, player) + if not is_soft(pos) then + return false + end + if not is_soft({x=pos.x, y=pos.y+1, z=pos.z}) + and not is_soft({x=pos.x, y=pos.y-1, z=pos.z}) then + return false + end + pos.y = pos.y+0.05 + player:moveto(pos) + return true +end + +--[[ +local dg_ps = {} +local function forceload(pos) + dg_ps[#dg_ps+1] = pos + minetest.forceload_block(pos) + minetest.after(5, function(pos) + minetest.forceload_free_block(pos) + for i,p in pairs(dg_ps) do + if vector.equals(p, pos) then + dg_ps[i] = nil + return + end + end + end, pos) +end +minetest.register_on_shutdown(function() + for _,p in pairs(dg_ps) do + minetest.forceload_free_block(p) + end +end)--]] + +minetest.register_entity("hell:pearl_entity", { + collisionbox = {0,0,0,0,0,0}, --not pointable + visual_size = {x=0.1, y=0.1}, + physical = false, -- Collides with things + textures = {"hell_pearl.png"}, + on_activate = function(self, staticdata) + if not staticdata + or staticdata == "" then + return + end + local tmp = minetest.deserialize(staticdata) + if not tmp then + minetest.log("error", "[hell] pearl: invalid staticdata ") + return + end + self.player = tmp.player + end, + get_staticdata = function(self) + --forceload(vector.round(self.object:getpos())) + return minetest.serialize({ + player = self.player, + }) + end, + timer = 0, + on_step = function(self, dtime) + self.timer = self.timer+dtime + + --[[ + local delay = self.delay + if delay < 0.1 then + self.delay = delay+dtime + return + end + self.delay = 0--]] + + if self.timer > 20 then + self.object:remove() + return + end + + local pos = self.object:getpos() + local rpos = vector.round(pos) + local lastpos = self.lastpos + if not lastpos then + self.lastpos = vector.new(rpos) + return + end + if lastpos.x + and vector.equals(vector.round(lastpos), rpos) then + return + end + + local player = self.player + if not player then + minetest.log("error", "[hell] pearl: missing playername") + self.object:remove() + return + end + player = minetest.get_player_by_name(player) + if not player then + minetest.log("error", "[hell] pearl: missing player") + self.object:remove() + return + end + + if not get_node(rpos) then + minetest.log("error", "[hell] pearl: missing node") + self.object:remove() + return + end + + self.lastpos = vector.new(pos) + + local free, p = minetest.line_of_sight(lastpos, pos) + if free then + return + end + if is_soft(p) then + return + end + self.object:remove() + minetest.after(0, function(p) --minetest.after is used that the sound is played after the teleportation + minetest.sound_play("hell_pearl", {pos=p, max_hear_distance=10}) + end, p) + p.y = p.y+1 + if teleport_player(vector.new(p), player) then + return + end + p.y = p.y-2 + for i = -1,1,2 do + for _,j in pairs({{i, 0}, {0, i}}) do + if teleport_player({x=p.x+j[1], y=p.y, z=p.z+j[2]}, player) then + return + end + end + end + for i = -1,1,2 do + for j = -1,1,2 do + if teleport_player({x=p.x+j, y=p.y, z=p.z+i}, player) then + return + end + end + end + end +}) + +minetest.override_item("hell:pearl", {on_use = throw_pearl}) diff --git a/portal.lua b/portal.lua new file mode 100644 index 0000000..75ad1ce --- /dev/null +++ b/portal.lua @@ -0,0 +1,561 @@ +--code copied from Pilzadam's nether mod and edited +local S = hell.get_translator +-- kills the player if he uses PilzAdam portal +local portal_target = hell.buildings+1 +local hell_prisons = minetest.settings:get_bool("enable_damage") +local obsidian_portal_kills = hell_prisons and true +local mclike_portal = false +local save_path = minetest.get_worldpath() .. "/hell_players" +local players_in_hell = {} +-- only get info from file if hell prisons +if hell_prisons then + local file = io.open(save_path, "r") + if file then + local contents = file:read("*all") + io.close(file) + if contents then + local playernames = string.split(contents, " ") + for i = 1,#playernames do + players_in_hell[playernames[i]] = true + end + end + end +end + +local function save_hell_players() + local playernames,n = {},1 + for name in pairs(players_in_hell) do + playernames[n] = name + n = n+1 + end + local f = io.open(save_path, "w") + assert(f, "Could not open hell_players file for writing.") + f:write(table.concat(playernames, " ")) + io.close(f) +end + +local update_background +if hell_prisons then + function update_background(player, down) + if down then + player:set_sky({r=15, g=0, b=0}, "plain") + else + player:set_sky(nil, "regular") + end + end +else + function update_background() end +end + +-- returns nodename if area is generated, else calls generation function +local function generated_or_generate(pos) + local node = minetest.get_node_or_nil(pos) + if node then + return node.name + end + minetest.get_voxel_manip():read_from_map(pos, pos) + node = minetest.get_node_or_nil(pos) + if not node then + minetest.emerge_area(vector.subtract(pos, 80), vector.add(pos, 80)) + return false + end + return node.name +end + +-- where the player appears after dying +local function get_player_died_target(player) + local target = vector.add(player:get_pos(), + {x=math.random(-100,100), y=0, z=math.random(-100,100)}) + target.y = portal_target + math.random(4) + return target +end + +-- used for obsidian portal +local function obsidian_teleport(player, pname, target) + minetest.chat_send_player(pname, S("For any reason you arrived here. Type /hell_help to find out things like craft recipes.")) + players_in_hell[pname] = true + save_hell_players() + update_background(player, true) + if target then + player:set_pos(target) + else + player:set_hp(0) + end +end + +-- teleports players to hell or helps it +local function player_to_hell(player, pos) + local pname = player:get_player_name() + if players_in_hell[pname] then + return + end + players_in_hell[pname] = true + save_hell_players() + update_background(player, true) + if pos then + player:set_pos(pos) + return + end + minetest.chat_send_player(pname, S("For any reason you arrived here. Type /hell_help to find out things like craft recipes.")) + player:set_hp(0) + if hell_prisons then + player:set_pos(get_player_died_target(player)) + end +end + +local function player_from_hell(player, pos) + local pname = player:get_player_name() + if players_in_hell[pname] then + players_in_hell[pname] = nil + save_hell_players() + end + update_background(player) + player:set_pos(pos) +end + +local function is_player_connected(name) + for _,player in pairs(minetest.get_connected_players()) do + if player:get_player_name() == name then + return true + end + end + return false +end + +-- Chatcommands (edited) written by sss +minetest.register_chatcommand("to_hell", { + params = "[player_name]", + description = "Send someone to hell", + func = function(name, pname) + if not minetest.check_player_privs(name, {hell=true}) then + return false, + "You need the hell privilege to execute this chatcommand." + end + if not is_player_connected(pname) then + pname = name + end + local player = minetest.get_player_by_name(pname) + if not player then + return false, "Something went wrong." + end + minetest.chat_send_player(pname, "Go to hell !!!") + player_to_hell(player) + return true, pname.." is now in the hell." + end +}) + +minetest.register_chatcommand("from_hell", { + params = "[player_name]", + description = "Extract from hell", + func = function(name, pname) + if not minetest.check_player_privs(name, {hell=true}) then + return false, + "You need the hell priv to execute this chatcommand." + end + if not is_player_connected(pname) then + pname = name + end + local player = minetest.get_player_by_name(pname) + if not player then + return false, "Something went wrong." + end + minetest.chat_send_player(pname, "You are free now") + local pos = player:getpos() + player_from_hell(player, {x=pos.x, y=100, z=pos.z}) + return true, pname.." is now out of the hell." + end +}) + + +if hell_prisons then + -- randomly set player position when he/she dies in hell + minetest.register_on_respawnplayer(function(player) + local pname = player:get_player_name() + if not players_in_hell[pname] then + return + end + local target = get_player_died_target(player) + player:set_pos(target) + minetest.after(0, function(pname, target) + -- fixes respawn bug + local player = minetest.get_player_by_name(pname) + if player then + player:moveto(target) + end + end, pname, target) + return true + end) + + -- override set_pos etc. to disallow player teleportion by e.g. travelnet + local function can_teleport(player, pos) + if not player:is_player() then + -- the same metatable is used for entities + return true + end + local pname = player:get_player_name() + local in_hell = players_in_hell[pname] + + -- test if the target is valid + if pos.y < hell.start and pos.y > hell.DEPTH-510 then + if in_hell then + return true + end + elseif not in_hell then + return true + end + + -- test if the current position is valid + local current_pos = player:get_pos() + local now_in_hell = current_pos.y < hell.start and current_pos.y > hell.DEPTH-510 + if now_in_hell ~= in_hell then + if in_hell then + minetest.log("action", "Player \"" .. pname .. + "\" has to be in the hell, teleporting it!") + update_background(player, true) + current_pos.y = portal_target + player:set_pos(current_pos) + else + minetest.log("action", "Player \"" .. pname .. + "\" must not be in the hell, teleporting it!") + update_background(player) + current_pos.y = 20 + player:set_pos(current_pos) + end + return false + end + + minetest.chat_send_player(pname, + "You can not simply teleport to or from the hell!") + minetest.log("action", "Player \"" .. pname .. + "\" attempted to teleport from or to the hell, ignoring.") + return false + end + local methods = {"set_pos", "move_to", "setpos", "moveto"} + local metatable_overridden + minetest.register_on_joinplayer(function(player) + -- set the background when the player joins + local y = player:get_pos().y + if y < hell.start and y > hell.DEPTH-510 then + update_background(player, true) + end + + -- overide set_pos etc. if not yet done + if metatable_overridden then + return + end + metatable_overridden = true + local mt = getmetatable(player) + for i = 1,#methods do + local methodname = methods[i] + local origfunc = mt[methodname] + mt[methodname] = function(...) + if can_teleport(...) then + origfunc(...) + end + end + end + end) +else + -- test if player is in hell when he/she joins + minetest.register_on_joinplayer(function(player) + local y = player:get_pos().y + players_in_hell[player:get_player_name()] = + y < hell.start and y > hell.DEPTH-510 or nil + end) +end + +-- teleports player to hell (obsidian portal) +local function obsi_teleport_player(player, pos, target) + local pname = player:get_player_name() + if players_in_hell[pname] then + return + end + + local objpos = player:get_pos() + objpos.y = objpos.y+0.1 -- Fix some glitches at -8000 + if minetest.get_node(vector.round(objpos)).name ~= "hell:portal" then + return + end + + local has_teleported + if obsidian_portal_kills then + obsidian_teleport(player, pname) + has_teleported = true + elseif not mclike_portal then + local target = vector.round(get_player_died_target(player)) + if generated_or_generate(target) then + obsidian_teleport(player, pname, target) + has_teleported = true + end + end + + if not has_teleported then + -- e.g. ungenerated area + return + end + + minetest.sound_play("hell_portal_usual", {to_player=pname, gain=1}) +end + +-- a not filled square +vector.square = vector.square or +function(r) + local tab, n = {}, 1 + for i = -r+1, r do + for j = -1, 1, 2 do + local a, b = r*j, i*j + tab[n] = {a, b} + tab[n+1] = {b, a} + n=n+2 + end + end + return tab +end + +local function is_hellportal(pos) + local x, y, z = pos.x, pos.y, pos.z + for _,i in pairs({-1, 3}) do + if minetest.get_node({x=x, y=y+i, z=z}).name ~= "hell:white" then + return + end + end + for _,sn in pairs(vector.square(1)) do + if minetest.get_node({x=x+sn[1], y=y-1, z=z+sn[2]}).name ~= "hell:hellrack" + or minetest.get_node({x=x+sn[1], y=y+3, z=z+sn[2]}).name ~= "hell:blood_cooked" then + return + end + end + for _,sn in pairs(vector.square(2)) do + if minetest.get_node({x=x+sn[1], y=y-1, z=z+sn[2]}).name ~= "hell:hellrack_black" + or minetest.get_node({x=x+sn[1], y=y+3, z=z+sn[2]}).name ~= "hell:wood_empty" then + return + end + end + for i = -1,1,2 do + for j = -1,1,2 do + if minetest.get_node({x=x+i, y=y+2, z=z+j}).name ~= "hell:apple" then + return + end + end + end + for i = -2,2,4 do + for j = 0,2 do + for k = -2,2,4 do + if minetest.get_node({x=x+i, y=y+j, z=z+k}).name ~= "hell:hellrack_brick_blue" then + return + end + end + end + end + for i = -1,1 do + for j = -1,1 do + if minetest.get_node({x=x+i, y=y+4, z=z+j}).name ~= "hell:wood_empty" then + return + end + end + end + return true +end + +-- cache known portals +local known_portals_d = {} +local known_portals_u = {} +local function get_portal(t, z,x) + return t[z] and t[z][x] +end +local function set_portal(t, z,x, y) + t[z] = t[z] or {} + t[z][x] = y +end + +-- used when a player eats hell:apple in a portal +local function hell_port(player, pos) + if not player + or not pos + or not pos.x then + minetest.log("error", "[hell] hell_port: something failed.") + return + end + if not is_hellportal(pos) then + return + end + minetest.sound_play("hell_teleporter", {pos=pos}) + local meta = minetest.get_meta({x=pos.x, y=pos.y-1, z=pos.z}) + if pos.y < hell.start then + set_portal(known_portals_d, pos.z,pos.x, pos.y) + + local my = tonumber(meta:get_string("y")) + local y = get_portal(known_portals_u, pos.z,pos.x) + if y then + if y ~= my then + meta:set_string("y", y) + end + else + y = my or 100 + end + pos.y = y - 0.3 + + player_from_hell(player, pos) + else + set_portal(known_portals_u, pos.z,pos.x, pos.y) + + local my = tonumber(meta:get_string("y")) + local y = get_portal(known_portals_d, pos.z,pos.x) + if y then + if y ~= my then + meta:set_string("y", y) + end + else + y = my or portal_target+math.random(4) + end + pos.y = y - 0.3 + + player_to_hell(player, pos) + end + minetest.sound_play("hell_teleporter", {pos=pos}) + return true +end + +minetest.register_on_item_eat(function(_, _, itemstack, user, _) + if not user or itemstack:is_empty() then + return + end + + local inv = user:get_inventory() + if not inv then + return + end + if itemstack:get_name() == "hell:apple" then + itemstack:take_item() + if hell_port(user, vector.round(user:get_pos())) then + return itemstack + end + end +end) + +if hell.HELL_REALM_ENABLED then + -- Use the Portal API to add a portal type which goes to the Hell + -- See portal_api.txt for documentation + nether.register_portal("hell_gate", { + shape = nether.PortalShape_Circular, + frame_node_name = "nether:brick", + wormhole_node_color = 5, -- 5 is red + title = S("Hell Gate"), + particle_texture = { + name = "nether_particle_anim2.png", + animation = { + type = "vertical_frames", + aspect_w = 7, + aspect_h = 7, + length = 1, + }, + scale = 1.5 + }, + book_of_portals_pagetext = S("Construction requires 16 blocks of ??. The finished frame must be in the shape of a circle and laid vertically, like a door.").."\n\n"..S("However, I never knew what material to use for building this door despite my many attempts.").."\n\n"..S("One day, however, I met an old lady who frankly looked like a witch. In the course of our discussion we came to talk about the Hell Gate. This old lady confessed to me that in her family there was a legend that one of her ancestors had managed to activate the portal. But that the poor man was instantly killed as he passed through it. The gate was destroyed and several years passed. But since a certain night, the poor widow of the deceased began to rave that her Husband had come back from the dead to take her also to hell because he said that he had made this world a wonderful place and that after several years, he would have found a way to come back and return to it as he wished without causing death. A few days later, the widow disappeared without a trace. Since then the house was destroyed in a fire with all the secrets it could hold. Only an old cauldron remained amidst the ashes.").."\n\n"..S("When I wanted to ask the old lady with what material the gate was made, she stared at me with eyes so black that I had the impression that the Nether wanted to take over me, and I did not insist any further."), + + is_within_realm = function(pos) -- return true if pos is inside the Hell + return pos.y < hell.DEPTH and pos.y > hell.DEPTH-510 + end, + + find_realm_anchorPos = function(surface_anchorPos) + -- divide x and z by a factor of 8 to implement Hell fast-travel + local destination_pos = vector.divide(surface_anchorPos, hell.FASTTRAVEL_FACTOR) + destination_pos.x = math.floor(0.5 + destination_pos.x) -- round to int + destination_pos.z = math.floor(0.5 + destination_pos.z) -- round to int + destination_pos.y = hell.DEPTH-390 -- temp value so find_nearest_working_portal() returns hell portals + + -- a y_factor of 0 makes the search ignore the altitude of the portals (as long as they are in the Hell) + local existing_portal_location, existing_portal_orientation = + nether.find_nearest_working_portal("hell_gate", destination_pos, 8, 0) + + if existing_portal_location ~= nil then + return existing_portal_location, existing_portal_orientation + else + destination_pos.y = hell.DEPTH-390 + math.random(0, 30) + return destination_pos + end + end, + + find_surface_anchorPos = function(realm_anchorPos) + -- A portal definition doesn't normally need to provide a find_surface_anchorPos() function, + -- since find_surface_target_y() will be used by default, but Hell portals also scale position + -- to create fast-travel. + -- Defining a custom function also means we can look for existing nearby portals. + + -- Multiply x and z by a factor of 8 to implement Hell fast-travel + local destination_pos = vector.multiply(realm_anchorPos, hell.FASTTRAVEL_FACTOR) + destination_pos.x = math.min(30900, math.max(-30900, destination_pos.x)) -- clip to world boundary + destination_pos.z = math.min(30900, math.max(-30900, destination_pos.z)) -- clip to world boundary + destination_pos.y = 0 -- temp value so find_nearest_working_portal() doesn't return hell portals + + -- a y_factor of 0 makes the search ignore the altitude of the portals (as long as they are outside the Hell) + local existing_portal_location, existing_portal_orientation = + nether.find_nearest_working_portal("hell_gate", destination_pos, 8 * hell.FASTTRAVEL_FACTOR, 0) + + if existing_portal_location ~= nil then + return existing_portal_location, existing_portal_orientation + else + destination_pos.y = nether.find_surface_target_y(destination_pos.x, destination_pos.z, "hell_gate") + return destination_pos + end + end, + + on_ignite = function(portalDef, anchorPos, orientation) + + -- make some sparks fly + local p1, p2 = portalDef.shape:get_p1_and_p2_from_anchorPos(anchorPos, orientation) + local pos = vector.divide(vector.add(p1, p2), 2) + + local textureName = portalDef.particle_texture + if type(textureName) == "table" then textureName = textureName.name end + + minetest.add_particlespawner({ + amount = 110, + time = 0.1, + minpos = {x = pos.x - 0.5, y = pos.y - 1.2, z = pos.z - 0.5}, + maxpos = {x = pos.x + 0.5, y = pos.y + 1.2, z = pos.z + 0.5}, + minvel = {x = -5, y = -1, z = -5}, + maxvel = {x = 5, y = 1, z = 5}, + minacc = {x = 0, y = 0, z = 0}, + maxacc = {x = 0, y = 0, z = 0}, + minexptime = 0.1, + maxexptime = 0.5, + minsize = 0.2 * portalDef.particle_texture_scale, + maxsize = 0.8 * portalDef.particle_texture_scale, + collisiondetection = false, + texture = textureName .. "^[colorize:#F00:alpha", + animation = portalDef.particle_texture_animation, + glow = 8 + }) + + end, + + on_player_teleported = function(portal_definition, player, playerPos, new_playerPos) + local pname = player:get_player_name() + if players_in_hell[pname] then + return + end + + obsidian_teleport(player, pname) + end, + }) +end + +-- Pour éviter de pouvoir aller en enfer depuis le nether avec un portail du nether construit depuis l'enfer +if nether.NETHER_REALM_ENABLED then + nether.registered_portals["nether_portal"].on_player_teleported = + function(portal_definition, player, playerPos, new_playerPos) + local new_y = new_playerPos.y + if new_y > hell.DEPTH-510 and new_y < hell.DEPTH then + minetest.after( + 0,function(player, target) + -- fixes respawn bug + if player then + player:moveto(target) + end + end, player, playerPos) + minetest.chat_send_player(player:get_player_name(), + S("You shall not pass!")) + end + end +end diff --git a/sounds/hell_dig.1.ogg b/sounds/hell_dig.1.ogg new file mode 100644 index 0000000000000000000000000000000000000000..4c498328334228a48947bf2747c4b0d9d971c061 GIT binary patch literal 10577 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 j6(A;%a;(+VH) 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 E0G-DmO8@`> literal 0 HcmV?d00001 diff --git a/sounds/hell_extract_blood.1.ogg b/sounds/hell_extract_blood.1.ogg new file mode 100644 index 0000000000000000000000000000000000000000..c69d4866a1c8b193b3340072907de14eceb42999 GIT binary patch literal 12062 zcmcI~by!qix9}OdTS`Ds5QZK)B@}6qfsvB#Zjcy238j&eE*X%P1}Q~Cq(Qo+1?fiM zJK+0!@B7{RJoo$S+s~do>+D#)*53Qfs99QS0BFF!3Z4CPnro2utcDE20P%2iF|l^N z?tla|Tz>(;#}dfRcO69SdgZ^%^~&oJ;umpUB$8MES6N2?i--#x*S2=D;#PC9WVEw3 zd3J-IQIV047sd+%D21CnEWb*kS7PqPVSx_e~x0s`6|d`k*X0ggTf2s2OPmreF&Abz|~|DTEqq zUemdJW6Do+!DIiB^$L&g8)Kjf-+FG`6S4IV@1w+iu~iMo;&W9EDXG9lo|%?5Vd?w2 z_KB{h{j0&fk%JNBMHY+3j6@da8vPq+UXlxl>aSRgKmaHvApe#^v7Dm2oUV6}S#6I~ zom_B`Urs|)6#*7^eJv03F%S1K52Q{~uwETfr!H7;JXrrY*qA!xU-bkzcYIxML}!Em zS@%Q}7oj)#x=AZ|K6r%xV*D7JejlBzveXp2jVN+_IT4PmIW8YoD*EkOp>{Y;Dmmt=ItHrZS|k5^d3ob6 zpdd`?7Kt_iIQ%ijH);t0(NbsQJS6x_37qgIdxVwd!S=v@F?seaPcOPlc zZpP!(9qF$akx^JC6ij(caSU$JL~&WLZ_r$Z$f(Ck1%XfDG^{AMS2vO~0zeSSjTisZ z+_>^zFV2k(WB<-p*~8b(dEFF$?GxMh_?6@#0SxqFPC?L%Bdb?3TuVh2Y*E#tx*Vu@ zxDpigH=;nJGMdH6VA0$JNl22*cW6Es75{0t9p-*g`oaIG{kwGPWGrAEuYv!G9A}Eo zw{%@^nUyP;Rfjlx_XO1T1qR9G)CE*EZs`x+av!EN*AUVl7BnA5n2&gvPt=&})gpCj z{uMBP!)9*G{XZh-Iz;Y@MlCADV*FR+WU)p46p6a07|W~^d*3V3GBl+iIb*#b2k*Z{ zj#XHGQds_*u+=wFY@vzPp(%y+Id%SvM-h~;gVC2ZTF#kv7e1_3I1f!{f zQ+5BZjFN+(Lfz!3{?h;e@HvJ+`6iF3!?{M_f+KJ)gr?;G9x>qPh=A&_0I1jm004J| zhmu${z9d9}B+8DGR(LS%l0zdIEYuQRP&>)P2t{IAw*f^ZQL6~iCAy_~7*4Y3E9Xd< z{16GIY-g5wUKTc(_Amf-00@9}z}l!?`V_me9`(U+)8oI1vZCUK6ro&+)cjDEJTlXz zwD&`bUAghp%3c=rO~6bJAYldOW9a(h1e7UQ zl*#4PD9p#mRkacYdMO0eH4(k!h!IW16s0PnhDDWJRrx>@K`w{5g&0m$MO2&j3z$!6 zBJ`;cBQ@qzlzv*E+wiMSP$EV~RY$7b#}bkHHTL>R0=)v)s8lHsBW{Q(A#k#wx*I|r zVXmWz(0OJ)F^bR{MJiJu#xztXZXpmgh>1gcM56ng8$wUZT!-qJ4y7NM&F4mu?>`jQ zID9HCE2`K$uW-2C@cUdL#Udqzt+4QZSfNc}p?zwh?NlQ8_@S_3Gr5ohoVQWPG1Ux? zaugPFh8MDT7jm9|VsH4wU0CQ)RKfWtk7J|x_j$zBsQZGZzP^_E#4$qW2sw3}urTUw ze4;X3qpCIHuHlZH8FgPwwl@@cj2J;85`&Es%ooOxcV>=B5r{F6X%Dc^kjley0%-`{ z5Ly^T_HCWVFTCNQtFI}ct8^fDn9)j{JArodOGpmK+iM`)XWaB>YTflt?e#4q3V&@B za_%Fvj)JGC*c-NQ%iYjG8djT|jw9z@co=t8+Z)#*=_f`Lns=AZI|i%m7wVCQ*5^X2 zo*_YE=AcgppaaqYxaL_mPLT!xfibROP@Du45-}X8I|;myIxt3*mBo}uiH!wCqGWT+ zl!UL7*{n|ym!*nA$+{pg2F`}6eyU_!P))001M?t(#HYSY`8`#O+gyErX@|Cv_72Rnd~Oe zg7}_VeNzG$@qhrvN6^(=0UXg4Iur)eO4@r(QLOBsMD`WNpjh42w4g+jO*#+)1sF9c zu8xn_ji{ysfT#1|0naEfuk9xg98!z{2iU5+@PJP}ns?0529Sg!U z|8naS#byd35nD|Q1kZrrN%NKnxTlY^Rfv93c$&?`0SS-*U7Q+~7Wh=@J%uTWl41c! z4irgK6gwMKQPK5)Qi=QZKsB{EIPgO^0u_I~A&xy&Qs(N=b_GpI?b<7f0^Lt=^*I1+ zy+Q}ZUq;?dC6B{ut{=g})Bg~{3C!I%Ya%xjgo#W_z~h5$iJ;3<+rLo3_2YG)>dnCa z{|1P03`P&Q3XJ40W=_8qg++C(2OMkwh%oMvSPP52hQpS_AzE+J0@DYZtnUqQ2HXBj{V#rULy9guY$(-9R|$|McNx|GN)# zzrXXqDgVr43L5x#ADP(Swb!Wrfu1V;1ChwG{cC{iA1Izg7B~CvWVjMrHuwlmehOyZ zAUNp8FRwE-saveNIjK;J(*gwCf>{7*EFeHSQt*h<)-2v7MyZ=cR!J0E{!R(H%veRs zj{<|-ri&U(Hlg)FM9|#a!~s!MjCwp=nI#BE##*$4TD$`QGXe%c{U#<^It#!fFathA zWM5GLPqmHKsJYS5TySYHv4TxoMc1pqi=(Vrh{7XItWew$X>}Mqz{$UY%07be@^Eu=!=5OssHpJra;hjl zR#8z^xuWDyd!njv1>sdtP<*7Izy;&xR#sI0!HaxKh5ULI+lKx$MIt?O9cUz96;FV2W#{QMTQ3}m>p z85-@2R@KokVus8IA|u6{FZ_MCsgA}td8qt6ZCzKBX^GmKX|S7tY0k{U?#@;FKg0=d zI2h9AXf2*JKIc+x*JZ%4($GSF>i<<|Vfx&?^vKyMy8rjZOrk{Z2$N|((U-l#Zw?Q)I5U6P?^ zqUESS?l|U>-TMTdyB@#YB5K@hgV(xt*Y>|6q*|l=ny>&2`f%kMRmUlRK(0-V)}6g= zIl3P!#UTAr0D9wClb^y1n_=y)&8D7wpRoZhwa$+3ISKah!rdY}BX~eKCbPQavasBC z#wDrp9;U4Bw#{WjpAd@58ZywlJGPyvGFc?v<1H07kUPt;$xz$&c)~|-sWS~;#&=1GL5FZDhv2O z>kA;86rLx!2ba@VU%$0dd?p}GK=1R0i>A1(3A~{D9`&18*O8Ct_Kut}VRM()G_XnH zdH(slazQF9(9(ARU%@*swnBI43wogX6C;gDd*!~T8;rXKbpoR&=$p)vnDb{7JH$|r z4u8TX>PLCC;m2Zu(poI+UjQ1M&^=qx?$j z-~$@K$pRKKlj%GsywHxGx1czPR@=^+bQ z?)7nqm90%DywnAt#Vu@&)|^aUkl|nb%REoqcRahlm`I&j{_%S8*v4@?T67z`d93Nm zyWyRVewBB^*mnn zJcD{&_}AKScola>z(?D#&D+E#u{|Qw7#FA-=cDdF z?v(SP4h;AhwH*KW{=kcVF*gd#Ch@A7b*#a;W}0l+xA0Wi)Xb< zKjDw*v)YI+ai|m1J%Sv{86CYq!rwT2z91lc9uV^YJ%O>voZ?P$%;L_W@xDD;_@A(4 z&e2!J_I40WOlZqppJ*P`L+cD8Grak`J6YeEn5N%wWp#6gMc%#JCor~H*S^;BYPtZ^ zu91ZpFr!z;>c7Yld-QnHc%0^Q$m_r+fBu8V*fVyMx7j|2xg@ttZKF`tAv$71^<9~> z5_zMs!o=MvSU*1v?F})XiaGa}<>izo9{L`OF$6&9m?WQS43>$K8-;{5iS_|r8=v~< zHfYkge&5E`sEq19|Jw9guXOcd8M-VfULyB(UF&xD1K^>7cO`Tgx)Yf5{!&oOAg%66 zM+Cr3b0~K-D!!Jv9&bDeIl7}*P?H#FkJuuFL!>Y+`u+Nc*gRX#3n*}ONIL=&{g4G(Mj`!*D>At5O4Km zU;VueMuEriC(S)$Pd$H~1|1>cS?wJr0X*IaB0XxR44lS$ z=8wjCSk|gTL$=PTI89}eaazR$4!>_i5T-Vw*h++5&nc&jNJS()xUNuK5?i*vX1iYS zsGGW_s9tut>#EVwQQg9i#|+1a`Cb2UfY7ukL3&|e)z0YqyIhmCo#%1u&%V){YaZOK zY*aGA{yx|N1ktO@l&{E_U~mD{3!V+h6(s`Av$m(dzqYUOHn5jw>q~OU`c&)rH%t2M zxcU9^+AT$QUf6N;qB`YsX@hx|H%zS^AC1g?)p*YE?KuL;^0=+PQZj3t^Ei%ISYCsM zE!NP#4zl^?yS=a%$kQHNT)^A5X5g&oPRj`vabEnWp@k3%9@ z4kYW)HFdhJ&fS({eST6T&$7BVQt1V<13F+wbCH6ibr85u0T3J(c@k^WM_5am%x0DIo@RHr zV}I-P9+fdWyzo5C7R)Wn6HYz8cu`qjZWC-)f1sZi9!%r8-M)_@{A>9GIU6MYLJ8IT zEYy(NY=Fb&wL|i`seSdVMY6#P5koJD6+&1;iXUAlO0Isn#jNQf)bf+>m6CUn$5mqf zc2G0HIo&a{x=H3r`&9zj_z;1nx_=esq2S(Z2xazFmEkLU^n~(DD#rtDoW4w#C9#ss3hLK7z-YM@b&=WPz)XJin>JqE;mZ#L%dLTxeP3k^6)1 z54)f|!j=`I&y@8OCN~W<%Abd#_w*$?H1?Fu?bW(3Y#d*W{!ZxbZpmFoo(`XTu8e&c zMjKoCdCcW#Cn_KtPIU)Bhg(cDuUd_153N#66)152ZtZ{oLg~^xaa*i1F$ZY5mH}Zv zAprc!pbLG2)5?+TX(=+TtKaW^`ixB4>R0phbMCRhRH3@zPr-vZba?oJ+bYg-$1bhr9m5$9tOfc)xeL1UXfT1( zCB0fY769YI6$KtaWv;rvlp3N#%ndPAWpc@Z&$lk(D2s7D?=iH0dCA|15PLb4JyFzx z{AkfHJ1OZvB`@H$_;K>mNz#aI5$iVzb}>sCZz?{!lyCVtyQF~ez~`oZEtTI=iPk5z zgkN2h7)Dq|w%blKeZ=E3N?a_jTI?RY+q{kI7(FXNnSPI;;}?Er9F^Wae=`zwWY~&< zm-f=oHsS3^(xdWP8l#UnKj}xK)6@v>tjXr?2YeTU$?w{1*L06|Ews<2*e&d5a`2Dd z4RFthTJbQCvd11+{OiYVmL2^donZde&HapyqkmbBe#< zkJb}f<|uTp?<;TSFGNBbG0k>q!{bwCyS|5pl~Sp-lkGiWgXwXo?dWu4mwX4Nv=LdQ$qu z{OoEE`o+nEUAXsB34no@X7AVDlU@J(20Zkd8x)M?ucsOgcGzFKGJk6i=j6m!yl*eT z{rZVSms9r)afyCe^aEy~B3I&3?}P1;4?c~FuzhUjCvlA2$8WSbcMDt#0{dRK?fWn@ z^`c~lQlet*AuNy`#*2mwh}o&12sQ8C&i=g;nrXIQXi58z>n)S1o+tRbwA?bCrg-v^ z$XizTm=pr&-1{8>DK&!{VsEx16Qz2Jv<$GzkNhph0m53lH>~LHn(S&5QzfePt1E9+ zkiUL+f3Mp0J3hLc^C@w#r~j5v`zpTYVqWG7X(1S~ffl6h`7|S9+@UNWq~35Q>E%db zs@w()7pgzfCw1AN!qGXI3X+4-447tu&eyNnhs%-`y!u*=R}VYxOQ~P#~Ek!lYiKK^k%q= za^Xq1wU_>m=w3v(iDgF6>7GKQz@I0BBn_FQi-ofJXZoLaCylpU+9|m?272>plEtA8 zx|D3ZO^g-2&--+~Iv3PyrSy3_+1W*lznk;L0i3M04IyjvkBo66pk+A`N!?cFQkRY{ zDx@X{D~M`Elbx>SiSeb3gZ;R8;0p7FY;}VVj#=+TRUbnrTH!$M?ce(mZDOO8(nTGjXZN%n> z>NZ%`jN|38rx9o7w%6TZD+gS)_DGi9D&v(xuGM z!>yPCqSmnN?3b`N;dW~&Fkei=4dxBCRLmHi2=>&^bZ?KkXB2JX?Yb7e&Q#Ds-45Jw-l49B_* zqyF8b59HExkIlf#rJ`yUGV6$uyv=XNeuZuMi4}!fY&f0tTwaN0#8su~Gx_L# za`K#etMlb`RO8;#+r-?Zk8(KjEYXnRvfB_|2q&pO-(oRGYv1^Zo3no3QVb7S`F}!8DJf4>_biIC*5x$!ZoH!0 z#9O;b$Hw|MLBPDpTXiICZ|ntTFL3h$0^_^NbyfgwUO=FO-@4oy^Bh+MSNC{$`8YY@ zYU<#t2Yx;-RrpgCWom-yfAd zn5$orJ`RY&1&n|lAN?7VS7*S-9JKWDpKxNQ{i(txe*wbXk8|!OInm>p!pMf6CPgYf zf2>EZaFk&4!QCzj-{y_?=S>HkjpRyIc;g`e@7rpNW;}bs_&$lzqG$F#1WKub7zi@; zCofN~HocBDaVJaK)F%&5{;&y_aRSv!n`7D=?Si_)%$NIj1Z2bsHXADH`+YSdga}7C zcz!tJ0zxn6%4(7WgC}{H5hq#VqGx*60B}CEe`PqxAI$x`zX(g(gSV!M1h~`4ZPY}0 z%L?t}VgwCHs!ZEjUK3z%0K{(N4ld%n(F5EL{U7xYhfc`%IH3X0ET-2=aM*FYdM-1o zQUh`Mr^U~AI$Y^|>?|0%2*fCpn2~5nz~d~&aICYnC;&$%zz!{dqd`5&afLXx(PGpx zkE2_>*0$F{%0^$(;pva@dD*`C`Nz(-G=i%70A%M5OORW2KN-?I0TsXwLzkXKB#U{L z-Hvi#GqR&L@J-9Pk8gZq%lQKx5>6Xq%DCsoK%eOSI*ROg1-tkpZS(6>124D~Iwic433pgo_O?hu_HlmQ4knl{LhSYv05LMn zJu~m_-Gy)_kmY7>*K((wmZG7Dtn1)(lLPI_AAld*zeWWs>74j3U0l2NFK6r)%gDVR zFzrx15D=)I_D+NNKYdw2K0zk3HBC6M^E0zYs|HqEm3D6qXXwF?Iyq9-ZK_?Gd4;#E zU4!UfRe<;l14nA73T%i5P=sB^2MMtRrVGchu5R$^=>}zYu*Q0=7B87 zpq5gM_)`PI9vr%$^gd=DF^!KjDc?@dqjGo!Hzf;PkT>kc!KAxro(*W>TOM(X+kOE(+~YQJ^ypEl&Wa-(Wd>P)q=+6 zj8S}Fo3kxd=3{g1{ClfI`);60)YH@mRmqHGayka&*Zi!OVA1SnbvW1}jHZ^K>N{B$ zM)0C;bIfJ*%zn!6ILmDDs5%^@@pV6OCg?PHgV503>0I){8Hz8;>{yIWm90lVkz+werH`!;)gm;;Q#e1xU!Gb1{A&h8SdKNg^O zF;jZ7tDf*%nFbES>DS&Y-733xgyUdHk`Lh3KGhApT`eWs%}`ja6g+4q79rA^49D*+!WM#u@<2Pj?JyQ}UX6qqnB9Ym=}I@^rpGV;;^$UoeID z-cGA)x7|vgz-fedh8_i)Z7yjDz3{igT9J66KOyhO&*CXOUfdDI@m^ENuutX8L=bNXF zSd16@8E|bi#c)4Q^m}o*)wO^pnr>J=en)8|7E?!>Yu!1GE_d|4 z?ZSuY01UCF4{re}g_iw*V#3GB>RYa1^g-lGQy67Awbk8C$7(_jN)4SB7hVTPcFS&k z^poZd8FPgr>4sPE(&%oY#djYC>7Mwm`1xzDu5Uf|1UR3;FneV0H#=i#*QbU*$bCC& z(bynZ=bRkWd@fm6TO5m|a!h53y}SN^!@s`HNmqO}>{A45eoG$}*E@O3%;)}Gir&vG zh)-5voB*>DWK}O+Q=yUObD^Ag8En3NR8^I_+UO3;_VJVH^X=t&mWxlm)rCS6PAU4g z)Fghu9apv(919p5nBNh<7_;cjuP_|abRDW@#PqJC6S=pS<4}uu*xEYRa&Gy|gZL}& zw{b7a<9onBoI&;}5l0**qXkwU!SENgRDIvl%UxlI2IA%YVcFtP9r_U`{Zz#d#@|&w z;0CH%A{Te9RbR3R{aN8tDZ!_IzOZpBn2yIXJxQM1#yC!lUCFN3ZRVL&^KOq1R~BvE zJs)DT0~ImQG3zn|(79i5E$-ID_3#F@o>Sc;$`v%xPC>e;aD4njuiN>cYp$8}X<^b- z9##P4kd8*e@rMEJm;3Wi~RHTI6!!J!L;Uh?;^2*O(HAQcinI zy3h(ZHdQYwBwjWv-pS&i*{mCxd!6MRCz~!CF|u0@bf-z5nPe}C%na*_pU)k6c7=9T z`@Lr0{vxoh_vGDKarW^rmTJDNxtVb2?+*rH-`1d?`sy`et?1vd5YAV|bm&M`YgR?M zVXp<#O)_}Fh+W9*PRDfLzZx1fu#EaV5cJM8>Nm$G)<(sPGN!P_l?QhpdCg*c7eR$? z|Ac%-mPiC(ew>u9{!Ikn`7Ri+@|oUei&+BG$LsHuCl}Bn+TpERLSoatbr;p_^JY(F zMR(MmD#f!0j$oMWUM`#IGD5bWd1FgB*V#qB$LZ|;&Wu;r zmO=Q}hSu$i{`BBLp`t^-iVFkmJ*&pc4(t7}>QOh39``aWcmbYhht(e~x!hFIuk&In zR)@QC_wdKd-&KY*#QGS*V16tWI(x8soy%X&&L68h>wEWerPvK&7qyFt!zNNfw4Lz&`J#+CxRznE(%ThvS>LeS-&9nc z7N@AEeE#SBbS!GWE932A!IAGm^Gx%!LMorUPk)APrhH3_JUZ@ksJ|KY5Ij|0nC-}b z^mf#b@6UCbA=R&a&umNbnf7`GX1s?E8k4oe>kl`sT>bY4L@zG0)*`2mT+YSvZI1jd zmKq1363LUjVnoHoXwqnAG=`lhJ{e4L^ffLqpN&u7w#_&Q&0Q27kGQuf``jM*US9Tb z5NA@E3#~4vYsFh+G^NFRxy#>qUq9GY9$`0fhilgHHgbIEQdJNDp6mPnV0)O~+?Adp zA+@f{ zKMS??o15EW<_Fvm{>(mhwI!c;CEEEp?h%*IXy=(=?l<0s7*Ot&tuYQD4ew=KoeFZ$ zdi^PgjwY1f=9cT!(fGvU&~-~nn3k+^D6vjo?Gw8tON6yQ+f-zBI)e%HehiOgB|}6c z4UcLAX`>W(K)URKXQAm`WR>Uf^Md{6?$M}7DMPB6at*}#&ToTX%@0n*#(8${6^o~Y ze(;xg33!`Nt04M>-v!5^RNXOm$Z87ml3G&R2-6qO%1%U6_;a=jse;e z)9HkgoNTuFFR*(rPTP`}3b!)~urdUVr_SVl?b0YvKv6$t_B6cD-X7aY&Q!UN={~b^ zO7c$EUACV=!|`WYwC)=*&&zN9HDS!0u-&NJWIa+GcS^Rhct`h@oBGBql83%cdU5Ib zXf${AnCy}sidO;Mb0+gE6}z=8WCOYxdPf|u<-TOUp=n+U#(l3*uPypN3&O_5ogriZ z)?(>u5iPR%mOD9dOM(cW-1%uB8ng9JLnhiIbCcM`NDX z#Fjd2JvU@HF1r%f)^YPo{Y7bmdCDYLSWf_|O>zt6n_}GmU^#~y6R3tUhtF|%Nos=U zd#jRrF~C#a%(D03Uu^97zaQ5@SFPlf74%n@^DohxDIffuIBD zwxgn3Gc*FPMMkA58QwX!nVv#hS`4(_-nk-XcnAKqkFc<$wk>UFQ-ex?hr=c-w()!#J26>(sQn<03s=M4vyTJ?pw3J9(i3H{#rin z+duCszKSG7euy+48s0|fndXjSjo4rGHrq@DPkOu7TZ;}257}LMpYuK&{Ve+1d4e8T z$>-{n{(}6W)uK?+ILJ=FxClHlmbekhx&b&rP2rY(M-X2~& G@P7blsvk@M literal 0 HcmV?d00001 diff --git a/sounds/hell_extract_blood.2.ogg b/sounds/hell_extract_blood.2.ogg new file mode 100644 index 0000000000000000000000000000000000000000..bf418211ef21e4f3791244107b648d4d1c894ff1 GIT binary patch literal 18052 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 literal 0 HcmV?d00001 diff --git a/sounds/hell_extract_blood.4.ogg b/sounds/hell_extract_blood.4.ogg new file mode 100644 index 0000000000000000000000000000000000000000..2ac349555d0fd22480b27c209a4a409128c8a8b6 GIT binary patch literal 16244 zcmcJ$by!u++bFy?AR#FYf`lM!Qo50ljxAl%Al)U6q%@M!NJ@97LAP{nkZvU<_gVP- zp7*@pd#>x8zrML<&z?0iYwo@$7tF#!4L}0^6THgMFz>S&h;P=AClGfBXA>)z`vOQn z>-`@9RFy;i{x?Bj_iz4JxPSA$W^Yuw7f%H7{|Ot&|8&F()@xfiTC%~MEvRj+Of>&? zPc28y`JCf92NBLV;vAb=4gCT~;DdPKm2 zlp)4BN5D#%zla(wLS;n&D<2%+kIV)C9QloU+D zD4hFfiZYxZGJVboe8|~H9i+&)lb@h0xbrzLMsSz0ZcGA`weE+!BFB`bX+=A#zK_d@ zz*fe85{$oeP=mNgppu#4Nub|%{~lWS(HZROAF`-{0FX>T<^!QzHQ``2#qc;C?3hJ` zfM=XbN=;o!0}O8ZTJGjE?rt;gzB(U6^qPEinnLtuL-a2~j7dZP6aV6@wCwRJh{R*))iLi4VI-1c7ru6gEd%xn*b27 z$$iMNN-O+7;v1c0^Z$1gv+QF6#6Vv5I#KjG(MhS&^*Xbl{pD~U0LoNMm8IL6TgHXE z*F_kNGOjQC6BUO~6>l{j z;*aTnC1^WBwg$=)I*{6(lRB2>G9rhSR`5^G6F(iTy!Z!LMz)oK(?ezqwzK+?hE_bM z4Zf>0mbUr1nGno{C#EyhH>>~C-+$Di*dSx%i@+-QM)-WXO*4i*n7cH~I2^{fFZ-YB zBL>RNc$Ty$GmzRh2GxX+rjRD#iEAuQLJmhCH2+C-jI?}l&?{9kh62~Xzm!u0Krr54 zE&ez8tIGdqaejOR(*R@b5a%GveNy&qL~yU_8=fQ<2dKp?JfIdw*KcOIR0zo06x2`a zG8ZJO%0mnOu_#ce)MjzwsAPYQB=n>60JI3SivKRSUv#67D98U>9Q{q9f=>^|aZXk> zE)flN4J~&&ofNl)#t{8kH~5S%d?wnEB=mnO)_++J02)p3UznC*0!%QYzd^YDD_uL~awr=4!n96FlY<8s<~(=5r0^ zdX2t14gWEif6N9xWBN{N#^$Di=?u6aUOJ*&;lxI5lgh zIQQZIupG;XqK^?p?<2O}$1sK`TZN~UH0Rn5RP43lDG=c#=_axa6*5a`FO}Q3C4}>nj}S zsiuKW(Ht^A@E%C?=BO0rpn+}=1yBKi0FEAx@1)Kna{W0kM>sGt6Z-@h3KD+EL0OYY zxuEog_@?U_c|YX(^AkxGA~N&wO~cEIhxutNjtC+~2mmHnst=(diK-*e%{bKo zjtvS`d4Zw~wGjby%HRkN)XX3}XaR-V2y}}gcu0IBBWO&V5df&WAmC4ek=slPz+(Vb z;wVNFxD^QL6$qqYgyu5@N?OU>!-PC4>KelY8dK^T3&ctq4fIL`N(!gy8U#`rL>d#x zN*eX%qul0m>Kgha8dDAC3&eg}pxSUL%@J!%O)E{+yUir~>NnWwf8-wKzVAwjP-Dtf zV}TcJ%%kF}p`u}~qpqQ&X+Aftp*8KRK&UaJrZh*Sq0yi*cV?%N>;`w$(9<&4A<@(! z_5-~+eA+kfb4i1JOGRaA&HiGl(o1X>lEKH%B{lo0 zCCp&Ey%Oey4zQNFq=Y51glVvZ<+_EbwS}#u#J;qK<))B%ujAl4YGK-KRb5|S%Y5!a zL+9Lg;UZ~u+RgZn;zWaz)|8u?oA1)J+ghrfA-}Z7l&?l|h;fqn>WnYd(#0bUjTsPW zcd*Qm#NA@f*ATkLyE^SVa(JD%`ktMlxuKk*)}FwANh=xt2Rg_lEHaU3r>5byMsmm!+LYmSzq{DcjNwgJL4u_%DL&Jj^FFo zJ>&IutIfWKR@b~+9-+a4=AcdoAOm6n80I;Dl_CQGg5q2vpy){^c!KCqH$2r6(x5m2 z26|H*c}DsIJb7y(Q#{UIIk0L&S$p2!>#!>4W`3}$?!$uoWKc_8;#ARS3RG1i3-YI#dh*T2RCXv5)m6ib^Cxw| zu2fZ{=nIJTY^ocGZLsgV3NOzmG_@{nAT}-k3q1cGcmW7puG~aX9*r_-NL-G-U|L=d z`esCKhdO^!T&6f5Ur!F&0AfX7Fe?FNZJ4!I0`Zf#y6;MkzF}IooV9^m2pt-ts*71r zm#kaLQBQ0G0*}83PO2Bl)A$c?)$sDfNt4L(o@tZedjf6h8%S-UtEZpX3=7oXV|8Cq z-mqvg-0bncDc3XwDZdAvG%F!@58RHm=U?E^9%8+6)*f9od5*tWb?e$3G}q5NTeD6R zn}RTOP0QPR$-P;?IoV%B3+8-f*(VQBKLi4(UqZL?xzPnSDGE?%HZ$_n1yDZ)Co^qQ z2gmDfWdtXi>{Ea_kbr5EviihC-KctE0C=?mPVkI^3cvpZLPE<>fL!p=6wd@pA}C5V zO574lH9`RWgK88gV$}$at$ec>0S20aD1ohi-|1^J1(;GFaU4mgYCwUlSU z0TGJ0M+kV1$`MK`ImQ76-H-S)`h+olG^kr5r+mS8d{gP-@0uo2IWCD3@?-`0rdAwz z>Lys#pwn>&5pp-8AtbNC2l_zWi&6pMW^kc%Y=9#)Suo-KFimI*Vvyky!O?R+YHxyx zI6BRJ1$FS40O*bIB(^hLaKQ1)bwmJ-CKyj}D*uNrk|QN!_S|#QOnp=9Rnx zYmc@IC`wY7VSxfr{dl%s1HfS*GBEotnl_yv3WexjBJe=w^^i(Fo_zsVNGKZM0_+|wk`d!KA&nBFHYBOn*c^JKi-!q{jK=_KLO$#LXZOxLD5`gbeTjks3iA%Kt}_BDB~gVt(+hn ziEoK6_mlEqJn};7M0^P-s6^rn^q|#)Q=TDlC^RWvRle9wRn?lcU|Kh_JRx3H0eYXK z3|3dQF0Y?8*`v-+R0XLbHD#m+35vXDFBA&qqBy3tLB9i5fa?;lzw*B;l;lLPm-}2j zC_!6}9&*#@2Y@3VKOjao%l}ROht8^{<6nJ<1NDREuUc(`dIashm(9Hj(H4;2bDtX2 zt$R^{`Ud9u?#uq>&@=xnL;v(&WuW@~(++I%Z#$acvHvQ=7yRel`>y`Yy^{YohbO`K zp9=hcbBTBo7@z)WtSZm=348<_zXCmPuqvp=@9sVIBiDEp^GCdCj;j!G2&MwZ$u*@QO-<3RKClg9)K;#3k<73hP} z#jON-NQHU;&?BG#r0?TW#d3g$SY|*ML?Vz7c%^N$P0EIZ; zrl71Ougt8XsI2%(RZ$J5pr|aUsH~vK!OFs-2vd-UvBOlLuauRKk5R}J9L~|jqkpRj zU3lc#d_Qg|Z8ZK>q(4L)_2Clcao=S`*D*x9Mw{G9)0zV)o9nR^Lw$Knzo zeWq24THn(e{Ucb*zD^nj=$rsI3IA^_W^6j*-a4$KWv2TurCoBio zl||#5UVp9wwGa;ccEp~7`kkIL!{wXN1Zr~!i5Z0?_?1$9XancIJ2L2z;GemdZX`65c^Lv*|HW(BZ@= zJDbpz8`eG3f<1B0`O8eda{+BO=VAX(#DR;t?fA%m|iqB_tj7{@=Bm9}5+`Xn7U{gB$4TAaFr9(Dl2M27F4e0wb^X1wnk9z>e_ zhw`^-N+P{uz;`FK!@J6<`Rj$fgHh-DnYo?e1&!N<7ZrIMm*sQYo4#|u8`p?+1TTXs zk&VUDU?XP&cHR6QTvcxTs-kEyRr=|<{qDt|@lo~XxKhYIWFF+BJt>R&cxZN(J`OVr zxgK%y%JL|g&K-u^c*#{4i{tCfdg;UMBUIOPGF1LCj}6r#{mVyqJ4+&~KTLcrnOhS( zQ9C$Af0|E;nQw>5&`x8v>M0~?cBD5h$QQCtkjN4mjr-+7X&7#^zkYrd<;nUsOK7GE z(aJIXi!o(7X29UZ3pMzTW7cl$3;oJWSdrs~uTB~}Rvk~}kF0^SMz!~n;dkw3!!+Et zPZEt8xg7(1QiX9cMR(u^hg20Tz8j}M#w|%2E+{)M5Gi*8{=YjrT-~Vba69chUbXLe zcCf$((mL!Rbt08&?whX!Hl}>C`;3w~?!0;NYGDG{Smn`>JYW0m1ZLux(%;@GCf>tu zyV;q}<`=A-_=RS@Cz_tVZeMTYG#EY*(WM+8Hy1?CkgN2V??~Vb6md4XtuwrSf1I!! zDE3AxWOcEqx3$sYt|M#m_C)E(`m)r_cBghb|K`P%mOKOR(8j*`&uRUll%r_Y-j+ks zPG28uPGm)B<*${nl45!MjqVH{&FgJnU)R`E{y>h!mPwI%Kc#c~N=GWpkI|Ze^FMo>t1Dr%Qqx6vHqZkyH5iu6%~xV{~z0yNMJ)^|hVV|WpxJ#m?>XXs7oa~NUAs8Wnri+#nKWv>>zJ?b_`$cQrgej|abZ*TIh72tks-4mv$j6Q>UD7jb z8VYF%J?(5eXmVWThg+k{Fc~So);ENC&Rev53a9^hdt3Xi*?->EJeixwI1l@w&mBDk zq3zSRe7<9K{HFCpV`=aB;?G(}S<2~NWfRSCbmfM~wSVTqm8hO*`=naW)P@ogp}zmx zN)gWHyCN7i@?)w}j#-n7R38{~Gsf*SE644~?)J6t+1<~Zn^d7j*roq+L!aEh6M6EP zc&!+&Y7LK$tXuY-w+F8cpG-=8GyZVF9|pEFPaU2OFTvv@d2N4eKhXYh~gfR}&=d=AMXHJm@UOQd<%f7Igc;yjm^ck60K49Ig z(#RYwj{3&6W3xOZ{!(@sm6;x=B8=xQ^V0r$%=OsG#BJ{U``3;wzq1amnSvT+pF2m} zKkZx9cCT3799pmC&!4z2+Pir{%L{Cep9&Tzpk%mJ<{=AdX~tn7nouRr<9NLt8mlNi z^CZ}TFO9UBO*X>5P*Xq}Rkd2DiWb`pVU>jNX~FcZE`Kk%jz(D&L8 zG7&MQE3>L35N6hiM>8oHzOY~T7;C(+%(~^{Wr)3g+fZL4m| z$o}CWS>$pNd`W9u(DF@aQ?Bw3&cM3gUlt1_${D_M-f;x$Rw{gY!W?8@{IO{z$A)9zN{=A1P2ww-pIVtaOcDUbj7o7R5qp{ z`YnxoKJs~N1gplCpLHdL(9nj*W~)bIky)dA=iP4aaA&7-tM7$F`LCMnVbsO>?(c;* z%k0k}W}f~mTb09G!6+iHgpgvc)*0-u400$?roQKN;k$~ zuiUxBdbdl#?2%<)TTF-8Vu%QRF@vM)J{xJ;?^LLcD$+fZS5w}7yJk*~$+(pK^ zTwEimizlS=Pk%^MBq*pLVLd|7e1U})C%c9Ump&NWc3qyCxBdp|zCPa6&f1z-ZK+Qr z%3`zrK6)t?_XEVcEZopC&X~1dQA&h){*|!G_f>gjaQL_6;GL@ueSJQKu}pTesv4z- zbV`P?B2;OIv=F7lq#M&psmMT&`3ZuSIVQy>o@Ln4q1N;2?FlVDQ5Kg{sn`MO<=9Tc zq#N`2-%b9ltzSJYE>E25=(twp`BRA@bmIO1k`VM#Q9vQDPlh8{wPQMWRPKZBYvgZt zr(0)!#h%)GZ(WW~B|rT!*-)(6wY^k!ahjTKX?VMi@IN#^5+)Rg7G_%@=`25NR_1lb z(lB(08cnuXM)uiBAR^fjO=6xA4wV=TZx~>`khz)6%5L|*t3Tbbbtde;{V6^7?av-% zxY=dYw@$aySAt$GB1sPG&$!l3pQb^$HT?M(qT_T3a`F*mBEjZGTHEw}D6dv`&X-Sm zrLU(;@a0`14 zl@Mj+QRKwpO^28F8)ZKg|A_!3luJL3HGB1z@Ek8*oj`-GS1w^9{X$<=aHywJCA=|* zix0*I=-R#-MUU!k312gxo*Hy#iBR=RA-&5c%Sg*SD+)QsF~0WGh&rououTp2oJq10 zUeaAeoJ$|;HZ*VT2fpQ)Ynn<}`^|p`s}!w=a|rp-yIpba7HEf{>Hs%4%f>_*b-GVu z?NI+rmW%^FBm2Ll%7t9j>q0(xt9KM-pL%^DvX4&Ujp*j%+}u*$cNo$d(HeX*@>9I| zW>+Y_UFtZ#?@`O{G_TU{!6g|8%Gq5!`IqA|r)iEufRWpWcX_g5wb|Z~a@}sBM(|P> zed-4*mUrAofcw^9W8c)PL9SZE$p-% z`?$&SPvfnd|J`IS4wj^;>pKW_u}v=uh9tgjM1BA@xy9%+KenFQM$wq-Q3JnLXZOOj zLlu?O%{Z)<0Zp=@pL|bj5+GWv>_VDP+$`-DS8Lp<{9KDrXgec(gM9{RB2Qg$o!H~h z&slOK{3sjb8L^&nim>y0F{hmVs(RM9p1V`SRO3$i!I*XoZdv4swFkS{6 z;E5s+nJ`r}xiVl{fkObpZ^4G(1AZFnFA@Tz-g)g>{S?_ZU=bB93|)GU5}5UXQ6^wX z7%=K!0-#7<91N;t7}RGcYIJY|=G3h~=T{%O->_7$`Mk*LyF9AJQzi1aDe>RH_Qx}M zW{!zUOK)U4I$-Dkn`^1ZKhq2acM1XEAUU#3675Xqs0mC^ zWb3!WkpR3&2Y_FVkIHDH4M*%_Y|n5sAyD^=e)rb1fddnG<$&aPt*InJ2%Mxpa5815 z1pe8=2mp6@?!)~S1~T~HA1Y5SG}aAegfcNf>7}F&WToZU6yz2ep^Pj{tm5J#QZGcr zB*adbS(%xb*_mI;%W%ocE6K94vNE%=Gbxt(Zdz>7tIUH%kBK^^V2iK%F4x`Kd3ojEqhf@FGVm#|7>Sv zM>A={QU$62Ti?4j^3K0k8+NXiGp(C1r!S=%o-L7k^PG9Y8@+vxoL(~FA~BVk0KB7R z>6QHKMJT-pm06QHOkGugQAhaJ+>g9asDv@W-WQ21!0E(h2mla>nzgU!0_(jYT#lK~ z0Ad#$KrpAG9_6|3{497&;aW89L0!whV|R_kBf0F(;*O)&5q`&x^EeB4ILGS;Ba)ld z_&^v+)Aw-g07f)3mdt4JfH?ddpb*xFm^;7p_N@^SP@5Q?PqV6HRaE5RrF{Hksr&U@ zQ}BS?Bofp(^SwB*>n&tGgKt;=(P5KTrys#LY%&;8C*==k=OqiM$GUnyX7={^YYHL3 zEFeJc%z@9eS)ctuE#~2ALZb_~BgfoP_KUQ^w4H6ew|Ax#2!J@=gmQ|!(UFoI`x-4;Wz1j!UT54Hoqwo62JUj zUg15C@=m}-N04{ubEpMu_6@~}8ym1sx5Iv%I(_2O8_}KNq2BWBfrbQ1?kvB5f&2%r-0~{v-=k?2Hx0-u!jt_&n!Gk3Ei&|oa7y_d4bS1Tl`<9*mhl|0i!n@e>uDezhbp}y0h ziHA+d3Nv7|b}&*$GV=+Q91AngcR{Pa&TM^sv0mux=Z57sgp%)~DLSLDf3@HPnGj_*q;vn=6(yIdmU z0->I9clm|?32--S1RA%)&0E)MXSu2Lz&^U*)-@am3#g1J7az^e-TY!}y~3t*(}nHos%Ito z`9lB&Qmu@>Hc+_#vNUf0<%cd>+24f~DCG zt;)Y+WO;4g$hVXDDX0Gx)ddo8gO?dw9Q|1$ix5_IH^W{L41QP zqMruW6H=oc64_^Nu;^(2a9H+s{`Z>qu~FyL)Z(mF>uiOS#~LXBIGab|Ht3t@vm(|{ zj=dF~; zRs$wbR;25?qh`3M*BUxMBIopLH~Y`>00tkWgka|QZ}o!|gph6joF1-~s;K}lXFnm( zAq<*RHw)KH)Opm4eMhd#S0FeG-!2i`bzfx1Z|l#)h2sD>6p_pVvewp_&q+QV zr6b9{tg4h>e1lWMqGTFf74#8)T`_HRc)89CVA0%CYV(Fg-Fd%|HFA3BkC(E)7NgUo;z89l3SRL5Bq)c^CA?)n#z8(WKY6|F4IEP9R`Rd zCQ?<+uxxZhy-BHocrJtJ>$}GTDr)jCBz`&X?5rkOTJoj78Gg7f_$>?vi(?1F?3<%F z$MxM!M4~PHTK1%&?}rbyz8P%Gt@G}5^!DhY@l0#)XO*7MPotEMIBy4zOJjvxm!jZN z;<)?(WI~Sc9qmBz0q&GD|fXSw4H7As}FA;Gi zBIL++*HNKWNqQi`<;;$Tgd^{U*1nVI_zvLa*fDzwy^7HOz288VlL#@aY+(kTL{c&m zj58`4DzY7>v=L{R4`izpyw|Bkug&c;*E2SZT>tSISvSw4IAydE$sZkHfj%%FefGi+ zf77IE3%*2?(n1%sfH}GH=CW(vy78>I=HJ z@lTN=Qpr-baE=mNYZc%FZk##p6ulf~z$8oMPFB&l!HY*Xo$%9UoaP(thU7=6q3O%J zW7l3}hv}}0!i2sZ8P;v=mf^NxrMq57+^FLa)RNy}F=>hZv$6mRy$7$Ux8>sJpLe}4 zCL|-y=@#D3Y`7p%)Uy5()?cmvbPY{^u>Gl>+Rdu-og`T z&LI@;c3DAu_K2$wDY}`=O0{1MUv%P(>-Watd!J0Ep<)4;lr?}Gu@MUS$DEv%03=+- z2f*Q6dURj!*O>WS(-$YP2FF;6U$R)hG-f**e`Ee3SWGrsH zcufJOS<${OiY!y#{%t_cG9D*|bEB>Xpu;w#f1)nIMCf0>HS=9iz_G?!#hPywApAWg zO|eGh&bUr_8s=p8xSrr*3!r#Z`9+-i(_6kgP9$x;i@(=KdGIOg0nrJ_jWp{~z5KvfHVd;M)WTP0>7?BJ&$H!Z8*tz;B(O6JVH(Xe zMOs1i5|d&__uO0{^Vx|^(U+aq9N3$2=W^`Oe*_>d)K9^=8R?6Rt+{G_{;gB>QbrME z*G2fQ5m!!}1yaCdUBHq``bDGdlB?onn&E7FwNeD)pz?i6@KuHt3-s$3O9DZR%rJ%-`)e6OaS+k)FUq|srisJ zgJBTX_hmlwF|R7lo1?5Cj1PM}O_JXnEf1_Vb{jGlJ$6b{ro%ZZTe-dv!`Mgthox50R+`rE zS@}8Ki=X}SqH%qvZh!DZy4}*)0A*!RNe-?2VnG~&Oo0KiD=1P1cZ*i)BwEhGGyw!mW3z#gq4ohzC>%dNsbdMrTfta^YE&f zc2UGnX?u#M;@(v8;azx;fS%s$RCodxOzZmSc=NKkd%knx)X!E@~=HAz9Mn;c_LP$9U#C#lz^FB87AI^T0Xz=ihntEtp}Y2Oap+-%JFwbXT~5NWSDOsV*;j7wqC69m zk>cCp4Jlo))s7kI_fhrQO_0#O#(+cCNo|wcpoe)&f?p!$7Q3u>K zk@=b00XUQB{vJ^Cy`7Tgo$G28qn@DI3Q8`cT>A18VfBtUzl5}KnPwi`K&e*Aw?RmY z=>Boxg%uV@Ync66yzfxM8q&|w>3Mnex(FsJ<826;%l}M6hQtKf^Przm*HH|kcNwL0 zIpY5?zYQh)vVOupRpOZZ$@y2KAyM1eCkbN#M(mP4}svVw|Z zJg3;DK%ZwXZ=w7^;x>Tb^oYNLYKUwW)uEdH7cdDJ_M1Ig_Kh`{!Eu~I1#w>ZoOC2p zj!Vwx6J?(}iA$bAj~jtjsIMbV@%#nY9G<3L);Oiz@!_~FiCp{TX_!U zV`9#?KdU&1cYf;Pjo|K6L?Us-+-*=XKNM3sxr_07TwUZL^1xT)rZx23|Eec=u48x3 zceoN$S+#Lv^h@cygv9T#A!IaowN{UJfiZDeb zMeurryzB)6<@)S)7Rt!SFDk;R;R@6Eg=!>2QWbb+M(vRYkz2~!aUv~bz^8loeR?gJ z6yuG(@%f0S)96b(y7$Z8*Be$0Z9`>)@N%}FONND;6niDJ++I0b>D;nr|!t76meXk0CyHUPvjKiLu-5*q=C>cuYc1;VWQ=ge?kc96jr>9=- zi*l?=5KeX|2j>%qGDI1eQzE~?t5>kD*WG`z*{Ha7W4P#&5!&_{*bRSvH99`hPY^IP zGTK-AT7;DnMMKs;mG^1>%9N4P=DWG&Z}2dxa7={V3uuf%1mzT?@K#9Qju7XunYvf7x7zar!}j$c!W_{pn{GHCbs z4pEt7^x^JFBl$d>lM}nRL%A|3NX1J5jnIfmkb^G@HNXimu`ULwFb+$;Jj9!o5zY_ zeo`Q(2taC{e-I=z!zuY-@z;P&g)v$vN$?s*_7uig3SbiDmiCK*^xDe#$&kOlh*#;$_gU?qLXnMc3oD1sk`0%3ShD?>5!&uv zeteZrmS&D~5r*b|#p9+G0xvwX1=G!Id+#7)r5DzLNQ)?uXK%dO2D5<7gKJUpc8`Pe zWD85umZI56+HJ13!&t;rrv%})H)j;yHqLT(%D znCZG=w7?>O*>+8;{fuFSay^bnf#a|ZQZL#rgDpfF5!?RcuLQ@vw)qQhoWPOnz<$^|#$x+% zVwuYhsv8lSHsUaR^hjNEtKX(s_|8$ftTZ^Gr(#1==fae44<1|d`?svKY8q9#U+Z%H z=nrzPD`0WGVj{BP=}U#|nx|u)ykXt1B*hn;A$t9HA|BQ}HFBBuXQoJZ+9vyyOLtWu zC4*MSf2c!~0V3!3y83nPthqdmSe6ZL0YNF}i`N&o{BzBY=ifcKty!WGH-fVwBoETo zNHR`R?z~xr^q0yr-qh`Rj+9~^4sYynqC)62A|t1LyP{>gx}%%VvK#q)YJZ?^0^~Fu z1P47XeC^)t*KOPfbEnJAj|>f~;T;GE&+3Ui&s{d5jE0l}GdQt=L$-hCXqbfG;Rk?@ zBho`(hI&n@%c^vPfy0*GhOYsqz=}W=YszCVGpzZVMaTd?l5lOHIec*G9;1d(ooO|= zT36M%IMy64)itH4{;Lf3aPN%awmU@UwZ`f3(Q>luS?Tqtv(~lB z4Ht>t&mPCOGOD&|Tai6j=Z6pq)=H>bwTK--)zfu&g0;=kvDZ?bZ}4#Km4xg?l-{?i zEklns9rs^rZIuVC-dRlS2Di0086yKnY(DF8^QTkpg?E)3C&oIahtHX~#RrKhP=@#j z95Ly!DiLpD=lhb9pK!iJcG~!qnQiT=H3MHh{an_!`PQc?1DBql=Eu~mzMo;| z(QECN-=cpOozFhadNS!B(PIO20v;ss*U@oY5QotAeI-ev_29jn69di+c}*e?As~ek3Fo#2^IhF(|g=^dOXJtBM>d|voSaeuSd<=w^YdIaH~5aG z$9H@$^tSa&&fO1QH*Jvy3*Gu%3|zYZpit?FxVvus755#JM#Rs~zhQl%HS(%`j>6TJ zwUf0X|E?%5R^mIjUr1^wDOcj!y5?r#Fgd@xTKahDmfEfIc%28!p(VX`I_N{Kf91Tk zQ+>X2qra}+XtD@NMwF}f(c#UL*g4b2R_kv|o~K!zFTPxdr(uJbRfg$$<6FJ&?R8Iz ze|%dcUAZrkT+NakLo%$Ha(Lqe%VaG@C`E%hVz=keEs3=94270+&|b>?>kMaGOAE5J}xJTqIZQ6*>;!>GYWB2cK7TSwhd- z^7BL6_8Z$t+vh`HC7w3bL~OLE$&};hk_6UJd%QY~7=L~yfkl@8NN@2_L5(vqHS1_=o>~7a zsmcaJ{eow7Yfk8IaoT6((;T>WWoiQYE$sNuM40+2EpSnR*^TpSN9`P|g1g)&GkM;p zU$K4($DoM~&)+V>5D^1AK3-;QkS=@3MBCM%7Uc6-98OxNB#XZonyC3=V)+U3v!~Zu zKkAz4Y3tK1A9ni~0$oVj=!K-f8#F~ARO)TO`6v#$Dyo=9bmW#>uBD54tmBIek23d` z-I!;6Rn*~>NszBMd$l9m&(a`%(-FmRSn|!;j>gLN=SC8XV7Nwc?sjgxW_D3`tL7$o zNz^(^gf)&!^^AqX-x(F8l};e}Zs((Jnhg~}EBI}X{0aF%`?C}@{Mc!3x3poFbI&I* zTbF2dr|V?;Pyyt!-S28~Pr2L{rB0E;C&C})?A?$M*4LbC>HDdq&Lw{8dgGynHlY|H zm=SwL9M%Uo-u8q={UqUY3mA3ixFNQ_2O4*K1~(9my}|+jKad4SW)DbbJ?Y`+iw0%$ z@$>v|ueUU~p&k!`_L+XH=U*|6^p68<3jtavKytLd?POaSRv-JWTI~Sy3p{K^f`)b% zUgnG(6xp+f1y$_^0tQ_8J+96WEdf#~;F=%kiYVWzSdLDu-GaL+Fr;|sXWRu6;$k2nhU{Ppj3IF-%!kXL_nTnK8lQnlFlcjM`XK%0HP(Z3#OO`ZLIfoJq7 z#&wQ~I~xSkA%ketcBRZvEPE9K^lcFda1R*pGOJ^?cusH$Xlg{e0QV>SMermAuJC-i<=TaN3 z6jTM=R94JseXxHLN6hkvKG7G2#@|kVPTV0o2mq$3cHNuMZ*PH9Z1xPgbMPyW8xnAb zU#g^_4Cv5U+&&5guLIf3k@}DSxf8c|@cyfK_Gdvp{B0?*$Oq2>3L|+V)UP*I0~jKt zU$h}OuaL(~0qP&8w=->+$3tvnh_iLCH-fk#pXW3BQ&pP7Iv z`{`Twbkyqs5i-2$XI%7mi`5IDo^jVuIz8-uoyXy^Z^fwDc{F3V+^$ zSt-SdoF{2~|8*_GwSo$i;a8JleNu+Nl7SP4= z331su8w~-fltT30H2N*LJ&W3R)+$07xIdUZfnRjjnp9gNp@J&dLZWK10RYJwLw-tY zY2U30TeAZYa-|a;`4_bDZ`%p5-L}E+|I(gdhk!@9MyR9^%12i;PhSCwTV8YAN1}q+ zWgOX+?;ky}EB&52Tb7-C=gK=n;I-9eCJRCW@V?dY@KO+;nX|fznK(-k4mi)xwwxdg z9)0STla&t?5lvB>CPCp#!G6Gz3id`A8{!cPem+C(0I!Qcj1vO^Q>EVYK$q{^5?6c^h#fo z!|6QXL$Q>kN)WyvfkCshciXo5ivHAkoH=nA?B1xM0_x(mcSjxb24e@w(+d~=gk*B= zp>G}0d@w}<#OkLeinbWAUy#Q zpAXeFcR#1NecB93$*}Bwr}m<@WyFhXxc*#Y0Wt1^{>oT&1G`nkhCReEKRsP? KIID3woWH)gX3w5AGi&a-b7tAj)N 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 literal 0 HcmV?d00001 diff --git a/sounds/hell_extract_blood.6.ogg b/sounds/hell_extract_blood.6.ogg new file mode 100644 index 0000000000000000000000000000000000000000..618d6d6e117412efbd793dc7a357e440fcec7b16 GIT binary patch literal 19968 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 N0|NlSO!ND|NdT#<>%ag2 literal 0 HcmV?d00001 diff --git a/sounds/hell_extract_blood.7.ogg b/sounds/hell_extract_blood.7.ogg new file mode 100644 index 0000000000000000000000000000000000000000..fd0a7fec6d81c6c46cadf6d33bde3922cd42e99c GIT binary patch literal 22552 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 literal 0 HcmV?d00001 diff --git a/sounds/hell_footstep.2.ogg b/sounds/hell_footstep.2.ogg new file mode 100644 index 0000000000000000000000000000000000000000..fbc200a54d9bf4709aa34dc06145e65d449fb1a6 GIT binary patch literal 5301 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 QhjfbzQdFayHWoww0hye}E&u=k literal 0 HcmV?d00001 diff --git a/sounds/hell_footstep.3.ogg b/sounds/hell_footstep.3.ogg new file mode 100644 index 0000000000000000000000000000000000000000..1648043317f62d9b4d78d772c14a64eaf4673fd5 GIT binary patch literal 5044 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 G8vY01{6rl9 literal 0 HcmV?d00001 diff --git a/sounds/hell_pearl.ogg b/sounds/hell_pearl.ogg new file mode 100644 index 0000000000000000000000000000000000000000..90dde6ae3d41bcbc082ff6033bf949ee32f3c2b3 GIT binary patch literal 8969 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 literal 0 HcmV?d00001 diff --git a/sounds/hell_portal_usual.ogg b/sounds/hell_portal_usual.ogg new file mode 100644 index 0000000000000000000000000000000000000000..cf1f84af1053069107a4a987972846b5cd3dbc40 GIT binary patch literal 19702 zcmeFZWmr|g*EhTmASERs-5?xNk#3MqDN(w+ySuv)q*J5>RFpa(0@5Yj-Q97{c@Fx& z-}`<)Js+Ou(|f&h4g1WVJ+o%bZ>_y%O>9&xEj0in;6H(i;+5w^5_@4b5kv*@aC9-T zc74b|3Tl4%0e~QW(BI$hAk~MO|4(?R`S9d^dzT(p1pYrm1@b>S?1;y2t(~kmR9!4- z?5s`R{H0DKPs8>6#q$@4NW-jQYGv$hVea5=X=&~TejpBd^sh3l3MIpL0?5U(&t}CHNg}_vfZPkyjG+}sT8n3~RveXmQtw~Lj9#VLU z@{Dfyf=s!lc)Ic(lkaU~CB9LFVP~r=fq$i`$4H`+YQ%xN($p0s(HPxu1UD%(5)_yv zzUR1Be$B`*jjeD?QP^TIQ<9Veho>l@m1?L+%JF1Os)H$A)zxhzwh>KAexnJ)4jD<( zdf>BN9FMFX6L<{(crk?}F-Tz%RY(9A0H72wC#*6j&vYy6aCpL>g{0q6ezta^+d2WHdjq%t+9&-#r3o5D>{Q|HMQ7 zFL(eGW`U?@UpD<*6GANntXR4>-JIwqHsu{yHaBxzhXj~DxOVez<+#SUSiG=8l*@6& z548aQOXdCAl(7Bukk>6x9_lPZf+&~$WmCe2cM_5J^h=q54M!IuMYpjjZ_hD-NDT=f ziu}ENA})7zQhA_Ubh)YHAW4i!iISH4x=KFe{dc*4@F4mtLBbp1TuvjGUmQ##9cBHy z1Z|wpGy>N1c}LSaCuG$CQC(0 zQ4CifTf+cX|HEbPbHk9}{_|gWudu4W;43PBop@_n{bMV~7H3Syy87#+0=N_*W$<78 zf)L_CCpAlwka?gSMO&8R(g*%nfb&v9+3e3MHlfdAOTKTJxK_qM`-+i`lx!2091eU(fDz84wS`FfSNMN(aOV zfgp(&+}OYC%|V&wAa3jeYd{sni%Oga^uQX@18d~mj8D;+|6@{&UK1)J*aR-D>paWs5$@ra%27pISH5pxWJ@Fz^=GhsDC>2Xaht#Cw1<`_iDPnACr zCAksiO>4q^#k6!pA9gK|l3x93(TLGZK1%ha#z}+OSDhd^ZrU)mcR5RwqR!*uqSND6@ zA$c&V>43miNm|^4x1p}k{oqf4OaD3*h=ClDr=kF6411`SHijrd005fHh;iMh`1d9X zy+n9K6$+pZ0SLXy-mX-f$u6~JL>>gWjdCUF7)^yh_Ggk<&j zfE+?ku#yq(38F9j2pk_$&PxArS^nMr&HKM{c?581@dMkU)1L)@%8$M^`m2=);k1*4 zlZ3ujuqBd=Lx5U3$rAP;8ineOH~}=;(n*v4TvsefaCO(T#!gOJnoew8IiVm6`0G>M zqt=oX9b5M9MPE$tpGlp#)~h!fh+8t>BY|)Did8Qz7kv}Ic1@e?w_Z`{Dt_H~3jh|O z$beJ`b|rldVf>?~4-gLd8QKZ5SRxM@s()AnGD+5$OKSLtN5R)E}No zGMA=lA_Vi$P$`0x0yrE`;eo(|0Mr#Q9ta>(gor!@fd_f~%af}pNmG~qTMZ#OiibCx zM1qM_>#1=u1~F9-!i_-!)DX%Tf-fo0jwA}au|7@S0{mkQ;3RM1@d2i;w=z_1^{75 zQBhW#ENmRlxwv`x1%*Y$Q4oy*?U;Zl03_kj&=qA>e*WJ6dt`cf`}i6_s3;1;VMhcI z3Jnd--_*lB4b8tPV7toSEZ|`Z_~1!6u09TV%JF=zXLPuGd}yS9w5M-$Z1nf&cz5sl z{2g^K`_-Y^BE-*?Tx61^q@=Zb(l8dX0OkO3ScQ10X%x}kDqW$pVtWs47kn%O}&JjRZZ3G^jtAB8)5j`^<|#k}f8+s^VYGhtU{ zqk*K)=fuW;tR1v{vvq@B?~77-8ejGm52o*BQr1Mj`*r9WV09pY`wx@Egq%EnJBzfurLxdA&E<8?|rO*RFfN`D2_xybw{*6FoK+G zxKrI!T}y&hbC7cKvFyzDp4si-U?f&?)cYx;TGL1ncS#!N2Z|w+V{Q?r=K;CD3>OV$ zdry2%FS-%HZjD!7QLjmvYNqRFmD+!1a&R1*S%lUWKTPTPT%LuqfllYo8zx?MsN}Z0MXL^?!;?Bzrw-2VKXdNbtf3FVxdlDnbNB9O zipr6W;H|^Um{m4tNHfL{Qd?dV20396cewHcuO7##Opj)<4W@t|*Nj$y+V&>g$h|{G zZlY8x{uo_y?_3B5_DbWL<==syTw1JZ3F#6WG~r7-IP2nJe&QYyjefDY(GD$Y_VV*; zUKnRzvE92ba$Iz~4*0o1bDeCJ#8Hf5%BNuI$jruN9AL7c4+ zlXFTm(^gxNZUfikH$I*{=sI_MGyJ15$B!pZ3>hX2(%k~#Vb`(sF=OQgn)m{e{duTs zjVkL#nq`%OoI!<@A;v-$J9eb>)NwD&WdDGEgJgry4d;m9Z|g|9f)R!|Psn0F?@!!o z_m!TG(rTi>p0W89&f=3-@em zL*^Q+Tb5_$CuWX>V)s|6QDvOBYpdQnS8Mo(A|Dke0eFLTj7C4m?CYJTtW}M*j@bH& z-#+ap!oAyk$yeYS_AV~u7bf@MT8)TD^J*^TuDepVbaOK=a@Nu!3=Iti3d`nA!cyOA z_AGj643Ty421TPHv04EwMxnOcRh1gEkDnP*&$WYaXaG^A3|PjAhtBb->D*+X86VpQ z@7&Jvn%@-4CB;cze3zr}1?l|CNRlwBjof7*mH~BWqWfjQA})t(@t3Q8Xz&|Xv`%tS zR6$(oP|p6l)|G9umkhA+fR$=mG12UUXG<3}B{ELCv~F7$9I;pc)8|1fZoTx(T9`{p z39q<5dwi1IJHB5+gAG>xLFeJMSq*YOeQq_O6F)#UtwJ~Lqn;^ezv)YMNXYb9?fzl zh(<_??5`#HH{PB_4vFgNb{Px=MxVUm>j=KA#e`Z@zvfoprtdaU>r7qudIA*)n3AVP zDgOWqdjhK1OBS9P<868?_o@JG`qLuVlV1HN=a2gfN~iUYO|kE675jd);RuGyX*%$! zYqdocDR8)i29WsX4rYY`dTIy;7bmR z2^UVO6~DX-7-sr$IrOBK(+wq&Z(fbLuv%RXGnJY;G-N#S_hJ;he2j@ng+G-BGUa>T_LV48 zC*9q;km9vBp`e~&c8Q&bzR(0el2<+5f(R$h{JFhI%^&#br{Sy+SFgvt2&4&hSM_Sj zYBh4E<9q;_&5#&ujTixBQ6Ju;_YyfdoZYh@zUk)xV`Dh+12DyI7xEt|E!WJBT|Spy z3^P@OjBIF-gIa;X%OQFyM{NvT8@w385EBLgB@(PE_{Bm1)Jh>Ri%TzIOyrrg4<$#U zm2be*W~-R!8Ej@N$~d3}i`|`n(JRpPz4rHQq|!#A^-35$!MEH17=R+aKx6GlK{&X|`q67Zlp$g=uKzC@I5rEobiLh zBE+@%7`&7EUW`_f#MhS)(xe}S>ZF^d3O1FH71Tcsk#-3gGC$u+iz{?xx^rVt7+=~! zS_l7j*>K8sS)Xhw9P)=-DEEvSZ(;**Ta&}yZShOc z6?)TJH2H{pmEyue*X*1++S;~kKjF#K*=N~g+5*zg@9jJ~SA(j##NQIGeMArY$w~vD zZ0ClMEgLAHXTnWpKKa#KM|6U|ASR!pdNTV@ayt^fG_K~h$|UrwP}ePhTMf4oZI5_Y ztFIMD;@dOE#7oVF^SYLwtT{4K=e}X2IyxHE*M*IDE*;qHg#XA5^aSVWSY7qN?$k92 z5_;wg^J*tm-y>fsOrseU5EP2#qFB1p-!eIN z?X~gRrp}e?qzV6C7`w^2*J5?XrvYEEI6(qv>@r}wZ_+Jxo^crrWUjn-8y>nNM9#^F z=zFqDE};q*)$ZDXyqU3ubboscpUbo0u{8ggoFJ3*SvB6uv7t{SZ(3g(#8$er}=XFl)lsrBjW*(oLGv?AM*BxVDZrn<2IJLS$ z8>MF^B&4X2(^Q+DnZgU9;`_t1vbzma+=qH_F2KILG>jeHg<94`jP4uO=F3)z*>{aU zIiiwfz4STh4*w7jZL!54)YX>5JD%0+TS`ZlKNeD0rFCi}bDN3GlO9M=1@x?4=b|q< zqzW(~qc~4Q?4v5DD1HdT)8k(Xr5GbWvY!j1MRpA7_(3z*?`&&3sUI{-J+~@{V&d-n z^!HbE@%M@({Lh^M;yXZjN#}XP2!I2K9@Okmy~NNLLn698;8Bw4agz^78@;Q(Pg*|6 zO*Ft@?r-p@e?%Fs&XX4QtiJUWS+|~W78TXm0v~NW=T%UgC<)O3#VO49d zqyVg~obKT})4hg08pK*vTMq9bQ3FBvV&d|UL1M4HHg&Iu;o%EKoh_O4qYi4C*1428Nl}e%BL6`YpouEjw95yLXkM zZ7zZVi#=;PFE#dB;Q*|p1*+SgtJ*BQj6f6 z7}-^zYxY?NV&S-b&DRxVp=eV6FrLUHc3-^4rxGJZkfIoHac<|~L}8x z$)w~SGXuXyRur%76b3LDySZI251pi*jkf(dnY5{e|2&va zja|Ln!t{5)X?p!>vz4}#c|vu}wQpB2Rh5Avf2d^#g3I7Cx**~%*bWP&QNYcWgr`V3 z^=L1!31aeb2!JeVl8K&=QhI?qH$g=Z1*E6>U7sg67iG~zaJIx{@CSpPyW2PK1xmyo z7lTr$fd8yf>1!DOaNJ>~{C++GT>Khvwo*W$*8<=8w_6)HFJ=*cJ<7d-iPJ;b7 zt)ZCLwPg`68}DN{DHW3Kb&oc=PZlc0WkJo9Vk8>sKT*y^nL0M2$IgEB=sa?IjmsUgSmI^X^*7R0eC{H`Q zwMCHb<5Y_bu$?I2l%QHFfmj z2Sq=<5^5qeahQtQM_&}p6^>-^O^fAGSHLyie#R`C|Ju|q1OCj*0b!!99*2 zeisnU5BpEPnrTdV=lq$`RPZhW@rWFi&J>`F4 zOTX!m4k=+B?P`t7%@BN7=HKwf2Yt|U&gvzWTeU`%)pWdFX;@%ys@*63N+ek31wbWyc}rFHnuGd4Q5Vu<zkM4uJjg7LaIE7luImqXpDku# zYHZK&6FFOR96G21szA}LS&8nB7A-HHMLjICF-olLQH(YFN`{zk%iP-MSgh9)?;8?l zzeH39BOed16vTmKZ7VCTT_)vlk+*}9UyEXS9HxIsL%7B1ms)us5G}k6L+2s zj&54auT8$1@();`o~#X;OCX$R1ZbMv!iMpcyO-rSb(Hyvs^RB)l%l_qL@5=!M;@QR zS^Fo=etWYjj^Fgs-ZllLwQNz&MTHXuotdNE*B({_YT5V$bB%V@HpOEyy72_$bYMJI z{8{375OSjTYlrZ{XCba}cNJ8SZ_200@gd0V%mGR&oAis(y|XZ{3+%|A-d1`hwd)o* zO3I|;w)-1dAku~~&QuOudLI~VKJ^rXTBl*V=;ro` zQMS=1b$M5Zf-)J@viGBV)kcy|zJFZ&k7+?PF~|XX=KG{|aX&YdYXcaYO)z=sp^S(7 z8wcp05zd1F_Hmmzra#jLanWg|BVzw?&m^ zDU=cnDjug@kj;;x zA^M&5biS+acDGHcdUG3YsIL{b_B73?VMfVP!*nvrEVIT`?8C}cYhasqi9RxIR+$oc zm(duDxF>iym9p*`s~Z}$V%Thp6z?sVh5-x6BcHrZZ+q|LT_Wa8b-!!4|48WaiT;3@ zNZ@N$pR}t6C&Yf1Iuji4e*0>_(ODbXm|*A0F@@Og$U3{+l%>Ado5{N9ys^#atJTk@ z?Agu~J*=kNt$P_*{h_>&K|Htyz?y<_fRd>M=M|Tpw#c-ZmALVb6j-NPcUwM4pJl0n3bRrK8PvrbEYC+~dll?@z*BD*zBf!6W zA56ax{gE*lopY@-#YH!lRw_-I3$Z)q!Sd|H^DRooNvAfXQ>X4lZ8}-el{Y*{1lM0X z@O+?iPxeCPx2I`-{C+F$$uz#S8licrSa*>BL{-VrOy*`2C$HZ)TkZzO4YBNulO{ie zTWD|d?buZf{C*^tW)j|Xv$6Ctsm*3hMHU}#rQHtacM)6vqTbN8?wJnPLgP5%RCG<&wP|Lw+a? zityIByFWI3ukA2xStGvV5n}CJ+B`kWaM@pbO+|sDv~q&AXui?NhWc{) z>2#IeANhChIG;Q(73u$Ro1?L&dqZTl;>f2La=4?ojj8XKd#^DJxBkkc&8v+YvFou~mA_g{~0$wzGtT=Fx*0 zl~=5uCKN*XPa!8l_qQ9FEQ1{{%4Vm_=4V>t%K|;99UE9dWKCMfs{AOeGPBPDd|5MG z3hxzm!z!tjg?)*jZw+UN#mWpd4@BpyFB7#dhxgbbD3MV)u4zl87;nY8f$!@UrzwfH z=cN`xXZ7d&Jdj{d4AkK0S^HhrEW>zFile}U#MDgU4@~1-w}R*??TTQn#^9jD>*{kZ z?BFTRzF*;T!#L%Y!|jv;^0nvVcxB3rlt=>ZO0=Pm=)n3rQ%dYeD5-vJmW@gbt=6@s zldd9_XZ!g_F0_oF=Q=HaXA=^2=!;<5B}E98`lEBlxmNyh0u1JOPFdZ|c1;O;Ejicr zC+iZeOtS+9xULT>w$nXBL(MgSo+NdJG-xLYP!AziM849Wcb*8KWXvI|ICg;_{&}9U zb)|BDi1uWB<-Vq7D(a0M+;;4xm?$yhf$kT*`#sdsT>*a#v?z50pQ0jBW%I0e+t!o| zjG$$gpGL?FNu)~dRI!vB*sj$*wC=w|`eovubE`A(+L7z+M zdV8N|K^>wY8SQCHOXgb+e$O+nSC->i=Gk@jc2U0}%aG&PCQ19wg#?}MI(SDI89M~n z7e@!)NlF53bIOOFZW0zt+5~jIEJHS>_tBhm7f_PYlx>6%vj2K?mU2nVi)NZirk7USAY>j|Jeo!U5E?~*2HrtR8Mcd zv*olS;;UgdsBoOVnB;w7TE5f3S3FfInY`OfZ3kBSBMyIs1uO@g30}FAO!UL^aX0o| zbOKq$v{S)QtiaC8*7Dkblgi)SRvuG>lZ__~gQ52VScYP?csp{x#?ac;WK~prFi_^$ zG8gMOS`zBKnz3I+`9&g(6{vb&|(Z1(o z@W@o!g`=ZPVi9E3oZJnQh2f4rj06Zmb!!^eQe>S=<|p?m?z~2uTVhzX3mZIVZX@^I z93$t5fVz$9CUItNT@1HP<@+N$W*TU5Xb-b?-zX`Q&>7C34{|CX?dCW;&7gYjOF1RN?HHLI2X3S90{_zu|DHykRco|_im$;f$y6+f)hKVKr~NF z#gP%KZz=z^mH_?lwSkScIv0;_P|LLx2#Hdle+9N-IBt7~(faaR zad~C%U1ay@N{4i;v8%yeq#4`Z^_#+=7JN)&o1HaRH$ zk2s}|;NIgpcDeb1?pp)0mN;A3_B8Mz2v(x)%D0blw`Az*u2P^n8zZD~RL^_W2>}Px2j7AHhyUn9l4Q_aXvuLUDoHKlfS;`o|;s z&2TNMK?Wy_e+kv$f-{e6@5=bfrG>k5lW6_sZTjZf(S{3#Y;^E>`Z>wBoeX-?&uM<) z>L-+C#SMBvfH7rzki&hcE}cE#5dJ<6N_!!65M>$91-Z{VfVyWW$Y{2s^E`|UgLo=f9t zo+pMmOAZF2cFUEt^;|)+0)_o(DeY*bz48G_*zH0ml;}=OsO{)iAGIT+%UESUs}C(p z*;KJpyTJ$hf!u{hyPw(Edhne)6r+4~<0mW~%qG@@P(zXVgHQu}O3(9`?}p#`5cPS9 z`LfhFh`^8+4S6ABVh&KER+Vr}OTR~X+D<=Nyi3yL@lCNF77t+*eoOvvV!lrvqLz*4 zP`67_gW0OwA#YmG!&|Y%K%tLkjQ(}z>^28gknb?`Fv}@!-UB`3@48gvK~_jfMJg!HCy zv*T$ za{#6hg~rbOk;F}&D` zQhkbE%IGmTmdsqu1)Z82zNH-*B!g$Y2sI)&oKQ5os0<+c12`@Eu;1p3`)0Mw=9?hq zy(T+6y@Q~@x?3KYGlE}<69c_B)dgSg|EfaJ+*QNS(!}`jsp8LK)~C>3a?b;?{F{VY|^QqUL(yov{Gcu+gqKytpq<2fhRtD;ydKTGc zWC!O3dLo>Sv|7hxQ@*6_tR1#1owB2i+H_i!m;%^*PTl*b@6jJ$h<neiP%%A?lb*!ScIiC&! za~Bjfyo7cc`(y?teo^~)m#XCnm#exE=2%$#A)P7%gL->IryftQW3PH+yw6HKfBspG zDhI!qJ}O6sW%Y)Fl1q-h&gFBOOiK=Ken-6v4!@zzvA&BvkGkUSZ4euARkv^{@BD)xgJnA0DxbYk86ki!R=Zo4od(I5#YSr0o_%*Cq@{E1jnAa+vkt z7>7KVN$QjM)UW=k!r})=P2ePFY9y;c!K|A9EmEah`V6Dp)@m-as3l}{8wikl%0?}UfS*oZh%ctGH+tD~7; z80s@y4F&0?%8kKCxAX()Q(YPYX*KjShx!yUQSW&5gUo{%8_uRz5U0)Il z1zd1a!>mRFUHn=-yCQMUs;4U5Tt^KrBhtn(R=3&klEb)K$&u3@Eqz=Js}NNus#g5) zQZ9F{Ic-%{zLe&vh2l|$Tq1!Y)xpc{Ia_RKu?-0g3Obr&X8gk1DaJ{c=>+G}c+__a z5^-SBJN+DvIy?B=V6BIinc+*>wKvax;HygVO2dsFH`^G4aQv3+TEtFK#VBG9@xV1j zy&e=>C6LYG-DdT2D~}iUr69!q&cm&{;fTXPZ@1QQczE%$=*epG_F(z-?chyW0S7@L zXYbSV)A_tyOdRJDK6Nkaa#q>nU%I}_=oBGm(hTlkSICF@6h02l+WEJ67xW*ttYk+^Q1Vag)2D#6?d6NH>;V{_mr;DZ3R@&VX z{`y=AMU$d|BLPj<6PHjsefA&E#ZqzYq-E1#ZzSvhQN-W|M?DboJkM$?k}9eNdl-aY z2O@0_{;s*~tOol`42yIy`5P(HmcF*Y`o}0@OU(1inYwJ&<;Q`6XpX3;OF+Gwpk6}Q zhoc*#pS~v(x2Ih%U+i7b8fv$3a7N0#$W@m-rv#KdfvA3PfT4^d2EB(yq(eJ>R+vxJ z55GViHYe|badN+P{AL0LheY<2_2J5=Y4X~}1M}Z81476sRhBsj-_MLa6-976u?fd+ zI-1YbzHTb~VyNtVwtEZ@`uJh=#!jpyyD0KXYxxUy7qd6jKUPaJ9dDd3s(;Kq7E|(q zb5dVmPvr-ET3eMlg<4F(oGw?LE?dRs4=Hg=-x+4Z7tE0PVWr{R?5|viH(YwHHtfy`o50F@F->ESzIQ!t8&3HDS>z5_^&sv=Aa_&*%@a1Y*<@QWbw?2*JM}x_w z`UNlsC2ctj$*!s3c`~Rr;_7>yFG+A(^u8<@=(1pzzdc#fq9Gv1cgZ)uJ6FK$u{v98 zN`K7}nUkE!{e{%82jJsGcfWB0VBYSla16JDoGx2Gt<7wcO|4is@&IK^U#70cd5$Vt zdorqyf(+tFJR$_;R~@gwU$M@`YBvZ|!N-@lQ~7-FYeilb+21deMt&%sn&J?3Tk)ay zX>)AG*X@DVu)a8&yrn z-hGf0Ltpt}X5j=D^X@onDiHrv^8DjJTM*=Zb>6sQx)V14Mzgf+QeHUT&{f1FEqA{~ zreUjOgKjtz6uoTKd#2_Ax_lfpLnb``h}c;h+^@_DY2=1>~90x&vVtFEQa`1W&A$X zw}G#8h0HH>?@n!EYJM8qEXzd~eN2h_EB1CrzEeJ@Z&xJ+^y9PcXE0)de4S@UxY$p& z79h9f26@e*BEC5~9|vVZYwnkBoU6#?41R0PnY?{mibjjB5Kgd~;?wFrMX1<&-qccp z8%J=3mS=oMkmOEFjU&4wrvv*Vqp-AQTRXag9l#n<}0kl0p7xYf3;nr^H zUC{&~U#%M4k;dbA*3dwCbR!CspjpDrAd31|_QPfYaqUW5-|;LUR$7@C)>-@2*I z-J+{8(Bg9o>6lZgq&nM+f@Bw6l{)>@f)Vi}js|R){$;Yg6q0>8Or=`+Et#rV8tzx+ zzu*wb;yE`s6qc&(;Hq6E>`M7qws0a|dEPH?=_9Z~HeVhZoID2S4H;#{*f{^3WPnfl zJgr$Wg$pPpe~j1L?E6jPOK(J0O>-L?3wF*0GkX@V%dQKubi&bNBabjAZh+)I4E5hC z1&V<7zjyfIs|>`KDS$nzNgr{3PDx4r`|RwD%$)aWiK!{^iSZG^Vb2!5?RWB%E^;St z>;q?bx&|xx;N-_IL1Ll=cVnH`#Tibg|724 zC~obY<6h(IR^0s~f2+yqo~&PLxM)(__d|`obvWNqTc6pJX3m$|EjvhTpFcjA9!Euz z2^k^E-Eve(ow(bjk++j|3whVKDeDS=7fuN92=hfpxc5E#t|{1AeuI^kAk=PR^t5{God zu0YP;#;Io3P7LX`x{lLte$Oo9Y2!k3x6T{|^p`*qV~gwfu|g?A&!6*&DzB*J>qJg%`n!zFq6IGnD^xo(D^m4ZN1}ie z)~&f;Kjp@zEnd?JD-n0i-`UZ916~D7@|%VDY^EyfiE+QzZCrwFY}ivHGd2fPgZ{i&$3>@U;GT#m!0~Cl4HDO-q z2r&=i7@YOjfJF^Npt$Gzas9P7=2L{NwJvE^s45BE3@nWQ1!DW1+1c{W<%M|!GeB45h+@|3BSoBBfiZR?b>)NnCv0QXtnBn5wn!Io(7yM_V6lX)v<}t(lLfV=gV71^NoBGM+ z_wL$wWh0yIBGI#RcK?w@hrmHx_|n~Q9=yj;jOVSt zu+ME)kF#FGMeF7MW>LT`i~Oc5dVyI~2`Xr-fISuqz0{Q36jIs z2Xkq&Mw;TDE}VF1Y8kqt@o$}qSx^CDfDmEHl{fN@jwo|`pzcv0!8ittC!D|LNpq*p z9`i^a$%hn276!3ny_5Sl8X|1T(z;QdOXsm^dk&kvo}ZYAurl?HX9R@(ON905s2^3J z)&O;Lylf%mZEz1~=9Jh66f*<9cr!5FRHUh9@|rG1SY}%~7XCA24>@l=^ydc*{;}=; zGl?1smPN%vVylZs)JLo!6qr~1rs48_N!K1!>*)j`T5ZJjV|S0ujVUOPjPhvlu}U00 zwk9U&zn2sM#0))K{4T#hvwPDGRgxQGDWMPurI>r87ekwBz!CJ~MC|@~6G6ociOIO~ z>`m=EVvpZiwSN+On^^KoM$x?-m%|7Y;nf5`7_12<#NVO;es5jH+wBQ8dV8cC z>&l4$f;abDu_#B&DuXL+ZZeyg=qWjP$h0Ra_0<#}k96%6bMo*bVW#%iX6!HixebVa zPs8&ZvX>6&Q1=b<4P@ek^%ecrcd!TL_(OQ|IdjX&zL7(|{r>U+?-okOcSOt(2-=A0 zxZR<+1%;Ju8_F>Xc%b_OX=x1Aj5;yKUy7P+Qj7d#2`h;^zD$U`cOPSqEKr~nN22m( zKQ+WV8X6MKHzaaaJ~_78hO{??4xb?uzh^H%;e7;MY0}??jRzZc`vdkvc!pemjP%{j z)snvL|LWoDRrmhq`{(!b`aFL>-}mbiszMe6K&sqv znwO+(SG`A~tglQ=Uhyt@comRGSW?Gjr9TRdbDdkGibR zSMlU065;*V-9H)yA@zb|P+O>ZZsqGBaYTj8B}dQqm+ zAbqk}>b~Cxao(uMk=4rMmr||8tjW;S{9MxrSrdz>)U2d&#OvIS`bM946~nZ2%nG!} zFTrexBbgZ=D9kKx-r?5E71L85+GTU_UB@d!)E*i7W*F5x$`CSLdWnS#|Sh zmx;KOmO6yDLs6PfN1$>tfQZcvg_E!YV@1 zW{4>Z(}CYOTFpPnc;&fsirefOT!d=J86_Tg`L@M$z7t(F3yULOl9|vbOnKaAAqoVJ zI*6LLm`CQ&z#?g}-SgnBTH2RX1wQ7l82q4X49`JC0XH;EUEb^-&0Oa`cObD>#GgQK z;AGE^nlNtWvh2r}2UD#(iMi>!tP$~+devruT*ITBMQZPv4v7oHZlnRvV8|W)wg>EU z`VPHtp{!yJ&ozqKfAw1NiBc#)P%P|uN`P(VBZtimo8o|TN_>wfowEACusK?DMCSF} zKho}7=t0=6uXB+pX+Iy!7OXt-0Ok+h-!We%MHci`vb%_%==^aGk%jt=Jm}m!M@U$1 zTfG4s8DhEbH|niP>ybt~28Mk=$Qr8+RDrMYVJo8hAO}3CZ8t2fdGiun8m6 z^mR~z0bOnA@h_+THpPc?V?YROiaeB=QW$*KwC9_(ls5;;>Y0<25APmp2Q*>!sFNz3aD=%62sKimrBe-0CTX-x7AiAiDWLas z$#+8+S#t&F4*C*AyDRurtW>&fh;4Uu&T0LcXFE%B`?(o@LGkdljvttewK-vQZVbFrG3Q2kaCJmx`)k$e`Cmclg8e&f@yGMVS!W9XEN{8+?>q89Zp|Sm4kCxxo-Za z_k!Y%Y9v%xT)s^wjnU<{FSdaZvsdwSOV;c=|AC;U9epOcclH+_m8}nlj3yi_*Z4x; zh$C$nwy--;qFKV3c1x#7Prn~~IQrfM#K0jq#w%lK3bfEa^T%y^lHX#4BCx6n-lU8} zFPDN#3BJN-5#5}8x>2o^;qH08dN|&c>)q^#+>Fn7QSvxk>##?(2iLh{IaIg|~ z`#q2l5qIot!;xq%WYNKymmM>B0Dd*%nm;UGLVZ1W=@|rK6-Vg8VDSJBWG-mAM_93k z8am%R`J*l7_*c+el&Iku*%Zo2rM`o2GtzWvVk@%VoK`n@0Tz4!XOFR$zK^}ei+ zi3tGHz~{26ej^nlBMYt<;TGW1l9Hq1Qm_u(n&a3X0H+i@B8CaSXCQ7ZDrsK({FrJ~$M5?4rT znrbMH(WU_CfDBvx!s=mWyqX?EvMEfiq{n^la)hFn=YN;3|LdDY+^scdY7(}p5o`Rc zkQo4a#@*X8n}}jf)LzRR5^R1VC%0H0kt7=|K3bV+VBbQ?^0j{~-T%Gow zbTVdA&vdhVX}v+*6Bl*EccrN5Ba+XJzSa&3)P|A=tx$Ln1?C`hQ zk))i@^5>J7D101i&UN@ZMG&A-*nA!6QtukNuei-9}zW%G7&^LDGXs8w^aou1ai zEda*U9kpvrcJxYdY))APt5@opR*`S}Yv0*ZLBPTefIE%cxSiYzy@67DlAVH6-1<`3 zeb5z{NB(o!qs0p}#IjLF(U)_E*wc5b1(~!gZ|LEI-uTMwXhXwVVQg zfS^V3RHKFRB#NcQd5ha@PhYpcW`{M$e^a}Tp8Ad8X-I=8wsV3gE>I31N;yIIPLL@z zp-W^Ul!eG9GYSTk5?$n>YpzX_oYLer}-07 z>T|+Orp;g<|EtWwQe+{$@V#AfQx`0{LQTDEHcHp69I@aL=BK^5voRpi_kXOLo&*uACUy8>G=7AJeqDr z76Flw1JuX}S#aIsp(Lx*!xjL_WgPr5Y#pQ50)h>=TSV^I@90Cc_Ayzzp2+JnVF!yH z+lfy8ft+>|PH!ORwi%nFvSypGeO?E0OxAKtIXz-FN6G7O$Tcf?q+iJab4&TVHn*~veZ9)XxSJ1Z(yNckRa?)WIC-poY@&YaybDh! zyvsJ1mD$SWi}K|0a(QC8JmIz&ejb(Aj~$dRf%8V?OKx9+qf6v+yL|cLYjV4Z^NTN> zUn-YxJyvh`kD4W;m!3`tZ)^BNf#Ko7yqj-1A>-+{-u2?dsOV;UVZ>SeL%y% ze=sq^WgVwCog>bUEa46HrGGQ@^ zRcb*Y0U)a=B@e-uL=jx^2%mt;Nm)g78*8o+%hp;(V8xqq3HHra(Q2l?^%){7t~RR( zwUsITSP8XCi-34q8UZzsoiSs@QI*87cxuyL48y4XuvCDC8pxz#h|-iIRL@d|qWLnZ zW^t1=y3_wLSrmxo)=F=LLRKg$w3eBLCDf_R5@unnaure{H@;S7##LyAOEKXxD4eN? z@@47GFS+i)w3caDOk}f~`IsWT;o(&)H4bAUDyWsUte=5URsHd7s2?j1W5u*qX+jlL zmBmUtl8uJWl${ZW9-}GE5}@#6OgJel-|6h6a5PsTx)GJHXwpQrV+JNDRiuQ1I?aNF zcDfSN3L8+U?nJdW{P-`+gSgOgOn6B@gNX@Gq&7_nN1DvS6x62B02WQFRbyzv(+1_O zqsGXPf(B@!jw?l?P@&Qc0KdENg10HF=IT9=opW3V9EP7}>&7%X#{F*lA@9T;U;2REHG zs8HG_OQJ=+F=&C<6Z%8B5(hl(Av~eY1w`zaCUT($l9W7J6LxA3!^Q(|i49N$opiVx z5g3moDMs-8N>$VKECmGD5lI%j1Hzl8sS7;Q`)%v#SG@hIESKOiRzZl9WRfgDRyC1J zU@>cC21ubxDhIpiLe8)&yVFpZQ76mLrF?$r^_JxoJM{C z;92H$(7&f(VY!J=$8^dF0(4#z$MNy7?hm`(I% ztQnDTu_i?gy?}kf%hSIZu?_Cs_(v|<2`h}E6!7|xpm0j|OPHi;u}`dztsVIPZ$ME} z_VkQTSp^Qqttw0lb?0J!!0Q1ZjJ)nKQkiAM_)V08UCIRniyDf^n1MhLdDvLPtcO>g z>mCSFQjD@{`6wDsm1#or75j@(9|WW33j)!2g|a_tlp+22B}c(b~3?()9Vx_bv_UvL>8 z@aqU)Io&p>?$K-Ed&{_G`KdFyslTky*>_?3D(Cz?F<{lN&%&HR-A0oQfBcZ+rU*tK z5BX$&a370c<1QC$6n_};G4rGuI=9Pluk}wxjz4_4#iDel*{tl+Q#7~7%MP!U8y2=D z5QDt@qN(=xKE`c$dt>6s1s!nJ^d$ERBerZNJwTke~^3Gv07ja1N!B>JF7ByB0^(IaOU=Qf@wN z?AF4;)x8&USOoA|pT8XMlb;hH-TX&u;~y%=+Xm-P{2t-E@rLk%vCGH5?YiYQUfAvX zYNOkw%^fXU{!)178#j`$fX;f;tJ!vM)bV}&Upt2*t-+b6saI3%b|7}EcbtptSF=46 zcjIl^fBL&c>4KE~?>iFhUX8R5Uif7x%S^TM$#>6x8ay`hlHV?eG(>&!-gtJ0x_aC# zW*rXv@P}c^ayNWeLAK=5cYk$Wa_oZhOpf4XfNz1sjP;PTe=> z;e9{;TX`^gSdkl)FHKpMJR^jkL|&1?Sz=I6W{}-yQD;$MCA)-klj8-6yp@8aBwi+h zX*V(%9*ocfmKXsXHcVi}pNZr0Qr%MCT&DjFz(4XD`{TAnXp!{OrrA+?7>_s?t{K5DIQ= zlnH>I@mu7WLqM^HljoRAgw4++{sqUq6?}_n`(&Fe+%J%`gWY@O+ZNC1-M6P`&SRHD z&Ga#DhpsV$sjW-62TqvA{+OYo^;CRn%nf#s;acdX4heWV4pX0pRF(3fs$sLpKm^SM z3%3#&2ML!BlA5kMg*F+V(l#fC)?8=1vx%M!F@38PALVvY!-j^xC&=fu9w zi6`cMs&9l{ud!+{ooobTU(=-bklj-z?7mCeJzAW*e-uc-TtYT4nSzw;VN@li9!M$I zB-d!tFV(tUs>0De?b{c2Jp^akqI!uN{I@NLUr zwLw>49{KO(Cj(xfA&!-a(o_-7qd4B+77hK^xbrWmHyS(lrss;@zwLr;a3)*&AD zOSx8NR^71_j*V(Ad$_NT0I7UQxwE=1Vp!iNSX3{o(4C=m!x8y6%G2u1V#k&zS>Y(ufT?Dd7}S8!ECF)6ItiJd!!9 z2@P9Gja!|9YMofuT$`SIh75XMwV5C0$qKiPy=p6HvEzk%$F_L!TG+hSEMA9(7jsw` zrTLUF!)epiCio(AuoRg>E4sI+#Q0yCBXcRb>r?bKqr@qyWa>I;Qhr(W&R=`0cU$}| zbCL`8mKN;IE9l89a>RpBm^t(LPG4lsX(}lIW>c*z zYjD^`->cA}ne*+x3;+P9i!Fl;`$!n-){1(yqHgR6-~XO5P}=IrYVm}Q-41{Q00F+H z4nN|pvhhLR`zBjZ%~UU!`cVSy z6MBOztV(7Ew>@JJ27rjFrJg79b&N(?ppI%@DY-y%R&2Y*K-{E64}?->&Anf-=Nh9? zE+GaLRLZTn`6@UFn8Cj>yPAt_jr<4za4b;^Bu9ekkcY+SMd||*%B1bB2-neY6U7Bo z)5>f-q9BFqkRFowvj2mM>}G!#0LZ6};2+(^Ghsf!JA*sLq$}Gzg9wx$oB1IGUYiXo zQtH`6@Cu7yH`%aTBiNmGEVhQivS9_ih+x~yXWOz{q%5|Ycg2&}5y6hNXSZs2opu`{ zA#6NY9d_(iJ*!nMXp;(KHR-XXo=u*ZDi(p=n#u0;hMm2_GTC8lUQ`4-Y6-7H&yLg! zg9z-la8`#co2_AYyi8|H1znl!m`Glf{gNoV4RAN_(hK+OQ)*ToJ@9)??USL}m0ulu zI<%-Pv8>ERshnD%OjRn=%av)JQuw(~S^H$CaysnSr<~q-5=y5lm9CqW(=I7phmKA= zc65ePxw59#^mhxB=O>xH`hAxU@MOj4aj zMfzi<&B|Mm(ylkiC69T&Et2$bw%}G~?5)Fsn78S%NrlSCeM;9scI2y^PWx%c2ELka zm_rz+=5gDFU2C)A8`bIYM}!kQ^xIE9yFaA8s!s2&6UL!7 zr)lL0&0)PHNd%f-Ex#TORiS7hMPV0{c2HxNHWpKruaXnEsnr@guF5dE9GhGLCugWQ z!A!G>+b{bwC<;B3fh6h}y=3`y|Ap0Z>lg;2fvch@+Uba!rahGf*T+o3R52(TeYDC= zGhr?c$w8yXC=N-ZYp80wG&p$)HaRh7v)AF_$(OlJuh6(Fk;hoHoXkz!!AkriE#L*s-6vmDZEA~XtOm~T; z(;kw=CDA<yb$abQp0d9jA~>qT!v?#0uUby_1=)R&YTD z*n+?;Q)(_TpqYxm?ZoZn7@W7l14n%TPiO}*0XwD%T)2XYi~_0_JGCFe#vkX13CQAR z8r+TW^hXsLR`C4F)X~fw#rQcr71{6(2ydFUKJZL$cd4bFSrodU9W*I|X0{8us0I@-RRT<)CeDR|>(PY@33ed1g))QOv`aH!D2W+OGzEm8 zSI>6<^luss+JD+IrQD{_*mlGSJanFx7+^uwmU4BD5M+f^gAs7)Ovr;vH#9w@VZ(~3 zm`$_>tm&!XVoin)dI9@{m#6#>P}u|z(X;_ zhob>jk06eadMq{=gr+EnnD@yLTUe+d-XL`W;~6Mi

YA>oX6+Z@3@qGSbgc-29nm zJ!g0sL4zn_oPP>UOPs3(a7Qo(#Ju92ellQTnE*~3(Kiu5=+fnnh%-iw;+s2|nC5WL z(s~cUha){9cTu3LX})=@Ul?^FaGf#h{%F5k?SdQiCYcU*HqGdtgQw#+;o)v$vFP*} z^V##BtQi$jg4W3z=FNDjg1Y@XJh#=3t-P@jGxfgcWw+TnBh5N z=FFK38G3^COWuNGPrmti+U?wpS?4-^Htg`$dLMuBvHP9gMbzUlWFP(UeayNwJ+D3< z-jMWE_h#R++uJ)ntUq<+Rq8;@sp7*8M%HBCDH$*dp3yt%%992Agk1X-zkN5( zo7Z1>W%8dNF3W=c*kQ8p{B+TzzM4zh-W=%t?bZah_qT*Ci<{OwUejHfcQCB@ar^jJ zm2Wp*R^4!07G*OEyf8U2DddLe?DK|st%2_n-UfEbZtLvJN_F+K&EKS~Aq`A^{Mhuc z?&ie7AKfCqO+Wkg#r>DkCxf!CGh-Jn%I%!Gx9>{N3iWO?K>A?uZc@OMYjzw}==vp7 zXZ5_z^2@91r9>y!*ZjWzHjvxNuTSn4*ABEatxeu*HJ+gkw~;?xR`Z%vebIDtQyo|` zI=>_1KzMZ8smtD@zGBVY%a8unK4+|FP5o=<_iN%zfU(|U%vgfA{Y~#bPc$0a9dyEH z4dzAcuXh*t95>p3>4#~9E>jQ9jQQQ`m+}Q20pM~6(>Kdg`E|r|-=PJY9z>1S^!HC* z5nO+K9lzU{EUuy0`VzV6W;Uf;kpJ{8GnsVi+Z&0}wHhjrJUx;aS6=N^ zb*#KgGS}vt$=>*{=V~ADcH~k;`uEob&nthARmZJ8wY76&t8+T*nWw%*^|`&(hK=7j zjG?^tecJL(y7@Br`L3aE$4SF4MY3aFQ_D9{VyH`G#vyU4Huikc5a;09zh3kj_~{ID zQ=gXiH&6et0hX*i!66|bvyDJd(8l*r^$#1S9{=^X-%f4r%mn0_$U1(b;K1mcW#G?S Q1K)fL%jmviU1PyN0ien6{r~^~ literal 0 HcmV?d00001 diff --git a/sounds/hell_remove_leaf.3.ogg b/sounds/hell_remove_leaf.3.ogg new file mode 100644 index 0000000000000000000000000000000000000000..c5b79baa3c70d9ec6052889a036f9414b8db8ee7 GIT binary patch literal 4909 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 Ix!xB13($WHN&o-= literal 0 HcmV?d00001 diff --git a/sounds/hell_teleporter.1.ogg b/sounds/hell_teleporter.1.ogg new file mode 100644 index 0000000000000000000000000000000000000000..65e480306afc67ea9fb5bad79b5a8484f7a5b06d GIT binary patch literal 9698 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 literal 0 HcmV?d00001 diff --git a/sounds/hell_teleporter.2.ogg b/sounds/hell_teleporter.2.ogg new file mode 100644 index 0000000000000000000000000000000000000000..eaafec9e7d8572296bd5b7eff7fd3a32a75372a4 GIT binary patch literal 10599 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 literal 0 HcmV?d00001 diff --git a/sounds/hell_teleporter.3.ogg b/sounds/hell_teleporter.3.ogg new file mode 100644 index 0000000000000000000000000000000000000000..949dd934c602d4235b0f0dc135a74bf65b1516bf GIT binary patch literal 13627 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 literal 0 HcmV?d00001 diff --git a/textures/hell_bark.png b/textures/hell_bark.png new file mode 100644 index 0000000000000000000000000000000000000000..69e079af06a28ba23924d15613af747554cb5561 GIT binary patch literal 440 zcmV;p0Z0CcP)k`E!F^Ef?$mCNJ@g^zpsBClW8$6F3dRdwNR+ZTGTso%c z1l=&o^4Sh{-PN%R{byHTE@A93ESa5;aMlR<;ig30%O zhhKYLem>dfv|PG+P?1RMF59gN&up9b4-%dh4Zfu@Upg(m-fQ#ue$4sC2Aag16Sr?z z3|1@-+iQ$hZ7xSWJ~U&->j6hMqse1G8@tL57IQRm1~o&xGfmFyWkz0!Q5>RagvK1o z)E2~1y~)e1RZ>TswPW@}7foy3&T-g`NQ?6*vr{mpAG;D;p~G=E;Ki+&J5HW$PiR&T iW1Ga9Bgq@+U-=E_t(tDe&xhv#0000Px#8FWQhbVF}#ZDnqB07G(RVRU6=Aa`kWXdp*PO;A^X4i^9b0aZyvK~yLe1;I;h z(@+2a!0F42YuweWCZpsd3o4%Rl#ULBDLV!_0v$W%Y)KsQi4Bp+nh>eDLq|pA7l}V)bhNCQGNB?C zG@KJaO~GgOspttTL8K-${G?&W0R<%|ydsh)xZx1|CL|UtNnA6KnDdS^PQjKdCL9q5 zmLxK6iJTF+q@^U06Zi%~#fpLrTUtu)@sfct9RnRXJ)_s$WyF{jdrVny!idOo63Cbn z_Sw(} literal 0 HcmV?d00001 diff --git a/textures/hell_blood_cooked.png b/textures/hell_blood_cooked.png new file mode 100644 index 0000000000000000000000000000000000000000..ac72a3d635e8f72527a52d8f76736bcd7f87e442 GIT binary patch literal 541 zcmV+&0^nW)s%3tZT+L-R@v8K!hp^bR1GaX+T{a z9Z^cF_^!kvO;f{I+jhxQRG{5%gSs}&l@Nbsvnmd7&I?`N2=SA<(P+RiO%p{diK@<$ z^O2@OgT~0qbo$)yYnq0-zVD-NDB%SCe!X6=a=|98RuBZ_m9bCH!$YlBLweh`f93hV z=`@KVkWd6q!@WH?ApG9nC-0o2LR$iFSjF}6F*IF5z$l~)$a=k^C=ek}L2!|#U@wJG ztE^`Ie^ef9%O;aa+-jkv(P(svR5EdLa-yh?T>lm43rb;ozFEs)FmfV3*TxC2t@BM+kAABxptzsaAZNBv?!-xR;*{hu{*(ja7gRrTS4y f0Oy>sJ4(L*$aH@h*dS}j00000NkvXXu0mjf8=m!H literal 0 HcmV?d00001 diff --git a/textures/hell_blood_empty.png b/textures/hell_blood_empty.png new file mode 100644 index 0000000000000000000000000000000000000000..d1d8dda0cad59dacfedbd5f4164f945bd0aafa70 GIT binary patch literal 474 zcmV<00VV#4P)zZoucgJVrHy=bc4b~^SyPI4aENwpsFaMss-fP*y7Se^wx5==o06A< zdwgqTdud^TaA}KrbElGtu$hqR&BEBdvYUs0xuKVEVO)iDZK95b=*z&?yReplc+0V; zgmP+{g?y@(j^@d})48v`rJJ6Lf}xCq+P}24os@ZIUy^-vyQ7)EsGojqX3w>&Yg<+D z)5z}8#%5Pi&9kY|x2=t~KtdEdH;R)(DzlS9IA0vDuPB1A^ycRR;qqO$B{#^b zOwigQH00jK9Trk*uh)vgIUGiwNB7B}lgvIA2uUk=VCY)UYi}0-vRO5n%j#(6&yQsT zLIRq*#mv&Df8*u|@Ux8EjOFy4Zj4g{ufaL#Hn8n)l6bv97@7fVi| Q$N&HU07*qoM6N<$f^xI$mH+?% literal 0 HcmV?d00001 diff --git a/textures/hell_blood_extracted.png b/textures/hell_blood_extracted.png new file mode 100644 index 0000000000000000000000000000000000000000..9f2ca0ff0eaf6ded0360e4e56bb8dd53d515c9fb GIT binary patch literal 303 zcmV+~0nq-5P)(xOF@B%@VIMn;PyX_1ViMT?|X=^1*bI+HV8H^oqg&vpNE z=Fa`i$WL_@d3^Hj@NU+(+97ZTkqIu)U%&wzt#5;Cnjz{K1SY&eKlrvun`Rv9gHZJ? z&;(sOAP)6_-ee0ltSfrSpcy?$6!A?Fudrf&1SbY3tXpPYz11FvJ22v^jW2g?X)lk) z1tmVX00mGt1Ip^m)n0s90W}WEfE)vMfKXZOduVjX@hi49|qx~YAHtLiEsye`x z`J#9EGy;BO&)nbV^(2jk{Nv_eL?o5?&6h;}r6&;?mEzZ*+|2+0002ovPDHLkV1m9` BfKUJc literal 0 HcmV?d00001 diff --git a/textures/hell_blood_extractor.png b/textures/hell_blood_extractor.png new file mode 100644 index 0000000000000000000000000000000000000000..49897f6a849095e8406fea656a7c818191ab0f0d GIT binary patch literal 726 zcmV;{0xA88P)m0s>O~5qnSlJh_+Y@CMom*eJq;NO#@kk(8r=Jl(djVp}Rsi z?XLfz^p~{9nLa-596rwd?z!KYdvH1AA1(&`3|1$FNh|+MmOpdcQMY>%2)r#8Uv@fe zj;XqAC+a3CUvLcMsUW3V5&IFx+{~uxm5RKw5*9_P)moF~`1JIInbm+dtw!AC?9C^T z#|ULTUIo^dmxt}P+wD#y5(}x+ek?|L8^GuS2YoA(!XPvEAv^0fn{J7|Q%R~+D)iY&N(c2vj(t@Ai5<-0ODxs%oe!HrtMp8$>aT;hcvz_)aMFNHvcQ@zAWMlMr(82@~)n(y0FUr z=b9i;xwd}hzM|lJJh&ARL%<=&$YOx@R8{@T^Gi!h(P%WE&le^J=MBNs7>^)lrn$JAPPQVV6<}G`2 z%!c2);Iv^2Ad3>vVlfSn??52%4JegLySuwHGc#nRs0$4I2I*Il?(jZ)+5i9m07*qo IM6N<$g6p45VgLXD literal 0 HcmV?d00001 diff --git a/textures/hell_blood_side.png b/textures/hell_blood_side.png new file mode 100644 index 0000000000000000000000000000000000000000..086b645ffe1ec347cb84623c6e701c82e1a75ee0 GIT binary patch literal 478 zcmV<40U`d0P)|NLcTQC7GcDINW(Tn&i=vA;eDPRm>IOrajg)LZy zamYhLJ|zjmTC)T*@G*4|T-75mrHvj8fvDuPW)zCh3o@p~F0@mWhP);t@+F@|J5F(p4F2@ZI=AqQDV z>LAx{0}pyM{!Ka{1+9?QLH*!pE)5x7()87%qK$1n--AB8QGNXu#@~|-`Y#Au^f@60 zYP=p?|6d4j3HdDgnrvLx| literal 0 HcmV?d00001 diff --git a/textures/hell_blood_side_cooked.png b/textures/hell_blood_side_cooked.png new file mode 100644 index 0000000000000000000000000000000000000000..60f86ba262caee24d210c8abc2d9792b7b7f939e GIT binary patch literal 493 zcmVlbcxi0Jy~%{<(o#IN zwqmQh8+TSK?uv_XOa3)^BIozxoFX?xMYv?+nBP;9w-X8E$H%eB{!x8BPI`Nhk3?`l zkxPpO7p&b_3?j_NdLV%Px;pH2bl}Wp!_Md^B7E4^(t_B?2y&?uHj+skl6yt*HLn-5 z{ryO=Cqe@Qn9?-N4h><@<3Z5nLV$#-%1Sg)bUGTvTs#gz0&Q7@7+u>+xf`~Kcawelh7H4ME#HgmJ z>1AA=wYF9lpj&mX;G$hlrxH>QWKl>b`ntO0ne`dcQH|LQgTWw$lz<|$S-(B$G0hvMqjs+`(!#tDG>BPUK?MZdR6-J_h`T)a0c4 j3*s-3cE8>K@gv>=MPKG}#5l>900000NkvXXu0mjfLcZxZ literal 0 HcmV?d00001 diff --git a/textures/hell_blood_side_empty.png b/textures/hell_blood_side_empty.png new file mode 100644 index 0000000000000000000000000000000000000000..9df720b51524f0e4ba77040875a1f6f6bdebd17d GIT binary patch literal 401 zcmV;C0dD?@P)-sRSx#wOQEgsQZedn&V_0%yS9E4scW7LBYhHY8UVLp~eQsibabt#d zXoz@gjC*X3eQuF}agu>@n1*(pi+iV&gshl}vYm~yo{qGllC`0cxTBM~qmsO)l)R^x zzp0qQteV8Fn#8W1$FH5rv!Tqjq|LRX(7LJ9x~J2b=FYn5 z(7o!?zU|b&@Yllg*~IqU$oSsL`rypCMMrZ00004WQchC zITpe&3IO~3^p5)I`nwp$? zorlI|`zYH>hpv3v`+zF7!nl2Ay}F@;DTIUS?NPx#8FWQhbVF}#ZDnqB07G(RVRU6=Aa`kWXdp*PO;A^X4i^9b0aHmtK~yLe1;N{H z(qI4p;E%sQltaT|4Cdn0WHIi-xA4*z_Qt31*2IYMz!I6IFxo;3eqZM!OS&N8h6gGl zpZLIc3akrm6Ma%JXlAMYzVZeqS zJu3D*lGA6$UoI3}b0QMDZ0Qim=&)kRGZ{FLf&qchkdx45#5;b0lo>l(YF12nCZz1? zQ&Z6Ln=J*eNT}%1up}j3sEBMBf<85C4oq2-vLvA)9B8O1d1Ow*KgO(yoOq(7U`r?& zQPSZ+%Y{h64{)R*upuG2XUd2UISVG-@`Z#6Ek_po0U@y9K$kfeZdvh`pG1(cXUBz5 oGhj$XpdsN7Jb{v&gn}Ob0Z2-D#;5Kc5C8xG07*qoM6N<$f=J)EhX4Qo literal 0 HcmV?d00001 diff --git a/textures/hell_blood_stem_cooked.png b/textures/hell_blood_stem_cooked.png new file mode 100644 index 0000000000000000000000000000000000000000..e1c200b95bbbb6bb01f7496bcb63d891c8f313d6 GIT binary patch literal 607 zcmV-l0-*hgP) zDJv^0EiElCFE24MF*7qWHa0dmI5;{wIy^i)K0ZD`KtMu5LPSJFMn*B_)48K7=hTg+4xpH8qMz zNQ*5kj6Ob(9UYJW0FgdEk^lgc005L79h5#kmH+^k005f+0Gt2-o&o}&005-`0I2`~ zssI402neeH0JZ=CyB!_9006%P1k?Zk)c^q4007?r0ObGxr$VZ-0002)Nklbu*Gc@S=CRi0uQHc|tA@eS;^zG9xjC)q!$=3?9L%mz_ZtkA zn->DDy82?f%PqI{?7aX<7D>~bQ*8nWfvHidEkVAy8J3&q3Mx&d+uvg4Uk);ZL`8Dq tyZ!o)=^SFZ%s2_a*nifs5vH9w_y?gfg|JsKy)6I$002ovPDHLkV1n)~%cuYV literal 0 HcmV?d00001 diff --git a/textures/hell_blood_stem_empty.png b/textures/hell_blood_stem_empty.png new file mode 100644 index 0000000000000000000000000000000000000000..008d49d3f7d76cd57fe75fac41ebdce4c7e1b9dc GIT binary patch literal 532 zcmV+v0_**WP)21k%V@@ted{7nbf|jeQ{)?k%F|LkzZC! zoQ!{-j)36FwB5(FnTdOwihXTkSnk%q!>^vwy{f92iey_-xTd?Omg&;Hab{aYJ~yY9hvCY#KsqzMsh5g< zZ)ROoXkS*uv7h0fo|ymu0P#sgK~#9!1;L9#f-n>S(93uY*4T1$h>A9JB}NpJutcpa zwf_HyItRc($o2dn#8FJV8wv?^2;;ZmK**s=M;VOSWU7LEHowzFN)iVaOKf<2zkFDk zTq}$rDc3woAFHRJ4u@aT)MZ82bB-`?YJmshJ{ zsn8a(G2?z{cI}|&UDgYr`_#yS9F8BUDTV%o?N{8NWZ&{{!%}y%2Jxe8e7^X>L0d$< z1;E~t%aNUVp;6Px#8FWQhbVF}#ZDnqB07G(RVRU6=Aa`kWXdp*PO;A^X4i^9b0Z&OpK~yLe1;NX5 z(og^Z(39kn7o{`_)B(EcI9+$4|G)GHoN?h}obk~jQi>oALcnvPH}pxlAfcq=NMJ`t z!=A5TONi+>P*U+sL%}Z&97q_mrsYWTnufrPn3ORs1t}-S49FQVC)CUcyfC1qW&&2k zbo5F1!j!nr23$~)Q8T4rKutx)h>n7gk+7#?Lc)xSloTw9NXh6EQc5P2l-yC$a%M`- zEn8MpM8rEz94Say5Yw_`&47fOPu$ZZ8IgjBnv^wI@P`(3{Nyu_gutFPL%xx5LjY$M zL_D)*#S_ULXK>(5LB)cEIXgCN=@{~z4& z{39l3%#JxZNyCY2a#H?sX30mk42anh@qr~_!~-XCM%?m9;EMOWP;y1X6PJWQPD{aW k7GxkMBBIBJcigb&Kg0`Sm;4FyivR!s07*qoM6N<$g6w9w1poj5 literal 0 HcmV?d00001 diff --git a/textures/hell_blood_stem_top_cooked.png b/textures/hell_blood_stem_top_cooked.png new file mode 100644 index 0000000000000000000000000000000000000000..4ed2403949f72593a6f4d9faafa7c0004f5940bd GIT binary patch literal 764 zcmV&qAY-^dFu7 zJ4fsLKBW`@U>SGOavX$ES(dk)vpiocm)nB@uj@bO=M744lLYNx0Xwz zC?Fv@=Rp*ityU{drvN-g$QNQoNbEQ_)}2kXsH&jTF@)#_L9O%%-S2cv03K9TFN&_p z^0d)Vu7IuwS>`wnyq?cxp1+lHP!v09`r0tC@1wi4G zeL}7{zlKm&l{)7T9wh z+rswZ$nf36=G45|$gthaw9~__rI?4Jl!M8-rPRf)_vFdx*T3S>x8KjV<3h{o-)4W8JBli_2AJ#6bnz%dd3g*U)9{p zotNQBd!ZcC@!?0kGzn@0of~<-LadISR_i0NZ#{_UXRyRMzb=K14XZzzR_0r;r`W2N i2~&%p+}jx*UxokGn_sJbJPy(T0000Px#8FWQhbVF}#ZDnqB07G(RVRU6=Aa`kWXdp*PO;A^X4i^9b0c1%;K~yLe1;JZy z(qI4p&{JCYU{D6TV$@B2@RAsf+0*oY8z1yV6Qe)C#6({-(V8LLCugSd?s+j zODYcN^OSRDB(I2kWXT^Q6)htoYq|^>FyoX?!Ge7P9Y*Z1;gHCP2_puie5DgfDH(H< z$e4Sav7us*>#SLGK^C~AVa1$;K&0iE$PzR(%*kfdL`uf=$O&Xb0tE@T*&!jz`AxzN zTCgGKI|nQ|W}7Z04@j?Z#gxE`9zS_YV3!FAfr^43{0F#cdp`+$^M?Qc002ovPDHLk FV1k`_x`hA$ literal 0 HcmV?d00001 diff --git a/textures/hell_blood_top_cooked.png b/textures/hell_blood_top_cooked.png new file mode 100644 index 0000000000000000000000000000000000000000..7385db1546b9ed0eff5dbabaa6680e293bf73c1f GIT binary patch literal 709 zcmV;$0y_PPP)1;* zurvge3`0vpN~IygkV}K5#S%JFQc@I$rKP2^VPP-^_O&=B8;E7TZ0tpGOg0?s#UTv# zJlNy*wAcLyJDRb}M^Gq4J?ak8vcP+ z4C9Gmye4|jakWe)NWhg{EaJQEIAz12pSs?+EXW|cp{j3r{xi{;Z5Ko_8H*uiXJ+6G z!hORyab241>?9)*K&eDxTb93a-09+?7z#%9?_f9$+kT+yKV+F80Bv+)=W-W}eI$Al ziQJi*`p-r&mz^vbou}?dUCILz2GB@^ek=Iu2R_g0Wx&!IbU_!n!EZpXupe zn&znLd^DPfMB0oE>UDc{6+HBcJzyK#w}`X6{5uw-Z$x7ZK@iXeWMB;jS`2tWF>pH= z4kw;>4b$uSc`us{$_*X@3cyal?zrw_-ygTz8Bqj&&}?4K&eAi_%cj#oxn@3}Pp4f~ z-N@%N>2z;>{jgMe#aL6AX}r@Vu9*`a+ibaI4i| zh)49u_bGU7ER`B*+GRL=NpzaYocR8Pu@6MYq0pXfqleL85Nz;9yS}pWC7DF`?}(6K r&dmYbQB~~ZifB}=VgPuB0I|-$;^ej8z`o9&00000NkvXXu0mjfsqafO literal 0 HcmV?d00001 diff --git a/textures/hell_blood_top_empty.png b/textures/hell_blood_top_empty.png new file mode 100644 index 0000000000000000000000000000000000000000..815d998a50175f4a6ee7431df57d55f757db6757 GIT binary patch literal 471 zcmV;|0Vw{7P)0(k%XRS zwN`7b{r`vc9sr>ci<6W;J!iRikx-PCQlxIUruiXj85k*%bfP@6s?YQ20NA0dZ6Sza zyhzyqW^_}pd13Xy6zwUzo;*%`esfMmN(uvK2yB)N@5CH}j z=~eCK<1^cWmT>v13Cq9R{n~DkmOpTtmoCvXv)Rs+tyfr9A!=%?^tVORI}f+gxP+qJ zG*zf4g!?%lnM@#q&DC*@;qMa4ar80ak52e-2QoINadB5Ayz%_u{s9%f7uPLEN{0Xd N002ovPDHLkV1jy{>C6BC literal 0 HcmV?d00001 diff --git a/textures/hell_dirt.png b/textures/hell_dirt.png new file mode 100644 index 0000000000000000000000000000000000000000..8eea86e0c96cd0fa03bb001c3d1b2ed1c36b9c46 GIT binary patch literal 673 zcmV;S0$%-zP)2QU007Xt`fm1}aV82G5)|61LLedDpz2#cp`Xy7?o%lfh$e)L?eTgS--UDFKYxGh z#|itSYaLd5^RjGz`2P>5QnR=F7e?jg*wQSIcD%W+ce)}KAgRWoL*3B#qc1tTkn|uS zXP9kZ#Yxg?SfZTsdbY=DApyE;ts>1+9~fK?j~xY&LkbakdL9&KizQ0s?L|GD(|I%` zWVmCp%cf?+Jop$^#34!)K{|OnC0`&UiIj{2H4s9`X@P3cWm*^Cc>mn}D6TM?A(+YawhS>f&L2+$<`Dn& zZoiUHtV%+F0@4~MoSW9@LZT(Yocm>3M)L3BJ3?7IMrzHsLYkAsH4QV0fJlaHoSJsp zYGxy{Q*LnsAvAL&Zy5gL(`)9yx6#Rnk%PlHtsz2`VFBC5MC(64HLF=)-c+N{W?1ou z*ZUCoiY(QH12V&mD2^F!it?Ac-Q#es#kRiWessH1Rto(DX}DrdISwN700000NkvXX Hu0mjf<)=Db literal 0 HcmV?d00001 diff --git a/textures/hell_dirt_normal.png b/textures/hell_dirt_normal.png new file mode 100644 index 0000000000000000000000000000000000000000..5e117c1b62ec80c3647a5a33bd1b5e2b7804b709 GIT binary patch literal 449 zcmV;y0Y3hTP)p(ySjD={+X$b>T>5GdMK4Bko}y6H z&@NG|OAP&oNO|kmt-gFx4VenHc&eOQnyFV`U3S+JP5q?Lm#ev(lIp2Vkz&ZIee~}X zaa)H-b$eUOO{U*fHt(1T8dzm+ngIu;p`%hhBxM@XA(e*;1b{-GqQktyJu1%Uz^d&bNS@cC6wrZZ{rVXu& zmpy0}*HkatkX@eY7JBt>m|>q9+fs*FWtw3&^~?5^tGl{dmimu+QpA#}Kl&x`7|ULb z;a=sKa;mG+)J`>uI+S6%<+8fg^lF9pWrl0h%dR0j^pNQ)gx5u?FM0SGw(i?)?rIhf rGvp$b$&$@c)W?|a%jed*3#b19l-Kelzv?!o00000NkvXXu0mjfWI5eo literal 0 HcmV?d00001 diff --git a/textures/hell_dirt_top.png b/textures/hell_dirt_top.png new file mode 100644 index 0000000000000000000000000000000000000000..1bb0fbafe4dcacf150b4121454de159897ec35b9 GIT binary patch literal 699 zcmV;s0!00ZP)_R_MT_C2p@`tCRo2Y}veHW70z zq~L6yhljiZdGYJZ76TIcOiGi!PPD5Xh?vCr_2J^hnp!kC5Ad_M4=hOcSw$qUEo#RU zGOH`bI%{|uTz}7pc1SkC^}m8fwA=NBaz0I?8&NbMM08*DUDZ3x-5<*C=4d+>qx^WB z?xnGWh9ZQL^T74P@Fb{}#G~{A9M*a*M=@K_qoV^S)^n7)17`oZ(CzsI?KDB#YQ?OJRU2>mxNhI^(7h*|!>d zR=98`0^?<KVf2!m>VwQz58}nikiU?tZo@Qz-Q=dRw zi@^?<1<5{ZdCc!AQkm&^c{pgfxW-q%Z}IxsYPF650zgO<*?hvqzK=ZC*Q&W2YBe)s h+MN(ZH!4#U-G7AUYqhwqLdXCB002ovPDHLkV1iReJg5Kw literal 0 HcmV?d00001 diff --git a/textures/hell_dirt_top_normal.png b/textures/hell_dirt_top_normal.png new file mode 100644 index 0000000000000000000000000000000000000000..885f03d544b51c3e4b322e08677565ec5a610d90 GIT binary patch literal 481 zcmV<70UrK|P)BW}Bd-C^BNHQCe9D!B{P>S$fvBJ-T-ibzm;b~PNn1s(jCtA`$)yau|a&_((wKAJd<~zPBDg1D^}jbz;AR$8z$Tx zy?MZ~Fy6F-@kO4@6?V)TVpJ!U<0gPW1#{|)ccZSXom+SZlBh0tr5k;RiDKkRnaM;> zmYZ1EolHu=FEj;*y|NUxffr0TmDeC=HjslXsIV-o6%_>~jPKuMvKZm`pv}~kvqB>l zsxbxr!SWyr4Xn~1_?vFb6Pk>Z$%(;f92a&_8de5&QXZ6@k6@i2Gu_z_%+UlVHP7Vh zMjg8i3yRTiv@w4XC;J=wWLZTkE@;p!r_J literal 0 HcmV?d00001 diff --git a/textures/hell_dirt_top_side.png b/textures/hell_dirt_top_side.png new file mode 100644 index 0000000000000000000000000000000000000000..577367af93032ab587a9963f29f43da001a85d0d GIT binary patch literal 807 zcmV+?1K9kDP)w@z_or;-*Px38Dyj0UN}IUjQo*8&>=!mI$eT03p#z6;M@GRS6*_ zZIzOg(j?BqbrQ$P*dF`Nc;?Q7jgeR!>FDUZwC}$EqG&W75@itNpyvr^f1Ts3RB+1% z(Mf=mkXOO=OzMpV&i49vOAh`pM5J0ld83BkA4C6&!|fhA2DPe%QaP=5lg!OkjFi45-#D4i0-H z<(%+RVwko~lFV@HCL$6DBO|;Dk>e1@a=G?L$g?43r-WtN42KCTtp-ZVF@-=hH$2>G zjoPwDkSg?;%&>Nv4WH=Nh5G&H56$<=~VBf?W9RE#5N3~k2UoyGcjJTQmbGA1hSLd|rjx}n@>-tmJUsZ3oXhn)t3=o`E7qUPxA-BmJW>NFih>W>Zi??ry07=pgUHtpB~-Kv*MmnHpcI_SH7N3A`x6q zikA-$|EAz4;2y9ofR|~UJ&C%(SSjco59s`PvYp1+BcQXmRvoOg>tsby96mpL1N;o! z2VMb30+<3vz1LSyvRRs+zv#;-NPY$OfM{{8R`FJ=g_7yhsUO`1egXCY2`CK^Koj^1 z_!c+@egL+B6xam51iHX8;4KgVIe<1t8MqC60$cz)fDaUaGarz^7)a(i{}nKQVF48& l2EzGzG56?mp8r1#@Gt#$cDr<0#f1O>002ovPDHLkV1i0Wdj|jj literal 0 HcmV?d00001 diff --git a/textures/hell_dirt_top_side_normal.png b/textures/hell_dirt_top_side_normal.png new file mode 100644 index 0000000000000000000000000000000000000000..9aa7c9ab275c7135a155db7d69e01e7f10394e51 GIT binary patch literal 669 zcmV;O0%HA%P)7JgUbtWMfVQ$1r5<%ulgsftOfVh!Bz>uZ75u>1xghV97Nto{G z&-3xVE_znhuArWJ{tr~e7hmNPE#nguCKLJ%>w%MsYRjRaMGod;Ea@7mj?~rE6J{go zMBlUQNN7joDNRdEj?1?L`-V}Wt4L{}Oz8F;I@%lRn#qi5W_L=Sb6VJB(!i*qkKY07nwztrmUtM3e}`oeh9k}iz$l(hcU*?rYuIqXqvT&svB%pH%@xl zot#YP?79#QXLs|9O&7WQC+^Ru^d0>PX;OyfI=wwa^ws`-`X(u#pVe`%WVRh+e6q-I zw)=Q+b#Si<_XBm|yvg~{$8W1`JXKdKiKho%?)JmKlN`VMxBB=6e`9xf85yeM4_eCcqpMiq-7Ve$#dUh) zIz75|T%x_ajN-P^ZPVg4p5P~3Bj37g@D?BbFNXgB+HpO~wog~T00000NkvXXu0mjf Dw3bn7 literal 0 HcmV?d00001 diff --git a/textures/hell_dirt_transition.png b/textures/hell_dirt_transition.png new file mode 100644 index 0000000000000000000000000000000000000000..9937ff36c7df1fb888cdfb03221db47a8468ce5b GIT binary patch literal 670 zcmV;P0%84$P)+b(*G9-&w6x^?8nkrHd*OpFA2k$xZg^N-(B zH;h1BgsQF}cmwZ$D&Y3!;Q4TYqT=vr_W)WYxE^o7QVvHm!28DW`G?Zz&=<7h4q zr>0?m-UMPD!kGOy_ZuZR%!Xp65?*g=)wgkJ2OVfg=)C3msY$x2xxCY_?%fjnf(1I` z$Xbk;7#(TH=%x(gnA1GZIjceS1*MeH%P>Fx{_BUYoC(s7j$%IDONMJ$(07N7CyEyW zMZg5>)uwPmi`Fk+zW0M&_Jw2_{jjZ1|2ExUI@pU)a=l{mX(D!I5-i5MamC0IVpirH z?Sl!^WX%^BmY->gouHJE&mZ@@)2(Zt@)b_nvzRSBDhuX@+R1Yw0`d z{a_sdAolK|j6N763lRv3Hr$Z&nN1P-wBOV*nFtmPrG5P;FIy1IMDb^;C%BqZRdEI1+ufQU#K5~Mi9&P@MRvEUlK^^?z^%w<4PAb|yl z1}_S%0!Kg{E*$_&p~}CX_22!f9i0Yy1YZKa%=B4!mKAeBEs@-jIGDtkV*@t0W@>DK zn<1Pgcqc2@Tjg>j9*S}|0*@JzBwh`HQ3<^glCj%1Mj!MzlzZS{!b23^B;|Tt87AB# z9D^}y;b_8n6wDIaxaZ283$LVDDqq9Q?bgv?M0ef_Tm|803pDRss6%&_7^oMKy+{6( z!FyA3+&YJF!I$#P?K)K6sFo(j(Fn^JMJDh97<9G&MwwDqH5| z#7_(#fzlUlQX+>6v3KswdEO0NXP$cHK;vpU22IwIy5!T9lQ%VNB8W|Or$m8KllqoI3El6 SFC4!B0000iS6Hbtkh*6S`Qjsk+lxQ^(o@d9iGM3?88^fn* z44I1-oCli1SQ6wH%;50sMjDXg?&;zf!Xe9gu$}Rc0S|*gYp6^?8~2}jEg^=0>@?OR zGn2nx3=GUp%dxOKfBY@OTj}rK%x}Nf#Y(?9u~Uny_KWQ&o{m#HyX+_bWBRppwI|32 N44$rjF6*2UngB=-L5ctX literal 0 HcmV?d00001 diff --git a/textures/hell_forest_planks.png b/textures/hell_forest_planks.png new file mode 100644 index 0000000000000000000000000000000000000000..20010029d97f68e1cbfe8691f8f2c97af5f1b6e0 GIT binary patch literal 488 zcmVP)~=dUINSb7OvV zUxayNihE^HfNP6{Vv&bwmxgMWiEf&SW|@m{n~QFijcJ#ScbkoK zm5+j-k8Ycfe4CGemym**kba+#aGsKBr;l)+l7OX^ccYhko|uH8nS8C5ccPetq?&%H znSQ66ai^MyrksVQoQs-lyxqKdGijIgALu%nW+ri8Jk zl(46fx22P^r;xX(gR-iRwyTW2t$DVro4l@ryswbMv!BAbrpLRh$i17)yr#;%snNu= z(8agf$*}F*$V!RmdH?_b0d!JMQvg8b*k%9#0EJ0JK~#7FW55c0?NIrKW^$s)d?6)y z1sP)m-$<65Q&d&V0WP4UC(OdG?5+|D7csTb7c@3-Q1^g~NNOo+`bAiVM#4qRZJAu6 z!oxhB;UeB9JZ`~(76Gnskq~<}4#yxL0YQq26~$PTvF7U4qm elD`*Lp928rMiAW$M;{mf0000yk%fK8RCCc4t3q@zjGG;N&N&wkGzkKYe|{l(o*xMUD`(C;(DaJVy_oM2)Q!*Q58 zn+TsfaaJ*EK#VcA@Hh89esAY?)2ei(YJlE<_x7{BK~ccB-`X%KUJh+PXo)1H%;XJn z<&_YB`r%H)WR~4X)7UZH;b^%1X24lKy$}W=4!0|*d~W$mQIk^*6 zcF3|4N{Kf&Zi(cAb4QlNe@L_~2T?kj&wvK#B0l}&Y5&oar-Y$g3-0mf`@P;_FHhAt zj(`4r;CR$>8wP^9ut06XFF*Tak!67wOlR>*ClDfEh!j8+xZGkalTu{DFfEzJJP7Kd zgumYZZhC&%?g@WTC@_iu3f)AO)>z{XtFq;&H+JbCJR}GO%Lz9vy&^QRx<#ZEa@VZi4a>iZmvel z2okSh(H@chM5JLF!YQK_u$+n8Aoe|f-|R%Q9){Rg=$ zb0Og8cRyf^Nm+QV6{p&F=qyPHCXQ`Zpo$lTMIdD~%_K!gBTYWKvt4VjcQ{^ayGxz$ z<>^taTaM+gwxVadyHVRNt1^l_Ku<4^F-8Wyv;CToqUm`RGJAg?Hp4Cil>07ob=2D2 zx^ZQmF1leb=nY@r>aMJ{h~4TIl`iTrrQnTQH;+c+qNvoE)=~}6#^y^C!};+9G+P}= zU#(Sw!lmeHxAX9E|KQ-f(1mT-5E+ktdmd@4x-( z_~bP390TilnloxtRpGkcWgHWoNQo=00Yo*Tb*URR2 literal 0 HcmV?d00001 diff --git a/textures/hell_forest_wood_normal.png b/textures/hell_forest_wood_normal.png new file mode 100644 index 0000000000000000000000000000000000000000..521289445b9f19767eebb2492bc083c8279f0b9a GIT binary patch literal 550 zcmV+>0@?kEP)3d3?Lm@f|0)s(D7Z;>Tx*srsD#9WY^&9+?vHcy_g~ExJN7cqGty7yK9n8y zpo_GX=5ZYrFjQ~}Be1P)D7GvXb{emBdfD9LgjELU5|+pd#R$=>UYKY3h4aE|PkFm9 zFXoZ=LX51D^@U*Qpd*|kbz^Bj-_-{C2l;okC(3wFf22I9fx)AW0%7>AS{D&|$cSB+%!W-HkFMHpVg=;It zuz)+zoe6=P=ekp$tZS@0Vn&YlSwPFuzEovAZyuOgm>ty6GMJk(#A7B>H}*^`8g7N2q*^TymP zdP@(*5BZr;M=o6}SzjIP4^ByEv!9b5gZ+}_v#KYrDqBlKTR#*wk)MOo4}I>i&XQwp o@;A;=*Hq)$07*qoM6N<$g3i4GqyPW_ literal 0 HcmV?d00001 diff --git a/textures/hell_fruit.png b/textures/hell_fruit.png new file mode 100644 index 0000000000000000000000000000000000000000..8fb46af684f6af362ffc5efc39c8d6d235267b65 GIT binary patch literal 244 zcmVLBkjE}; zEWV%q@aVt2Hn4FbwkxsI$Z3wv#-q7iYvk*-9Bi;hY%&00001KRAHKGL{7S1v5B2y8$$p!OYXeF{FYqS%I;@qoe5XjYn^CoRV|` z`WQ9~tmlxQqI}}KhSDkKryGhs7JdA5*u;>tyJ%8^JVRS1;|3}JI1``=44$rjF6*2U FngAUqJaGU3 literal 0 HcmV?d00001 diff --git a/textures/hell_fruit_leaf.png b/textures/hell_fruit_leaf.png new file mode 100644 index 0000000000000000000000000000000000000000..784c2f79d3079e0ac387d86d84ee198ee71c7357 GIT binary patch literal 359 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!63?wyl`GbMf#8Pu{E4AU8m(i!wK7z{EP)Up}Wau_sn7}RnZ^nvU=27MqqpFt;|L9LKM zyMRF-$S7jaEnrY9VNfe$P^)6lsAABoWY7hYRSde-40_cJx-|@XH4JL?3`SiHhTRMX zy$t&O40;n8bfz*G&Sfx|$6zp@L4N@QW6cV2pz|0@g8YIR9G=}s19F-?T^vIsBwG)@ z^INv9(p#&ee&6|jwbRS(QGfB5`K<{LCEtCkh~N<0GCQB|y3+nTU4Lrs z_Yxnf&ss!pa8Crc7B8$sJlV vl!ER{FF0{RhC9EjplE@<`pK8=!7o{FUgG^JuW51;=o$u3S3j3^P67;DfvEXz2S*)001;Zj8GB71Hj@?L>o~}5j`r(u9FL#mO z-hM9WLPIToQP$jvlhveoarudp_C?YgKfczP#97s|Fi4C12S>|M9GRp^*-9yy?_77q zD+e=@ajUFF%~ku9)7I*dophF*)s6B&`;Ta~M=`j)lP==GEGEOG%5{Y3q*#d)7iGgm z^{9O?-H4<7AK$$FSZ?m+2t^Z8cM>~ntwN3q%gjdCyM!3mk&#tIY_A^QOPH< zGVRsh*oa;}DQlAcd+pz1YxB8ISMr~xTN>7)D0|+R32NO_HCM`xLEl8K8_k1taXred zoHZBIV4>Nm8uQ1c-AI!>Shh>9m}>o1^%t{YZy8nSlv?!4S^8{zudZ~Jq?SgumK*hj zTg|_@glZILX%_G4xwU>#y-LfIc!n62Bd;RMXLV=X^R@OWzT=B&@%A9i8<9n?ekW?V zsBTLfRgW<2=0qN(hDEHTxe+aEtKV8#%;vSoh669^A|~m^=BxUKS(2rJP@2(3w@6!E zuiP`KuC&a`oia(!lAUg(R}MUzPlk&rG0O*KN2{Bf;a*It!T%K$?8}C~sYn0-002ov JPDHLkV1kBJ0N4Nk literal 0 HcmV?d00001 diff --git a/textures/hell_fruit_no_leaf.png b/textures/hell_fruit_no_leaf.png new file mode 100644 index 0000000000000000000000000000000000000000..19d6c998c639227d9dd04d71e9f5ccf58e414963 GIT binary patch literal 529 zcmV+s0`C2ZP);KJYFPQ;(#&v5PDt^NW*)QyVZM{O&m z=EF>ynR|1OizHP{-1V-`g>#E&pXY9@+yojx0kpQZb)|BeHWbhR^m+q*@u;i^4+Gu5Q`P6!ntB7&APQ)` z-qa-rgMJSKTmc?jZLzrr>xU(h9@q~@+}o&gky%}@cXT2wi=erlYIoS@@y;2}6=VF! zVn-krtU?w=yjS6wE7&hr7#?Q=5H0}aB&O|Pr;}4YuzcQykq1Aw8QCcn6OaI5cvAKU zAOa?Z(uE22jfl6qmcdvkP!uphzz-k;yy`Ll0b&RnAd!-VFaRci0~F;@VGMZn%K%ko z(-!a|A%lP1pKYL>K z#HtDekzF1+(VRa?7BRULEH*|1s+~|G4q_EqoXhMQKLo*xW_5(U!bATo=c)I$z JtaD0e0ssyZJN5to literal 0 HcmV?d00001 diff --git a/textures/hell_glowflower.png b/textures/hell_glowflower.png new file mode 100644 index 0000000000000000000000000000000000000000..5784ce5120143963f82017b0ed466a8daf40ed16 GIT binary patch literal 516 zcmV+f0{i`mP)B<)-So^gJ6n@#XO;=8l}zVoGb$aHs0sZzxh<=?9abGMIZCkeBSh>whx*TT^Ib`QJ{_1ON*>xRXG|!*EoJb;tD4{u^v$gdlP44$N_G;_yZtEPvZXl{GE<_nz z2M1AF=4lDeBKK)!Gxarj#J_0lQE_*lKvaqxOW+;stxT{j8>GEI&HlK7k_&B2;=39m zqGn09J!K@gK=hQ(_A5d260Z@aYh)5FyiBHJnNa^I-du+{!H%g;y5bi|`k!%Az+~Mw zPVZYH8XrS3I{z=(c_Tu2C{1M8AQ5?i>R;qQ@-l%~f~JW*2s6w)Ji?h~vk#7P_Fm80Tv$BMtH literal 0 HcmV?d00001 diff --git a/textures/hell_grass.png b/textures/hell_grass.png new file mode 100644 index 0000000000000000000000000000000000000000..2e11a1f9b1de1ab82ee06844d831464d2c652b0c GIT binary patch literal 184 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`^`0({Ar-gYUi9WV6d>So@s-#9 zwMY2#TmzK)RqBMy7j*3SSM=bHW25nVCcdjC|7!c4Io!F*eqZ^t^;5$f4IkIH$!{40 zHS>Zc9x%S$E1I=prQU~_6=y{z&=xUpC(UqH`QqBs25RHxP(!7naH7@9kY iH%a?HHU58nFXO)y?e2fow%S0aFnGH9xvX$gP_YMo84ri2E2LjEO>}H1RuK`7|AA!A<=x$u+vL* z)%0M45rtC-e}#>S#Q_8ChVpv|hr)v5HHB?7Ce$4xp4qD5LldVabnxd)$X&REY_a~o zf>?UnSRkG^9lSK*&g3s9{Di$h-dW%(#Z#s*Oy9N)TL#RbP*P#gIYTwX)$QyA?b#?Q1fkb3c?%pExZ0000LsV{p1<2a6;1m)zcFGKRh!T=!!7X4Vh5w{l7KG?*D{Z zKk{6#ZeHR4u42dk6b0gxI^X|YC2r&y(p&EJKg3e%e@C$^c?MKxSp7e>wdVi!d5Qn0 zH3gGqNNJ+c|7Gog|0maY{4b0)`(K@AMY=1NPe}ORoKHa@&hH5O-%;-IpXSLO07za+ UJsJ}YIRF3v07*qoM6N<$f*`|Wng9R* literal 0 HcmV?d00001 diff --git a/textures/hell_grass_middle.png b/textures/hell_grass_middle.png new file mode 100644 index 0000000000000000000000000000000000000000..b5c82faac890981c6da9fc6cee7a7585e25a4bfb GIT binary patch literal 232 zcmVP)$|emfb6d52nhSkSELyvOVd)!t5IY>;Aa32pNzCvI^rmWQQ~x%UT}; i-jT_MIMlcc`N0>}AVU*w-df540000l2O>s>2xi6zW`;-xhDb){CmdKI;Vst0OJQK4*&oF literal 0 HcmV?d00001 diff --git a/textures/hell_hellrack.png b/textures/hell_hellrack.png new file mode 100644 index 0000000000000000000000000000000000000000..e30280cd5ae66cdaefcf973a7f71f6bf15041716 GIT binary patch literal 603 zcmV-h0;K(kP)L`A)B^dw!0PsmfK~xwS1;K|xgD?~Y z&>I_huSP)VP-=_=jap3w+;!AlTle1U|9`@B05MRKgC22tNXcOZ_yGmsNW^hasn+VF zWAOc?F<#P%njkXe$tg_FFr~9|v7KL7w9TbuIF4E?na(nqb76y3AglA*`i4@QTa4}Y z4yYXO?(H)R&zO#&Hi!_}jKCj;F+vys#sqc!;JBVBN``4|@~x)p=>B*?a$H|gHOKMlrUOqm zj4Y6>GuQQ=d0CeGs{laT?=P46dc7fzJB-u&_0|u2mT^A69mdm=T~-xaEDQr00=Rwu z#Dsi({o#3jNkAM%K@g1NNl_G@7gS9*Esv$%KET4N9EUG&Ga&?%M-4n+Oz$mO3y!R4 zM8g=i7ex8t#FDI*bz4;}GHvG(;9#O*`{Qwn{Ngws)4XA#)jQL)0TkP^ENfAcX|zT~Q96!mTDId+h)u7Tt{eLOk=>P$yCj0= zuK+Yn%Vvs_+O|F1xY@Pqb;e=5Kd_4e-9<{vvOvRPTl+pcD1!a^VPHyQ0&{HJ1sa;B ze|-M@@$0t&>$+aLDaYxXtZ1wTI6Ua#1sH|}_UVt4^z}T?*N>`cp%D^g7Vv{;39Gt^ zFk>&vnk@gT8Bf!FGLd8jMbR2)xt^bwI~JQR?86{VR@rxi^MQqLH^1MC`X$TDzZD}g U39DSa^8f$<07*qoM6N<$f-PGP%>V!Z literal 0 HcmV?d00001 diff --git a/textures/hell_hellrack_black_normal.png b/textures/hell_hellrack_black_normal.png new file mode 100644 index 0000000000000000000000000000000000000000..aebf5fe00f2cca66ba9c4b44a24a287a3dd9a752 GIT binary patch literal 490 zcmV*tfD}k`y?T}excT-O;heSN6;w>c3gl;B7|9-b&37gQwkPGg_ z3f)k_2{%%Anx|CEqnl(*j%7lQp#+*?9W4YgirCpYYax3|rVE#t3bxWVhURD)7m;TZ zYN(;gvXTp1Cx6hJ)JZEPGi-&Ph>6-+#gd65`%D!|d=hVQI<^T{NP$6y5=9gtV;p}= zcBejx55=9ixxDg6pQAF|#YoKHnW1R>>6JL>pL@dbT g#nUJs`h+?D1MtcGD9k!nivR!s07*qoM6N<$g6(b67XSbN literal 0 HcmV?d00001 diff --git a/textures/hell_hellrack_blue.png b/textures/hell_hellrack_blue.png new file mode 100644 index 0000000000000000000000000000000000000000..03f4bf5c6b646d14290c2f16480bb646a3e3ef76 GIT binary patch literal 831 zcmV-F1Hk-=P)Qo##Af-{sh27k9EVO{6vqh+!xZ&~e4(1; z<)|85a#bspnw6261Lk6DZp zx=eC-zKMmjw2bKDy2~3h+xoiPLxBmlQO}@xP*qf=Yi@I^G>pSJ0zRI6i@c1vJ$?wu zf#Gnk_xbwvF_$Mmvui4~Z0t%Quy%R3bDmma+=z%K9!qTctub99jrZt>Ta)sj6dNC-V!6^9o84YfHNWEv4F6S<7%J z0YPPf;_~Xwfn@*0yY8oxW}BB*Fewxdy@G%$o4Vu4jln>;KNwSM4Bnwx)B_OXyyD7Q z^JKloWOMq9Bzj141MD8j&&|lbjnZR~1QgzJ7Ib8&g~`Ri4k)-*a5{}1(L*IC@%A36X4002ov JPDHLkV1i7bj0gY# literal 0 HcmV?d00001 diff --git a/textures/hell_hellrack_blue_normal.png b/textures/hell_hellrack_blue_normal.png new file mode 100644 index 0000000000000000000000000000000000000000..ff6a573cabbac60273d74c33111540bd855a1c96 GIT binary patch literal 693 zcmV;m0!safP)U}LVPO(>*EMw+)i&JP<^O|Z}2pSqTk zMp!L)k#iz2_mO)T+>$#*Bycz6AVuiG^^h5S=9T9!zm+29hY<+@yUTNpdpdi!^i7kx zi{W{h&R|(E1TqKHJ9b|y#m$jU5GJq!EGHZ`xu0R@ai>dGfFEWxx~KvVW)GstO93Sl z*gTbv1?!RY5zIb{h;4zv7ZQ*3B_R=G=EKl!D!P0?!0+<~~Ip@TTb z{-(?=7|&IwDQyk5hM@%|EoeRF!~SHC&=6#tm&HcD>`v#svb~^J_0(K1A}U zmP+&_X9d|ix^Sz%lHX7D(|@b~|JF~gj&&hhTUlI|+MyckXmFGl^>@V+n3{-dva8aE z!!P&e+w;|XXu^B0@*#HuHhru#c6Z!Lxc={(VhgnIsdFRuYPE6r`k%LO#Sbw#F?s_1 z&s7v-(&o%Z+F|ddQo3VqM=Vk#3r*kE9+I))WX)O5qRsOje-orknl%1O zW`wbYNW<3SmO-w82Z#I#!W`ZlSC1zx=i{oH*Q9d1uaXvDN3w5V9dj|}VGm-xm?%fYg~SvkaDzT zARtTxYrYFO>9DV3*`>=y`Pr}LCVp(oLY3Y@4)(HHuaw9^R+F10C2ekKq%|o@AY!aK zWPF#?2gGFM{ b^L>avUQ7A7y!JJO00000NkvXXu0mjfF`-5! literal 0 HcmV?d00001 diff --git a/textures/hell_hellrack_brick.png b/textures/hell_hellrack_brick.png new file mode 100644 index 0000000000000000000000000000000000000000..b9199b7d45397808f11de25842a0402d0095abab GIT binary patch literal 682 zcmV;b0#*HqP)p#dNSEV$TG}AKq`|ENHP!*M39h>n9amQS!4;DfC>tQ#^6CYn8FKOlqxMf zc+!I>5B@)2y2|C%H($Tk{l4k0??EGf`{dSCd#S!%EH>}elB(QivtIW1{Aw(I*<8D5 zthDaeP8aGM`P^=5=D1RVfWYTv@h&9^j_l|?S*KMp8bku`>*azX-t>3l=>wkl1@k*f z2CM>Hv)g`#r0d=;L?x(b0EB@IH zL1MtjFs}Q7!oQdV`1ZH30F1I^g0YqH902)GfIW)Q6L;Nk4dCq42}j~tJW?CQfSX2YP{H7$A(hrFRV z8rzCR+q@xR;g5#HP82kAnJIrax{>cwH)De}N_?F0Dz1f1L~}aaoC!@d)-6R0;Eg;m86{a01n!k`{gFuK zi4-Zpqc@cF+ih2(^Z8InMk|hD5xi&K-Z7x$={Pn{pvKH;cL^Js85#2sb15tOpk{;$ zt1&cYdGZf8P`7>2*kKDOhZxNeiQahs;4B&4DfEtL>Zv6nl@(5+&iTmVAc4_gr|g|!G+7*L5& z03p&Jr;1ZIu}_Ze_>ZAdg~R|%Jkzth!~5X&gNKSNCUHC*4g^8m+k0hM#{kf5Hf2Rk z;y6j-38Uz_148(+IZIx?c&=$$7zUCkNjcfFju)32KfbpWRo&lzcSF23IL4xVGy{UJL*~hP^~Tka(%l8hT=6(2u zot;Ow?`$91pvo!07dEz>$PhL zzoBRbj~E0riX!+A;NvGx4?7)>C?ZMOh-O(AKCf$swVAU8Kx34>&J_gOGb*vKQF zTb~YE?a-%DG>+ql2;y?1aqjvjhu^MTt@V4h=e;hLrYU8vJKzPG==wxFW*+r;BAq+V z>e{+(_mK#W;|zu$(j*ZCf%&1&==}V`(NTx5RH^`wW|^*QvaEdh+Af=B>)_+`%q(Lp z%hG&4&mkr$Hx9!n8pGDs_VtyO%S(v-h22=axwd`_063m#dci1E01$u!Rn`7jMvxRS lm)DJ{zi-L?dwyQJke}F|(%Cme?e72p002ovPDHLkV1h*V|6l+B literal 0 HcmV?d00001 diff --git a/textures/hell_hellrack_brick_blue.png b/textures/hell_hellrack_brick_blue.png new file mode 100644 index 0000000000000000000000000000000000000000..9db6250e9785f4012632000b68a314585a75b868 GIT binary patch literal 726 zcmV;{0xA88P)!RUA<&dIl#f^%4k2Sk(Fo!I!@+Pe3=C*O<{?fEQ$v_8(`1AQ*a_NM*7`6^^epUYN{0Nz!HuYwR~qP0c_auw$8A$%%&4 zYJwm%tR3-AH_Hjg<$e3%GpV7&u|f}{tJPOa7xhE6cgCdq-z5m6vw^-zi!P$morL5L=P; z+wKd%YUAC23h$g=v^yWa{`!4+bz7;#zxN{kfCafHaB#H=0p1`Oi$(&t)we$}Pfk)xtaE7Aj>SAkUeN*Xs{do)2 zcHRj%Xc1_dp|v{Rf#4d77DVwO;N9Gnp?iIPSPBB~Zcr^$*fc%h{*4}os=5SuM&#fWaCjzv0d$^`?+?!>RR91007*qo IM6N<$g1=K-@&Et; literal 0 HcmV?d00001 diff --git a/textures/hell_hellrack_normal.png b/textures/hell_hellrack_normal.png new file mode 100644 index 0000000000000000000000000000000000000000..5e2eafd2d8aada266afaed7872d94805746bf349 GIT binary patch literal 533 zcmV+w0_y#VP)mo7=TfK?k1aNXBxRu^LJ2fyE-37!X6& zJOj_W4@aa4k`P6m*;d@dv9WsWlaf#y%JUYg!ru&%sR@@*krv2LeBcbIl`V2v?1R1F zEdIqI3`IC@oUq-fh+X*z!C)rb$&`tSn9!Chan20)LYZ+2otPK)9a->>oVXvoILsGj zX7gyv>KIa^daeWKm?PHG-rQIJ%XMA&M|HjM%y`8+avO&IO+Ijq(KBW)!}rmj1~HTm zOQVf_y;u*no0nn``JF8L13mJ*yWBL5Y=k$(vItfv8h^4T)OR18Fi%Xs`q!&}49goS zq==6g!H&d8vXnrYk(*(%Op#bgjW%)$a&>l6lm=6u!=Wj12$UeruiyC6r8an1%h#Ay|)laV!*vb&MKi8A7Fbl4biM zCPWZVsl>!IVHetr62_G~bL|YbCpx0VC)7?_iI!t!o_Kg<_xG{+1bkxXC)6I|n|8xDU*oxUnhIle9C`Eg*uV~>9 X(9HYPUph2700000NkvXXu0mjfpP%-o literal 0 HcmV?d00001 diff --git a/textures/hell_hellrack_soil.png b/textures/hell_hellrack_soil.png new file mode 100644 index 0000000000000000000000000000000000000000..dedab0ef0065e47b5498560a5091158355942233 GIT binary patch literal 397 zcmV;80doF{P)YXa|y z`&IGoKT3}Cc6^vTiK*YMfKyS%wAjVy`WFORI1Hjm6#Al?&u!-_0zMJ=+&KUZJ3Ef5 z!x_X}M+CohnI8yffMu*`okmn;3BWt7pSGrlLhnhT3doDn`YBW&+Y68ZzNKM6Hcvqq zoHwxlcC{a!8h603Y6cR>EU?1ry@fp67AaH{Dh0v|3%bk2Dc3?mpA)fmBXDrwf;9TO9RMEv8<_RX%{C~9CxX5PHVo7wE> z{~>aZWOyuZr04aAnB1#NVu&Y1>?-1^#K~L26b+4ZAHw zBhm1*AoM799q)&XnxIz zUlm*(2+cxTA;hH!H9Ux(8U*ywtVWhKP_3zInbPUJ~*n1$S|YaanuJTYJ?f z+JXcTA|KB_HuydU^61{NoNYMua3j0;VYe%>i&e0GSERtkA>b5wvO8qIX;JW^ z+_3}ZS{WlA^|gbfpkTkV{E>CMENoa}*YOLrz>aWM4x0%2 z`%lwQ7_GM3%DPv#()GQzTeq&;x-rs$C=;h5YG9DeNF?%pDaZ&+7MYI#0TL6%DEd49 zkAIYBCSRJ~d(XMwch0%QwVOSxmKKZleMOv5C6x|jNy6h;h4zn9#GIiTAqM+Kn86Rg zM5pXD1m0sa4UumVg@}(j^ASM55;^R6G-Z>-idb)HV>-=Q(Qu#8ah*2X*!R+1tNFT; zGMItq0diGIe&#|ZL(iAw^{Rnx3zlI=Ld1-&Gou*dJOQV{msTqh z0UbC))3utmH)3tqtTG$9%!}6*`ACh_IJP}*eyLl%yY`2NRy7{$8-n>_KFW!P%kfwx z9E9R?Tlgj?t}Bun94N8T7)55IVIaZj6EN#GAKMiZ$A)w<do6vYi$`Mok0Tw3j25JS7WETT{%t9}l+g0`y@tia2**MO z>TT6sD&=ti0RrvsNFj89B@0dt$sjvi3Jx*zznA7Chj~s51+$?bN8P@#g`H&ZG$TeS z5=#`~no=c}B8gv3V~`?yR$|L|eCV00L%K|nSGLh%gYQ)yq8D9tny?DrSk@oFZ!X~Lri2?K*%eql%p7}4Q}j;j)^W91z|+8#m~1EeY;w@uOHHi}>3qQd zBbEHB3lNr#GYA14mb3}^R^+8^^$DmMrRH++jl}r7(Hz8FrKOIRJjtjKy5gz5#M4>4 zNIwf?KWWrGNoZz_zsocbFd79jTBe2{_yfR=V@%2d2>$?nr;mV@ZXv?}0000QlpG*L56;;o0H z`4%Lw3G8&jn$Zyon{mn@%q!I~^t^2BN73Dp6x+!SNjMi9JN69@s3!z+u$w1l_QWuw zZ6YeE!4Jfia*`78;3BCbDSDFVh>_!sX2sVXzv6oG3ZRZ;MCBal99yM0EYkPPk<{b4 zB9+o05%pjYs6uVA4e4Q^Ow__LAOUZR1}GG00()W!@YT{T{TFWUEP}NJ$IsDp5x*_y zN|R6_Hnht3XpbPSXI=R$c3GsIX(ni;{4j428_dx;M$bAi&vLHZ1Iaj#Vhzra%J?7; z;&X-rU58fGkb=M2dY3k%6VJ)6LM*cU;pjL$@#m-c7xr07#WFtf?;CEl@hqnqH!#og zDRe!L0twCJo}%~#>F5jR6OV!44|F#CY?p?*l0Iw~1iA?? z%p)?<_qc?6WBp6*QJ^_WNxW5SD>t>FK_OPUf*yEe-W@e^6k5lBV4DZ}6mOZD00000 LNkvXXu0mjfYQXQ? literal 0 HcmV?d00001 diff --git a/textures/hell_hotbed.png b/textures/hell_hotbed.png new file mode 100644 index 0000000000000000000000000000000000000000..96b906349cc85246d090b2c8e2b70190c7e03749 GIT binary patch literal 280 zcmV+z0q6dSP)*+%qg3bM%~Y^c?dH z-0}=u3JlzejGT)NU5gEUfQ&LAGI1?4axXLTDl>AcGV!P~ajP|TuQm0oHFc{ub#FBH zY&7?3H1}yV_XDz<&3&8A{hG}^+AO@%bnH;2s;le%p|KTfa$m0h8>4CfWH71sj-fLhLuNTe z&vFW%?;NwpC2px}%nFax_1;=bw`T+W!dMdI7tG-B>_!@pGt<+>F+@U=^YeJrL^;Q#;dxrcY!7A)mfsCQvw*DkokB=c#~h40ro=O18}2z3y8 z@XmAlx^9s~2EXU^uN6JlJfD4CMm+S=q92;eO%HtPetLyvN2VB?vtIF ONCr<=KbLh*2~7Z7?423_ literal 0 HcmV?d00001 diff --git a/textures/hell_pearl.png b/textures/hell_pearl.png new file mode 100644 index 0000000000000000000000000000000000000000..e3a1b7067550aa403b99180ecd9ea5604449dc85 GIT binary patch literal 216 zcmeAS@N?(olHy`uVBq!ia0vp^QXtI23?!pd0{;Rjxd5LKS5_tl6H!iI1->jD;RaLj zm2Pr7{giIRYCrDH`h5OCyO-@zpi0J)AirP+hi5m^fSe3Z7sn8Z@X`x`k_`qNEDu5> zT30s+u5f4#UC<<&^ZMh;+cKwapFe$Ysu1&no|&v$((dXXj14_If%ST__(LXnB?c=_ z-_9s~HP#i=Qu}Q>McBUVaqXF4p}V>vJijhkaCS$zoBrm1zib$PwOR1r(3w>Zw3ETp L)z4*}Q$iB}9+XMO literal 0 HcmV?d00001 diff --git a/textures/hell_pick_hellrack.png b/textures/hell_pick_hellrack.png new file mode 100644 index 0000000000000000000000000000000000000000..922a0970cf26730f4cb8acfc0ede2f4212ee2227 GIT binary patch literal 262 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!63?wyl`GbK}a)3{WtHz52A!a5K7A65!78wpU zMIP<|R)!EZ27O_{G*$*v5kWH%p*mKEW>y9b1$lcJNe5XeCs`>ESt%1`MHhLQG)0+k zHOXi#b#FttFeCk9Bi%Y9oeio|J^C6`^wi?q&2s%rN~LGU1Fd5$3GxeOaCmkj4af=f zba4!+xK(??U8uo8fZ35zE#gU!@1OtLJKycncy_IM{hd2kk{>uF&1CUO>YcJYD@<);T3K F0RX4^OQ!$; literal 0 HcmV?d00001 diff --git a/textures/hell_pick_hellrack_blue.png b/textures/hell_pick_hellrack_blue.png new file mode 100644 index 0000000000000000000000000000000000000000..e8757fbac247c8d0e194557b604b7b6e9a4d63ab GIT binary patch literal 309 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!63?wyl`GbK}Z-7sTD+7ZdBM>k#GcvI-F)=eS zv9Pjnv9fcsaqx0-@yjWy$SLb6sOTuF=qRgct7~YhYw4@&*=rlS=$g0~nmTwJ%6S{g z8=E^BS-6>6I$2sf>DxruIC$7OxL7zxI=Ohpxtj%fdb|3@_y>mP`k54kJBKD$#--#( zq%|gG)pqpFY@e{acgDt<^H$GZdFs@`_t$_9V=M{s3ubV5b|VeQ3G;Mu45?u3J-$`+ zu!DfZ!ThuhN6+y5oxZ%}{X8aLvo(hQkAK@zEU;(UzO(1qgZ}WgGiX}Pskd~R8hgxh zkI&nr`}Ie3cc|w-O^CVrxct?@tLMC}qxo)$e{x}Gy6krFEzkxAPgg&ebxsLQ0Pa9w A*8l(j literal 0 HcmV?d00001 diff --git a/textures/hell_pick_mushroom.png b/textures/hell_pick_mushroom.png new file mode 100644 index 0000000000000000000000000000000000000000..a0e3029aff9b72152b2a32fbce536272071f54ad GIT binary patch literal 375 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!63?wyl`GbMf>Hwb**NoJn8U}_OcJ?ARwmdGb zd@inBZmxW8?i@beWFdi6QQEja5c#^C5aSeaW`El4_&DSIj%HSF>hUIe;pZ5J*gON z2_FL)Z$r684Zd(w@e)0W5`FP9eaR97@lqf%l!&pEZZQ^WF%fDt5uR?$Sz#|a&yL5j zA^AJd*^DJYe!&b5&u*jvIaQu6jv*3~tOwbd8iCvcr@3y%qy=M7(Uj_V018&Ze1$PaMDQBgsI`f7TXP4ZVazK2~R!E zQSfh@ynzJs$#+~wt}3g{7MW0cuVwjPMh2Zz{tN~GuE{eT5M}tm{H&VOXF)ZS4$xW# MPgg&ebxsLQ08oEu(EtDd literal 0 HcmV?d00001 diff --git a/textures/hell_pick_white.png b/textures/hell_pick_white.png new file mode 100644 index 0000000000000000000000000000000000000000..8bd46cb68ac7e9f19c68bb4cca630b08b0774d3f GIT binary patch literal 358 zcmV-s0h#`ZP)&Hh5e>eQQ*KZ&H(dU6zMzqn3ECql2!agt)Jc!?>5iyO+Yj zsl~*p$Htq<$)C^4qtDN#($S*S)2r0euGiG9)z+%m*Qwmvwcg&c-rc_4-n-%9wBzEs zP=ECRa!0G3~>gvJl>$>dgz3uG6?d-+w?!@oz$?xyO@9)R)@XYe@#`pEed3m3^ z00001bW%=J06^y0W&i*Hcu7P-RCobx&Q}h?Fc5^{p_tx#!N7tIrWfD;ZXg&Xt0?pK z{o02`&f<61$1AEdwzBuzr%Dna16iqZ0EY9;>6n&)-f}AH#5E?J#q4%YLbYE9MzRK1 z>6U^6cAhrvB7lptce+*JL+`(vG!TET(F~?cbIM%CAN)ZGu+{<0FaQ7m07*qoM6N<$ Eg5!|7>Hq)$ literal 0 HcmV?d00001 diff --git a/textures/hell_pick_wood.png b/textures/hell_pick_wood.png new file mode 100644 index 0000000000000000000000000000000000000000..0973dfe0971852aa8b963768e3dac2215d61d786 GIT binary patch literal 282 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!63?wyl`GbK}QGic~t44B*04qxf1A_w_iw!qt zGz&`_D}$+sU>y@fGb=*_H+vH=+YEO0A|d|CT7$))YW=l)X;p1Jz#~ZFDxmJL0 zy#Q~tmb$m0+!9IAMiuELvXUE>prWurRqCRmLY%u!@&kx=D%e2qy zdq$yGRfznx=mjq)xvig`vfO*woVl9~lU-|hl=Nz{D%S2;$@nns%=^GQ0mk2}bsqOK ap5`xUV@vqw*z*f$1B0ilpUXO@geCyG(pB96 literal 0 HcmV?d00001 diff --git a/textures/hell_portal_particle.png b/textures/hell_portal_particle.png new file mode 100644 index 0000000000000000000000000000000000000000..e619dc81e40219e004b901b20c419f8f3da35c65 GIT binary patch literal 340 zcmV-a0jvIrP)@6YQ6j71pbMWma#87sUX2#C zVpKk6@@{87Vlmut_WLyt%Eio-Y7T;I*q&$c52^EtM?tFv$MSq~cpa$nyLJ}PkQ476 zz>Bt=mDtK*j;o1g5-f#-CG4nG#|^Bn=g~L^gL>tFg{O4lRd0Ox|688o;~Xc0npVY= zkZ7!huXYvB>Ceu|P%Hnu{L6GN{p!kI2gA5^mWN^0&ECq<{aE=81bDU m%i^nmA(%Q&Fbs{MBl-r@n2~*m=n_f*0000Px%UP(kjR2Ufr!P$-*RS$M^p}ng5C*X|(gf)MajMiCMX!uu?(}n~9fQ78?7Nc08u|B*{|!7R?375a z#yBX+AdVa6YFIXg+f3e{Ii^4dMel(ttF#Ktie4vVH?dturX`U?&@k+*q^#&VF%KKY z_e>rN`KHsF3GxMEOjwz?yqcJAfar8vc>fIXJz;fX3MIV+tO>mcVsZRvz)>0Q_S|-3 zcx|-P!f~wB3nv_WC+L5LoQ+{rbk}LBXaTAz>FXueT(fVTeyki8CoJ%f5Vs&bh^erq zO3{JwVqz*YXnsU*%^j_RO*{0(r=x< zU06zH)rIp=sTp`n__od z*l}W>8`THK&yD)2)5P&Rb9!miOGQkP2}BgeK$5_}PJ5_SpV|KExHj5TrMT1gfoJQu zca}5wni%qg>?`Zi=#LPGPTxRTf_MOa2zu%GCh%iGw!lx0|C3>y(K0gLDdI{w6-tKK zJ3bcjNstKQ7oY)O05!+&z^6u)%H~P%5OlBDhXGz2vJKISOWC`0000< KMNUMnLSTX;nK5(# literal 0 HcmV?d00001 diff --git a/textures/hell_portal_stuff_normal.png b/textures/hell_portal_stuff_normal.png new file mode 100644 index 0000000000000000000000000000000000000000..0e013bfacab775d04fa40a3a954f5b20825417cb GIT binary patch literal 503 zcmVPv$S+?G>!G~}r_R36Lijz^jKH352P~&a)Q^G3A#Mkrv2IN! z3zJc8%BCzZSKF{2Ti=SrZWt`FQlq-U2lXRyfW0!5W0i1?Z)4es-7pw&iv6-}9ha-H zOueDV6bm5)Ph;XwafGcH)C?Ou;j(d{ms%~5N{rp8-YPi(?jSha2vFKS<` zGPrL2j4k%n5}OgPsec>u#ugW;DZHvp<197DD~jLM4qq{hxWEBY?h?hB`iRGHS@zUD z)|haGBWy>&pk|4b2XTm#u#b tjuqxusNaxs8`k9sBL-~ofEjkA{{u^O^1xL4zGeUb002ovPDHLkV1kkd=NB_5k8YUmM&81iBc)B|!md3w3T+kuO|4Hz@+Q0d^Kf2!%k+u=vl2bOq8RfX&bV zD@gDG(>^XXq!}O#)Fc7KaUninjRHWnC^5-c7O2Pqs!$P0gF2Kgjn5DlG)WUAzC98< d9F|(4003PdeH}gRDpCLd002ovPDHLkV1h-ub+rHh literal 0 HcmV?d00001 diff --git a/textures/hell_shovel_hellrack.png b/textures/hell_shovel_hellrack.png new file mode 100644 index 0000000000000000000000000000000000000000..3cb91b63743265f7b07ce4446b4309d05151cbc7 GIT binary patch literal 268 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!63?wyl`GbK}QGic~E06{PW=2LXW@dgC7Ex9f z9YzLmb~Zz9PF+4813sQ)W`=Yoh8!jaS6)sBK|X(eE)O9=ClSG99+oB+20sx&FEJrs zF(E%O;b1YrIAMNwDY2O>3}t+r8(0~VrA334d7_l$yba~z+|3qPndbVL+;z8}0ko2_ zB*-tA!Qt7BG$6;r)5S5Qf-(63drH90O_M$)DS6abI+pRpWvVcWswFa7%7t0PPlwfitbA*qK&+7G&tzopr E0M^|(*8l(j literal 0 HcmV?d00001 diff --git a/textures/hell_shovel_hellrack_blue.png b/textures/hell_shovel_hellrack_blue.png new file mode 100644 index 0000000000000000000000000000000000000000..03caa1c67e52217daff9fc3868d98e93e87d3843 GIT binary patch literal 288 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!63?wyl`GbK}V}MVHE06{Pb`DNnL2(gLNm(FJ zP*PUa&@r$!H8#~ZvGX>RGqUlscJ#G(bhUN%w{;G1aPhNojka}*a&il>agVd}h;i}o zar5wV@d&Z^jCc3+@%HqNb2oGFO?UB6$n`Vv3rPtGP4W-Rh>wYnODRrFFO14;t81Cq z)G?{CV}{esa~ePwFqQ=Q1v5B2yO9Ru_mVB9)mpU>FVdQ&MBb@0Cb#HTmS$7 literal 0 HcmV?d00001 diff --git a/textures/hell_shovel_white.png b/textures/hell_shovel_white.png new file mode 100644 index 0000000000000000000000000000000000000000..989e29ea92850196c154af5302240fb5792e65af GIT binary patch literal 416 zcmV;R0bl-!P)HcZCFKmXHtc9UXOrin2T|slzFF}fUvKQyu6^w$*0cEqRq{)&(5RJ&#TkY zrqt83)YG-q)UDRlvewnK*w?Pw*}2-Nr z;NQIA;Irc4y5ixy;^D#MFC4i z>A>pg#p>$6?d-nn?8NQt$nWmR@b1U&@6Pe?$@B8T^76*=^2_t`&h_-n^z_g7_R#tF z$u_I!{r~^~0d!JMQvg8b*k%9#0C`D7K~#7FV}Jo$V+{sm;OL|;ZQy|5yBJ!l@mb27 zzy+L@6_mKu#f>Ck0f4MR~e7hEy;nD@Y%C?fr*8cFVdQ&MBb@090Z)C;$Ke literal 0 HcmV?d00001 diff --git a/textures/hell_shroom_top.png b/textures/hell_shroom_top.png new file mode 100644 index 0000000000000000000000000000000000000000..6dd58c7e97c1c6373f86af9e6c2e81ba2034f62d GIT binary patch literal 127 zcmeAS@N?(olHy`uVBq!ia0vp^AT}2V8<6ZZI=>f4xp}%chEy;nOL#4~>hhz0O4pnJ z5~?r%XC@u`@AyZGt?j=?mjl!1Hx&oCgi=)gO_%cebN=}=woM03oD6-;SFKDi+^~%C bn+}6Pr1Ca3?m1~d6B#^R{an^LB{Ts5+wLrc literal 0 HcmV?d00001 diff --git a/textures/hell_stick.png b/textures/hell_stick.png new file mode 100644 index 0000000000000000000000000000000000000000..c287e166a0b03825fea4ac61f5f2cfe4b37b0a95 GIT binary patch literal 231 zcmV;$pQr*Z2Jkm(IUgx!ZlePH^&` z%_$x)-aPHNzG&^oRbH$maka-=^JmId#7}n84iu_r(>Qkj`oVp{=kgvrkNYde;^Y3? Q+Z5zMPgg&ebxsLQ04(T9IsgCw literal 0 HcmV?d00001 diff --git a/textures/hell_sword_hellrack_blue.png b/textures/hell_sword_hellrack_blue.png new file mode 100644 index 0000000000000000000000000000000000000000..90a26ee79aebb4298bdabfeefc5964c5ea49b338 GIT binary patch literal 326 zcmV-M0lEH(P)kr~M~c^U_rt|Ib;n>%VVY>;ICviKH2@eAT-Dj7+TmS=qV&tLfVR zckziK-hiT_(*N7HU;m$&RrH^QmGgh^^o_)8&dSRAzxVLT{|rnV|HC5V{s)9c5wCgM zwr&4o^d^8!g~HMShDedQO(5v%7(uGnOHdf=T^@pExO8Ly#7yH zcKW}zvCDrMlQhya=lYrak8?Ns?`v)FU)w5-Jk8#Qa$t@2&ffo>JwpDIu9+MF*E|pa Y0Id#yZLtZhvj6}907*qoM6N<$g4g@8WB>pF literal 0 HcmV?d00001 diff --git a/textures/hell_sword_white.png b/textures/hell_sword_white.png new file mode 100644 index 0000000000000000000000000000000000000000..73f41f7d4aee361c7ba260782528607220dfd3d4 GIT binary patch literal 315 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 z z4+}l`VTm>lE_1qqO{na}N}2~tpPNOd6;i!;BOOW)Y=_(&@+^*^-|{}>kf4;`+3D%& z%rePd*5~i#Ots!6E-aVsQ6g3-*RV&}v(VfW3jX=d4LH2wB1pW|RR=2_St(2#hEuUl z=p}gsK|E}UXMK2%6uTd`M0T7iW3PM5hz7Yw=Xh83*b*41VkBo_PQRNvXSi+eKUe6Q z6*PU9Mp)Tz>T2JzSJIaoGR$1x)S-E5DfLulsgMCaQ~aBK@V3p99}S|a2fkHe zy@Q!`LO$OpIjBls z``>f&9BfPDBnnR9o}AT$Z$e*}(+JWIa7B?)PfKwOS7A9Mbs6MHDw%ICe zqRBV1)CIuZ~t6%sTQ z6E+kNH53#&6A>~N4l@=HHx&>&6cRTU5i=JRI2RH*7ZW`e6gn6bI~f!}7#2Mn7GEJ9 zTO%A?BpqTS8etJTH|zG@&^&n>#U^J2sa+FqSpO)95o86$C-=LS+qMY8Lo!O(E z-=dz{q@LoVnc$rWF=5XG+u*pPxY zt^wkfR1naHmnf~kVyS>zplX+rQl;e)pQy;o`a%&kWlKe1(IE0r{#3u-bDG$Y<$gQA z+}xQtJ2NZ9|IU5V{)6!-lCi`}Le{Zgdt2R-?o#^9j-Y(w_UfVXO$HM?=PH8us=I;$ zzxKW-Qh1rbi(1b91cPE>^IRd_n%1uYhz9(YCh3S8+KrAw`5z9_8SwOXvU(XFv7D|r z#;HC-q;FcwRhGZ~gtpy&#mG8+;Fi02? z)k5G_vFk)x5e1(1&hp1^Ch*FelP!Y+yY&x{4vR-VYAJJU4O_|=f))}%>yrjMY4UI7 zHavP>Q8j#3<@QzS#fht~n@Wbc4M{kukZQPQ2| zPd-+`0F7i77ka9B_)E?;Pjj&~1fJ#Z58M00B&`QGJ7|L1%n@*Gb={QL=gs2&w9y9h zlF@LVK1eA1BXpGzm~UV|)Qj974V-;Z-iFCN{{VaxT~&oZOZxx-002ovPDHLkV1msw B){FoE literal 0 HcmV?d00001 diff --git a/textures/hell_torch_on_ceiling.png b/textures/hell_torch_on_ceiling.png new file mode 100644 index 0000000000000000000000000000000000000000..43cb69a4762be0325986f6e66c7edda710342aa6 GIT binary patch literal 137 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`0iG_7Ar*|t2iWHH}SO!m5KbLh*2~7Z~b0u~F literal 0 HcmV?d00001 diff --git a/textures/hell_transparent.png b/textures/hell_transparent.png new file mode 100644 index 0000000000000000000000000000000000000000..d0ff224445c97605c8277061eb4a72e1fa378389 GIT binary patch literal 67 zcmeAS@N?(olHy`uVBq!ia0vp^j3CUx1|;Q0k8}blE>9Q7kP60RkPIsWquGUyyFgI} MPgg&ebxsLQ083~K+W-In literal 0 HcmV?d00001 diff --git a/textures/hell_tree.png b/textures/hell_tree.png new file mode 100644 index 0000000000000000000000000000000000000000..99101b3598e2f6c090edd405e38950d5485eed27 GIT binary patch literal 788 zcmV+v1MB>WP)f&|007|EufG#Jj%hxerm{;HS}$$WHWeA1HjqFJ?Zkx(|AHUEkspA#vJ2eciaiUWdtZ1nf@$dvY2i|`>yn2DW261o;Wo|Y>Qbh)wP zYX<$~VSvcgU2O}@)xWMF(sDzwig>QyYY~V;gm2c+WaKKXw(8g7t82hivLqGGhr|1e ze-ihrPy6mzzaCCjt_Lx|q$$2ZQSUT^-I@Yl%^9_+5&j~N`8wS`I>>6|Y0AxfW@gXk zn3f{?UBiJ*lIjW_fIIXdZ_F-CV`ZPe+3PC=DD|drJ>LfFVNs?C2bOS}>^_8*IvcyZ zV3EY7-B>JluP+=KIqC(jx0*ZnnY0kQPhvs*uDp;ZjWtrL81@ zh$xgh=(XH@Z`J$b{Hosoqbr`n1uStP8HRWZ7EVzUOKDv}1u#+6tTd}C(Wago3(e$i z=*vWvnrt~A-a2>}R1i+ST#kDlkxh*NQu~S=ynQ{O50?eg@uwN z#XGG^m?R=@^yER&6S-i5=VhCxMZWyok3UJ98;=e@SdMj%!B&<}kv?47T0qV#wS$6= z@!S6Z-@LOl^7b#!T3$HTM@NG!;;8Mqofid6*}R1_3B%g)>CuiLL@wRX&5)$+18(r= zy+JcGKCstRa^tznx#gz?#}s&fm+h#XVxcn)Vf1#2VyqLk`FdKC;pY#IGjc0h6PLD* zOoYM0gMg@JY#v}hs!~-upASA@oCh?>ABRsGhuu0oA zDWI*aYqQcNP2$)|?D%$UAKQoT13z?4z)}S+MZWS)B!FAJn+HT|VJdj~$Dii0r-$d^ zXW#ZtJ=@!Yz;hU)@FwUkg_~lSG@o+otBUU zBE!&vNFzR&F3ujGOj+{j*P8Csk87E(wGEj>YX6g0zrV1`DzlSQf?)<+CJCH|pxSM3 z7wF!ApUs{y?7&oMvbxACy^GLe`?S8nP`)I9&19`G7_ljnkCwAbu->_{;hTCzj)O_j zzgAf@@9dX=n2I35Uw`_s>o1>f))9_(jMBA&@4o+KZjE#g!+LW(%jxlayITHTg0`$t zUI`x@;lsn*8o$n`;p5Yjq1lyZzug{uktoUs`vg$3_<8?h=yYKO&jONKX2?^ zeB=J%ov$)xDCwbelofT5X1!)lAUV65tlStVpjebx5E!l@#V$3+^U?c_GAYOH@xgF+ z;m^0pwkW{bo(Fp4$ltduCuZwHx`e&dOE?G<9A~1}(oX?3`s=u6NQmUmM`PB|s@9yC z#FlbGVaM^ILCX_k!#)2{UY99S!2*ssvRwpa%A|ZXD@wI0WYZ*2)VHe>H=*IZ{i}EP z_QX4P38XZ*h^aZ(`5*GAyuYw8zsaH&fRG(Rs zl=tlv#eS_O_ytGc!Tz;4h#P~lfDwYnG5MXKu(_UngE#eg;Wh7`o zoV7I+ML2~*Ba9-pNHVCU8?6>6dEw+KQ!HHHk0q#p%=P{U&F+o>2sV<-00000NkvXX Hu0mjfO51*L literal 0 HcmV?d00001 diff --git a/textures/hell_tree_sapling.png b/textures/hell_tree_sapling.png new file mode 100644 index 0000000000000000000000000000000000000000..14686be59531d8f3177b999b2ff67c3da1bc0112 GIT binary patch literal 337 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!63?wyl`GbMfv;dzF*A<*h?tE;OEDWw<{DH#U zB^)vtydqh`4A~+aQBsWIGD5|otTED3{t9B5(&8C1(ls*jS*mjB>WYQhW{x>}E(Hc| zMMkd0hHh0R?zN`wjpm+>=3b5FK8@zS&E_6$7G7-@K5Z6$K(gC9pxZjQ$Hs4xUBD!} zph14= z?@L-y7{?F231(nyh$WXau#~wJvWAtzrr279^J1CkNJNWOinT;;$yOINrS*gBH1f_! zR7{P2jk$`gqSYc(sMw1!dbij6AGT)*AGn;u^Eu}}-{&9$pQDjf3o5JRRmdo+x3Dpb zh+|SV54G3z*FR{-s=5)QuTf}i{r?z&8LC8maAlRFPyGbXoPK|=_eyvmUh=n)u5L^d@ z*E)eD<&FESs|%J8=}bG!iO5*tzz+gc!-+CJ8-5#gGZ}Iw3wC{PjD@WKGD{|w2x_L^ zPqYC(!saK2>ELjB&SDVrbT!oo+A0eZR&D8sq=SyaZltvD`<56#+IF1e1I5iiY-tdL zmtwB70-q%e!!nK-Y1?b5JV1{ggs^;6`KN~kf%ZT`{yUH zv$6Q=dWQ}wS5;4eDU}3SWP)<=^t`@wxEQBAx96$NE&ObczPtIHpq+bpO=^DR^3>;0 z2)cP(WWo58>Nd)YyGE3dDF^|Vc00a&eG&a#_>!S)u)I3+1qnQ0!c`nLGGg^Gud;CU zDUqUI!I8@$MJhTEK=pdqb@6c(1VD=z=t*rQ2%9lwGD5K|>tmvR;x5?I+%7 RssoK?@O1TaS?83{1OQ83G-3b% literal 0 HcmV?d00001 diff --git a/textures/hell_vine_normal.png b/textures/hell_vine_normal.png new file mode 100644 index 0000000000000000000000000000000000000000..8c3c777f47e34581484f9ca0eaa15b3c52efa736 GIT binary patch literal 455 zcmV;&0XY7NP)U5FAdXp&&K?aKi@>lEpu$?*kTZiY(;^JcSyHG!(uf1aX!fuZ@p$6Db;2JHvQ( z0UW21vwp}~!*i%O7yb+Xe3L>0iXo1kcx~bA)8tA{E1Fg*{KH51IPi4fmFT$ ztN>KlW7(&7RigyP1vX~8Qgw+M3)d0pya9GaL^d?RNqrPi{UN$=Wpwa+6ao~6$AP>(R%6#JBb z-f6gbgo1x55XBz~|~jo{7!@>PBSSw0RxIY3crSHkerWjV0&0=eb(cyl0R7WneP xhGWSnQoUs0{5e4Q)}zh>8_vCy*5xJJ@ekWIB=*cwu89Bu002ovPDHLkV1h!t)0O}L literal 0 HcmV?d00001 diff --git a/textures/hell_white.png b/textures/hell_white.png new file mode 100644 index 0000000000000000000000000000000000000000..47d412c9999a7a069d0892c8ccff26c714f3ff33 GIT binary patch literal 616 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 literal 0 HcmV?d00001 diff --git a/weird_mapgen_noise.lua b/weird_mapgen_noise.lua new file mode 100644 index 0000000..6a05079 --- /dev/null +++ b/weird_mapgen_noise.lua @@ -0,0 +1,88 @@ +--V2 +local function get_random(a, b, seed) + return PseudoRandom(math.abs(a+b*5)+seed) +end + +local r_chs = {} + +function hell_weird_noise(minp, fct, s, seed, range, scale) + if not r_chs[s] then + r_chs[s] = math.floor(s/3+0.5) + end + scale = scale or 15 + local r_ch = r_chs[s] + local maxp = vector.add(minp, scale) + + local tab,n = {},1 + local sm = range or (s+r_ch)*2 + for z = -sm, scale+sm do + local pz = z+minp.z + if pz%s == 0 then + for x = -sm, scale+sm do + local px = x+minp.x + if px%s == 0 then + local pr = get_random(px, pz, seed) + tab[n] = {x=px+pr:next(-r_ch, r_ch), y=0, z=pz+pr:next(-r_ch, r_ch)} + n = n+1 + end + end + end + end + + local tab2,n = {},1 + for z = minp.z, maxp.z do + for x = minp.x, maxp.x do + local h = sm + for _,i in ipairs(tab) do + h = math.min(h, fct(x, i.x, z, i.z)) + end + tab2[n] = {x=x, y=maxp.y-h, z=z} + n = n+1 + end + end + return tab2 +end + +--[[ +local function dif(z1, z2) + return math.abs(z1-z2) +end + +local function pymg(x1, x2, z1, z2) + return math.max(dif(x1, x2), dif(z1, z2)) +end + +local function romg(x1, x2, z1, z2) + return math.hypot(dif(x1, x2), dif(z1, z2)) +end + +local function py2mg(x1, x2, z1, z2) + return dif(x1, x2) + dif(z1, z2) +end + +minetest.register_node("ac:wmg", { + description = "wmg", + tiles = {"ac_block.png"}, + groups = {snappy=1,bendy=2,cracky=1}, + sounds = default.node_sound_stone_defaults(), + on_construct = function(pos) + local minp = vector.chunkcorner(pos) + for _,p in ipairs(weird_noise(minp, pymg, 20, 8, 4)) do + local p2 = {x=p.x, y=p.y+1, z=p.z} + if p.y <= minp.y+7 then + local p2 = {x=p.x, y=minp.y+6, z=p.z} + local p3 = {x=p.x, y=p2.y+1, z=p.z} + if minetest.get_node(p2).name ~= "default:desert_stone" then + minetest.set_node(p2, {name="default:desert_stone"}) + end + if minetest.get_node(p3).name ~= "default:desert_sand" then + minetest.set_node(p3, {name="default:desert_sand"}) + end + else + if minetest.get_node(p).name ~= "default:desert_stone" then + minetest.set_node(p, {name="default:desert_stone"}) + end + end + end + end, +})]]