From 24ab7ff8254b7eb7688bded408fbe0927f01536b Mon Sep 17 00:00:00 2001 From: TheRandomLegoBrick Date: Wed, 6 Jul 2022 11:33:25 -0700 Subject: [PATCH 01/12] Add mud block --- mods/ITEMS/mcl_core/nodes_base.lua | 13 ++++++ mods/ITEMS/mcl_core/textures/mcl_core_mud.png | Bin 0 -> 509 bytes mods/ITEMS/mcl_potions/init.lua | 37 ++++++++++++++++++ 3 files changed, 50 insertions(+) create mode 100644 mods/ITEMS/mcl_core/textures/mcl_core_mud.png diff --git a/mods/ITEMS/mcl_core/nodes_base.lua b/mods/ITEMS/mcl_core/nodes_base.lua index 957b1f24a..f25794bd1 100644 --- a/mods/ITEMS/mcl_core/nodes_base.lua +++ b/mods/ITEMS/mcl_core/nodes_base.lua @@ -457,6 +457,19 @@ minetest.register_node("mcl_core:podzol", { }) mcl_core.register_snowed_node("mcl_core:podzol_snow", "mcl_core:podzol", nil, nil, false, S("Podzol with Snow")) +minetest.register_node("mcl_core:mud", { + description = S("Mud"), + _doc_items_longdesc = S("Mud is a decorative block found in mangrove swamps. Mud can be obtained by using a watter bottle on a dirt or coarse dirt block."), + _doc_items_hidden = false, + tiles = {"mcl_core_mud.png"}, + is_ground_content = true, + stack_max = 64, + groups = {handy=1, shovely=1, enderman_takable=1, building_block=1}, + sounds = mcl_sounds.node_sound_dirt_defaults(), + _mcl_blast_resistance = 0.5, + _mcl_hardness = 0.5, +}) + minetest.register_node("mcl_core:dirt", { description = S("Dirt"), _doc_items_longdesc = S("Dirt acts as a soil for a few plants. When in light, this block may grow a grass or mycelium cover if such blocks are nearby."), diff --git a/mods/ITEMS/mcl_core/textures/mcl_core_mud.png b/mods/ITEMS/mcl_core/textures/mcl_core_mud.png new file mode 100644 index 0000000000000000000000000000000000000000..060b8792aaa91e118ffdb8acf9ca152b2534a0c1 GIT binary patch literal 509 zcmVPx#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D0g_2XK~y+TO_6C* z!!Qhm6K_en(GCM#gy9eOzYer%v)W1dWEBRDiy0B6zvTd5ic{hyH zIF1~xG3>_L;QcsFa+qUms_JmqTjz-UkA7HLZt6M&k85H|P#SCIIqK`J>tl>o4SLWS z@O{3>1>DZrloleFWg!5CAP)N-J_+}`9RNiGFreU`W-$=lDgsp;@l#5?axd`&K&;#f zg?Q7{pvmLC@B4ljhA9VQB8eZ|DyA$8pkL<;zA;Ao=Dgo-H^;*sUo!APtQnP2z_u-k6C;n6fBU3Y?3qX#Hy+iOX>vIITNk(~66oNyVfj||>9k3?&D6LHzbX=Wgb zUUO2TGVlq|kugUtfSu6_>o59rd@`Vg>V9Wy>e^WgpYZ1-z}UG_G;|DDT0|e9Kez3z z>!9Qr3UCjpF#we1WPe*8^biTa*M-z-NI&o>QMN#|!?2Ji|P6OQe00000NkvXXu0mjf(cj)} literal 0 HcmV?d00001 diff --git a/mods/ITEMS/mcl_potions/init.lua b/mods/ITEMS/mcl_potions/init.lua index 5b9f1fab3..1740f7f8d 100644 --- a/mods/ITEMS/mcl_potions/init.lua +++ b/mods/ITEMS/mcl_potions/init.lua @@ -214,6 +214,25 @@ minetest.register_craftitem("mcl_potions:water", { else return "mcl_potions:glass_bottle" end + + -- convert dirt to mud + elseif node.name == "mcl_core:dirt" or node.name == "mcl_core:coarse_dirt" then + + local pname = placer:get_player_name() + if minetest.is_protected(pointed_thing.under, pname) then + minetest.record_protection_violation(pointed_thing.under, pname) + return itemstack + end + + -- set the node to mud + minetest.set_node(pointed_thing.under, {name="mcl_core:mud"}) + minetest.sound_play("mcl_potions_bottle_pour", {pos=pointed_thing.under, gain=0.5, max_hear_range=16}, true) + + if minetest.is_creative_enabled(placer:get_player_name()) then + return itemstack + else + return "mcl_potions:glass_bottle" + end end end @@ -256,6 +275,24 @@ minetest.register_craftitem("mcl_potions:river_water", { -- Increase water level of cauldron by 1 minetest.set_node(pointed_thing.under, {name=cauldron}) minetest.sound_play("mcl_potions_bottle_pour", {pos=pointed_thing.under, gain=0.5, max_hear_range=16}, true) + if minetest.is_creative_enabled(placer:get_player_name()) then + return itemstack + else + return "mcl_potions:glass_bottle" + end + -- convert dirt to mud + elseif node.name == "mcl_core:dirt" or node.name == "mcl_core:coarse_dirt" then + + local pname = placer:get_player_name() + if minetest.is_protected(pointed_thing.under, pname) then + minetest.record_protection_violation(pointed_thing.under, pname) + return itemstack + end + + -- set the node to mud + minetest.set_node(pointed_thing.under, {name="mcl_core:mud"}) + minetest.sound_play("mcl_potions_bottle_pour", {pos=pointed_thing.under, gain=0.5, max_hear_range=16}, true) + if minetest.is_creative_enabled(placer:get_player_name()) then return itemstack else From 973dc7fa418576f27f93f8ccf338c11855c0d626 Mon Sep 17 00:00:00 2001 From: TheRandomLegoBrick Date: Wed, 6 Jul 2022 12:14:21 -0700 Subject: [PATCH 02/12] Add mud --- mods/ITEMS/mcl_core/nodes_base.lua | 4 ++-- mods/ITEMS/mcl_core/textures/mcl_core_mud.png | Bin 509 -> 483 bytes mods/ITEMS/mcl_potions/init.lua | 11 ++--------- 3 files changed, 4 insertions(+), 11 deletions(-) diff --git a/mods/ITEMS/mcl_core/nodes_base.lua b/mods/ITEMS/mcl_core/nodes_base.lua index f25794bd1..58c6902bf 100644 --- a/mods/ITEMS/mcl_core/nodes_base.lua +++ b/mods/ITEMS/mcl_core/nodes_base.lua @@ -459,12 +459,12 @@ mcl_core.register_snowed_node("mcl_core:podzol_snow", "mcl_core:podzol", nil, ni minetest.register_node("mcl_core:mud", { description = S("Mud"), - _doc_items_longdesc = S("Mud is a decorative block found in mangrove swamps. Mud can be obtained by using a watter bottle on a dirt or coarse dirt block."), + _doc_items_longdesc = S("Mud is a decorative block that generates in mangrove swamps. Mud can also be obtained by using water bottles on dirt or coarse dirt."), _doc_items_hidden = false, tiles = {"mcl_core_mud.png"}, is_ground_content = true, stack_max = 64, - groups = {handy=1, shovely=1, enderman_takable=1, building_block=1}, + groups = {handy=1,shovely=1, enderman_takable=1, building_block=1}, sounds = mcl_sounds.node_sound_dirt_defaults(), _mcl_blast_resistance = 0.5, _mcl_hardness = 0.5, diff --git a/mods/ITEMS/mcl_core/textures/mcl_core_mud.png b/mods/ITEMS/mcl_core/textures/mcl_core_mud.png index 060b8792aaa91e118ffdb8acf9ca152b2534a0c1..4952255ec168ad6395deafeb72caddbef7e6f356 100644 GIT binary patch delta 407 zcmV;I0cigH1LFgbR)2U&L_t(IPeqY!Pr@)1g-6%H%23d#pd`ll*@T3|5B~qZV_<{T z@v?%?c4ED0ntSd!_pKd#eXb`(VXZBzD(P)Dow|I4b3C0k+j2AR6WU#`2{%%bQEMt#B4xEBvfJ$qm|j_Co5PX5 zNGT&VH%A+5D`2`_ePq_+ZOh8#Ib2=)+WQcK%CnNTLenihe|!L=0MG%0kkqCrj-=!x zpub^1LIU`3NPju_jLJNEP!0mdHvDnilJb&bMD#`RL%P>*n*WcB1XAV4pnML6jG}r0 zIJ${bkO-o#%-`7Qaxn)m2w$$RVCtugGz+Ti^-O>&rHY^v&T*jwj_{EvQE zS#Ih&1dnTCN>CbW<~i!?t?OfqRtpG$UPif>xskC~4bkNxHHG zJQ bMN#|!?2Ji|P6OQe00000NkvXXu0mjfb*#|v diff --git a/mods/ITEMS/mcl_potions/init.lua b/mods/ITEMS/mcl_potions/init.lua index 1740f7f8d..4d7d76687 100644 --- a/mods/ITEMS/mcl_potions/init.lua +++ b/mods/ITEMS/mcl_potions/init.lua @@ -214,20 +214,16 @@ minetest.register_craftitem("mcl_potions:water", { else return "mcl_potions:glass_bottle" end - - -- convert dirt to mud elseif node.name == "mcl_core:dirt" or node.name == "mcl_core:coarse_dirt" then - local pname = placer:get_player_name() if minetest.is_protected(pointed_thing.under, pname) then minetest.record_protection_violation(pointed_thing.under, pname) return itemstack end - -- set the node to mud + -- convert to mud minetest.set_node(pointed_thing.under, {name="mcl_core:mud"}) minetest.sound_play("mcl_potions_bottle_pour", {pos=pointed_thing.under, gain=0.5, max_hear_range=16}, true) - if minetest.is_creative_enabled(placer:get_player_name()) then return itemstack else @@ -280,19 +276,16 @@ minetest.register_craftitem("mcl_potions:river_water", { else return "mcl_potions:glass_bottle" end - -- convert dirt to mud elseif node.name == "mcl_core:dirt" or node.name == "mcl_core:coarse_dirt" then - local pname = placer:get_player_name() if minetest.is_protected(pointed_thing.under, pname) then minetest.record_protection_violation(pointed_thing.under, pname) return itemstack end - -- set the node to mud + -- convert to mud minetest.set_node(pointed_thing.under, {name="mcl_core:mud"}) minetest.sound_play("mcl_potions_bottle_pour", {pos=pointed_thing.under, gain=0.5, max_hear_range=16}, true) - if minetest.is_creative_enabled(placer:get_player_name()) then return itemstack else From 0142b58edc3d9335abad936e131f48becef87968 Mon Sep 17 00:00:00 2001 From: TheRandomLegoBrick Date: Wed, 6 Jul 2022 12:43:54 -0700 Subject: [PATCH 03/12] Allow dispensers to convert dirt to mud --- mods/ITEMS/mcl_potions/init.lua | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/mods/ITEMS/mcl_potions/init.lua b/mods/ITEMS/mcl_potions/init.lua index 4d7d76687..8551442be 100644 --- a/mods/ITEMS/mcl_potions/init.lua +++ b/mods/ITEMS/mcl_potions/init.lua @@ -235,6 +235,17 @@ minetest.register_craftitem("mcl_potions:water", { -- Drink the water by default return minetest.do_item_eat(0, "mcl_potions:glass_bottle", itemstack, placer, pointed_thing) end, + _on_dispense = function(stack, pos, droppos) + local node = minetest.get_node(droppos) + if node.name == "mcl_core:dirt" or node.name == "mcl_core:coarse_dirt" then + minetest.set_node(droppos, {name = "mcl_core:mud"}) + minetest.sound_play("mcl_potions_bottle_pour", {pos=droppos, gain=0.5, max_hear_range=16}, true) + return ItemStack("mcl_potions:glass_bottle") + elseif node.name == "mcl_core:mud" then + return stack + end + end, + _dispense_into_walkable = true, on_secondary_use = minetest.item_eat(0, "mcl_potions:glass_bottle"), }) @@ -297,6 +308,17 @@ minetest.register_craftitem("mcl_potions:river_water", { -- Drink the water by default return minetest.do_item_eat(0, "mcl_potions:glass_bottle", itemstack, placer, pointed_thing) end, + _on_dispense = function(stack, pos, droppos) + local node = minetest.get_node(droppos) + if node.name == "mcl_core:dirt" or node.name == "mcl_core:coarse_dirt" then + minetest.set_node(droppos, {name = "mcl_core:mud"}) + minetest.sound_play("mcl_potions_bottle_pour", {pos=droppos, gain=0.5, max_hear_range=16}, true) + return ItemStack("mcl_potions:glass_bottle") + elseif node.name == "mcl_core:mud" then + return stack + end + end, + _dispense_into_walkable = true, on_secondary_use = minetest.item_eat(0, "mcl_potions:glass_bottle"), }) From be1427205e8c857555bd7cb4684ae286263b32e7 Mon Sep 17 00:00:00 2001 From: TheRandomLegoBrick Date: Wed, 6 Jul 2022 13:14:29 -0700 Subject: [PATCH 04/12] Move progress to separate mod and add packed mud --- mods/ITEMS/mcl_core/nodes_base.lua | 13 ------- mods/ITEMS/mcl_mud/init.lua | 34 ++++++++++++++++++ mods/ITEMS/mcl_mud/mod.conf | 2 ++ .../textures/mcl_mud.png} | Bin .../mcl_mud/textures/mcl_mud_packed_mud.png | Bin 0 -> 354 bytes mods/ITEMS/mcl_potions/init.lua | 12 +++---- 6 files changed, 42 insertions(+), 19 deletions(-) create mode 100644 mods/ITEMS/mcl_mud/init.lua create mode 100644 mods/ITEMS/mcl_mud/mod.conf rename mods/ITEMS/{mcl_core/textures/mcl_core_mud.png => mcl_mud/textures/mcl_mud.png} (100%) create mode 100644 mods/ITEMS/mcl_mud/textures/mcl_mud_packed_mud.png diff --git a/mods/ITEMS/mcl_core/nodes_base.lua b/mods/ITEMS/mcl_core/nodes_base.lua index 58c6902bf..957b1f24a 100644 --- a/mods/ITEMS/mcl_core/nodes_base.lua +++ b/mods/ITEMS/mcl_core/nodes_base.lua @@ -457,19 +457,6 @@ minetest.register_node("mcl_core:podzol", { }) mcl_core.register_snowed_node("mcl_core:podzol_snow", "mcl_core:podzol", nil, nil, false, S("Podzol with Snow")) -minetest.register_node("mcl_core:mud", { - description = S("Mud"), - _doc_items_longdesc = S("Mud is a decorative block that generates in mangrove swamps. Mud can also be obtained by using water bottles on dirt or coarse dirt."), - _doc_items_hidden = false, - tiles = {"mcl_core_mud.png"}, - is_ground_content = true, - stack_max = 64, - groups = {handy=1,shovely=1, enderman_takable=1, building_block=1}, - sounds = mcl_sounds.node_sound_dirt_defaults(), - _mcl_blast_resistance = 0.5, - _mcl_hardness = 0.5, -}) - minetest.register_node("mcl_core:dirt", { description = S("Dirt"), _doc_items_longdesc = S("Dirt acts as a soil for a few plants. When in light, this block may grow a grass or mycelium cover if such blocks are nearby."), diff --git a/mods/ITEMS/mcl_mud/init.lua b/mods/ITEMS/mcl_mud/init.lua new file mode 100644 index 000000000..00ca8b715 --- /dev/null +++ b/mods/ITEMS/mcl_mud/init.lua @@ -0,0 +1,34 @@ +local S = minetest.get_translator(minetest.get_current_modname()) + +minetest.register_node("mcl_mud:mud", { + description = S("Mud"), + _doc_items_longdesc = S("Mud is a decorative block that generates in mangrove swamps. Mud can also be obtained by using water bottles on dirt or coarse dirt."), + _doc_items_hidden = false, + tiles = {"mcl_mud.png"}, + is_ground_content = true, + stack_max = 64, + groups = {handy=1,shovely=1, enderman_takable=1, building_block=1}, + _mcl_blast_resistance = 0.5, + _mcl_hardness = 0.5, +}) + +minetest.register_node("mcl_mud:packed_mud", { + description = S("Packed Mud"), + _doc_items_longdesc = S("Packed mud is a decorative block used to craft mud bricks."), + _doc_items_hidden = false, + tiles = {"mcl_mud_packed_mud.png"}, + is_ground_content = true, + stack_max = 64, + groups = {handy=1,shovely=1, enderman_takable=1, building_block=1}, + _mcl_blast_resistance = 0.5, + _mcl_hardness = 0.5, +}) + +minetest.register_craft({ + type = "shapeless", + output = "mcl_mud:packed_mud", + recipe = { + "mcl_mud:mud", + "mcl_farming:wheat_item", + } +}) \ No newline at end of file diff --git a/mods/ITEMS/mcl_mud/mod.conf b/mods/ITEMS/mcl_mud/mod.conf new file mode 100644 index 000000000..44d96b06b --- /dev/null +++ b/mods/ITEMS/mcl_mud/mod.conf @@ -0,0 +1,2 @@ +author = TheRandomLegoBrick +description = Adds various mud blocks. \ No newline at end of file diff --git a/mods/ITEMS/mcl_core/textures/mcl_core_mud.png b/mods/ITEMS/mcl_mud/textures/mcl_mud.png similarity index 100% rename from mods/ITEMS/mcl_core/textures/mcl_core_mud.png rename to mods/ITEMS/mcl_mud/textures/mcl_mud.png diff --git a/mods/ITEMS/mcl_mud/textures/mcl_mud_packed_mud.png b/mods/ITEMS/mcl_mud/textures/mcl_mud_packed_mud.png new file mode 100644 index 0000000000000000000000000000000000000000..fd8624b3e75f7a744b4f20f6ecf880a28fd1b228 GIT binary patch literal 354 zcmV-o0iFJdP)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D0QX5mK~y+TMUlG> zfOakU_13qHYE_)Qj;{(mee3?am`dxqgAY-a9b_QB=zehnSJjd;N-4{-z^W1M8#Juzs;xK`ibfO20=N$=9@;YiWlbT72?Fr7R@S(K zGXyPpdEj7R8+X|E9f5=DNRW3H1|;e@5)`tv4r@sm2T`{GvS^m$mTmh3@{p`WtN3=P zrFEWX)^H5N89>fcfxG~Gsub}`ntV9etaB^K2=D;}Ry7Z1?Vc3cDB80^`R9?LXtS86 z$&7A1@vIb%7 literal 0 HcmV?d00001 diff --git a/mods/ITEMS/mcl_potions/init.lua b/mods/ITEMS/mcl_potions/init.lua index 8551442be..d36ed391e 100644 --- a/mods/ITEMS/mcl_potions/init.lua +++ b/mods/ITEMS/mcl_potions/init.lua @@ -222,7 +222,7 @@ minetest.register_craftitem("mcl_potions:water", { end -- convert to mud - minetest.set_node(pointed_thing.under, {name="mcl_core:mud"}) + minetest.set_node(pointed_thing.under, {name="mcl_mud:mud"}) minetest.sound_play("mcl_potions_bottle_pour", {pos=pointed_thing.under, gain=0.5, max_hear_range=16}, true) if minetest.is_creative_enabled(placer:get_player_name()) then return itemstack @@ -238,10 +238,10 @@ minetest.register_craftitem("mcl_potions:water", { _on_dispense = function(stack, pos, droppos) local node = minetest.get_node(droppos) if node.name == "mcl_core:dirt" or node.name == "mcl_core:coarse_dirt" then - minetest.set_node(droppos, {name = "mcl_core:mud"}) + minetest.set_node(droppos, {name = "mcl_mud:mud"}) minetest.sound_play("mcl_potions_bottle_pour", {pos=droppos, gain=0.5, max_hear_range=16}, true) return ItemStack("mcl_potions:glass_bottle") - elseif node.name == "mcl_core:mud" then + elseif node.name == "mcl_mud:mud" then return stack end end, @@ -295,7 +295,7 @@ minetest.register_craftitem("mcl_potions:river_water", { end -- convert to mud - minetest.set_node(pointed_thing.under, {name="mcl_core:mud"}) + minetest.set_node(pointed_thing.under, {name="mcl_mud:mud"}) minetest.sound_play("mcl_potions_bottle_pour", {pos=pointed_thing.under, gain=0.5, max_hear_range=16}, true) if minetest.is_creative_enabled(placer:get_player_name()) then return itemstack @@ -311,10 +311,10 @@ minetest.register_craftitem("mcl_potions:river_water", { _on_dispense = function(stack, pos, droppos) local node = minetest.get_node(droppos) if node.name == "mcl_core:dirt" or node.name == "mcl_core:coarse_dirt" then - minetest.set_node(droppos, {name = "mcl_core:mud"}) + minetest.set_node(droppos, {name = "mcl_mud:mud"}) minetest.sound_play("mcl_potions_bottle_pour", {pos=droppos, gain=0.5, max_hear_range=16}, true) return ItemStack("mcl_potions:glass_bottle") - elseif node.name == "mcl_core:mud" then + elseif node.name == "mcl_mud:mud" then return stack end end, From 0414493f5cd8e01d5d63dfaa4946f04f55a1779c Mon Sep 17 00:00:00 2001 From: TheRandomLegoBrick Date: Wed, 6 Jul 2022 20:27:13 -0700 Subject: [PATCH 05/12] Fix hardness and blast resistance for packed mud --- mods/ITEMS/mcl_mud/init.lua | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/mods/ITEMS/mcl_mud/init.lua b/mods/ITEMS/mcl_mud/init.lua index 00ca8b715..b6895c744 100644 --- a/mods/ITEMS/mcl_mud/init.lua +++ b/mods/ITEMS/mcl_mud/init.lua @@ -19,9 +19,9 @@ minetest.register_node("mcl_mud:packed_mud", { tiles = {"mcl_mud_packed_mud.png"}, is_ground_content = true, stack_max = 64, - groups = {handy=1,shovely=1, enderman_takable=1, building_block=1}, - _mcl_blast_resistance = 0.5, - _mcl_hardness = 0.5, + groups = {handy=1, pickaxey=1, enderman_takable=1, building_block=1}, + _mcl_blast_resistance = 3, + _mcl_hardness = 1, }) minetest.register_craft({ From 4f1960d6ef283601d265efe5e2944986a9dd926a Mon Sep 17 00:00:00 2001 From: TheRandomLegoBrick Date: Thu, 7 Jul 2022 08:29:32 -0700 Subject: [PATCH 06/12] Fix mod.conf --- mods/ITEMS/mcl_mud/mod.conf | 1 + 1 file changed, 1 insertion(+) diff --git a/mods/ITEMS/mcl_mud/mod.conf b/mods/ITEMS/mcl_mud/mod.conf index 44d96b06b..f4cdb505a 100644 --- a/mods/ITEMS/mcl_mud/mod.conf +++ b/mods/ITEMS/mcl_mud/mod.conf @@ -1,2 +1,3 @@ +name = mcl_mud author = TheRandomLegoBrick description = Adds various mud blocks. \ No newline at end of file From f3dd3e92fa12e69b499bee9ed97456222d2357a8 Mon Sep 17 00:00:00 2001 From: TheRandomLegoBrick Date: Thu, 7 Jul 2022 11:54:36 -0700 Subject: [PATCH 07/12] Add various mud brick blocks --- mods/ITEMS/mcl_mud/init.lua | 30 ++++++++++++++++-- .../ITEMS/mcl_mud/textures/mcl_mud_bricks.png | Bin 0 -> 438 bytes mods/ITEMS/mcl_stairs/mod.conf | 2 +- mods/ITEMS/mcl_stairs/register.lua | 2 ++ mods/ITEMS/mcl_walls/mod.conf | 2 +- mods/ITEMS/mcl_walls/register.lua | 1 + 6 files changed, 32 insertions(+), 5 deletions(-) create mode 100644 mods/ITEMS/mcl_mud/textures/mcl_mud_bricks.png diff --git a/mods/ITEMS/mcl_mud/init.lua b/mods/ITEMS/mcl_mud/init.lua index b6895c744..787655a56 100644 --- a/mods/ITEMS/mcl_mud/init.lua +++ b/mods/ITEMS/mcl_mud/init.lua @@ -6,10 +6,15 @@ minetest.register_node("mcl_mud:mud", { _doc_items_hidden = false, tiles = {"mcl_mud.png"}, is_ground_content = true, - stack_max = 64, groups = {handy=1,shovely=1, enderman_takable=1, building_block=1}, _mcl_blast_resistance = 0.5, _mcl_hardness = 0.5, + collision_box = { + type = "fixed", + fixed = { + {-8 / 16, -8 / 16, -8 / 16, 8 / 16, 7 / 16, 8 / 16}, + }, + }, }) minetest.register_node("mcl_mud:packed_mud", { @@ -17,13 +22,22 @@ minetest.register_node("mcl_mud:packed_mud", { _doc_items_longdesc = S("Packed mud is a decorative block used to craft mud bricks."), _doc_items_hidden = false, tiles = {"mcl_mud_packed_mud.png"}, - is_ground_content = true, - stack_max = 64, groups = {handy=1, pickaxey=1, enderman_takable=1, building_block=1}, _mcl_blast_resistance = 3, _mcl_hardness = 1, }) +minetest.register_node("mcl_mud:mud_bricks", { + description = S("Mud Bricks"), + _doc_items_longdesc = S("Decorative block crafted from packed mud."), + _doc_items_hidden = false, + tiles = {"mcl_mud_bricks.png"}, + groups = {handy=1, pickaxey=1, building_block=1}, + _mcl_blast_resistance = 3, + _mcl_hardness = 1.5, +}) + +-- packed mud minetest.register_craft({ type = "shapeless", output = "mcl_mud:packed_mud", @@ -31,4 +45,14 @@ minetest.register_craft({ "mcl_mud:mud", "mcl_farming:wheat_item", } +}) + +-- mud bricks +minetest.register_craft({ + type = "shaped", + output = "mcl_mud:mud_bricks 4", + recipe = { + {"mcl_mud:packed_mud", "mcl_mud:packed_mud"}, + {"mcl_mud:packed_mud", "mcl_mud:packed_mud"} + } }) \ No newline at end of file diff --git a/mods/ITEMS/mcl_mud/textures/mcl_mud_bricks.png b/mods/ITEMS/mcl_mud/textures/mcl_mud_bricks.png new file mode 100644 index 0000000000000000000000000000000000000000..8df3bacd4596e7c4d69ee2019f26d261bedcc53c GIT binary patch literal 438 zcmV;n0ZIOeP)Px#1ZP1_K>z@;j|==^1poj532;bRa{vGi!vFvd!vV){sAK>D0ZU0lK~y+Tb&<_Z z!!Qtp9sjgVp*_%7Kpc1oB#sCPaX_4S{~H_{njgnW`0TZ;s;HxpwO&s)_DuEp_NtUx ztsLure1HEO4tIHzpz8!ars z?zig)NWqq3n&u?SKzeFB22tlR<1#YRRgVAEn>Aa0B}am(nivP;2OGOa#{i^$93dU( z{U~a{)+`2@d3?AJAq?I}&SRLT;6vMX!{E_*@2$1eOT>((dU<~8+cuBcZlwUFSs~_0ru>g(z5byW#&Dsjxtbl2qUK$EG0 gAu6u8ehH=i0DYUz#p6Yi$^ZZW07*qoM6N<$f*-@aNdN!< literal 0 HcmV?d00001 diff --git a/mods/ITEMS/mcl_stairs/mod.conf b/mods/ITEMS/mcl_stairs/mod.conf index a357c2c79..2fb3180b2 100644 --- a/mods/ITEMS/mcl_stairs/mod.conf +++ b/mods/ITEMS/mcl_stairs/mod.conf @@ -1,2 +1,2 @@ name = mcl_stairs -depends = mcl_core, mcl_sounds, mcl_nether, mcl_end, mcl_ocean +depends = mcl_core, mcl_sounds, mcl_nether, mcl_end, mcl_ocean, mcl_mud diff --git a/mods/ITEMS/mcl_stairs/register.lua b/mods/ITEMS/mcl_stairs/register.lua index 5de380585..eee4c5dc2 100644 --- a/mods/ITEMS/mcl_stairs/register.lua +++ b/mods/ITEMS/mcl_stairs/register.lua @@ -138,6 +138,8 @@ mcl_stairs.register_slab("purpur_block", "group:purpur_block", mcl_stairs.register_stair_and_slab_simple("prismarine", "mcl_ocean:prismarine", S("Prismarine Stairs"), S("Prismarine Slab"), S("Double Prismarine Slab")) +mcl_stairs.register_stair_and_slab_simple("mud_brick", "mcl_mud:mud_bricks", S("Mud Brick Stair"), S("Mud Brick Slab"), S("Double Mud Brick Slab")) + mcl_stairs.register_stair_and_slab_simple("prismarine_brick", "mcl_ocean:prismarine_brick", S("Prismarine Brick Stairs"), S("Prismarine Brick Slab"), S("Double Prismarine Brick Slab")) mcl_stairs.register_stair_and_slab_simple("prismarine_dark", "mcl_ocean:prismarine_dark", S("Dark Prismarine Stairs"), S("Dark Prismarine Slab"), S("Double Dark Prismarine Slab")) diff --git a/mods/ITEMS/mcl_walls/mod.conf b/mods/ITEMS/mcl_walls/mod.conf index 8839312de..b6b221007 100644 --- a/mods/ITEMS/mcl_walls/mod.conf +++ b/mods/ITEMS/mcl_walls/mod.conf @@ -1,3 +1,3 @@ name = mcl_walls -depends = mcl_core, mcl_end, mcl_ocean, mcl_nether, mcl_sounds +depends = mcl_core, mcl_end, mcl_ocean, mcl_nether, mcl_sounds, mcl_mud optional_depends = doc diff --git a/mods/ITEMS/mcl_walls/register.lua b/mods/ITEMS/mcl_walls/register.lua index 483af493e..96a1b9b9f 100644 --- a/mods/ITEMS/mcl_walls/register.lua +++ b/mods/ITEMS/mcl_walls/register.lua @@ -14,3 +14,4 @@ mcl_walls.register_wall("mcl_walls:prismarine", S("Prismarine Wall"), "mcl_ocean mcl_walls.register_wall("mcl_walls:endbricks", S("End Stone Brick Wall"), "mcl_end:end_bricks") mcl_walls.register_wall("mcl_walls:netherbrick", S("Nether Brick Wall"), "mcl_nether:nether_brick") mcl_walls.register_wall("mcl_walls:rednetherbrick", S("Red Nether Brick Wall"), "mcl_nether:red_nether_brick") +mcl_walls.register_wall("mcl_walls:mudbrick", S("Mud Brick Wall"), "mcl_mud:mud_bricks") \ No newline at end of file From 06f8688f2603a842531e71b10c4e5cab7fe44a3b Mon Sep 17 00:00:00 2001 From: TheRandomLegoBrick Date: Thu, 7 Jul 2022 15:16:43 -0700 Subject: [PATCH 08/12] Improve mud bricks and packed mud textures --- mods/ITEMS/mcl_mud/textures/mcl_mud_bricks.png | Bin 438 -> 465 bytes .../mcl_mud/textures/mcl_mud_packed_mud.png | Bin 354 -> 487 bytes 2 files changed, 0 insertions(+), 0 deletions(-) diff --git a/mods/ITEMS/mcl_mud/textures/mcl_mud_bricks.png b/mods/ITEMS/mcl_mud/textures/mcl_mud_bricks.png index 8df3bacd4596e7c4d69ee2019f26d261bedcc53c..c102118e7e099ae9f4f73fc6015f8344da780533 100644 GIT binary patch delta 388 zcmV-~0ek+o1JMJJR)1zmL_t(IPj!(!Ps2bAhA($%0z!NUgv10wh)Q(hk1(*avhxr4 zl?+G>Fd!C6AuY)zxeL$5*B}a5Z&QD~w$FBQdvmS+mxsrflcR%Z^kU8@r`FoGZR%h0 z_Ffe8YJYG0c{VMo(%S~6Zk-1oZEfpT;G7r4no8wf17YesOMg?Nz3)op0H!f97U{jf zk*LOiv964O4zt=yj8L9u;oDasO52dY9|iCNsCag=obMo1DXRt!X?juGs%`)Z7&!$* zk94KNSe+M6a&>tjUTbSnAz&DV62 zkSwPR+qBxVV{VBpv*M&JB}k(pQHqiu68I65I|S;o1A<>d5+xt}xI-lJo~3gD9@BIn i-eG0yE2sEwtJD{}p)Sg%uSyjF0000fz5 z8k!%+N%-uwtg5J^k+oh=Hug;Q`Sz-mTCE)Ge|&%c91eGRlc4JaW2~|j>n6du70eQ) z=of0|?9H}@`}&r(4+C0bG|ch@jzk%|$L_c52S~w|Vw&b8%YQ(6YC8r|=P~0lGSXF! z|J0i`TYe=+f~lGq2jd4DyGF+Vq<$PB9q9ciYQWYk2AO$$xDO!=-bc=3n5W=F+jhg? z(RuH!wbV<*jHY^de(KvckJ)ae0Hs+Vr`6ZTyX@rxP1EdlyKAukjr|bs_xr4iYigd` zU&7J6LtcDg3u3Rt&61K>f|D9gN&*)k4e?$KMM41`;!e_M8i1P@#Qg!Y94@y-pnG(xa| z`rowS%g$0FD{}0yJ)SmweR)pKr|G7)pRRU=p1~zub9qklGW!L8Ul#@r`~2>OCWNJB znl7=7AO^bL$4Zdy_;A0hYY3sPV(9b}E3?dX-E?=mXHMZZzyW&Gn9~dpbTci?m-LmT+l~sB2fC z3|T@LdLMUCB6Ds-K*KT-Ku$ggp74}nkYO5zgBi_G&@5FND4IcC za=(2vKv|bYIDcfVwEq=Jvma@4n`qGv7ggwJ@;FRfxPvnUEqQt1U|<_}*njsOfrIKukardaBhvpf&c&j From cbe0f80d68711cbcdfe4cf3853aba8c73180160a Mon Sep 17 00:00:00 2001 From: TheRandomLegoBrick Date: Thu, 7 Jul 2022 16:50:51 -0700 Subject: [PATCH 09/12] Move redundant water bottle code to functions --- mods/ITEMS/mcl_potions/init.lua | 190 +++++++++++++------------------- 1 file changed, 74 insertions(+), 116 deletions(-) diff --git a/mods/ITEMS/mcl_potions/init.lua b/mods/ITEMS/mcl_potions/init.lua index d36ed391e..2ea7e2879 100644 --- a/mods/ITEMS/mcl_potions/init.lua +++ b/mods/ITEMS/mcl_potions/init.lua @@ -176,6 +176,76 @@ local fill_cauldron = function(cauldron, water_type) end end +-- function to set node and empty water bottle (used for cauldrons and mud) +local function set_node_empty_bottle(itemstack, placer, pointed_thing, newitemstring) + local pname = placer:get_player_name() + if minetest.is_protected(pointed_thing.under, pname) then + minetest.record_protection_violation(pointed_thing.under, pname) + return itemstack + end + + -- set the node to `itemstring` + minetest.set_node(pointed_thing.under, {name=newitemstring}) + + -- play sound + minetest.sound_play("mcl_potions_bottle_pour", {pos=pointed_thing.under, gain=0.5, max_hear_range=16}, true) + + -- + if minetest.is_creative_enabled(placer:get_player_name()) then + return itemstack + else + return "mcl_potions:glass_bottle" + end +end + +-- used for water bottles and river water bottles +local function dispense_water_bottle(stack, pos, droppos) + local node = minetest.get_node(droppos) + if node.name == "mcl_core:dirt" or node.name == "mcl_core:coarse_dirt" then + -- convert dirt/coarse dirt to mud + minetest.set_node(droppos, {name = "mcl_mud:mud"}) + minetest.sound_play("mcl_potions_bottle_pour", {pos=droppos, gain=0.5, max_hear_range=16}, true) + return ItemStack("mcl_potions:glass_bottle") + + elseif node.name == "mcl_mud:mud" then + -- dont dispense into mud + return stack + end +end + +-- on_place function for `mcl_potions:water` and `mcl_potions:river_water` + +local function water_bottle_on_place(itemstack, placer, pointed_thing) + if pointed_thing.type == "node" then + local node = minetest.get_node(pointed_thing.under) + local def = minetest.registered_nodes[node.name] + + -- Call on_rightclick if the pointed node defines it + if placer and not placer:get_player_control().sneak then + if def and def.on_rightclick then + return def.on_rightclick(pointed_thing.under, node, placer, itemstack) or itemstack + end + end + + local cauldron = nil + if itemstack:get_name() == "mcl_potions:water" then -- regular water + cauldron = fill_cauldron(node.name, "mcl_core:water_source") + elseif itemstack:get_name() == "mcl_potions:river_water" then -- river water + cauldron = fill_cauldron(node.name, "mclx_core:river_water_source") + end + + + if cauldron then + set_node_empty_bottle(itemstack, placer, pointed_thing, cauldron) + elseif node.name == "mcl_core:dirt" or node.name == "mcl_core:coarse_dirt" then + set_node_empty_bottle(itemstack, placer, pointed_thing, "mcl_mud:mud") + end + end + + -- Drink the water by default + return minetest.do_item_eat(0, "mcl_potions:glass_bottle", itemstack, placer, pointed_thing) +end + -- Itemstring of potions is “mcl_potions:” minetest.register_craftitem("mcl_potions:water", { @@ -187,64 +257,8 @@ minetest.register_craftitem("mcl_potions:water", { inventory_image = potion_image("#0022FF"), wield_image = potion_image("#0022FF"), groups = {brewitem=1, food=3, can_eat_when_full=1, water_bottle=1}, - on_place = function(itemstack, placer, pointed_thing) - if pointed_thing.type == "node" then - local node = minetest.get_node(pointed_thing.under) - local def = minetest.registered_nodes[node.name] - - -- Call on_rightclick if the pointed node defines it - if placer and not placer:get_player_control().sneak then - if def and def.on_rightclick then - return def.on_rightclick(pointed_thing.under, node, placer, itemstack) or itemstack - end - end - - local cauldron = fill_cauldron(node.name, "mcl_core:water_source") - if cauldron then - local pname = placer:get_player_name() - if minetest.is_protected(pointed_thing.under, pname) then - minetest.record_protection_violation(pointed_thing.under, pname) - return itemstack - end - -- Increase water level of cauldron by 1 - minetest.set_node(pointed_thing.under, {name=cauldron}) - minetest.sound_play("mcl_potions_bottle_pour", {pos=pointed_thing.under, gain=0.5, max_hear_range=16}, true) - if minetest.is_creative_enabled(placer:get_player_name()) then - return itemstack - else - return "mcl_potions:glass_bottle" - end - elseif node.name == "mcl_core:dirt" or node.name == "mcl_core:coarse_dirt" then - local pname = placer:get_player_name() - if minetest.is_protected(pointed_thing.under, pname) then - minetest.record_protection_violation(pointed_thing.under, pname) - return itemstack - end - - -- convert to mud - minetest.set_node(pointed_thing.under, {name="mcl_mud:mud"}) - minetest.sound_play("mcl_potions_bottle_pour", {pos=pointed_thing.under, gain=0.5, max_hear_range=16}, true) - if minetest.is_creative_enabled(placer:get_player_name()) then - return itemstack - else - return "mcl_potions:glass_bottle" - end - end - end - - -- Drink the water by default - return minetest.do_item_eat(0, "mcl_potions:glass_bottle", itemstack, placer, pointed_thing) - end, - _on_dispense = function(stack, pos, droppos) - local node = minetest.get_node(droppos) - if node.name == "mcl_core:dirt" or node.name == "mcl_core:coarse_dirt" then - minetest.set_node(droppos, {name = "mcl_mud:mud"}) - minetest.sound_play("mcl_potions_bottle_pour", {pos=droppos, gain=0.5, max_hear_range=16}, true) - return ItemStack("mcl_potions:glass_bottle") - elseif node.name == "mcl_mud:mud" then - return stack - end - end, + on_place = water_bottle_on_place, + _on_dispense = dispense_water_bottle, _dispense_into_walkable = true, on_secondary_use = minetest.item_eat(0, "mcl_potions:glass_bottle"), }) @@ -260,64 +274,8 @@ minetest.register_craftitem("mcl_potions:river_water", { inventory_image = potion_image("#0044FF"), wield_image = potion_image("#0044FF"), groups = {brewitem=1, food=3, can_eat_when_full=1, water_bottle=1}, - on_place = function(itemstack, placer, pointed_thing) - if pointed_thing.type == "node" then - local node = minetest.get_node(pointed_thing.under) - local def = minetest.registered_nodes[node.name] - - -- Call on_rightclick if the pointed node defines it - if placer and not placer:get_player_control().sneak then - if def and def.on_rightclick then - return def.on_rightclick(pointed_thing.under, node, placer, itemstack) or itemstack - end - end - - local cauldron = fill_cauldron(node.name, "mclx_core:river_water_source") - if cauldron then - local pname = placer:get_player_name() - if minetest.is_protected(pointed_thing.under, pname) then - minetest.record_protection_violation(pointed_thing.under, pname) - return itemstack - end - -- Increase water level of cauldron by 1 - minetest.set_node(pointed_thing.under, {name=cauldron}) - minetest.sound_play("mcl_potions_bottle_pour", {pos=pointed_thing.under, gain=0.5, max_hear_range=16}, true) - if minetest.is_creative_enabled(placer:get_player_name()) then - return itemstack - else - return "mcl_potions:glass_bottle" - end - elseif node.name == "mcl_core:dirt" or node.name == "mcl_core:coarse_dirt" then - local pname = placer:get_player_name() - if minetest.is_protected(pointed_thing.under, pname) then - minetest.record_protection_violation(pointed_thing.under, pname) - return itemstack - end - - -- convert to mud - minetest.set_node(pointed_thing.under, {name="mcl_mud:mud"}) - minetest.sound_play("mcl_potions_bottle_pour", {pos=pointed_thing.under, gain=0.5, max_hear_range=16}, true) - if minetest.is_creative_enabled(placer:get_player_name()) then - return itemstack - else - return "mcl_potions:glass_bottle" - end - end - end - - -- Drink the water by default - return minetest.do_item_eat(0, "mcl_potions:glass_bottle", itemstack, placer, pointed_thing) - end, - _on_dispense = function(stack, pos, droppos) - local node = minetest.get_node(droppos) - if node.name == "mcl_core:dirt" or node.name == "mcl_core:coarse_dirt" then - minetest.set_node(droppos, {name = "mcl_mud:mud"}) - minetest.sound_play("mcl_potions_bottle_pour", {pos=droppos, gain=0.5, max_hear_range=16}, true) - return ItemStack("mcl_potions:glass_bottle") - elseif node.name == "mcl_mud:mud" then - return stack - end - end, + on_place = water_bottle_on_place, + _on_dispense = dispense_water_bottle, _dispense_into_walkable = true, on_secondary_use = minetest.item_eat(0, "mcl_potions:glass_bottle"), From c26a9aded54dea2b33049cfacce146d7ee829880 Mon Sep 17 00:00:00 2001 From: TheRandomLegoBrick Date: Fri, 8 Jul 2022 09:18:42 -0700 Subject: [PATCH 10/12] Add mud sounds --- mods/ITEMS/mcl_mud/init.lua | 8 +++++++- mods/ITEMS/mcl_mud/mod.conf | 3 ++- mods/ITEMS/mcl_mud/sounds/mud_footsteps.ogg | Bin 0 -> 6071 bytes mods/ITEMS/mcl_mud/sounds/mud_place_dug.ogg | Bin 0 -> 5927 bytes 4 files changed, 9 insertions(+), 2 deletions(-) create mode 100644 mods/ITEMS/mcl_mud/sounds/mud_footsteps.ogg create mode 100644 mods/ITEMS/mcl_mud/sounds/mud_place_dug.ogg diff --git a/mods/ITEMS/mcl_mud/init.lua b/mods/ITEMS/mcl_mud/init.lua index 787655a56..d1d1eb330 100644 --- a/mods/ITEMS/mcl_mud/init.lua +++ b/mods/ITEMS/mcl_mud/init.lua @@ -6,6 +6,11 @@ minetest.register_node("mcl_mud:mud", { _doc_items_hidden = false, tiles = {"mcl_mud.png"}, is_ground_content = true, + sounds = { + footstep = {name="mud_footsteps", gain=1}, + dug = {name="mud_place_dug", gain=1}, + place = {name="mud_place_dug", gain=1}, + }, groups = {handy=1,shovely=1, enderman_takable=1, building_block=1}, _mcl_blast_resistance = 0.5, _mcl_hardness = 0.5, @@ -22,7 +27,8 @@ minetest.register_node("mcl_mud:packed_mud", { _doc_items_longdesc = S("Packed mud is a decorative block used to craft mud bricks."), _doc_items_hidden = false, tiles = {"mcl_mud_packed_mud.png"}, - groups = {handy=1, pickaxey=1, enderman_takable=1, building_block=1}, + groups = {handy=1, pickaxey=1, building_block=1}, + sounds = mcl_sounds.node_sound_dirt_defaults(), _mcl_blast_resistance = 3, _mcl_hardness = 1, }) diff --git a/mods/ITEMS/mcl_mud/mod.conf b/mods/ITEMS/mcl_mud/mod.conf index f4cdb505a..70f48ef1e 100644 --- a/mods/ITEMS/mcl_mud/mod.conf +++ b/mods/ITEMS/mcl_mud/mod.conf @@ -1,3 +1,4 @@ name = mcl_mud author = TheRandomLegoBrick -description = Adds various mud blocks. \ No newline at end of file +description = Adds various mud blocks. +depends = mcl_sounds \ No newline at end of file diff --git a/mods/ITEMS/mcl_mud/sounds/mud_footsteps.ogg b/mods/ITEMS/mcl_mud/sounds/mud_footsteps.ogg new file mode 100644 index 0000000000000000000000000000000000000000..e18c93965488f58b80d3c3eae619eb56195cdfa4 GIT binary patch literal 6071 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 literal 0 HcmV?d00001 diff --git a/mods/ITEMS/mcl_mud/sounds/mud_place_dug.ogg b/mods/ITEMS/mcl_mud/sounds/mud_place_dug.ogg new file mode 100644 index 0000000000000000000000000000000000000000..5a93ca14a86eb6d08e3c8add56efb5cbc1439e27 GIT binary patch literal 5927 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 Date: Fri, 8 Jul 2022 10:02:06 -0700 Subject: [PATCH 11/12] Add license --- mods/ITEMS/mcl_mud/README.txt | 21 +++++++++++++++++++++ mods/ITEMS/mcl_mud/init.lua | 1 + 2 files changed, 22 insertions(+) create mode 100644 mods/ITEMS/mcl_mud/README.txt diff --git a/mods/ITEMS/mcl_mud/README.txt b/mods/ITEMS/mcl_mud/README.txt new file mode 100644 index 000000000..fe0a3f91c --- /dev/null +++ b/mods/ITEMS/mcl_mud/README.txt @@ -0,0 +1,21 @@ +License of Code +---------------- + +Author: TheRandomLegoBrick +License: GPLv3 +See https://www.gnu.org/licenses/gpl-3.0.en.html for further information + + +License of Media (textures & sounds) +------------------------------------- + +Author: TheRandomLegoBrick +Liscense: CC0 1.0 Universal (CC0 1.0) +Files: + mud_footsteps.ogg + mud_place_dug.ogg + mcl_mud_bricks.png + mcl_mud_packed_mud.png + mcl_mud.png + +See https://creativecommons.org/publicdomain/zero/1.0/legalcode for further information \ No newline at end of file diff --git a/mods/ITEMS/mcl_mud/init.lua b/mods/ITEMS/mcl_mud/init.lua index d1d1eb330..e938ae5f2 100644 --- a/mods/ITEMS/mcl_mud/init.lua +++ b/mods/ITEMS/mcl_mud/init.lua @@ -39,6 +39,7 @@ minetest.register_node("mcl_mud:mud_bricks", { _doc_items_hidden = false, tiles = {"mcl_mud_bricks.png"}, groups = {handy=1, pickaxey=1, building_block=1}, + sounds = mcl_sounds.node_sound_stone_defaults(), _mcl_blast_resistance = 3, _mcl_hardness = 1.5, }) From 05186c9a197c36df06a0934c4eb1caef2f82640c Mon Sep 17 00:00:00 2001 From: TheRandomLegoBrick Date: Fri, 8 Jul 2022 10:31:38 -0700 Subject: [PATCH 12/12] Non-copyright-infringey mud texture --- mods/ITEMS/mcl_mud/textures/mcl_mud.png | Bin 483 -> 506 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/mods/ITEMS/mcl_mud/textures/mcl_mud.png b/mods/ITEMS/mcl_mud/textures/mcl_mud.png index 4952255ec168ad6395deafeb72caddbef7e6f356..6298311247dc0f003a207eaebf4dc69a68cd3465 100644 GIT binary patch delta 430 zcmV;f0a5Q07*qoM6N<$f^6;3eER6WU#`2{%%bQEMt#B4xEBvfJ$qm|j_Co5PX5 zNGT&VH%A+5D`2`_ePq_+ZOh8#Ib2=)+WQcK%CnNTLenihe|!L=0MG%0kkqCrj-=!x zpub^1LIU`3NPju_jLJNEP!0mdHvDnilJb&bMD#`RL%P>*n*WcB1XAV4pnML6jG}r0 zIJ${bkO-o#%-`7Qaxn)m2w$ B#<~Ci