From 0664570d227a4bb12a62816581adb72d9c053b71 Mon Sep 17 00:00:00 2001 From: paramat Date: Tue, 23 Aug 2016 20:33:37 +0100 Subject: [PATCH 01/99] Creative: Make dig times near-identical for nodes of all levels Dig time is modified according to difference (leveldiff) between tool 'maxlevel' and node 'level'. Digtime is divided by the larger of leveldiff and 1. In creative mode, where the hand is redefined to have maxlevel 3, this results in higher level nodes taking significantly longer to break. Now, to speed up digging, hand 'maxlevel' and 'digtime' have been increased such that nodes of differing levels have an insignificant effect on digtime. Dig time for all nodes is now identical to that of, for example, dirt nodes. --- mods/creative/init.lua | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/mods/creative/init.lua b/mods/creative/init.lua index cc7f81c8..3affc3d9 100644 --- a/mods/creative/init.lua +++ b/mods/creative/init.lua @@ -222,8 +222,8 @@ minetest.register_on_player_receive_fields(function(player, formname, fields) end) if creative_mode then - local digtime = 0.5 - local caps = {times = {digtime, digtime, digtime}, uses = 0, maxlevel = 3} + local digtime = 42 + local caps = {times = {digtime, digtime, digtime}, uses = 0, maxlevel = 256} minetest.register_item(":", { type = "none", From 1d6fbe04cda32b05d7d4398f657dba36b470ae73 Mon Sep 17 00:00:00 2001 From: Auke Kok Date: Fri, 26 Aug 2016 11:00:49 -0700 Subject: [PATCH 02/99] Default/furnace: Indicate dst full Indicate in the infotext when a furnace has filled up `dst` but still has fuel. The info text shows the item as 100% with added "(output full)" text, indicating that while it can cook the item, there is no place for it in the `dst`. Emptying the `dst` should make the item cook immediately and furnace resume normal operation. --- mods/default/furnace.lua | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/mods/default/furnace.lua b/mods/default/furnace.lua index b5bca889..17c9280d 100644 --- a/mods/default/furnace.lua +++ b/mods/default/furnace.lua @@ -175,7 +175,11 @@ local function furnace_node_timer(pos, elapsed) local item_percent = 0 if cookable then item_percent = math.floor(src_time / cooked.time * 100) - item_state = item_percent .. "%" + if item_percent > 100 then + item_state = "100% (output full)" + else + item_state = item_percent .. "%" + end else if srclist[1]:is_empty() then item_state = "Empty" From f844a4f37987cca4c74cbd3d78b5f6ef839a8056 Mon Sep 17 00:00:00 2001 From: paramat Date: Thu, 1 Sep 2016 05:56:21 +0100 Subject: [PATCH 03/99] Default: Vary wood burn times according to wood density Retain definitions for node groups to support mods. Burn time is unchanged for applewood, and increases in the order: aspen, pine, apple, acacia, jungle which is also the order of wood colour darkness. --- mods/default/crafting.lua | 185 +++++++++++++++++++++++++++++--------- 1 file changed, 143 insertions(+), 42 deletions(-) diff --git a/mods/default/crafting.lua b/mods/default/crafting.lua index 1151f47b..7ce62d2b 100644 --- a/mods/default/crafting.lua +++ b/mods/default/crafting.lua @@ -780,12 +780,155 @@ minetest.register_craft({ -- Fuels -- +-- Support use of group:tree minetest.register_craft({ type = "fuel", recipe = "group:tree", burntime = 30, }) +-- Burn time for all woods are in order of wood density, +-- which is also the order of wood colour darkness: +-- aspen, pine, apple, acacia, jungle + +minetest.register_craft({ + type = "fuel", + recipe = "default:aspen_tree", + burntime = 22, +}) + +minetest.register_craft({ + type = "fuel", + recipe = "default:pine_tree", + burntime = 26, +}) + +minetest.register_craft({ + type = "fuel", + recipe = "default:tree", + burntime = 30, +}) + +minetest.register_craft({ + type = "fuel", + recipe = "default:acacia_tree", + burntime = 34, +}) + +minetest.register_craft({ + type = "fuel", + recipe = "default:jungletree", + burntime = 38, +}) + + +-- Support use of group:wood +minetest.register_craft({ + type = "fuel", + recipe = "group:wood", + burntime = 7, +}) + +minetest.register_craft({ + type = "fuel", + recipe = "default:aspen_wood", + burntime = 5, +}) + +minetest.register_craft({ + type = "fuel", + recipe = "default:pine_wood", + burntime = 6, +}) + +minetest.register_craft({ + type = "fuel", + recipe = "default:wood", + burntime = 7, +}) + +minetest.register_craft({ + type = "fuel", + recipe = "default:acacia_wood", + burntime = 8, +}) + +minetest.register_craft({ + type = "fuel", + recipe = "default:junglewood", + burntime = 9, +}) + + +-- Support use of group:sapling +minetest.register_craft({ + type = "fuel", + recipe = "group:sapling", + burntime = 10, +}) + +minetest.register_craft({ + type = "fuel", + recipe = "default:aspen_sapling", + burntime = 8, +}) + +minetest.register_craft({ + type = "fuel", + recipe = "default:pine_sapling", + burntime = 9, +}) + +minetest.register_craft({ + type = "fuel", + recipe = "default:sapling", + burntime = 10, +}) + +minetest.register_craft({ + type = "fuel", + recipe = "default:acacia_sapling", + burntime = 11, +}) + +minetest.register_craft({ + type = "fuel", + recipe = "default:junglesapling", + burntime = 12, +}) + + +minetest.register_craft({ + type = "fuel", + recipe = "default:fence_aspen_wood", + burntime = 11, +}) + +minetest.register_craft({ + type = "fuel", + recipe = "default:fence_pine_wood", + burntime = 13, +}) + +minetest.register_craft({ + type = "fuel", + recipe = "default:fence_wood", + burntime = 15, +}) + +minetest.register_craft({ + type = "fuel", + recipe = "default:fence_acacia_wood", + burntime = 17, +}) + +minetest.register_craft({ + type = "fuel", + recipe = "default:fence_junglewood", + burntime = 19, +}) + + minetest.register_craft({ type = "fuel", recipe = "default:junglegrass", @@ -816,48 +959,12 @@ minetest.register_craft({ burntime = 30, }) -minetest.register_craft({ - type = "fuel", - recipe = "default:fence_wood", - burntime = 15, -}) - -minetest.register_craft({ - type = "fuel", - recipe = "default:fence_acacia_wood", - burntime = 15, -}) - -minetest.register_craft({ - type = "fuel", - recipe = "default:fence_junglewood", - burntime = 15, -}) - -minetest.register_craft({ - type = "fuel", - recipe = "default:fence_pine_wood", - burntime = 15, -}) - -minetest.register_craft({ - type = "fuel", - recipe = "default:fence_aspen_wood", - burntime = 15, -}) - minetest.register_craft({ type = "fuel", recipe = "default:ladder_wood", burntime = 5, }) -minetest.register_craft({ - type = "fuel", - recipe = "group:wood", - burntime = 7, -}) - minetest.register_craft({ type = "fuel", recipe = "default:lava_source", @@ -888,12 +995,6 @@ minetest.register_craft({ burntime = 30, }) -minetest.register_craft({ - type = "fuel", - recipe = "group:sapling", - burntime = 10, -}) - minetest.register_craft({ type = "fuel", recipe = "default:apple", From e9d26e2ee31b4687c91f3e9a811f49b905a3a529 Mon Sep 17 00:00:00 2001 From: paramat Date: Sun, 4 Sep 2016 06:31:01 +0100 Subject: [PATCH 04/99] Licenses: Change WTFPL to MIT (part 1) Part 1: All mods except default and xpanes. Add license.txt files. Add missing README.txt files. Check and update copyright years for all contributors. Improve text format and make more consistent. --- mods/beds/README.txt | 18 +-- mods/beds/license.txt | 24 ++++ mods/boats/README.txt | 20 ++-- mods/boats/license.txt | 25 +++++ mods/bones/README.txt | 19 ++-- mods/bones/license.txt | 25 +++++ mods/creative/README.txt | 19 ++-- mods/creative/license.txt | 26 +++++ mods/doors/README.txt | 63 ++++++----- mods/doors/license.txt | 163 ++++++++++++++++++++++++++++ mods/dye/README.txt | 15 +-- mods/dye/license.txt | 24 ++++ mods/farming/README.txt | 34 ++---- mods/farming/license.txt | 59 ++++++++++ mods/flowers/README.txt | 29 ++--- mods/flowers/license.txt | 25 +++++ mods/give_initial_stuff/README.txt | 7 ++ mods/give_initial_stuff/license.txt | 24 ++++ mods/sethome/README.txt | 7 ++ mods/sethome/license.txt | 24 ++++ mods/tnt/README.txt | 33 ++---- mods/tnt/license.txt | 27 +++++ mods/walls/README.txt | 7 ++ mods/walls/license.txt | 12 ++ mods/wool/README.txt | 24 ++-- mods/wool/license.txt | 59 ++++++++++ 26 files changed, 641 insertions(+), 171 deletions(-) create mode 100644 mods/beds/license.txt create mode 100644 mods/boats/license.txt create mode 100644 mods/bones/license.txt create mode 100644 mods/creative/license.txt create mode 100644 mods/doors/license.txt create mode 100644 mods/dye/license.txt create mode 100644 mods/farming/license.txt create mode 100644 mods/flowers/license.txt create mode 100644 mods/give_initial_stuff/README.txt create mode 100644 mods/give_initial_stuff/license.txt create mode 100644 mods/sethome/README.txt create mode 100644 mods/sethome/license.txt create mode 100644 mods/tnt/license.txt create mode 100644 mods/walls/README.txt create mode 100644 mods/walls/license.txt create mode 100644 mods/wool/license.txt diff --git a/mods/beds/README.txt b/mods/beds/README.txt index 9710c459..1f8400c4 100644 --- a/mods/beds/README.txt +++ b/mods/beds/README.txt @@ -1,8 +1,10 @@ Minetest Game mod: beds ======================= -by BlockMen (c) 2014-2015 +See license.txt for license information. -Version: 1.1.1 +Authors of source code +---------------------- +BlockMen (MIT) About ~~~~~ @@ -16,15 +18,3 @@ is set to the beds location and you will respawn there after death. You can disable the respawn at beds by setting "enable_bed_respawn = false" in minetest.conf You can also disable the night skip feature by setting "enable_bed_night_skip = false" in minetest.conf or by using the /set command ingame. - - -License of source code, textures: WTFPL ---------------------------------------- -(c) Copyright BlockMen (2014-2015) - - -This program is free software. It comes without any warranty, to -the extent permitted by applicable law. You can redistribute it -and/or modify it under the terms of the Do What The Fuck You Want -To Public License, Version 2, as published by Sam Hocevar. See -http://sam.zoy.org/wtfpl/COPYING for more details. diff --git a/mods/beds/license.txt b/mods/beds/license.txt new file mode 100644 index 00000000..8824b04a --- /dev/null +++ b/mods/beds/license.txt @@ -0,0 +1,24 @@ +License of source code and media (textures) +------------------------------------------- + +The MIT License (MIT) +Copyright (C) 2014-2016 BlockMen + +Permission is hereby granted, free of charge, to any person obtaining a copy of this +software and associated documentation files (the "Software"), to deal in the Software +without restriction, including without limitation the rights to use, copy, modify, merge, +publish, distribute, sublicense, and/or sell copies of the Software, and to permit +persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or +substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, +INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR +PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE +FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR +OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER +DEALINGS IN THE SOFTWARE. + +For more details: +https://opensource.org/licenses/MIT diff --git a/mods/boats/README.txt b/mods/boats/README.txt index 1de71678..efacb32e 100644 --- a/mods/boats/README.txt +++ b/mods/boats/README.txt @@ -1,16 +1,12 @@ Minetest Game mod: boats ======================== -by PilzAdam +See license.txt for license information. -License of source code: ------------------------ -WTFPL +Authors of source code +---------------------- +PilzAdam (MIT) -License of media (textures and sounds): ---------------------------------------- -WTFPL - -Authors of media files: ------------------------ -textures: Zeg9 -model: thetoon and Zeg9, modified by PavelS(SokolovPavel) +Authors of media (textures and model) +------------------------------------- +Textures: Zeg9 (MIT) +Model: thetoon and Zeg9 (MIT), modified by PavelS(SokolovPavel) (MIT) diff --git a/mods/boats/license.txt b/mods/boats/license.txt new file mode 100644 index 00000000..a1dc6384 --- /dev/null +++ b/mods/boats/license.txt @@ -0,0 +1,25 @@ +License of source code and media (textures and model) +----------------------------------------------------- + +The MIT License (MIT) +Copyright (C) 2012-2016 PilzAdam (source code) +Copyright (C) 2012-2016 Zeg9, thetoon, PavelS(SokolovPavel) (media) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this +software and associated documentation files (the "Software"), to deal in the Software +without restriction, including without limitation the rights to use, copy, modify, merge, +publish, distribute, sublicense, and/or sell copies of the Software, and to permit +persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or +substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, +INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR +PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE +FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR +OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER +DEALINGS IN THE SOFTWARE. + +For more details: +https://opensource.org/licenses/MIT diff --git a/mods/bones/README.txt b/mods/bones/README.txt index cf99bc8b..8a660717 100644 --- a/mods/bones/README.txt +++ b/mods/bones/README.txt @@ -1,17 +1,12 @@ Minetest Game mod: bones ======================== -License of source code: ------------------------ -Copyright (C) 2012 PilzAdam +See license.txt for license information. -WTFPL - -License of media (textures and sounds) --------------------------------------- -Attribution-ShareAlike 3.0 Unported (CC BY-SA 3.0) -http://creativecommons.org/licenses/by-sa/3.0/ - -Authors of media files +Authors of source code ---------------------- -All textures: paramat +PilzAdam (MIT) + +Authors of media (textures) +--------------------------- +All textures: paramat (MIT) diff --git a/mods/bones/license.txt b/mods/bones/license.txt new file mode 100644 index 00000000..5d05e551 --- /dev/null +++ b/mods/bones/license.txt @@ -0,0 +1,25 @@ +License of source code and textures +----------------------------------- + +The MIT License (MIT) +Copyright (C) 2012-2016 PilzAdam +Copyright (C) 2016 paramat + +Permission is hereby granted, free of charge, to any person obtaining a copy of this +software and associated documentation files (the "Software"), to deal in the Software +without restriction, including without limitation the rights to use, copy, modify, merge, +publish, distribute, sublicense, and/or sell copies of the Software, and to permit +persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or +substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, +INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR +PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE +FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR +OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER +DEALINGS IN THE SOFTWARE. + +For more details: +https://opensource.org/licenses/MIT diff --git a/mods/creative/README.txt b/mods/creative/README.txt index fa735524..2a1cb551 100644 --- a/mods/creative/README.txt +++ b/mods/creative/README.txt @@ -1,23 +1,22 @@ Minetest Game mod: creative =========================== +See license.txt for license information. Implements creative mode. Switch on by using the "creative_mode" setting. -Registered items that +Registered items that: - have a description, and - do not have the group not_in_creative_inventory are added to the creative inventory. -License of source code and media files: ---------------------------------------- -Copyright (C) 2012 Perttu Ahola (celeron55) -Copyright (C) 2016 Jean-Patrick G. (kilbith) -This program is free software. It comes without any warranty, to -the extent permitted by applicable law. You can redistribute it -and/or modify it under the terms of the Do What The Fuck You Want -To Public License, Version 2, as published by Sam Hocevar. See -http://sam.zoy.org/wtfpl/COPYING for more details. +Authors of source code +---------------------- +Perttu Ahola (celeron55) (MIT) +Jean-Patrick G. (kilbith) (MIT) +Author of media (textures) +-------------------------- +Jean-Patrick G. (kilbith) (MIT) diff --git a/mods/creative/license.txt b/mods/creative/license.txt new file mode 100644 index 00000000..12b3ae16 --- /dev/null +++ b/mods/creative/license.txt @@ -0,0 +1,26 @@ +License of source code and media (textures) +------------------------------------------- + +The MIT License (MIT) +Copyright (C) 2012-2016 Perttu Ahola (celeron55) (source code) +Copyright (C) 2016 Jean-Patrick G. (kilbith) + (source code and textures) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this +software and associated documentation files (the "Software"), to deal in the Software +without restriction, including without limitation the rights to use, copy, modify, merge, +publish, distribute, sublicense, and/or sell copies of the Software, and to permit +persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or +substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, +INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR +PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE +FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR +OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER +DEALINGS IN THE SOFTWARE. + +For more details: +https://opensource.org/licenses/MIT diff --git a/mods/doors/README.txt b/mods/doors/README.txt index 6c036782..2684d98c 100644 --- a/mods/doors/README.txt +++ b/mods/doors/README.txt @@ -1,62 +1,60 @@ Minetest Game mod: doors ======================== -version: 2.0 +See license.txt for license information. -License of source code: ------------------------ -Copyright (C) 2012 PilzAdam -modified by BlockMen (added sounds, glassdoors[glass, obsidian glass], trapdoor) -Steel trapdoor added by sofar. -Copyright (C) 2016 sofar@foo-projects.org -Re-implemented most of the door algorithms, added meshes, UV wrapped texture +Authors of source code +---------------------- +Originally by PilzAdam (MIT) + +Modified by BlockMen (MIT): Added sounds, glass doors (glass, obsidian glass) and trapdoor. + +Modified by sofar (sofar@foo-projects.org) (MIT): +Added Steel trapdoor. +Re-implemented most of the door algorithms, added meshes, UV wrapped texture. Added doors API to facilitate coding mods accessing and operating doors. -Added Fence Gate model, code, and sounds +Added Fence Gate model, code, and sounds. -This program is free software. It comes without any warranty, to -the extent permitted by applicable law. You can redistribute it -and/or modify it under the terms of the Do What The Fuck You Want -To Public License, Version 2, as published by Sam Hocevar. See -http://sam.zoy.org/wtfpl/COPYING for more details. -License of textures --------------------------------------- -following Textures created by Fernando Zapata (CC BY-SA 3.0): +Authors of media (textures) +--------------------------- +Following textures created by Fernando Zapata (CC BY-SA 3.0): door_wood.png door_wood_a.png door_wood_a_r.png door_wood_b.png door_wood_b_r.png -following Textures created by BlockMen (WTFPL): +Following textures created by BlockMen (MIT): door_trapdoor.png door_obsidian_glass_side.png -following textures created by celeron55 (CC BY-SA 3.0): +Following textures created by celeron55 (CC BY-SA 3.0): door_glass_a.png door_glass_b.png -following Textures created by PenguinDad (CC BY-SA 4.0): +Following textures created by PenguinDad (CC BY-SA 4.0): door_glass.png door_obsidian_glass.png -following textures created by sofar (CC-BY-SA-3.0) +Following textures created by sofar (CC-BY-SA-3.0): doors_trapdoor_steel.png doors_trapdoor_steel_side.png door_trapdoor_side.png - -Obsidian door textures by red-001 based on textures by Pilzadam and BlockMen: WTFPL +Obsidian door textures by red-001 based on textures by Pilzadam and BlockMen (MIT): door_obsidian_glass.png -Glass door textures by red-001 based on textures by celeron55: CC BY-SA 3.0 +Glass door textures by red-001 based on textures by celeron55 (CC BY-SA 3.0): door_glass.png -All other textures (created by PilzAdam): WTFPL + +All other textures (created by PilzAdam) (MIT): Door textures were converted to the new texture map by sofar, paramat and red-001, under the same license as the originals. -Models: --------------------------------------- + +Authors of media (models) +------------------------- Door 3d models by sofar (CC-BY-SA-3.0) - door_a.obj - door_b.obj @@ -64,17 +62,18 @@ Fence gate models by sofar (CC-BY-SA-3.0) - fencegate_open.obj - fencegate_closed.obj -License of sounds --------------------------------------- + +Authors of media (sounds) +------------------------- Opening-Sound created by CGEffex (CC BY 3.0), modified by BlockMen door_open.ogg Closing-Sound created by bennstir (CC BY 3.0) door_close.ogg fencegate_open.ogg: - http://www.freesound.org/people/mhtaylor67/sounds/126041/ - CC0 + http://www.freesound.org/people/mhtaylor67/sounds/126041/ - (CC0 1.0) fencegate_close.ogg: - http://www.freesound.org/people/BarkersPinhead/sounds/274807/ - CC-BY-3.0 - http://www.freesound.org/people/rivernile7/sounds/249573/ - CC-BY-3.0 + http://www.freesound.org/people/BarkersPinhead/sounds/274807/ - (CC-BY-3.0) + http://www.freesound.org/people/rivernile7/sounds/249573/ - (CC-BY-3.0) Steel door sounds open & close (CC-BY-3.0) by HazMatt - http://www.freesound.org/people/HazMattt/sounds/187283/ doors_steel_door_open.ogg diff --git a/mods/doors/license.txt b/mods/doors/license.txt new file mode 100644 index 00000000..fa36bd10 --- /dev/null +++ b/mods/doors/license.txt @@ -0,0 +1,163 @@ +License of source code and media (textures) +------------------------------------------- + +The MIT License (MIT) +Copyright (C) 2012-2016 PilzAdam (source code, textures) +Copyright (C) 2014-2016 BlockMen (source code, textures) +Copyright (C) 2015-2016 sofar (sofar@foo-projects.org) (source code, textures) +Copyright (C) 2016 red-001 (textures) +Copyright (C) 2016 paramat (textures) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this +software and associated documentation files (the "Software"), to deal in the Software +without restriction, including without limitation the rights to use, copy, modify, merge, +publish, distribute, sublicense, and/or sell copies of the Software, and to permit +persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or +substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, +INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR +PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE +FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR +OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER +DEALINGS IN THE SOFTWARE. + +For more details: +https://opensource.org/licenses/MIT + + +Licenses of media (textures, models and sounds) +----------------------------------------------- + +Attribution-ShareAlike 3.0 Unported (CC BY-SA 3.0) +Copyright (C) 2011-2016 Fernando Zapata (textures) +Copyright (C) 2014-2016 celeron55 (textures) +Copyright (C) 2015-2016 sofar (textures, models) +Copyright (C) 2016 red-001 (textures) +Copyright (C) 2016 paramat (textures) + +You are free to: +Share — copy and redistribute the material in any medium or format. +Adapt — remix, transform, and build upon the material for any purpose, even commercially. +The licensor cannot revoke these freedoms as long as you follow the license terms. + +Under the following terms: + +Attribution — You must give appropriate credit, provide a link to the license, and +indicate if changes were made. You may do so in any reasonable manner, but not in any way +that suggests the licensor endorses you or your use. + +ShareAlike — If you remix, transform, or build upon the material, you must distribute +your contributions under the same license as the original. + +No additional restrictions — You may not apply legal terms or technological measures that +legally restrict others from doing anything the license permits. + +Notices: + +You do not have to comply with the license for elements of the material in the public +domain or where your use is permitted by an applicable exception or limitation. +No warranties are given. The license may not give you all of the permissions necessary +for your intended use. For example, other rights such as publicity, privacy, or moral +rights may limit how you use the material. + +For more details: +http://creativecommons.org/licenses/by-sa/3.0/ + +----------------------- + +Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) +Copyright (C) 2014-2016 PenguinDad (textures) + +You are free to: +Share — copy and redistribute the material in any medium or format. +Adapt — remix, transform, and build upon the material for any purpose, even commercially. +The licensor cannot revoke these freedoms as long as you follow the license terms. + +Under the following terms: + +Attribution — You must give appropriate credit, provide a link to the license, and +indicate if changes were made. You may do so in any reasonable manner, but not in any way +that suggests the licensor endorses you or your use. + +ShareAlike — If you remix, transform, or build upon the material, you must distribute +your contributions under the same license as the original. + +No additional restrictions — You may not apply legal terms or technological measures that +legally restrict others from doing anything the license permits. + +Notices: + +You do not have to comply with the license for elements of the material in the public +domain or where your use is permitted by an applicable exception or limitation. +No warranties are given. The license may not give you all of the permissions necessary +for your intended use. For example, other rights such as publicity, privacy, or moral +rights may limit how you use the material. + +For more details: +http://creativecommons.org/licenses/by-sa/4.0/ + +----------------------- + +Attribution 3.0 Unported (CC BY 3.0) +Copyright (C) 2014 CGEffex (sounds) +Copyright (C) 2014 bennstir (sounds) +Copyright (C) 2016 BarkersPinhead (sounds) +Copyright (C) 2016 rivernile7 (sounds) +Copyright (C) 2016 HazMatt (sounds) + +You are free to: +Share — copy and redistribute the material in any medium or format. +Adapt — remix, transform, and build upon the material for any purpose, even commercially. +The licensor cannot revoke these freedoms as long as you follow the license terms. + +Under the following terms: + +Attribution — You must give appropriate credit, provide a link to the license, and +indicate if changes were made. You may do so in any reasonable manner, but not in any way +that suggests the licensor endorses you or your use. + +No additional restrictions — You may not apply legal terms or technological measures that +legally restrict others from doing anything the license permits. + +Notices: + +You do not have to comply with the license for elements of the material in the public +domain or where your use is permitted by an applicable exception or limitation. +No warranties are given. The license may not give you all of the permissions necessary +for your intended use. For example, other rights such as publicity, privacy, or moral +rights may limit how you use the material. + +For more details: +http://creativecommons.org/licenses/by/3.0/ + +----------------------- + +CC0 1.0 Universal (CC0 1.0) Public Domain Dedication +mhtaylor67 (sounds) +SkeetMasterFunk69 (sounds) + +No Copyright + +The person who associated a work with this deed has dedicated the work to the public +domain by waiving all of his or her rights to the work worldwide under copyright law, +including all related and neighboring rights, to the extent allowed by law. + +You can copy, modify, distribute and perform the work, even for commercial purposes, all +without asking permission. See Other Information below. + +Other Information + +In no way are the patent or trademark rights of any person affected by CC0, nor are the +rights that other persons may have in the work or in how the work is used, such as +publicity or privacy rights. +Unless expressly stated otherwise, the person who associated a work with this deed makes +no warranties about the work, and disclaims liability for all uses of the work, to the +fullest extent permitted by applicable law. +When using or citing the work, you should not imply endorsement by the author or the +affirmer. + +For more details: +https://creativecommons.org/publicdomain/zero/1.0/ diff --git a/mods/dye/README.txt b/mods/dye/README.txt index b1035419..33766fcb 100644 --- a/mods/dye/README.txt +++ b/mods/dye/README.txt @@ -1,15 +1,8 @@ Minetest Game mod: dye ====================== - +See license.txt for license information. See init.lua for documentation. -License of source code and media files: ---------------------------------------- -Copyright (C) 2012 Perttu Ahola (celeron55) - -This program is free software. It comes without any warranty, to -the extent permitted by applicable law. You can redistribute it -and/or modify it under the terms of the Do What The Fuck You Want -To Public License, Version 2, as published by Sam Hocevar. See -http://sam.zoy.org/wtfpl/COPYING for more details. - +Authors of source code and media (textures) +------------------------------------------- +Perttu Ahola (celeron55) (MIT) diff --git a/mods/dye/license.txt b/mods/dye/license.txt new file mode 100644 index 00000000..47c7498e --- /dev/null +++ b/mods/dye/license.txt @@ -0,0 +1,24 @@ +License of source code and media (textures) +------------------------------------------- + +The MIT License (MIT) +Copyright (C) 2012-2016 Perttu Ahola (celeron55) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this +software and associated documentation files (the "Software"), to deal in the Software +without restriction, including without limitation the rights to use, copy, modify, merge, +publish, distribute, sublicense, and/or sell copies of the Software, and to permit +persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or +substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, +INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR +PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE +FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR +OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER +DEALINGS IN THE SOFTWARE. + +For more details: +https://opensource.org/licenses/MIT diff --git a/mods/farming/README.txt b/mods/farming/README.txt index 143cf382..310492ca 100644 --- a/mods/farming/README.txt +++ b/mods/farming/README.txt @@ -1,34 +1,22 @@ Minetest Game mod: farming ========================== +See license.txt for license information. -License of source code: ------------------------ -Copyright (C) 2014 webdesigner97 +Authors of source code +---------------------- +PilzAdam (MIT) +webdesigner97 (MIT) - DO WHAT THE FUCK YOU WANT TO PUBLIC LICENSE - Version 2, December 2004 - - Copyright (C) 2004 Sam Hocevar - - Everyone is permitted to copy and distribute verbatim or modified - copies of this license document, and changing it is allowed as long - as the name is changed. - - DO WHAT THE FUCK YOU WANT TO PUBLIC LICENSE - TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION - - 0. You just DO WHAT THE FUCK YOU WANT TO. - -License of media (textures): ----------------------------- -Created by PilzAdam (License: WTFPL): +Authors of media (textures) +--------------------------- +Created by PilzAdam (MIT): farming_bread.png farming_soil.png farming_soil_wet.png farming_soil_wet_side.png farming_string.png -Created by BlockMen (License: CC BY 3.0): +Created by BlockMen (CC BY 3.0): farming_tool_diamondhoe.png farming_tool_mesehoe.png farming_tool_bronzehoe.png @@ -36,10 +24,10 @@ Created by BlockMen (License: CC BY 3.0): farming_tool_stonehoe.png farming_tool_woodhoe.png -Created by MasterGollum (License: WTFPL): +Created by MasterGollum (MIT): farming_straw.png -Created by Gambit (License: WTFPL): +Created by Gambit (MIT): farming_wheat.png farming_wheat_*.png farming_cotton_*.png diff --git a/mods/farming/license.txt b/mods/farming/license.txt new file mode 100644 index 00000000..3cb51f0b --- /dev/null +++ b/mods/farming/license.txt @@ -0,0 +1,59 @@ +License of source code and media (textures) +------------------------------------------- + +The MIT License (MIT) +Copyright (C) 2012-2016 PilzAdam (source code, textures) +Copyright (C) 2014-2016 webdesigner97 (source code) +Copyright (C) 2015-2016 MasterGollum (textures) +Copyright (C) 2015-2016 Gambit (textures) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this +software and associated documentation files (the "Software"), to deal in the Software +without restriction, including without limitation the rights to use, copy, modify, merge, +publish, distribute, sublicense, and/or sell copies of the Software, and to permit +persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or +substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, +INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR +PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE +FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR +OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER +DEALINGS IN THE SOFTWARE. + +For more details: +https://opensource.org/licenses/MIT + + +License of media (textures) +--------------------------- + +Attribution 3.0 Unported (CC BY 3.0) +Copyright (C) 2014-2016 BlockMen + +You are free to: +Share — copy and redistribute the material in any medium or format. +Adapt — remix, transform, and build upon the material for any purpose, even commercially. +The licensor cannot revoke these freedoms as long as you follow the license terms. + +Under the following terms: + +Attribution — You must give appropriate credit, provide a link to the license, and +indicate if changes were made. You may do so in any reasonable manner, but not in any way +that suggests the licensor endorses you or your use. + +No additional restrictions — You may not apply legal terms or technological measures that +legally restrict others from doing anything the license permits. + +Notices: + +You do not have to comply with the license for elements of the material in the public +domain or where your use is permitted by an applicable exception or limitation. +No warranties are given. The license may not give you all of the permissions necessary +for your intended use. For example, other rights such as publicity, privacy, or moral +rights may limit how you use the material. + +For more details: +http://creativecommons.org/licenses/by/3.0/ diff --git a/mods/flowers/README.txt b/mods/flowers/README.txt index ebd4a21f..c9125e25 100644 --- a/mods/flowers/README.txt +++ b/mods/flowers/README.txt @@ -1,23 +1,14 @@ Minetest Game mod: flowers ========================== +See license.txt for license information. -License of source code: ------------------------ -Copyright (C) 2012-2013 Ironzorg, VanessaE +Authors of source code +---------------------- +Ironzorg (MIT) +VanessaE (MIT) -This program is free software. It comes without any warranty, to -the extent permitted by applicable law. You can redistribute it -and/or modify it under the terms of the Do What The Fuck You Want -To Public License, Version 2, as published by Sam Hocevar. See -http://sam.zoy.org/wtfpl/COPYING for more details. - -License of media (textures and sounds) --------------------------------------- -WTFPL - -Gambit (WTFPL): - flowers_mushroom_*.png - flowers_waterlily.png - -DanDuncombe (WTFPL): - flowers_spores_*.png +Authors of media (textures) +--------------------------- +Gambit (MIT): +flowers_mushroom_*.png +flowers_waterlily.png diff --git a/mods/flowers/license.txt b/mods/flowers/license.txt new file mode 100644 index 00000000..5c4cc8ab --- /dev/null +++ b/mods/flowers/license.txt @@ -0,0 +1,25 @@ +License of source code and media (textures) +------------------------------------------- + +The MIT License (MIT) +Copyright (C) 2012-2013 Ironzorg, VanessaE (source code) +Copyright (C) 2015-2016 Gambit (textures) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this +software and associated documentation files (the "Software"), to deal in the Software +without restriction, including without limitation the rights to use, copy, modify, merge, +publish, distribute, sublicense, and/or sell copies of the Software, and to permit +persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or +substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, +INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR +PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE +FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR +OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER +DEALINGS IN THE SOFTWARE. + +For more details: +https://opensource.org/licenses/MIT diff --git a/mods/give_initial_stuff/README.txt b/mods/give_initial_stuff/README.txt new file mode 100644 index 00000000..1155d4d2 --- /dev/null +++ b/mods/give_initial_stuff/README.txt @@ -0,0 +1,7 @@ +Minetest Game mod: give_initial_stuff +===================================== +See license.txt for license information. + +Authors of source code +---------------------- +Perttu Ahola (celeron55) (MIT) diff --git a/mods/give_initial_stuff/license.txt b/mods/give_initial_stuff/license.txt new file mode 100644 index 00000000..c32f2586 --- /dev/null +++ b/mods/give_initial_stuff/license.txt @@ -0,0 +1,24 @@ +License of source code +---------------------- + +The MIT License (MIT) +Copyright (C) 2012-2016 Perttu Ahola (celeron55) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this +software and associated documentation files (the "Software"), to deal in the Software +without restriction, including without limitation the rights to use, copy, modify, merge, +publish, distribute, sublicense, and/or sell copies of the Software, and to permit +persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or +substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, +INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR +PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE +FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR +OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER +DEALINGS IN THE SOFTWARE. + +For more details: +https://opensource.org/licenses/MIT diff --git a/mods/sethome/README.txt b/mods/sethome/README.txt new file mode 100644 index 00000000..6f0a282b --- /dev/null +++ b/mods/sethome/README.txt @@ -0,0 +1,7 @@ +Minetest Game mod: sethome +========================== +See license.txt for license information. + +Authors of source code +---------------------- +sfan5 (MIT) diff --git a/mods/sethome/license.txt b/mods/sethome/license.txt new file mode 100644 index 00000000..09f03b09 --- /dev/null +++ b/mods/sethome/license.txt @@ -0,0 +1,24 @@ +License of source code +---------------------- + +The MIT License (MIT) +Copyright (C) 2014-2016 sfan5 + +Permission is hereby granted, free of charge, to any person obtaining a copy of this +software and associated documentation files (the "Software"), to deal in the Software +without restriction, including without limitation the rights to use, copy, modify, merge, +publish, distribute, sublicense, and/or sell copies of the Software, and to permit +persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or +substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, +INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR +PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE +FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR +OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER +DEALINGS IN THE SOFTWARE. + +For more details: +https://opensource.org/licenses/MIT diff --git a/mods/tnt/README.txt b/mods/tnt/README.txt index df98f7e2..2ec50d6b 100644 --- a/mods/tnt/README.txt +++ b/mods/tnt/README.txt @@ -1,6 +1,17 @@ Minetest Game mod: tnt ====================== -by PilzAdam and ShadowNinja +See license.txt for license information. + +Authors of source code +---------------------- +PilzAdam (MIT) +ShadowNinja (MIT) +sofar (sofar@foo-projects.org) (MIT) + +Authors of media (textures) +--------------------------- +? (MIT) +sofar (sofar@foo-projects.org) (MIT) Introduction: This mod adds TNT to Minetest. TNT is a tool to help the player @@ -15,23 +26,3 @@ There are different ways to blow up TNT: 2. Hit a gunpowder fuze that leads to a TNT block with a torch. 3. Activate it with mesecons (fastest way) Be aware of the damage radius of 7 blocks! - -License: -WTFPL (see below) - -See also: -http://minetest.net/ - - DO WHAT THE FUCK YOU WANT TO PUBLIC LICENSE - Version 2, December 2004 - - Copyright (C) 2004 Sam Hocevar - - Everyone is permitted to copy and distribute verbatim or modified - copies of this license document, and changing it is allowed as long - as the name is changed. - - DO WHAT THE FUCK YOU WANT TO PUBLIC LICENSE - TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION - - 0. You just DO WHAT THE FUCK YOU WANT TO. diff --git a/mods/tnt/license.txt b/mods/tnt/license.txt new file mode 100644 index 00000000..0a1cfe18 --- /dev/null +++ b/mods/tnt/license.txt @@ -0,0 +1,27 @@ +License of source code and media (textures) +------------------------------------------- + +The MIT License (MIT) +Copyright (C) 2014-2016 PilzAdam (source code) +Copyright (C) 2014-2016 ShadowNinja (source code) +Copyright (C) 2016 sofar (sofar@foo-projects.org) (source code and textures) +Copyright (C) 201? ? (textures) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this +software and associated documentation files (the "Software"), to deal in the Software +without restriction, including without limitation the rights to use, copy, modify, merge, +publish, distribute, sublicense, and/or sell copies of the Software, and to permit +persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or +substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, +INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR +PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE +FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR +OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER +DEALINGS IN THE SOFTWARE. + +For more details: +https://opensource.org/licenses/MIT diff --git a/mods/walls/README.txt b/mods/walls/README.txt new file mode 100644 index 00000000..91dd9c57 --- /dev/null +++ b/mods/walls/README.txt @@ -0,0 +1,7 @@ +Minetest Game mod: walls +======================== +See license.txt for license information. + +Authors of source code +---------------------- +sofar (sofar@foo-projects.org) (LGPL 2.1) diff --git a/mods/walls/license.txt b/mods/walls/license.txt new file mode 100644 index 00000000..de0c2b2c --- /dev/null +++ b/mods/walls/license.txt @@ -0,0 +1,12 @@ +License of source code +---------------------- +Copyright (C) 2016 sofar (sofar@foo-projects.org) + +This program is free software; you can redistribute it and/or modify it under the terms +of the GNU Lesser General Public License as published by the Free Software Foundation; +either version 2.1 of the License, or (at your option) any later version. + +This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; +without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. +See the GNU Lesser General Public License for more details: +https://www.gnu.org/licenses/old-licenses/lgpl-2.1.html diff --git a/mods/wool/README.txt b/mods/wool/README.txt index f57b6dd3..3fce7547 100644 --- a/mods/wool/README.txt +++ b/mods/wool/README.txt @@ -1,26 +1,16 @@ Minetest Game mod: wool ======================= +See license.txt for license information. Mostly backward-compatible with jordach's 16-color wool mod. -License of source code: ------------------------ -Copyright (C) 2012 Perttu Ahola (celeron55) +Authors of source code +---------------------- +Perttu Ahola (celeron55) (MIT) -This program is free software. It comes without any warranty, to -the extent permitted by applicable law. You can redistribute it -and/or modify it under the terms of the Do What The Fuck You Want -To Public License, Version 2, as published by Sam Hocevar. See -http://sam.zoy.org/wtfpl/COPYING for more details. - -License of media (textures and sounds) --------------------------------------- -Attribution-ShareAlike 3.0 Unported (CC BY-SA 3.0) -http://creativecommons.org/licenses/by-sa/3.0/ - -Authors of media files ------------------------ -Cisoun: +Authors of media (textures) +--------------------------- +Cisoun (CC BY-SA 3.0): - wool_black.png wool_brown.png wool_dark_green.png wool_green.png - wool_magenta.png wool_pink.png wool_violet.png wool_yellow.png wool_blue.png - wool_cyan.png wool_dark_grey.png wool_grey.png wool_orange.png wool_red.png diff --git a/mods/wool/license.txt b/mods/wool/license.txt new file mode 100644 index 00000000..75712f92 --- /dev/null +++ b/mods/wool/license.txt @@ -0,0 +1,59 @@ +License of source code +---------------------- + +The MIT License (MIT) +Copyright (C) 2012-2016 Perttu Ahola (celeron55) + +Permission is hereby granted, free of charge, to any person obtaining a copy of this +software and associated documentation files (the "Software"), to deal in the Software +without restriction, including without limitation the rights to use, copy, modify, merge, +publish, distribute, sublicense, and/or sell copies of the Software, and to permit +persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or +substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, +INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR +PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE +FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR +OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER +DEALINGS IN THE SOFTWARE. + +For more details: +https://opensource.org/licenses/MIT + + +Licenses of media (textures) +---------------------------- + +Attribution-ShareAlike 3.0 Unported (CC BY-SA 3.0) +Copyright (C) 2012-2016 Cisoun + +You are free to: +Share — copy and redistribute the material in any medium or format. +Adapt — remix, transform, and build upon the material for any purpose, even commercially. +The licensor cannot revoke these freedoms as long as you follow the license terms. + +Under the following terms: + +Attribution — You must give appropriate credit, provide a link to the license, and +indicate if changes were made. You may do so in any reasonable manner, but not in any way +that suggests the licensor endorses you or your use. + +ShareAlike — If you remix, transform, or build upon the material, you must distribute +your contributions under the same license as the original. + +No additional restrictions — You may not apply legal terms or technological measures that +legally restrict others from doing anything the license permits. + +Notices: + +You do not have to comply with the license for elements of the material in the public +domain or where your use is permitted by an applicable exception or limitation. +No warranties are given. The license may not give you all of the permissions necessary +for your intended use. For example, other rights such as publicity, privacy, or moral +rights may limit how you use the material. + +For more details: +http://creativecommons.org/licenses/by-sa/3.0/ From 7d70d25eeb3e27e7b335437dbb87766398d8f560 Mon Sep 17 00:00:00 2001 From: paramat Date: Mon, 5 Sep 2016 07:24:18 +0100 Subject: [PATCH 05/99] Licenses: Change WTFPL to MIT (part 2) Add license.txt files. Update and improve README.txt files. Corrections to part 1. --- mods/boats/license.txt | 4 +- mods/bucket/README.txt | 30 +--- mods/bucket/license.txt | 41 +++++ mods/creative/license.txt | 5 +- mods/default/README.txt | 54 +++--- mods/default/license.txt | 174 ++++++++++++++++++++ mods/doors/license.txt | 36 ++-- mods/farming/license.txt | 8 +- mods/fire/README.txt | 31 ++-- mods/fire/license.txt | 49 ++++++ mods/flowers/license.txt | 4 +- mods/nyancat/README.txt | 15 +- mods/nyancat/license.txt | 40 +++++ mods/screwdriver/{readme.txt => README.txt} | 15 +- mods/screwdriver/license.txt | 14 ++ mods/stairs/README.txt | 19 ++- mods/stairs/license.txt | 15 ++ mods/tnt/README.txt | 30 +++- mods/tnt/license.txt | 9 +- mods/vessels/README.txt | 17 +- mods/vessels/license.txt | 15 ++ mods/walls/license.txt | 2 + mods/xpanes/README.txt | 22 +-- mods/xpanes/license.txt | 26 +++ 24 files changed, 512 insertions(+), 163 deletions(-) create mode 100644 mods/bucket/license.txt create mode 100644 mods/default/license.txt create mode 100644 mods/fire/license.txt create mode 100644 mods/nyancat/license.txt rename mods/screwdriver/{readme.txt => README.txt} (65%) create mode 100644 mods/screwdriver/license.txt create mode 100644 mods/stairs/license.txt create mode 100644 mods/vessels/license.txt create mode 100644 mods/xpanes/license.txt diff --git a/mods/boats/license.txt b/mods/boats/license.txt index a1dc6384..f0baa5f1 100644 --- a/mods/boats/license.txt +++ b/mods/boats/license.txt @@ -2,8 +2,8 @@ License of source code and media (textures and model) ----------------------------------------------------- The MIT License (MIT) -Copyright (C) 2012-2016 PilzAdam (source code) -Copyright (C) 2012-2016 Zeg9, thetoon, PavelS(SokolovPavel) (media) +Copyright (C) 2012-2016 PilzAdam +Copyright (C) 2012-2016 Zeg9, thetoon, PavelS(SokolovPavel) Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software diff --git a/mods/bucket/README.txt b/mods/bucket/README.txt index a6674b43..4bb0f092 100644 --- a/mods/bucket/README.txt +++ b/mods/bucket/README.txt @@ -1,26 +1,12 @@ Minetest Game mod: bucket ========================= +See license.txt for license information. -License of source code: ------------------------ -Copyright (C) 2011-2012 Kahrl -Copyright (C) 2011-2012 celeron55, Perttu Ahola - -This program is free software; you can redistribute it and/or modify -it under the terms of the GNU Lesser General Public License as published by -the Free Software Foundation; either version 2 of the License, or -(at your option) any later version. - -http://www.gnu.org/licenses/lgpl-2.1.html - -License of media (textures and sounds) --------------------------------------- -Attribution-ShareAlike 3.0 Unported (CC BY-SA 3.0) -http://creativecommons.org/licenses/by-sa/3.0/ - -Authors of media files ------------------------ -Everything not listed in here: -Copyright (C) 2010-2012 celeron55, Perttu Ahola - +Authors of source code +---------------------- +Kahrl (LGPL 2.1) +celeron55, Perttu Ahola (LGPL 2.1) +Authors of media (textures) +--------------------------- +ElementW (MIT) diff --git a/mods/bucket/license.txt b/mods/bucket/license.txt new file mode 100644 index 00000000..4fbbeadc --- /dev/null +++ b/mods/bucket/license.txt @@ -0,0 +1,41 @@ +License of source code +---------------------- + +GNU Lesser General Public License, version 2.1 +Copyright (C) 2011-2016 Kahrl +Copyright (C) 2011-2016 celeron55, Perttu Ahola + +This program is free software; you can redistribute it and/or modify it under the terms +of the GNU Lesser General Public License as published by the Free Software Foundation; +either version 2.1 of the License, or (at your option) any later version. + +This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; +without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. +See the GNU Lesser General Public License for more details: +https://www.gnu.org/licenses/old-licenses/lgpl-2.1.html + + +License of media (textures) +--------------------------- + +The MIT License (MIT) +Copyright (C) 2015-2016 ElementW + +Permission is hereby granted, free of charge, to any person obtaining a copy of this +software and associated documentation files (the "Software"), to deal in the Software +without restriction, including without limitation the rights to use, copy, modify, merge, +publish, distribute, sublicense, and/or sell copies of the Software, and to permit +persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or +substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, +INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR +PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE +FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR +OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER +DEALINGS IN THE SOFTWARE. + +For more details: +https://opensource.org/licenses/MIT diff --git a/mods/creative/license.txt b/mods/creative/license.txt index 12b3ae16..aa0725b3 100644 --- a/mods/creative/license.txt +++ b/mods/creative/license.txt @@ -2,9 +2,8 @@ License of source code and media (textures) ------------------------------------------- The MIT License (MIT) -Copyright (C) 2012-2016 Perttu Ahola (celeron55) (source code) -Copyright (C) 2016 Jean-Patrick G. (kilbith) - (source code and textures) +Copyright (C) 2012-2016 Perttu Ahola (celeron55) +Copyright (C) 2016 Jean-Patrick G. (kilbith) Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software diff --git a/mods/default/README.txt b/mods/default/README.txt index 85c5a4ef..269c149e 100644 --- a/mods/default/README.txt +++ b/mods/default/README.txt @@ -1,28 +1,18 @@ Minetest Game mod: default ========================== +See license.txt for license information. -License of source code: ------------------------ -Copyright (C) 2011-2012 celeron55, Perttu Ahola +Authors of source code +---------------------- +celeron55, Perttu Ahola (LGPL 2.1) +Various Minetest developers and contributors (LGPL 2.1) -This program is free software; you can redistribute it and/or modify -it under the terms of the GNU Lesser General Public License as published by -the Free Software Foundation; either version 2.1 of the License, or -(at your option) any later version. - -http://www.gnu.org/licenses/lgpl-2.1.html - -License of media (textures and sounds) --------------------------------------- -Attribution-ShareAlike 3.0 Unported (CC BY-SA 3.0) -http://creativecommons.org/licenses/by-sa/3.0/ - -Authors of media files ------------------------ +Authors of media (textures, models and sounds) +---------------------------------------------- Everything not listed in here: -Copyright (C) 2010-2012 celeron55, Perttu Ahola +celeron55, Perttu Ahola (CC BY-SA 3.0) -Cisoun's WTFPL texture pack: +Cisoun's texture pack (MIT): default_jungletree.png default_lava.png default_leaves.png @@ -32,25 +22,25 @@ Cisoun's WTFPL texture pack: default_tree_top.png default_water.png -Cisoun's conifers mod (WTFPL): +Cisoun's conifers mod (MIT): default_pine_needles.png -Originating from G4JC's Almost MC Texture Pack: +Originating from G4JC's Almost MC Texture Pack (CC BY-SA 3.0): default_torch.png default_torch_on_ceiling.png default_torch_on_floor.png -VanessaE's animated torches (WTFPL): +VanessaE's animated torches (MIT): default_torch_animated.png default_torch_on_ceiling_animated.png default_torch_on_floor_animated.png default_torch_on_floor.png -RealBadAngel's animated water (WTFPL): +RealBadAngel's animated water (MIT): default_water_source_animated.png default_water_flowing_animated.png -VanessaE (WTFPL): +VanessaE (MIT): default_desert_sand.png default_desert_stone.png default_sand.png @@ -63,13 +53,13 @@ Calinou (CC BY-SA): default_mineral_copper.png default_glass_detail.png -MirceaKitsune (WTFPL): +MirceaKitsune (MIT): character.x Jordach (CC BY-SA 3.0): character.png -PilzAdam (WTFPL): +PilzAdam (MIT): default_jungleleaves.png default_junglesapling.png default_obsidian_glass.png @@ -77,10 +67,10 @@ PilzAdam (WTFPL): default_mineral_gold.png default_snowball.png -jojoa1997 (WTFPL): +jojoa1997 (MIT): default_obsidian.png -InfinityProject (WTFPL): +InfinityProject (MIT): default_mineral_diamond.png Splizard (CC BY-SA 3.0): @@ -157,7 +147,7 @@ sofar (CC BY-SA 3.0): default_aspen_tree_top, derived from default_pine_tree_top (by paramat) default_aspen_wood, derived from default_pine_wood (by paramat) -sofar (WTFPL): +sofar (MIT): default_gravel.png -- Derived from Gambit's PixelBOX texture pack light gravel Neuromancer (CC BY-SA 2.0): @@ -167,7 +157,7 @@ Neuromancer (CC BY-SA 3.0): default_dirt.png default_furnace_*.png -Gambit (WTFPL): +Gambit (MIT): default_bronze_ingot.png default_copper_ingot.png default_copper_lump.png @@ -182,7 +172,7 @@ Gambit (WTFPL): default_sign_wall_wood.png default_flint.png -asl97 (WTFPL): +asl97 (MIT): default_ice.png KevDoy (CC BY-SA 3.0) @@ -193,7 +183,7 @@ Glass breaking sounds (CC BY 3.0): 2: http://www.freesound.org/people/Tomlija/sounds/97669/ 3: http://www.freesound.org/people/lsprice/sounds/88808/ -Mito551 (sounds) (CC BY-SA): +Mito551 (sounds) (CC BY-SA 3.0): default_dig_choppy.ogg default_dig_cracky.ogg default_dig_crumbly.1.ogg diff --git a/mods/default/license.txt b/mods/default/license.txt new file mode 100644 index 00000000..c10ec7ee --- /dev/null +++ b/mods/default/license.txt @@ -0,0 +1,174 @@ +License of source code +---------------------- + +GNU Lesser General Public License, version 2.1 +Copyright (C) 2011-2016 celeron55, Perttu Ahola +Copyright (C) 2011-2016 Various Minetest developers and contributors + +This program is free software; you can redistribute it and/or modify it under the terms +of the GNU Lesser General Public License as published by the Free Software Foundation; +either version 2.1 of the License, or (at your option) any later version. + +This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; +without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. +See the GNU Lesser General Public License for more details: +https://www.gnu.org/licenses/old-licenses/lgpl-2.1.html + + +Licenses of media (textures, models and sounds) +----------------------------------------------- + +The MIT License (MIT) +Copyright (C) 2010-2016 Various Minetest developers and contributors + +Permission is hereby granted, free of charge, to any person obtaining a copy of this +software and associated documentation files (the "Software"), to deal in the Software +without restriction, including without limitation the rights to use, copy, modify, merge, +publish, distribute, sublicense, and/or sell copies of the Software, and to permit +persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or +substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, +INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR +PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE +FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR +OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER +DEALINGS IN THE SOFTWARE. + +For more details: +https://opensource.org/licenses/MIT + +---------------- + +Attribution-ShareAlike 3.0 Unported (CC BY-SA 3.0) +Copyright (C) 2010-2016 celeron55, Perttu Ahola +Copyright (C) 2010-2016 Various Minetest developers and contributors + +You are free to: +Share — copy and redistribute the material in any medium or format. +Adapt — remix, transform, and build upon the material for any purpose, even commercially. +The licensor cannot revoke these freedoms as long as you follow the license terms. + +Under the following terms: + +Attribution — You must give appropriate credit, provide a link to the license, and +indicate if changes were made. You may do so in any reasonable manner, but not in any way +that suggests the licensor endorses you or your use. + +ShareAlike — If you remix, transform, or build upon the material, you must distribute +your contributions under the same license as the original. + +No additional restrictions — You may not apply legal terms or technological measures that +legally restrict others from doing anything the license permits. + +Notices: + +You do not have to comply with the license for elements of the material in the public +domain or where your use is permitted by an applicable exception or limitation. +No warranties are given. The license may not give you all of the permissions necessary +for your intended use. For example, other rights such as publicity, privacy, or moral +rights may limit how you use the material. + +For more details: +http://creativecommons.org/licenses/by-sa/3.0/ + +----------------------- + +Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) +Copyright (C) 2014-2016 brunob.santos + +You are free to: +Share — copy and redistribute the material in any medium or format. +Adapt — remix, transform, and build upon the material for any purpose, even commercially. +The licensor cannot revoke these freedoms as long as you follow the license terms. + +Under the following terms: + +Attribution — You must give appropriate credit, provide a link to the license, and +indicate if changes were made. You may do so in any reasonable manner, but not in any way +that suggests the licensor endorses you or your use. + +ShareAlike — If you remix, transform, or build upon the material, you must distribute +your contributions under the same license as the original. + +No additional restrictions — You may not apply legal terms or technological measures that +legally restrict others from doing anything the license permits. + +Notices: + +You do not have to comply with the license for elements of the material in the public +domain or where your use is permitted by an applicable exception or limitation. +No warranties are given. The license may not give you all of the permissions necessary +for your intended use. For example, other rights such as publicity, privacy, or moral +rights may limit how you use the material. + +For more details: +http://creativecommons.org/licenses/by-sa/4.0/ + +----------------------- + +Attribution-ShareAlike 2.0 Generic (CC BY-SA 2.0) +Copyright (C) 2014-2016 Neuromancer + + +You are free to: +Share — copy and redistribute the material in any medium or format. +Adapt — remix, transform, and build upon the material for any purpose, even commercially. +The licensor cannot revoke these freedoms as long as you follow the license terms. + +Under the following terms: + +Attribution — You must give appropriate credit, provide a link to the license, and +indicate if changes were made. You may do so in any reasonable manner, but not in any way +that suggests the licensor endorses you or your use. + +ShareAlike — If you remix, transform, or build upon the material, you must distribute +your contributions under the same license as the original. + +No additional restrictions — You may not apply legal terms or technological measures that +legally restrict others from doing anything the license permits. + +Notices: + +You do not have to comply with the license for elements of the material in the public +domain or where your use is permitted by an applicable exception or limitation. +No warranties are given. The license may not give you all of the permissions necessary +for your intended use. For example, other rights such as publicity, privacy, or moral +rights may limit how you use the material. + +For more details: +http://creativecommons.org/licenses/by-sa/2.0/ + +----------------------- + +Attribution 3.0 Unported (CC BY 3.0) +Copyright (C) 2009 cmusounddesign +Copyright (C) 2010 Tomlija +Copyright (C) 2010 lsprice + +You are free to: +Share — copy and redistribute the material in any medium or format. +Adapt — remix, transform, and build upon the material for any purpose, even commercially. +The licensor cannot revoke these freedoms as long as you follow the license terms. + +Under the following terms: + +Attribution — You must give appropriate credit, provide a link to the license, and +indicate if changes were made. You may do so in any reasonable manner, but not in any way +that suggests the licensor endorses you or your use. + +No additional restrictions — You may not apply legal terms or technological measures that +legally restrict others from doing anything the license permits. + +Notices: + +You do not have to comply with the license for elements of the material in the public +domain or where your use is permitted by an applicable exception or limitation. +No warranties are given. The license may not give you all of the permissions necessary +for your intended use. For example, other rights such as publicity, privacy, or moral +rights may limit how you use the material. + +For more details: +http://creativecommons.org/licenses/by/3.0/ diff --git a/mods/doors/license.txt b/mods/doors/license.txt index fa36bd10..b97f6acd 100644 --- a/mods/doors/license.txt +++ b/mods/doors/license.txt @@ -2,11 +2,11 @@ License of source code and media (textures) ------------------------------------------- The MIT License (MIT) -Copyright (C) 2012-2016 PilzAdam (source code, textures) -Copyright (C) 2014-2016 BlockMen (source code, textures) -Copyright (C) 2015-2016 sofar (sofar@foo-projects.org) (source code, textures) -Copyright (C) 2016 red-001 (textures) -Copyright (C) 2016 paramat (textures) +Copyright (C) 2012-2016 PilzAdam +Copyright (C) 2014-2016 BlockMen +Copyright (C) 2015-2016 sofar (sofar@foo-projects.org) +Copyright (C) 2016 red-001 +Copyright (C) 2016 paramat Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software @@ -32,11 +32,11 @@ Licenses of media (textures, models and sounds) ----------------------------------------------- Attribution-ShareAlike 3.0 Unported (CC BY-SA 3.0) -Copyright (C) 2011-2016 Fernando Zapata (textures) -Copyright (C) 2014-2016 celeron55 (textures) -Copyright (C) 2015-2016 sofar (textures, models) -Copyright (C) 2016 red-001 (textures) -Copyright (C) 2016 paramat (textures) +Copyright (C) 2011-2016 Fernando Zapata +Copyright (C) 2014-2016 celeron55 +Copyright (C) 2015-2016 sofar +Copyright (C) 2016 red-001 +Copyright (C) 2016 paramat You are free to: Share — copy and redistribute the material in any medium or format. @@ -69,7 +69,7 @@ http://creativecommons.org/licenses/by-sa/3.0/ ----------------------- Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) -Copyright (C) 2014-2016 PenguinDad (textures) +Copyright (C) 2014-2016 PenguinDad You are free to: Share — copy and redistribute the material in any medium or format. @@ -102,11 +102,11 @@ http://creativecommons.org/licenses/by-sa/4.0/ ----------------------- Attribution 3.0 Unported (CC BY 3.0) -Copyright (C) 2014 CGEffex (sounds) -Copyright (C) 2014 bennstir (sounds) -Copyright (C) 2016 BarkersPinhead (sounds) -Copyright (C) 2016 rivernile7 (sounds) -Copyright (C) 2016 HazMatt (sounds) +Copyright (C) 2014 CGEffex +Copyright (C) 2014 bennstir +Copyright (C) 2016 BarkersPinhead +Copyright (C) 2016 rivernile7 +Copyright (C) 2016 HazMatt You are free to: Share — copy and redistribute the material in any medium or format. @@ -136,8 +136,8 @@ http://creativecommons.org/licenses/by/3.0/ ----------------------- CC0 1.0 Universal (CC0 1.0) Public Domain Dedication -mhtaylor67 (sounds) -SkeetMasterFunk69 (sounds) +mhtaylor67 +SkeetMasterFunk69 No Copyright diff --git a/mods/farming/license.txt b/mods/farming/license.txt index 3cb51f0b..82f73de5 100644 --- a/mods/farming/license.txt +++ b/mods/farming/license.txt @@ -2,10 +2,10 @@ License of source code and media (textures) ------------------------------------------- The MIT License (MIT) -Copyright (C) 2012-2016 PilzAdam (source code, textures) -Copyright (C) 2014-2016 webdesigner97 (source code) -Copyright (C) 2015-2016 MasterGollum (textures) -Copyright (C) 2015-2016 Gambit (textures) +Copyright (C) 2012-2016 PilzAdam +Copyright (C) 2014-2016 webdesigner97 +Copyright (C) 2015-2016 MasterGollum +Copyright (C) 2015-2016 Gambit Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software diff --git a/mods/fire/README.txt b/mods/fire/README.txt index 14022f03..2454478c 100644 --- a/mods/fire/README.txt +++ b/mods/fire/README.txt @@ -1,36 +1,25 @@ Minetest Game mod: fire ======================= +See license.txt for license information. -License of source code: ------------------------ -Copyright (C) 2012 Perttu Ahola (celeron55) - -This program is free software; you can redistribute it and/or modify -it under the terms of the GNU Lesser General Public License as published by -the Free Software Foundation; either version 2.1 of the License, or -(at your option) any later version. - -http://www.gnu.org/licenses/lgpl-2.1.html - -License of media (textures and sounds) --------------------------------------- -Attribution-ShareAlike 3.0 Unported (CC BY-SA 3.0) -http://creativecommons.org/licenses/by-sa/3.0/ +Authors of source code +---------------------- +Perttu Ahola (celeron55) (LGPL 2.1) 2012 Authors of media files ------------------------ +---------------------- Everything not listed in here: -Copyright (C) 2012 Perttu Ahola (celeron55) +Copyright (C) 2012 Perttu Ahola (celeron55) (CC BY-SA 3.0) fire_small.ogg sampled from: - http://www.freesound.org/people/dobroide/sounds/4211/ + http://www.freesound.org/people/dobroide/sounds/4211/ (CC BY 3.0) 2005 fire_large.ogg sampled from: - http://www.freesound.org/people/Dynamicell/sounds/17548/ + http://www.freesound.org/people/Dynamicell/sounds/17548/ (CC BY 3.0) 2006 fire_basic_flame_animated.png: - Muadtralk + Muadtralk (CC BY-SA 3.0) 2012 fire_flint_steel.png - Gambit (WTFPL) + Gambit (MIT) 2013 diff --git a/mods/fire/license.txt b/mods/fire/license.txt new file mode 100644 index 00000000..6841148a --- /dev/null +++ b/mods/fire/license.txt @@ -0,0 +1,49 @@ +License of source code +---------------------- + +GNU Lesser General Public License, version 2.1 +Copyright (C) 2012-2016 celeron55, Perttu Ahola + +This program is free software; you can redistribute it and/or modify it under the terms +of the GNU Lesser General Public License as published by the Free Software Foundation; +either version 2.1 of the License, or (at your option) any later version. + +This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; +without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. +See the GNU Lesser General Public License for more details: +https://www.gnu.org/licenses/old-licenses/lgpl-2.1.html + + +Licenses of media (textures) +---------------------------- + +Attribution-ShareAlike 3.0 Unported (CC BY-SA 3.0) +Copyright (C) 2012-2016 Perttu Ahola (celeron55) + +You are free to: +Share — copy and redistribute the material in any medium or format. +Adapt — remix, transform, and build upon the material for any purpose, even commercially. +The licensor cannot revoke these freedoms as long as you follow the license terms. + +Under the following terms: + +Attribution — You must give appropriate credit, provide a link to the license, and +indicate if changes were made. You may do so in any reasonable manner, but not in any way +that suggests the licensor endorses you or your use. + +ShareAlike — If you remix, transform, or build upon the material, you must distribute +your contributions under the same license as the original. + +No additional restrictions — You may not apply legal terms or technological measures that +legally restrict others from doing anything the license permits. + +Notices: + +You do not have to comply with the license for elements of the material in the public +domain or where your use is permitted by an applicable exception or limitation. +No warranties are given. The license may not give you all of the permissions necessary +for your intended use. For example, other rights such as publicity, privacy, or moral +rights may limit how you use the material. + +For more details: +http://creativecommons.org/licenses/by-sa/3.0/ diff --git a/mods/flowers/license.txt b/mods/flowers/license.txt index 5c4cc8ab..1f0e6730 100644 --- a/mods/flowers/license.txt +++ b/mods/flowers/license.txt @@ -2,8 +2,8 @@ License of source code and media (textures) ------------------------------------------- The MIT License (MIT) -Copyright (C) 2012-2013 Ironzorg, VanessaE (source code) -Copyright (C) 2015-2016 Gambit (textures) +Copyright (C) 2012-2013 Ironzorg, VanessaE +Copyright (C) 2015-2016 Gambit Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software diff --git a/mods/nyancat/README.txt b/mods/nyancat/README.txt index 2e7de71d..6e7ce4e2 100644 --- a/mods/nyancat/README.txt +++ b/mods/nyancat/README.txt @@ -1,9 +1,10 @@ Minetest Game mod: nyancat ========================== +See license.txt for license information. License of source code: ----------------------- -Copyright (C) 2011-2012 celeron55, Perttu Ahola +Copyright (C) 2011-2016 celeron55, Perttu Ahola This program is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by @@ -12,17 +13,9 @@ the Free Software Foundation; either version 2.1 of the License, or http://www.gnu.org/licenses/lgpl-2.1.html -License of media (textures and sounds) --------------------------------------- -Attribution-ShareAlike 3.0 Unported (CC BY-SA 3.0) -http://creativecommons.org/licenses/by-sa/3.0/ - Authors of media files ------------------------ -Everything not listed in here: -Copyright (C) 2010-2012 celeron55, Perttu Ahola - -VanessaE (WTFPL): +---------------------- +VanessaE (MIT): nyancat_front.png nyancat_back.png nyancat_side.png diff --git a/mods/nyancat/license.txt b/mods/nyancat/license.txt new file mode 100644 index 00000000..a3c24a8c --- /dev/null +++ b/mods/nyancat/license.txt @@ -0,0 +1,40 @@ +License of source code +---------------------- + +GNU Lesser General Public License, version 2.1 +Copyright (C) 2011-2016 celeron55, Perttu Ahola + +This program is free software; you can redistribute it and/or modify it under the terms +of the GNU Lesser General Public License as published by the Free Software Foundation; +either version 2.1 of the License, or (at your option) any later version. + +This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; +without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. +See the GNU Lesser General Public License for more details: +https://www.gnu.org/licenses/old-licenses/lgpl-2.1.html + + +License of media (textures) +--------------------------- + +The MIT License (MIT) +Copyright (C) 2012-2016 VanessaE + +Permission is hereby granted, free of charge, to any person obtaining a copy of this +software and associated documentation files (the "Software"), to deal in the Software +without restriction, including without limitation the rights to use, copy, modify, merge, +publish, distribute, sublicense, and/or sell copies of the Software, and to permit +persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or +substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, +INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR +PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE +FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR +OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER +DEALINGS IN THE SOFTWARE. + +For more details: +https://opensource.org/licenses/MIT diff --git a/mods/screwdriver/readme.txt b/mods/screwdriver/README.txt similarity index 65% rename from mods/screwdriver/readme.txt rename to mods/screwdriver/README.txt index bdf109b8..d2926c01 100644 --- a/mods/screwdriver/readme.txt +++ b/mods/screwdriver/README.txt @@ -1,21 +1,22 @@ Minetest Game mod: screwdriver ============================== +See license.txt for license information. -License of source code: ------------------------ +License of source code +---------------------- Copyright (C) 2013 RealBadAngel, Maciej Kasatkin This program is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by -the Free Software Foundation; either version 2 of the License, or +the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version. http://www.gnu.org/licenses/lgpl-2.1.html -License of media (textures and sounds) --------------------------------------- +License of media (textures) +--------------------------- Attribution-ShareAlike 3.0 Unported (CC BY-SA 3.0) http://creativecommons.org/licenses/by-sa/3.0/ -Created by Gambit (WTFPL): - screwdriver.png +Created by Gambit (MIT) 2013: +screwdriver.png diff --git a/mods/screwdriver/license.txt b/mods/screwdriver/license.txt new file mode 100644 index 00000000..d058f67b --- /dev/null +++ b/mods/screwdriver/license.txt @@ -0,0 +1,14 @@ +License of source code +---------------------- + +GNU Lesser General Public License, version 2.1 +Copyright (C) 2013 RealBadAngel, Maciej Kasatkin + +This program is free software; you can redistribute it and/or modify it under the terms +of the GNU Lesser General Public License as published by the Free Software Foundation; +either version 2.1 of the License, or (at your option) any later version. + +This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; +without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. +See the GNU Lesser General Public License for more details: +https://www.gnu.org/licenses/old-licenses/lgpl-2.1.html diff --git a/mods/stairs/README.txt b/mods/stairs/README.txt index 9bd0b213..ceab238c 100644 --- a/mods/stairs/README.txt +++ b/mods/stairs/README.txt @@ -1,26 +1,27 @@ Minetest Game mod: stairs ========================= +See license.txt for license information. License of source code: ----------------------- -Copyright (C) 2011-2012 Kahrl -Copyright (C) 2011-2012 celeron55, Perttu Ahola +Copyright (C) 2011-2016 Kahrl +Copyright (C) 2011-2016 celeron55, Perttu Ahola This program is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by -the Free Software Foundation; either version 2 of the License, or +the Free Software Foundation; either version 2.1 of the License, or (at your option) any later version. http://www.gnu.org/licenses/lgpl-2.1.html -License of media (textures and sounds) --------------------------------------- +License of media (textures, models and sounds) +---------------------------------------------- Attribution-ShareAlike 3.0 Unported (CC BY-SA 3.0) http://creativecommons.org/licenses/by-sa/3.0/ -Authors of media files ------------------------ -Everything not listed in here: -Copyright (C) 2010-2012 celeron55, Perttu Ahola +Authors of media (model) +------------------------ +Jean-Patrick G. (kilbith) (MIT): +stairs_stair.obj diff --git a/mods/stairs/license.txt b/mods/stairs/license.txt new file mode 100644 index 00000000..2bd78401 --- /dev/null +++ b/mods/stairs/license.txt @@ -0,0 +1,15 @@ +License of source code +---------------------- + +GNU Lesser General Public License, version 2.1 +Copyright (C) 2011-2016 Kahrl +Copyright (C) 2011-2016 celeron55, Perttu Ahola + +This program is free software; you can redistribute it and/or modify it under the terms +of the GNU Lesser General Public License as published by the Free Software Foundation; +either version 2.1 of the License, or (at your option) any later version. + +This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; +without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. +See the GNU Lesser General Public License for more details: +https://www.gnu.org/licenses/old-licenses/lgpl-2.1.html diff --git a/mods/tnt/README.txt b/mods/tnt/README.txt index 2ec50d6b..2b148800 100644 --- a/mods/tnt/README.txt +++ b/mods/tnt/README.txt @@ -10,19 +10,31 @@ sofar (sofar@foo-projects.org) (MIT) Authors of media (textures) --------------------------- -? (MIT) -sofar (sofar@foo-projects.org) (MIT) +BlockMen (MIT): +All textures not mentioned below. -Introduction: +ShadowNinja (MIT): +tnt_smoke.png + +Wuzzy (MIT): +All gunpowder textures except tnt_gunpowder_inventory.png. + +sofar (sofar@foo-projects.org) (MIT): +tnt_blast.png + +Introduction +------------ This mod adds TNT to Minetest. TNT is a tool to help the player in mining. How to use the mod: -Craft gunpowder by placing coal and gravel in the crafting area. The -gunpowder can be used to craft TNT or as fuze for TNT. To craft TNT -surround gunpowder with 4 wood in a + shape. +Craft gunpowder by placing coal and gravel in the crafting area. +The gunpowder can be used to craft TNT or as fuse for TNT. +To craft TNT surround gunpowder with 4 wood in a + shape. + There are different ways to blow up TNT: 1. Hit it with a torch. - 2. Hit a gunpowder fuze that leads to a TNT block with a torch. - 3. Activate it with mesecons (fastest way) -Be aware of the damage radius of 7 blocks! + 2. Hit a gunpowder fuse that leads to a TNT block with a torch or flint-and-steel. + 3. Activate it with mesecons (fastest way). + +Be aware of the damage radius of 6 blocks! diff --git a/mods/tnt/license.txt b/mods/tnt/license.txt index 0a1cfe18..6519bb70 100644 --- a/mods/tnt/license.txt +++ b/mods/tnt/license.txt @@ -2,10 +2,11 @@ License of source code and media (textures) ------------------------------------------- The MIT License (MIT) -Copyright (C) 2014-2016 PilzAdam (source code) -Copyright (C) 2014-2016 ShadowNinja (source code) -Copyright (C) 2016 sofar (sofar@foo-projects.org) (source code and textures) -Copyright (C) 201? ? (textures) +Copyright (C) 2014-2016 PilzAdam +Copyright (C) 2014-2016 ShadowNinja +Copyright (C) 2016 sofar (sofar@foo-projects.org) +Copyright (C) 2014-2016 BlockMen +Copyright (C) 2015-2016 Wuzzy Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software diff --git a/mods/vessels/README.txt b/mods/vessels/README.txt index c2a802f4..3af9be5f 100644 --- a/mods/vessels/README.txt +++ b/mods/vessels/README.txt @@ -1,5 +1,6 @@ Minetest Game mod: vessels ========================== +See license.txt for license information. Crafts ------- @@ -34,17 +35,17 @@ the Free Software Foundation; either version 2.1 of the License, or http://www.gnu.org/licenses/lgpl-2.1.html -License of media (textures and sounds) --------------------------------------- -WTFPL +License of media (textures) +--------------------------- +MIT Authors of media files ----------------------- Unless specifically noted, Copyright (C) 2012 Vanessa Ezekowitz -The following textures were modified by Thomas-S (License is CC0): - vessels_drinking_glass.png - vessels_drinking_glass_inv.png (Paramat helped to improve this texture) - vessels_glass_bottle.png - vessels_steel_bottle.png +The following textures were modified by Thomas-S (CC0 1.0): + vessels_drinking_glass.png + vessels_drinking_glass_inv.png (Paramat helped to improve this texture) + vessels_glass_bottle.png + vessels_steel_bottle.png diff --git a/mods/vessels/license.txt b/mods/vessels/license.txt new file mode 100644 index 00000000..bd72faae --- /dev/null +++ b/mods/vessels/license.txt @@ -0,0 +1,15 @@ +License of source code +---------------------- + +GNU Lesser General Public License, version 2.1 +Copyright (C) 2012-2016 Vanessa Ezekowitz +Copyright (C) 2012-2016 celeron55, Perttu Ahola + +This program is free software; you can redistribute it and/or modify it under the terms +of the GNU Lesser General Public License as published by the Free Software Foundation; +either version 2.1 of the License, or (at your option) any later version. + +This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; +without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. +See the GNU Lesser General Public License for more details: +https://www.gnu.org/licenses/old-licenses/lgpl-2.1.html diff --git a/mods/walls/license.txt b/mods/walls/license.txt index de0c2b2c..6ac0d08b 100644 --- a/mods/walls/license.txt +++ b/mods/walls/license.txt @@ -1,5 +1,7 @@ License of source code ---------------------- + +GNU Lesser General Public License, version 2.1 Copyright (C) 2016 sofar (sofar@foo-projects.org) This program is free software; you can redistribute it and/or modify it under the terms diff --git a/mods/xpanes/README.txt b/mods/xpanes/README.txt index b89e74a2..d2613a2d 100644 --- a/mods/xpanes/README.txt +++ b/mods/xpanes/README.txt @@ -1,16 +1,16 @@ Minetest Game mod: xpanes ========================= +See license.txt for license information. -License: --------- -Copyright (C) xyz -modified by BlockMen (iron bars) +Authors of source code +---------------------- +xyz (MIT) +Modified by BlockMen (iron bars) (MIT) -Gambit (WTFPL): - xpanes_bar.png +Authors of media (textures) +--------------------------- +xyz (MIT): +All textures not mentioned below. -This program is free software. It comes without any warranty, to -the extent permitted by applicable law. You can redistribute it -and/or modify it under the terms of the Do What The Fuck You Want -To Public License, Version 2, as published by Sam Hocevar. See -http://sam.zoy.org/wtfpl/COPYING for more details. +Gambit (MIT): +xpanes_bar.png diff --git a/mods/xpanes/license.txt b/mods/xpanes/license.txt new file mode 100644 index 00000000..83bf86e5 --- /dev/null +++ b/mods/xpanes/license.txt @@ -0,0 +1,26 @@ +License of source code and media (textures) +------------------------------------------- + +The MIT License (MIT) +Copyright (C) 2014-2016 xyz +Copyright (C) 2014-2016 BlockMen +Copyright (C) 2013-2016 Gambit + +Permission is hereby granted, free of charge, to any person obtaining a copy of this +software and associated documentation files (the "Software"), to deal in the Software +without restriction, including without limitation the rights to use, copy, modify, merge, +publish, distribute, sublicense, and/or sell copies of the Software, and to permit +persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or +substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, +INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR +PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE +FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR +OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER +DEALINGS IN THE SOFTWARE. + +For more details: +https://opensource.org/licenses/MIT From 6171fb43f04ede1a4cffeb8473779c26336ad1c2 Mon Sep 17 00:00:00 2001 From: paramat Date: Wed, 7 Sep 2016 02:52:57 +0100 Subject: [PATCH 06/99] Change WTFPL to MIT (part 3) Relicense WTFPL media to CC BY-SA 3.0. Various corrections and edits. --- mods/beds/README.txt | 30 ++++++++++------- mods/beds/license.txt | 40 +++++++++++++++++++++-- mods/boats/README.txt | 9 ++++-- mods/boats/license.txt | 44 +++++++++++++++++++++++-- mods/bones/README.txt | 6 ++-- mods/bones/license.txt | 39 ++++++++++++++++++++-- mods/bucket/README.txt | 3 +- mods/bucket/license.txt | 44 +++++++++++++++---------- mods/creative/README.txt | 14 ++------ mods/creative/license.txt | 41 +++++++++++++++++++++-- mods/default/README.txt | 29 ++++++++--------- mods/default/license.txt | 48 +++++++++++++-------------- mods/doors/README.txt | 8 +++-- mods/doors/license.txt | 9 +++--- mods/dye/README.txt | 11 +++++-- mods/dye/license.txt | 40 +++++++++++++++++++++-- mods/farming/README.txt | 9 +++--- mods/farming/license.txt | 10 +++--- mods/fire/README.txt | 22 ++++++------- mods/fire/license.txt | 34 ++++++++++++++++++++ mods/flowers/README.txt | 22 ++++++++++--- mods/flowers/license.txt | 45 +++++++++++++++++++++++--- mods/give_initial_stuff/README.txt | 1 + mods/give_initial_stuff/license.txt | 1 + mods/nyancat/README.txt | 16 +++------ mods/nyancat/license.txt | 44 +++++++++++++++---------- mods/screwdriver/README.txt | 17 +++------- mods/screwdriver/license.txt | 38 +++++++++++++++++++++- mods/stairs/README.txt | 29 ++++++----------- mods/stairs/license.txt | 36 +++++++++++++++++++++ mods/tnt/README.txt | 9 +++--- mods/tnt/license.txt | 45 +++++++++++++++++++++++--- mods/vessels/README.txt | 50 ++++++----------------------- mods/vessels/license.txt | 37 +++++++++++++++++++++ mods/wool/README.txt | 14 ++++---- mods/wool/license.txt | 1 + mods/xpanes/README.txt | 13 ++++---- mods/xpanes/license.txt | 42 ++++++++++++++++++++++-- 38 files changed, 682 insertions(+), 268 deletions(-) diff --git a/mods/beds/README.txt b/mods/beds/README.txt index 1f8400c4..cda6ebd9 100644 --- a/mods/beds/README.txt +++ b/mods/beds/README.txt @@ -4,17 +4,23 @@ See license.txt for license information. Authors of source code ---------------------- -BlockMen (MIT) +Originally by BlockMen (MIT) +Various Minetest developers and contributors (MIT) -About -~~~~~ -This mod adds a bed to Minetest which allows to skip the night. To sleep rightclick the bed, if playing -in singleplayer mode the night gets skipped imideatly. If playing on server you get shown how many other -players are in bed too. If all players are sleeping the night gets skipped aswell. Also the night skip can be forced -if more than 50% of the players are lying in bed and use this option. +Authors of media (textures) +--------------------------- +BlockMen (CC BY-SA 3.0) -Another feature is a controled respawning. If you have slept in bed (not just lying in it) your respawn point -is set to the beds location and you will respawn there after death. -You can disable the respawn at beds by setting "enable_bed_respawn = false" in minetest.conf -You can also disable the night skip feature by setting "enable_bed_night_skip = false" in minetest.conf or by using -the /set command ingame. +This mod adds a bed to Minetest which allows to skip the night. +To sleep, rightclick the bed. If playing in singleplayer mode the night gets skipped +immediately. If playing multiplayer you get shown how many other players are in bed too, +if all players are sleeping the night gets skipped. The night skip can be forced if more +than 50% of the players are lying in bed and use this option. + +Another feature is a controlled respawning. If you have slept in bed (not just lying in +it) your respawn point is set to the beds location and you will respawn there after +death. +You can disable the respawn at beds by setting "enable_bed_respawn = false" in +minetest.conf. +You can disable the night skip feature by setting "enable_bed_night_skip = false" in +minetest.conf or by using the /set command in-game. diff --git a/mods/beds/license.txt b/mods/beds/license.txt index 8824b04a..0494b36b 100644 --- a/mods/beds/license.txt +++ b/mods/beds/license.txt @@ -1,8 +1,9 @@ -License of source code and media (textures) -------------------------------------------- +License of source code +---------------------- The MIT License (MIT) Copyright (C) 2014-2016 BlockMen +Copyright (C) 2014-2016 Various Minetest developers and contributors Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software @@ -22,3 +23,38 @@ DEALINGS IN THE SOFTWARE. For more details: https://opensource.org/licenses/MIT + + +Licenses of media (textures) +---------------------------- + +Attribution-ShareAlike 3.0 Unported (CC BY-SA 3.0) +Copyright (C) 2014-2016 BlockMen + +You are free to: +Share — copy and redistribute the material in any medium or format. +Adapt — remix, transform, and build upon the material for any purpose, even commercially. +The licensor cannot revoke these freedoms as long as you follow the license terms. + +Under the following terms: + +Attribution — You must give appropriate credit, provide a link to the license, and +indicate if changes were made. You may do so in any reasonable manner, but not in any way +that suggests the licensor endorses you or your use. + +ShareAlike — If you remix, transform, or build upon the material, you must distribute +your contributions under the same license as the original. + +No additional restrictions — You may not apply legal terms or technological measures that +legally restrict others from doing anything the license permits. + +Notices: + +You do not have to comply with the license for elements of the material in the public +domain or where your use is permitted by an applicable exception or limitation. +No warranties are given. The license may not give you all of the permissions necessary +for your intended use. For example, other rights such as publicity, privacy, or moral +rights may limit how you use the material. + +For more details: +http://creativecommons.org/licenses/by-sa/3.0/ diff --git a/mods/boats/README.txt b/mods/boats/README.txt index efacb32e..59631d9d 100644 --- a/mods/boats/README.txt +++ b/mods/boats/README.txt @@ -4,9 +4,12 @@ See license.txt for license information. Authors of source code ---------------------- -PilzAdam (MIT) +Originally by PilzAdam (MIT) +Various Minetest developers and contributors (MIT) Authors of media (textures and model) ------------------------------------- -Textures: Zeg9 (MIT) -Model: thetoon and Zeg9 (MIT), modified by PavelS(SokolovPavel) (MIT) +Textures: Zeg9 (CC BY-SA 3.0) +Model: thetoon and Zeg9 (CC BY-SA 3.0), + modified by PavelS(SokolovPavel) (CC BY-SA 3.0), + modified by sofar (CC BY-SA 3.0) diff --git a/mods/boats/license.txt b/mods/boats/license.txt index f0baa5f1..d4afe75f 100644 --- a/mods/boats/license.txt +++ b/mods/boats/license.txt @@ -1,9 +1,9 @@ -License of source code and media (textures and model) ------------------------------------------------------ +License of source code +---------------------- The MIT License (MIT) Copyright (C) 2012-2016 PilzAdam -Copyright (C) 2012-2016 Zeg9, thetoon, PavelS(SokolovPavel) +Copyright (C) 2012-2016 Various Minetest developers and contributors Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software @@ -23,3 +23,41 @@ DEALINGS IN THE SOFTWARE. For more details: https://opensource.org/licenses/MIT + + +Licenses of media (textures and model) +-------------------------------------- + +Attribution-ShareAlike 3.0 Unported (CC BY-SA 3.0) +Copyright (C) 2012-2016 Zeg9 +Copyright (C) 2012-2016 thetoon +Copyright (C) 2012-2016 PavelS(SokolovPavel) +Copyright (C) 2016 sofar (sofar@foo-projects.org) + +You are free to: +Share — copy and redistribute the material in any medium or format. +Adapt — remix, transform, and build upon the material for any purpose, even commercially. +The licensor cannot revoke these freedoms as long as you follow the license terms. + +Under the following terms: + +Attribution — You must give appropriate credit, provide a link to the license, and +indicate if changes were made. You may do so in any reasonable manner, but not in any way +that suggests the licensor endorses you or your use. + +ShareAlike — If you remix, transform, or build upon the material, you must distribute +your contributions under the same license as the original. + +No additional restrictions — You may not apply legal terms or technological measures that +legally restrict others from doing anything the license permits. + +Notices: + +You do not have to comply with the license for elements of the material in the public +domain or where your use is permitted by an applicable exception or limitation. +No warranties are given. The license may not give you all of the permissions necessary +for your intended use. For example, other rights such as publicity, privacy, or moral +rights may limit how you use the material. + +For more details: +http://creativecommons.org/licenses/by-sa/3.0/ diff --git a/mods/bones/README.txt b/mods/bones/README.txt index 8a660717..91bcd109 100644 --- a/mods/bones/README.txt +++ b/mods/bones/README.txt @@ -1,12 +1,12 @@ Minetest Game mod: bones ======================== - See license.txt for license information. Authors of source code ---------------------- -PilzAdam (MIT) +Originally by PilzAdam (MIT) +Various Minetest developers and contributors (MIT) Authors of media (textures) --------------------------- -All textures: paramat (MIT) +All textures: paramat (CC BY-SA 3.0) diff --git a/mods/bones/license.txt b/mods/bones/license.txt index 5d05e551..fe525841 100644 --- a/mods/bones/license.txt +++ b/mods/bones/license.txt @@ -1,9 +1,9 @@ -License of source code and textures ------------------------------------ +License of source code +---------------------- The MIT License (MIT) Copyright (C) 2012-2016 PilzAdam -Copyright (C) 2016 paramat +Copyright (C) 2012-2016 Various Minetest developers and contributors Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software @@ -23,3 +23,36 @@ DEALINGS IN THE SOFTWARE. For more details: https://opensource.org/licenses/MIT + + +Licenses of media (textures) +---------------------------- + +Attribution-ShareAlike 3.0 Unported (CC BY-SA 3.0) +Copyright (C) 2016 paramat + +You are free to: +Share — copy and redistribute the material in any medium or format. +Adapt — remix, transform, and build upon the material for any purpose, even commercially. +The licensor cannot revoke these freedoms as long as you follow the license terms. + +Under the following terms: + +Attribution — You must give appropriate credit, provide a link to the license, and +indicate if changes were made. You may do so in any reasonable manner, but not in any way +that suggests the licensor endorses you or your use. + +ShareAlike — If you remix, transform, or build upon the material, you must distribute +your contributions under the same license as the original. + +No additional restrictions — You may not apply legal terms or technological measures that +legally restrict others from doing anything the license permits. + +Notices: + +You do not have to comply with the license for elements of the material in the public +domain or where your use is permitted by an applicable exception or limitation. +No warranties are given. The license may not give you all of the permissions necessary +for your intended use. For example, other rights such as publicity, privacy, or moral +rights may limit how you use the material. + diff --git a/mods/bucket/README.txt b/mods/bucket/README.txt index 4bb0f092..45e0ec54 100644 --- a/mods/bucket/README.txt +++ b/mods/bucket/README.txt @@ -6,7 +6,8 @@ Authors of source code ---------------------- Kahrl (LGPL 2.1) celeron55, Perttu Ahola (LGPL 2.1) +Various Minetest developers and contributors (LGPL 2.1) Authors of media (textures) --------------------------- -ElementW (MIT) +ElementW (CC BY-SA 3.0) diff --git a/mods/bucket/license.txt b/mods/bucket/license.txt index 4fbbeadc..a5156ae6 100644 --- a/mods/bucket/license.txt +++ b/mods/bucket/license.txt @@ -4,6 +4,7 @@ License of source code GNU Lesser General Public License, version 2.1 Copyright (C) 2011-2016 Kahrl Copyright (C) 2011-2016 celeron55, Perttu Ahola +Copyright (C) 2011-2016 Various Minetest developers and contributors This program is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; @@ -15,27 +16,36 @@ See the GNU Lesser General Public License for more details: https://www.gnu.org/licenses/old-licenses/lgpl-2.1.html -License of media (textures) ---------------------------- +Licenses of media (textures) +---------------------------- -The MIT License (MIT) +Attribution-ShareAlike 3.0 Unported (CC BY-SA 3.0) Copyright (C) 2015-2016 ElementW -Permission is hereby granted, free of charge, to any person obtaining a copy of this -software and associated documentation files (the "Software"), to deal in the Software -without restriction, including without limitation the rights to use, copy, modify, merge, -publish, distribute, sublicense, and/or sell copies of the Software, and to permit -persons to whom the Software is furnished to do so, subject to the following conditions: +You are free to: +Share — copy and redistribute the material in any medium or format. +Adapt — remix, transform, and build upon the material for any purpose, even commercially. +The licensor cannot revoke these freedoms as long as you follow the license terms. -The above copyright notice and this permission notice shall be included in all copies or -substantial portions of the Software. +Under the following terms: -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, -INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR -PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE -FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR -OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER -DEALINGS IN THE SOFTWARE. +Attribution — You must give appropriate credit, provide a link to the license, and +indicate if changes were made. You may do so in any reasonable manner, but not in any way +that suggests the licensor endorses you or your use. + +ShareAlike — If you remix, transform, or build upon the material, you must distribute +your contributions under the same license as the original. + +No additional restrictions — You may not apply legal terms or technological measures that +legally restrict others from doing anything the license permits. + +Notices: + +You do not have to comply with the license for elements of the material in the public +domain or where your use is permitted by an applicable exception or limitation. +No warranties are given. The license may not give you all of the permissions necessary +for your intended use. For example, other rights such as publicity, privacy, or moral +rights may limit how you use the material. For more details: -https://opensource.org/licenses/MIT +http://creativecommons.org/licenses/by-sa/3.0/ diff --git a/mods/creative/README.txt b/mods/creative/README.txt index 2a1cb551..82357f30 100644 --- a/mods/creative/README.txt +++ b/mods/creative/README.txt @@ -2,21 +2,11 @@ Minetest Game mod: creative =========================== See license.txt for license information. -Implements creative mode. - -Switch on by using the "creative_mode" setting. - -Registered items that: -- have a description, and -- do not have the group not_in_creative_inventory -are added to the creative inventory. - - Authors of source code ---------------------- -Perttu Ahola (celeron55) (MIT) +Originally by Perttu Ahola (celeron55) (MIT) Jean-Patrick G. (kilbith) (MIT) Author of media (textures) -------------------------- -Jean-Patrick G. (kilbith) (MIT) +Jean-Patrick G. (kilbith) (CC BY-SA 3.0) diff --git a/mods/creative/license.txt b/mods/creative/license.txt index aa0725b3..4ad1d5ff 100644 --- a/mods/creative/license.txt +++ b/mods/creative/license.txt @@ -1,9 +1,9 @@ -License of source code and media (textures) -------------------------------------------- +License of source code +---------------------- The MIT License (MIT) Copyright (C) 2012-2016 Perttu Ahola (celeron55) -Copyright (C) 2016 Jean-Patrick G. (kilbith) +Copyright (C) 2015-2016 Jean-Patrick G. (kilbith) Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software @@ -23,3 +23,38 @@ DEALINGS IN THE SOFTWARE. For more details: https://opensource.org/licenses/MIT + + +Licenses of media (textures) +---------------------------- + +Attribution-ShareAlike 3.0 Unported (CC BY-SA 3.0) +Copyright (C) 2016 Jean-Patrick G. (kilbith) + +You are free to: +Share — copy and redistribute the material in any medium or format. +Adapt — remix, transform, and build upon the material for any purpose, even commercially. +The licensor cannot revoke these freedoms as long as you follow the license terms. + +Under the following terms: + +Attribution — You must give appropriate credit, provide a link to the license, and +indicate if changes were made. You may do so in any reasonable manner, but not in any way +that suggests the licensor endorses you or your use. + +ShareAlike — If you remix, transform, or build upon the material, you must distribute +your contributions under the same license as the original. + +No additional restrictions — You may not apply legal terms or technological measures that +legally restrict others from doing anything the license permits. + +Notices: + +You do not have to comply with the license for elements of the material in the public +domain or where your use is permitted by an applicable exception or limitation. +No warranties are given. The license may not give you all of the permissions necessary +for your intended use. For example, other rights such as publicity, privacy, or moral +rights may limit how you use the material. + +For more details: +http://creativecommons.org/licenses/by-sa/3.0/ diff --git a/mods/default/README.txt b/mods/default/README.txt index 269c149e..593bc7a6 100644 --- a/mods/default/README.txt +++ b/mods/default/README.txt @@ -4,7 +4,7 @@ See license.txt for license information. Authors of source code ---------------------- -celeron55, Perttu Ahola (LGPL 2.1) +Originally by celeron55, Perttu Ahola (LGPL 2.1) Various Minetest developers and contributors (LGPL 2.1) Authors of media (textures, models and sounds) @@ -12,7 +12,7 @@ Authors of media (textures, models and sounds) Everything not listed in here: celeron55, Perttu Ahola (CC BY-SA 3.0) -Cisoun's texture pack (MIT): +Cisoun's texture pack (CC BY-SA 3.0): default_jungletree.png default_lava.png default_leaves.png @@ -22,7 +22,7 @@ Cisoun's texture pack (MIT): default_tree_top.png default_water.png -Cisoun's conifers mod (MIT): +Cisoun's conifers mod (CC BY-SA 3.0): default_pine_needles.png Originating from G4JC's Almost MC Texture Pack (CC BY-SA 3.0): @@ -30,36 +30,36 @@ Originating from G4JC's Almost MC Texture Pack (CC BY-SA 3.0): default_torch_on_ceiling.png default_torch_on_floor.png -VanessaE's animated torches (MIT): +VanessaE's animated torches (CC BY-SA 3.0): default_torch_animated.png default_torch_on_ceiling_animated.png default_torch_on_floor_animated.png default_torch_on_floor.png -RealBadAngel's animated water (MIT): +RealBadAngel's animated water (CC BY-SA 3.0): default_water_source_animated.png default_water_flowing_animated.png -VanessaE (MIT): +VanessaE (CC BY-SA 3.0): default_desert_sand.png default_desert_stone.png default_sand.png default_mese_crystal.png default_mese_crystal_fragment.png -Calinou (CC BY-SA): +Calinou (CC BY-SA 3.0): default_brick.png default_papyrus.png default_mineral_copper.png default_glass_detail.png -MirceaKitsune (MIT): +MirceaKitsune (CC BY-SA 3.0): character.x Jordach (CC BY-SA 3.0): character.png -PilzAdam (MIT): +PilzAdam (CC BY-SA 3.0): default_jungleleaves.png default_junglesapling.png default_obsidian_glass.png @@ -67,10 +67,10 @@ PilzAdam (MIT): default_mineral_gold.png default_snowball.png -jojoa1997 (MIT): +jojoa1997 (CC BY-SA 3.0): default_obsidian.png -InfinityProject (MIT): +InfinityProject (CC BY-SA 3.0): default_mineral_diamond.png Splizard (CC BY-SA 3.0): @@ -146,18 +146,17 @@ sofar (CC BY-SA 3.0): default_aspen_tree default_aspen_tree_top, derived from default_pine_tree_top (by paramat) default_aspen_wood, derived from default_pine_wood (by paramat) - -sofar (MIT): default_gravel.png -- Derived from Gambit's PixelBOX texture pack light gravel Neuromancer (CC BY-SA 2.0): default_cobble.png, based on texture by Brane praefect default_mossycobble.png, based on texture by Brane praefect + Neuromancer (CC BY-SA 3.0): default_dirt.png default_furnace_*.png -Gambit (MIT): +Gambit (CC BY-SA 3.0): default_bronze_ingot.png default_copper_ingot.png default_copper_lump.png @@ -172,7 +171,7 @@ Gambit (MIT): default_sign_wall_wood.png default_flint.png -asl97 (MIT): +asl97 (CC BY-SA 3.0): default_ice.png KevDoy (CC BY-SA 3.0) diff --git a/mods/default/license.txt b/mods/default/license.txt index c10ec7ee..45ea3e45 100644 --- a/mods/default/license.txt +++ b/mods/default/license.txt @@ -18,33 +18,29 @@ https://www.gnu.org/licenses/old-licenses/lgpl-2.1.html Licenses of media (textures, models and sounds) ----------------------------------------------- -The MIT License (MIT) -Copyright (C) 2010-2016 Various Minetest developers and contributors - -Permission is hereby granted, free of charge, to any person obtaining a copy of this -software and associated documentation files (the "Software"), to deal in the Software -without restriction, including without limitation the rights to use, copy, modify, merge, -publish, distribute, sublicense, and/or sell copies of the Software, and to permit -persons to whom the Software is furnished to do so, subject to the following conditions: - -The above copyright notice and this permission notice shall be included in all copies or -substantial portions of the Software. - -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, -INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR -PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE -FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR -OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER -DEALINGS IN THE SOFTWARE. - -For more details: -https://opensource.org/licenses/MIT - ----------------- - Attribution-ShareAlike 3.0 Unported (CC BY-SA 3.0) -Copyright (C) 2010-2016 celeron55, Perttu Ahola -Copyright (C) 2010-2016 Various Minetest developers and contributors +Copyright (C) 2010-2016: + celeron55, Perttu Ahola + Cisoun + G4JC + VanessaE + RealBadAngel + Calinou + MirceaKitsune + Jordach + PilzAdam + jojoa1997 + InfinityProject + Splizard + Zeg9 + paramat + BlockMen + sofar + Neuromancer + Gambit + asl97 + KevDoy + Mito551 You are free to: Share — copy and redistribute the material in any medium or format. diff --git a/mods/doors/README.txt b/mods/doors/README.txt index 2684d98c..9ad7093d 100644 --- a/mods/doors/README.txt +++ b/mods/doors/README.txt @@ -14,6 +14,8 @@ Re-implemented most of the door algorithms, added meshes, UV wrapped texture. Added doors API to facilitate coding mods accessing and operating doors. Added Fence Gate model, code, and sounds. +Various Minetest developers and contributors (MIT) + Authors of media (textures) --------------------------- @@ -24,7 +26,7 @@ Following textures created by Fernando Zapata (CC BY-SA 3.0): door_wood_b.png door_wood_b_r.png -Following textures created by BlockMen (MIT): +Following textures created by BlockMen (CC BY-SA 3.0): door_trapdoor.png door_obsidian_glass_side.png @@ -41,13 +43,13 @@ Following textures created by sofar (CC-BY-SA-3.0): doors_trapdoor_steel_side.png door_trapdoor_side.png -Obsidian door textures by red-001 based on textures by Pilzadam and BlockMen (MIT): +Obsidian door textures by red-001 based on textures by Pilzadam and BlockMen (CC BY-SA 3.0): door_obsidian_glass.png Glass door textures by red-001 based on textures by celeron55 (CC BY-SA 3.0): door_glass.png -All other textures (created by PilzAdam) (MIT): +All other textures (created by PilzAdam) (CC BY-SA 3.0): Door textures were converted to the new texture map by sofar, paramat and red-001, under the same license as the originals. diff --git a/mods/doors/license.txt b/mods/doors/license.txt index b97f6acd..8ce73c49 100644 --- a/mods/doors/license.txt +++ b/mods/doors/license.txt @@ -1,12 +1,11 @@ -License of source code and media (textures) -------------------------------------------- +License of source code +---------------------- The MIT License (MIT) Copyright (C) 2012-2016 PilzAdam Copyright (C) 2014-2016 BlockMen Copyright (C) 2015-2016 sofar (sofar@foo-projects.org) -Copyright (C) 2016 red-001 -Copyright (C) 2016 paramat +Copyright (C) 2012-2016 Various Minetest developers and contributors Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software @@ -34,6 +33,8 @@ Licenses of media (textures, models and sounds) Attribution-ShareAlike 3.0 Unported (CC BY-SA 3.0) Copyright (C) 2011-2016 Fernando Zapata Copyright (C) 2014-2016 celeron55 +Copyright (C) 2012-2016 PilzAdam +Copyright (C) 2014-2016 BlockMen Copyright (C) 2015-2016 sofar Copyright (C) 2016 red-001 Copyright (C) 2016 paramat diff --git a/mods/dye/README.txt b/mods/dye/README.txt index 33766fcb..a2fbdd24 100644 --- a/mods/dye/README.txt +++ b/mods/dye/README.txt @@ -3,6 +3,11 @@ Minetest Game mod: dye See license.txt for license information. See init.lua for documentation. -Authors of source code and media (textures) -------------------------------------------- -Perttu Ahola (celeron55) (MIT) +Authors of source code +---------------------- +Originally by Perttu Ahola (celeron55) (MIT) +Various Minetest developers and contributors (MIT) + +Authors of media (textures) +--------------------------- +Perttu Ahola (celeron55) (CC BY-SA 3.0) diff --git a/mods/dye/license.txt b/mods/dye/license.txt index 47c7498e..bf9d3501 100644 --- a/mods/dye/license.txt +++ b/mods/dye/license.txt @@ -1,8 +1,9 @@ -License of source code and media (textures) -------------------------------------------- +License of source code +---------------------- The MIT License (MIT) Copyright (C) 2012-2016 Perttu Ahola (celeron55) +Copyright (C) 2012-2016 Various Minetest developers and contributors Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software @@ -22,3 +23,38 @@ DEALINGS IN THE SOFTWARE. For more details: https://opensource.org/licenses/MIT + + +Licenses of media (textures) +---------------------------- + +Attribution-ShareAlike 3.0 Unported (CC BY-SA 3.0) +Copyright (C) 2012-2016 Perttu Ahola (celeron55) + +You are free to: +Share — copy and redistribute the material in any medium or format. +Adapt — remix, transform, and build upon the material for any purpose, even commercially. +The licensor cannot revoke these freedoms as long as you follow the license terms. + +Under the following terms: + +Attribution — You must give appropriate credit, provide a link to the license, and +indicate if changes were made. You may do so in any reasonable manner, but not in any way +that suggests the licensor endorses you or your use. + +ShareAlike — If you remix, transform, or build upon the material, you must distribute +your contributions under the same license as the original. + +No additional restrictions — You may not apply legal terms or technological measures that +legally restrict others from doing anything the license permits. + +Notices: + +You do not have to comply with the license for elements of the material in the public +domain or where your use is permitted by an applicable exception or limitation. +No warranties are given. The license may not give you all of the permissions necessary +for your intended use. For example, other rights such as publicity, privacy, or moral +rights may limit how you use the material. + +For more details: +http://creativecommons.org/licenses/by-sa/3.0/ diff --git a/mods/farming/README.txt b/mods/farming/README.txt index 310492ca..3ccd8c30 100644 --- a/mods/farming/README.txt +++ b/mods/farming/README.txt @@ -4,12 +4,13 @@ See license.txt for license information. Authors of source code ---------------------- -PilzAdam (MIT) +Originally by PilzAdam (MIT) webdesigner97 (MIT) +Various Minetest developers and contributors (MIT) Authors of media (textures) --------------------------- -Created by PilzAdam (MIT): +Created by PilzAdam (CC BY 3.0): farming_bread.png farming_soil.png farming_soil_wet.png @@ -24,10 +25,10 @@ Created by BlockMen (CC BY 3.0): farming_tool_stonehoe.png farming_tool_woodhoe.png -Created by MasterGollum (MIT): +Created by MasterGollum (CC BY 3.0): farming_straw.png -Created by Gambit (MIT): +Created by Gambit (CC BY 3.0): farming_wheat.png farming_wheat_*.png farming_cotton_*.png diff --git a/mods/farming/license.txt b/mods/farming/license.txt index 82f73de5..8cbb63a8 100644 --- a/mods/farming/license.txt +++ b/mods/farming/license.txt @@ -1,11 +1,10 @@ -License of source code and media (textures) -------------------------------------------- +License of source code +---------------------- The MIT License (MIT) Copyright (C) 2012-2016 PilzAdam Copyright (C) 2014-2016 webdesigner97 -Copyright (C) 2015-2016 MasterGollum -Copyright (C) 2015-2016 Gambit +Copyright (C) 2012-2016 Various Minetest developers and contributors Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software @@ -31,7 +30,10 @@ License of media (textures) --------------------------- Attribution 3.0 Unported (CC BY 3.0) +Copyright (C) 2012-2016 PilzAdam Copyright (C) 2014-2016 BlockMen +Copyright (C) 2015-2016 MasterGollum +Copyright (C) 2015-2016 Gambit You are free to: Share — copy and redistribute the material in any medium or format. diff --git a/mods/fire/README.txt b/mods/fire/README.txt index 2454478c..a0f298ce 100644 --- a/mods/fire/README.txt +++ b/mods/fire/README.txt @@ -4,22 +4,22 @@ See license.txt for license information. Authors of source code ---------------------- -Perttu Ahola (celeron55) (LGPL 2.1) 2012 +Originally by Perttu Ahola (celeron55) (LGPL 2.1) +Various Minetest developers and contributors (LGPL 2.1) -Authors of media files ----------------------- +Authors of media (textures and sounds) +-------------------------------------- Everything not listed in here: Copyright (C) 2012 Perttu Ahola (celeron55) (CC BY-SA 3.0) -fire_small.ogg sampled from: - http://www.freesound.org/people/dobroide/sounds/4211/ (CC BY 3.0) 2005 - -fire_large.ogg sampled from: - http://www.freesound.org/people/Dynamicell/sounds/17548/ (CC BY 3.0) 2006 - fire_basic_flame_animated.png: - Muadtralk (CC BY-SA 3.0) 2012 + Muadtralk (CC BY-SA 3.0) fire_flint_steel.png - Gambit (MIT) 2013 + Gambit (CC BY-SA 3.0) +fire_small.ogg sampled from: + http://www.freesound.org/people/dobroide/sounds/4211/ (CC BY 3.0) + +fire_large.ogg sampled from: + http://www.freesound.org/people/Dynamicell/sounds/17548/ (CC BY 3.0) diff --git a/mods/fire/license.txt b/mods/fire/license.txt index 6841148a..87ade6b3 100644 --- a/mods/fire/license.txt +++ b/mods/fire/license.txt @@ -3,6 +3,7 @@ License of source code GNU Lesser General Public License, version 2.1 Copyright (C) 2012-2016 celeron55, Perttu Ahola +Copyright (C) 2012-2016 Various Minetest developers and contributors This program is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; @@ -19,6 +20,8 @@ Licenses of media (textures) Attribution-ShareAlike 3.0 Unported (CC BY-SA 3.0) Copyright (C) 2012-2016 Perttu Ahola (celeron55) +Copyright (C) 2012-2016 Muadtralk +Copyright (C) 2013-2016 Gambit You are free to: Share — copy and redistribute the material in any medium or format. @@ -47,3 +50,34 @@ rights may limit how you use the material. For more details: http://creativecommons.org/licenses/by-sa/3.0/ + +----------------------- + +Attribution 3.0 Unported (CC BY 3.0) +Copyright (C) 2005 dobroide +Copyright (C) 2006 Dynamicell + +You are free to: +Share — copy and redistribute the material in any medium or format. +Adapt — remix, transform, and build upon the material for any purpose, even commercially. +The licensor cannot revoke these freedoms as long as you follow the license terms. + +Under the following terms: + +Attribution — You must give appropriate credit, provide a link to the license, and +indicate if changes were made. You may do so in any reasonable manner, but not in any way +that suggests the licensor endorses you or your use. + +No additional restrictions — You may not apply legal terms or technological measures that +legally restrict others from doing anything the license permits. + +Notices: + +You do not have to comply with the license for elements of the material in the public +domain or where your use is permitted by an applicable exception or limitation. +No warranties are given. The license may not give you all of the permissions necessary +for your intended use. For example, other rights such as publicity, privacy, or moral +rights may limit how you use the material. + +For more details: +http://creativecommons.org/licenses/by/3.0/ diff --git a/mods/flowers/README.txt b/mods/flowers/README.txt index c9125e25..2a5e4de3 100644 --- a/mods/flowers/README.txt +++ b/mods/flowers/README.txt @@ -4,11 +4,23 @@ See license.txt for license information. Authors of source code ---------------------- -Ironzorg (MIT) -VanessaE (MIT) +Originally by Ironzorg (MIT) and VanessaE (MIT) +Various Minetest developers and contributors (MIT) Authors of media (textures) --------------------------- -Gambit (MIT): -flowers_mushroom_*.png -flowers_waterlily.png +RHRhino (CC BY-SA 3.0): + flowers_dandelion_white.png + flowers_dandelion_yellow.png + flowers_geranium.png + flowers_rose.png + flowers_tulip.png + flowers_viola.png + +Gambit (CC BY-SA 3.0): + flowers_mushroom_brown.png + flowers_mushroom_red.png + flowers_waterlily.png + +yyt16384 (CC BY-SA 3.0): + flowers_waterlily_bottom.png, derived from Gambit's texture diff --git a/mods/flowers/license.txt b/mods/flowers/license.txt index 1f0e6730..d3011622 100644 --- a/mods/flowers/license.txt +++ b/mods/flowers/license.txt @@ -1,9 +1,9 @@ -License of source code and media (textures) -------------------------------------------- +License of source code +---------------------- The MIT License (MIT) -Copyright (C) 2012-2013 Ironzorg, VanessaE -Copyright (C) 2015-2016 Gambit +Copyright (C) 2012-2016 Ironzorg, VanessaE +Copyright (C) 2012-2016 Various Minetest developers and contributors Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software @@ -23,3 +23,40 @@ DEALINGS IN THE SOFTWARE. For more details: https://opensource.org/licenses/MIT + + +Licenses of media (textures) +---------------------------- + +Attribution-ShareAlike 3.0 Unported (CC BY-SA 3.0) +Copyright (C) 2014-2016 RHRhino +Copyright (C) 2015-2016 Gambit +Copyright (C) 2016 yyt16384 + +You are free to: +Share — copy and redistribute the material in any medium or format. +Adapt — remix, transform, and build upon the material for any purpose, even commercially. +The licensor cannot revoke these freedoms as long as you follow the license terms. + +Under the following terms: + +Attribution — You must give appropriate credit, provide a link to the license, and +indicate if changes were made. You may do so in any reasonable manner, but not in any way +that suggests the licensor endorses you or your use. + +ShareAlike — If you remix, transform, or build upon the material, you must distribute +your contributions under the same license as the original. + +No additional restrictions — You may not apply legal terms or technological measures that +legally restrict others from doing anything the license permits. + +Notices: + +You do not have to comply with the license for elements of the material in the public +domain or where your use is permitted by an applicable exception or limitation. +No warranties are given. The license may not give you all of the permissions necessary +for your intended use. For example, other rights such as publicity, privacy, or moral +rights may limit how you use the material. + +For more details: +http://creativecommons.org/licenses/by-sa/3.0/ diff --git a/mods/give_initial_stuff/README.txt b/mods/give_initial_stuff/README.txt index 1155d4d2..cbd240fe 100644 --- a/mods/give_initial_stuff/README.txt +++ b/mods/give_initial_stuff/README.txt @@ -5,3 +5,4 @@ See license.txt for license information. Authors of source code ---------------------- Perttu Ahola (celeron55) (MIT) +Various Minetest developers and contributors (MIT) diff --git a/mods/give_initial_stuff/license.txt b/mods/give_initial_stuff/license.txt index c32f2586..8134c920 100644 --- a/mods/give_initial_stuff/license.txt +++ b/mods/give_initial_stuff/license.txt @@ -3,6 +3,7 @@ License of source code The MIT License (MIT) Copyright (C) 2012-2016 Perttu Ahola (celeron55) +Copyright (C) 2012-2016 Various Minetest developers and contributors Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software diff --git a/mods/nyancat/README.txt b/mods/nyancat/README.txt index 6e7ce4e2..fadc1d23 100644 --- a/mods/nyancat/README.txt +++ b/mods/nyancat/README.txt @@ -2,20 +2,14 @@ Minetest Game mod: nyancat ========================== See license.txt for license information. -License of source code: ------------------------ -Copyright (C) 2011-2016 celeron55, Perttu Ahola - -This program is free software; you can redistribute it and/or modify -it under the terms of the GNU Lesser General Public License as published by -the Free Software Foundation; either version 2.1 of the License, or -(at your option) any later version. - -http://www.gnu.org/licenses/lgpl-2.1.html +Authors of source code +---------------------- +Originally by celeron55, Perttu Ahola (LGPL 2.1) +Various Minetest developers and contributors (LGPL 2.1) Authors of media files ---------------------- -VanessaE (MIT): +VanessaE (CC BY-SA 3.0): nyancat_front.png nyancat_back.png nyancat_side.png diff --git a/mods/nyancat/license.txt b/mods/nyancat/license.txt index a3c24a8c..3aa38617 100644 --- a/mods/nyancat/license.txt +++ b/mods/nyancat/license.txt @@ -3,6 +3,7 @@ License of source code GNU Lesser General Public License, version 2.1 Copyright (C) 2011-2016 celeron55, Perttu Ahola +Copyright (C) 2012-2016 Various Minetest developers and contributors This program is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; @@ -14,27 +15,36 @@ See the GNU Lesser General Public License for more details: https://www.gnu.org/licenses/old-licenses/lgpl-2.1.html -License of media (textures) ---------------------------- +Licenses of media (textures) +---------------------------- -The MIT License (MIT) +Attribution-ShareAlike 3.0 Unported (CC BY-SA 3.0) Copyright (C) 2012-2016 VanessaE -Permission is hereby granted, free of charge, to any person obtaining a copy of this -software and associated documentation files (the "Software"), to deal in the Software -without restriction, including without limitation the rights to use, copy, modify, merge, -publish, distribute, sublicense, and/or sell copies of the Software, and to permit -persons to whom the Software is furnished to do so, subject to the following conditions: +You are free to: +Share — copy and redistribute the material in any medium or format. +Adapt — remix, transform, and build upon the material for any purpose, even commercially. +The licensor cannot revoke these freedoms as long as you follow the license terms. -The above copyright notice and this permission notice shall be included in all copies or -substantial portions of the Software. +Under the following terms: -THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, -INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR -PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE -FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR -OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER -DEALINGS IN THE SOFTWARE. +Attribution — You must give appropriate credit, provide a link to the license, and +indicate if changes were made. You may do so in any reasonable manner, but not in any way +that suggests the licensor endorses you or your use. + +ShareAlike — If you remix, transform, or build upon the material, you must distribute +your contributions under the same license as the original. + +No additional restrictions — You may not apply legal terms or technological measures that +legally restrict others from doing anything the license permits. + +Notices: + +You do not have to comply with the license for elements of the material in the public +domain or where your use is permitted by an applicable exception or limitation. +No warranties are given. The license may not give you all of the permissions necessary +for your intended use. For example, other rights such as publicity, privacy, or moral +rights may limit how you use the material. For more details: -https://opensource.org/licenses/MIT +http://creativecommons.org/licenses/by-sa/3.0/ diff --git a/mods/screwdriver/README.txt b/mods/screwdriver/README.txt index d2926c01..9d39c58c 100644 --- a/mods/screwdriver/README.txt +++ b/mods/screwdriver/README.txt @@ -4,19 +4,10 @@ See license.txt for license information. License of source code ---------------------- -Copyright (C) 2013 RealBadAngel, Maciej Kasatkin - -This program is free software; you can redistribute it and/or modify -it under the terms of the GNU Lesser General Public License as published by -the Free Software Foundation; either version 2.1 of the License, or -(at your option) any later version. - -http://www.gnu.org/licenses/lgpl-2.1.html +Originally by RealBadAngel, Maciej Kasatkin (LGPL 2.1) +Various Minetest developers and contributors (LGPL 2.1) License of media (textures) --------------------------- -Attribution-ShareAlike 3.0 Unported (CC BY-SA 3.0) -http://creativecommons.org/licenses/by-sa/3.0/ - -Created by Gambit (MIT) 2013: -screwdriver.png +Created by Gambit (CC BY-SA 3.0): + screwdriver.png diff --git a/mods/screwdriver/license.txt b/mods/screwdriver/license.txt index d058f67b..d9b721bb 100644 --- a/mods/screwdriver/license.txt +++ b/mods/screwdriver/license.txt @@ -2,7 +2,8 @@ License of source code ---------------------- GNU Lesser General Public License, version 2.1 -Copyright (C) 2013 RealBadAngel, Maciej Kasatkin +Copyright (C) 2013-2016 RealBadAngel, Maciej Kasatkin +Copyright (C) 2013-2016 Various Minetest developers and contributors This program is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; @@ -12,3 +13,38 @@ This program is distributed in the hope that it will be useful, but WITHOUT ANY without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details: https://www.gnu.org/licenses/old-licenses/lgpl-2.1.html + + +Licenses of media (textures) +---------------------------- + +Attribution-ShareAlike 3.0 Unported (CC BY-SA 3.0) +Copyright (C) 2013-2016 Gambit + +You are free to: +Share — copy and redistribute the material in any medium or format. +Adapt — remix, transform, and build upon the material for any purpose, even commercially. +The licensor cannot revoke these freedoms as long as you follow the license terms. + +Under the following terms: + +Attribution — You must give appropriate credit, provide a link to the license, and +indicate if changes were made. You may do so in any reasonable manner, but not in any way +that suggests the licensor endorses you or your use. + +ShareAlike — If you remix, transform, or build upon the material, you must distribute +your contributions under the same license as the original. + +No additional restrictions — You may not apply legal terms or technological measures that +legally restrict others from doing anything the license permits. + +Notices: + +You do not have to comply with the license for elements of the material in the public +domain or where your use is permitted by an applicable exception or limitation. +No warranties are given. The license may not give you all of the permissions necessary +for your intended use. For example, other rights such as publicity, privacy, or moral +rights may limit how you use the material. + +For more details: +http://creativecommons.org/licenses/by-sa/3.0/ diff --git a/mods/stairs/README.txt b/mods/stairs/README.txt index ceab238c..d32cd71b 100644 --- a/mods/stairs/README.txt +++ b/mods/stairs/README.txt @@ -2,26 +2,15 @@ Minetest Game mod: stairs ========================= See license.txt for license information. -License of source code: ------------------------ -Copyright (C) 2011-2016 Kahrl -Copyright (C) 2011-2016 celeron55, Perttu Ahola +Authors of source code +---------------------- +Originally by Kahrl (LGPL 2.1) and +celeron55, Perttu Ahola (LGPL 2.1) +Various Minetest developers and contributors (LGPL 2.1) -This program is free software; you can redistribute it and/or modify -it under the terms of the GNU Lesser General Public License as published by -the Free Software Foundation; either version 2.1 of the License, or -(at your option) any later version. - -http://www.gnu.org/licenses/lgpl-2.1.html - -License of media (textures, models and sounds) ----------------------------------------------- -Attribution-ShareAlike 3.0 Unported (CC BY-SA 3.0) -http://creativecommons.org/licenses/by-sa/3.0/ - -Authors of media (model) ------------------------- -Jean-Patrick G. (kilbith) (MIT): -stairs_stair.obj +Authors of media (models) +------------------------- +Jean-Patrick G. (kilbith) (CC BY-SA 3.0): + stairs_stair.obj diff --git a/mods/stairs/license.txt b/mods/stairs/license.txt index 2bd78401..8f16bbd7 100644 --- a/mods/stairs/license.txt +++ b/mods/stairs/license.txt @@ -4,6 +4,7 @@ License of source code GNU Lesser General Public License, version 2.1 Copyright (C) 2011-2016 Kahrl Copyright (C) 2011-2016 celeron55, Perttu Ahola +Copyright (C) 2012-2016 Various Minetest developers and contributors This program is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; @@ -13,3 +14,38 @@ This program is distributed in the hope that it will be useful, but WITHOUT ANY without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details: https://www.gnu.org/licenses/old-licenses/lgpl-2.1.html + + +Licenses of media (models) +-------------------------- + +Attribution-ShareAlike 3.0 Unported (CC BY-SA 3.0) +Copyright (C) 2015-2016 Jean-Patrick G. (kilbith) + +You are free to: +Share — copy and redistribute the material in any medium or format. +Adapt — remix, transform, and build upon the material for any purpose, even commercially. +The licensor cannot revoke these freedoms as long as you follow the license terms. + +Under the following terms: + +Attribution — You must give appropriate credit, provide a link to the license, and +indicate if changes were made. You may do so in any reasonable manner, but not in any way +that suggests the licensor endorses you or your use. + +ShareAlike — If you remix, transform, or build upon the material, you must distribute +your contributions under the same license as the original. + +No additional restrictions — You may not apply legal terms or technological measures that +legally restrict others from doing anything the license permits. + +Notices: + +You do not have to comply with the license for elements of the material in the public +domain or where your use is permitted by an applicable exception or limitation. +No warranties are given. The license may not give you all of the permissions necessary +for your intended use. For example, other rights such as publicity, privacy, or moral +rights may limit how you use the material. + +For more details: +http://creativecommons.org/licenses/by-sa/3.0/ diff --git a/mods/tnt/README.txt b/mods/tnt/README.txt index 2b148800..c1ca88d5 100644 --- a/mods/tnt/README.txt +++ b/mods/tnt/README.txt @@ -7,19 +7,20 @@ Authors of source code PilzAdam (MIT) ShadowNinja (MIT) sofar (sofar@foo-projects.org) (MIT) +Various Minetest developers and contributors (MIT) Authors of media (textures) --------------------------- -BlockMen (MIT): +BlockMen (CC BY-SA 3.0): All textures not mentioned below. -ShadowNinja (MIT): +ShadowNinja (CC BY-SA 3.0): tnt_smoke.png -Wuzzy (MIT): +Wuzzy (CC BY-SA 3.0): All gunpowder textures except tnt_gunpowder_inventory.png. -sofar (sofar@foo-projects.org) (MIT): +sofar (sofar@foo-projects.org) (CC BY-SA 3.0): tnt_blast.png Introduction diff --git a/mods/tnt/license.txt b/mods/tnt/license.txt index 6519bb70..210f2bdc 100644 --- a/mods/tnt/license.txt +++ b/mods/tnt/license.txt @@ -1,12 +1,11 @@ -License of source code and media (textures) -------------------------------------------- +License of source code +---------------------- The MIT License (MIT) Copyright (C) 2014-2016 PilzAdam Copyright (C) 2014-2016 ShadowNinja Copyright (C) 2016 sofar (sofar@foo-projects.org) -Copyright (C) 2014-2016 BlockMen -Copyright (C) 2015-2016 Wuzzy +Copyright (C) 2014-2016 Various Minetest developers and contributors Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software @@ -26,3 +25,41 @@ DEALINGS IN THE SOFTWARE. For more details: https://opensource.org/licenses/MIT + + +Licenses of media (textures) +---------------------------- + +Attribution-ShareAlike 3.0 Unported (CC BY-SA 3.0) +Copyright (C) 2014-2016 BlockMen +Copyright (C) 2014-2016 ShadowNinja +Copyright (C) 2015-2016 Wuzzy +Copyright (C) 2016 sofar (sofar@foo-projects.org) + +You are free to: +Share — copy and redistribute the material in any medium or format. +Adapt — remix, transform, and build upon the material for any purpose, even commercially. +The licensor cannot revoke these freedoms as long as you follow the license terms. + +Under the following terms: + +Attribution — You must give appropriate credit, provide a link to the license, and +indicate if changes were made. You may do so in any reasonable manner, but not in any way +that suggests the licensor endorses you or your use. + +ShareAlike — If you remix, transform, or build upon the material, you must distribute +your contributions under the same license as the original. + +No additional restrictions — You may not apply legal terms or technological measures that +legally restrict others from doing anything the license permits. + +Notices: + +You do not have to comply with the license for elements of the material in the public +domain or where your use is permitted by an applicable exception or limitation. +No warranties are given. The license may not give you all of the permissions necessary +for your intended use. For example, other rights such as publicity, privacy, or moral +rights may limit how you use the material. + +For more details: +http://creativecommons.org/licenses/by-sa/3.0/ diff --git a/mods/vessels/README.txt b/mods/vessels/README.txt index 3af9be5f..b81d0e94 100644 --- a/mods/vessels/README.txt +++ b/mods/vessels/README.txt @@ -2,50 +2,18 @@ Minetest Game mod: vessels ========================== See license.txt for license information. -Crafts -------- -Glass bottle (yields 10) +Authors of source code +---------------------- +Originally by Vanessa Ezekowitz (LGPL 2.1) +Modified by Perttu Ahola (LGPL 2.1) +Various Minetest developers and contributors (LGPL 2.1) - G - G - G - G - - G - - -Drinking Glass (yields 14) - - G - G - G - G - G G G - -Heavy Steel Bottle (yields 5) - - S - S - S - S - - S - - -License of source code: ------------------------ -Copyright (C) 2012 Vanessa Ezekowitz -Version 2012-09-02 -Modifications by Perttu Ahola - -This program is free software; you can redistribute it and/or modify -it under the terms of the GNU Lesser General Public License as published by -the Free Software Foundation; either version 2.1 of the License, or -(at your option) any later version. - -http://www.gnu.org/licenses/lgpl-2.1.html - -License of media (textures) +Authors of media (textures) --------------------------- -MIT +All not listed below, Vanessa Ezekowitz (CC BY-SA 3.0) -Authors of media files ------------------------ -Unless specifically noted, -Copyright (C) 2012 Vanessa Ezekowitz - -The following textures were modified by Thomas-S (CC0 1.0): +The following textures were modified by Thomas-S (CC BY-SA 3.0): vessels_drinking_glass.png - vessels_drinking_glass_inv.png (Paramat helped to improve this texture) + vessels_drinking_glass_inv.png vessels_glass_bottle.png vessels_steel_bottle.png diff --git a/mods/vessels/license.txt b/mods/vessels/license.txt index bd72faae..de16a3b0 100644 --- a/mods/vessels/license.txt +++ b/mods/vessels/license.txt @@ -4,6 +4,7 @@ License of source code GNU Lesser General Public License, version 2.1 Copyright (C) 2012-2016 Vanessa Ezekowitz Copyright (C) 2012-2016 celeron55, Perttu Ahola +Copyright (C) 2012-2016 Various Minetest developers and contributors This program is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; @@ -13,3 +14,39 @@ This program is distributed in the hope that it will be useful, but WITHOUT ANY without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Lesser General Public License for more details: https://www.gnu.org/licenses/old-licenses/lgpl-2.1.html + + +Licenses of media (textures) +---------------------------- + +Attribution-ShareAlike 3.0 Unported (CC BY-SA 3.0) +Copyright (C) 2012-2016 Vanessa Ezekowitz +Copyright (C) 2016 Thomas-S + +You are free to: +Share — copy and redistribute the material in any medium or format. +Adapt — remix, transform, and build upon the material for any purpose, even commercially. +The licensor cannot revoke these freedoms as long as you follow the license terms. + +Under the following terms: + +Attribution — You must give appropriate credit, provide a link to the license, and +indicate if changes were made. You may do so in any reasonable manner, but not in any way +that suggests the licensor endorses you or your use. + +ShareAlike — If you remix, transform, or build upon the material, you must distribute +your contributions under the same license as the original. + +No additional restrictions — You may not apply legal terms or technological measures that +legally restrict others from doing anything the license permits. + +Notices: + +You do not have to comply with the license for elements of the material in the public +domain or where your use is permitted by an applicable exception or limitation. +No warranties are given. The license may not give you all of the permissions necessary +for your intended use. For example, other rights such as publicity, privacy, or moral +rights may limit how you use the material. + +For more details: +http://creativecommons.org/licenses/by-sa/3.0/ diff --git a/mods/wool/README.txt b/mods/wool/README.txt index 3fce7547..a66677dd 100644 --- a/mods/wool/README.txt +++ b/mods/wool/README.txt @@ -2,17 +2,15 @@ Minetest Game mod: wool ======================= See license.txt for license information. -Mostly backward-compatible with jordach's 16-color wool mod. - Authors of source code ---------------------- -Perttu Ahola (celeron55) (MIT) +Originally by Perttu Ahola (celeron55) (MIT) +Various Minetest developers and contributors (MIT) Authors of media (textures) --------------------------- Cisoun (CC BY-SA 3.0): -- wool_black.png wool_brown.png wool_dark_green.png wool_green.png -- wool_magenta.png wool_pink.png wool_violet.png wool_yellow.png wool_blue.png -- wool_cyan.png wool_dark_grey.png wool_grey.png wool_orange.png wool_red.png -- wool_white.png - + wool_black.png wool_brown.png wool_dark_green.png wool_green.png + wool_magenta.png wool_pink.png wool_violet.png wool_yellow.png + wool_blue.png wool_cyan.png wool_dark_grey.png wool_grey.png + wool_orange.png wool_red.png wool_white.png diff --git a/mods/wool/license.txt b/mods/wool/license.txt index 75712f92..93101636 100644 --- a/mods/wool/license.txt +++ b/mods/wool/license.txt @@ -3,6 +3,7 @@ License of source code The MIT License (MIT) Copyright (C) 2012-2016 Perttu Ahola (celeron55) +Copyright (C) 2012-2016 Various Minetest developers and contributors Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software diff --git a/mods/xpanes/README.txt b/mods/xpanes/README.txt index d2613a2d..72dd76e8 100644 --- a/mods/xpanes/README.txt +++ b/mods/xpanes/README.txt @@ -4,13 +4,14 @@ See license.txt for license information. Authors of source code ---------------------- -xyz (MIT) -Modified by BlockMen (iron bars) (MIT) +Originally by xyz (MIT) +BlockMen (MIT) +Various Minetest developers and contributors (MIT) Authors of media (textures) --------------------------- -xyz (MIT): -All textures not mentioned below. +xyz (CC BY-SA 3.0): + All textures not mentioned below. -Gambit (MIT): -xpanes_bar.png +Gambit (CC BY-SA 3.0): + xpanes_bar.png diff --git a/mods/xpanes/license.txt b/mods/xpanes/license.txt index 83bf86e5..ef25be79 100644 --- a/mods/xpanes/license.txt +++ b/mods/xpanes/license.txt @@ -1,10 +1,10 @@ -License of source code and media (textures) -------------------------------------------- +License of source code +---------------------- The MIT License (MIT) Copyright (C) 2014-2016 xyz Copyright (C) 2014-2016 BlockMen -Copyright (C) 2013-2016 Gambit +Copyright (C) 2014-2016 Various Minetest developers and contributors Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software @@ -24,3 +24,39 @@ DEALINGS IN THE SOFTWARE. For more details: https://opensource.org/licenses/MIT + + +Licenses of media (textures) +---------------------------- + +Attribution-ShareAlike 3.0 Unported (CC BY-SA 3.0) +Copyright (C) 2014-2016 xyz +Copyright (C) 2013-2016 Gambit + +You are free to: +Share — copy and redistribute the material in any medium or format. +Adapt — remix, transform, and build upon the material for any purpose, even commercially. +The licensor cannot revoke these freedoms as long as you follow the license terms. + +Under the following terms: + +Attribution — You must give appropriate credit, provide a link to the license, and +indicate if changes were made. You may do so in any reasonable manner, but not in any way +that suggests the licensor endorses you or your use. + +ShareAlike — If you remix, transform, or build upon the material, you must distribute +your contributions under the same license as the original. + +No additional restrictions — You may not apply legal terms or technological measures that +legally restrict others from doing anything the license permits. + +Notices: + +You do not have to comply with the license for elements of the material in the public +domain or where your use is permitted by an applicable exception or limitation. +No warranties are given. The license may not give you all of the permissions necessary +for your intended use. For example, other rights such as publicity, privacy, or moral +rights may limit how you use the material. + +For more details: +http://creativecommons.org/licenses/by-sa/3.0/ From 992f295880886777afdd1a1153e8375f1b5e2980 Mon Sep 17 00:00:00 2001 From: paramat Date: Thu, 8 Sep 2016 00:16:16 +0100 Subject: [PATCH 07/99] Licenses: (Part 4) Remove overlooked WTFPL text. Cleanup --- mods/default/legacy.lua | 2 +- mods/doors/init.lua | 8 -------- mods/walls/README.txt | 2 +- mods/walls/init.lua | 15 --------------- mods/walls/license.txt | 2 +- 5 files changed, 3 insertions(+), 26 deletions(-) diff --git a/mods/default/legacy.lua b/mods/default/legacy.lua index 76fcc8ed..a8c8ad56 100644 --- a/mods/default/legacy.lua +++ b/mods/default/legacy.lua @@ -1,6 +1,6 @@ -- mods/default/legacy.lua --- Horrible crap to support old code registering falling nodes +-- Horrible stuff to support old code registering falling nodes -- Don't use this and never do what this does, it's completely wrong! -- (More specifically, the client and the C++ code doesn't get the group) function default.register_falling_node(nodename, texture) diff --git a/mods/doors/init.lua b/mods/doors/init.lua index 0888077f..ed7fbb34 100644 --- a/mods/doors/init.lua +++ b/mods/doors/init.lua @@ -1,11 +1,3 @@ ---[[ - -Copyright (C) 2012 PilzAdam - modified by BlockMen (added sounds, glassdoors[glass, obsidian glass], trapdoor) -Copyright (C) 2015 - Auke Kok - ---]] - -- our API object doors = {} diff --git a/mods/walls/README.txt b/mods/walls/README.txt index 91dd9c57..0389174d 100644 --- a/mods/walls/README.txt +++ b/mods/walls/README.txt @@ -4,4 +4,4 @@ See license.txt for license information. Authors of source code ---------------------- -sofar (sofar@foo-projects.org) (LGPL 2.1) +Auke Kok (LGPL 2.1) diff --git a/mods/walls/init.lua b/mods/walls/init.lua index 0b51bdb0..bee8e465 100644 --- a/mods/walls/init.lua +++ b/mods/walls/init.lua @@ -1,18 +1,3 @@ - ---[[ - -Walls mod for Minetest - -Copyright (C) 2015 Auke Kok - -This program is free software. It comes without any warranty, to -the extent permitted by applicable law. You can redistribute it -and/or modify it under the terms of the Do What The Fuck You Want -To Public License, Version 2, as published by Sam Hocevar. See -http://sam.zoy.org/wtfpl/COPYING for more details. - ---]] - walls = {} walls.register = function(wall_name, wall_desc, wall_texture, wall_mat, wall_sounds) diff --git a/mods/walls/license.txt b/mods/walls/license.txt index 6ac0d08b..ccfaf1cd 100644 --- a/mods/walls/license.txt +++ b/mods/walls/license.txt @@ -2,7 +2,7 @@ License of source code ---------------------- GNU Lesser General Public License, version 2.1 -Copyright (C) 2016 sofar (sofar@foo-projects.org) +Copyright (C) 2015 Auke Kok This program is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public License as published by the Free Software Foundation; From 54235f32766167bbd55cae5715d6e01754715ce6 Mon Sep 17 00:00:00 2001 From: Auke Kok Date: Thu, 17 Mar 2016 00:40:30 -0700 Subject: [PATCH 08/99] Xpanes: Convert to connected nodeboxes I've rewritten this to use connected nodeboxes, but with a caveat. In order to make flat nodes look better, I'm keeping one non-connected pane that is flat around to convert flat sections to the flat nodes instead of connected, as these look better and are easier to work with. Once more sides are needed we convert the panes on the fly to connected nodes and recalculate the shape. We don't paint any of the half-panes that the previous generation of xpanes did. There's no need and it's harder to work with. Updating the nodes also seems more natural and placement and removal works straight forward. The conversion of old panes relies on an LBM, and does a reasonable conversion job, but it's not exact, since the panes behave slightly different now. The game API documentation was wrong to begin with. We discard param nr. 2 of the API entirely, and correct the tile usage text. --- game_api.txt | 2 +- mods/xpanes/README.txt | 1 + mods/xpanes/init.lua | 267 ++++++++++++++++++++-------------------- mods/xpanes/license.txt | 1 + 4 files changed, 137 insertions(+), 134 deletions(-) diff --git a/game_api.txt b/game_api.txt index 2f0715f8..9e8d4963 100644 --- a/game_api.txt +++ b/game_api.txt @@ -421,7 +421,7 @@ Creates panes that automatically connect to each other ### Pane definition { - textures = {"texture_Bottom_top", "texture_left_right", "texture_front_back"}, -- More tiles aren't supported + textures = {"texture for sides", (unused), "texture for top and bottom"}, -- More tiles aren't supported groups = {group = rating}, -- Uses the known node groups, see [Known damage and digging time defining groups] sounds = SoundSpec, -- See [#Default sounds] recipe = {{"","","","","","","","",""}}, -- Recipe field only diff --git a/mods/xpanes/README.txt b/mods/xpanes/README.txt index 72dd76e8..b72e19a8 100644 --- a/mods/xpanes/README.txt +++ b/mods/xpanes/README.txt @@ -6,6 +6,7 @@ Authors of source code ---------------------- Originally by xyz (MIT) BlockMen (MIT) +sofar (MIT) Various Minetest developers and contributors (MIT) Authors of media (textures) diff --git a/mods/xpanes/init.lua b/mods/xpanes/init.lua index 9189912e..dc7428fa 100644 --- a/mods/xpanes/init.lua +++ b/mods/xpanes/init.lua @@ -1,156 +1,146 @@ -xpanes = {} -local function rshift(x, by) - return math.floor(x / 2 ^ by) +local function is_pane(pos) + return minetest.get_item_group(minetest.get_node(pos).name, "pane") > 0 end -local directions = { - {x = 1, y = 0, z = 0}, - {x = 0, y = 0, z = 1}, - {x = -1, y = 0, z = 0}, - {x = 0, y = 0, z = -1}, -} +local function connects_dir(pos, name, dir) + local aside = vector.add(pos, minetest.facedir_to_dir(dir)) + if is_pane(aside) then + return true + end -local function update_pane(pos, name) - if not minetest.get_node(pos).name:find("^xpanes:"..name) then + local connects_to = minetest.registered_nodes[name].connects_to + if not connects_to then + return false + end + local list = minetest.find_nodes_in_area(aside, aside, connects_to) + + if #list > 0 then + return true + end + + return false +end + +local function swap(pos, node, name, param2) + if node.name == name and node.param2 == param2 then return end - local sum = 0 - for i, dir in pairs(directions) do - local node = minetest.get_node(vector.add(pos, dir)) - local def = minetest.registered_nodes[node.name] - local pane_num = def and def.groups.pane or 0 - if pane_num > 0 or not def or (def.walkable ~= false and - def.drawtype ~= "nodebox") then - sum = sum + 2 ^ (i - 1) + + minetest.set_node(pos, {name = name, param2 = param2}) +end + +local function update_pane(pos) + if not is_pane(pos) then + return + end + local node = minetest.get_node(pos) + local name = node.name + if name:sub(-5) == "_flat" then + name = name:sub(1, -6) + end + + local any = node.param2 + local c = {} + local count = 0 + for dir = 0, 3 do + c[dir] = connects_dir(pos, name, dir) + if c[dir] then + any = dir + count = count + 1 end end - if sum == 0 then - sum = 15 - end - minetest.set_node(pos, {name = "xpanes:"..name.."_"..sum}) -end -local function update_nearby(pos, node) - node = node or minetest.get_node(pos) - local name = node.name - if not name or node.name:sub(1, 7) ~= "xpanes:" then - return - end - local underscore_pos = string.find(name, "_[^_]*$") or 0 - local len = name:len() - local num = tonumber(name:sub(underscore_pos+1, len)) - if not num or num < 1 or num > 15 then - name = name:sub(8) + if count == 0 then + swap(pos, node, name .. "_flat", any) + elseif count == 1 then + swap(pos, node, name .. "_flat", (any + 1) % 4) + elseif count == 2 then + if (c[0] and c[2]) or (c[1] and c[3]) then + swap(pos, node, name .. "_flat", (any + 1) % 4) + else + swap(pos, node, name, 0) + end else - name = name:sub(8, underscore_pos - 1) - end - for i, dir in pairs(directions) do - update_pane(vector.add(pos, dir), name) + swap(pos, node, name, 0) end end -minetest.register_on_placenode(update_nearby) -minetest.register_on_dignode(update_nearby) +minetest.register_on_placenode(function(pos, node) + if minetest.get_item_group(node, "pane") then + update_pane(pos) + end + for i = 0, 3 do + local dir = minetest.facedir_to_dir(i) + update_pane(vector.add(pos, dir)) + end +end) -local half_boxes = { - {0, -0.5, -1/32, 0.5, 0.5, 1/32}, - {-1/32, -0.5, 0, 1/32, 0.5, 0.5}, - {-0.5, -0.5, -1/32, 0, 0.5, 1/32}, - {-1/32, -0.5, -0.5, 1/32, 0.5, 0} -} - -local full_boxes = { - {-0.5, -0.5, -1/32, 0.5, 0.5, 1/32}, - {-1/32, -0.5, -0.5, 1/32, 0.5, 0.5} -} - -local sb_half_boxes = { - {0, -0.5, -0.06, 0.5, 0.5, 0.06}, - {-0.06, -0.5, 0, 0.06, 0.5, 0.5}, - {-0.5, -0.5, -0.06, 0, 0.5, 0.06}, - {-0.06, -0.5, -0.5, 0.06, 0.5, 0} -} - -local sb_full_boxes = { - {-0.5, -0.5, -0.06, 0.5, 0.5, 0.06}, - {-0.06, -0.5, -0.5, 0.06, 0.5, 0.5} -} - -local pane_def_fields = { - drawtype = "airlike", - paramtype = "light", - is_ground_content = false, - sunlight_propagates = true, - walkable = false, - pointable = false, - diggable = false, - buildable_to = true, - air_equivalent = true, -} +minetest.register_on_dignode(function(pos) + for i = 0, 3 do + local dir = minetest.facedir_to_dir(i) + update_pane(vector.add(pos, dir)) + end +end) +xpanes = {} function xpanes.register_pane(name, def) for i = 1, 15 do - local need = {} - local cnt = 0 - for j = 1, 4 do - if rshift(i, j - 1) % 2 == 1 then - need[j] = true - cnt = cnt + 1 - end - end - local take = {} - local take2 = {} - if need[1] == true and need[3] == true then - need[1] = nil - need[3] = nil - table.insert(take, full_boxes[1]) - table.insert(take2, sb_full_boxes[1]) - end - if need[2] == true and need[4] == true then - need[2] = nil - need[4] = nil - table.insert(take, full_boxes[2]) - table.insert(take2, sb_full_boxes[2]) - end - for k in pairs(need) do - table.insert(take, half_boxes[k]) - table.insert(take2, sb_half_boxes[k]) - end - local texture = def.textures[1] - if cnt == 1 then - texture = def.textures[1].."^"..def.textures[2] - end - minetest.register_node(":xpanes:"..name.."_"..i, { - drawtype = "nodebox", - tiles = {def.textures[3], def.textures[3], texture}, - paramtype = "light", - groups = def.groups, - drop = "xpanes:"..name, - sounds = def.sounds, - node_box = { - type = "fixed", - fixed = take - }, - selection_box = { - type = "fixed", - fixed = take2 - } - }) + minetest.register_alias("xpanes:" .. name .. "_" .. i, "xpanes:" .. name .. "_flat") end - for k, v in pairs(pane_def_fields) do - def[k] = def[k] or v - end + local flatgroups = table.copy(def.groups) + flatgroups.pane = 1 + minetest.register_node(":xpanes:" .. name .. "_flat", { + description = def.description, + drawtype = "nodebox", + paramtype = "light", + is_ground_content = false, + sunlight_propagates = true, + inventory_image = def.inventory_image, + wield_image = def.wield_image, + paramtype2 = "facedir", + tiles = {def.textures[3], def.textures[3], def.textures[1]}, + groups = flatgroups, + drop = "xpanes:" .. name .. "_flat", + sounds = def.sounds, + node_box = { + type = "fixed", + fixed = {{-1/2, -1/2, -1/32, 1/2, 1/2, 1/32}}, + }, + selection_box = { + type = "fixed", + fixed = {{-1/2, -1/2, -1/32, 1/2, 1/2, 1/32}}, + }, + connect_sides = { "left", "right" }, + }) - def.on_construct = function(pos) - update_pane(pos, name) - end - - minetest.register_node(":xpanes:"..name, def) + local groups = table.copy(def.groups) + groups.pane = 1 + groups.not_in_creative_inventory = 1 + minetest.register_node(":xpanes:" .. name, { + drawtype = "nodebox", + paramtype = "light", + is_ground_content = false, + sunlight_propagates = true, + description = def.description, + tiles = {def.textures[3], def.textures[3], def.textures[1]}, + groups = groups, + drop = "xpanes:" .. name .. "_flat", + sounds = def.sounds, + node_box = { + type = "connected", + fixed = {{-1/32, -1/2, -1/32, 1/32, 1/2, 1/32}}, + connect_front = {{-1/32, -1/2, -1/2, 1/32, 1/2, -1/32}}, + connect_left = {{-1/2, -1/2, -1/32, -1/32, 1/2, 1/32}}, + connect_back = {{-1/32, -1/2, 1/32, 1/32, 1/2, 1/2}}, + connect_right = {{1/32, -1/2, -1/32, 1/2, 1/2, 1/32}}, + }, + connects_to = {"group:pane", "group:stone", "group:glass", "group:wood", "group:tree"}, + }) minetest.register_craft({ - output = "xpanes:"..name.." 16", + output = "xpanes:" .. name .. "_flat 16", recipe = def.recipe }) end @@ -161,7 +151,7 @@ xpanes.register_pane("pane", { inventory_image = "default_glass.png", wield_image = "default_glass.png", sounds = default.node_sound_glass_defaults(), - groups = {snappy=2, cracky=3, oddly_breakable_by_hand=3, pane=1}, + groups = {snappy=2, cracky=3, oddly_breakable_by_hand=3}, recipe = { {"default:glass", "default:glass", "default:glass"}, {"default:glass", "default:glass", "default:glass"} @@ -173,7 +163,7 @@ xpanes.register_pane("bar", { textures = {"xpanes_bar.png","xpanes_bar.png","xpanes_space.png"}, inventory_image = "xpanes_bar.png", wield_image = "xpanes_bar.png", - groups = {cracky=2, pane=1}, + groups = {cracky=2}, sounds = default.node_sound_stone_defaults(), recipe = { {"default:steel_ingot", "default:steel_ingot", "default:steel_ingot"}, @@ -181,3 +171,14 @@ xpanes.register_pane("bar", { } }) +minetest.register_lbm({ + name = "xpanes:gen2", + nodenames = {"group:pane"}, + action = function(pos, node) + update_pane(pos) + for i = 0, 3 do + local dir = minetest.facedir_to_dir(i) + update_pane(vector.add(pos, dir)) + end + end +}) diff --git a/mods/xpanes/license.txt b/mods/xpanes/license.txt index ef25be79..66c6fbfa 100644 --- a/mods/xpanes/license.txt +++ b/mods/xpanes/license.txt @@ -4,6 +4,7 @@ License of source code The MIT License (MIT) Copyright (C) 2014-2016 xyz Copyright (C) 2014-2016 BlockMen +Copyright (C) 2016 Auke Kok Copyright (C) 2014-2016 Various Minetest developers and contributors Permission is hereby granted, free of charge, to any person obtaining a copy of this From 0cbb516ae2a8ec7acf6aa968715f3c1aa32a8f5b Mon Sep 17 00:00:00 2001 From: tenplus1 Date: Wed, 7 Sep 2016 10:22:57 +0100 Subject: [PATCH 09/99] Bones: Search for nearby 'air' for fallback bones placement When a player dies on ladders or rope then a space can not be found at or above player, so this change looks around player for a space to place bones. --- mods/bones/init.lua | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) diff --git a/mods/bones/init.lua b/mods/bones/init.lua index 2a54ee06..9542cab0 100644 --- a/mods/bones/init.lua +++ b/mods/bones/init.lua @@ -180,14 +180,14 @@ minetest.register_on_dieplayer(function(player) local pos = vector.round(player:getpos()) local player_name = player:get_player_name() - -- check if it's possible to place bones, if not go 1 higher + -- check if it's possible to place bones, if not find space near player if bones_mode == "bones" and not may_replace(pos, player) then - pos.y = pos.y + 1 - end - - -- still cannot place bones? change mode to 'drop' - if bones_mode == "bones" and not may_replace(pos, player) then - bones_mode = "drop" + local air = minetest.find_node_near(pos, 1, {"air"}) + if air and not minetest.is_protected(air, player_name) then + pos = air + else + bones_mode = "drop" + end end if bones_mode == "drop" then From b848e35ca59c9eea3dbe3df87cb14d6bfea93f9a Mon Sep 17 00:00:00 2001 From: Auke Kok Date: Mon, 25 Jan 2016 13:45:25 +0100 Subject: [PATCH 10/99] Stairs: Big simplification of slabs combination Combine slabs if identical based on orientations using a simple lookup table if the nodes are identical. Otherwise relies on place_node() to place the node, which properly handles rotation compared to adjacent nodes already, and can orient based on look_dir as well. Initial slabs placed are oriented based on (1) the orientation of the pointed "face" (assumes nodes are cubic, of course), and uses the player look direction to orient the node n/e/w/s if the slab is horizontal or upside-down. If placed against a vertical face, the slab is placed against the face without rotation around the axis perpendicular to that vertical face. This allows upside down placement and vertical placement without screwdriver. If a slab is placed on top of an upside down slab, or below a normally placed slab, the rotation is inverted so that no "floating" slab is created. Largely based on kilbith's #807 PR. Slab combining and place_node() usage by sofar. Since this relies entirely on `on_place` mechanics, this fails to combine slabs into a plain node if the space *above* is occupied. This is unavoidable due to the fact that on_place() happens after the checks required to see if pointed_thing.above is empty or not. --- mods/stairs/init.lua | 122 ++++++++++++++++++------------------------- 1 file changed, 51 insertions(+), 71 deletions(-) diff --git a/mods/stairs/init.lua b/mods/stairs/init.lua index 78922e40..132c0e6c 100644 --- a/mods/stairs/init.lua +++ b/mods/stairs/init.lua @@ -110,6 +110,11 @@ function stairs.register_stair(subname, recipeitem, groups, images, description, end +-- Slab facedir to placement 6d matching table +local slab_trans_dir = {[0] = 8, 0, 2, 1, 3, 4} +-- Slab facedir when placing initial slab against other surface +local slab_trans_dir_place = {[0] = 0, 20, 12, 16, 4, 8} + -- Register slabs. -- Node will be called stairs:slab_ @@ -129,86 +134,61 @@ function stairs.register_slab(subname, recipeitem, groups, images, description, fixed = {-0.5, -0.5, -0.5, 0.5, 0, 0.5}, }, on_place = function(itemstack, placer, pointed_thing) - if pointed_thing.type ~= "node" then - return itemstack - end + local under = minetest.get_node(pointed_thing.under) + local wield_item = itemstack:get_name() - -- If it's being placed on an another similar one, replace it with - -- a full block - local slabpos = nil - local slabnode = nil - local p0 = pointed_thing.under - local p1 = pointed_thing.above - local n0 = minetest.get_node(p0) - local n1 = minetest.get_node(p1) - local param2 = 0 + if under and wield_item == under.name then + -- place slab using under node orientation + local dir = minetest.dir_to_facedir(vector.subtract( + pointed_thing.above, pointed_thing.under), true) - local n0_is_upside_down = (n0.name == "stairs:slab_" .. subname and - n0.param2 >= 20) + local p2 = under.param2 - if n0.name == "stairs:slab_" .. subname and not n0_is_upside_down and - p0.y + 1 == p1.y then - slabpos = p0 - slabnode = n0 - elseif n1.name == "stairs:slab_" .. subname then - slabpos = p1 - slabnode = n1 - end - if slabpos then - -- Remove the slab at slabpos - minetest.remove_node(slabpos) - -- Make a fake stack of a single item and try to place it - local fakestack = ItemStack(recipeitem) - fakestack:set_count(itemstack:get_count()) - - pointed_thing.above = slabpos - local success - fakestack, success = minetest.item_place(fakestack, placer, - pointed_thing) - -- If the item was taken from the fake stack, decrement original - if success then - itemstack:set_count(fakestack:get_count()) - -- Else put old node back - else - minetest.set_node(slabpos, slabnode) - end - return itemstack - end - - -- Upside down slabs - if p0.y - 1 == p1.y then - -- Turn into full block if pointing at a existing slab - if n0_is_upside_down then - -- Remove the slab at the position of the slab - minetest.remove_node(p0) - -- Make a fake stack of a single item and try to place it - local fakestack = ItemStack(recipeitem) - fakestack:set_count(itemstack:get_count()) - - pointed_thing.above = p0 - local success - fakestack, success = minetest.item_place(fakestack, placer, - pointed_thing) - -- If the item was taken from the fake stack, decrement original - if success then - itemstack:set_count(fakestack:get_count()) - -- Else put old node back - else - minetest.set_node(p0, n0) + -- combine two slabs if possible + if slab_trans_dir[math.floor(p2 / 4)] == dir then + if not recipeitem then + return itemstack + end + local player_name = placer:get_player_name() + if minetest.is_protected(pointed_thing.under, player_name) and not + minetest.check_player_privs(placer, "protection_bypass") then + minetest.record_protection_violation(pointed_thing.under, + player_name) + return + end + minetest.set_node(pointed_thing.under, {name = recipeitem, param2 = p2}) + if not minetest.setting_getbool("creative_mode") then + itemstack:take_item() end return itemstack end - -- Place upside down slab - param2 = 20 - end + -- Placing a slab on an upside down slab should make it right-side up. + if p2 >= 20 and dir == 8 then + p2 = p2 - 20 + -- same for the opposite case: slab below normal slab + elseif p2 <= 3 and dir == 4 then + p2 = p2 + 20 + end - -- If pointing at the side of a upside down slab - if n0_is_upside_down and p0.y + 1 ~= p1.y then - param2 = 20 - end + -- else attempt to place node with proper param2 + minetest.item_place_node(ItemStack(wield_item), placer, pointed_thing, p2) + if not minetest.setting_getbool("creative_mode") then + itemstack:take_item() + end + return itemstack + else + -- place slab using look direction of player + local dir = minetest.dir_to_wallmounted(vector.subtract( + pointed_thing.above, pointed_thing.under), true) - return minetest.item_place(itemstack, placer, pointed_thing, param2) + local rot = slab_trans_dir_place[dir] + if rot == 0 or rot == 20 then + rot = rot + minetest.dir_to_facedir(placer:get_look_dir()) + end + + return minetest.item_place(itemstack, placer, pointed_thing, rot) + end end, }) From 34c768d394276e78d657a22fac9bf127f95a7152 Mon Sep 17 00:00:00 2001 From: paramat Date: Tue, 13 Sep 2016 03:14:22 +0100 Subject: [PATCH 11/99] Default: New snow textures by Gambit From PixelBOX2 texture pack. Brightness increased for 'snow' and 'snow side'. --- mods/default/README.txt | 6 +++--- mods/default/textures/default_snow.png | Bin 164 -> 3310 bytes mods/default/textures/default_snow_side.png | Bin 376 -> 3445 bytes mods/default/textures/default_snowball.png | Bin 183 -> 3102 bytes 4 files changed, 3 insertions(+), 3 deletions(-) diff --git a/mods/default/README.txt b/mods/default/README.txt index 593bc7a6..382b2f76 100644 --- a/mods/default/README.txt +++ b/mods/default/README.txt @@ -65,7 +65,6 @@ PilzAdam (CC BY-SA 3.0): default_obsidian_glass.png default_obsidian_shard.png default_mineral_gold.png - default_snowball.png jojoa1997 (CC BY-SA 3.0): default_obsidian.png @@ -74,7 +73,6 @@ InfinityProject (CC BY-SA 3.0): default_mineral_diamond.png Splizard (CC BY-SA 3.0): - default_snow.png default_pine_sapling.png Zeg9 (CC BY-SA 3.0): @@ -112,7 +110,6 @@ paramat (CC BY-SA 3.0): default_dry_grass_*.png default_grass.png default_grass_side.png - default_snow_side.png default_mese_block.png brunob.santos (CC BY-SA 4.0): @@ -170,6 +167,9 @@ Gambit (CC BY-SA 3.0): default_ladder_steel.png default_sign_wall_wood.png default_flint.png + default_snow.png + default_snow_side.png + default_snowball.png asl97 (CC BY-SA 3.0): default_ice.png diff --git a/mods/default/textures/default_snow.png b/mods/default/textures/default_snow.png index 2a2439fb9ebddbb7273a05fbcda2cf4de278626b..27ce5076b6f57f4cfcc33e12d9ac5b491719c500 100644 GIT binary patch literal 3310 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 yHr+M`K{h?XP6jrf59&ghTmgWD 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 b_xJn*bZAbK0NA6Q00000NkvXXu0mjfwF+x! delta 307 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 s06+jSQkt0n0*KV!Z delta 167 zcmbOyv7K>(L_G^L0|Ud`yN`l^luCe4h%1m@ymR0G|NqzTKm7C8|99{Izk2=u+4KK@ z|Nj5>?f<9G{~td7pIPs*0jQ3#B*-tA!Qt7BG$6;()5S4_<9hM|eil|mlg*Rb7-u9d zxnd;gVyu-}p(n~ Date: Thu, 22 Sep 2016 13:46:12 +0100 Subject: [PATCH 12/99] Doors: Trim open fencegate collison box again The collision box still extended into a neighbouring empty node, causing falling node objects to collide but not transform back into normal nodes. Completes the fix started in a previous similar commit. --- mods/doors/init.lua | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mods/doors/init.lua b/mods/doors/init.lua index ed7fbb34..73a73a13 100644 --- a/mods/doors/init.lua +++ b/mods/doors/init.lua @@ -696,7 +696,7 @@ function doors.register_fencegate(name, def) fence_open.collision_box = { type = "fixed", fixed = {{-1/2, -1/2, -1/4, -3/8, 1/2, 1/4}, - {-5/8, -3/8, -1/2, -3/8, 3/8, 0}}, + {-1/2, -3/8, -1/2, -3/8, 3/8, 0}}, } minetest.register_node(":" .. name .. "_closed", fence_closed) From 0f6e75bcb5d642f22ad5697891468001a07b83e5 Mon Sep 17 00:00:00 2001 From: paramat Date: Fri, 23 Sep 2016 17:55:16 +0100 Subject: [PATCH 13/99] Add settingtypes.txt for Minetest Game Commit originally by PilzAdam. Settings appear in advanced settings menu. --- settingtypes.txt | 42 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 42 insertions(+) create mode 100644 settingtypes.txt diff --git a/settingtypes.txt b/settingtypes.txt new file mode 100644 index 00000000..2f91a7b6 --- /dev/null +++ b/settingtypes.txt @@ -0,0 +1,42 @@ +# This file contains settings of minetest_game that can be changed in +# minetest.conf + +# In creative mode players are able to dig all kind of blocks nearly +# instantly, and have access to unlimited resources. +# Some of the functionality is only available if this setting is present +# at startup. +creative_mode (Creative mode) bool false + +# Flammable nodes will be ignited by nearby igniters. Spreading fire may +# cause severe destruction. +# Spreading fire nodes will disappear when fire is disabled, but +# 'permanent_flame' nodes are unaffected. +enable_fire (Fire) bool true + +# If enabled, steel tools, torches and cobblestone will be given to new +# players. +give_initial_stuff (Give initial items) bool false + +# If enabled, players respawn at the bed they last lay on instead of normal +# spawn. +# This setting is only read at startup. +enable_bed_respawn (Respawn at bed) bool true + +# If enabled, the night can be skipped if more than half of the players are +# in beds. +enable_bed_night_skip (Skip night when sleeping) bool true + +# When TNT explodes, it destroys nearby nodes and damages nearby players. +# This setting is disabled by default on servers. +enable_tnt (TNT) bool true + +# The radius in which nodes will be destroyed by a TNT explosion. +tnt_radius (TNT radius) int 3 0 + +# The time in seconds after which the bones of a dead player can be looted +# by everyone. +# Setting this to 0 will disable sharing of bones completely. +share_bones_time (Bone share time) int 1200 0 + +# Replaces old stairs with new ones. Only required for older worlds. +enable_stairs_replace_abm (Replace old stairs) bool false From 0ad3306c79077f53269a3025e3a044814b97d09d Mon Sep 17 00:00:00 2001 From: tenplus1 Date: Tue, 27 Sep 2016 11:12:04 +0100 Subject: [PATCH 14/99] Farming: Remove unnecessary overriding of groups This removes the group overrides for dirt, dirt_with_grass and dirt_with_dry_grass which aren't needed and interfere with new grass spreading changes: https://github.com/minetest/minetest_game/pull/1286 --- mods/farming/nodes.lua | 3 --- 1 file changed, 3 deletions(-) diff --git a/mods/farming/nodes.lua b/mods/farming/nodes.lua index 9fa66c30..c75e1e50 100644 --- a/mods/farming/nodes.lua +++ b/mods/farming/nodes.lua @@ -1,5 +1,4 @@ minetest.override_item("default:dirt", { - groups = {crumbly=3, soil=1}, soil = { base = "default:dirt", dry = "farming:soil", @@ -8,7 +7,6 @@ minetest.override_item("default:dirt", { }) minetest.override_item("default:dirt_with_grass", { - groups = {crumbly=3, soil=1}, soil = { base = "default:dirt_with_grass", dry = "farming:soil", @@ -17,7 +15,6 @@ minetest.override_item("default:dirt_with_grass", { }) minetest.override_item("default:dirt_with_dry_grass", { - groups = {crumbly=3, soil=1}, soil = { base = "default:dirt_with_dry_grass", dry = "farming:soil", From 36a78c87d71b4513c03e3400e916d787bd3c5dce Mon Sep 17 00:00:00 2001 From: DS-Minetest Date: Wed, 28 Sep 2016 20:57:17 +0200 Subject: [PATCH 15/99] Default/player.lua: Remove outdated comment --- mods/default/player.lua | 1 - 1 file changed, 1 deletion(-) diff --git a/mods/default/player.lua b/mods/default/player.lua index e4fb2adf..8fb0aca8 100644 --- a/mods/default/player.lua +++ b/mods/default/player.lua @@ -25,7 +25,6 @@ default.player_register_model("character.b3d", { walk = { x=168, y=187, }, mine = { x=189, y=198, }, walk_mine = { x=200, y=219, }, - -- Extra animations (not currently used by the game). sit = { x= 81, y=160, }, }, }) From 5e4a6e8ac68b92c7394b80bb67839b71b4a4a00b Mon Sep 17 00:00:00 2001 From: paramat Date: Wed, 28 Sep 2016 22:09:50 +0100 Subject: [PATCH 16/99] Doors: Remove ability to rotate doors with screwdrivers Rotating doors with screwdrivers causes too many issues to be worth it. --- mods/doors/init.lua | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mods/doors/init.lua b/mods/doors/init.lua index 73a73a13..7a8006c6 100644 --- a/mods/doors/init.lua +++ b/mods/doors/init.lua @@ -366,7 +366,7 @@ function doors.register(name, def) minetest.remove_node({x = pos.x, y = pos.y + 1, z = pos.z}) nodeupdate({x = pos.x, y = pos.y + 1, z = pos.z}) end - def.on_rotate = screwdriver and screwdriver.rotate_simple or false + def.on_rotate = false if def.protected then def.can_dig = can_dig_door From c0de5646d230b209af32c60c3e5d1256855b2767 Mon Sep 17 00:00:00 2001 From: paramat Date: Thu, 22 Sep 2016 11:56:15 +0100 Subject: [PATCH 17/99] Default: Generalise, optimise and simplify grass spread function Credit to tenplus1 for the suggestion to generalise for mod use. Mods can add mod nodes to 'group:spreading_dirt_type' enabling the function to work with mod nodes. Add some nodes to this group. Removing 'dirt_with_grass' etc. from 'neighbors' stops the ABM action running everywhere and constantly, on the dirt nodes immediately below the surface nodes. Now the action only runs in the rare case of a dirt node with neighbouring air, grass decorations or snow. Remove check for air above to allow grass to spread under light- transmitting nodes such as fences, walls, plants. This causes spread under slabs, stairs and glass, when near air, but seems worth it. Remove unnecessary check for nil node. --- mods/default/functions.lua | 39 ++++++++++++-------------------------- mods/default/nodes.lua | 6 +++--- 2 files changed, 15 insertions(+), 30 deletions(-) diff --git a/mods/default/functions.lua b/mods/default/functions.lua index 3c8a871a..901dd934 100644 --- a/mods/default/functions.lua +++ b/mods/default/functions.lua @@ -348,9 +348,7 @@ minetest.register_abm({ label = "Grass spread", nodenames = {"default:dirt"}, neighbors = { - "default:dirt_with_grass", - "default:dirt_with_dry_grass", - "default:dirt_with_snow", + "air", "group:grass", "group:dry_grass", "default:snow", @@ -359,36 +357,27 @@ minetest.register_abm({ chance = 67, catch_up = false, action = function(pos, node) - -- Most likely case, half the time it's too dark for this. + -- Check for darkness: night, shadow or under a light-blocking node + -- Returns if ignore above local above = {x = pos.x, y = pos.y + 1, z = pos.z} if (minetest.get_node_light(above) or 0) < 13 then return end - -- Look for likely neighbors. - local p2 = minetest.find_node_near(pos, 1, {"default:dirt_with_grass", - "default:dirt_with_dry_grass", "default:dirt_with_snow"}) + -- Look for spreading dirt-type neighbours + local p2 = minetest.find_node_near(pos, 1, "group:spreading_dirt_type") if p2 then - -- But the node needs to be under air in this case. - local n2 = minetest.get_node(above) - if n2 and n2.name == "air" then - local n3 = minetest.get_node(p2) - minetest.set_node(pos, {name = n3.name}) - return - end - end - - -- Anything on top? - local n2 = minetest.get_node(above) - if not n2 then + local n3 = minetest.get_node(p2) + minetest.set_node(pos, {name = n3.name}) return end - local name = n2.name - -- Snow check is cheapest, so comes first. + -- Else, any seeding nodes on top? + local name = minetest.get_node(above).name + -- Snow check is cheapest, so comes first if name == "default:snow" then minetest.set_node(pos, {name = "default:dirt_with_snow"}) - -- Most likely case first. + -- Most likely case first elseif minetest.get_item_group(name, "grass") ~= 0 then minetest.set_node(pos, {name = "default:dirt_with_grass"}) elseif minetest.get_item_group(name, "dry_grass") ~= 0 then @@ -404,11 +393,7 @@ minetest.register_abm({ minetest.register_abm({ label = "Grass covered", - nodenames = { - "default:dirt_with_grass", - "default:dirt_with_dry_grass", - "default:dirt_with_snow", - }, + nodenames = {"group:spreading_dirt_type"}, interval = 8, chance = 50, catch_up = false, diff --git a/mods/default/nodes.lua b/mods/default/nodes.lua index 79aea5bb..c5d05232 100644 --- a/mods/default/nodes.lua +++ b/mods/default/nodes.lua @@ -332,7 +332,7 @@ minetest.register_node("default:dirt_with_grass", { tiles = {"default_grass.png", "default_dirt.png", {name = "default_dirt.png^default_grass_side.png", tileable_vertical = false}}, - groups = {crumbly = 3, soil = 1}, + groups = {crumbly = 3, soil = 1, spreading_dirt_type = 1}, drop = 'default:dirt', sounds = default.node_sound_dirt_defaults({ footstep = {name = "default_grass_footstep", gain = 0.25}, @@ -357,7 +357,7 @@ minetest.register_node("default:dirt_with_dry_grass", { "default_dirt.png", {name = "default_dirt.png^default_dry_grass_side.png", tileable_vertical = false}}, - groups = {crumbly = 3, soil = 1}, + groups = {crumbly = 3, soil = 1, spreading_dirt_type = 1}, drop = 'default:dirt', sounds = default.node_sound_dirt_defaults({ footstep = {name = "default_grass_footstep", gain = 0.4}, @@ -369,7 +369,7 @@ minetest.register_node("default:dirt_with_snow", { tiles = {"default_snow.png", "default_dirt.png", {name = "default_dirt.png^default_snow_side.png", tileable_vertical = false}}, - groups = {crumbly = 3, soil = 1}, + groups = {crumbly = 3, soil = 1, spreading_dirt_type = 1}, drop = 'default:dirt', sounds = default.node_sound_dirt_defaults({ footstep = {name = "default_snow_footstep", gain = 0.15}, From 67fc2247fc8c846ac43775cc35862fa7b819398e Mon Sep 17 00:00:00 2001 From: paramat Date: Tue, 4 Oct 2016 03:45:49 +0100 Subject: [PATCH 18/99] Default: Add 'silver sand' for cold desert biome --- mods/default/README.txt | 1 + mods/default/nodes.lua | 8 ++++++++ mods/default/textures/default_silver_sand.png | Bin 0 -> 527 bytes 3 files changed, 9 insertions(+) create mode 100644 mods/default/textures/default_silver_sand.png diff --git a/mods/default/README.txt b/mods/default/README.txt index 382b2f76..4d7744f7 100644 --- a/mods/default/README.txt +++ b/mods/default/README.txt @@ -111,6 +111,7 @@ paramat (CC BY-SA 3.0): default_grass.png default_grass_side.png default_mese_block.png + default_silver_sand.png brunob.santos (CC BY-SA 4.0): default_desert_cobble.png diff --git a/mods/default/nodes.lua b/mods/default/nodes.lua index c5d05232..b6ae52cb 100644 --- a/mods/default/nodes.lua +++ b/mods/default/nodes.lua @@ -47,6 +47,7 @@ default:dirt_with_snow default:sand default:desert_sand +default:silver_sand default:gravel @@ -390,6 +391,13 @@ minetest.register_node("default:desert_sand", { sounds = default.node_sound_sand_defaults(), }) +minetest.register_node("default:silver_sand", { + description = "Silver Sand", + tiles = {"default_silver_sand.png"}, + groups = {crumbly = 3, falling_node = 1, sand = 1}, + sounds = default.node_sound_sand_defaults(), +}) + minetest.register_node("default:gravel", { description = "Gravel", diff --git a/mods/default/textures/default_silver_sand.png b/mods/default/textures/default_silver_sand.png new file mode 100644 index 0000000000000000000000000000000000000000..d381e883389fe7c688129bbfd696d2d682e07019 GIT binary patch literal 527 zcmV+q0`UEbP)>msYmJ%3>3+Wh z=(-L75tUK^7-LE)U}k0}B9Ri&zVChCACE_^b!#nzV6D|!uj@)g{M6N20py&Wb4n>8 zAtL8o2tjzf_W;mZ6G}-OLb%;-VnIYHB|)vV_I>}=z>{@Z768LAwAQrNLMukjxl+m( zl9b@RC!*8o1VAigtjsB;cN|8nMpPm(8UN1~U z0HiXh&p9XFF~)hGiO5o~+c literal 0 HcmV?d00001 From 32f7051eb85bfe54ac21475be6366db7aff8743d Mon Sep 17 00:00:00 2001 From: Tim Date: Tue, 4 Oct 2016 19:18:45 +0200 Subject: [PATCH 19/99] Fix sapling placement handling of on_rightclick and CONTENT_IGNORE --- mods/default/trees.lua | 13 +++++++++---- 1 file changed, 9 insertions(+), 4 deletions(-) diff --git a/mods/default/trees.lua b/mods/default/trees.lua index 5cd7e156..0b95742c 100644 --- a/mods/default/trees.lua +++ b/mods/default/trees.lua @@ -435,12 +435,17 @@ function default.sapling_on_place(itemstack, placer, pointed_thing, sapling_name, minp_relative, maxp_relative, interval) -- Position of sapling local pos = pointed_thing.under - local node = minetest.get_node(pos) - local pdef = minetest.registered_nodes[node.name] + local node = minetest.get_node_or_nil(pos) + local pdef = node and minetest.registered_nodes[node.name] + + if pdef and pdef.on_rightclick and not placer:get_player_control().sneak then + return pdef.on_rightclick(pos, node, placer, itemstack, pointed_thing) + end + if not pdef or not pdef.buildable_to then pos = pointed_thing.above - node = minetest.get_node(pos) - pdef = minetest.registered_nodes[node.name] + node = minetest.get_node_or_nil(pos) + pdef = node and minetest.registered_nodes[node.name] if not pdef or not pdef.buildable_to then return itemstack end From 1799754a8fc4757386eee40358228bc639ea8ce2 Mon Sep 17 00:00:00 2001 From: Tim Date: Tue, 4 Oct 2016 19:49:06 +0200 Subject: [PATCH 20/99] Default: Prevent possible nil-crash on invalid book metadata --- mods/default/craftitems.lua | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/mods/default/craftitems.lua b/mods/default/craftitems.lua index d821af06..59539f37 100644 --- a/mods/default/craftitems.lua +++ b/mods/default/craftitems.lua @@ -105,7 +105,9 @@ minetest.register_on_player_receive_fields(function(player, formname, fields) elseif fields.book_next or fields.book_prev then local data = minetest.deserialize(stack:get_metadata()) - if not data.page then return end + if not data or not data.page then + return + end if fields.book_next then data.page = data.page + 1 From 1906ab84f54ed0a171505d5f7295751e88e819ce Mon Sep 17 00:00:00 2001 From: paramat Date: Wed, 5 Oct 2016 21:07:05 +0100 Subject: [PATCH 21/99] Default/functions: Tune speed of grass spread ABM Through testing the chance is changed to 50 such that grass spread speed matches that of the previous (0.4.13) ABM version. --- mods/default/functions.lua | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mods/default/functions.lua b/mods/default/functions.lua index 901dd934..7770feb0 100644 --- a/mods/default/functions.lua +++ b/mods/default/functions.lua @@ -354,7 +354,7 @@ minetest.register_abm({ "default:snow", }, interval = 6, - chance = 67, + chance = 50, catch_up = false, action = function(pos, node) -- Check for darkness: night, shadow or under a light-blocking node From 53179b8d1035399d51502e461612a71c6f994bb5 Mon Sep 17 00:00:00 2001 From: rubenwardy Date: Sat, 8 Oct 2016 18:02:14 +0100 Subject: [PATCH 22/99] Creative: Use element instead of parameter to disable close on enter --- mods/creative/init.lua | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/mods/creative/init.lua b/mods/creative/init.lua index 3affc3d9..24cd673b 100644 --- a/mods/creative/init.lua +++ b/mods/creative/init.lua @@ -125,7 +125,8 @@ creative.set_creative_formspec = function(player, start_i) tooltip[creative_clear;Reset] listring[current_player;main] ]] .. - "field[0.3,3.5;2.2,1;creative_filter;;" .. minetest.formspec_escape(inv.filter) .. ";false]" .. + "field[0.3,3.5;2.2,1;creative_filter;;" .. minetest.formspec_escape(inv.filter) .. "]" .. + "field_close_on_enter[creative_filter;false]" .. "listring[detached:creative_" .. player_name .. ";main]" .. "tabheader[0,0;creative_tabs;Crafting,All,Nodes,Tools,Items;" .. tostring(inv.tab_id) .. ";true;false]" .. "list[detached:creative_" .. player_name .. ";main;0,0;8,3;" .. tostring(start_i) .. "]" .. From 6fdfd2554c23535530a5750d3b362e6399b00b55 Mon Sep 17 00:00:00 2001 From: tenplus1 Date: Wed, 5 Oct 2016 16:15:49 +0100 Subject: [PATCH 23/99] Tnt: Various optimisations Pass nodename to tnt.burn function where possible to reduce use of 'get_node'. Change 'ipairs' to 'pairs'. Use 'nodeupdate_single(pos)' instead of 'nodeupdate(pos)' to avoid every node triggering recursion, the loop itself takes the place of recursion and works upwards through horizontal planes as required. --- .luacheckrc | 2 +- game_api.txt | 4 ++-- mods/tnt/init.lua | 29 ++++++++++++++++------------- 3 files changed, 19 insertions(+), 16 deletions(-) diff --git a/.luacheckrc b/.luacheckrc index f087d303..3a4faccb 100644 --- a/.luacheckrc +++ b/.luacheckrc @@ -5,7 +5,7 @@ read_globals = { "DIR_DELIM", "minetest", "core", "dump", - "vector", "nodeupdate", + "vector", "nodeupdate", "nodeupdate_single", "VoxelManip", "VoxelArea", "PseudoRandom", "ItemStack", } diff --git a/game_api.txt b/game_api.txt index 9e8d4963..a148136d 100644 --- a/game_api.txt +++ b/game_api.txt @@ -290,9 +290,9 @@ TNT API * `position` The center of explosion. * `definition` The TNT definion as passed to `tnt.register` -`tnt.burn(position)` +`tnt.burn(position, [nodename])` -^ Ignite TNT at position +^ Ignite TNT at position, nodename isn't required unless already known. To make dropping items from node inventories easier, you can use the diff --git a/mods/tnt/init.lua b/mods/tnt/init.lua index 1e6e29d5..1138e1c2 100644 --- a/mods/tnt/init.lua +++ b/mods/tnt/init.lua @@ -99,7 +99,7 @@ local function destroy(drops, npos, cid, c_air, c_fire, on_blast_queue, ignore_p return c_fire else local node_drops = minetest.get_node_drops(def.name, "") - for _, item in ipairs(node_drops) do + for _, item in pairs(node_drops) do add_drop(drops, item) end return c_air @@ -181,7 +181,7 @@ local function entity_physics(pos, radius, drops) }, nil) end end - for _, item in ipairs(entity_drops) do + for _, item in pairs(entity_drops) do add_drop(drops, item) end end @@ -248,8 +248,8 @@ local function add_effects(pos, radius, drops) }) end -function tnt.burn(pos) - local name = minetest.get_node(pos).name +function tnt.burn(pos, nodename) + local name = nodename or minetest.get_node(pos).name local group = minetest.get_item_group(name, "tnt") if group > 0 then minetest.sound_play("tnt_ignite", {pos = pos}) @@ -333,24 +333,25 @@ local function tnt_explode(pos, radius, ignore_protection, ignore_on_blast) vm:update_liquids() -- call nodeupdate for everything within 1.5x blast radius + for y = -radius * 1.5, radius * 1.5 do for z = -radius * 1.5, radius * 1.5 do for x = -radius * 1.5, radius * 1.5 do - for y = -radius * 1.5, radius * 1.5 do - local s = vector.add(pos, {x = x, y = y, z = z}) - local r = vector.distance(pos, s) + local rad = {x = x, y = y, z = z} + local s = vector.add(pos, rad) + local r = vector.length(rad) if r / radius < 1.4 then - nodeupdate(s) + nodeupdate_single(s) end end end end - for _, queued_data in ipairs(on_blast_queue) do + for _, queued_data in pairs(on_blast_queue) do local dist = math.max(1, vector.distance(queued_data.pos, pos)) local intensity = (radius * radius) / (dist * dist) local node_drops = queued_data.on_blast(queued_data.pos, intensity) if node_drops then - for _, item in ipairs(node_drops) do + for _, item in pairs(node_drops) do add_drop(drops, item) end end @@ -408,11 +409,11 @@ minetest.register_node("tnt:gunpowder", { on_punch = function(pos, node, puncher) if puncher:get_wielded_item():get_name() == "default:torch" then - tnt.burn(pos) + tnt.burn(pos, node.name) end end, on_blast = function(pos, intensity) - tnt.burn(pos) + tnt.burn(pos, "tnt:gunpowder") end, }) @@ -511,7 +512,9 @@ if enable_tnt then neighbors = {"fire:basic_flame", "default:lava_source", "default:lava_flowing"}, interval = 4, chance = 1, - action = tnt.burn, + action = function(pos, node) + tnt.burn(pos, node.name) + end, }) end From 78311a27a1f9245e7cdb377eb04b724871105230 Mon Sep 17 00:00:00 2001 From: bas080 Date: Sat, 7 May 2016 11:50:59 +0200 Subject: [PATCH 24/99] Store registered plant on namespace Handy for when modders want to use these definitions to extend or add to the mod --- game_api.txt | 3 +++ mods/farming/api.lua | 4 ++++ 2 files changed, 7 insertions(+) diff --git a/game_api.txt b/game_api.txt index a148136d..a20ecd4f 100644 --- a/game_api.txt +++ b/game_api.txt @@ -183,6 +183,9 @@ The farming API allows you to easily register plants and hoes. `farming.register_plant(name, Plant definition)` * Register a new growing plant, see [#Plant definition] +`farming.registered_plants[name] = definition` + * Table of registered plants, indexed by plant name + ### Hoe Definition diff --git a/mods/farming/api.lua b/mods/farming/api.lua index 901f7245..71c5a67c 100644 --- a/mods/farming/api.lua +++ b/mods/farming/api.lua @@ -1,6 +1,8 @@ -- Wear out hoes, place soil -- TODO Ignore group:flower +farming.registered_plants = {} + farming.hoe_on_use = function(itemstack, user, pointed_thing, uses) local pt = pointed_thing -- check if pointing at a node @@ -263,6 +265,8 @@ farming.register_plant = function(name, def) def.fertility = {} end + farming.registered_plants[pname] = def + -- Register seed local lbm_nodes = {mname .. ":seed_" .. pname} local g = {seed = 1, snappy = 3, attached_node = 1} From 7b30c26a456f31f40e55b0f18c4f114288633a0d Mon Sep 17 00:00:00 2001 From: paramat Date: Sun, 9 Oct 2016 23:33:07 +0100 Subject: [PATCH 25/99] Bucket: Add optional 'force-renew' bool to registration River water needs to be 'liquid_renewable = false' to avoid a mess caused by spreading of sources, however picking it up with a bucket then creates a hole in the river. Allow a 'force-renew' of the source node if it has a source neighbour. --- game_api.txt | 5 ++++- mods/bucket/init.lua | 20 +++++++++++++++++--- 2 files changed, 21 insertions(+), 4 deletions(-) diff --git a/game_api.txt b/game_api.txt index a20ecd4f..f758499f 100644 --- a/game_api.txt +++ b/game_api.txt @@ -26,7 +26,10 @@ The bucket API allows registering new types of buckets for non-default liquids. "bucket:bucket_lava", -- name of the new bucket item (or nil if liquid is not takeable) "bucket_lava.png", -- texture of the new bucket item (ignored if itemname == nil) "Lava Bucket", -- text description of the bucket item - {lava_bucket = 1} -- groups of the bucket item, OPTIONAL + {lava_bucket = 1}, -- groups of the bucket item, OPTIONAL + false -- force-renew, OPTIONAL. Force the liquid source to renew if it has + -- a source neighbour, even if defined as 'liquid_renewable = false'. + -- Needed to avoid creating holes in sloping rivers. ) Beds API diff --git a/mods/bucket/init.lua b/mods/bucket/init.lua index a7cb0f27..638ce1f4 100644 --- a/mods/bucket/init.lua +++ b/mods/bucket/init.lua @@ -36,12 +36,17 @@ end -- inventory_image = texture of the new bucket item (ignored if itemname == nil) -- name = text description of the bucket item -- groups = (optional) groups of the bucket item, for example {water_bucket = 1} +-- force_renew = (optional) bool. Force the liquid source to renew if it has a +-- source neighbour, even if defined as 'liquid_renewable = false'. +-- Needed to avoid creating holes in sloping rivers. -- This function can be called from any mod (that depends on bucket). -function bucket.register_liquid(source, flowing, itemname, inventory_image, name, groups) +function bucket.register_liquid(source, flowing, itemname, inventory_image, name, + groups, force_renew) bucket.liquids[source] = { source = source, flowing = flowing, itemname = itemname, + force_renew = force_renew, } bucket.liquids[flowing] = bucket.liquids[source] @@ -149,7 +154,15 @@ minetest.register_craftitem("bucket:bucket_empty", { end - minetest.add_node(pointed_thing.under, {name="air"}) + -- force_renew requires a source neighbour + local source_neighbor = false + if liquiddef.force_renew then + source_neighbor = + minetest.find_node_near(pointed_thing.under, 1, liquiddef.source) + end + if not (source_neighbor and liquiddef.force_renew) then + minetest.add_node(pointed_thing.under, {name = "air"}) + end return ItemStack(giving_back) end @@ -171,7 +184,8 @@ bucket.register_liquid( "bucket:bucket_river_water", "bucket_river_water.png", "River Water Bucket", - {water_bucket = 1} + {water_bucket = 1}, + true ) bucket.register_liquid( From 3d26b33e5bad60ebb4fe459e011abefe130dbc3b Mon Sep 17 00:00:00 2001 From: paramat Date: Wed, 12 Oct 2016 01:49:31 +0100 Subject: [PATCH 26/99] Default: Add coral nodes and death ABM Original code by Sofar. Textures by Pithydon. Exposure to air converts live coral to coral skeleton. Live corals drop coral skeleton. --- mods/default/README.txt | 5 +++ mods/default/functions.lua | 16 +++++++ mods/default/nodes.lua | 40 +++++++++++++++++- mods/default/textures/default_coral_brown.png | Bin 0 -> 401 bytes .../default/textures/default_coral_orange.png | Bin 0 -> 358 bytes .../textures/default_coral_skeleton.png | Bin 0 -> 256 bytes 6 files changed, 59 insertions(+), 2 deletions(-) create mode 100644 mods/default/textures/default_coral_brown.png create mode 100644 mods/default/textures/default_coral_orange.png create mode 100644 mods/default/textures/default_coral_skeleton.png diff --git a/mods/default/README.txt b/mods/default/README.txt index 4d7744f7..bf7481b6 100644 --- a/mods/default/README.txt +++ b/mods/default/README.txt @@ -178,6 +178,11 @@ asl97 (CC BY-SA 3.0): KevDoy (CC BY-SA 3.0) heart.png +Pithydon (CC BY-SA 3.0) + default_coral_brown.png + default_coral_orange.png + default_coral_skeleton.png + Glass breaking sounds (CC BY 3.0): 1: http://www.freesound.org/people/cmusounddesign/sounds/71947/ 2: http://www.freesound.org/people/Tomlija/sounds/97669/ diff --git a/mods/default/functions.lua b/mods/default/functions.lua index 7770feb0..0e0ab843 100644 --- a/mods/default/functions.lua +++ b/mods/default/functions.lua @@ -471,3 +471,19 @@ function default.intersects_protection(minp, maxp, player_name, interval) return false end + + +-- +-- Coral death near air +-- + +minetest.register_abm({ + nodenames = {"default:coral_brown", "default:coral_orange"}, + neighbors = {"air"}, + interval = 17, + chance = 5, + catch_up = false, + action = function(pos, node) + minetest.set_node(pos, {name = "default:coral_skeleton"}) + end, +}) diff --git a/mods/default/nodes.lua b/mods/default/nodes.lua index b6ae52cb..b575704a 100644 --- a/mods/default/nodes.lua +++ b/mods/default/nodes.lua @@ -111,8 +111,8 @@ default:mese default:stone_with_diamond default:diamondblock -Plantlife (non-cubic) ---------------------- +Plantlife +--------- default:cactus default:papyrus @@ -131,6 +131,13 @@ default:dry_grass_3 default:dry_grass_4 default:dry_grass_5 +Corals +------ + +default:coral_brown +default:coral_orange +default:coral_skeleton + Liquids ------- (1. Source 2. Flowing) @@ -1208,6 +1215,35 @@ for i = 2, 5 do }) end + +-- +-- Corals +-- + +minetest.register_node("default:coral_brown", { + description = "Brown Coral", + tiles = {"default_coral_brown.png"}, + groups = {cracky = 3}, + drop = "default:coral_skeleton", + sounds = default.node_sound_stone_defaults(), +}) + +minetest.register_node("default:coral_orange", { + description = "Orange Coral", + tiles = {"default_coral_orange.png"}, + groups = {cracky = 3}, + drop = "default:coral_skeleton", + sounds = default.node_sound_stone_defaults(), +}) + +minetest.register_node("default:coral_skeleton", { + description = "Coral Skeleton", + tiles = {"default_coral_skeleton.png"}, + groups = {cracky = 3}, + sounds = default.node_sound_stone_defaults(), +}) + + -- -- Liquids -- diff --git a/mods/default/textures/default_coral_brown.png b/mods/default/textures/default_coral_brown.png new file mode 100644 index 0000000000000000000000000000000000000000..8a775fe06cc4c1bc49a787db0525df58262c6241 GIT binary patch literal 401 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!63?wyl`GbK}LV!<*tB0YQkFiRKg=U1gR+OE7 zvb}DSy-|XbUb?ekj)z&1hk1#gO_i@jnZJ2MnBC&m&}E%*8@t2T^u%nNl)Pz5^1f-& zduL?qoRze5R_6Yh$p;r^9bb@hVrj;eC0S=ymfYM}ww<39WI1PnM`SSr1Gg{;GcwGY zBLNg-FY)wsWq-gXBA~$a_|B^~pwJOd7sn8Z%e?*3la46x9FaLLP_59yI_-PQ@B2kR z!opXw2G-tS<4c;Ccu6;4;q}%jQ>xakh;W#hagcBQf@uGwM$0-UAN8ckLP}1RvocCf zAMqBxR`0PQ?UPo*-X_(+geP|A0&8~_F3FNfkesPtvHtMpHZ}2QQ#{QVrpDhB<2z#aJT{nLNnv-) swEZt`yzW$fzoSTO@pI9A$J@Rzdwt-2>UP-04d@>RPgg&ebxsLQ09q}YHvj+t literal 0 HcmV?d00001 diff --git a/mods/default/textures/default_coral_orange.png b/mods/default/textures/default_coral_orange.png new file mode 100644 index 0000000000000000000000000000000000000000..cefac6273c13f54ce5d40c118169bda4496ff562 GIT binary patch literal 358 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!63?wyl`GbL!M}SX=Ylav@u`ENIEJK|lL!UD9 zG*yO$Dhv~~7}n@AT=Eh<<0o?0SM;lw*wbL%JE2l<1I4}sazBpX{TC$sHd^w36vxjP zxxcYuzfvWX=iOQjG?TNyBeIx*fm;}a85w5HkpK#^mw5WRvOi!G5m08)_nhJc6x!(N z;us=vS+vhH>4*Wxfekm4?l`1r{P=I5TXn@%Xv2N=jXUkN7-bLidgM-!HYzf(QMmdKI;Vst0Mz?~ A4*&oF literal 0 HcmV?d00001 diff --git a/mods/default/textures/default_coral_skeleton.png b/mods/default/textures/default_coral_skeleton.png new file mode 100644 index 0000000000000000000000000000000000000000..fa48f1512fcb84622b7834ffd9bc5f5ec6065394 GIT binary patch literal 256 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!73?$#)eFPGa2=EDUy>tD8EUp_qCJkw?tPz`5+M`SSr1Gg{;GcwGYBLNg-FY)wsWq-gXB4EX@Jp0Kd zpis4^i(?4Kb>5zXyoVJ8Sj<-*= Date: Sun, 16 Oct 2016 01:42:24 +0100 Subject: [PATCH 27/99] Default: Fix 'leaves simple', 'jungleleaves simple' textures 'jungleleaves simple' had completely different leaf colours to 'jungleleaves', now matched. 'leaves simple' had dark green instead of black colour for transparent pixels (the 'leaves' texture uses black), normally these pixels would not be rendered as opaque colours but bush nodes now use this texture and will be rendering it as opaque. The dark green pixels resulted in a texture lacking in contrast. --- .../textures/default_jungleleaves_simple.png | Bin 430 -> 417 bytes mods/default/textures/default_leaves_simple.png | Bin 817 -> 838 bytes 2 files changed, 0 insertions(+), 0 deletions(-) diff --git a/mods/default/textures/default_jungleleaves_simple.png b/mods/default/textures/default_jungleleaves_simple.png index 689195f75a82b7376d63f04d6f35e7ca2aaaf1ff..7165100c7ee1b526628a81fa387f100fb30a601d 100644 GIT binary patch delta 384 zcmV-`0e}9k1EB+uDu4d~{{a7>y{D4^000SaNLh0L01FcU01FcV0GgZ_00007bV*G` z2jB`10yz&={QZys00AyZL_t(I%XL#bZiFxpeYU^_!3rXxT=@vT|1oj|v}LpwD+7fo zCdKAOgA=APvS<8$#sI*_?OpIwkNea3p%dp@lzhPX_O#cJ4u5IhkeA&6KojC50I;Tl z$Ng!bikE~qNt!pXFE6{{oMm%AI{2ZJ5GTpYZc08-^6`rV0NeurUTD`;kme0*DyWM{ zY#zhg>3mHEmO8ltfFC*m0Mg_zFVbc6vYT4F9#~U>^X-YDmT5wqWd8gzL?#Pr)@Jfd zdt=kQ{V|VCdU-&vnu+m4Ct4rBiAtm^Gn-l;-S_B(!!)%v)A<%nt@XbYuFM4Ricvq7 zs}u;*j}H3rSq{^{E2P>)0yLydV`>9EUeOZB`BpT5)qf)YG9uN{hB%3iG%vfc`dw>! ebt*MG8vYG9+aavYEu4b@00006gD0(6jvVr00BEmL_t(I%XL#LZp1JUeYPT5A(g@^6N7-9BBY>q$%%TGfF(VJ zfkBA1EK*2hGz*fqopm=uY}qsOK4TjI=)XP%XQbQR_`Z`iIDhO*K^xr5nI9a|ydkI6 z06;TNK>#4ff^@qZs9=+E3X7o0UA=KF|~mn$7l)EMkgA;zWl`VmyvEg s+Hne^N1D@WtbW&8e?66&9Swf~SmPd%2A_3R00000Ne4wvM6N<$g2LykIRF3v diff --git a/mods/default/textures/default_leaves_simple.png b/mods/default/textures/default_leaves_simple.png index e492a32ee1600072ea2c5886785ba2a4f329d614..eb60f9f5c232c34d51350d77fab0d323339e4695 100644 GIT binary patch delta 809 zcmV+^1J?Yp2F3=EDu4d~{{a7>y{D4^000SaNLh0L01FcU01FcV0GgZ_00007bV*G` z2jB`10|yEGm?`f700PrVL_t(I%Vm za+AyU7O8p3JOQdywN;gUh5Np`je`S z!wEBUw`l!xEcK0=O`QZM%b{}_z5Tw_H)@s{OMa?Aco;GW&IKU1y|ZQuxg35Q#-j<> zqcel@Ea`d1vzMFJe{+dW4EZS-1n087vu4juHR|kCqJ>J)Y*GrGHs{zG88&lC7~k{plMk(?ZmV zkgXr@+tEPdJQ60~}<^~0u3 zla%@ITz}qoPGxvYpJiY#x}?Z*!>`Pn>J4*=J5 zdG>PC{`2#I;ZTsJ^{So36Rfp(6&F#8@_dQ@U*{NYP$h+1E}}mes*g&X?0uwEa~TH- zsgt1IHUsJV11Wk%ymAo{;X3u}t$9?U(1{^v_kZO0_X|{6h@%w$pes(62MNX+N;Q|sWybNZz5vL=a>Z7^FEL3C0DG@GvanpSPT3*&v-gEQ zck!waQ72;k=^W~sJiy@ZF#v`6JUY~Dyl8x(uf2ODpPExs3sVro+0mFnu|W0VqE(KA nQX-0?Tlh?0el`!lr>*@D4S0=414=Py00000NkvXXu0mjfzv+oY delta 788 zcmV+v1MB?82C)W^Dt`a~0002_L%V+f000SaNLh0L01FcU01FcV0GgZ_00007bV*G` z2j2$>4Gsn;5bI3<00O>AL_t(I%Vm<=ZWCt|g}>SVcn&@d4t8S#hEPG03rj>Ty{jUT z7w9wht}4B#Xw{OI5)e^E4%nVkW;`?ho?f_#kk}8f)?RCU&VP7k%jwU0TE=UJ<35YG zE9pmltxbh#T&&x$UR2VL`pU4S)Afko#HdvPkiDa^?mit5L_S5n=H_gpv|&pfH_VTx z3ScV*K&{H&(O5_OBbCc@%e%i*?o3^5Z0XN>n#Gw&CD_;!J&CBAW+NI~($kdD{z%{b zoUnBl#Hm}#^M5sYBB(06PX_=PW2nkXmM2U3_q4#f>mnkzAF3+ve@~I>Qv(6SZ(>Ye zc>T*22QMaSt;O|ReehkR*@s+`vyA(PAzt9IJXwnCx(x0OkSxxmNg5F&^zL+Nl14sV zT8wLW^nAeTFUx3uqy!u1R$C5UOw<`Tq^Bv);SZ17Jbw|ECrjBo8tdh`rCgPC!VYy& zV@g97XVM*ZwGG>iN)AOw4u1h!KlB;y4(;`#q%-P38v+o70rTUj{_*1lN#fuGFTR*BxW54+Jxw|IevI5832^aS0nmDr4mP$-=38IP zx4q*!pHnN{oi3Dc`A>o8dxYDeiZO@?e&8{g2h{7@P0lhpqYfAEYd)ja{0DLef*LpC SAPp=40000 Date: Sun, 11 Sep 2016 17:24:02 +0200 Subject: [PATCH 28/99] Default: Destroy flammable items when in fire or lava The check for igniters (fire/lava) will be performed every 10 secs if the item is flammable. if the item is found to be in lava it will then burn up and disappear in a smoke puff. If a non-lava igniter node is found, a combination of `flammable` value of the item and `igniter` group value of the node will be used to determine the chance for the item to be removed. --- mods/default/README.txt | 4 + mods/default/init.lua | 1 + mods/default/item_entity.lua | 74 +++++++++++++++++++ mods/default/sounds/default_item_smoke.ogg | Bin 0 -> 11917 bytes mods/default/textures/default_item_smoke.png | Bin 0 -> 307 bytes 5 files changed, 79 insertions(+) create mode 100644 mods/default/item_entity.lua create mode 100644 mods/default/sounds/default_item_smoke.ogg create mode 100644 mods/default/textures/default_item_smoke.png diff --git a/mods/default/README.txt b/mods/default/README.txt index bf7481b6..06739977 100644 --- a/mods/default/README.txt +++ b/mods/default/README.txt @@ -183,6 +183,10 @@ Pithydon (CC BY-SA 3.0) default_coral_orange.png default_coral_skeleton.png +Ferk (CC0 1.0) + default_item_smoke.png + default_item_smoke.ogg, based on sound by http://opengameart.org/users/bart + Glass breaking sounds (CC BY 3.0): 1: http://www.freesound.org/people/cmusounddesign/sounds/71947/ 2: http://www.freesound.org/people/Tomlija/sounds/97669/ diff --git a/mods/default/init.lua b/mods/default/init.lua index 594ea36a..08e9efe4 100644 --- a/mods/default/init.lua +++ b/mods/default/init.lua @@ -42,6 +42,7 @@ dofile(default_path.."/trees.lua") dofile(default_path.."/nodes.lua") dofile(default_path.."/furnace.lua") dofile(default_path.."/tools.lua") +dofile(default_path.."/item_entity.lua") dofile(default_path.."/craftitems.lua") dofile(default_path.."/crafting.lua") dofile(default_path.."/mapgen.lua") diff --git a/mods/default/item_entity.lua b/mods/default/item_entity.lua new file mode 100644 index 00000000..c34e60e9 --- /dev/null +++ b/mods/default/item_entity.lua @@ -0,0 +1,74 @@ +-- mods/default/item_entity.lua + +local builtin_item = minetest.registered_entities["__builtin:item"] + +local item = { + set_item = function(self, itemstring) + builtin_item.set_item(self, itemstring) + + local stack = ItemStack(itemstring) + local itemdef = minetest.registered_items[stack:get_name()] + if itemdef and itemdef.groups.flammable ~= 0 then + self.flammable = itemdef.groups.flammable + end + end, + + burn_up = function(self) + -- disappear in a smoke puff + self.object:remove() + local p = self.object:getpos() + minetest.sound_play("default_item_smoke", { + pos = p, + max_hear_distance = 8, + }) + minetest.add_particlespawner({ + amount = 3, + time = 0.1, + minpos = {x = p.x - 0.1, y = p.y + 0.1, z = p.z - 0.1 }, + maxpos = {x = p.x + 0.1, y = p.y + 0.2, z = p.z + 0.1 }, + minvel = {x = 0, y = 2.5, z = 0}, + maxvel = {x = 0, y = 2.5, z = 0}, + minacc = {x = -0.15, y = -0.02, z = -0.15}, + maxacc = {x = 0.15, y = -0.01, z = 0.15}, + minexptime = 4, + maxexptime = 6, + minsize = 5, + maxsize = 5, + collisiondetection = true, + texture = "default_item_smoke.png" + }) + end, + + on_step = function(self, dtime) + builtin_item.on_step(self, dtime) + + if self.flammable then + -- flammable, check for igniters + self.ignite_timer = (self.ignite_timer or 0) + dtime + if self.ignite_timer > 10 then + self.ignite_timer = 0 + + local node = minetest.get_node_or_nil(self.object:getpos()) + if not node then + return + end + + -- Immediately burn up flammable items in lava + if minetest.get_item_group(node.name, "lava") > 0 then + self:burn_up() + else + -- otherwise there'll be a chance based on its igniter value + local burn_chance = self.flammable + * minetest.get_item_group(node.name, "igniter") + if burn_chance > 0 and math.random(0, burn_chance) ~= 0 then + self:burn_up() + end + end + end + end + end, +} + +-- set defined item as new __builtin:item, with the old one as fallback table +setmetatable(item, builtin_item) +minetest.register_entity(":__builtin:item", item) diff --git a/mods/default/sounds/default_item_smoke.ogg b/mods/default/sounds/default_item_smoke.ogg new file mode 100644 index 0000000000000000000000000000000000000000..e1c84078650aa03625017c458ceacce324422deb GIT binary patch literal 11917 zcmeHtcT|(lw&)i+(jg+f_aDLwYX)QUpOk zq=_^^Mdf}0f9ITc-d*>;weEWV-C2`aGkfou{mm{jduC$j7j#P$3~!u5oJt=npySX#x?e@jXD=R*mD6lN}WoW%^i zojBZG>`l)YaOiMIic3g}ONvWz2pD>Jy4>+b`Jg;~1#zQ82+z9;s;Zen01^-)q0iBS z9#2F705t&E@(5Cof~i8j2})t8tyb*OG5 zvcBgtD*q|xPeFP%4-W8KREZdo)T$)7;iCjgGQ7c|&ZorzpuuSZT1ilyTIf(M%g6+e z;l79woy>%khOvnO0!)6^H~mpF{(dw5_suiHEnnO>e-Umu8*Y6ZZpRSuCx5%Ybd1Yq zQ|EvH`P}kpD}sewOoboh3-QAuD)9g$P9z+p$y|cTMLH#puGKEtP0kff9z%5^Lv`e5 zB%oFaa9;!DyJVI8U)j+-4fWq=m~+1n00U*&=f%?J#iIe|>GKvLK9g`i0O}M57wPeq z*7A|=^HBn`maqB%Mt|f`pXzTV;M5KPFbS3(FO~sN8gS7`Z<(7u$}>I&GoUDN68W!F z$eF!>6XDEtOmjt(NF~~xi3JS~%TPd~Mt;r-B#0_l<;WV(IvA0s%=(yL2F;#)6>XBu z-&~fFeWpS8QN|Temx65d=n^B@+JBOi`nAhHFe7#-GDRlV|_!|Lr+m z(7q&=fg~QiIv#`9A|w0Kh6mCUbQ(s|2F4eyCocL;(xZ%JttVwrlL*wbKWeTCW%>NR zdD9<m>7-C-ViSIYnocW#(;^6<+u^ z&vA}gC;7;;CPyY!oBN>R{zwm-d8^BBq{^y+j zcZC0yz<(;E!IlfKwO`Ee8Q2S76B;I=j+n2lHK}yG;6Y%VzXSR9VE6e|rbG z!R|}nWmBRmAx)H~$|D|oG z7(&nj01#PdMt_H82ru5j9F{CXW@`=@;NN9}K_NI|JlxkYOY_nb3rHh*0ct{E`3`jG zwY1TyTpHG;u-{8WZ&E!81qMOUT+(2bCht>V3F+7YIB$WNLKi%6djZ8xh!eZ4v#to` z4d;GcfP)9h? z?wqs!0hTs^f~zpN8e3n=T8qYwP+ne522xH+8-SEEgoVyoC1vH{P69h4oc6Q66orG8 zgS!hJjtF5rlZrySfc;vkMet3|+l=|;<(n?c=8A*6VB>}JxMtcqz`(gP{JgT}9YdJo&oLB}hyeWe^ z;9?w1vIH0>U)LST0Ac)CBuJN&0#^WGlwiQ&3z8IL;Hv96K4AQj3z9$p*txW0+^>t% znw*LIBG9pnQ&%28C~lqPlE6HEFm82CEe5d+qVcA02tl@0HGQ?zp#|T+757| z!^7>DVG<;QV9Z6tSxl{}Ef}8of0{o84fa7(|2d(^#@hXrVMNE}ylmrR3 zc*??Ef__Y%xS$wg5hK|20aOqO1E*qPMaGH6SUeVOV#s#q1hwV{!W^V@8$lR26*m#x zW)N1}!{8RDA&_l}!@5<;2!8a@tDUxRsBGjbicQABDjVN$Vc?RzP-C!`6(-($%-~Qd z@yQ~Ew(}dCu_#FF2HFBQGOn!G0yG>_RBW8+G{$F?5P&Jm0We+$6@Eqpyz4fkfyH3pXMIV|LS*nLii=cfLEFW^!G7T&kMr0W6vzdT#~DHwJhDPnNzW0O zWRMQ~2LUny$Nz%>8G*x`_W&!n5Ihw}i>sWKWw;vHJTK1?SdbA2JO|+zfz3bToiW0| zh0dGc@{5mK{kVlhyRS=CE8%HDCG}xvJ`0}EsEKPE-dI$`dJpR8RHqWb>JW1_ zn(3i9R0ef)b3;i4iORxbg|HbZX{tjRaB_QL3Ex-=E%}cos(lRLk{t>F_%xDqBv4pL z2st1J(@w+#E|8J4c4@$1Vw^=C`FHf?_;Y0eKqYFJIy$O{L!y95K&S*C-9s3059lAC z)oy)(7Q?q1@3AIUB~hggHDiH6Naf_-NASPf4P(y9H#XUXfqVdf4Oj-3uQ`B=t1xqA zefJwcO2f!0C?T&xbB0y~z5#$X932(qye6lhbQPwmuBol7fBgoyyg|-(LKpxcAvr&A z;@Tu6=NBC?{%#PGiCH(P{Ll@9E=1mZ7Uk0+GLx z7y~xt)0DRZ+LIn?Uib66_VA&A)MR%dIlyi?R9!2k=hq0IjtP2rb*ymo;MphkYrhv6 z3FMnT4b|U%m$OF8c|6o;!y_oQHS#9y(~_kj)-MDQp$MSx(Bpncyxygtu^{u-A#IDj zHcW7yYP`yXb61H@iPO*PD{~_q*{IE77Q+TPF&nmVMhttIivR6jx5P$dpH+PB1Lw*goBXGt1N=&{6nO6|j<->J+GGmk31 zRJ_Z5@df3^lKSh8gk5aKhObnt`Iq~SaWxUT!aZxr4Lp#SLrhy{KJr~PKkA>SP9?rx zcw*UhDWT=N9Ci`C(kr{&`hB#)FimaVvPgrde#MGJK+j#O=g!Pj-wNH+soc1lnR@#m zOV#~EU4B13G(03`Xq;3J#yJr}+^N~KSgT#9YlojA9$$c$T`xxU-EFC_+_hSToif8YF*IWF_*IBA*J#LO*(oKV6 zkKkJvH^;;VBxSunr3{TPGe2bRIGy=czfG}Yr)jbuSIXlyXQH_06>GwKLg+yn6D0rW zMvhzvylT;&)t)E&QoaQFk%^MXWGaQ3>VXXMHaV9lP zqyr3|04D@+l*rG&(=o=LXfLTD+e8!qe{@CG6^+1os^L}Th1KVHPmwAFS^Y|hVD$DJ@CJP*oFAJ#nFU;k@c?D(qw!?YTw^j9Cq9=g9f zs=mBk-O9W<1fPf`fA@f%U`e3{yo(HkWON_DL|J=T|ETKF98beJ9|-AFAD zSZI9ndJ5jSEs%e9zC({LKdE}HW+ZY&-Zxb@$u+|5hgsqE!yjDT#;ekwqZg!Ok**v@ zjq`a~70ezM!&wvzHr=mz#BUhAf7kfD+gI5NqBC|F_B18bCO9Q7rYknL#;SF%nqgIF z_@g#H$9{AVzDN{rgepe7pxy#qc%z8tm^NRS$l?{R3F%AQgt~2Q+9+OXTcrw*;)SnG zzMqyuT=9K~c&LDo5BHktV+otcZOLu`pbq3v%$2H6^aoeDJ=LwHcp@T%*6#ZZ6M9`> z-FAC>eQ6>hyj)0wkgR+Nph4Va`u)jv+&}eb-=*YAmisKj&i9B}74P!jCmi2@$}K1b z(h)ZvhglpYeEC^5a1@#Sy;8w(X3g8JM*P;Dfd)*xMX;mu2B zNpHBq%=8MXAFw#pNmD6R=FSbzPAGXO?D(n;NNH`M6_raJF0b}itbL8C+cEAKy&B)M zM^~-y(gbh!4i+!Wi#KmgX_FE7UV=>*^P9dFVC`|XP}-VBVh?8qtHp}w+VVa^@m>f7 zCwqPoFErW|N+^-EFK0R$6`@v`B=a@U+;DFsT&z?O5?D7gk)ohcHdb~fdJ#2uXt3w| z&i#w|RAsZ~$Tu&F5rt)S3Vrz|VyVZGsqZC5Nv-57iC0I4THH;_YXoTShu$fmVJ@39 z)Q$2UKeT}D+6gHU2;bMEVtP5-jhE6+Tb#(J=K9xfjzSZtYd?PCqGu`t_E`NnMZd1t z?kC{^d>G^bVxfD1F&Sp*8==JxQkL9J&~O7rH?LH+4c z4f*TTK(&~5YPYMSgFl=H4Kw9nHS#CdrIVCn>?^FfXEr3bzjrlQm|mqybqj)CW-6gb zk;#2Qzt_*j{gjM8bcC!nYNWx(|6@L?ZG-DIfsj(H&t61vZqgTav|o!;bh_e+wQy-v z-$~drqxMy@#!5Eh5ks6aI5+$-{b?2xdN}c#Z*r^{^;feV)}34GZwK? z=x~{W%Z?zP)6pwAp2j5IRpafYkf*Em)S_vTGLQK(HHqu!FUkNq&FQr@IglGiP-`8^ zak86Q`uK{DA3087eMeAXMTZ~3ruceu&Z1IHWjw~3*bi0oYnm;(5=1K|6E82#h z&|o^3t5G}8t{%<(crO)FIZ>VkcU93z;X&Kwy;KTpc*|Bz5tlc)v9$5m;fmbxPrn;q z+;4yMld%7_kU4ryXDP>%feJ2>=GWfK#kZA9nT``N%?q^{-gDs14%E2p@lq>Y zoK7(2fnaT2p^U_FN`v8q2Gnq}kmW11xlE#hD-u{?fSjsGR!#!^bbbft*j z`wv|Do`Ja<_vj`&Z5$0N9uBV-T;LZms8V-T*Ib2yv*~SS{j@ID8y5^x%b{Q@XP*^@%x>OoF3kIvaQT+v0b+i0%6{cdTb5t zs*5hSzz{EBsQpw)8G}G%URMFoh}isD5)vAi)GTDVAQqtkeWR~%l~8?Mmsk$Sx16V3 z=q}*lpB5j?BajP|RLG7s32{DyWGv=7< zpnpq>4B=2>klc_2Tj$OG95J#w>$SUnyxZmZ-AnCj(|yIP=JkVsqM_A+ik^%FAg4|vf1C6Ut^Ix!iIWh>{}L^>G0)hvD#UPC~j}3y?AT>GT%UiJH58#j)=mEsESrzp@~RjOU_80HZ1a&%UAfFceb1owiKcyw)X*JtVT^W>MG5 zw3h;52f&;|Lh~NpZQn56sZ=My0PVC~mbmNV#-V(GGAF?o#i%*;7fJ#|_zzIPJH!IR z!!XQvZ?l`37xyNcWMs*D8%0hlb+nCN-uR^P6^AfUUhI9mAWcs)%Di;v~I0xeSP9m zu!x?b_WNhC7h5qF-1b2mo#cc5CP)f4D=Dm{1neWP`RmUY#Cd7qpG|3*T|Sx!25-c& zQ|uxAQ`cms`EE78)RyTX)#)EtHYePlGmg|Q+q|TSIT+@PTyUTB>3S>8HL5Ej1_5ky zeXe=M)d?@n8(+KY!{H-vz*MI$XH$3Si%SJx5es5%0rQl)TREj9|IK#!YTcZIrh%u; zLd1RcyR|$UctT=>YDP(#ydV=4=i7K7E>I5vcmA90qE%9eB&ubMSig* z$-bDAiP{#X{(^vH!I^`A5x60Q;D&Ti^m+-IETB7V%-a|A9_b(l31+MNZz3~go>0>q zQFG!E{vb{45L3BIC!C8=RF3R`fJ@WeuXPTX!XmyC|BF}hu04`*emu~AW!~v$c%TXV z(g(!?{AA9)w9#&M!h z+uLN2QuIM6^G${oM~+2M#A8Dz{>iJm%E;|JQ6;k0ct%Zmv}U^?3n^^16(COM3&n+xC*F)vHyR;iu$hwSNO}Tw#G&Zhwx5U1 zO%ny*y6e-i@0WL;J>Pn(v|-TW@bg#t&!)y;sV_}@+>al%_)QhmkKXRLA?M6yUJAbY z%j+`YOIx}1i^@ypA8g6hgQOEj`Ou_JNKBvbQ z*Op|=%vF~Ql~!xRB(oYfY)C6wE~*?V8`_KXOQHyz>joisRQS8ruhb8ohUnn^VAo>pTHHJvJMUd zEs?MKkW3>@#E;d=zREZ_QGNIBDouUj<$dX413GP_s4XDx+K+-Oou#r#)Lw%;@J(rb=O-7BzcKWG|Pkru77e#ONZ1qtDj5;Y^B3wr>)tY9=M3^B z__Usv?^&fdER!D@n@*D_)(rlGK!8h=Ra}{-XSNO5B~ab}l(QrVOFgE~5pn&K$f`Bj zg7JDATijLJn{OVKV0l8O(KX2|!nf;+%*}d-fH}E*}`o-zRzeEHAKvyjbt1U|Fz+z^oYg6*SwT4R>ffC-+^F)|L)i zeS0**m6W@lsl&G5k^>_nTmWi;RX}k2g{lBi`vO3B7uJmo#z%2>89_i1c(!w$T}I#@ z(%4i3HQ7!*!TSgQ(>tg3r!J>9rwXT{ijaRM8^l85tb?(d*A9#30{W#p5+cgLbYO77 z>85d{%f9Zb`3crmDyYBf+H_c3M^Gy_%9q-c>1yIljj@`%1)`Vx6(dFiXsdW ze&q+XdR=()b}=ddubcI`#Qn6~)Pepx$Ye4f8ANU|rndKElr5Z0|FWcqUqhDiw3;t} z_CtzqDzlCH^{b+M?f1&s3g>jxW4uU*G&Vyygp%qOz`%B4u^F{qns(i>&dAEnIgD|Y z-a#ft$jAfZ!53QGTHd?-Vb+AXPK^d%Lrxs3V}iVXud@1ja-pp#{jw0l#Y~<%h*bWe z^5iH}!-VKeouTp}ab2a1$emZqz>8i8eIjHr3)!0l#Ap)0@N3C|S>ME`R0OuMB4!(m zuy9(=M3S%&&3ZIpr}qr?g{>UzB4nN>piP=A4zPhf;=NH!`063IGnZ$mAD^Mlqtk`& zj#Qt&_4=jL{XE%a{ra`Yqg06bA}0Y|B0w@!yEr!a{AhK#y4r9ltV%U4cxZnIXzwYGm(Y}w>z+%q5Id#%Uvb#|{V4tRVC$t8xIfb|^zX_@no=}t;$$zA0b zMxsG3{Y>fa3T=dXc;4=D5XX}DHKm%1-6PT(wHTEhh-QVoM4i&*5bRpu#`vWEY<+tX z7EWuGvXxQ_d%VxLT|H2&-1u0gzrrVAOIA(Mt6cG=<Sc?j<8R1JXSI+6XvwVjYk$pe>stL- z;j_3+G5@UF4c~B7>8Ag^CrkI;zg9h)ZChEQeRwT!KDS3meyEP^St@xncG1h~693>^ zBcYrZ6qcp2hc=E+lV%h2AQ|@wF8k!}O7@gDHB9x1-*@L#uWGZ}ORIyLsfy%#ba$4A zr}aqV))NlMc(p5%~y%i2ucVO-Kre^(ZsS(ALSMWbbRY8I(*H?b zP7}`I2jG(kG8#xFDxyWVGfOOrU3|~a3@w-!So>h;%hyBbi-ZVU+6cj1+mgC>LAe@_ zLSn0Vaz&F!RI@k;9_`cX%Y;(O$T`jJ1&Bp>yJ4!UCOD^*mgS@_Fg&Lxf1)liPK(!H z$*on2ESgfLg((W+@q9@g&AE|gOUgyw>y2ltLSE-gbMK{=$aM#KLIHTXWPVWUs6kyQ zosJ7ym_vsFc;Lswj|2E_kM=Uol&D|sONF)c`R(N1ONm10!Uy*_d;{-AyL%*Y zz>^jwNQcr&z?of9j2!O)oD`r#O=-so_kZRZ!p1{85{d) z##=9^;XSIl&34Xy0rb)$YSAUXg`I;$!_^4&FJ>}NM%+!H78B8z>Ik?V~>#Zc7m zrri7qNYj_ZsTD2qA<|U(ZS6S+b|K4DfH()ESyYjbFIg@*j0B(yaf!}+%#{YYo6ku> z2++5Od~TG`$nSn2Y<+ad#S=WLR z-Ar9t0ES79%apwTU6#YCF=dh>dwqAb;L?K<*>^7;nbZOf*A`WRmCXYw|1z~7RN!NG zycKU@#^mVQqGZ5gScWN7rx}_)6w^wkg7)3e?~R&LPbsEh_8ry_SEi^GcYvuaBJC)? z>pR`JA-)fEOB8K4>fm#EyCB0iP#67Rp(`+_VL`*q0j@`vm5m~9eimqZv2c=<8N8)0 zt#=e-osAES`&>ERTC+bLhN+gJ!{f<`7b9Y0>t7Q6cw@m#F;%+#{EKk93Vn|C6i1r% zjhh)FK@OInV(Hmiaq}jk}4=7`g~Qn_5F5HADIt4Rv*(+ z#%ah3E#23Rkm2wmdtqvtTU%#aw;fG+55Lrqx8i0QdlvayBr8$ogT!a?rTi?aa}RP8 zwjT_)%Bw-618~nVK-MZ2o1;c~(D2RcdiM2tS>FNF`yI12*Uo6s=RVdDM>LDQWSMAP zdh+FDcST`u1HpO=nkfon#xAS{TFJ3Yi|Wd7z}ikKT8K1$mF<8JgYta=&XnzCg%4GZTE4F*{nL zqy2QvtGey?)vwZ@9ow&6{V_?fkH1R>#(dq81@vq-*Nm+Wj-SxIP3?9~F zu$pl6s#&pcjeh#(jn+n5Cd-10-#rLnEVAlCD+Y@2c6z3qCitY0HAZnBk(w8lsG-3R z&i&IUshF^t*f46N|GJM~!n46ARX(l6djj&|isX+FE$ss=AM0#n)F@hy*h*50IzFu1 zoJ2za2G^Tq`dYj>twO=2+l2*^o<3g&2b<~g3q;Eo59d>gV!10U^e-Z=PP!OerYu?O zcgiX~(wQ`lK_P!s$3Mc_EVS06Uf~&NFlzf+SotY0+D+0EUaX>U*mU29Ue{tP@IN40 zr9{RWA{(gjA58iRn)$n}B=1?x1DHf|*<_wlJ>p!|-aoVl17rA^yPzu(Vy zj0Yb3J+D66N>x=*6}6Ss&wkI>ps)Y^yUNhX!oB8gg?YfXDb^>mHDO<%u(V2DC!{!! zy@IiWQw5^)QM1=Z!AN$*i z-A5Bg)6e@!35u~1vk{Fcn&kvS<%M5z1aofR5?7Ye{8esj5^zv^t!-rf5XDtRnEO!$ zF=v9dwrXIG*mL-?UlCCDP!jJ~?Xn9@oB^=icumkdp-;&JxB_`7g0H+1*zR)7!!^A$ zn$(kPDRC9ir3G?1o6-qCN3|YX*2`~7xiOcAa^UV*Ssr-b5B)XNm*BRQFcUHCCIgJf zNTi$Ee4ja4d2%|ow9o$I9V%cf{q|&4&eaEU&N9`F3PMKD4&@K~`{}~U@)MtbxOskKqJj6qzx|8gUDk_4kE}tCH3Pz86gMYx8_+`@UqkGaG zMDd{%J%~5|xJa&i(W~aFOHD_4Y*CiLs4oAF819tRNqu}IFMjF1`J={KA_?VuGawDZ zaePmn-CyZd$6lme0{^cm=n$-nFBs?mZ>Zj(ejbb5$^t0I|E>V4p7p)#ufrN eP{g7{=7fE;e0{)nLz;5c6$!HC5PZsirvCt1f<3ta literal 0 HcmV?d00001 diff --git a/mods/default/textures/default_item_smoke.png b/mods/default/textures/default_item_smoke.png new file mode 100644 index 0000000000000000000000000000000000000000..d62fb3b07a48961029e9adb8cc966c2e9d02938b GIT binary patch literal 307 zcmeAS@N?(olHy`uVBq!ia0vp^93afW3?x5a^xFxfG6Q@BdV6~(PMkPt(xfRFVdQ&MBb@066`0SpWb4 literal 0 HcmV?d00001 From 9b62d8a504ef8a446cd2a1cbb2239a03b52cab5b Mon Sep 17 00:00:00 2001 From: paramat Date: Fri, 21 Oct 2016 04:22:00 +0100 Subject: [PATCH 29/99] Default: Add damage and falling damage sounds --- mods/default/README.txt | 5 +++++ mods/default/license.txt | 1 + mods/default/sounds/player_damage.ogg | Bin 0 -> 6490 bytes mods/default/sounds/player_falling_damage.ogg | Bin 0 -> 6701 bytes 4 files changed, 6 insertions(+) create mode 100644 mods/default/sounds/player_damage.ogg create mode 100644 mods/default/sounds/player_falling_damage.ogg diff --git a/mods/default/README.txt b/mods/default/README.txt index 06739977..4d26a932 100644 --- a/mods/default/README.txt +++ b/mods/default/README.txt @@ -192,6 +192,11 @@ Glass breaking sounds (CC BY 3.0): 2: http://www.freesound.org/people/Tomlija/sounds/97669/ 3: http://www.freesound.org/people/lsprice/sounds/88808/ +sonictechtonic (CC BY 3.0): +https://www.freesound.org/people/sonictechtonic/sounds/241872/ + player_damage.ogg + player_falling_damage.ogg + Mito551 (sounds) (CC BY-SA 3.0): default_dig_choppy.ogg default_dig_cracky.ogg diff --git a/mods/default/license.txt b/mods/default/license.txt index 45ea3e45..137923c8 100644 --- a/mods/default/license.txt +++ b/mods/default/license.txt @@ -143,6 +143,7 @@ Attribution 3.0 Unported (CC BY 3.0) Copyright (C) 2009 cmusounddesign Copyright (C) 2010 Tomlija Copyright (C) 2010 lsprice +Copyright (C) 2014 sonictechtonic You are free to: Share — copy and redistribute the material in any medium or format. diff --git a/mods/default/sounds/player_damage.ogg b/mods/default/sounds/player_damage.ogg new file mode 100644 index 0000000000000000000000000000000000000000..e86f2864010d81c8b08e9e342a8d68e2a4b17669 GIT binary patch literal 6490 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 literal 0 HcmV?d00001 diff --git a/mods/default/sounds/player_falling_damage.ogg b/mods/default/sounds/player_falling_damage.ogg new file mode 100644 index 0000000000000000000000000000000000000000..532462db48d70eded6d93544ca26a905d782e3b0 GIT binary patch literal 6701 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 Date: Sun, 23 Oct 2016 06:16:19 +0100 Subject: [PATCH 30/99] Fire: Add flint and steel sound --- mods/fire/README.txt | 3 +++ mods/fire/init.lua | 6 +++++- mods/fire/license.txt | 5 +++-- mods/fire/sounds/fire_flint_and_steel.ogg | Bin 0 -> 10443 bytes 4 files changed, 11 insertions(+), 3 deletions(-) create mode 100644 mods/fire/sounds/fire_flint_and_steel.ogg diff --git a/mods/fire/README.txt b/mods/fire/README.txt index a0f298ce..35affc26 100644 --- a/mods/fire/README.txt +++ b/mods/fire/README.txt @@ -23,3 +23,6 @@ fire_small.ogg sampled from: fire_large.ogg sampled from: http://www.freesound.org/people/Dynamicell/sounds/17548/ (CC BY 3.0) + +fire_flint_and_steel.ogg + https://www.freesound.org/people/Benboncan/sounds/66457/ (CC BY 3.0) diff --git a/mods/fire/init.lua b/mods/fire/init.lua index 6543ceef..731505f2 100644 --- a/mods/fire/init.lua +++ b/mods/fire/init.lua @@ -87,8 +87,12 @@ minetest.register_tool("fire:flint_and_steel", { description = "Flint and Steel", inventory_image = "fire_flint_steel.png", on_use = function(itemstack, user, pointed_thing) - itemstack:add_wear(1000) local pt = pointed_thing + minetest.sound_play( + "fire_flint_and_steel", + {pos = pt.above, gain = 0.8, max_hear_distance = 8} + ) + itemstack:add_wear(1000) if pt.type == "node" then local node_under = minetest.get_node(pt.under).name local is_coalblock = node_under == "default:coalblock" diff --git a/mods/fire/license.txt b/mods/fire/license.txt index 87ade6b3..43f9cd7f 100644 --- a/mods/fire/license.txt +++ b/mods/fire/license.txt @@ -15,8 +15,8 @@ See the GNU Lesser General Public License for more details: https://www.gnu.org/licenses/old-licenses/lgpl-2.1.html -Licenses of media (textures) ----------------------------- +Licenses of media (textures and sounds) +--------------------------------------- Attribution-ShareAlike 3.0 Unported (CC BY-SA 3.0) Copyright (C) 2012-2016 Perttu Ahola (celeron55) @@ -56,6 +56,7 @@ http://creativecommons.org/licenses/by-sa/3.0/ Attribution 3.0 Unported (CC BY 3.0) Copyright (C) 2005 dobroide Copyright (C) 2006 Dynamicell +Copyright (C) 2009 Benboncan You are free to: Share — copy and redistribute the material in any medium or format. diff --git a/mods/fire/sounds/fire_flint_and_steel.ogg b/mods/fire/sounds/fire_flint_and_steel.ogg new file mode 100644 index 0000000000000000000000000000000000000000..6996e16fc3593925f73772dcc24ed65833a4a794 GIT binary patch literal 10443 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 literal 0 HcmV?d00001 From fa9a34554b96d2223cce2a9a53991ebe3c5bedc0 Mon Sep 17 00:00:00 2001 From: Auke Kok Date: Wed, 19 Oct 2016 16:23:05 -0700 Subject: [PATCH 31/99] Default: Add metal sound table function and metal sounds --- mods/default/README.txt | 11 +++++++++++ mods/default/functions.lua | 13 +++++++++++++ mods/default/sounds/default_dig_metal.ogg | Bin 0 -> 5245 bytes mods/default/sounds/default_dug_metal.1.ogg | Bin 0 -> 7076 bytes mods/default/sounds/default_dug_metal.2.ogg | Bin 0 -> 7260 bytes mods/default/sounds/default_metal_footstep.1.ogg | Bin 0 -> 6847 bytes mods/default/sounds/default_metal_footstep.2.ogg | Bin 0 -> 6926 bytes mods/default/sounds/default_metal_footstep.3.ogg | Bin 0 -> 6970 bytes .../sounds/default_place_node_metal.1.ogg | Bin 0 -> 7518 bytes .../sounds/default_place_node_metal.2.ogg | Bin 0 -> 7854 bytes 10 files changed, 24 insertions(+) create mode 100644 mods/default/sounds/default_dig_metal.ogg create mode 100644 mods/default/sounds/default_dug_metal.1.ogg create mode 100644 mods/default/sounds/default_dug_metal.2.ogg create mode 100644 mods/default/sounds/default_metal_footstep.1.ogg create mode 100644 mods/default/sounds/default_metal_footstep.2.ogg create mode 100644 mods/default/sounds/default_metal_footstep.3.ogg create mode 100644 mods/default/sounds/default_place_node_metal.1.ogg create mode 100644 mods/default/sounds/default_place_node_metal.2.ogg diff --git a/mods/default/README.txt b/mods/default/README.txt index 4d26a932..9ae2c002 100644 --- a/mods/default/README.txt +++ b/mods/default/README.txt @@ -231,3 +231,14 @@ Mito551 (sounds) (CC BY-SA 3.0): default_dirt_footstep.1.ogg default_dirt_footstep.2.ogg default_glass_footstep.ogg + +Metal sounds: + default_dig_metal.ogg - yadronoff - CC-BY-3.0 + - https://www.freesound.org/people/yadronoff/sounds/320397/ + default_dug_metal.*.ogg - Iwan Gabovitch - qubodup - CC0 + - http://opengameart.org/users/qubodup + default_metal_footstep.*.ogg - Ottomaani138 - CC0 + - https://www.freesound.org/people/Ottomaani138/sounds/232692/ + default_place_node_metal.*.ogg - Ogrebane - CC0 + - http://opengameart.org/content/wood-and-metal-sound-effects-volume-2 + diff --git a/mods/default/functions.lua b/mods/default/functions.lua index 0e0ab843..429ce9fe 100644 --- a/mods/default/functions.lua +++ b/mods/default/functions.lua @@ -95,6 +95,19 @@ function default.node_sound_glass_defaults(table) return table end +function default.node_sound_metal_defaults(table) + table = table or {} + table.footstep = table.footstep or + {name = "default_metal_footstep", gain = 0.5} + table.dig = table.dig or + {name = "default_dig_metal", gain = 0.5} + table.dug = table.dug or + {name = "default_dug_metal", gain = 0.5} + table.place = table.place or + {name = "default_place_node_metal", gain = 0.5} + default.node_sound_defaults(table) + return table +end -- -- Lavacooling diff --git a/mods/default/sounds/default_dig_metal.ogg b/mods/default/sounds/default_dig_metal.ogg new file mode 100644 index 0000000000000000000000000000000000000000..0b585097a833720ae1a8bea3da50b66987cbed25 GIT binary patch literal 5245 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 QSSeEum$ieyv4no`A2D0cTL1t6 literal 0 HcmV?d00001 diff --git a/mods/default/sounds/default_dug_metal.1.ogg b/mods/default/sounds/default_dug_metal.1.ogg new file mode 100644 index 0000000000000000000000000000000000000000..5d6cb5b1e715b5411f3c99e2524b9ab7b1f2eaeb GIT binary patch literal 7076 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 PWR8bq-Z`Fg*}(q*XiHWL literal 0 HcmV?d00001 diff --git a/mods/default/sounds/default_dug_metal.2.ogg b/mods/default/sounds/default_dug_metal.2.ogg new file mode 100644 index 0000000000000000000000000000000000000000..63567fc05ae56d13f5a2c6976f2cb1b140ad60ec GIT binary patch literal 7260 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 literal 0 HcmV?d00001 diff --git a/mods/default/sounds/default_metal_footstep.2.ogg b/mods/default/sounds/default_metal_footstep.2.ogg new file mode 100644 index 0000000000000000000000000000000000000000..aa61ed3386494085a1d81b587680a23cc888903e GIT binary patch literal 6926 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 K3H)D0GVnjGFILb1 literal 0 HcmV?d00001 diff --git a/mods/default/sounds/default_place_node_metal.1.ogg b/mods/default/sounds/default_place_node_metal.1.ogg new file mode 100644 index 0000000000000000000000000000000000000000..5da085ea22be01f93c63acb6e74627b6b998c105 GIT binary patch literal 7518 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 Jk}7cje*kTV|D*r_ literal 0 HcmV?d00001 diff --git a/mods/default/sounds/default_place_node_metal.2.ogg b/mods/default/sounds/default_place_node_metal.2.ogg new file mode 100644 index 0000000000000000000000000000000000000000..5ee67fcf605e3804a42579bc665873ee06343135 GIT binary patch literal 7854 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
Dtb>4_A6_ zBxv@J7i8=4WQ&xiizvV*?>P)@9QqL?U#GE<@#D%SwxzPN+H5c1+<^PgmRSPQr0qt? zk?xvcjc!=NL5?UIjKVKi9!sj_SC}xwfD`OhCPX=oJcEAr^z*X z`N!|E!`nhdS05l|KCycpX66oP3k#{3M&j?ixq?H>a|M0>HDQP53Q5DXrMy$k35Xk_ z@FshCakBpy68>o1H=w^+?iww8ij8=Rni;H6I6nMfaSI;0q;2#-eal{MD>Vc$gz;5p z)Y^%1CMU&RS07<=7Zv!J*vY)T8MXc>DKveAdBH)R~(}^PPvJW`kxG zFY3FVCP1Sn4@{>E6iAyEg3bJYyqb;e7E!dNjFF8(d>6@JtGdWB4qs#f&%Xz+fC*&D=BwN02n#JQ_=akKeyt}k{)iB)%=#|EE%f${gtDrNcDN) zr}%n%zUF|Kk?t4qO40s%RqGuAD;Mn%`0yi(d6HFV8Q=TKSBA&pk|hr>oOxN`C1cc6 z@ArkH?zNBmHz4Rm&FdiXN`I2+Cy}^bv(o1!k*cQ`ELNQD9v40@{1}+twp_ogeg=b* zX3hK_XM5Ma?O_A@o@(&+aju^y^?lZpYLDE>^l+fl3@GUeIC8sLQO4=g5UYmrhf{v{ z!-e}5N=%3%Ve<3Ei>+@(CWGWSFii!aJWZY%=rc8@+g5e}kLGD5c6|ma*X4Rf{^DK9 z(>km%-=;MJB5Le(X0=^ysPTdIZ@)#JR~vkWIP7XFnt~GX-;HXhVJEC?Z+Ld#v3wVo zx%NUY&R0ix@3h@#i8sA7Z9lK0sYyK=(8A06p<&dHnoHOiKen<~5y&I&oj=ozT)Q@D z8esmGWcnubP=h#@VOu3MAUNlg?%ttvN7x=~deHO>#|ay{0|I)os;+sE!zcytpYfkc z4<5t>+BN+o)rsx3ja#J(wlv!GS@2D?k_^@7-@a;<4`VWW=$pR4d@U3GNx|g_`tfQ= zx3NU%i%*;iC%VFfO3%qCnd^sH+JB+59?(y8IJX`|k`phm^%x9_!6^%PomMQjOZr+B zW0~J8xahYwlvmVWJxaLwWwE`l#{PUc=JFAlpMt_L? zRM2LDII%hO!As9KOFv((hw=p1ZTu=7^-a4Zs3N*4A)w+cabP5ln&x!zBA@?gjrvZ@ zB}d|_d7LxXiDc?D$*QB$a|k<@C3-1KH0aa&a|fe|0x^u=t~8Fh+}!#q)XX-fR=H5Z z=P1294zuR}N2Ohqs$NF`?ztUDShTWhlOh2a3MW+T^*VRV@``sw60* zak?I|+>3YM-|Ea$PS xjP_Xj;AiRDUF~w5u2cO)_|vehxG#c~d)st3^;xgb*9TPo1imKUvQN(i{s&z4)|vnS literal 0 HcmV?d00001 From fbac9be51cb8acf23b9c1983d2f21dca87209306 Mon Sep 17 00:00:00 2001 From: Auke Kok Date: Wed, 19 Oct 2016 16:34:22 -0700 Subject: [PATCH 32/99] Change many metal nodes to use default metal sounds --- mods/default/nodes.lua | 12 ++++++------ mods/doors/init.lua | 4 ++-- mods/stairs/init.lua | 8 ++++---- mods/xpanes/init.lua | 2 +- 4 files changed, 13 insertions(+), 13 deletions(-) diff --git a/mods/default/nodes.lua b/mods/default/nodes.lua index b575704a..5c7b1638 100644 --- a/mods/default/nodes.lua +++ b/mods/default/nodes.lua @@ -956,7 +956,7 @@ minetest.register_node("default:steelblock", { tiles = {"default_steel_block.png"}, is_ground_content = false, groups = {cracky = 1, level = 2}, - sounds = default.node_sound_stone_defaults(), + sounds = default.node_sound_metal_defaults(), }) @@ -973,7 +973,7 @@ minetest.register_node("default:copperblock", { tiles = {"default_copper_block.png"}, is_ground_content = false, groups = {cracky = 1, level = 2}, - sounds = default.node_sound_stone_defaults(), + sounds = default.node_sound_metal_defaults(), }) minetest.register_node("default:bronzeblock", { @@ -981,7 +981,7 @@ minetest.register_node("default:bronzeblock", { tiles = {"default_bronze_block.png"}, is_ground_content = false, groups = {cracky = 1, level = 2}, - sounds = default.node_sound_stone_defaults(), + sounds = default.node_sound_metal_defaults(), }) @@ -1016,7 +1016,7 @@ minetest.register_node("default:goldblock", { tiles = {"default_gold_block.png"}, is_ground_content = false, groups = {cracky = 1}, - sounds = default.node_sound_stone_defaults(), + sounds = default.node_sound_metal_defaults(), }) @@ -1849,7 +1849,7 @@ register_sign("wood", "Wooden", { }) register_sign("steel", "Steel", { - sounds = default.node_sound_defaults(), + sounds = default.node_sound_metal_defaults(), groups = {cracky = 2, attached_node = 1} }) @@ -1895,7 +1895,7 @@ minetest.register_node("default:ladder_steel", { --wall_side = = }, groups = {cracky = 2}, - sounds = default.node_sound_stone_defaults(), + sounds = default.node_sound_metal_defaults(), }) default.register_fence("default:fence_wood", { diff --git a/mods/doors/init.lua b/mods/doors/init.lua index 7a8006c6..52564b0b 100644 --- a/mods/doors/init.lua +++ b/mods/doors/init.lua @@ -422,7 +422,7 @@ doors.register("door_steel", { inventory_image = "doors_item_steel.png", protected = true, groups = {cracky = 1, level = 2}, - sounds = default.node_sound_stone_defaults(), + sounds = default.node_sound_metal_defaults(), sound_open = "doors_steel_door_open", sound_close = "doors_steel_door_close", recipe = { @@ -621,7 +621,7 @@ doors.register_trapdoor("doors:trapdoor_steel", { tile_front = "doors_trapdoor_steel.png", tile_side = "doors_trapdoor_steel_side.png", protected = true, - sounds = default.node_sound_stone_defaults(), + sounds = default.node_sound_metal_defaults(), sound_open = "doors_steel_door_open", sound_close = "doors_steel_door_close", groups = {cracky = 1, level = 2, door = 1}, diff --git a/mods/stairs/init.lua b/mods/stairs/init.lua index 132c0e6c..6a433525 100644 --- a/mods/stairs/init.lua +++ b/mods/stairs/init.lua @@ -473,7 +473,7 @@ stairs.register_stair_and_slab( {"default_steel_block.png"}, "Steel Block Stair", "Steel Block Slab", - default.node_sound_stone_defaults() + default.node_sound_metal_defaults() ) stairs.register_stair_and_slab( @@ -483,7 +483,7 @@ stairs.register_stair_and_slab( {"default_copper_block.png"}, "Copper Block Stair", "Copper Block Slab", - default.node_sound_stone_defaults() + default.node_sound_metal_defaults() ) stairs.register_stair_and_slab( @@ -493,7 +493,7 @@ stairs.register_stair_and_slab( {"default_bronze_block.png"}, "Bronze Block Stair", "Bronze Block Slab", - default.node_sound_stone_defaults() + default.node_sound_metal_defaults() ) stairs.register_stair_and_slab( @@ -503,5 +503,5 @@ stairs.register_stair_and_slab( {"default_gold_block.png"}, "Gold Block Stair", "Gold Block Slab", - default.node_sound_stone_defaults() + default.node_sound_metal_defaults() ) diff --git a/mods/xpanes/init.lua b/mods/xpanes/init.lua index dc7428fa..7137aeee 100644 --- a/mods/xpanes/init.lua +++ b/mods/xpanes/init.lua @@ -164,7 +164,7 @@ xpanes.register_pane("bar", { inventory_image = "xpanes_bar.png", wield_image = "xpanes_bar.png", groups = {cracky=2}, - sounds = default.node_sound_stone_defaults(), + sounds = default.node_sound_metal_defaults(), recipe = { {"default:steel_ingot", "default:steel_ingot", "default:steel_ingot"}, {"default:steel_ingot", "default:steel_ingot", "default:steel_ingot"} From 3c9d71e6f7f770ca6039f4d43f11e319918f1916 Mon Sep 17 00:00:00 2001 From: Fernando Carmona Varo Date: Mon, 24 Oct 2016 20:34:00 +0200 Subject: [PATCH 33/99] Make flammable: Flowers, grasses and several crafitems --- mods/boats/init.lua | 1 + mods/default/craftitems.lua | 9 +++++---- mods/default/nodes.lua | 6 +++--- mods/default/tools.lua | 6 +++++- mods/farming/api.lua | 6 ++++-- mods/farming/hoes.lua | 3 ++- mods/farming/init.lua | 8 ++++++-- mods/flowers/init.lua | 18 +++++++++--------- 8 files changed, 35 insertions(+), 22 deletions(-) diff --git a/mods/boats/init.lua b/mods/boats/init.lua index 37cb916b..cc55b93c 100644 --- a/mods/boats/init.lua +++ b/mods/boats/init.lua @@ -221,6 +221,7 @@ minetest.register_craftitem("boats:boat", { wield_image = "boats_wield.png", wield_scale = {x = 2, y = 2, z = 1}, liquids_pointable = true, + groups = {flammable = 2}, on_place = function(itemstack, placer, pointed_thing) if pointed_thing.type ~= "node" then diff --git a/mods/default/craftitems.lua b/mods/default/craftitems.lua index 59539f37..0c51c713 100644 --- a/mods/default/craftitems.lua +++ b/mods/default/craftitems.lua @@ -3,12 +3,13 @@ minetest.register_craftitem("default:stick", { description = "Stick", inventory_image = "default_stick.png", - groups = {stick = 1}, + groups = {stick = 1, flammable = 2}, }) minetest.register_craftitem("default:paper", { description = "Paper", inventory_image = "default_paper.png", + groups = {flammable = 3}, }) local lpp = 14 -- Lines per book's page @@ -132,14 +133,14 @@ end) minetest.register_craftitem("default:book", { description = "Book", inventory_image = "default_book.png", - groups = {book = 1}, + groups = {book = 1, flammable = 3}, on_use = book_on_use, }) minetest.register_craftitem("default:book_written", { description = "Book With Text", inventory_image = "default_book_written.png", - groups = {book = 1, not_in_creative_inventory = 1}, + groups = {book = 1, not_in_creative_inventory = 1, flammable = 3}, stack_max = 1, on_use = book_on_use, }) @@ -176,7 +177,7 @@ end) minetest.register_craftitem("default:coal_lump", { description = "Coal Lump", inventory_image = "default_coal_lump.png", - groups = {coal = 1} + groups = {coal = 1, flammable = 1} }) minetest.register_craftitem("default:iron_lump", { diff --git a/mods/default/nodes.lua b/mods/default/nodes.lua index 5c7b1638..f185bde3 100644 --- a/mods/default/nodes.lua +++ b/mods/default/nodes.lua @@ -1103,7 +1103,7 @@ minetest.register_node("default:junglegrass", { sunlight_propagates = true, walkable = false, buildable_to = true, - groups = {snappy = 3, flora = 1, attached_node = 1, grass = 1}, + groups = {snappy = 3, flora = 1, attached_node = 1, grass = 1, flammable = 1}, sounds = default.node_sound_leaves_defaults(), selection_box = { type = "fixed", @@ -1124,7 +1124,7 @@ minetest.register_node("default:grass_1", { sunlight_propagates = true, walkable = false, buildable_to = true, - groups = {snappy = 3, flora = 1, attached_node = 1, grass = 1}, + groups = {snappy = 3, flora = 1, attached_node = 1, grass = 1, flammable = 1}, sounds = default.node_sound_leaves_defaults(), selection_box = { type = "fixed", @@ -1154,7 +1154,7 @@ for i = 2, 5 do buildable_to = true, drop = "default:grass_1", groups = {snappy = 3, flora = 1, attached_node = 1, - not_in_creative_inventory = 1, grass = 1}, + not_in_creative_inventory = 1, grass = 1, flammable = 1}, sounds = default.node_sound_leaves_defaults(), selection_box = { type = "fixed", diff --git a/mods/default/tools.lua b/mods/default/tools.lua index a948886a..d4dd9739 100644 --- a/mods/default/tools.lua +++ b/mods/default/tools.lua @@ -32,6 +32,7 @@ minetest.register_tool("default:pick_wood", { }, damage_groups = {fleshy=2}, }, + groups = {flammable = 2}, }) minetest.register_tool("default:pick_stone", { description = "Stone Pickaxe", @@ -110,6 +111,7 @@ minetest.register_tool("default:shovel_wood", { }, damage_groups = {fleshy=2}, }, + groups = {flammable = 2}, }) minetest.register_tool("default:shovel_stone", { description = "Stone Shovel", @@ -192,6 +194,7 @@ minetest.register_tool("default:axe_wood", { }, damage_groups = {fleshy=2}, }, + groups = {flammable = 2}, }) minetest.register_tool("default:axe_stone", { description = "Stone Axe", @@ -268,7 +271,8 @@ minetest.register_tool("default:sword_wood", { snappy={times={[2]=1.6, [3]=0.40}, uses=10, maxlevel=1}, }, damage_groups = {fleshy=2}, - } + }, + groups = {flammable = 2}, }) minetest.register_tool("default:sword_stone", { description = "Stone Sword", diff --git a/mods/farming/api.lua b/mods/farming/api.lua index 71c5a67c..b9ae818a 100644 --- a/mods/farming/api.lua +++ b/mods/farming/api.lua @@ -92,7 +92,8 @@ farming.register_hoe = function(name, def) inventory_image = def.inventory_image, on_use = function(itemstack, user, pointed_thing) return farming.hoe_on_use(itemstack, user, pointed_thing, def.max_uses) - end + end, + groups = def.groups, }) -- Register its recipe if def.material == nil then @@ -269,7 +270,7 @@ farming.register_plant = function(name, def) -- Register seed local lbm_nodes = {mname .. ":seed_" .. pname} - local g = {seed = 1, snappy = 3, attached_node = 1} + local g = {seed = 1, snappy = 3, attached_node = 1, flammable = 2} for k, v in pairs(def.fertility) do g[v] = 1 end @@ -307,6 +308,7 @@ farming.register_plant = function(name, def) minetest.register_craftitem(":" .. mname .. ":" .. pname, { description = pname:gsub("^%l", string.upper), inventory_image = mname .. "_" .. pname .. ".png", + groups = {flammable = 2}, }) -- Register growing steps diff --git a/mods/farming/hoes.lua b/mods/farming/hoes.lua index 31da19ff..5aae3903 100644 --- a/mods/farming/hoes.lua +++ b/mods/farming/hoes.lua @@ -2,7 +2,8 @@ farming.register_hoe(":farming:hoe_wood", { description = "Wooden Hoe", inventory_image = "farming_tool_woodhoe.png", max_uses = 30, - material = "group:wood" + material = "group:wood", + groups = {flammable = 2}, }) farming.register_hoe(":farming:hoe_stone", { diff --git a/mods/farming/init.lua b/mods/farming/init.lua index 45370e73..9fff36e0 100644 --- a/mods/farming/init.lua +++ b/mods/farming/init.lua @@ -14,17 +14,20 @@ farming.register_plant("farming:wheat", { steps = 8, minlight = 13, maxlight = default.LIGHT_MAX, - fertility = {"grassland"} + fertility = {"grassland"}, + groups = {flammable = 4}, }) minetest.register_craftitem("farming:flour", { description = "Flour", inventory_image = "farming_flour.png", + groups = {flammable = 1}, }) minetest.register_craftitem("farming:bread", { description = "Bread", inventory_image = "farming_bread.png", on_use = minetest.item_eat(5), + groups = {flammable = 2}, }) minetest.register_craft({ @@ -47,7 +50,8 @@ farming.register_plant("farming:cotton", { steps = 8, minlight = 13, maxlight = default.LIGHT_MAX, - fertility = {"grassland", "desert"} + fertility = {"grassland", "desert"}, + groups = {flammable = 4}, }) minetest.register_alias("farming:string", "farming:cotton") diff --git a/mods/flowers/init.lua b/mods/flowers/init.lua index e572357c..436021a8 100644 --- a/mods/flowers/init.lua +++ b/mods/flowers/init.lua @@ -57,12 +57,12 @@ local function add_simple_flower(name, desc, box, f_groups) end flowers.datas = { - {"rose", "Rose", {-0.15, -0.5, -0.15, 0.15, 0.3, 0.15}, {color_red = 1}}, - {"tulip", "Orange Tulip", {-0.15, -0.5, -0.15, 0.15, 0.2, 0.15}, {color_orange = 1}}, - {"dandelion_yellow", "Yellow Dandelion", {-0.15, -0.5, -0.15, 0.15, 0.2, 0.15}, {color_yellow = 1}}, - {"geranium", "Blue Geranium", {-0.15, -0.5, -0.15, 0.15, 0.2, 0.15}, {color_blue = 1}}, - {"viola", "Viola", {-0.5, -0.5, -0.5, 0.5, -0.2, 0.5}, {color_violet = 1}}, - {"dandelion_white", "White dandelion", {-0.5, -0.5, -0.5, 0.5, -0.2, 0.5}, {color_white = 1}} + {"rose", "Rose", {-0.15, -0.5, -0.15, 0.15, 0.3, 0.15}, {color_red = 1, flammable = 1}}, + {"tulip", "Orange Tulip", {-0.15, -0.5, -0.15, 0.15, 0.2, 0.15}, {color_orange = 1, flammable = 1}}, + {"dandelion_yellow", "Yellow Dandelion", {-0.15, -0.5, -0.15, 0.15, 0.2, 0.15}, {color_yellow = 1, flammable = 1}}, + {"geranium", "Blue Geranium", {-0.15, -0.5, -0.15, 0.15, 0.2, 0.15}, {color_blue = 1, flammable = 1}}, + {"viola", "Viola", {-0.5, -0.5, -0.5, 0.5, -0.2, 0.5}, {color_violet = 1, flammable = 1}}, + {"dandelion_white", "White dandelion", {-0.5, -0.5, -0.5, 0.5, -0.2, 0.5}, {color_white = 1, flammable = 1}} } for _,item in pairs(flowers.datas) do @@ -136,7 +136,7 @@ minetest.register_node("flowers:mushroom_red", { sunlight_propagates = true, walkable = false, buildable_to = true, - groups = {snappy = 3, attached_node = 1}, + groups = {snappy = 3, attached_node = 1, flammable = 1}, sounds = default.node_sound_leaves_defaults(), on_use = minetest.item_eat(-5), selection_box = { @@ -155,7 +155,7 @@ minetest.register_node("flowers:mushroom_brown", { sunlight_propagates = true, walkable = false, buildable_to = true, - groups = {snappy = 3, attached_node = 1}, + groups = {snappy = 3, attached_node = 1, flammable = 1}, sounds = default.node_sound_leaves_defaults(), on_use = minetest.item_eat(1), selection_box = { @@ -229,7 +229,7 @@ minetest.register_node("flowers:waterlily", { buildable_to = true, sunlight_propagates = true, floodable = true, - groups = {snappy = 3, flower = 1}, + groups = {snappy = 3, flower = 1, flammable = 1}, sounds = default.node_sound_leaves_defaults(), node_placement_prediction = "", node_box = { From 41a334571890de03a74e13c74242a9882ab2a2f8 Mon Sep 17 00:00:00 2001 From: paramat Date: Tue, 25 Oct 2016 03:42:08 +0100 Subject: [PATCH 34/99] Default: Update and set volume of damage sounds Use 'player damage' sound for both damage and falling damage. Gains for damage sounds are set in the engine, however we cannot change those gains as other subgames already use damage sounds based on those gains. Sound has been re-edited from source and normalised to 0 dB for maximum volume, which is only just enough because gain is fixed at 0.5 in the engine. --- mods/default/sounds/player_damage.ogg | Bin 6490 -> 6176 bytes mods/default/sounds/player_falling_damage.ogg | Bin 6701 -> 6176 bytes 2 files changed, 0 insertions(+), 0 deletions(-) diff --git a/mods/default/sounds/player_damage.ogg b/mods/default/sounds/player_damage.ogg index e86f2864010d81c8b08e9e342a8d68e2a4b17669..788808710c1923c9ae797b7534b66a97dd18dd6d 100644 GIT binary patch delta 2306 zcmV+d3H|okGN3RTPiJRS00IC200000001+a`8@yt004fKx^|HoE(|l9`8@#u003d9 z&Wo{B4-bC>GXMYp0000poB2Hg00022`EXkmCL|{*GBh$U$hp71v8t7mf_YX>5lk6% z5nv^yrQbRGCU8VBy^G0|b!yXel`ogXmAc5FXk#9ZLk}P32zJ-J;M_(L);6xXe1^`;BrOc-&8W0Sx z-!ERK=wZmgkN{&MCvwFY5(fBU>a&F{lAX@~cs_fY8R*-_? z!^2z`+Q)^Zi?9e%O0=yag7QAn^a2M5B&lTaYPnPwf2N+tf9K1VmBm?vT3&{y|x zRxo#`I#M$Qg5#@P>H9Y>HIK(74Re1ItCjxzKj$@kKPY8MRDobVm#=I@Ja0Wwp!2C) zoF8y--Pa{nt38H%CSi{U>&@Yp^=mOIh-uao^(6}l*){r$mt<{MrowlI;t?OrZ38gV5KNN{a?vn>#g6J+dd|r zy!&ChG0Xm7^*=^dnz02jU4hib+Oi4wwm3AL_NE2fE#d$HRxiJ;>b!I>FJ`25lP%ou z#wCT`1$RkH%9WEjtpTGDz?&oO?IHOq*wozlfxuJRHoEmm3%(l%+MRN}Eo^p25u1TboN;pf8OnO<_7Gf%r5PTGoPDp1erdf;-UW&J-BW#SWwt z`bP>1$~wC#FQ&J2d*bhR9+SsSZ-t~#Gfko{ zwtPYEDm>o_#p1Y;td*H1plHXnd_Sy-$RWP-Ak)R|d!t2_G`nTFwaYnggvlHpG$^C#Qe{ zr~wlIUWhDyjc*JS6YPtT8&V4^oC952Z6aYw=@`JxVa5aJ+c(eoJO96JoJu=C(2f0s z%_7{6(9Ga|WK@5J1Dv1V2Z2=M0dj4l{J6I8Xo82Ne#(su$zEdmQfc?flO+IO4n@Av zxI(R_TLd+taz)QRg&zI8Diif|5qwCjf9^-K^tP@Pu*;=JoB+&7A8V!7k5xed;kxJm zr{fG~3*`dW*k7C{aLVi50vZ7Rhb-}k*$5_XsLSDdf^2^*f!9IXbbWIGWR7ML0E(AL z{~C_ltGy>A_A6t2^y5%2e|;gsByO-ukT44*WD$#U8t}dhz@i)G=$j`Ra}*L3yaBOv zesMJS4*b_LK0V!5P3_?K823Sk$UD%^Mo!tZhXB4UW45KvX1=Xq3gq-~Njw0|8}1pr zM^XR)fD?ZJbbw<30091mbmkUv#B3sj>(Th4#GJs=P0+Tz4IqnbAsqnl3g~EcdL>&e zcz1c*u$D|Um!AW#DhxH6>uecCL432FS5GET5CTAr$IFraIrEX(So4q8;7LNC+jQ~5 zc9^0jKhEXr=mDt9#X%BYUq=`O9Z|^)MqO(`{$YPLH&LtMb_$TDeZ>I@K&vi%(&wrG zZm5EC0RTRRH2MH7z&Pfy+}p5;cnfnA@d2rOrY=NzDA6bRzQIZyxqt`CB>E?via5aL~ zIOWZo1Yo(SK?{^0d3pztu(c-ObiMu7nx=ndz*w?SmjVO8Tu%i6AWs{B{BiJrK6NXcrO004gl0G80+|0SXi0OU)60pR}~0G@^X_e?zdX2&tkTh1&dkTp)l z1E2#!T)?3rBme*a5CNZ20C@3!^M3}vUe5vm007W_&s6~6e+mEyaLfEI27n1*`jrN) cqW}Q7zH9&h-i7?h($ delta 2623 zcmV-F3c&TCFxoO2PiJRS00IC2000000053>c{%_9002r7fen!wE)0%mc{%|A005i& zC&RH+4-bFGG5`Po0001vXL&jT0001dyla*fCMzd0GBGeM$hf({yREFUqphW$5nLHX zMwX!YMws#m0T>BRHfKoO$?XzLnxJ`9aWiUDnQx*{2lY8z5j}yhuMHtXREKN;E?5Tm zb4Z+L$uEn|!xGAr42m!86iyxjC5}1RCICzkeM)~J14l&q8-Pph9IPKuPaI-p>Mqt! z37#*3^F+P3qN7I%Y5+6=b=a;*#v)9ys;2}fXPv|a;wr5kf1KyAF2fNZ=;$shP+rPX zxXu9mNL2cc#EjhmG)jxK1Y@>&gL*h;0B*3{mB)b$sjEyp$&*U_U($bKl=wf|soxKA zD{p`Qb@cT5(|Z7HQVY2U;b8~j{DlPN*v5-sbve7`F`nX_urNfJX`5X zYmW2yAO!galwwPi5rD#QogV@z1}TyqV^v3)zW% z_vvYGA0{*7eC=mt&Z6$ZeBELZ&eN2v(H;AQQMkCEX7IoO&uU=ta?8kmVQKE}*lB-u zG=kyZUfjSjMNmKPLp6OIxSr_yp)D$xYD>u01xhe(OvYZZo3LA>F3-3!PsCL4V~wm4 z&;HS1W|K*suw?~bVwy>ze8OtPJfX-*nc~6VrS+Z0taYKODXyMy>?#2MX-%aBSr`B{ zChsE$u+laFZCYuJMk}Vk8qaJR`09UqD-;;ryw=mOI_c)jyz=$bppE&MRSysuxx*F4 zGDH#wiscOh+HBCVaK6duiPdg~Eg!#!^*y7_HQ%1*prTa`c9Qv4Z8Nb2$nj>fEx}48 zP^a$N)5t~(9g<78G`uag7Pxjo33jq4Vpm4e#5uIOirqV-f!agltie2QwO)U@zD0b9 zi^9gMnt5Sz*e2h@8LQS3wO-b%0Dk$5t;S@HDX55=yc^60U?HGaNsO{)E12STwoF?4 zKmPc}MvY83pj~Wi!|6xb)Ts1PhB%5O;6|qy^cfF08rNa@S{JfNw@5tn023)TiX6eq z`zuMKkBHkz%_@_9^w&m`E7mv%>D4tI#VkDX(`x}}3$tyblt+P> zCZFl4`AOmYOmdgR1X29?iwApnGd=KiA(#|g>j@hmYlXR8SL}y>6$UXLT()c}^j57Y zl!<@hC!@`@vdDF&`7?hjRrI5;b&cWVNGUb)Qi$g*LgoRd30{aSu0*#5S_{UhJ$Xf9 zP6^s~pvJKhFJX@vC=^NjqJUS7Dc%g{Wd9Fu?~Fm0^5;q?Ib+%toekiaVZ%P|6?x`= z3X#DPTf*dwd3nKsDghj5z)-OUtFelJiW%d7Ew)sy|8CQo4uBJ&4Ft} z2AcBVtvlrD*k1d&DAR@BX+DTdW=#x^feCdy@@_$PLc)5i<(t8W{4G1w`d86yFd*haQa9H`rjYbs1sM|q#H%_NFx~Phc5)hM$EgBbR325` znj!$#*El5%=T?K;?biTYRRMtXqL@%c!X$Pea=M?2bLf8n-iIt@j~xXGZ$;FxlJ^8X zqb-S&P}Ma#i5%yc0scA4<97eS+gafq4tDrQ|2oW-oF^T!q|5#Nr%2N^g}|e zf`jw)FP(qH(J27{AbkwS!2R4D05H%-72pJHK)wM00HEuKEM41lOSb*BVU<1i7Ofd| zbY6!{=^k>#Xv$Qk8pthZ1~nbfjA_?Tbab{_g)GJ0gf4UDX_K$b-Pb?1eomU!x_JAu zz=n)+){55PWZwi=+HpmP7~pV>G7_CzCtc_k7qWi<1Vpu(bLWjgw`MVU1|(Lt0Iy_k zpt^rWXkbSM2+1`5GwO$3HXy1?{dy3>uK|gj3xTH}aMCNN46PF!9F)&UVR45YQ|m^M zsJN;(q+4Ve0eqUz7oDv4POi3M02>MbK8DohmNYL5i>wc4WwP;<=B#} zm?D3&L8a4k)AW{qm%i$T!?TKGe=b2qF=fqDNDR6A&HWC05B0P=P`zR}Y|{M=J!==n z(|6EdU3?sfA;8&o2K+KHYWXy1nu@u3wOa>s|EQV+0?0Q2aQkNsbR+|40GyKknLAsn z6i&p$77sQ6li>N=fP$ZeJ$%hTuI|a5NV$JoMa=eW0RDxn?TT9ai(xwT*=*O+ylq=V|yia7)@kk8JSlHVqdFxEtnD_UHfr diff --git a/mods/default/sounds/player_falling_damage.ogg b/mods/default/sounds/player_falling_damage.ogg index 532462db48d70eded6d93544ca26a905d782e3b0..788808710c1923c9ae797b7534b66a97dd18dd6d 100644 GIT binary patch delta 2306 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 From bca0142e7f0318a9a17bf8c263af40ad2a83c7fa Mon Sep 17 00:00:00 2001 From: paramat Date: Tue, 25 Oct 2016 03:54:09 +0100 Subject: [PATCH 35/99] Fire: Reduce volume of flint and steel sound --- mods/fire/init.lua | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mods/fire/init.lua b/mods/fire/init.lua index 731505f2..a3457f64 100644 --- a/mods/fire/init.lua +++ b/mods/fire/init.lua @@ -90,7 +90,7 @@ minetest.register_tool("fire:flint_and_steel", { local pt = pointed_thing minetest.sound_play( "fire_flint_and_steel", - {pos = pt.above, gain = 0.8, max_hear_distance = 8} + {pos = pt.above, gain = 0.6, max_hear_distance = 8} ) itemstack:add_wear(1000) if pt.type == "node" then From 138eb71db60c293ea199872038d9aec5298ba33e Mon Sep 17 00:00:00 2001 From: LNJ Date: Tue, 25 Oct 2016 17:42:28 +0200 Subject: [PATCH 36/99] game_api.txt: Add new metal sounds func. --- game_api.txt | 1 + 1 file changed, 1 insertion(+) diff --git a/game_api.txt b/game_api.txt index f758499f..6bf51af4 100644 --- a/game_api.txt +++ b/game_api.txt @@ -464,6 +464,7 @@ Sounds inside the default table can be used within the sounds field of node defi * `default.node_sound_wood_defaults()` * `default.node_sound_leaves_defaults()` * `default.node_sound_glass_defaults()` + * `default.node_sound_metal_defaults()` Default constants ----------------- From 581c3905916cf6cec6cfdbf9999364d4f415107e Mon Sep 17 00:00:00 2001 From: paramat Date: Wed, 26 Oct 2016 07:06:32 +0100 Subject: [PATCH 37/99] Default: Remove alpha channel from acacia tree textures --- mods/default/textures/default_acacia_tree.png | Bin 682 -> 579 bytes .../textures/default_acacia_tree_top.png | Bin 731 -> 639 bytes 2 files changed, 0 insertions(+), 0 deletions(-) diff --git a/mods/default/textures/default_acacia_tree.png b/mods/default/textures/default_acacia_tree.png index 169823d41612d29e16c7faa44baae5d51b842de3..58bb3c4072b617af47b645cf78c3d92845fcaea7 100644 GIT binary patch delta 539 zcmV+$0_6Rw1;Yf883+OZ005AYXf}~R9)I8p8U_RcA#29s0005vNkl$T{@q_b*P;TH_?OmXeFP<#PP}{{H&;_4$li zYhwC*22q^n$qq;%@Nj%O^$wfp`N+4EKVuCp{L4;Wt#BGxY&9Y>vjCMW^S<`ltv3+gbLm{Y)_W~C1;8NAoU){QjEDe%nXl`r zMxYom)2m$wim8)}&MiI6y?HwDNrP z<7kOVRVB;$?=2#PnD>>KL?q_~fEl>PReOKG-_O@`j5|p};OGs&ecu2g;(xwIYb_9L z9@lyHM_+Tzy_uk@rgpUU`0*OoopWxzZM8KQffxi=o!4~tJ*Sz05D{525$!cgDSL0* z=HUPs;kg`p@1q_7*P~|1%sl7py)&~1YON_J0x=*U27mx3>4k}?_8t^MymfODGXs!Q da`#~R4^J^#!Q0JV8vpD%PDHLkV1j5c{2c%Q delta 642 zcmV-|0)73%1gZs)87Bq+001BJ|6u?C00DDSM?wIu&K&6g000JJOGiWi{{a60|De66 zlaV1Ff8GQQ2^1XGbQyO500JsWL_t(I%Po^jj@(ELL?4+SWvZ%e_(Zdt?cDzk#sEfF zNy;DTg=$9-AQ=&ikpKSu$2CN1t!RjplF2EvY?1QD|G$6p^Vd&auY*zwL50`rK*V{! z->3mGXL_HQP0Wlj2aXeia=c&Ul!-ACLI6?bf0~F2EJIZwMn$87D6KWdT$mZ=hMCcO zXRn2|7RPx2u;u~*MUK$A2 ze_ntnNdqYcuH(SnZ*Hob=SkTzf>XB4;-)uxLq$=z zPRiS-UMyP}+;2=NaU2(0sr25#jTFPDe=u7o=geLUtq&g0FWlD$0gj7vyk3;LqYCEG z&c^fk zQn*D_;5<&szVrS4&GYNYaa@ELz+u}f0M~T^;O<=KL9G?X(Phs0ezQMzdh4_?P~kSt zTx_-S`0>SYUZj+$du7Z;ZyiBU1Z+;)+3p;)##*;c-JKK@BEsm6oHJt#)>xR^P{#*u zq`Wc4U@IG-l&z3rLiNtZzVE0i=G=));d31#qTJ*_LuAj2h*0(&7bl7`=0HQdkpU?L c%nVoIFZeTCz_Zoow*UYD07*qoM6N<$f|}YHt#y0006WNkl$@J8#rL z6ov1M$7_3%S?4i^%`RCf0ucccJ)-7+01Xv%P^O@wgdQnBBn1*R5|NOI00H75lE}lx z#$G?>Nij>3f?J(?r8}c@?uQ;dxC{SE5&(F5?~ZSDQxVE^Q-1-# zd2zbDv%5#UdiU`8ub8Hc*cpyg>EVngtM;&-@ZWBhF~#FHCbIjQ4(Ne z9n^2%2P2wNCUQY|#tCK6Nkfp;x_>zMzH;S~Ixbby6HBy_bUH=|d4~Y7_`xYx&RsNX zT8S76lbhQJq3-ugeJl06Mg#%2gfgCS>^-Qm%GOajPAPzH<gS;rg_`#mf$3T; zt!^rj3+w}~Tlm<;U0IU^_eaOp+8>_|+qSiR2LM({tE_(-i(C-OD6w0pkAI@*q)-^+ zWG$I&q#*==2S)ZrIcJPNBJpkzLY)S!b*q$ZZ9j8GhfiF1EyGT!rq)Xuh)>Di(rT@( zHBCRA#Ma>DWt+SYA9qQJJ+ z$vQntiBR@JI9W+4?S#Q7hD0QA6l}U0ZC*|XqoH%|&Hl{Oxj^ID%g5)*TYyQ~>2N~X lndzO~z5lX(3if%t{{l{WK-J4`28;jz002ovPDHLkV1n(P6X^f| delta 692 zcmV;l0!#h>1lt9W87Bq+001BJ|6u?C00DDSM?wIu&K&6g000JJOGiWi{{a60|De66 zlaV1Ff8GQQ2_zerR=Otu00LV{L_t(I%YBo}iW5N;hQF$=PSWl4WG)@eOmsjL2Nm3l zYu`iNxYC_2UAS_od%*{BA-EPC5EK;^FE~otOkyW}tLiEjne>b!cs6zTDGulS7jgUM zHOHY!h6w<1FK+rpEwH#3H<$vrfBk9$m@Gwwe-S22=O2#rhwI*xr}F^-uWmhLaQOs! zrm26=5FH=6+`(3smahn`!z_1Dr#5-}>jns2QGFbv ze9&Q=ncu=oN`kt>xeIHUEG6#6sAQO6vXt8M8GRZPZy!gkErXS?Wl*ath<1P{1=hjz zf8}euen>Zr<{QMlcz#<^Q7eHphVh#(teicG{y9NsCCVyHT@h|=B7|tT0uDBC+A*0q z+M|rT5=6o$xU`KBg5uW*{dt0!O%Y0fw5Tv5?#0Lj2YQmyTNiXUyM%zrD}FrRA^osqNLq!vp3dADGAmB1{+;`JdiEws-)HqSJ#cP)PfKp1cd=(47t|W+)|Dl z<3h6Me9reIPHVEM;h345s_}seBdjqPYpJu6tw9G{OO}=-L0z-y97=iQ$%JSSe?e^y zRET>qCQFf%f{nNk4?>^g3!i{96STMm$O!Ra#M1mO%vl z4g{Vf#L``DbLvc&R(~1i94~f8P4F5kKX`oSpCC1f+s78~U_Vq1iT9p7{cn^H$M|TR a{{S1^LDaALQ)vJI002ovPDHLk0$_r>NivH7 From 048aaa2616e25ee15cd04a0d50f1a61ff2bdcd38 Mon Sep 17 00:00:00 2001 From: paramat Date: Thu, 13 Oct 2016 00:48:56 +0100 Subject: [PATCH 38/99] Default: Add bush stem and leaves nodes To allow mapgen bushes in green-grass and savanna grasslands. Nodes for a generic bush and an acacia bush. Stem nodes are craftable to a single wood node to provide a small amount of wood resource in grasslands. Fuel times are that of corresponding 'wood' nodes, 1/4 that of corresponding tree nodes. No leafdecay to enable use as hedges or without a nearby tree trunk. Uses 'default leaves simple' texture for extra visual thickness. --- mods/default/README.txt | 2 + mods/default/crafting.lua | 26 +++++++++ mods/default/nodes.lua | 54 ++++++++++++++++++ .../textures/default_acacia_bush_stem.png | Bin 0 -> 476 bytes mods/default/textures/default_bush_stem.png | Bin 0 -> 428 bytes 5 files changed, 82 insertions(+) create mode 100644 mods/default/textures/default_acacia_bush_stem.png create mode 100644 mods/default/textures/default_bush_stem.png diff --git a/mods/default/README.txt b/mods/default/README.txt index 9ae2c002..19901674 100644 --- a/mods/default/README.txt +++ b/mods/default/README.txt @@ -92,6 +92,8 @@ paramat (CC BY-SA 3.0): default_acacia_tree.png default_acacia_tree_top.png default_acacia_wood.png + default_acacia_bush_stem.png + default_bush_stem.png default_junglewood.png default_jungletree_top.png default_sandstone_brick.png diff --git a/mods/default/crafting.lua b/mods/default/crafting.lua index 7ce62d2b..a7a0daa2 100644 --- a/mods/default/crafting.lua +++ b/mods/default/crafting.lua @@ -35,6 +35,20 @@ minetest.register_craft({ } }) +minetest.register_craft({ + output = 'default:wood', + recipe = { + {'default:bush_stem'}, + } +}) + +minetest.register_craft({ + output = 'default:acacia_wood', + recipe = { + {'default:acacia_bush_stem'}, + } +}) + minetest.register_craft({ output = 'default:stick 4', recipe = { @@ -929,6 +943,18 @@ minetest.register_craft({ }) +minetest.register_craft({ + type = "fuel", + recipe = "default:bush_stem", + burntime = 7, +}) + +minetest.register_craft({ + type = "fuel", + recipe = "default:acacia_bush_stem", + burntime = 8, +}) + minetest.register_craft({ type = "fuel", recipe = "default:junglegrass", diff --git a/mods/default/nodes.lua b/mods/default/nodes.lua index f185bde3..23b91454 100644 --- a/mods/default/nodes.lua +++ b/mods/default/nodes.lua @@ -131,6 +131,11 @@ default:dry_grass_3 default:dry_grass_4 default:dry_grass_5 +default:bush_stem +default:bush_leaves +default:acacia_bush_stem +default:acacia_bush_leaves + Corals ------ @@ -1216,6 +1221,55 @@ for i = 2, 5 do end +minetest.register_node("default:bush_stem", { + description = "Bush Stem", + drawtype = "plantlike", + visual_scale = 1.18, + tiles = {"default_bush_stem.png"}, + inventory_image = "default_bush_stem.png", + wield_image = "default_bush_stem.png", + paramtype = "light", + sunlight_propagates = true, + groups = {choppy = 2, oddly_breakable_by_hand = 1, flammable = 2}, + sounds = default.node_sound_wood_defaults(), +}) + +minetest.register_node("default:bush_leaves", { + description = "Bush Leaves", + drawtype = "allfaces_optional", + waving = 1, + visual_scale = 1.3, + tiles = {"default_leaves_simple.png"}, + paramtype = "light", + groups = {snappy = 3, flammable = 2, leaves = 1}, + sounds = default.node_sound_leaves_defaults(), +}) + +minetest.register_node("default:acacia_bush_stem", { + description = "Acacia Bush Stem", + drawtype = "plantlike", + visual_scale = 1.18, + tiles = {"default_acacia_bush_stem.png"}, + inventory_image = "default_acacia_bush_stem.png", + wield_image = "default_acacia_bush_stem.png", + paramtype = "light", + sunlight_propagates = true, + groups = {choppy = 2, oddly_breakable_by_hand = 1, flammable = 2}, + sounds = default.node_sound_wood_defaults(), +}) + +minetest.register_node("default:acacia_bush_leaves", { + description = "Acacia Bush Leaves", + drawtype = "allfaces_optional", + waving = 1, + visual_scale = 1.3, + tiles = {"default_acacia_leaves.png"}, + paramtype = "light", + groups = {snappy = 3, flammable = 2, leaves = 1}, + sounds = default.node_sound_leaves_defaults(), +}) + + -- -- Corals -- diff --git a/mods/default/textures/default_acacia_bush_stem.png b/mods/default/textures/default_acacia_bush_stem.png new file mode 100644 index 0000000000000000000000000000000000000000..290391526e7bb902bb49076399868d936f0f073e GIT binary patch literal 476 zcmV<20VDp2P)+b|S`KgqI*Z6-}p`aHN@)Y%j=eb7!AHlYg&@6!Q>#(%P;+l3*6sasy4 z+DS*}N4f|8FZDNIvo0jfb9(D>y=A+*p1iBi*B@mH5D|Lk3EuH96P@K5oAswZMU*Di z5n5^V1o^x?6>~HjFq0&FeI=qq&_?5fC%kqp3(2x$LhsPYEWz29Ko}(nKpe-2_)&th zvXI656>ZxN>F$5tvskTAD#AqOAfgaN2_~5x5}cKVEKim^+}$DKao!D6*p!8&Sx(n= zgL?=B39LSx&@~NB)qn&RPy4?21Z(-WyH*-tdv&AgdXJ6`Ix?hLidLGYZb;JR1ltm}G`4DcJfIke(r Sq7MrI0000PyFB&2tgp)BDSdi|2Y-gDt)L`Ng$ZSvC~CLMMc6F)VnLs%$=(l z_SkcgMp5AK#TR1mZ}>1%yO zetZ9-s%r{sn-tELj41%9oX2~|dc99HrWMfc0g-|6q3n!h!B!A zJu(T0*q;+|jk(KM#o69A*#-I0Fd7d4m_{M{{Q*-p Date: Sat, 29 Oct 2016 13:12:48 +0100 Subject: [PATCH 39/99] Default: Remove 'player falling damage' sound This plays when damage is disabled, an engine bug. We can remove it because both sounds are identical, now it is removed the 'player damage' sound still plays when falling damage is taken. --- mods/default/README.txt | 1 - mods/default/sounds/player_falling_damage.ogg | Bin 6176 -> 0 bytes 2 files changed, 1 deletion(-) delete mode 100644 mods/default/sounds/player_falling_damage.ogg diff --git a/mods/default/README.txt b/mods/default/README.txt index 19901674..4536de9a 100644 --- a/mods/default/README.txt +++ b/mods/default/README.txt @@ -197,7 +197,6 @@ Glass breaking sounds (CC BY 3.0): sonictechtonic (CC BY 3.0): https://www.freesound.org/people/sonictechtonic/sounds/241872/ player_damage.ogg - player_falling_damage.ogg Mito551 (sounds) (CC BY-SA 3.0): default_dig_choppy.ogg diff --git a/mods/default/sounds/player_falling_damage.ogg b/mods/default/sounds/player_falling_damage.ogg deleted file mode 100644 index 788808710c1923c9ae797b7534b66a97dd18dd6d..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 6176 zcmai23p~@^|37oxSe{{NiW<31#6&fvP{L3dQ%ExRYjW%97ZM|dk+eIG79KAdK%||QJYd<2kUrWFTO=$0E|QfJNY~lo&uXg}*3XU34caT4o*N>& z5=XoO8!syOCC7_MQ|uoNN~#AQ?!{g~GYDgkl(5exa7*JLt2wpsAPuSs91F0{XRv)| zv~Jwg+w#W5UES*D3I`8QH!3WNe%q3QN0SmqlTy4(Gkx1qyxTH;Z)f^_%nZO~{iw4k z;~ynesyZG4%9oN#9uq2c7gjzZRm#${8e~9_#3XoBp)R4Y%9$Gy(HLIV8dl#L-Pdf= z*Nm1<0SGunQp&?w-2YQUyi0=rd$kSgHU_rPmR)$-Ivi)UE#77{-fa|`LSm8s zTn)GWQ(gnZa~jTf)lbUp5R%7thYBvDy*mFb=b1utA{7nC0#WW|e|(JanfZ=YJ3BEN13j%iM@RfL)Wa9;QjOR?_G zcDUAikTqG`j)lF$%re84cF#F}KVVU}lP$VRdI(n>zFQXAj`D-OPeJULH&BwXe}|7P z^jpAfobW_CK82w`!|HH#iWVmvRVgYbb`z=>=P@>s>oT@dGz~ck=~B({0MIc~6#vyo zp*)A;>cS(&y+&vIE&5C(O+%;1dZwupvjI(nC^oTzD9&q{JQ?3ea*E`%h<%oEm=rRB zGZ#_NsraCLI|WT?kYts{^%81eRQ&9?*Lnl0+Bbiy1Al0_tLejf)56qag$>n{x-BW% z`&i=GZ<&6#6URqW#z*t~7i9fAu>Ou50E31ujY%dgm)OP5*ldrQbMRl0vj^K%pw&~L z=hCd_He_<+jpdfNmN(TM+%4Ta=KI~8pE#@$?6J~s*eZCK8a$E|e5WhYQ|FMLOt(7gMB5Thgo&UPd=-wRQk8b2|H3# zdZZ@%$W%7N=x|B+VHU5wGOD+6rsKcXzaz&nP7hWXISz4pKSjfm+4O>FP76YIOz*6XBI_5}R zzI}|%b|i69PribrP;nhcufeQ9lji9rN zx*7?OJvrbGKpL@|cpVofa_%YLC?cXxFuO^HoT4FTf@ukE1wo&y7WkN5HRRk=&BVDJ zIZ>?^c$g0t0Y&&zt{BXpkFdo8KtofM2$@WZh%lK?=_NkZqL4{7Y!49$sZH-CDxAo` z5I9;MB0`rIz2ELBJ7dt!2mt&Q1pL_>Sq3=(j3Jna)f*_XbiwMos5=Z`gGbffMvE

{M^O6q8Yew|)RL5k2~@vr!FN7Vy){yOM>8LONO_2pa2_2=gwz0WaKLYg<3{1E@QBJ< z9?OWwtK+ps^BVcSmD9XRUT7kFi++Z`ndJaJL)<*VrDw_^tVQ9Rq>u* zGVZ(9)Z6@Oro-%9qK-Q?@jlb<@iwSOwEy0dz8^E2qt{&Kf9{10hGt0vyS3Wkva>OZ z;F$33vh@M08JtiS+$oP=#;c!cj#<{(Fk|mdP4O!Z9$)3>y&z_M6~lKluaft?!?^Df z6hyoy+^u!qT+454B_y0^<}0TJc7H?-M2-pfe71i4A+hQ-8r5|aVgn(;hI+4Uh0ZdW zwABcppfiQ_z!(eg2^h+Ae6=T0K_`AQS)j$-N{-NB-ZB>AJsHm3>>@RC7=bxNQLNx> zB}Y~;#gxc1+*`EY@zomSa8u@xPeh&YmQSu~AjV>OW^Kh@PdUn0CtpyA7a!aX9bxZ(&2!8h7Q z%!()T#kVMVkPsMsafG%1)nA&^B20y18ebyZ_)Kvj6h3*^Czr$=qCr-Llw7#NH>#am z5&;P;N>0n<-S{Z054U_8Br;s!7b5;>`+F~V>ZHj6+cZ>gx#S3ugsojRMdTcgiR&jB zqwM=hhIMhS_5=d8-wvtYA|eq80x=1x&(Ux(HWhe95(rQWm@<}2!&brVumGVn&l?3c z!YCHv;kl!r$-!j|;;ONM7+nqy`h|lHgto=StJoWB28!&A2=uLFV?ri|?5xj$DXx+h z%;%y8ncKDChUU(ZU1%Dbn1xU9v@lksyOIs-4nm9a6Co5hf_|R}{<+(>NPec+!bKlK zA%uUu)Mpt0FW`n=NY4>{kgo`AaaB+*DHKENCrxWv!jn;pu3{`?XQplGq9*sC`1FEucxK9geUdYiOj4|1 zZXyWr%t8tj2UV(zLqppMyd(ss&kH<+MwC?&2Et0{vw_SPY>#Zz;fQGsR-+KaEt9NB zG9*OaXb0e)ydr3lUF5LR5Qj3h43a95hKFX%C1zo1M~GAG4M>8Z6y`WwoFw&tA6ZHM zkqZg%RR{^BDJ@CEj%WOnnEca2{Xa_7!8}XV3x2JIxJAghtbCK2^ffT*N0MGT_xe-L z{!jM)pL)KLds9sYMp-_*Cc8DPn+(#>0PMLPF+&h{;{|Mb zi3>eH4nte6N;yJuJQM7sDZq^|i5#p4C32cg%XQy!B9Kh%Y+!nkjSA9-;u>0#`r(}t zj|AozofQXd5m;O|6hxOJfbym*gTx(ja!=GOl+a3D^!TB0S%9H;qYJXPqt(=T2P0u^D3?~$uRcdSR-rRza@A@F*Inn1^q2g`jI=^az#X4x^JIVFg zX3F~;*Hm>Cm*Jg`39edXfGAaYm1eGron?{CyY#cWZ`|96E&k-?{PI)|(w{c1n;L%5 zrvBm$xwVLt?F;qf8>Tl*w>?=Oj*iTKxrUbea&6#-e);$}V1QAx?MbG~C0+1D)n)7X z01G|#L#EY)_51Nx#)am?#_FLvKJ8(rwA^$3PolUDb9AjddrE&FXM;`XRNZyJbbDl=#YM}Mt@6B`$lC;%TGr@zK%AqIVV z+-xUzI-vV%J_yt`j1%D06lQ79&t{qyo)CTib=`iJ=Jc5G@%hwA^^}mMW!LxZ&ozC3 z>g?RH;BHqYC#MNXA)n*xroUM?^iD=mQLirOkBD~91qZk%yAJ%`z-^wbZ9uRXrb`~B zoD|Xt?>%M0+JX^`oi<~)ni?)u2eo%!tDL%@lZ^OuXvAg1KFX`#KCg3JRaI&j@NjV3 z$5=1(z2$UTUbso1POsxpZvW}`hsS~z$|wYzQH z%iq@dvX{ih-XGQXs<+8XHbO3}ag8YJt-AcGM7Mqg?L0fdV1NCq$-9eE%^oNX@39$q zb0yKMFvD)$xdq!h`)Pw_MIF;J!wVjKIzBeoX1rFMZ?%p;a@gp}_S2^o)=&xrD>dzP zkI!zE32-~n|A5@E>1o7xY>I!G!2=XO@NmzzLC0s6X=0~ z-mWDYt|LaWs{=ZgK6^va9w4R`TJ>c&ofs1MG``VeXCW1_tY(kG+vaU%uCGTUGX1NS z(k`vm*$Priu^lyU6x7QykP8$$6h01j1hfIdA=-)wbKY6u(*tg8Zx7;j`;1*zQcyQKozK=NF`{V_u+v#ft zCq-D?fIy`h`=_IlQm^%Sf*JR>g#C|R?Oj~d<+eMsoZ)bl(FP(-9ruxi-$m4hImz#eEAiR-+`Ukxs4mqIdsr+ za~1iKuF0%Q!ZTd_&PU!MwzV7gTXUWf-S(GGI$7_Jk9_cLux)*S6}9Au_V?!Yl3SLm z#-1=Xr>tL~e9Mbl=!~s_aoyV#x>Zq2EW|z{>_e-(#IH{0y_Twgh>$~cFCb(xF5o;Oy1pP-uT)NtUX&L%eKcUlt3 z5g(=6As%*2gPOZ--3&$i9O#h^g&+xIaD0-r9`Q78K%MYaJT+@qbBIlbc>jkOi#4UV%34Nt<(d2ZQ z;lg;V8ukL>OhW1&%a1BwMlIIa-1l<(ec~hTqurtIHG`r}o9~=E1TL8dwsJ%vm-qon zPu|5kuLb>!UTR)&q`+^nI!H(hgkPF(SqYOGao3}C=`%NHE3dP!47m-qUYv)|iPF&q zua&05691*|Yx?WnePc}}u2#oR$(}YwTd`)MG#%`c&z{(}#b7H&#x}33uizW$ZNZ)G zZ;y&6ob6AICH!$MskG8yz3A!8G@`aoV5hdz-w`LL?cRglA(d;P;CrF?FR z0D-ctU!FWP#RD<5>2V0KF3a*ywHv6qrN?C15yHJLVH%5w^3w*Z5a3{{j5WNaZ}@nQ z^?Y9M^G$jMBiEjNR^)Bj@?hD?r<=|n^gC6HGzra`(kc(eA}6mam4iSP5V6KzPa#Zk zyIfXElBd}&@0@@=G5fW&ksoS_uhYMKuuPU8^9qgOOv-|5Cn7A=cFKcGnI_*5v}AYJ z1IC9s=AZtoL!-!tkLi=P0?_zN`dL!v@6EjyUxOlIpLfrW-%}}iRvTUXb(v{erBzz= zqi@`2lXP*cRl0cf(;H=SyV`5*l$lHR{Y$Z+sl{L-;o?^@iyLxfd-K*~GO|~8Y>@}} zEsN5=#L2|$mje$nznp4+vtxYk(yzFub>sJT88mZ$&C5dBW-FKC08$k?Z2!F57iGcX zXwk5fW>UB$Z5U)ag6C>I&zyQ9$^bYZ4@w3feAlo11w3&{Lri?v1}8JWd~{v=Ii!my z@)emF(62ZeiZ<1m!g1Vk5k8Iv$bDmv2-Qk!T$g|$Ug=E From 02a82c9d7ad7e956761832473b0b6535c1f22be5 Mon Sep 17 00:00:00 2001 From: paramat Date: Sat, 29 Oct 2016 13:29:53 +0100 Subject: [PATCH 40/99] Default: Remove unnecessary leaf 'visual scale' --- mods/default/nodes.lua | 7 ------- 1 file changed, 7 deletions(-) diff --git a/mods/default/nodes.lua b/mods/default/nodes.lua index 23b91454..07e15952 100644 --- a/mods/default/nodes.lua +++ b/mods/default/nodes.lua @@ -551,7 +551,6 @@ minetest.register_node("default:leaves", { description = "Leaves", drawtype = "allfaces_optional", waving = 1, - visual_scale = 1.3, tiles = {"default_leaves.png"}, special_tiles = {"default_leaves_simple.png"}, paramtype = "light", @@ -630,7 +629,6 @@ minetest.register_node("default:jungleleaves", { description = "Jungle Leaves", drawtype = "allfaces_optional", waving = 1, - visual_scale = 1.3, tiles = {"default_jungleleaves.png"}, special_tiles = {"default_jungleleaves_simple.png"}, paramtype = "light", @@ -711,7 +709,6 @@ minetest.register_node("default:pine_wood", { minetest.register_node("default:pine_needles",{ description = "Pine Needles", drawtype = "allfaces_optional", - visual_scale = 1.3, tiles = {"default_pine_needles.png"}, waving = 1, paramtype = "light", @@ -792,7 +789,6 @@ minetest.register_node("default:acacia_wood", { minetest.register_node("default:acacia_leaves", { description = "Acacia Leaves", drawtype = "allfaces_optional", - visual_scale = 1.3, tiles = {"default_acacia_leaves.png"}, waving = 1, paramtype = "light", @@ -872,7 +868,6 @@ minetest.register_node("default:aspen_wood", { minetest.register_node("default:aspen_leaves", { description = "Aspen Leaves", drawtype = "allfaces_optional", - visual_scale = 1.3, tiles = {"default_aspen_leaves.png"}, waving = 1, paramtype = "light", @@ -1238,7 +1233,6 @@ minetest.register_node("default:bush_leaves", { description = "Bush Leaves", drawtype = "allfaces_optional", waving = 1, - visual_scale = 1.3, tiles = {"default_leaves_simple.png"}, paramtype = "light", groups = {snappy = 3, flammable = 2, leaves = 1}, @@ -1262,7 +1256,6 @@ minetest.register_node("default:acacia_bush_leaves", { description = "Acacia Bush Leaves", drawtype = "allfaces_optional", waving = 1, - visual_scale = 1.3, tiles = {"default_acacia_leaves.png"}, paramtype = "light", groups = {snappy = 3, flammable = 2, leaves = 1}, From 0acd9a2ccb2f766de5237964a5da046148075d79 Mon Sep 17 00:00:00 2001 From: Wuzzy Date: Thu, 27 Oct 2016 19:42:47 +0200 Subject: [PATCH 41/99] Add icon overlay to shelf inventory slots --- mods/default/README.txt | 3 +++ mods/default/nodes.lua | 12 ++++++++++++ mods/default/textures/default_book_slot.png | Bin 0 -> 204 bytes mods/vessels/README.txt | 3 +++ mods/vessels/init.lua | 12 ++++++++++++ .../textures/vessels_glass_bottle_slot.png | Bin 0 -> 196 bytes 6 files changed, 30 insertions(+) create mode 100644 mods/default/textures/default_book_slot.png create mode 100644 mods/vessels/textures/vessels_glass_bottle_slot.png diff --git a/mods/default/README.txt b/mods/default/README.txt index 4536de9a..3e4f7734 100644 --- a/mods/default/README.txt +++ b/mods/default/README.txt @@ -139,6 +139,9 @@ BlockMen (CC BY-SA 3.0): bubble.png gui_*.png +Wuzzy (CC BY-SA 3.0): + default_book_slot.png (based on default_book.png) + sofar (CC BY-SA 3.0): default_book_written.png, based on default_book.png default_aspen_sapling diff --git a/mods/default/nodes.lua b/mods/default/nodes.lua index 07e15952..65b9fb9e 100644 --- a/mods/default/nodes.lua +++ b/mods/default/nodes.lua @@ -1800,6 +1800,18 @@ local bookshelf_formspec = "listring[current_player;main]" .. default.get_hotbar_bg(0,2.85) +-- Inventory slots overlay +local bx, by = 0, 0.3 +for i = 1, 16 do + if i == 9 then + bx = 0 + by = by + 1 + end + bookshelf_formspec = bookshelf_formspec .. + "image["..bx..","..by..";1,1;default_book_slot.png]" + bx = bx + 1 +end + minetest.register_node("default:bookshelf", { description = "Bookshelf", tiles = {"default_wood.png", "default_wood.png", "default_wood.png", diff --git a/mods/default/textures/default_book_slot.png b/mods/default/textures/default_book_slot.png new file mode 100644 index 0000000000000000000000000000000000000000..20b4ef844b354736afec5779f60c57eb9724a889 GIT binary patch literal 204 zcmeAS@N?(olHy`uVBq!ia0vp^0zfRt$P6UkCGKknQjEnx?oJHr&dIz4a@YcVLR^7# zLqo%)%$+JA>5?G7UYh7ML)4Eal|aXmSqp@E&}3=@xy91oi&PoEnP`z;AE4?`c1qz^gC m0h1F1JQ5z{BqTIzu`(Q*$nN{BWt}xpH-o3EpUXO@geCyKmoeD@ literal 0 HcmV?d00001 diff --git a/mods/vessels/README.txt b/mods/vessels/README.txt index b81d0e94..e9f01b84 100644 --- a/mods/vessels/README.txt +++ b/mods/vessels/README.txt @@ -17,3 +17,6 @@ The following textures were modified by Thomas-S (CC BY-SA 3.0): vessels_drinking_glass_inv.png vessels_glass_bottle.png vessels_steel_bottle.png + +The following texture was created by Wuzzy (CC BY-SA 3.0): + vessels_glass_bottle_slot.png (based on vessels_glass_bottle.png) diff --git a/mods/vessels/init.lua b/mods/vessels/init.lua index e56cc284..f0362568 100644 --- a/mods/vessels/init.lua +++ b/mods/vessels/init.lua @@ -13,6 +13,18 @@ local vessels_shelf_formspec = "listring[current_player;main]" .. default.get_hotbar_bg(0, 2.85) +-- Inventory slots overlay +local vx, vy = 0, 0.3 +for i = 1,16 do + if i == 9 then + vx = 0 + vy = vy + 1 + end + vessels_shelf_formspec = vessels_shelf_formspec .. + "image["..vx..","..vy..";1,1;vessels_glass_bottle_slot.png]" + vx = vx + 1 +end + minetest.register_node("vessels:shelf", { description = "Vessels Shelf", tiles = {"default_wood.png", "default_wood.png", "default_wood.png", diff --git a/mods/vessels/textures/vessels_glass_bottle_slot.png b/mods/vessels/textures/vessels_glass_bottle_slot.png new file mode 100644 index 0000000000000000000000000000000000000000..63cf7952f9b5d662ef92709481951b567d87c6a9 GIT binary patch literal 196 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!D3?x-;bCrM;V{wqX6T`Z5GB1G~wg8_HS0LTc z&@d@;rwT~AB*-tA!Qt7BG!Q4r+uensgH_f8$l)yTh%9Dc;1&j9Muu5)B!GhKC7!;n z><_r41w|})3hqw?3Tb(|IEHXsPfl=P>fz;i!!I#|-@w4KL7;|0{k;OXk;vd$@?2>|sqD)0aR literal 0 HcmV?d00001 From d92034e3f7b769b7864389ad5e19da59d588c1fc Mon Sep 17 00:00:00 2001 From: Wuzzy Date: Thu, 27 Oct 2016 18:40:13 +0200 Subject: [PATCH 42/99] Add fuel slot to furnace listring --- mods/default/furnace.lua | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/mods/default/furnace.lua b/mods/default/furnace.lua index 17c9280d..cd36f522 100644 --- a/mods/default/furnace.lua +++ b/mods/default/furnace.lua @@ -22,6 +22,8 @@ local function active_formspec(fuel_percent, item_percent) "listring[current_player;main]".. "listring[current_name;src]".. "listring[current_player;main]".. + "listring[current_name;fuel]".. + "listring[current_player;main]".. default.get_hotbar_bg(0, 4.25) return formspec end @@ -42,6 +44,8 @@ local inactive_formspec = "listring[current_player;main]".. "listring[current_name;src]".. "listring[current_player;main]".. + "listring[current_name;fuel]".. + "listring[current_player;main]".. default.get_hotbar_bg(0, 4.25) -- From 56d6eaed85fb959c2c5e6145038d408d795b262f Mon Sep 17 00:00:00 2001 From: Wuzzy Date: Mon, 31 Oct 2016 22:20:26 +0100 Subject: [PATCH 43/99] Xpanes: Use opaque texture for top+bottom of iron bar (#1357) - Use opaque texture for top+bottom of iron bar - Add color variation for iron bar top/bottom - Add paramat's texture to credits - Update license info for paramat's textures --- mods/xpanes/README.txt | 3 +++ mods/xpanes/init.lua | 2 +- mods/xpanes/license.txt | 1 + mods/xpanes/textures/xpanes_bar_top.png | Bin 0 -> 224 bytes mods/xpanes/textures/xpanes_grey.png | Bin 82 -> 0 bytes 5 files changed, 5 insertions(+), 1 deletion(-) create mode 100644 mods/xpanes/textures/xpanes_bar_top.png delete mode 100644 mods/xpanes/textures/xpanes_grey.png diff --git a/mods/xpanes/README.txt b/mods/xpanes/README.txt index b72e19a8..bcbc1294 100644 --- a/mods/xpanes/README.txt +++ b/mods/xpanes/README.txt @@ -16,3 +16,6 @@ xyz (CC BY-SA 3.0): Gambit (CC BY-SA 3.0): xpanes_bar.png + +paramat (CC BY-SA 3.0): + xpanes_bar_top.png diff --git a/mods/xpanes/init.lua b/mods/xpanes/init.lua index 7137aeee..77278a5c 100644 --- a/mods/xpanes/init.lua +++ b/mods/xpanes/init.lua @@ -160,7 +160,7 @@ xpanes.register_pane("pane", { xpanes.register_pane("bar", { description = "Iron bar", - textures = {"xpanes_bar.png","xpanes_bar.png","xpanes_space.png"}, + textures = {"xpanes_bar.png","xpanes_bar.png","xpanes_bar_top.png"}, inventory_image = "xpanes_bar.png", wield_image = "xpanes_bar.png", groups = {cracky=2}, diff --git a/mods/xpanes/license.txt b/mods/xpanes/license.txt index 66c6fbfa..dff72274 100644 --- a/mods/xpanes/license.txt +++ b/mods/xpanes/license.txt @@ -33,6 +33,7 @@ Licenses of media (textures) Attribution-ShareAlike 3.0 Unported (CC BY-SA 3.0) Copyright (C) 2014-2016 xyz Copyright (C) 2013-2016 Gambit +Copyright (C) 2016 paramat You are free to: Share — copy and redistribute the material in any medium or format. diff --git a/mods/xpanes/textures/xpanes_bar_top.png b/mods/xpanes/textures/xpanes_bar_top.png new file mode 100644 index 0000000000000000000000000000000000000000..5cd3d5721f3fa9b4d81dd32c44ecdebbc5e7fee4 GIT binary patch literal 224 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`jKx9jP7LeL$-D$|*pj^6T^PDS za7FzTQ=kZEfk$L90|U1(2s1Lwnj--eWH0gbb!C6RCC|ewZNSmX2o&PU42dXl&d<$F z%_{+N85s7g+cXnMd3d@whFF|V*3r}Zciw?9A!&iY1Jeh;zrW|XzrX%?HUqbvr=Q=s zh3}XqF$vz?x#Px*ny%ObO{e$InKP$g_J)(Zha6;Y;x3o_f&)z4*} HQ$iB}f8j$l literal 0 HcmV?d00001 diff --git a/mods/xpanes/textures/xpanes_grey.png b/mods/xpanes/textures/xpanes_grey.png deleted file mode 100644 index e1c6f76ff3ba0e88d7794341608b56ceb24e391c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 82 zcmeAS@N?(olHy`uVBq!ia0vp^j3CUx3?wy9o9qTs%mF?juKD?SYvy%*0CKrJT^vIy b7?Tr#Y$gWA;!;KlAdA7%)z4*}Q$iB}WG)bM From 5b2a896180361db8adfcfad4c29bf0721e67ecb1 Mon Sep 17 00:00:00 2001 From: Fernando Carmona Varo Date: Sun, 11 Sep 2016 09:55:33 +0200 Subject: [PATCH 44/99] Bucket: Allow buckets to trigger the on_punch of entities and nodes The purpose of this is to allow mods to be able to interact (e.g. fill up) an empty bucket when it is used to punch a node that's not a liquid source or when punching a custom entity (e.g. milking a cow). --- game_api.txt | 4 +++- mods/bucket/init.lua | 14 ++++++++++++-- 2 files changed, 15 insertions(+), 3 deletions(-) diff --git a/game_api.txt b/game_api.txt index 6bf51af4..2958bfdc 100644 --- a/game_api.txt +++ b/game_api.txt @@ -19,7 +19,6 @@ Bucket API The bucket API allows registering new types of buckets for non-default liquids. - bucket.register_liquid( "default:lava_source", -- name of the source node "default:lava_flowing", -- name of the flowing node @@ -32,6 +31,9 @@ The bucket API allows registering new types of buckets for non-default liquids. -- Needed to avoid creating holes in sloping rivers. ) +The filled bucket item is returned to the player that uses an empty bucket pointing to the given liquid source. +When punching with an empty bucket pointing to an entity or a non-liquid node, the on_punch of the entity or node will be triggered. + Beds API -------- diff --git a/mods/bucket/init.lua b/mods/bucket/init.lua index 638ce1f4..5076dece 100644 --- a/mods/bucket/init.lua +++ b/mods/bucket/init.lua @@ -115,8 +115,11 @@ minetest.register_craftitem("bucket:bucket_empty", { stack_max = 99, liquids_pointable = true, on_use = function(itemstack, user, pointed_thing) - -- Must be pointing to node - if pointed_thing.type ~= "node" then + if pointed_thing.type == "object" then + pointed_thing.ref:punch(user, 1.0, { full_punch_interval=1.0 }, nil) + return user:get_wielded_item() + elseif pointed_thing.type ~= "node" then + -- do nothing if it's neither object nor node return end -- Check if pointing to a liquid source @@ -165,6 +168,13 @@ minetest.register_craftitem("bucket:bucket_empty", { end return ItemStack(giving_back) + else + -- non-liquid nodes will have their on_punch triggered + local node_def = minetest.registered_nodes[node.name] + if node_def then + node_def.on_punch(pointed_thing.under, node, user, pointed_thing) + end + return user:get_wielded_item() end end, }) From 7fee589e0362f49bb602fcc03e2127ef9f718f99 Mon Sep 17 00:00:00 2001 From: Fernando Carmona Varo Date: Thu, 27 Oct 2016 20:16:15 +0200 Subject: [PATCH 45/99] Tnt: Flammable TNT and gunpowder that activates when burnt Some code simplifications. --- mods/tnt/init.lua | 15 +++++++++++---- 1 file changed, 11 insertions(+), 4 deletions(-) diff --git a/mods/tnt/init.lua b/mods/tnt/init.lua index 1138e1c2..4142be78 100644 --- a/mods/tnt/init.lua +++ b/mods/tnt/init.lua @@ -404,17 +404,21 @@ minetest.register_node("tnt:gunpowder", { type = "fixed", fixed = {-1/2, -1/2, -1/2, 1/2, -1/2+1/16, 1/2}, }, - groups = {dig_immediate = 2, attached_node = 1, connect_to_raillike = minetest.raillike_group("gunpowder")}, + groups = {dig_immediate = 2, attached_node = 1, flammable = 5, + connect_to_raillike = minetest.raillike_group("gunpowder")}, sounds = default.node_sound_leaves_defaults(), on_punch = function(pos, node, puncher) if puncher:get_wielded_item():get_name() == "default:torch" then - tnt.burn(pos, node.name) + minetest.set_node(pos, {name = "tnt:gunpowder_burning"}) end end, on_blast = function(pos, intensity) - tnt.burn(pos, "tnt:gunpowder") + minetest.set_node(pos, {name = "tnt:gunpowder_burning"}) end, + on_burn = function(pos) + minetest.set_node(pos, {name = "tnt:gunpowder_burning"}) + end }) minetest.register_node("tnt:gunpowder_burning", { @@ -538,7 +542,7 @@ function tnt.register_tnt(def) description = def.description, tiles = {tnt_top, tnt_bottom, tnt_side}, is_ground_content = false, - groups = {dig_immediate = 2, mesecon = 2, tnt = 1}, + groups = {dig_immediate = 2, mesecon = 2, tnt = 1, flammable = 5}, sounds = default.node_sound_wood_defaults(), on_punch = function(pos, node, puncher) if puncher:get_wielded_item():get_name() == "default:torch" then @@ -557,6 +561,9 @@ function tnt.register_tnt(def) end } }, + on_burn = function(pos) + minetest.set_node(pos, {name = name .. "_burning"}) + end }) end From 23ba2d3a0c918281e01402a9160902b865aa2580 Mon Sep 17 00:00:00 2001 From: cx384 Date: Sun, 30 Oct 2016 11:29:58 +0100 Subject: [PATCH 46/99] Add and edit fuel registrations Edited fuels: fences, wooden ladder. New fuels: boat, paper, book, dry shrub, stick, vessels shelf, wooden tools, wooden door, trapdoor, fence gates, farming crops, stairs, slabs, beds. --- mods/beds/beds.lua | 14 +++++++++ mods/boats/init.lua | 6 ++++ mods/default/crafting.lua | 61 +++++++++++++++++++++++++++++++++++---- mods/doors/init.lua | 45 +++++++++++++++++++++++++++++ mods/farming/init.lua | 25 ++++++++++++++++ mods/stairs/init.lua | 28 ++++++++++++++++++ mods/vessels/init.lua | 6 ++++ 7 files changed, 179 insertions(+), 6 deletions(-) diff --git a/mods/beds/beds.lua b/mods/beds/beds.lua index 5f31f136..b41992c3 100644 --- a/mods/beds/beds.lua +++ b/mods/beds/beds.lua @@ -88,3 +88,17 @@ beds.register_bed("beds:bed", { minetest.register_alias("beds:bed_bottom_red", "beds:bed_bottom") minetest.register_alias("beds:bed_top_red", "beds:bed_top") + +-- Fuel + +minetest.register_craft({ + type = "fuel", + recipe = "beds:fancy_bed_bottom", + burntime = 13, +}) + +minetest.register_craft({ + type = "fuel", + recipe = "beds:bed_bottom", + burntime = 12, +}) diff --git a/mods/boats/init.lua b/mods/boats/init.lua index cc55b93c..4c6937e8 100644 --- a/mods/boats/init.lua +++ b/mods/boats/init.lua @@ -248,3 +248,9 @@ minetest.register_craft({ {"group:wood", "group:wood", "group:wood"}, }, }) + +minetest.register_craft({ + type = "fuel", + recipe = "boats:boat", + burntime = 20, +}) diff --git a/mods/default/crafting.lua b/mods/default/crafting.lua index a7a0daa2..fe9862a0 100644 --- a/mods/default/crafting.lua +++ b/mods/default/crafting.lua @@ -915,31 +915,31 @@ minetest.register_craft({ minetest.register_craft({ type = "fuel", recipe = "default:fence_aspen_wood", - burntime = 11, + burntime = 5, }) minetest.register_craft({ type = "fuel", recipe = "default:fence_pine_wood", - burntime = 13, + burntime = 6, }) minetest.register_craft({ type = "fuel", recipe = "default:fence_wood", - burntime = 15, + burntime = 7, }) minetest.register_craft({ type = "fuel", recipe = "default:fence_acacia_wood", - burntime = 17, + burntime = 8, }) minetest.register_craft({ type = "fuel", recipe = "default:fence_junglewood", - burntime = 19, + burntime = 9, }) @@ -988,7 +988,7 @@ minetest.register_craft({ minetest.register_craft({ type = "fuel", recipe = "default:ladder_wood", - burntime = 5, + burntime = 2, }) minetest.register_craft({ @@ -1050,3 +1050,52 @@ minetest.register_craft({ recipe = "default:dry_grass_1", burntime = 2, }) + +minetest.register_craft({ + type = "fuel", + recipe = "default:paper", + burntime = 1, +}) + +minetest.register_craft({ + type = "fuel", + recipe = "default:book", + burntime = 3, +}) + +minetest.register_craft({ + type = "fuel", + recipe = "default:dry_shrub", + burntime = 2, +}) + +minetest.register_craft({ + type = "fuel", + recipe = "group:stick", + burntime = 1, +}) + + +minetest.register_craft({ + type = "fuel", + recipe = "default:pick_wood", + burntime = 6, +}) + +minetest.register_craft({ + type = "fuel", + recipe = "default:shovel_wood", + burntime = 4, +}) + +minetest.register_craft({ + type = "fuel", + recipe = "default:axe_wood", + burntime = 6, +}) + +minetest.register_craft({ + type = "fuel", + recipe = "default:sword_wood", + burntime = 5, +}) diff --git a/mods/doors/init.lua b/mods/doors/init.lua index 52564b0b..01a549b7 100644 --- a/mods/doors/init.lua +++ b/mods/doors/init.lua @@ -745,3 +745,48 @@ doors.register_fencegate("doors:gate_aspen_wood", { material = "default:aspen_wood", groups = {choppy = 3, oddly_breakable_by_hand = 2, flammable = 3} }) + + +----fuels---- + +minetest.register_craft({ + type = "fuel", + recipe = "doors:trapdoor", + burntime = 7, +}) + +minetest.register_craft({ + type = "fuel", + recipe = "doors:door_wood", + burntime = 14, +}) + +minetest.register_craft({ + type = "fuel", + recipe = "doors:gate_wood_closed", + burntime = 7, +}) + +minetest.register_craft({ + type = "fuel", + recipe = "doors:gate_acacia_wood_closed", + burntime = 8, +}) + +minetest.register_craft({ + type = "fuel", + recipe = "doors:gate_junglewood_closed", + burntime = 9, +}) + +minetest.register_craft({ + type = "fuel", + recipe = "doors:gate_pine_wood_closed", + burntime = 6, +}) + +minetest.register_craft({ + type = "fuel", + recipe = "doors:gate_aspen_wood_closed", + burntime = 5, +}) diff --git a/mods/farming/init.lua b/mods/farming/init.lua index 9fff36e0..796e9871 100644 --- a/mods/farming/init.lua +++ b/mods/farming/init.lua @@ -80,3 +80,28 @@ minetest.register_craft({ {"farming:straw"}, } }) + +-- Fuels +minetest.register_craft({ + type = "fuel", + recipe = "farming:straw", + burntime = 3, +}) + +minetest.register_craft({ + type = "fuel", + recipe = "farming:wheat", + burntime = 1, +}) + +minetest.register_craft({ + type = "fuel", + recipe = "farming:cotton", + burntime = 1, +}) + +minetest.register_craft({ + type = "fuel", + recipe = "farming:hoe_wood", + burntime = 5, +}) diff --git a/mods/stairs/init.lua b/mods/stairs/init.lua index 6a433525..191c78df 100644 --- a/mods/stairs/init.lua +++ b/mods/stairs/init.lua @@ -106,6 +106,20 @@ function stairs.register_stair(subname, recipeitem, groups, images, description, {recipeitem, recipeitem, recipeitem}, }, }) + + -- Fuel + local baseburntime = minetest.get_craft_result({ + method = "fuel", + width = 1, + items = {recipeitem} + }).time + if baseburntime > 0 then + minetest.register_craft({ + type = "fuel", + recipe = 'stairs:stair_' .. subname, + burntime = math.floor(baseburntime * 0.75), + }) + end end end @@ -207,6 +221,20 @@ function stairs.register_slab(subname, recipeitem, groups, images, description, {recipeitem, recipeitem, recipeitem}, }, }) + + -- Fuel + local baseburntime = minetest.get_craft_result({ + method = "fuel", + width = 1, + items = {recipeitem} + }).time + if baseburntime > 0 then + minetest.register_craft({ + type = "fuel", + recipe = 'stairs:slab_' .. subname, + burntime = math.floor(baseburntime * 0.5), + }) + end end end diff --git a/mods/vessels/init.lua b/mods/vessels/init.lua index f0362568..64ad66eb 100644 --- a/mods/vessels/init.lua +++ b/mods/vessels/init.lua @@ -195,3 +195,9 @@ minetest.register_craft( { output = "default:steel_ingot", recipe = "vessels:steel_bottle", }) + +minetest.register_craft({ + type = "fuel", + recipe = "vessels:shelf", + burntime = 30, +}) From 178db045267c018abc99a4fc502f4da7d2374f8d Mon Sep 17 00:00:00 2001 From: paramat Date: Sat, 5 Nov 2016 05:58:12 +0000 Subject: [PATCH 47/99] Default, flowers: Improve plant selection boxes Selection box width is limited to 14 / 16 node to visually distinguish box from any neighbouring cubic nodes. --- mods/default/nodes.lua | 34 +++++++++++++++++----------- mods/flowers/init.lua | 50 +++++++++++++++++++++++++++++++++--------- 2 files changed, 61 insertions(+), 23 deletions(-) diff --git a/mods/default/nodes.lua b/mods/default/nodes.lua index 65b9fb9e..b37f1132 100644 --- a/mods/default/nodes.lua +++ b/mods/default/nodes.lua @@ -523,7 +523,7 @@ minetest.register_node("default:sapling", { on_timer = default.grow_sapling, selection_box = { type = "fixed", - fixed = {-0.3, -0.5, -0.3, 0.3, 0.35, 0.3} + fixed = {-4 / 16, -0.5, -4 / 16, 4 / 16, 7 / 16, 4 / 16} }, groups = {snappy = 2, dig_immediate = 3, flammable = 2, attached_node = 1, sapling = 1}, @@ -588,7 +588,7 @@ minetest.register_node("default:apple", { is_ground_content = false, selection_box = { type = "fixed", - fixed = {-0.2, -0.5, -0.2, 0.2, 0, 0.2} + fixed = {-3 / 16, -7 / 16, -3 / 16, 3 / 16, 4 / 16, 3 / 16} }, groups = {fleshy = 3, dig_immediate = 3, flammable = 2, leafdecay = 3, leafdecay_drop = 1}, @@ -659,7 +659,7 @@ minetest.register_node("default:junglesapling", { on_timer = default.grow_sapling, selection_box = { type = "fixed", - fixed = {-0.3, -0.5, -0.3, 0.3, 0.35, 0.3} + fixed = {-4 / 16, -0.5, -4 / 16, 4 / 16, 7 / 16, 4 / 16} }, groups = {snappy = 2, dig_immediate = 3, flammable = 2, attached_node = 1, sapling = 1}, @@ -739,7 +739,7 @@ minetest.register_node("default:pine_sapling", { on_timer = default.grow_sapling, selection_box = { type = "fixed", - fixed = {-0.3, -0.5, -0.3, 0.3, 0.35, 0.3} + fixed = {-4 / 16, -0.5, -4 / 16, 4 / 16, 7 / 16, 4 / 16} }, groups = {snappy = 2, dig_immediate = 3, flammable = 3, attached_node = 1, sapling = 1}, @@ -819,7 +819,7 @@ minetest.register_node("default:acacia_sapling", { on_timer = default.grow_sapling, selection_box = { type = "fixed", - fixed = {-0.3, -0.5, -0.3, 0.3, 0.35, 0.3} + fixed = {-4 / 16, -0.5, -4 / 16, 4 / 16, 7 / 16, 4 / 16} }, groups = {snappy = 2, dig_immediate = 3, flammable = 2, attached_node = 1, sapling = 1}, @@ -898,7 +898,7 @@ minetest.register_node("default:aspen_sapling", { on_timer = default.grow_sapling, selection_box = { type = "fixed", - fixed = {-0.3, -0.5, -0.3, 0.3, 0.35, 0.3} + fixed = {-3 / 16, -0.5, -3 / 16, 3 / 16, 0.5, 3 / 16} }, groups = {snappy = 2, dig_immediate = 3, flammable = 3, attached_node = 1, sapling = 1}, @@ -1061,7 +1061,7 @@ minetest.register_node("default:papyrus", { walkable = false, selection_box = { type = "fixed", - fixed = {-0.3, -0.5, -0.3, 0.3, 0.5, 0.3} + fixed = {-6 / 16, -0.5, -6 / 16, 6 / 16, 0.5, 6 / 16}, }, groups = {snappy = 3, flammable = 2}, sounds = default.node_sound_leaves_defaults(), @@ -1087,7 +1087,7 @@ minetest.register_node("default:dry_shrub", { sounds = default.node_sound_leaves_defaults(), selection_box = { type = "fixed", - fixed = {-0.5, -0.5, -0.5, 0.5, -5/16, 0.5}, + fixed = {-5 / 16, -0.5, -5 / 16, 5 / 16, 4 / 16, 5 / 16}, }, }) @@ -1107,7 +1107,7 @@ minetest.register_node("default:junglegrass", { sounds = default.node_sound_leaves_defaults(), selection_box = { type = "fixed", - fixed = {-0.5, -0.5, -0.5, 0.5, -5/16, 0.5}, + fixed = {-7 / 16, -0.5, -7 / 16, 7 / 16, 1.19, 7 / 16}, }, }) @@ -1128,7 +1128,7 @@ minetest.register_node("default:grass_1", { sounds = default.node_sound_leaves_defaults(), selection_box = { type = "fixed", - fixed = {-0.5, -0.5, -0.5, 0.5, -5/16, 0.5}, + fixed = {-6 / 16, -0.5, -6 / 16, 6 / 16, -5 / 16, 6 / 16}, }, on_place = function(itemstack, placer, pointed_thing) @@ -1158,7 +1158,7 @@ for i = 2, 5 do sounds = default.node_sound_leaves_defaults(), selection_box = { type = "fixed", - fixed = {-0.5, -0.5, -0.5, 0.5, -5/16, 0.5}, + fixed = {-6 / 16, -0.5, -6 / 16, 6 / 16, -3 / 16, 6 / 16}, }, }) end @@ -1180,7 +1180,7 @@ minetest.register_node("default:dry_grass_1", { sounds = default.node_sound_leaves_defaults(), selection_box = { type = "fixed", - fixed = {-0.5, -0.5, -0.5, 0.5, -5/16, 0.5}, + fixed = {-6 / 16, -0.5, -6 / 16, 6 / 16, -3 / 16, 6 / 16}, }, on_place = function(itemstack, placer, pointed_thing) @@ -1210,7 +1210,7 @@ for i = 2, 5 do sounds = default.node_sound_leaves_defaults(), selection_box = { type = "fixed", - fixed = {-0.5, -0.5, -0.5, 0.5, -5/16, 0.5}, + fixed = {-6 / 16, -0.5, -6 / 16, 6 / 16, -1 / 16, 6 / 16}, }, }) end @@ -1227,6 +1227,10 @@ minetest.register_node("default:bush_stem", { sunlight_propagates = true, groups = {choppy = 2, oddly_breakable_by_hand = 1, flammable = 2}, sounds = default.node_sound_wood_defaults(), + selection_box = { + type = "fixed", + fixed = {-7 / 16, -0.5, -7 / 16, 7 / 16, 0.54, 7 / 16}, + }, }) minetest.register_node("default:bush_leaves", { @@ -1250,6 +1254,10 @@ minetest.register_node("default:acacia_bush_stem", { sunlight_propagates = true, groups = {choppy = 2, oddly_breakable_by_hand = 1, flammable = 2}, sounds = default.node_sound_wood_defaults(), + selection_box = { + type = "fixed", + fixed = {-7 / 16, -0.5, -7 / 16, 7 / 16, 0.54, 7 / 16}, + }, }) minetest.register_node("default:acacia_bush_leaves", { diff --git a/mods/flowers/init.lua b/mods/flowers/init.lua index 436021a8..c7cc670e 100644 --- a/mods/flowers/init.lua +++ b/mods/flowers/init.lua @@ -57,12 +57,42 @@ local function add_simple_flower(name, desc, box, f_groups) end flowers.datas = { - {"rose", "Rose", {-0.15, -0.5, -0.15, 0.15, 0.3, 0.15}, {color_red = 1, flammable = 1}}, - {"tulip", "Orange Tulip", {-0.15, -0.5, -0.15, 0.15, 0.2, 0.15}, {color_orange = 1, flammable = 1}}, - {"dandelion_yellow", "Yellow Dandelion", {-0.15, -0.5, -0.15, 0.15, 0.2, 0.15}, {color_yellow = 1, flammable = 1}}, - {"geranium", "Blue Geranium", {-0.15, -0.5, -0.15, 0.15, 0.2, 0.15}, {color_blue = 1, flammable = 1}}, - {"viola", "Viola", {-0.5, -0.5, -0.5, 0.5, -0.2, 0.5}, {color_violet = 1, flammable = 1}}, - {"dandelion_white", "White dandelion", {-0.5, -0.5, -0.5, 0.5, -0.2, 0.5}, {color_white = 1, flammable = 1}} + { + "rose", + "Rose", + {-2 / 16, -0.5, -2 / 16, 2 / 16, 5 / 16, 2 / 16}, + {color_red = 1, flammable = 1} + }, + { + "tulip", + "Orange Tulip", + {-2 / 16, -0.5, -2 / 16, 2 / 16, 3 / 16, 2 / 16}, + {color_orange = 1, flammable = 1} + }, + { + "dandelion_yellow", + "Yellow Dandelion", + {-2 / 16, -0.5, -2 / 16, 2 / 16, 4 / 16, 2 / 16}, + {color_yellow = 1, flammable = 1} + }, + { + "geranium", + "Blue Geranium", + {-2 / 16, -0.5, -2 / 16, 2 / 16, 2 / 16, 2 / 16}, + {color_blue = 1, flammable = 1} + }, + { + "viola", + "Viola", + {-5 / 16, -0.5, -5 / 16, 5 / 16, -1 / 16, 5 / 16}, + {color_violet = 1, flammable = 1} + }, + { + "dandelion_white", + "White dandelion", + {-5 / 16, -0.5, -5 / 16, 5 / 16, -2 / 16, 5 / 16}, + {color_white = 1, flammable = 1} + }, } for _,item in pairs(flowers.datas) do @@ -141,7 +171,7 @@ minetest.register_node("flowers:mushroom_red", { on_use = minetest.item_eat(-5), selection_box = { type = "fixed", - fixed = {-0.3, -0.5, -0.3, 0.3, 0, 0.3} + fixed = {-4 / 16, -0.5, -4 / 16, 4 / 16, -1 / 16, 4 / 16}, } }) @@ -160,7 +190,7 @@ minetest.register_node("flowers:mushroom_brown", { on_use = minetest.item_eat(1), selection_box = { type = "fixed", - fixed = {-0.3, -0.5, -0.3, 0.3, 0, 0.3} + fixed = {-3 / 16, -0.5, -3 / 16, 3 / 16, -2 / 16, 3 / 16}, } }) @@ -234,11 +264,11 @@ minetest.register_node("flowers:waterlily", { node_placement_prediction = "", node_box = { type = "fixed", - fixed = {-0.5, -0.5, -0.5, 0.5, -0.46875, 0.5} + fixed = {-0.5, -0.5, -0.5, 0.5, -15 / 32, 0.5} }, selection_box = { type = "fixed", - fixed = {-0.5, -0.5, -0.5, 0.5, -0.4375, 0.5} + fixed = {-7 / 16, -0.5, -7 / 16, 7 / 16, -15 / 32, 7 / 16} }, on_place = function(itemstack, placer, pointed_thing) From 631f7f46c758721945dbb201bb7f4c84f21ee863 Mon Sep 17 00:00:00 2001 From: Rui Date: Sat, 5 Nov 2016 11:17:05 +0900 Subject: [PATCH 48/99] sethome.get: Copy a return value --- mods/sethome/init.lua | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/mods/sethome/init.lua b/mods/sethome/init.lua index 4246f7a5..28bfcef6 100644 --- a/mods/sethome/init.lua +++ b/mods/sethome/init.lua @@ -41,7 +41,12 @@ sethome.set = function(name, pos) end sethome.get = function(name) - return homepos[name] + local pos = homepos[name] + if pos then + return vector.new(pos) + else + return nil + end end sethome.go = function(name) From c7e2d594610cacfb4bb7ed0e3b950eeed58b7d01 Mon Sep 17 00:00:00 2001 From: paramat Date: Wed, 2 Nov 2016 17:58:06 +0000 Subject: [PATCH 49/99] Default: Add 'acacia leaves simple' texture A deeper, darker level of leaves is created by tiling the texture 2 by 2, reducing brightness and offsetting this. For a denser leaf appearence with the 'simple leaves' setting. Also used for acacia bush leaves. --- mods/default/README.txt | 1 + mods/default/nodes.lua | 3 ++- .../textures/default_acacia_leaves_simple.png | Bin 0 -> 688 bytes 3 files changed, 3 insertions(+), 1 deletion(-) create mode 100644 mods/default/textures/default_acacia_leaves_simple.png diff --git a/mods/default/README.txt b/mods/default/README.txt index 3e4f7734..6b26234c 100644 --- a/mods/default/README.txt +++ b/mods/default/README.txt @@ -88,6 +88,7 @@ paramat (CC BY-SA 3.0): default_pinetree_top.png default_pinewood.png default_acacia_leaves.png + default_acacia_leaves_simple.png default_acacia_sapling.png default_acacia_tree.png default_acacia_tree_top.png diff --git a/mods/default/nodes.lua b/mods/default/nodes.lua index b37f1132..222df92c 100644 --- a/mods/default/nodes.lua +++ b/mods/default/nodes.lua @@ -790,6 +790,7 @@ minetest.register_node("default:acacia_leaves", { description = "Acacia Leaves", drawtype = "allfaces_optional", tiles = {"default_acacia_leaves.png"}, + special_tiles = {"default_acacia_leaves_simple.png"}, waving = 1, paramtype = "light", is_ground_content = false, @@ -1264,7 +1265,7 @@ minetest.register_node("default:acacia_bush_leaves", { description = "Acacia Bush Leaves", drawtype = "allfaces_optional", waving = 1, - tiles = {"default_acacia_leaves.png"}, + tiles = {"default_acacia_leaves_simple.png"}, paramtype = "light", groups = {snappy = 3, flammable = 2, leaves = 1}, sounds = default.node_sound_leaves_defaults(), diff --git a/mods/default/textures/default_acacia_leaves_simple.png b/mods/default/textures/default_acacia_leaves_simple.png new file mode 100644 index 0000000000000000000000000000000000000000..3c7015bbb75a75866f407d158dfeab3235e51f23 GIT binary patch literal 688 zcmV;h0#E&kP)6f+Gg1gQW30zFAY zK~y-)ZIdx*6JZ#JpWNNw3W9@ewTDS;QY5B?4%ZyHD7K4;Py#M>$slB~LxpzNvDst5 z!9_6T5R^=z(4|8gkRFksOQaOj(zFOF9ZE&;FNwo>*Gu&q@A%$(-{<`<)c)l303N=W zqkG%~AbD>TRac0vXIZvOqP^xw0Bb(O)=P)rgwWCA<4Ay$Qy7|bUknc@0Mx5p(Oz?8 z%`WqLf0IYiX@B{9cZ5*#F+IaFX>K+6TtnoGrUX!RSD;dGg!h4L!9>*+Dg{S8%P&cw zUm&q#uzjQXj{|^Y&J_th&lgRp4G$=&y29{)LTYN76t2Z(yCmY{$aF3$k6QZ}mPydr z_6J9*xDSlqM;k3~4x>kuA` z(A?;VAaKBSaGo?kbE6}!Tt|8WUVZWV84={6#b!El0$|KUBtT-vz_3hWvnGchyZmqLrwtKZ z&!Qx(s~olVvF0-z>~#Q0O-&PP-KJ7-#K|fCKjP6(=8*ZKDXYgNx5B{*XxH#=KzgKu zAOXLj;Aq|zrgLElP_xT!oO74wRSS?vE7IH3fWJB27{QF5gL<_qTDduC%tWLo;>{l^ W`u2$0lZa~o0000 Date: Mon, 24 Oct 2016 22:24:49 +0200 Subject: [PATCH 50/99] Fire / tnt: Make flint-and-steel use node on_ignite functions Add on_ignite functions to tnt, gunpowder, coalblock. --- game_api.txt | 8 +++++++ mods/fire/init.lua | 53 +++++++++++++++++----------------------------- mods/tnt/init.lua | 10 +++++++-- 3 files changed, 36 insertions(+), 35 deletions(-) diff --git a/game_api.txt b/game_api.txt index 2958bfdc..80272a60 100644 --- a/game_api.txt +++ b/game_api.txt @@ -227,6 +227,14 @@ New node def property: * Called when fire attempts to remove a burning node. * `pos` Position of the burning node. + `on_ignite(pos, igniter)` + + * Called when Flint and steel (or a mod defined ignitor) is used on a node. + Defining it may prevent the default action (spawning flames) from triggering. + * `pos` Position of the ignited node. + * `igniter` Player that used the tool, when available. + + Give Initial Stuff API ---------------------- diff --git a/mods/fire/init.lua b/mods/fire/init.lua index a3457f64..c600edc7 100644 --- a/mods/fire/init.lua +++ b/mods/fire/init.lua @@ -95,38 +95,20 @@ minetest.register_tool("fire:flint_and_steel", { itemstack:add_wear(1000) if pt.type == "node" then local node_under = minetest.get_node(pt.under).name - local is_coalblock = node_under == "default:coalblock" - local is_tnt = node_under == "tnt:tnt" - local is_gunpowder = node_under == "tnt:gunpowder" - if minetest.get_item_group(node_under, "flammable") >= 1 or - is_coalblock or is_tnt or is_gunpowder then - local flame_pos = pt.above - if is_coalblock then - flame_pos = {x = pt.under.x, y = pt.under.y + 1, z = pt.under.z} - elseif is_tnt or is_gunpowder then - flame_pos = pt.under - end - if minetest.get_node(flame_pos).name == "air" or - is_tnt or is_gunpowder then - local player_name = user:get_player_name() - if not minetest.is_protected(flame_pos, player_name) then - if is_coalblock then - minetest.set_node(flame_pos, - {name = "fire:permanent_flame"}) - elseif is_tnt then - minetest.set_node(flame_pos, - {name = "tnt:tnt_burning"}) - elseif is_gunpowder then - minetest.set_node(flame_pos, - {name = "tnt:gunpowder_burning"}) - else - minetest.set_node(flame_pos, - {name = "fire:basic_flame"}) - end - else - minetest.chat_send_player(player_name, "This area is protected") - end - end + local nodedef = minetest.registered_nodes[node_under] + if not nodedef then + return + end + local player_name = user:get_player_name() + if minetest.is_protected(pt.under, player_name) then + minetest.chat_send_player(player_name, "This area is protected") + return + end + if nodedef.on_ignite then + nodedef.on_ignite(pt.under, user) + elseif minetest.get_item_group(node_under, "flammable") >= 1 + and minetest.get_node(pt.above).name == "air" then + minetest.set_node(pt.above, {name = "fire:basic_flame"}) end end if not minetest.setting_getbool("creative_mode") then @@ -153,9 +135,14 @@ minetest.override_item("default:coalblock", { minetest.remove_node(pos) end end, + on_ignite = function(pos, igniter) + local flame_pos = {x = pos.x, y = pos.y + 1, z = pos.z} + if minetest.get_node(flame_pos).name == "air" then + minetest.set_node(flame_pos, {name = "fire:permanent_flame"}) + end + end, }) - -- Get sound area of position fire.D = 6 -- size of sound areas diff --git a/mods/tnt/init.lua b/mods/tnt/init.lua index 4142be78..0c447f95 100644 --- a/mods/tnt/init.lua +++ b/mods/tnt/init.lua @@ -418,7 +418,10 @@ minetest.register_node("tnt:gunpowder", { end, on_burn = function(pos) minetest.set_node(pos, {name = "tnt:gunpowder_burning"}) - end + end, + on_ignite = function(pos, igniter) + minetest.set_node(pos, {name = "tnt:gunpowder_burning"}) + end, }) minetest.register_node("tnt:gunpowder_burning", { @@ -563,7 +566,10 @@ function tnt.register_tnt(def) }, on_burn = function(pos) minetest.set_node(pos, {name = name .. "_burning"}) - end + end, + on_ignite = function(pos, igniter) + minetest.set_node(pos, {name = name .. "_burning"}) + end, }) end From 5868274b002998341b965bb98dd9499d3d6d7b75 Mon Sep 17 00:00:00 2001 From: Rui Date: Sat, 5 Nov 2016 11:58:13 +0900 Subject: [PATCH 51/99] Creative: Fix crash when turning on creative in-game --- mods/creative/init.lua | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/mods/creative/init.lua b/mods/creative/init.lua index 24cd673b..d90426da 100644 --- a/mods/creative/init.lua +++ b/mods/creative/init.lua @@ -173,6 +173,13 @@ minetest.register_on_player_receive_fields(function(player, formname, fields) local player_name = player:get_player_name() local inv = player_inventory[player_name] + -- If creative is turned on mid game + if not inv then + creative.init_creative_inventory(player) + creative.set_creative_formspec(player, 0) + return + end + if fields.quit then if inv.tab_id == 1 then creative.set_crafting_formspec(player) From 3109f38b3c3cccc560d193665a68a13152206901 Mon Sep 17 00:00:00 2001 From: Wuzzy Date: Sun, 6 Nov 2016 00:49:25 +0100 Subject: [PATCH 52/99] Sethome: Don't auto-grant home priv to singleplayer --- mods/sethome/init.lua | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) diff --git a/mods/sethome/init.lua b/mods/sethome/init.lua index 28bfcef6..dc431bc7 100644 --- a/mods/sethome/init.lua +++ b/mods/sethome/init.lua @@ -58,7 +58,10 @@ sethome.go = function(name) return false end -minetest.register_privilege("home", "Can use /sethome and /home") +minetest.register_privilege("home", { + description = "Can use /sethome and /home", + give_to_singleplayer = false +}) minetest.register_chatcommand("home", { description = "Teleport you to your home point", From 6e00ddee2ae21490efbe7723a946b68715ac7a07 Mon Sep 17 00:00:00 2001 From: Wuzzy Date: Sun, 6 Nov 2016 15:54:55 +0100 Subject: [PATCH 53/99] Default, vessels: Darken shelf empty slot icons Rename slot icons. --- mods/default/README.txt | 2 +- mods/default/nodes.lua | 2 +- mods/default/textures/default_book_slot.png | Bin 204 -> 0 bytes mods/default/textures/default_bookshelf_slot.png | Bin 0 -> 216 bytes mods/vessels/README.txt | 2 +- mods/vessels/init.lua | 4 ++-- .../textures/vessels_glass_bottle_slot.png | Bin 196 -> 0 bytes mods/vessels/textures/vessels_shelf_slot.png | Bin 0 -> 201 bytes 8 files changed, 5 insertions(+), 5 deletions(-) delete mode 100644 mods/default/textures/default_book_slot.png create mode 100644 mods/default/textures/default_bookshelf_slot.png delete mode 100644 mods/vessels/textures/vessels_glass_bottle_slot.png create mode 100644 mods/vessels/textures/vessels_shelf_slot.png diff --git a/mods/default/README.txt b/mods/default/README.txt index 6b26234c..d7fede08 100644 --- a/mods/default/README.txt +++ b/mods/default/README.txt @@ -141,7 +141,7 @@ BlockMen (CC BY-SA 3.0): gui_*.png Wuzzy (CC BY-SA 3.0): - default_book_slot.png (based on default_book.png) + default_bookshelf_slot.png (based on default_book.png) sofar (CC BY-SA 3.0): default_book_written.png, based on default_book.png diff --git a/mods/default/nodes.lua b/mods/default/nodes.lua index 222df92c..9fbf30f3 100644 --- a/mods/default/nodes.lua +++ b/mods/default/nodes.lua @@ -1817,7 +1817,7 @@ for i = 1, 16 do by = by + 1 end bookshelf_formspec = bookshelf_formspec .. - "image["..bx..","..by..";1,1;default_book_slot.png]" + "image[" .. bx .. "," .. by .. ";1,1;default_bookshelf_slot.png]" bx = bx + 1 end diff --git a/mods/default/textures/default_book_slot.png b/mods/default/textures/default_book_slot.png deleted file mode 100644 index 20b4ef844b354736afec5779f60c57eb9724a889..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 204 zcmeAS@N?(olHy`uVBq!ia0vp^0zfRt$P6UkCGKknQjEnx?oJHr&dIz4a@YcVLR^7# zLqo%)%$+JA>5?G7UYh7ML)4Eal|aXmSqp@E&}3=@xy91oi&PoEnP`z;AE4?`c1qz^gC m0h1F1JQ5z{BqTIzu`(Q*$nN{BWt}xpH-o3EpUXO@geCyKmoeD@ diff --git a/mods/default/textures/default_bookshelf_slot.png b/mods/default/textures/default_bookshelf_slot.png new file mode 100644 index 0000000000000000000000000000000000000000..31c4eb5e6e25b208782e7ec11c8b527a125ebb02 GIT binary patch literal 216 zcmeAS@N?(olHy`uVBq!ia0vp^0zfRt!3-oH7vA{>q!^2X+?^QKos)S9~bp9zYIffk$L90|U1(2s1Lwnj--eWH0gb zb!C6R&BkZK>iPBST%eGhr;B5V#O34!1t|j~qeVrIENs&SJGmDg(9sarV>0d*T-YUe zQo~JU^8+!(*C{D3M*N8~o5Wf;Rvo^$^9Lh?f)a!IS@r3CK$93eUHx3vIVCg!0H38d ATmS$7 literal 0 HcmV?d00001 diff --git a/mods/vessels/README.txt b/mods/vessels/README.txt index e9f01b84..5bb798c8 100644 --- a/mods/vessels/README.txt +++ b/mods/vessels/README.txt @@ -19,4 +19,4 @@ The following textures were modified by Thomas-S (CC BY-SA 3.0): vessels_steel_bottle.png The following texture was created by Wuzzy (CC BY-SA 3.0): - vessels_glass_bottle_slot.png (based on vessels_glass_bottle.png) + vessels_shelf_slot.png (based on vessels_glass_bottle.png) diff --git a/mods/vessels/init.lua b/mods/vessels/init.lua index 64ad66eb..c243bc09 100644 --- a/mods/vessels/init.lua +++ b/mods/vessels/init.lua @@ -15,13 +15,13 @@ local vessels_shelf_formspec = -- Inventory slots overlay local vx, vy = 0, 0.3 -for i = 1,16 do +for i = 1, 16 do if i == 9 then vx = 0 vy = vy + 1 end vessels_shelf_formspec = vessels_shelf_formspec .. - "image["..vx..","..vy..";1,1;vessels_glass_bottle_slot.png]" + "image[" .. vx .. "," .. vy .. ";1,1;vessels_shelf_slot.png]" vx = vx + 1 end diff --git a/mods/vessels/textures/vessels_glass_bottle_slot.png b/mods/vessels/textures/vessels_glass_bottle_slot.png deleted file mode 100644 index 63cf7952f9b5d662ef92709481951b567d87c6a9..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 196 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!D3?x-;bCrM;V{wqX6T`Z5GB1G~wg8_HS0LTc z&@d@;rwT~AB*-tA!Qt7BG!Q4r+uensgH_f8$l)yTh%9Dc;1&j9Muu5)B!GhKC7!;n z><_r41w|})3hqw?3Tb(|IEHXsPfl=P>fz;i!!I#|-@w4KL7;|0{k;OXk;vd$@?2>|sqD)0aR diff --git a/mods/vessels/textures/vessels_shelf_slot.png b/mods/vessels/textures/vessels_shelf_slot.png new file mode 100644 index 0000000000000000000000000000000000000000..ff29082a0371748e6eb0bd656141466790085dba GIT binary patch literal 201 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!63?wyl`GbKJV{wqX6T`Z5GB1G~wg8_HS0Eh_ z5Fo)l`#wmzB*-tA!Qt7BG!Q4r+uensgH_f8$l)yTh%9Dc;1&j9Muu5)B!GhKC7!;n z><_rv_>5J&?iRBEh4ejL977~7CnqeBOGt5f+{CbpW0jD>A>{)c>JOM!cu8EGYM|74 ji1or(g9XvdgTe~DWM4f4mvQ) literal 0 HcmV?d00001 From 614e9cfe8d870d83c7289d697f65979249c769f3 Mon Sep 17 00:00:00 2001 From: paramat Date: Tue, 8 Nov 2016 16:38:26 +0000 Subject: [PATCH 54/99] Default: Make snow walkable again --- mods/default/nodes.lua | 1 - 1 file changed, 1 deletion(-) diff --git a/mods/default/nodes.lua b/mods/default/nodes.lua index 9fbf30f3..bb3dfc8c 100644 --- a/mods/default/nodes.lua +++ b/mods/default/nodes.lua @@ -442,7 +442,6 @@ minetest.register_node("default:snow", { paramtype = "light", buildable_to = true, floodable = true, - walkable = false, drawtype = "nodebox", node_box = { type = "fixed", From ddea6c431e2cc3d65318a1543cf153cee4058f9e Mon Sep 17 00:00:00 2001 From: paramat Date: Tue, 8 Nov 2016 17:30:58 +0000 Subject: [PATCH 55/99] Default: Make snowblock change 'dirt with grass' below To be consistent with the snow slab. --- mods/default/nodes.lua | 7 +++++++ 1 file changed, 7 insertions(+) diff --git a/mods/default/nodes.lua b/mods/default/nodes.lua index bb3dfc8c..77dc6c48 100644 --- a/mods/default/nodes.lua +++ b/mods/default/nodes.lua @@ -473,6 +473,13 @@ minetest.register_node("default:snowblock", { dug = {name = "default_snow_footstep", gain = 0.2}, dig = {name = "default_snow_footstep", gain = 0.2} }), + + on_construct = function(pos) + pos.y = pos.y - 1 + if minetest.get_node(pos).name == "default:dirt_with_grass" then + minetest.set_node(pos, {name = "default:dirt_with_snow"}) + end + end, }) minetest.register_node("default:ice", { From f8bc1e17149a087c7f375c6ae5d0bf398c0abb78 Mon Sep 17 00:00:00 2001 From: paramat Date: Thu, 10 Nov 2016 03:52:03 +0000 Subject: [PATCH 56/99] Nyancat: Make nyancat and rainbow light sources --- mods/nyancat/init.lua | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/mods/nyancat/init.lua b/mods/nyancat/init.lua index 677ed50a..7192beb8 100644 --- a/mods/nyancat/init.lua +++ b/mods/nyancat/init.lua @@ -2,6 +2,8 @@ minetest.register_node("nyancat:nyancat", { description = "Nyan Cat", tiles = {"nyancat_side.png", "nyancat_side.png", "nyancat_side.png", "nyancat_side.png", "nyancat_back.png", "nyancat_front.png"}, + paramtype = "light", + light_source = default.LIGHT_MAX, paramtype2 = "facedir", groups = {cracky = 2}, is_ground_content = false, @@ -16,6 +18,8 @@ minetest.register_node("nyancat:nyancat_rainbow", { "nyancat_rainbow.png^[transformR90", "nyancat_rainbow.png" }, + paramtype = "light", + light_source = default.LIGHT_MAX, paramtype2 = "facedir", groups = {cracky = 2}, is_ground_content = false, From 7fbf25d6ca96c32ba8642e23fa2560031766206e Mon Sep 17 00:00:00 2001 From: sfan5 Date: Sun, 6 Nov 2016 21:36:36 +0100 Subject: [PATCH 57/99] Do not show item overlay if slot is occupied by item (bookshelf, vessels shelf) --- mods/default/nodes.lua | 33 +++++++++++++++++++++++---------- mods/vessels/init.lua | 33 +++++++++++++++++++++++---------- 2 files changed, 46 insertions(+), 20 deletions(-) diff --git a/mods/default/nodes.lua b/mods/default/nodes.lua index 77dc6c48..ebd1e5d7 100644 --- a/mods/default/nodes.lua +++ b/mods/default/nodes.lua @@ -1815,16 +1815,23 @@ local bookshelf_formspec = "listring[current_player;main]" .. default.get_hotbar_bg(0,2.85) --- Inventory slots overlay -local bx, by = 0, 0.3 -for i = 1, 16 do - if i == 9 then - bx = 0 - by = by + 1 +local function get_bookshelf_formspec(inv) + local formspec = bookshelf_formspec + local invlist = inv and inv:get_list("books") + -- Inventory slots overlay + local bx, by = 0, 0.3 + for i = 1, 16 do + if i == 9 then + bx = 0 + by = by + 1 + end + if not invlist or invlist[i]:is_empty() then + formspec = formspec .. + "image[" .. bx .. "," .. by .. ";1,1;default_bookshelf_slot.png]" + end + bx = bx + 1 end - bookshelf_formspec = bookshelf_formspec .. - "image[" .. bx .. "," .. by .. ";1,1;default_bookshelf_slot.png]" - bx = bx + 1 + return formspec end minetest.register_node("default:bookshelf", { @@ -1838,7 +1845,7 @@ minetest.register_node("default:bookshelf", { on_construct = function(pos) local meta = minetest.get_meta(pos) - meta:set_string("formspec", bookshelf_formspec) + meta:set_string("formspec", get_bookshelf_formspec(nil)) local inv = meta:get_inventory() inv:set_size("books", 8 * 2) end, @@ -1855,14 +1862,20 @@ minetest.register_node("default:bookshelf", { on_metadata_inventory_move = function(pos, from_list, from_index, to_list, to_index, count, player) minetest.log("action", player:get_player_name() .. " moves stuff in bookshelf at " .. minetest.pos_to_string(pos)) + local meta = minetest.get_meta(pos) + meta:set_string("formspec", get_bookshelf_formspec(meta:get_inventory())) end, on_metadata_inventory_put = function(pos, listname, index, stack, player) minetest.log("action", player:get_player_name() .. " moves stuff to bookshelf at " .. minetest.pos_to_string(pos)) + local meta = minetest.get_meta(pos) + meta:set_string("formspec", get_bookshelf_formspec(meta:get_inventory())) end, on_metadata_inventory_take = function(pos, listname, index, stack, player) minetest.log("action", player:get_player_name() .. " takes stuff from bookshelf at " .. minetest.pos_to_string(pos)) + local meta = minetest.get_meta(pos) + meta:set_string("formspec", get_bookshelf_formspec(meta:get_inventory())) end, on_blast = function(pos) local drops = {} diff --git a/mods/vessels/init.lua b/mods/vessels/init.lua index c243bc09..688413f2 100644 --- a/mods/vessels/init.lua +++ b/mods/vessels/init.lua @@ -13,16 +13,23 @@ local vessels_shelf_formspec = "listring[current_player;main]" .. default.get_hotbar_bg(0, 2.85) --- Inventory slots overlay -local vx, vy = 0, 0.3 -for i = 1, 16 do - if i == 9 then - vx = 0 - vy = vy + 1 +local function get_vessels_shelf_formspec(inv) + local formspec = vessels_shelf_formspec + local invlist = inv and inv:get_list("vessels") + -- Inventory slots overlay + local vx, vy = 0, 0.3 + for i = 1, 16 do + if i == 9 then + vx = 0 + vy = vy + 1 + end + if not invlist or invlist[i]:is_empty() then + formspec = formspec .. + "image[" .. vx .. "," .. vy .. ";1,1;vessels_shelf_slot.png]" + end + vx = vx + 1 end - vessels_shelf_formspec = vessels_shelf_formspec .. - "image[" .. vx .. "," .. vy .. ";1,1;vessels_shelf_slot.png]" - vx = vx + 1 + return formspec end minetest.register_node("vessels:shelf", { @@ -36,7 +43,7 @@ minetest.register_node("vessels:shelf", { on_construct = function(pos) local meta = minetest.get_meta(pos) - meta:set_string("formspec", vessels_shelf_formspec) + meta:set_string("formspec", get_vessels_shelf_formspec(nil)) local inv = meta:get_inventory() inv:set_size("vessels", 8 * 2) end, @@ -53,14 +60,20 @@ minetest.register_node("vessels:shelf", { on_metadata_inventory_move = function(pos, from_list, from_index, to_list, to_index, count, player) minetest.log("action", player:get_player_name() .. " moves stuff in vessels shelf at ".. minetest.pos_to_string(pos)) + local meta = minetest.get_meta(pos) + meta:set_string("formspec", get_vessels_shelf_formspec(meta:get_inventory())) end, on_metadata_inventory_put = function(pos, listname, index, stack, player) minetest.log("action", player:get_player_name() .. " moves stuff to vessels shelf at ".. minetest.pos_to_string(pos)) + local meta = minetest.get_meta(pos) + meta:set_string("formspec", get_vessels_shelf_formspec(meta:get_inventory())) end, on_metadata_inventory_take = function(pos, listname, index, stack, player) minetest.log("action", player:get_player_name() .. " takes stuff from vessels shelf at ".. minetest.pos_to_string(pos)) + local meta = minetest.get_meta(pos) + meta:set_string("formspec", get_vessels_shelf_formspec(meta:get_inventory())) end, on_blast = function(pos) local drops = {} From af3c91862cd1ca0ee5865845ea5ddeab3b9f680a Mon Sep 17 00:00:00 2001 From: Auke Kok Date: Mon, 7 Nov 2016 11:26:28 -0800 Subject: [PATCH 58/99] Convert many textures to indexed color This fixes all cases where the color profile was broken, and libpng warns about. It also makes almost all textures indexed instead of RGB where possible (textures that don't have semi-transparent pixels). --- .../textures/default_acacia_bush_stem.png | Bin 476 -> 3959 bytes .../textures/default_acacia_leaves.png | Bin 444 -> 4100 bytes .../textures/default_acacia_leaves_simple.png | Bin 688 -> 4530 bytes .../textures/default_acacia_sapling.png | Bin 359 -> 3773 bytes .../textures/default_acacia_tree_top.png | Bin 639 -> 5010 bytes .../default/textures/default_aspen_leaves.png | Bin 761 -> 4658 bytes .../textures/default_aspen_sapling.png | Bin 320 -> 4119 bytes mods/default/textures/default_aspen_tree.png | Bin 695 -> 4429 bytes mods/default/textures/default_aspen_wood.png | Bin 373 -> 4023 bytes mods/default/textures/default_bush_stem.png | Bin 428 -> 3954 bytes .../textures/default_desert_stone_block.png | Bin 527 -> 4368 bytes .../textures/default_desert_stone_brick.png | Bin 552 -> 4420 bytes .../textures/default_fence_aspen_wood.png | Bin 450 -> 4170 bytes mods/default/textures/default_flint.png | Bin 3038 -> 3729 bytes mods/default/textures/default_grass_1.png | Bin 2944 -> 3643 bytes mods/default/textures/default_grass_2.png | Bin 2980 -> 3695 bytes mods/default/textures/default_grass_3.png | Bin 3065 -> 3832 bytes mods/default/textures/default_grass_4.png | Bin 3134 -> 4093 bytes mods/default/textures/default_grass_5.png | Bin 3269 -> 4376 bytes mods/default/textures/default_gravel.png | Bin 3570 -> 4715 bytes mods/default/textures/default_ice.png | Bin 3046 -> 4114 bytes .../textures/default_jungleleaves_simple.png | Bin 417 -> 3899 bytes mods/default/textures/default_jungletree.png | Bin 736 -> 5592 bytes .../textures/default_jungletree_top.png | Bin 823 -> 5175 bytes .../default/textures/default_ladder_steel.png | Bin 3223 -> 4021 bytes mods/default/textures/default_lava.png | Bin 685 -> 5706 bytes mods/default/textures/default_meselamp.png | Bin 3399 -> 5103 bytes .../textures/default_obsidian_block.png | Bin 336 -> 3913 bytes .../default_obsidian_glass_detail.png | Bin 1167 -> 3504 bytes .../textures/default_obsidian_shard.png | Bin 110 -> 3581 bytes .../textures/default_sandstone_block.png | Bin 637 -> 4548 bytes mods/default/textures/default_sign_steel.png | Bin 3173 -> 3921 bytes .../textures/default_sign_wall_steel.png | Bin 3187 -> 4035 bytes .../textures/default_sign_wall_wood.png | Bin 3391 -> 4518 bytes mods/default/textures/default_sign_wood.png | Bin 3406 -> 4374 bytes mods/default/textures/default_silver_sand.png | Bin 527 -> 4069 bytes mods/default/textures/default_snow.png | Bin 3310 -> 4577 bytes mods/default/textures/default_snowball.png | Bin 3102 -> 3826 bytes mods/default/textures/default_stone_brick.png | Bin 545 -> 4196 bytes .../default/textures/gui_furnace_arrow_fg.png | Bin 251 -> 3463 bytes mods/default/textures/heart.png | Bin 14830 -> 5113 bytes mods/default/textures/player.png | Bin 142 -> 4160 bytes mods/doors/textures/doors_door_glass.png | Bin 3064 -> 8220 bytes .../textures/doors_door_obsidian_glass.png | Bin 2988 -> 5290 bytes mods/farming/textures/farming_cotton.png | Bin 166 -> 3844 bytes mods/fire/textures/fire_flint_steel.png | Bin 3108 -> 3837 bytes mods/flowers/textures/flowers_waterlily.png | Bin 3363 -> 4323 bytes mods/xpanes/textures/xpanes_bar_top.png | Bin 224 -> 3516 bytes mods/xpanes/textures/xpanes_pane_half.png | Bin 83 -> 3424 bytes mods/xpanes/textures/xpanes_space.png | Bin 149 -> 4274 bytes mods/xpanes/textures/xpanes_white.png | Bin 148 -> 3496 bytes 51 files changed, 0 insertions(+), 0 deletions(-) diff --git a/mods/default/textures/default_acacia_bush_stem.png b/mods/default/textures/default_acacia_bush_stem.png index 290391526e7bb902bb49076399868d936f0f073e..ca22d759cf3b07825b7faba1ca6ef246612672d2 100644 GIT binary patch literal 3959 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!63?wyl`GXl4SQM*5B1(c1%M}WW^3yVNQWZ)n z3sMzQD>Bm<7%FbP4bPo)TY=~AdCe*o6-B$g=7VRxu-VqhOUyYk`^_@zzn5nolU6?M zB>(&!kg%X?``Em!>YWbe`As?#l;JHGvp(T+4f_xX_CL&yAc(mYcWrar#( z{<59(`t7_2egA%2VZPAEzR)Ua-g4)c6D1FsO`g-&!f$&vd-Ah=Z{D4n8P9q6XlBjc zGRB0E)}R|7^f=>f7jYN~=u4&_l8nCTH`Apc&GY<5;!=f|JHj=Tic}+v4oW5-Z$E4kT=(2UcI&n1IVX+@Yd<-vKOdW&lXv-Seqwj@ts=+YBH>$p2zlwOd~zyOOYZ-x zYy;D4A)o!MqcY2PzpLY~zH@n=bk$nVV&B>M3y)5VvWuL(#%`0F_%ploUbXDGhURY$ z^_s45j?i1tFZ^~+qhT4#G3Rs!-m`O!rB7PEJ5zctC&@GyYY5T{k_zT~)03^@Sa+UiHbdmp**{a)Xxs z-@BV`rkU+prEC_T`gzGT)}7lPvc0!hnr3_?V%pAqO>=JDd3RaMVC|6~EY(v}uituB z=JP>vp^oU)?D@Rc+ZS&+baK@N|LNN$!teK0J`1xlIIjH2|9$%E(4EW=R{y#fl=k(? zsRMDVV|u-~1?N9sJL9&JeYo-2%c7^OS8umEvM0+lZnodQ&rXq-KfPJ*{C@6Cxi`8W zp9Y8D*t6G=|4j3vIn0}{zdOyz?Yf;QN87c(`q_?|PlcTQou2GXOxQPrPnl=_-aTy7 z`ooLPdPUry$9O*cb4rBH{hH3INhPzM6>nShbMnqVH?!h=A4jLxzG13-bhbuJ&1BE9 z2l4)&rHd}k=x5^bX#2POx92bJZ|IU54whr{vuisyk!uN*p*Yv|fMJDQ-hKk?Xt< z(jplcII}W=B~yg2k5zJhu3lnFep0GlMQ#Dm6$}hE_7w$*$=RtT3Q4KynR&KK?|1K4 zQpilPRSGxtHSjHPPR+>ls47YguJQ{>uF6ifOi{A8^~=l4^~#O)@{7{-4J|D#^$m>ljf`}GDs+o0^GXscbn}XpK}JB#a7isr zE&>K!W`3Rm$jro~{L&IzB_*J|0@U!7WVqP{rA0YllT(uQQ*%;tQ}arS^$qn5^}*^> zlC9kGi*gfz`ZIGA(^K^e^3s*`L9W$@Iv41BeYp2QZlFCFwS=TF9u2P1;36pmNK!nS zx<-SGq!1uU@o4HATEWGIXh5ar0b5Pwz~&Ld{{{zO(<(W@C&X1)fY-;_#@E%}*UjGF z&EC)5!Qb6J07!Z`26#9GcsK=lI0bq-2YNXNdAWpmyM_3Ag!p-c_l> zcT|W^bckKmgcBiOExxmbc8nkosr5;Zf! uUH&@i>(j2y+~;`y%&LFpzgoXWWwPfBvw0u07Tg1L2!p4qpUXO@geCxiyDGZ? delta 435 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 delta 404 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 t4R}@)IN*hxF0O8n$slB~ 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 Rq)-3=002ovPDHLkV1jxNj?Vx9 diff --git a/mods/default/textures/default_acacia_tree_top.png b/mods/default/textures/default_acacia_tree_top.png index d6f0637ca8f3cc5ea3c2a9fe15d83707e15325b1..a8a0ce05b4f43a0c43f6a9cfe0c494fc0686a8a9 100644 GIT binary patch literal 5010 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 Fe*qbcH4Fd% delta 599 zcmV-d0;v6xC;tSH83+OZ005AYXf~5^5+8pG8U_R>YHt#y0006WNkl$@J8#rL z6ov1M$7_3%S?4i^%`RCf0ucccJ)-7+01Xv%P^O@wgdQnBBn1*R5|NOI00H75lE}lx z#$G?>Nij>3f?J(?r8}c@?uQ;dxC{SE5&(F5?~ZSDQxVE^QvrX# zd2zbDv%5#UdiU`8ub8Hc*cpyg>EVngtM;&-@ZWBhF~#FHCbIjQ4(Ne z9n^2%2P2wNCUQY|#tCK6Nkfp;x;TIMzH;S~Ixbby6HBy_bUH=|d4~Y7_`xYx&RsNX zT8S76lbhQJq3-ugeJl06Mg#%2gfgCS>^-Qm%GOajPAPzH<gS;rg_`#mf$3T; zt!^rj3+w}~Tlm<;U0IU^_eaOp+8>_|+qSiR2LM({tE_(-i(C-OD6w0pkD`C*q)-^+ zWG$I&q#*==2S)ZrIcJPNBJpkzLY)S!b*q$ZZ9j8GhfiF1EyGT!rq)Xuh)>Di(rT@( zHBCRA#Ma>DWt+SYA9qQJJ+ z$vQntiBR@JI9W+4?S#Q7h9pC96l}U0ZC*|XqoH%|&Hl{Oxj^ID%g5)*TYyQ~>2N~X lndzO~z5lX(3if%t{{l{WK-J4`28;jz002ovPDHLkV1hJY6DI%w diff --git a/mods/default/textures/default_aspen_leaves.png b/mods/default/textures/default_aspen_leaves.png index 17a708d1783819a4acdd09e730a2c1a9698dd686..ee1eefe2826c9d0aee0bf2695fa65e365321be7b 100644 GIT binary patch literal 4658 zcmeHLX*8SL8jj+atEFz0MkB;b3^61`s4-?q3^7L%ks?VY1m_srUa1a8kD-D?&80=F z=xI^PX=x2Ts3H*X0DwZ(?boSR`6* zur@A`=2tXZ<5mOi_ILX~HpIF>9Bz_?j&wA9&@-&6!^E=SR(dPNz!LO{3%d z4v#M96?SD!O26R#_z|$CguHRfZhlo(oOsGjRQf#5?OkTexFia1o{O>snU*HDPu)-~ zt1_qq2CfS@3YS^`>MxU5i!H$AcdGz4$(f;0`GNImI^|Qnti)!Da zZD`LV-=W(P`wpo$ym}~}WB{E|&!AZvNSyw|!-YK4LfgnS-MZi_@&oyP;en8wG1smh zub+rMM@f%QTfW@_(}?u~a6^(l^HrUtqpdpb>8<~WD2byX(t zy=N%LpfZn$*4tLqEYHI{t|kra*L8{R8Jx>z>IvIR;0|Bc%ky-aU#_Xg*jz9k4sf>l z1bbP2<{$ni?&J(i#$+c;BlC+AR_9A4s#)94b&Lnvf!kVwcT6VU+StpVEWhM%2aoke z;mbsr?UW1IO^@<|H~u_l%pqE6g*VG`3sViYgdWb40Al@FMg=`T7WKIfM1~zYqwlN2 zonz&nPqj`y*n6d*-7n-m(`3GE-A!w<{Lt1cKkj8_&_ug( zQ|h@yRcBMb$*fI&yTyre*`g^Ee6h2js-az{C@r~6;qv*>M#B+(m^*w;S?zji+e^&l zhQglBT8Tq78gkPv3yGiN)5`}k7w3b`zyx^BzJ!G>OBJKvugggxf2zK%o3nXPcls4B z2rE-jDVQ-XiAdA7M|y|fd%jb0O0nUm%E$ZnkBcjX?Kiu6df5PVF})V3aX0NEd9?%j zR~#kOGdI$QJ2`d~LYCFZse!c;3VX$LCX|2-?91kNxJCzVn+{~@$w`qj?^nHR!;;@v zU10A-gft18K5mu@a0re=lOLc&da`;_+p*Iah}X$%r=y(%QiVBT0|hx1`NK;;yCq7od$%vaBinn$eE%7HEBtBE zY3%(>S*zA@u3^ggwu=o3tdFIIiaXx-uLax%hip_#s%3S4#ILQ<7yGM6v+$hi;`;S+ zIxPd^Y(`%x?{s6nPj5u1<^#7n-dJY%dA7@P=(&;o3Z96z`Qh$9pNymVUDbQpja}xj zO~C<)cYzfa=5w!5EMm#zfyk$meM>Fe$u>#<#zC#8cy4p1A*;ma4O3iY9AiVCsuw6CbA-ZsvsK$CfCO)cIRpc|Je)6ek{3K1*}mdO9i# z=-2CYt!kRjn8_HDp|T0rghrp=o0}yP5x3T*)AIMh}q47J@hf89rMzJ%0^73{6_`7pyXxyRxk) z3LE(4P_9rFZ(|SnuRA)G!6Nc^bfnWAsT3>8*G9rBsy811UuVKtJ~!G$FLmTXlA~+Q zNfCbtXAPXH*7@s3qer)f`HYAB)-O4VZMM1;(;r%;*FTrmSm<9qG?0(sNCN<3C#byB z!`IaXL8M3N5lHkyVV1bHb5Qq_E7ATZVq0*4xwU%};h)P0&eT-f8T^Tmy zaH?ZMG#Q)Vh9f3K5aA>+%2M1S4#6XcBC`mfxTr`P6A_05f8j;&`g}JO4Ehqnia>&W zT|GcH^k^~&rU%p0*R_kI#u|bx#X%O)q%Z`=*8VF6Z-fMgvserS6v}3^_1H#w^k@py z01k&k^$nqhhPu26U1mIuMTpa-F;(~!|K_kIGl|hW<*0NTh|fs~rN^+4U@-4F=qovi z_%}BrCOYy9Gl>W#N0Ot+G!_$Tpl1O65>Fx`?CH@_1m649C<28HWzZ;KC_h{1*K~Qa zhyFc%eh&Zp>-$H(N#pNweV6N-6!@m#@2l&(T;HU?HwAxRUH@NliT|g7BGY(P6Ps5a z0rpa?000364;P%>o&mtn`3TGz2y;0Kb5Szp!S#r-E6{`occ7^|5YDq6N(c`nGtXmi zK9tQcAUFnu-~()q0a@^XJ!XMbMq-sw*kk56umw&Pi36i>N|s(KR$j-D-l~>-sG)e) z2ZHi}So*4>d{wRZP_y<`wf5CGj#szEtJwHy*!ij1`Wf2#tK0iS?EE!t1GMY{H0%S^ z>;kkL0@NJ%eI5G%n0=ron(u)*2C6#-YB~mLqXRV^g0x%$VCWzX#~?k&V5n2Drc1D{ zbBLO2u&GN3%sIr&B~;&?#DfWj2=^dsdXfw=WMeGZ$TLhI8wSHsOufQQys75+2zVgf zJl!WfiC2IMurO{|fYrha-k%JBK&Z2WEr25obmR@h7>;-*03adDZvue)LV2E3goSps z6PcC}k(H9$I*k(MxhB!J);RegyPv71T_Fd~9IIG{l*(L4tRB-oajsmewd4Y%8Pk}% zw`b~-Hk*`ZPFd)SU+uWx4`jKeIQ<5Zt7i;Wnt>-Z%rj< z>b&<(J=2}dN4r98Gi-<001BJ|6u?C0>DW`K~y-)g_7NC9Ay;7e`j{)o!!Y!HrrNd ziPa!&YEdLew6sVr6xM)|&{QI7A|fIFMc!zUVk3=Sv=mw}MT{R{r55Rx{ji`nrKXbI z?8ofR&b%|ni#1DC(C6xWan9j+9s#JmeOQfK1o63a=DGl!Tz`2^quAlf+8_s*S)A0O zUm!^{zFxm001iMd9$WPtvMgeLQ>S2?dN`L54t?Z>8HOaI3p z^W^wA=RUY9bMH-QeW%6V@DXC$!e%K7^x}lkazK{pz(@caYjMv4yQAfVZf@Cu5|uS}`6MJ}KDVPN6aDZTLFjeimP{A&mF;Qq&m zlMZ>F)9YuX*5Wi;U6Q0e9K5%+&5H{YdSYQhcWWmWCe-*P&VTfyl!HBp2>U7(_E!%K zNSs+bq;bEGwU(0ald0l44xTZLKe~@U>UE-i%4K(--<7$gX>G?3aNK~+^;_Zq1inX} zDL-AlFJq$yi|+|r^*Udiy(uL#pev?JhM{Pnw)BirTRy70Qtmo(cKL|D{MJ)? eZ2q9~Kll^h!$=R0dLFR=0000Ko*T*i?W1OOeBCnAgp2_EDAOu6qtl8gv10CT0mK}RWQ&j z283ahO|fSb6hQ?)BF?HC9>Yk#rJT|k-g_#K&pk;aDg&8@EJOl}K) zXHts^5?>mPCZ2u>L(WYc&|ehU3Gct$sr+R!u5lcWxzD(K_mTQ+YrNyxx>eCTVJ#bX z8`h=&slF*V_Sw0sqiUN)b5GfO`e)paQQKFDbISAejL6+33Zt+i1IfdN%xnPR2#4)! zdYam{QlVA2z4>PR>#DcnnW{eV)UiLl40j>hO9?2#;^76c?OZBzOTy(N2N#E7c^xZb zb4@~;l}-tE!rk+OAFsdc!j4FUOd}>G=0H=yN7e3`SS|L+bYye>wV~KgZ(GuKeA=6- ziPY@w_$T?~smwk12it;il6d%nR8IWYsHZ4)=T)u zDlWMn-yY!zRz~k`IAiW4X_*)^8h>DUx%i=;%|#6u%Bp7H*z8nnoqF`EACDtYn9>VK zS+$>xH>P$HYMOq-g-Sk+FZXF?^{WBuR92!z+BnH>zl!^)WsE`6Hsmq5)oYbSKx)&l z3;Vd2yaG4tbziRdjdp8OrB*o%wc((l3}P2N^Z_RAqBhdpPmjb$pVvEm%FS*21HB!W zBoSwK;zo1zOC{GMT8YUnNUwZK&kc=(4scbEUkb|evXh94&gyNZ8v7qNy6zs??uwr- zPSv@DKE}90_I*OB?D_rH$&~jm$*ooN>;8Db3G%s+xVN>;n}=k>SSL27{%kefNi7NP z-qqvEn020{F>aK5g?-e{nd+3V`=}oRke@QO#`OG`nlSR7_sDH5S;UA;T#_=w7 zh3>kbZFc*;nUT6N{j^_~+671kDz9VGuOxv|xKu3N-M{Nz(~!g9FdyH4rYwNT93nGq zD~WfW77ku4Lb~uCbuIhYu`JN z8tybjuNcl$@TcyGuD7`+)Oz;Oi&15gk0DQP_c)IaR(I!mh>fQImJJ%*g-0`9&Yn@q zT%yF=84o6pBw$tCQ_#=G+z)s5&ZqQPydqBwo_`atU>Nk|Cxf)deadYI0+uh_d8M%6 z(Oa*N$p)?Gi?7~N))weEz448ny!koJR9tYa#+!6;o+@Ya?!@san-`gz?Dxn{F3PVi zS}jjauE>2*Xt3NAL~eo78uh>CGdh<~TgzvJ^hQL3*$>jIg=pR9vev)htL?wcb$y{2 zF=QO^4pmDEbPs-GQH(|Qn2Cp?V75srwTbI@rRGQ z3FtsCACwb^2coP@txU~Kh$8wC3$z^^Wy=eXz>}R_zEMCU0{SqY&&6Z0LZQ%9Xlcsf zMPkiyI2_i@0&8Jm0wGLdV%dDE$b=oEyGHSE4refi#)GV*bJ(agPHGrOz$c*5&^+oJ zc{uGaZmxhA^_4lCh6STQ7RctuV9ia zuzK79Dy9t<~fE&@0g^ZgOmUO delta 304 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 E0o5RCCF^6!cAVG&0yI#i zdVwKBksZ*n6xP8uXjnliIwl3Qe9}-*!GJx)QS3;TEz5pIHgNAb2QHUO&bd;mZQDH0 z2ZKRXRa)yfj)NdrtyTyjYb_z9-|rVi;c(73n+=4pEX(ij?|pGXzr$H}rR2m%P>VsswxN}A*5~F)oSHLQ6z-G7<-=Qx-I}9&vT_z7=~Gv z6-9v%>h*e@a{$0-G(r~_7ythKa~!9xYtQo_gzNSC;NW0BpTEAoN-4{-q?86h&@|1* z#|IKZynnsDrD-~uOq5c2o-@XT5VP5AJRXn7W7l=}_V((!PSf=1=?R{loiWA+g8?Dr z^78Wh{CqeZjz%L&X_jRW!m6r-5HBw;i^byi_ZQyZ-(!pq4-ca#B7_JbAcU0C-4ExS z5K`AQV+=w#pU>fPxs+0Bt#|gE^B@S6QpOlcDI=xSah&aT8$}TS;P3D6Kb>rCYCtc% QcK`qY07*qoM6N<$g2L5HVgLXD diff --git a/mods/default/textures/default_aspen_wood.png b/mods/default/textures/default_aspen_wood.png index d16fdc975d5b4cba98598ead835175743d2ae092..2b584b31972d6e2af17a2d4905b72bb4d2fa3f1e 100644 GIT binary patch literal 4023 zcmeHJYc!N=8-AT~%C4QUoih!M6f*|d+h`odIGdrIioLhSm>A5#%)}TmsN|F=QH%~$ zGKETEBGQngoDUI_93#v`Vyxu5I3-s`#6z3z1^;N?D1%8qKnW#7*^vw~l+2+V002&Z zvDZ|_?6&obt`K$cO%90+LsL)WVFg~UXnFQ*q)KSsbrrrRH;G8w`Mo=>&NFY1>bSmR2ww(v5n4A`eroOtne};Ie23Ih zg0sESRqUAOu8LVNX@^?BvmtLz<|}1DwSt(el=!Aby!ENK{n<0|bO@yodpxb(OCW=K zS69?);Qf=$0SDeV+A3-3%0s=;8&&)73&bk`l;6#^x!hy5PU~9Di8_j@Kb!nX`%L(f zyI|DigA9Ywy-PMKf6lQ}(G)H}+y-E&V;*)fjc;aOKYSsk9(y6xL><0&(G(wwt>~AN zn1~GQOxdACl|;Yb8i;n|T3Kx5@X z0wEujb+k~WOB^cctSgqIA$LD{x0|J&TJTke^hq3UYm#GDzI8#e0RBe9bB_bcu_N>3 zWqz_$3j9je6Mf$%zQi_{TjQg*#`w;0o#LHR{ZiUaeH?k;fq+f}YWY~PN2cp>PeG4I z@wiX;kSJ}ecKX}^Eo!LQTH0wU@t6kpk|^y^W`a-1#RfRuH@JtnLpfN!+rDd3R#>{b z;HZziep=X6f?B;^9{g%&68lN4ioN(qk#=nSc-q-tlQYbjn#SiS|gzmajBWhL68tXc2H1()~pnyp4OFLmOG9osWc!qf9M+hqvbp-+pfBg)qEjZ`D@{)REasd@dlr- z`TI83BrO$OE1JEr)NQtv@!+;Z$Di&CC3s@~wd*Ze<=k_gK`(M%sycU{e(>yD<*_Z< z?S-L@y?d>6w6g^0fLUq9FT11YLBh}5iP*YdWBr`IsY-tK)LX_+&q|dlMM_0=n^f%F zR!dN*H~&RvY?rZ$BUx)+sX0adgF1rYmySC}al2UEV-bD*u}GmfbXnsyPv|vJs3kcR zBPh~)wvg}_q>3PD2tVU(w`h)D-aUOzioEW^?sv%)>F(%8VM=h^tm#xj>CsW$X&@l) z#_3bMCHWYBSex3k$BUk(?FGmKdlrzT+NLaiG&u2p!}+}5^G-b>o z>hbTi=Mx^oMgvC&rp2%=?;BxZzYUK;dHP%5wisyWo}XEkXlvyUwhkLvfK`n6Kg$<| z!6vPgFHBOMLadvN&0Ck3GFI2LdVfX??W*MISO(|9ON;rvdAD5JrK~4f_LTGX?Gunp z)@jIzdTw4pou8TDDEr$c_Ii7ciJ>eYeIeJS?*o8rFa@lYd+{!45}k@52GIS<2o9A2 zssMmpmK+9=6hdZ0{mFq88V2^Zsul*N1Yls^JMo5ih7CE0;=pB+-MIu05;ufo767xf zklV#Ug9KDEn+WAlLuo8D2Lt=giw56U!blkOJA@sAf$hb+L2c+vGSmcNf-p3&0)FUCe+3=sh^Q9~9sY0}Eoa8E7OjA|e72VT_w7jZpJ}o=y&D-5|SKBrjluF z77~R(A;04TNN77clS%}?r%;K3WF&(Y2t%%@MgEWr-X8hS^;b0f|Hs--R^{=UU2Ar& z%7ImZ*RpHPu2ng(D)3r%{k!av`)>n9rh#2k1lS${-(s!6)=J0C#lu!~JEOilv%Vtp z(cPSmhnG4VFLyq=*4b3r^|<7Dd&NNK-J$Lp>W30p5HIHMY>xvHr8FJDjV!}q9}58F z6<4Mhki%C2gVJnAysh-GytJaE`9gZqVK5Zoh_m*P>9tL{sqnxMf@@XB^#RH=>C4*A zm+&_I5dGmvBMAdz9Bv+vp_$cm&Ixn}%^8S}6kOu`kv1S4e)iOs_okJbytTDXE+7BN z%O>9}Y4T%ruU4$7*Z$v~iVt;+=gh;iqx+*YtQD(;nXVN%)_&j8IyT%U8_nzL5n!MM Nz|od~E5YuM{~LD^au5Ij delta 358 zcmV-s0h#`{AN2x|7=H)?0001xk!Usm00BHnL_t(2&xMlFPQox0hX2#`V$exNL?XmQ zAHZk#IlMN}YaziP8MJfVFxgr!&K$TP{8y)^J*WS7T6%eY0?QY@WGsZlfxNHE!X0L$ zS$*u~CC<#g|S12gTPs_|nRVb+} zNL5I!$V_8ksJQhuJaUqXI?vzdB6dtdLZ=HOCUM+9aQu7n=~wGky?iP8`?%n`H$EPW zlPdg!EQsXz19dunkTUhh46Z~fNYI&vPBo6SqN8CB2V=sR*YRWAI% z+86DWsxgAmYZ&(4hUpHAqQoNK; zZ)aKzOStGB%Z{JlT9@55c^lfb;SPuK%mqCg9z8XB-?G2>ZdaAOqF>76UeP~~1RDyH z4b11wV0BuN?^F87TK}_R-W&ELS&1v0#YfmS>w3EeRvno(+s67#u=cTa1Y@>( z-Z1Nl(FvizBmNUQBu>2w=~-39D`lGb?Ob>G``QnS-JU*ZV&S!G5pd?R+@%q?xL@(u zj3mD~GF~&(<~Mm7E}dfBleXeq#9Tw==ZB7pYDU#?s!j_ja{UpqGOCu>^jb*q<7ZNr z_Wu;~>DJv^bFnpG*ON=9;~#c~?<#U%Q+j=A_IKMaH-gWbXV1QRe$7SU;`q&Ov$r0c zai;R&L8&8(GNLA@I{D5Wkl=3oXdvO>@cF?RH=&0I?>so8<`$&UYjweQY^SF`1*Co5{+AL)c@|hVED)D##_(GSt{3}rd_o-mlbTi`DS89 za`aPPb<6d$9gc5mSSanXQ?{n)jL-RP2K$xYtG#Sijhtq)|H-Yh7iUWZ?w@*p_uAvL z_VWn=J4s)|yBtNcQe ztFn_VQer{{GxPyLrY6b zeFGzXBO_g)3fn4M}uoLxJU{Ck`#}ouF>EkDFjGTJesCK@tkT5=Y;3fB5c zc19|W#;T5HYFmVkH3Ic8mIV0)GdMiE0qlh`FeZ7syD)UH%6b4foCO|{#S9GG!XV7Z zFl&wkP>{XE)7O>#0XMramwKVl4=12dqNj^v2*>s01O>hf)n*S?Hny(`Y;0<6CwX{g zIS7`vWwP+M^EU71L{DNtsw1DIbHDkt|KEcgj)n7A<8mvfzopr0Q;RXbpQYW delta 387 zcmV-}0et@Q9;^e97#j!%0000V^Z#K0000JJOGiWi{{a60|De66latX7AAbrN7Z)Mz zvXH9)00B8kL_t(I%k7fOZo)7WL{I$S6$n8f+9I~7|Nl7^+bVsiRY@S2#Ie&wN<~G& z7u35e&&-{x8Tfxe*T-fR*Rwd{WJ(Had3yeA#fr@;uDe9a(&D`1))Fy|#yqa)ts+WE zq>!EDa5O{!^tEmkQCi`us(+O{jmB78Ax5JCg|z@zB0a6B>iUZOaKFIhC!~;wm)8&O zmNQfkv^wc)eMNqI|DvjE3TvAb&X$ZR0H~bDd&hdcWSM4*-}(A^ZISQ(QLW`8>vymNYy3 z>4dtxcbn`2pq|AMS}UCMc;{KnW4!aES$@XcZsKMY*FD)JFpWY0(kyRnqi7S@CcB_? h6)I@(d2TwZ{0&U`r(qOFyu<(i002ovPDHLkV1m&Ewmbj; diff --git a/mods/default/textures/default_desert_stone_block.png b/mods/default/textures/default_desert_stone_block.png index ef7ba5bc64680852d603ccd62bf813759bdcac58..9eb8e92434f5cf377adc6c24624060471499373f 100644 GIT binary patch literal 4368 zcmeHJYc!PY8XlFLB_t^t-TL;Q{ih%M$6m{`*7LmYb3fO6z1MTCd)@2K^}~6n zDeEZ%001>FPjrCnsj)H@*UDCNs||PnKt3}mkSGWsCjhxT4ucg<2MQ9obRb>GVgLZb zp&CMzbktmR>50XHqGwKjtgtDPQ}>V8@3y4jZ14@@Sd(y4`gn<+hd6EdZtrhjtqaZT zcikKpwR=>dapUWpoEuE6MiX9+zxV7N>tnV}ZBiySX(IhqvmMho zrQc{vkp8mqTS<9Z6Wlsf=&+UsS@7-~q}fF=Oa<@wNx$^g*rB@{qwb&5w^oR@o3Ob*yOq|*Yd&c1F$?JQi781TqD(<`$&1{ImsE`2L({q4HG4@#|kZO_P~iNys9uxG|cOelrUd)DyGNmL9es{9LlAfm_?CyMJ%?1$}0 z9Bm8v*u2={QMpe^Gn(6SK!f60Se=nII9^47KGemxRw?1l4&pv}TJYhdYmdQyY~x8T z0{7-=hlGAMDJBMtMegXjcWW|84c6Ct!SL7#yBDEzR@Vol*`c>3CZ%_V$F6eQEcN?z zE<2N|75MiUhjgOKp<7ay+w>%_K3ZIOl>0%H0o7SEde=5R>s@!5x^ZiHQ+HXx!Kymd zzK(d_j=1*wr|c-n&)&|o4MP&~!OJ=J%k84c-aofXF5+HNX3B4Dxbi%8=2*+XmDYlb z@Xc9|37X!GUd?FHjZyU%_KNv#YeuB(Pw_oKq6T6m&cMVf z^EyvsTU#T;fo9Q6rnQsV+3s*%j}(zQ+?}UoBr}YLJ*A`t{jCzhMp{RO`_WKZuF!6 z*7xRdbB3mFjluD~>C;x?)H>M6^_qUYuKkCL(o8>ksX5{^fn9>pXE=j$-klM~xsuuB zBRGu;dtyU%jC@gi2l>O?rid$38)+%$b?tU;zmIkxIkC4Rg!^W=d}?db*rK3_u&ndt;DM#q&JIHTZLh=^0kwjVE&gs(X()#9 z>zv^%y<)>$Q^0fW_s1v9_ivNS2?4w^OLPnVf*|>onC#n$-(42Gu8gBKi|_i~vnh!= ze}}T?*sQBr@a0!kccGhiW6i8BdW=Fc6Anb-Z}mIBAL^Pve9eFRwOHw?@Acz{QCIR_ z7hD!n@~40a!nKi!=P+}oZ|RKnXATdUis`2N?N9GiiZl8a_4vY#szl}jSU-lPrad3W z=zKc8>v3(G`aQ?Eg4$`q(ISs0nFTk7q=W6=*VZf>guyPQ$?5nEbQyZ|*2$`J_($a-RM-CD)1v4V{rL&PSncKJX-E~Yj^4S@DV{k}gW2qZ*l_OJ(jzHK zzj`vujXYo(%(lw~F`XB9pO?;ELRz!6AC+C5dISI{MY3e2pNREAP&sTcnZ}{e!9q4y zCISFJIt#gEY7|`nq|lkH7$?xj+xI{~7R?DnfMKn%TsL|I%QJ~b$0y+esYy{(2O7wE zmoid_kP)!y0y0p@j*j6YgifFzya?I*N*DqH{(uOgoIpgZAJC1%qXX^0c3^8OjF1&? z1KOnwMDl11L;%|TCxvY11d0#{xCjU&At3>rU<>B(m=LIgg9F6c24Z7lB|}*86JrEq zp;ZjuXoce69B4Y9%9AvB z{w9}jUA^VLOoJT7+XD^Ak=OT>ZIrm4Bt8J3qO~&R04GGcvY>*%3yV>BqoSatx+dBu zKT{T}@j|->>h@R_sA#qVRngUf4|lYfrsnyd?w$OT6A^yP*2OgOqbA!oG?qSioSmMz!=0hJex^erKqgWG*>7q90mdVyDowl2%*<}A8gONy$I9nk zg?!D^1lc^n2sq*+i`^g8FSK{;W%p*oyxDq=h20xZV!t*WAXqXsUI{aqMNmoK>$!@q smUozAhz=?5g|1~RydA!U+Su2+ecDsYaisL2kxV$i3xh+~qQdw63m|L&SO5S3 delta 512 zcmV+b0{{JxB98=+8Gix*005AYXf^-<010qNS#tmY3ljhU3ljkVnw%H_000McNliru z;06~0B0BmcU|0YE0j^0zK~yNuO_E!3(=Zf<|KpKlDM~`>P@Wiu$pY98+hBR@rBg^= zfVA;7ku1y9;^DZadeZ3fUp|SxfBSmwTt)yeB_v8|0*_mWYk#fqIw-@rcEZPa4MXKZ zVRab)Dj`bO11PKp(1n3OweR=V0QlA2#OcyLJk@KhZbO_BY%W=^a)A#uJ`m_wb{XNR zb7CS|Veuw~!k^s6s5=d-J{;AkjF0cc`0dTnA z0Z1ve{lHp{548)T^+V-CLhAYm;7@x4(2p-Rms*OgRtbso0N5BMmh@YrI5&VU#HA~P zx`uJankcb+A4dSITrFglc!kxK3;VUHTo68tdutdA*LgkM?;0Nf9LsJt*9yR?Y~2ur z&DE)F7rnyj#s_BbdH){W8` diff --git a/mods/default/textures/default_desert_stone_brick.png b/mods/default/textures/default_desert_stone_brick.png index 941523ecc070604a7a2604851414280aa37ed474..a603d18fb552dcd68166c4b3fa3ff31ac1da4580 100644 GIT binary patch literal 4420 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 B>hk~q diff --git a/mods/default/textures/default_fence_aspen_wood.png b/mods/default/textures/default_fence_aspen_wood.png index 7fb624dc61a53ba56dad4774846c2cc07bc2f08d..0a6558e0dd540c32035ccb2358516339b9916ab3 100644 GIT binary patch literal 4170 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 diff --git a/mods/default/textures/default_grass_1.png b/mods/default/textures/default_grass_1.png index 5ed8388bb5d5730f220f1987898a2e6f48b0fe98..c4f5d9588b46ef72b8301948a7c52b23e943e4ae 100644 GIT binary patch literal 3643 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 diff --git a/mods/default/textures/default_grass_2.png b/mods/default/textures/default_grass_2.png index 0ffa8fc2c6377b9501954f70305ec6ee0f3f6fde..2ea21c749d5b1ed3d2addc93931f7f1ea24ad1be 100644 GIT binary patch literal 3695 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 VKOYiL?f{y};OXk;vd$@?2>_`I^!@+< literal 3065 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 literal 3134 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 Y0JQ?YKfQTx5&!@I07*qoM6N<$f=-O_WB>pF diff --git a/mods/default/textures/default_grass_5.png b/mods/default/textures/default_grass_5.png index 7fd6838805d5e6ef99eec788e061793e3eaa7665..033d36f9e54a4d83699ff66e2cb2af43042bb8bb 100644 GIT binary patch literal 4376 zcmeHLYcy1C8{UL8#_&3nl8lk0FivU4xeQ}symA~Q#>~cG4rT@uc~Ln<6vpc?QiMc8 zA<-*2R+K}9ltYs0HB^#QBsluTdTd+v-f`P=X$PvJ=c2Hz3=rTIoM+* zA=@AT07&9&Fph$!^m-HDAh_?=l5zq7(e4Om0^5-o4regwew1Jk&OXKf;UI_N2LPOB zwQinSGrOQ){N>$+g++YPCXepHYQD%>e;#_FpJBWow|YadJZ^`JjF0}e6;`hK`w;tz zO}w426|~G$5@sM`zKi~A>5`pZ$}?zASIZe6?j9Sl!cSsg|nBupq3M)sob&WvAu&>Tki)w`K)PkWs)92cu6R%1O70{pNgM@P(nx&1JibQ(?l*YPjxiY} zf_|Ar@5Zs;7=?MJ6pLbXJk(=zXC%5Hv4_ny!~-u^P5We{nZ6UR!*IbQZPf@vUhbmbb3|=Fl}!mfzvh?%VU9Hw8uUBl$kT;S+ZsuO!7$ zR}S;!+(s}%K|4X}@8+xfnvFlK=^M1>DEv`U`n7lXs}64dTPKv}DLVpqj!D%n(D6B? zNd?x6x~<3eO%(5EgX>)qx3r%-Qz8M2_rqs+VA zgVI=9Q#VpPAfi}T2$IP9PfA7V-s!aw$0<%tdIRw#;n5BGG)J?&1diJNc6_8J(Xq`!4ETlb_NYS<;N8COn10 z)C%o`|A^6Q>gDjP1Ls!^uMm&0!P`nvx$MtCKBEx&`ySeJvL~TYj&5I6KYN z?VT@MmzFYkZ+`EGiGil8(E6tmk;5%zwa?OeTKG_-yUDo+I)bt)Jr??Eyuvlp7BR|P zo$b;C=L0rot|kqjJnjZ(D%+6pLW$S2k|YsHo;t)C?5R=f@MAi+9wW8j#igstFNN{b;WSv@5--y6xKz^4J%b9T>^kj zffT_{gn+j*BGIYZL^9nM)aFnb0u=yYV$NX@NkJeR?hE=;Xr_p{#%2VZLN-OX?ZfNf z8J1uG#U_FYIz`w!lOlphXfndw3}V7D5)e>9HWALD2GdwZ98<)1UL(Q#dKig-e}}Mx zOc4aU1Kg6%1mOnS2HHAWRvb#09>NR)H(`?fj2to6KPUt}Q$zrp%`ieD!^6Y1!}Yc4 zOn;;<8jVKk=pps=v;+t()-f8J$kC#)RM#o~&4B?~B&NVR3Y`XD=Op^lL)oSXgkT*0 zgPctIhno?~4F1kcCLzIKkP6b+ETpcsF7i8`Ofs^jGpR(udfe*|(}E%Jw4 z!RnF!EPq|Y|Ni>*k)QJTmtDW?`Y8u~3jAw#{j%$)9QY~luif?kWf$Z>1r$gVR88T6 z@(5Uqu@ID2_6~N=R%^0`8V<^OE^xGqiXj29&r8jatYqz{X3d5Z7#cPaNXJMW`)FN4 zw5oTEzFoYbV1^0mccfJ9Lx8$o9i!^WKj01~q6O$f;4DF}ia**Lt_#&L;_vcIY5Vzc;yP$CX< zz*%7+H07|2unN?&D28}oOZ)xG#pcTzsYT}fVd8Hk?yOypo>~h1Jp2NTUj2RCEaz)0 z)Ej4Zqn972Xjl=`@FWDN`2>0R9N23gp-DTUV(5VB&)DJkfN`Q{<8Cq!bK@0d=wM+W zVId6x)$A!uxqb*^f~|Ow1;%m%l8~1mLXfF_i~>PW%g0 CoeHi1 literal 3269 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 Dt1U4% diff --git a/mods/default/textures/default_gravel.png b/mods/default/textures/default_gravel.png index 25a78b648cb8ec757679124772b0382c6804d022..8852d38486a58a7cd0cc085cd1ac9de075fb6107 100644 GIT binary patch literal 4715 zcmeH}YdBPE8^^~fOpX!7t7Z>!Xfuw53_{4+MC3e2#xQ3L+j$tLF&IPS&@QJ=4oT9M zRFWwbWut@+LLy|7O~t#Wy|4X#dB61G{qSB_ziU0~S?gK%`mg)>U(fZdJKNLUQ5viQ z27y4*N1f~uKrbg~5+cA^TTk{F2qe}Y@9jrNAY&n9DhY>=#6swCWGn>Bz~ew5#%O~t z{^|TasW1IHR8bANK8iuyQup3jt7)f;jGY41t2!}bN$%&sj#)jOz>~JTf zSyzp#Dd&qKw3h}wHeUDyjl2mk+mMbcH!JE&?v*lN{c7AidB{6q>bd4EW`S*YCAk;z zslIbT7~OUEapkl!qkc7`k~F&4>I~UxHhm?d@Kezjm5#gtWkTB@y*61^pV#_TV`vyBNDTVFW01 zP2b_>Zn80Lruj4YRnyqP6-tnad8P_$yI5fKlG4DVUggox!<`}ZX_ey0eF|*(<6qjx znk=^ZqNN^PM^x}nGIxG?Q=CFZ8(v!|6|)W3t!w!>e)5+-)h&le5VHlTFVVa{XGoFk zr0$Qb5}D4Bu7*pYu3m;>Q4NpkuQEjC z8@jlg&u|GuO`cy(4cA5IYU=}2n>#gir-JmZ4i7iunX{}RX=DG6Kf%5?-a7lu#6R&Ef$3)WYQNNksmu$FCyTK~b z_F1D!hFs`Rsp^3$CS*9-h7zJa0CQg3bBAxNiU`c)^rRbJ+vYNO0&RU=zjQ4jOQq}y zIyjH zyW3&=FUygK#C)G67AQJ;`0>4rjjBQ;rZi;jYsK8#dW7aK&)Kz$!ev5?ctQ!yw_0uo z(o-{yNBJI15h{k{F%{D>1m@D46g6%-Tk$_Pyy$Vl3~Q;S;ddCt6;g??ipxms=VE-S_Fd|RW&YqJ)$$*(6` zLwD*nea?!mOn*bhD&0=E@W9uX|EdNvyBmF;;N5X*r@~-r4-z8ly4ajbdtUc9XW9H$~V#ZOY?q^Jn##g$AXMbwu6<&Bm1W z0TD3%K6~8?@w9cLXlNI83-cs8QgK~ovG&8U-ISYG)@hXw;hQ14vq_dd`6(CWCmX`{ zx-U$c%{h{}Ld6Rw&lXcl5Y{F-YK~fI#~go5eqBj(l1&k zm&@Pi_E|gV+cB;=9fAEEsU;H(d+hS}+WQ zLcWF232>;NndHI-P6*gT=c<-Elc-@ZLvwR;n1K<@$Vd-}(4)l>=}3kik)|$?_)EhcOG8ru>+mEZM4*X8k)r8v zC=_@O`CA-={zsb}O^y7fj6uV&k=Q6Kkxqjd>Knqo#beMG4kT(65_lgUg$%>O$iy%x zOpqSfD%tZKc?NKtiUTuHHxd{QUg=1HTaz6c_{$9262992^=P0uUM+8iEW(p->nU z8UTaAV6j*{7K;-Qj>AQSg@uKON8s`J@CZR4As~uCAVfw+MhT#j$z&RZN*54Krvr6U z96&;Re1d?KL;=Z(iOi&=q+|iiq?EK20nFsoB3Sj5v7P8sw>^u%TuOKfkkIi9oIGp_ad`C@HK zwP$P29?X{10BTbql#8Q1C`(Mu3Am9YJDs3`K-(1rO$cD+q3%v^!&7Ri9?i8i;bG?TImgN zUqLl-e{VzMi);K4H|3<&BOapi)KBw!TU|~=j)P$)Ei2>VwWiKXGQ>YMf9o@@F`HKn c%vhFvC}Z)uQ^nICZ~}Dnh`W8GZD`uR0m$*S;Q#;t delta 3553 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 b<%WL&Se>Ggd>a^j00000NkvXXu0mjf-Z;&i diff --git a/mods/default/textures/default_ice.png b/mods/default/textures/default_ice.png index be8eadd9d22e20099c1821bf2848b6ff447988f5..2874e1e337e39527ae63bb0e2c4246897f8be854 100644 GIT binary patch literal 4114 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 diff --git a/mods/default/textures/default_jungleleaves_simple.png b/mods/default/textures/default_jungleleaves_simple.png index 7165100c7ee1b526628a81fa387f100fb30a601d..c60bf12c5bc43d858fded91ebabf3f7f91998dc7 100644 GIT binary patch literal 3899 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 O0B;X}_tUO%MgIjAf}qI& delta 705 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 O0000d>T5Fmreg@j4af`VEZN>L=B zJdmOfR1g_s9S|xC0wNGWP*j{y6p)H-k$3UA`o6p`es~|=THLkHJ@@Rh&+qQ@UuW&L zPhKF6tfOhB2>^hOua9Ri)a$M`btUL+EsLz=pFW zoEQL*jMaxFB+uAre>}InSFga;rR0YcsYr~zwQ;YTue6%$G>Y>sS#&?4i)_kV0hh=~ zY|jsmbu;ECZ%h~Y7w6UiGJZg+Q9S&;;>V(@F7lr8j?zl4`0<5KEz0I& zf6gGqmqz7j&S6K(k5W>?4~_Yk7OQJ|-=^VFmN)WqU?MBipptN_7sCcu7tktbi%Pt? zd1$Y^p|5RMp{_Z;2-FXLo;7~=@&sF@#6O1M)0%1M#TvxfE z^c#2M#JWXATJ_XUP>~i9?R4+Xj_#3ydVS^NtP5Gw>;0FNjZf{z?o7VYTcJdzNiQwl zzVM#3G*~4(e^muW%GUMJB#b>rkT-f9#&k(-A~;dfbj^ZjKik;d$GbqI*Y{hSXO8BFRjME;ts=l@Mx@Wt)TnTvSWAMwNY&->cqM_WG_?MOU5jl4L*6_TTKe{%hVl7{O#&A)VQQYvv`?*ks-{cTo>oORlqrtL zY~*GS`ofp|QE#vH{kB^Nv*e2l7@SDSU3>>Ta%a*GaRTY_4>r9w(`$W@Q~a}^wTeKmyPTm^S+x`2^DVe|Bi!&1Xto>BOs0kl`e{%MpqvKX@b{vp} zJs$skZg^5Enw(jzJ-u&T#0(uq@-dSQErF^V@db6KqMMG`E~BjknYLC-XG0j(Jqfak zi}&4TmYdI0%3@!Z-3-m=S!&;zH;!ncp4&k3dupZX*zB*?^dV5?!3) z%im=mX|8l1hi!R1Hcd7>VXdZmFJyGKf;X+3rv0qUw1Oe8D^3@zTL&T@`avGjPhP8QMlH&3*-)KzuTJ+GeYAaO zpsKy$Wlj3t%r2c4;`M+eai&dtLdH;5Jx13T>^vfMf_v@cS7Kh!M+b&K6Fo3~uqdM?20BFQ>pyU@$r8qJ9 zTx1lBAI(NexB@5&0C3qR5kxT)*dRQb9n0Yn5pOy!Bj6ks5fO%`qNxH8b{xkiRmi5N z(n6T22}}YDv5lnZB5{HMTs9a5mv9q#A}0wE@rmmMeXp8P2>2%#FoB2&rv}13_(C=u zhr}V#4qg&YG8RG7gu4h?F;2mr-k%ZBh=_;-L4gwrB^Ha3Vn-xj7>mLX2m}-wi^5_Z zAP)yo3J;8uIPgT4tB8LyJlP_q5R#6==fPK*QPKP)kcdD)^YG7b7V~emAW4|`iOgc6 z*okZ|n+J+e7$gSu$)Ck^^5zSx&flBImW!_5UT8=6?z(HV>+r#87zztYo=DrPa1TN{Cl$ zCO{&Q$YgRrKmdcmV6j*n4u{9%@%enAP$&|KBoawlT3U5=bzNQE*|TRG8yj0&Tie^) zWinZJcXz#W6%9fufWb66;QCY!-BtmGXn(RNkgHZX9Gv_w{rOF&X;q$T%z;t?rqo&|L4|61TFl(`(@QO%KP?cT$Ra zsfAR{Xr>y0^*$O}mt`1z;gH#-*1|e|oB8n9`};RPw$891Z?$$YIQIOH-4>-UE^ig1 zapjo13K!xkYqH~D-@Edk5PG8-oEPyX^GRxyg9ns$g6%Hm_*cg7RIX!3JXSC0fUg(L K^Q`->eg6W#;!IWm delta 3203 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 diff --git a/mods/default/textures/default_meselamp.png b/mods/default/textures/default_meselamp.png index b227a2549a5a318153e2bf8c094c3dec905892b5..0c3a1a12c4590a898ceb93b7a34d6adc80bc701d 100644 GIT binary patch literal 5103 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 literal 3399 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 diff --git a/mods/default/textures/default_obsidian_block.png b/mods/default/textures/default_obsidian_block.png index 262cd37e0d58269035ccc4351f3f6f39b21c7d94..7e1d4d3fa3616f17a72dea2597e0c703520a98e6 100644 GIT binary patch literal 3913 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!73?$#)eFPL>iL45VC<#g|S12gTPs_|nRVb+} zNL5I!$V_8ksJOK@JaXGx4UWI*BBm^k8zuWL?zlGFk$3+#-=d;h<+H7Ja<(ZbR3{f@ z{{Qa3xc-CiV;M`{i|X%r>-2W2NH%9Y%l9(Ni@Dxw$yQ!vCC?EecIjO7e*ND(d+({S zZ2xk5?>wi-x<^GN6>)sI{W=mk+9#i$ICbUouH{>vrItsYv&xmw^Lu=}T0EdDr97kFwU*$68yp^B=W#=ih2v`SNY8=7}Gv59G79d|9(T z+g$5Q!!5y|?+(5@FW|p5d+o7n-*)bLW25ynQ}O4}KiC&?U}Sm2_w zalwnLA`f=Xbea=!W7e@g?ex4o{E<5pT-A3kxT6$wgfG_R=j17jU9Z{AIn8c*nK7+q zx}$TY=-DCVJgJXd?k?+iyb~>w&s12wnEFZm_{$Yr{R-2B&qpchzhrTdlHFO?D$4M1 zTh^+@`yMag&OgH%!Oc=S#WJb!X3piK%W57^leLJxv9d5l?XKmOrwpo2Ij%+tTaq6; zW`4_Q@TceGOgk1 zoF@B&t_2#aL)}-sGR?TM_o@TGzw@bfQ-*`Ol+nobj(`IMis^Qk%cI8v&EvK(?rgaYQjI;IxyzbbUD4w^% zQTEWorr%|YWQ`Tn`Wh=83ebmTgwg z^@rZcr#$9NyZ!S<`g?bUxA_M(8}sB7u1|Qm)*@%RmC@}zTeaPtHl|sz9t?XhFS6>x zcXQAFuG3AA0^3ek-TxVQiP5$Kf?lfg)$}c$?m6axAo@gov;^r-uqH{Mw7 zd4K+nQ+KVcdoI2(s=ApLpYW3Rm}Rfcw=c)jGaYq)nYEeO!91 zDM47jCh=oVX3ddM`zbdk{x@1_@BNE+_WG1%@{^u--u<#jZ+-b8YdLw%Lffbre|E2Z zb?J6b_;rcv9sQ~C)9=OmzT8&(e_gD&HodAB=r3)hE7Kh3MxZi(#L^!v>Hn&KGM zSkZ%Lx2xH;KWabr`0AC%y1Ulb&OY;R&)wRH=TrI1)4mwn%`5#>xwP|t-ywai;>lmW za=z=3_%L$)G~UwsRwIg98uqZ=Zu4o-+UDmwHH9 zaeWgHQ`wOEGUs%uy=Js_%!WgcJ1#A#kBnTEEF><&bvU8N(OWkyPNTnaWtDQQ+g zE^bgGfIM5JjFOT9D}DX)@^Za$W4-*MbbUihOG|wNBYh(yU7!lx;>x^|#0uTKVr7sK z5Hnm-i-9F>K}lwQo&w0s#H9Sv5?duDpu7Uq@RVe@*#)IVIbf4hlJ!$_Qgc)DN{aOj z^$hjF>Qj=f-13WZ6M_0Oa}(23^$YUSmGnWb)rUG4=zD#*_d#x;Js7owq%a;0uF>Ek zDFjGTJes;jgNvjPAW89P>Ka`sf18#O?v3r3+@t!V@Asp9}Z`=#yV^ZbO)>ZDk zY^1AhC?YK_9qngk#$w#SaApQia>O~yOq+=dCDpcGx>59O=49iZ|CAMT zEPp;p*}yR&n=?s=ZRG|_&MC8aOm7AX@USo>EY`e~I_+CJ&?*K`S3j3^P6SCQuIs+< zrIY|LO%trjdoOQO7L;+${feC*A3+&JM8xs&&W9^OnV`&Y^}N^@e*l2ta*h>$ zBGM}c=1-&KEAT7nMKJedAD;kl{rTom`Tjs{BdV%$&cQYjk=9w6i(RxE{V<*<%vV}V zDOqf|obP`^ZZyOA`*_pq)FcUN8~uDy9#8B$`G<6eq%HbRQ+mt40CDkOxl$faF)L~t tVXY0y%p0D;^9iCTimvN6W)(vC2R>^On1n&wKa~Ig002ovPDHLkV1iZ~gU0{> diff --git a/mods/default/textures/default_obsidian_glass_detail.png b/mods/default/textures/default_obsidian_glass_detail.png index a8bbec98d877d4df1130847e873d9c167bb033db..d29a7a7160d72dd40913ea4ca076e7af72f6d8f2 100644 GIT binary patch literal 3504 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!D3?x-;bCnnvn7OJ#B1(c1%M}WW^3yVNQWZ)n z3sMzQD>Bm<7%FbPotE2oM}ep9e{q)_<86uAj|J?O+*@$`z4xId*0=Aj3jMwOQUlWw z#@iomoN4*^_BBs@fJG3G=h@PnLs>!Rrv!)frR|J3bhhR*z?#nu4vj@RgZ)JtlreFs67%tExxKY@2%{;YM1#Z?q9rGb&{Foe8{J}^&0Ab zXCzrf?%g=2KB8{Y>^o}nGS;S_dzW~w@a?)~Jtxjp2lua?qwM3dMa6P@YRKWm61O9{ zSFtZ~bbj;YhCmeivDO(XeqL8rURqN4tye0>$427MjGY_j7_px}WX@9@+7@e`#b5CkJ-f50QR7!_*oW?Lox{DZd0S_& zDwxO@E_u#q|LXUq9b6o*D$n%sUaN@F;#(>kt=;#8MR&%E7wc10UPm+bacmPkr{F4d z)MwEYO{vX-4`pO)v_vc~wec$`gueSQX|e~K%oB#3e)90JekAjJCQ4l z(_H1z@kz>UtGd)e&t|=f+L9J|b87LnJ$V&J16AJkpV zdNX3rlpyV%u#9yPv4#t;HS=3uTIg=~=EGu{t%@~KS+|NdKU+98%)0#L4u7kloz?n# z`J_0OPHgM5$@!tN*stZ*l$p!U+2sDx*?jMcModKgs{Q`Ga#wz+Y*oAE%j<@y~T zn`0tg{A1m@;X1G0Ejs&c^BD0_*8I&t*y-xBr81Vc~=W_E%TCMwfLfwy# z3H6Dg4Z7a@-t2j|DYr3G!sp!_zmM)`H2h0$Hnu2VSTf;twx;g!+a|Udmiu4i@f-XV zxwcg&`XU1ZXI3UK2S)h%SS9D@>LsS+C#C9D=?Nk^)#sNw%$0gl~X?bAC~(f{C7qo`J4wMP`|ik{y?VO;JjkRgjAt z)CeHYRw<*Tq`*pFzr4I$uiRKKzbIYb(9+UU-@r)U$VeBcLbtdwuOzWTH?LS3WCX+v zm(=3qB4Eg6=I1GZ%uGzmFD$r z{DK)Ap4|X;dl(p#yxm;OkH}&M1_Lh;W;|qZ<1tW>y~NYkmHh!XyD*zX z_Q6>|c?Pi(*N775{9I6zg~2y5B~_t3vm`^oJu|o9#i4k4pb8#O7sn8e>&XcUyg;4- V1LN^kt$jcigQu&X%Q~loCIEW@Pu&0j literal 1167 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`oCO|{#S9DvULeeP$l}IhprBM{ zNJNQqer|4RUI~!Pz~GyhlB!UiS(2gPo|#(^r~B_60|Se+r;B5Vg&?B<%lqG8Ringc g2#kinXb1p9fJK0TQR@;b*o5mk6ic(#bQV0pO3AwJ|)^+@2<~`dGqd1W1`TNqCLlI zzv^#z{hERM^uE})=U#o9JWbh3_PqD8GmH1GRhX{)@UY+OyH8Emwak9H##*I5^8D=b zW(nVi{x?4ANp6?h%%LQrE+< zExFTrCT%#vm2@`z!=0MaDV?4*%N=^TN^hmdu2ed5z}h)4ZJo~LX$tkvtQNKeuGs83 z?U_nrD64tn%<~Z$=Vm{znJSc)*D}wiz)j-gvK`-h`lnnDe6M`8v&L$xQ;bcKR3cB& z=y@9F8D%CF{;p6RxNx@ZTb!X0D{djZ~ByY>>`su*V<%< z$x9i+IJ*99oG`)J)wMbJ>WXEao2O|Qy7U@G$)txEZcNC!cxFmObOp!`!%om&qeT?o7=hfr<&zXKK=NxKaa@WecQulN2P%lHQhVs#g83 zX}M9rSE`=uZ5 zUo@BH6w2IUCiACmR+s&2TRGhty*FtKy#2XO*2;M0y3hU)7=7`|CLf`9wL8;a7|Z_E z?AXtdcI_SK!7~welDqb-y=&gIV)+9^ug4R@$NeJn5A zdF%{M+Xsho{Vs|D_&MR$Sl2!&Ek;zRWpYYOfis9b<4f z*){XR{xv#R4LgMSS|29#nEdjzOV@9k8~NyKXlNy)p|!{@zjs-O85lUTGJ#n+!q>+t zIX_n~F(p4KRj(qq0O$+`1{?c|g2d$P)DnfH)bz|eTc!8A_bVx6rr0WloBA5~7C5J7 zWO`H;r3P2|g(O#HCtIc{+1qj1R9FEG$W1LtRH(?!$t$+1uvG$^YXxM3g!Ppaz)DK8 zZIvQ?0~DO|i&7O#^i1>&bX_Yl%Z!xlxD;%PQqrt~T-=~W0C~1b86_nJR{Hwo<>h+i z#(Mch>H3D2mX`VkM*2oZxO-9i^u0dZ`ye;a9*kN-QW%d0*JyB&6apkE9!*`N!9`LCkfeAtbq%fH z;zBf_QuBbVrgC8Oh~a;O1F&hu6W|l#nyQ;FARr*GW~gJ~J8kdP{XlWXk|4ie28U-i zfE_6Y#w2fd7lsa2Sq~tGv%n*=n1O*?7=#%aX3dcR3bL1Y`ns||;AR)*7umcuR}d(q z>FMGa!f`!0!GXQr;fS|FS{$d+GzQLnoC=2+JtCS^LLH8<3S4YhD9!L+p7oMy<-}^B OCI(MeKbLh*2~7Y-WqlF= delta 92 zcmew>oi{-ujDwAVfkFQB|3n~V>gnPbQo)!k!RT=O(06;D$+-=CW+_T=b8!4ocQ diff --git a/mods/default/textures/default_sandstone_block.png b/mods/default/textures/default_sandstone_block.png index b97c8780f2bcb6d241350dc65ff785fa321d74b4..2e06491e07b09d57348a9d65f8f7f3f29e2e2919 100644 GIT binary patch literal 4548 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 QK_CEoYiHC0OTXBE0UvOKv;Y7A delta 597 zcmV-b0;>JQBmD%B83+OZ005AYXf~6_5FdXA7XmCh6QF%S0006UNklJ%C0{=6P1xvcBuG8>iG<#XIVhp+$u0Qj)jZs3N|pT_MoK=HBt`1yZ| z0KhppH`P||yTnNwd&deVV|Ol0DF;F-C1CJpXgmxD+dt0JJ2bvyC`lV@q)pKqY3KRK zmB;Z53e+G7{s)!j-m-nn4Hx0B)S3M2B}bx$hsmzkwiaEQvvgSt6=o^TdrwkaOqSN{aBWu{&-Y^Ss}_aAWUpB|EIG z`mm6o#0da~&C@U(oI8^sNhZegA(T5Z!vI zt$24Dx6d(MIeA2s&^U!F3Mol}0RVe9b64CFOEb7I?YA$^otX=2y;Wu;ZP(?qa4MYU z`Pg?`0H`_DRtU*R8;h4_D0!6?Sdu0|LT?bsg~_PV$5jZ@-4H#euyBpajGU9{c35jB zK?1RGPC3-Vq%G&9Ns}PbwlzUkW*j#Uwi{x&$=Boc{cXx6)>=z;t+DBLDK6IT5h=u# jNHU+a`V4;l^?UjY^zU=7P3joD00000NkvXXu0mjf*AW_v diff --git a/mods/default/textures/default_sign_steel.png b/mods/default/textures/default_sign_steel.png index 5705c787c7cf2a5a990ae329c0b064051a1cd063..2c857c02425c234091e6b7872fca23283e441132 100644 GIT binary patch literal 3921 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 diff --git a/mods/default/textures/default_sign_wall_steel.png b/mods/default/textures/default_sign_wall_steel.png index d8d4a5b00b5e736d6d96674f93b633a73155d76d..764bbc8ed71a1279d43c9df213710bc00e312d34 100644 GIT binary patch literal 4035 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 Ef}yV&%>V!Z diff --git a/mods/default/textures/default_sign_wall_wood.png b/mods/default/textures/default_sign_wall_wood.png index f25a67a82ae7f619a4a3a5cc296954538e915129..f541c547f38b0ed147bc797463154181b14e39c6 100644 GIT binary patch literal 4518 zcmeHLXH-+!77is+qz%$!EHQv|LMYK>C<=roiAaFZA%p-CQb+=UAfYQo859wTpmYQQ z6)*^qVxdYM%Am|3AY~>Z;|RhajJ)7;&HMBI_~ZR}YkAi_=iIZ;cfY&$x6ayUubb|S zwv(1rl>`6)(hl}EE`m{Rw~31gdM$lf3;+PEXSsSXTyRVfl|~6Bh7&-H7%Bloh$aRD z0MRdNv7XoFwWPL}6zHO&!p|ZMpU2XZ;h#i71^Fv{QpISl#I=*BQq+Aac2+kG<7Z!| z)y`(CFRJKU6u@~&>63rIQ1kR_XW@tDt;s85GT-Hi&DR$yRDSPj`Px4=^Tnh14@D7t;Tg*7b%nOW@hh3l(*&C z_s2a8Db1^ErcsMGEjoB1vdiITns-v3Oy1r*C!&^%`Ae0TI-L9fzxi6o?#A-gk~9y> zxj4dPq^f0S*d`;2YxXN8sjY{3H)05)<4F;I`}080B!_R*&aBptJ0G>1mI*xT8tUwi zFPBt)5h?btkglk8Iv?<9nGa4~LO#{F6=&?%VFRQb3S@3sJtzCE>qzJwd*W#4Y&-eq z0HIC(Q{EeQlP;$Su-pq6ZrJN5`Rcd=)6o1G2aEdehk3sn++ zYN`Xev{yxC9&I4i(i{uju%33Bc{Mi>_aof6YHMGAzC)qWhCapr-o#=vRvFKe)U240 zHR19zbLQ&2ieA>iTZ*#k_5^ObC5)|072mz^8}tnFcz^%Z#0eANaSxwiGCC6~HJDP16>%i(lE_-WrWSjrwZnwgFE+0jPRUdQbum5d@Z|WZR zKQQnI`C&JVJL2<$7Y6#hc{8k0?}J`{to+D~%rl(Y^P2`5b4Q!<_qk=oUcTfYVd;wK z!&yF?JsPX|qE1K4!a8$ySV=ZPbUP^XOni-ZE9Sv(<5QV%^u#-(g>i1Jsx68m)4!Ep zxjc4tAnyAizn1!^6|~+yjWEfQPF41_W?yZ66ca(){*s;kQjM#%=R*AMKKdC!Lx_!^>! zmA-xE8hqk~{EWh+E0F}z)G@sA$E&02xzo(9H~7k*3m<+raHZ*bLsg|yEG=)*WQ#4? zSGb;nr)pO#{=KkPt(-qScK5xXB(&EMq7IV2&cmBrrKa8$@ZVUo;*%aEh70i|XaHobVeu2L7_~!A|%Q0Fxg|$7` z-;7UMR;y~iH7%cY*YYap;=Yv`?5r{R-R3`oiIx{00AON|IUC zIYmD`#MZnFl}8S;{e(H7_9`7&!#4`!B6)Y+004=zM8Q$vfpS9NDI^125G9ac5KW>A zyZ`{qETgG7d>DZN3M7OO$>!icciF~}T@HANYssMdr~qCJa7z_8G+cvcu59t5_u zkTi=%2na|71`ZTW3MbPM(dOXKya>Vbt{DObeTFc?%)uTgXOK08MgW-@m>3x9Bcq8? zMqmp`kQpr~7~x`L`-MUsiwOxvTbJ!5*c$z>uB83dv<-`S2A{pjjuwWhZg**uV4>vWE7XFzz2oE8I6G#Ly zgARcjKp~&;L3o5Mg+{^&-Y1f9Ap{7O90G>ydJFmDt{{5IKjH8C@V~#ledMb&{wCKq zxxPw)uL6JDUEk#TDh0j@{B3vrf5|2Jp8|?N7F114L3sq&NjM=WtvZ~YT#@D~J1CgC zw}rO1r5^Q^evG3w4P`(_8%Cj_k<@vSQ6ayyu9QM5ziD z+Lr_p?Z**^S zXm4;JNkc;*aB^>EX>4Tx07!|QmUmQC*A|D*y?1({%`g-xL+`x}AiX!K(nMjH8DJ;_ z4l^{dA)*2iMMMM@L4qO%jD{kyB8r88V8I@cAfUux6j4!mGk>yHbmir}mzUokXMJm* zz4tw5?|s&~0Fb=>xx92(3V<}8fFI)JN{@_+repg74DbL0%m84rGBW}~J;Q)VJ|1rL zOpz1#A_#ytcf>0IH;uf5=ydS^Nt%_x7l_gXiP(b8$z+MRP{gU(f()^JM#R+k6fwgn zG4n+S6tTRR6Mq-k@Uzb%JByi}#$$_EeC7;x8e7agBHo%M z6{c}T{8k*B#$jdxfFgc4LOO^JKENUwrF_Y9)-eX;$OUwSIQ_o0dBB}pL2uro2q&dxUGa#+UVg8rfZ>F_u7)%T3W>Ha7W-JO%b6s8L3;<~ZY zQ`3cfdVgjHlf|JM{dtK0ao}H{!!U%Cz~OUvqKI(OlyP~9qIUDxTmd(oN9XeXQxpGT z*q^jG*CJ6GJ^^a1F_0Rd0_4{|fT9oq5_3Sb1O3rAe|$I)zq|<5iN(49Ea=~}!e!zm zlbiTC&MhR2&Jyyo7Wc%@5}*MANCGNQ04hKO=zjtuU=D16J#Ypdz!wC9Fc1Y+0TxIC zX@C#1K|a_Bia-h20d|9GPzxGB6KDY^KnFMtE`ZD6I=BIDg9l&)jDzQ32D}0D5CmZ% zGDLwCAXP{UGJwn>2IL5NK>kn&6a~dWi4YGGLix}ps01p9s-Zfl3Hly71zmuyLW9sf zXnz!%f_{hI!w5`*sjxDv4V%CW*ah~3!{C*0BD@;TgA3v9a1~q+AA{TB3-ERLHar49 zhi4Ih5D^-ph8Q6X#0?2VqLBoIkE}zAkxHZUgRb+f=natP#6>iMMoK->`~sR z7|-H2{OUqatT zkE7pUFc=y}2V;Zr#zbL~F>5fTnEjYm%z4ZpW(+fn#bOn(23QAdAeM<0V2iMOvB$9I zutV5!>{}cWr;0PjdE%mRJX`^;5_c4L7B_^Oz|G^O@LG5~d?22U&&8MF8}MED0e}2B zex4vr&>=Vw!U)NPjf5&f3*i#sA>kE~NK_}<5`&3c;s# zLeh59VbXchJ<=;OnXFBACP$M6>atgt3H=1Y2UgM2$qd#E`@bNxY<% zq>JP#$vnwQ$&-=;lG9RnDQzh?DSxKaI;k3|Q&PiHv(gl4GwDF-H0e_5qtaKUCuOiQ z+AVXR18&z>O)PYmQcT=_ETqMWn?X7!)0@1 zYh=&Jj?fUAHqD2YN-LwCpxvRpms6H=k>kj1lWUP1lADuXBJV8EkuR2Sm4Cl2|6YNv z;GvMBuv4K!;gKRrQC~4wFdVy&)LYdbX@3wj7#ay06&l?dGn%TJ0h;-m&6@YM@LCM5B&|JKy;^hH zI@%H1TeLg0Cw1g?e01`3nspxPl69SQSL@d6-qOS9G4xXO_UqlyhxM)Wlk{u!2Mk~X zYXh#qeuF_nw4tpb&#>Nb*ob80Vw7dnY&2?2Gxj$wFzzsZVWMdgZGW=Uq}Sw=sg-G} zX@ltlGZ`~qvjVd&v)|42%~|F(=C>@!7M>RCEjle;S{hh#EDu=TwW3%BSZ%TDw)$vo zW6ig2v7WNgw28CXXEV&8GJ+VTj4QTiTUXolwx@01*;(5O>`vJIW^ZJlVt>?ra;eTz z&eDdZV-D&LOouv$5r0RzW1Qnb#}OwrC#F-q(-UV6XSQ>r^Ms3@OR~!`mlv+4u6)-v z*Eu&kx3zBP-4S;$_hR>c4;hc;9@QR?J=HxEJ)1peysW&|c%An~d;59s^d9z6_F?%n z`ONs*_^$Qs@gw<#`c?Zq@z?j~`*#Jv0lopd0v;~YTE<(}5q}5*eFAp{J_^zaS{?Lb zFeW%CxF+~%h*?N}NN*@5G&b~T=$kOtu(GfR%XOCvmv@IthR1|Ah0jH}N0dj5M4Cjd zjl3SE7{!h1jK)TXM>j^#uJBl~d&PK+RZLOLos~K(b5>qmrMN0})tOkySZ3_WICNY@ z+|jrX%s^&6bALA8Cw^c249ktRhxMH8%&uThaU3}1oQVX7gz|*RM2Ey(iBm~VNtH>{ zTsLkt_hqtoa&7WlN?^+2l!erY)YddyT3p&Go(wOA*ORW2o|8V9VUSUjF|yij_3qU( zd_R6;CX~4{vr|A7{Y>=a{6-hbGPMAwA3osmejsK$US(s&a1AyUc0{X5av+U zp{EVu4ZYtozHMq$Y%FQ~c$jy1T zu9enWavU5N9)I?I-1m1*_?_rJ$vD~agVqoG+9++s?NEDe`%Fht$4F;X=in*dQ{7$m zU2Q)a|9JSc+Uc4zvS-T963!N$T{xF_ZuWe}`RNOZ7sk3{yB}PPym+f8xTpV;-=!;; zJ%2A>>~-lqcg5k#>8o~EPhDeN>$q-xy}i$>uk9zRpW6DZ``ZU>20Cxp-sl=!I(T-- zY3RaD_nVh*`P{mGd)e*5JIn9f9gZ0uxy!ygc`x+2=_${t8_!le8-Jeh ze15v28mBOpTuPtA9&j!stev|fQey;ef!rLS7 z81H)DN4%ey&;Ee@Q1wyoW7j9YPY)N;78d>m1DNytC3hBe0000WV@Og>004R>05Jf7 zga82g0001h=l}q9FaQARU;qF*m;eA5aGbhPJOBUy24YJ`L;(K){{a7>y{D6ts1P52 z0|yEW21uryqyPW{N=ZaPR5;6>le=paVHCxG^Ucoe&d$uvY&Jm&l84%eO_T&d5d{T1 zyNIBO|AV!n2>u0v2v%aiCL#znrjaPbB0`D~#6n#kB<^lD$-MWQhs8*+5i|!*bDMk5 zJ?AKQubwRU4Xthx`4LGNlIP{vuuL?6U8BF*$2Mz(K|<9q5JCV@kuu}X(!x8B>`;cA4c?dJf1y&jU1#@bb($g+3oi5wmtl9pFxqbyz-HMf&$+Q zNYWG$`2mU|$di-{=cX}RF6kggXeL54u^UZx!U$D22)81pj~~IXENrI%fN)zbtyUA; zG3fm0aR13701sX)qavAGSf$ypc=+-?nx?Y(vq$^GXF|_I$_&x#^~(%YYpAN=(y2-2 zmp(CjVw}gX*0^&1D32D_xOVz~F!S%)=v589s*$8Anx>-Mx;#_FVan9RFoQfL%W|5w zx%HQT1qXwn>Nk!3lf z6Z>dybkRixDYG((K`05rKHYAE$*~cfVTbQu*8%W$`n#9Zs#QGCXL4+B1lx7c+8uOV zlsPE!gtseg0L+b$ERpC&9mvSCj9kVbbOv#mTFZ{98y3D7lr{p&|FStcr06w+ieZ`D zo?F~g7jDkZlwC0E8gZDG5?u2S3H(KZNs>fFvE&z_iw}NqK_u${0000>s@QT&-<)<-Oqi!*K^$~&BKkT z1k->)AP^;ICkHR^zIt&iUkY9~8Lip@fhdroDZYF!ssPF1vO^dV0FocY0g!-@5dwh- z``-ExRbHAYHq5MzlT*$S+v6y6&^T$HGyF!yK;H;yi;6-5vQudr;?eiH`n*OCw#xjC z-N%*#NA0up9;i9gXGH3k&D3p}RByP~K7UACr5_-Cshu@>`3|T3>YsZmx$xFn__edN zD9!9DV;YC4e@**^Zqa;1m-y7IfoMJpOYU!d-=P879=RH($;zDKg|AJ34(pDPt_N>^ z)~x2E|3%A^x9Yj9p2+Tf+A#V7mRuEQ_}Tnet*Boxsb|M7&p)|mH{^KGndADC(Un!7 zY75)mBxIXg7Q@;V4k}o8>Mj>W*ts3dJPHmRg1=sw(hIN}c zo)X+p$kJXud|e(=a@G(8sOEi1^w66JH=*0=^_te5C! zg(irv?wuqFV3C>-2j6E+>h$W&S)B~4r!qupJWbw4U3_)Zo}hTq2Ua%K zzq1=?b~*M~4uv4;$LH#((@XF#-8)ket!^TXagm_O@l?QH!#$SoW2ep$N0GLPE3A`N z+runK-LDFdYv0WYb`!}P-Pb*H$QgGb+eEb;n~$@!-#C60Bl*ZZ)p&DlC4cnLM}u7f z)4JKdUM(lfDA@;Rx8!Jqmr6YCH*aB9%&G2*C>hNNnCPmhe|O+jRgswe*sQFw{Gle# zCM4Y~JQ0^4{h~?Zwl)H8+Lxv&O2B!`jZm@iNn=f?)6cgiN}5iSj}>whAKz2rZdST0 zD=-Uw@_OuDQ~#%1(mLMz1OaEy~H=IMRW8* zq`{0k547usItJS--M-OYji8-UTAYp;t=FDF=+Lvx?K7vVrd>jgR-VtO?k!QgQi&B$ zCx>2(+|*-WceLC^^KgHhrssz6i=;ul+)q48+pP$f@b1g-%a`6kF?u5|SFMuIF)lH0 zu&#X|rq)FmKJrpM61!Z{$}!1sn}w}^CXm)y-#OiV=N%xve#-Ex6jc^SaUe zt0_hMgr*yct7(H6)Q~))=WSTR_Zrij$eGlE=bPS3I9rH&XXTmhQ_f~B!z)9h(h4%y z@rxILHrMee+SX?;_Nn`)(5`&ZUp~7FCfa-p>CP#)r3IFBDyV%tY1dwO*7kCyWS4=~ zK)B;W$NIug*XJ{_m4>GWj-2rKGRxjk$yb^fzy`lQ-70ItpE#K5BaGa(Bga3?;N^*)t5 zQzHE_m%`7Nw3CLbS45qOyx8tRYN;3Ex0f`Z%N}3_6ybUUYkJo;56E|)((=!|KHVHQ zyeqBZWukH&yg(??YFs+FHi>B&a5AL~jVSi9cSxI}%4Ij0jdVP2FWZ>7a*&`}e^heu z;c%eM67w;8bgV9ZVgxR$zfmrwhtT$x;ktTzCf`UcKRXL8w2-xrhP(?$++jkqvUUBj zCZEqqpJ813hL+7eB({AMcZ_VXUuZOWH9+|`ZN4BkhnVT|X5Hd}&6WCJyDEdjr!96> zLRyoO467)&ATHe4d)V|fzQ$&L_Rsm9hF&l`{5G-RFv5l3R4@~~xvlXZM%@orKoPK8 zepQ81aq;-z3XM(T`qEY?j=1KT%SjH{+yB_h09&{(*%eP?GtpE!I~YI1Y%_) zGs zCcvj6h0F*R4=*I3e&FK4=fyAvh5V7i4=12}$sS01HWxseqD|3QBS#@)zcI=hhP2|+ zL-1Y>+kZlUGXg4%&*$JV7=b{57MP&f+)xb8!omWBHO3el8-W={yeJl*Dl}s8HZDT^ z8^ZzM(YT;=3^oh7h)E4*NAd|M6u6H32~MZ|jm?SVM*Kjg(=b2;zyw%)9tMZTVSeP( zY547IE|Utr&tOtR0St!~ioz_i#r&iTR*(6+{6!A``{VaVeo5osa{ZR;mlXJ=4#%pa2%=ngpOdf-J;u1Fcn^hbzT#K^sCg(+MCLa9oU{NCsRo zn&*by?}m%?zzRK#qr6OFD5kMK_&6W)INvP?ea%vRaPfXy5Bgc9`4}JEWtA9!PYAS5 z*lm@($2uv<_Au2ppJ7uFVOz+wzsPdDu+O1nAF+(*R1&$pVn69pv};u~`AUpyRjhk; zoa@ztJFDZpuO@h0KjbMnM5#^mktBN6Chx3I_Gvim(~#;XP4&Bx2A=-1^gvlgKvPEG zoj<89xna$DjJDjc()8WSz$%vTz1(&{wvF|Izx$9S!7fAxNUDOC6FB*U_JUQUilfzBAboIy&#d;pgsC}C zHesGGgg=$qed>5F85i@kiX1bO?kpvZ+|TRsq$7pjG$6$lJ+B|1UlyJBF4lhy?6Rmw zy2M>7EvR|0YGOP^J&5QmBf$B#t!I;AC(2Xz>)K9g7Fg}c_0*1^>6bf@Qk*;(?w8U) xBMM4Y?F^DH)b-xY>2f>)%s5YeWpt1AZKzdTz4pm!QZvXC;_T?=P+=Ez=wG4>2iyPv delta 3387 zcmV-B4aD-6BF-9+8Gi-<001BJ|6u?C00d`2O+f$vv5yP+Lr_p?Z**^S zXm4;JNkc;*aB^>EX>4Tx07!|QmUmQC*A|D*y?1({%`g-xL+`x}AiX!K(nMjH8DJ;_ z4l^{dA)*2iMMMM@L4qO%jD{kyB8r88V8I@cAfUux6j4!mGk>yHbmir}mzUokXMJm* zz4tw5?|s&~0Fb=>xx92(3V<}8fFI)JN{@_+repg74DbL0%m84rGBW}~J;Q)VJ|1rL zOpz1#A_#ytcf>0IH;uf5=ydS^Nt%_x7l_gXiP(b8$z+MRP{gU(f()^JM#R+k6fwgn zG4n+S6tTRR6Mq-k@Uzb%JByi}#$$_EeC7;x8e7agBHo%M z6{c}T{8k*B#$jdxfFgc4LOO^JKENUwrF_Y9)-eX;$OUwSIQ_o0dBB}pL2uro2q&dxUGa#+UVg8rfZ>F_u7)%T3W>Ha7W-JO%b6s8L3;<~ZY zQ`3cfdVgjHlf|JM{dtK0ao}H{!!U%Cz~OUvqKI(OlyP~9qIUDxTmd(oN9XeXQxpGT z*q^jG*CJ6GJ^^a1F_0Rd0_4{|fT9oq5_3Sb1O3rAe|$I)zq|<5iN(49Ea=~}!e!zm zlbiTC&MhR2&Jyyo7Wc%@5}*MANCGNQ04hKO=zjtuU=D16J#Ypdz!wC9Fc1Y+0TxIC zX@C#1K|a_Bia-h20d|9GPzxGB6KDY^KnFMtE`ZD6I=BIDg9l&)jDzQ32D}0D5CmZ% zGDLwCAXP{UGJwn>2IL5NK>kn&6a~dWi4YGGLix}ps01p9s-Zfl3Hly71zmuyLW9sf zXnz!%f_{hI!w5`*sjxDv4V%CW*ah~3!{C*0BD@;TgA3v9a1~q+AA{TB3-ERLHar49 zhi4Ih5D^-ph8Q6X#0?2VqLBoIkE}zAkxHZUgRb+f=natP#6>iMMoK->`~sR z7|-H2{OUqatT zkE7pUFc=y}2V;Zr#zbL~F>5fTnEjYm%z4ZpW(+fn#bOn(23QAdAeM<0V2iMOvB$9I zutV5!>{}cWr;0PjdE%mRJX`^;5_c4L7B_^Oz|G^O@LG5~d?22U&&8MF8}MED0e}2B zex4vr&>=Vw!U)NPjf5&f3*i#sA>kE~NK_}<5`&3c;s# zLeh59VbXchJ<=;OnXFBACP$M6>atgt3H=1Y2UgM2$qd#E`@bNxY<% zq>JP#$vnwQ$&-=;lG9RnDQzh?DSxKaI;k3|Q&PiHv(gl4GwDF-H0e_5qtaKUCuOiQ z+AVXR18&z>O)PYmQcT=_ETqMWn?X7!)0@1 zYh=&Jj?fUAHqD2YN-LwCpxvRpms6H=k>kj1lWUP1lADuXBJV8EkuR2Sm4Cl2|6YNv z;GvMBuv4K!;gKRrQC~4wFdVy&)LYdbX@3wj7#ay06&l?dGn%TJ0h;-m&6@YM@LCM5B&|JKy;^hH zI@%H1TeLg0Cw1g?e01`3nspxPl69SQSL@d6-qOS9G4xXO_UqlyhxM)Wlk{u!2Mk~X zYXh#qeuF_nw4tpb&#>Nb*ob80Vw7dnY&2?2Gxj$wFzzsZVWMdgZGW=Uq}Sw=sg-G} zX@ltlGZ`~qvjVd&v)|42%~|F(=C>@!7M>RCEjle;S{hh#EDu=TwW3%BSZ%TDw)$vo zW6ig2v7WNgw28CXXEV&8GJ+VTj4QTiTUXolwx@01*;(5O>`vJIW^ZJlVt>?ra;eTz z&eDdZV-D&LOouv$5r0RzW1Qnb#}OwrC#F-q(-UV6XSQ>r^Ms3@OR~!`mlv+4u6)-v z*Eu&kx3zBP-4S;$_hR>c4;hc;9@QR?J=HxEJ)1peysW&|c%An~d;59s^d9z6_F?%n z`ONs*_^$Qs@gw<#`c?Zq@z?j~`*#Jv0lopd0v;~YTE<(}5q}5*eFAp{J_^zaS{?Lb zFeW%CxF+~%h*?N}NN*@5G&b~T=$kOtu(GfR%XOCvmv@IthR1|Ah0jH}N0dj5M4Cjd zjl3SE7{!h1jK)TXM>j^#uJBl~d&PK+RZLOLos~K(b5>qmrMN0})tOkySZ3_WICNY@ z+|jrX%s^&6bALA8Cw^c249ktRhxMH8%&uThaU3}1oQVX7gz|*RM2Ey(iBm~VNtH>{ zTsLkt_hqtoa&7WlN?^+2l!erY)YddyT3p&Go(wOA*ORW2o|8V9VUSUjF|yij_3qU( zd_R6;CX~4{vr|A7{Y>=a{6-hbGPMAwA3osmejsK$US(s&a1AyUc0{X5av+U zp{EVu4ZYtozHMq$Y%FQ~c$jy1T zu9enWavU5N9)I?I-1m1*_?_rJ$vD~agVqoG+9++s?NEDe`%Fht$4F;X=in*dQ{7$m zU2Q)a|9JSc+Uc4zvS-T963!N$T{xF_ZuWe}`RNOZ7sk3{yB}PPym+f8xTpV;-=!;; zJ%2A>>~-lqcg5k#>8o~EPhDeN>$q-xy}i$>uk9zRpW6DZ``ZU>20Cxp-sl=!I(T-- zY3RaD_nVh*`P{mGd)e*5JIn9f9gZ0uxy!ygc`x+2=_${t8_!le8-Jeh ze15v28mBOpTuPtA9&j!stev|fQey;ef!rLS7 z81H)DN4%ey&;Ee@Q1wyoW7j9YPY)N;78d>m1DNytC3hBe0000WV@Og>004R>05Jf7 zga82g0001h=l}q9FaQARU;qF*m;eA5aGbhPJOBUy24YJ`L;(K){{a7>y{D6tIuIX! z0|yEY0F(1u6951LSxH1eR5;6>lRIk^Q51l`xwCinF*`dmnJk7Nd8my|h!P@11VPYB zyA+Y=Ul8;MMA6b#M6gnbT~GvzV4&2*LH)S8#KBf;`Xn z#m(sngi?P?C7%OahQ`ey|{*wzY~CQvHn^sz%&JvL#mLu<9QSH<>h zvLr(k`batoy`UpY2Co;tp=kn9@2eAp5$$cCxyLV2-GqW6FiN{Ln=Sk;pI|G0pqnQw zEPf^@C-8Tu_tg7(l5U2OCPJE6HJ9x$LO05Un-OEjk5aByvFsW` z2t;#b9nW*I>@tm&26rC30O0P^1#}d%^B-_)Rqj1|kCZwa>n)Z)eI@jLnk(xF$8&aX zpjblJ1(TLeh@HC|7`#G)>7=48ourM*viZ?y09u{H-v4a2rU=~WmMS#!c^V8rj;5z>J85l5VmPC?;5fl-e$LH>5?V-bkDLguy zE@tfp0P(}B9Z5Z-e>44Dvt7892#4L*qiTOQZ~AQRm5bcis2*pP*hClnRA_+^etE~Z z5HM*$^~0ETI=(jZcWrdA-GrVQhV@?^^@nvppG-Hz8An=OXkM+ujG?Ay`No`A_cf)r z+@G~tFbOa{_StB-EboOe?PbrD_#*oAWfi%ucs9=8?0=} zT-3x-pV&L5r>ky1M)ZY@F{Sq6%@1o)DX+$TptR3!llFw*f6m%!OwJv7#f@2OZZ6>cSv4@!Ko6 zm^~to28GG|y$|T`Qk~~3J7WTWN*FZ=&);Jht#ux8yqay-p4gqIkeJzdvflUj)I9k# zxc@}^O+#z+hvl10onJ67x{rcVrRTLiAc;rYIAy#UF90X1-Y` zBS+jbY9Hoh!M+%W_;%$fBX`#6lr@JEFI5iZZ((Y`=DBo8Zqr*Ipgmd4M+fjD6*~*l zf77MR6hT^eSeB%Bwsa)x+DPnhYe4C?yLpD`+dNq)_O9AjP%G~oOL&NSfR}^TMyT?Cf z`Fd~Yy1p_FaLt`+zy7PN3&tClKG!>U0yWx{m_fMAQI>|Rbjc}C@h)Gzu6ZOb$_A!C zJER@(>O#ED+uW~une`A|gMX0b)bUcYl--#cGFEO2Tk=sp+THW)Ma5h7`F-lZ8iz^l z$b_YHwYl0#yKIL}vs4Ehez3l#|JR1`vZ^z+D$-E@n$(9o?>>mRo~sIn=R3*|(szrJ zN=;k$XMFfE=CvrR5_{_XU~yDu*_qnuc#4;|NB5U%`S|*@E*Oaqfr_Bt_kASIm2K|y zF;sTGxHDiDq^~z)`aW-Vd(8CSBhyY#sJpzmO9+JCFWP#yEFYUUEdfCUN>>hbYU8T* z_2H?%Ez{u!L;(XK0|!*IsU^CO_M-eAR%|l#MW?LIU%n`h-<=hWZvRB;Q zUGg?%gk=C&&nW-3kg<3|>U<&dlioB-3pWmaz2&KKp#8_{wXxSycymNz11Z0ENA;)B zeuD7k`Kfs4ftE`fx-E{Gm}gL4lecx`>q_cvjNz@LO2u1!cPD6{YT}{>0G1}Qz^X|m zZNXBxY*z}6n?QFJvw5Hj0PqbE^C;9Lx)7c~XRtVah}W7H1e`_lLqvI!+(^7&I+I0| z@afwmVUbix5*0&31o%UI#aNJlO&3z&V)h=604w%GeC5T0@AF|K0{#^uO!7mJN#XEd zE}srZyP{p)T<~I6vIoK+0{7+9c4H%Ogl`n!&JV#93VB#0QX~?&icqdxJ_G5F!C;VX z9!L)l7ZBkhNZ|-6Vi%5J?L5W5IdF6Vl@D6S;&R~goRkFaKA|510iMIZk<+Mua`X1_ z_k3lhQIYgLbT*wM6d>JQ-H~7MG%A+B<+CZ^_bfJrK}Yg93JK@KbkyqH~!b}h((1%Vf{>;KCx$bT9rItT2UL|}Ua%%uf_t(8Og zmPow3qUe&Mw7#zVN_|D6TB&KQYH6;!b)%v6ma47w>fN@c`}dj^Cn8sac)f(pAvhp= z$zO@!W+{&tEdT(M74uUMC@Qf5gGRzo65eRg#At>2x=*~=L@-nwiVKP~?$yf$xO0G% zke%$1!pr~)7>uG!dI%GUsw{4ZR!HRlOIe(#DbNrBsiIPuB}o#i#!P2p50V delta 487 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 Rpaf_tgQu&X%Q~loCIGf{2{Hfx literal 3102 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 s06+jSQkt0n0*KV!Z diff --git a/mods/default/textures/default_stone_brick.png b/mods/default/textures/default_stone_brick.png index 4312b5cbea65ac848dc2803c86a97e95a35ef2b0..4dbb49db7966b511527d3c5998c95dfdf1d2b036 100644 GIT binary patch literal 4196 zcmeHJc{r47A0DAlma?R5V=9RlV>@PSVKA1l3^SIL8MB+!7&Bu^_Jhij^C2QBvaes3 zh)_9BqmhpEp-72VQYTJYoYB{HzJI=d`s4fKyDsl_J@4~Azvq7M=YH<%cm1wkhM$kS zqQY(k005xqfqv(fZMGjpEKH!oW*hyzj7Y{tRl{FS{k{wv|}m=9Y{)YW4! z$Jry$%+gG2PCxMZk`}-J8m~lIs5mtnc^#X+ZGmLhc}(n^Bcdg?2b|~@(I)lFTC?mZYuj z{S5vU6G-!l0_j*|-kv%<)|)vH))k>4R|bRRWw9Jbv#*UfrdwhCU_(+;262k&1$T|x zz30cV=P9*+Ao%ZyMgVw|348M{hKH@WbJi8|GQ1a(P%1M#9^BIl$YATE`!XR)vog%K z=7E4xQNPRSu}vVEilcC_GqoIIC2y@cm7%&w*E>Sm_OjAZtdM#O`%up zRbu~o@!51)=H#5^LZWhC?Dau~uc5Ui()kYeRz)ScNrrLM=}2dk%^CUUkuFtTe5dH5 z_fmJvh-0>_Dc0mOXIleI4vh7i8BMOlrt7u)mt8(^64Yj;&#KPIJE+YJJ zZM(*M(e5`Xb84F&eIfdZwV-c5^41dijCtr2`l8EM2O126vVs>Q`HAuwP<3J#wyX(V zCrf^9>ia5|8~{(#UK|?e`;wc~{_L553m(lDS3!ngzx8*1-i)@1b|N|V6z_~5AZzq6 zad|gL2f=A};gM#`i+AaX??$tt`t=7CsB{q9`)e_C%UB7 zSXxnxOKZcrlV((1`1#rnpvv;w3A&}mzqj2B(}-Gp^<-?8H>1Tnwc1>@58u)0{^sd2 zT}SI9Ewxw-Qd()!z)aPU2U1x_RL+ek-RV@{EqqVe<5-mT3AH@@Zr)wL>IyV`tl?d^ zad&R>0-@Z-OxUVyf=M8= zQY}IPUwOUo@{Mb&TvqO#R||;BYaImxv?jXmXWk<#wQDWe&V}Z?4|CS0_=-L8S%2tx zRP^j0R`7n`x_UzlO3tq3r@r)|y_Fy`!?Z`1N{c z@A;czg4woDWCb_G>-78>gyZK`Y&;H~VB*#Dx`;pCmSeUI*M-{M(t}*orni(_u;}p8 ze=vp$6}Ok^nwvFkbrNF~^Vf~=5cNVW@+LPZEU!~mgBAYMqrLkS>92L(F;OhUjQ za&bTbgU*bG3G6}Ncwv(7^)MI&{08CD>_NduKcEYXLj+oyTAG@fxC*E|bC81q(2heO z!BB9w?-Y`iJ&3~PvSDB_pU*etTbQyqWH1B@g@Vn@!RF>B5`;-~ER%~9m@uRFtW*4( z15S*_b0p4DSxn$MCoX~&!?g#2B>TYco4ThLPz~Ar$ zJj{*7Vc;bHQyDli5zJ$blaMZ)Deo zT|eZ&4}mwb>;KCxh5s~AM5d%`;!D~iz*@o~Noz&-^A2>iwzRadwz9Rcv4cSmIoLZn zIv`wKJ>1Q$Qj>GDGJna=EH20|EiP=Rt}GKa&PdLcituuW1JY%6 z5R!#F8xax>0BluVA5ws#VogbK3)chby5;fKEvnKQOG+*fNvO^P?i8r`yGho_?tY+L zDivDD02wn{e~$j}bx|{PO;)deiT&85#Rz(8bYXM9cl18U@Bu~O0h6u%I%BZJ&ks70 zR8mUbgl7zc0IVFVQiaYZqh+@nx29YO*R=_~`SoE;2}Hv;hd3>Yy5>-kK8s4|UJ?6) z_5HfHYD?2{tE;4FfX8|rw=M%a{A}^(dyEF1jtx-S=Vr7iRVsMxc9lk}J;2agy^kiG Z`oP^rDys)=#32&h01sCmc!M)G=`ScLs@(tp delta 504 zcmVNRc9SwcSID9*XuKTJ$>$6zFgH5fr&JmTUuxP4OWF5qnri$Q~A$ea!C8vOm9n zb!`VAk0ai!QVKvRWsXqxd^(G+?Y6r;fDmJC4BnZw_IkYnV2oL70sMV@6abua06u@L z*8p}84^&+nzuRJ z+PWqdYIDw|ltiV}YPs~@TWg6708KcwEr9d+3_wb0v{q7ylrtrU5RBII#UVz5M(Z+7 z02t?tGcmmu@4ePK41pHNIlsKTl<9w_>D~Pu03{XUtnYhaO!f1}cdZQo#!#sWKzBTS z`}*bI(-VLY0x7Gt1|T-u-7pM9HjX0zRaK|cX|Z6N%@#n+dET=&MgUl?R@cjgalT%! zZCwMHUMKVRM7o4AM)39r#yN>Y`h*w;?_JYeFP9MG`}d2!@9(9YG4Z98@;GE34hN(4 zJYfhSrzGZTO3*8mR7y&U%oB1-0K{s!Bz$>(c1?3@u5Smprcp{srM&l4DR%ok08+i} ujsWtQV@#hvermg8+a39WQ*+yOrIi1r`0=pcmt^z+0000aYi6{w5ELSKf%1_J8NmVGR zEJ#&It;kGcV5qqDc6wmZ6AhlW`<6%L7(F>UA14@uRySMz`))06_4TB`M}AMXxnpnOVr07h zdQIM6uAO#j5w|`)j+9%IYrT)xmZ#puA-m>{!gj@n-hRJrr`WDv=70KT`KM~h*S|jH zdANn&aPIptr72opzllS|+tvTYVu|C`bJqX+eW$hh$D}>gUncF2*d8-4STN}x*H2aV zXun@d({J;B@_9TnG14$XLy#;?n; zaAWZ*?ft7;{Y!=I8$|`KOieq^lx?FY+5jFL9GbYWsUuYBs2*|(Pc^68B`@pqO~Zr0?8sH$%Z*f!p5=bUxC z(=ScoSf|4sHAWE=|Fnyms`H+xZH|zb?Id}{Lw%0lWC@OClOx#gzL9%UcTzXwmu}u4 zlO)W`O zsL0L9E4HezRRWu91!RMS^_3LBN=mYAl_Got6rA&mQWZ?}O!N$NT`MxnjFjxS6l{u8 z(yW49+@MAPdA3R!B_#z``ugSN<$C4Ddih1^`i7R4mih)p`bI{&Koz>hm3bwJ6}oxF z${-^kX1JslCl>*OE;Bz*0c2)kQhsTPt&$Q@UIA)&N;2H+g3_WKu*oUO`l&goxv6<2 z#rlSNhWcRjDalrD`9-;jK>eAyiRr2O1$pU8`XJZpL!Arsy*}LgAUDt+j9Nlc7>@?m zXmF7f0wgIOO;1l8sYGX}% z7+UDI7sy~N3GxeOaCmkD*rj1$O!9VjVd!9$^#F1>3p^r=85p>QL70(Y)*K0-AbW|Y zuPgflZgycdwu$GK3jl>QJzX3_BrYc>9AIG&$b81W!o*%Gx8Lo*`_h>gGwMuk$@L!F fkiX+%1S5m=CjE=5Ya(s|H8FU)`njxgN@xNA=kYA9 delta 235 zcmZpd{>?Z+qMn0|fq|iTj-w2aI^^l%7*cWT?X87EjE)TLAFE9~1w~v1SzLi+0E??4 zN7EvXE+vkxM~or*Nwr6N42vJ9J*m!F6zhZf=)ShC@oNV5*|Trsc6ZO;uM!1-l}mrt2yxDl+@}Ba=P-ZZ zVq#~Uj~Y@47MDvdaYje&zIIF2t>+ootMkEb?iUP`pp`ug{eR5Qu=~e?=#IU7w3}Fu zA3csP&&Q$6of(~Sf;^6dx1G+|q_Zx&r{kQT#O30i{5p0KU^EY-u;DHVKfiYoL?A&j zo`ffsvORsmD2rb+zrfDi-52og-V1g%AG>^n!q{*ogcppCo&49>ErecJyLSHYLV}I< z`Fg@`jHYAseSf;_0+0&k9O^pC>R}={a z$WfzAgZgSKRfOocGvH?C%Cc+<_!HMfikmkLj*_GqQE*kko50L>EVTAbYrjg0of}~$ z6PyuNe7en7#^1SbM`KKh6Is2nLR>rrh%hE|^NCp?gn!1t)GvJ3ZJu;vpNJJO=oie2 z17=&ci{j~_Em=GZ=6UOk-Eybcjsrl1y*+|~q8-^l;wg}g%#jEK9DgOc=wpa6YD_V!s8g>&qpBv&iIbp&`4mz#NmEKWW77=R8LKm9c4)z?sC)tYK<+@vA>TWHZVZK>r>9a8G9`yP7i+EdR1S{pLl@FR>kbfl4Q z)()#5S)&)`erAmhYm+gz=EVnVFvobgpjl4*6vHteK0tk&9h@l)+zY&F?P!4>^Kf{QGI8V-lh~#K>t@U|> zOMg&(XFx(!C;vG`NR@d*i6}tw^JB zV>?J#Y*X2@qEFR^yd%u1xI)9?3 z-t0Ops`E=rYCd56j-Y+L@}jXIgmqvirVS}u#n~x}_$E1onQf#TWS&)zd0K+hD!dc17wHi!@8edS_H(%AbDmwHXlgYSe`y8cXnX`g-KAT;xY}~$ z5m`7|cG|~x6-W30k`bTga>WPn<9~&jh}3~E*NX_gYnz?|uOo}ZQ^YL5u19JXAGbZn zi+d}oday3Vj$}?XO!{_AR~t7-yrnr=Lx~zruhhamC4ZZ!m(q~U!1W9?)@E$mB2xWl z<=@~>>`n)lP+rTG!F?cq&H(Z99g=I8`0Kc`3K=f%#ob{wI#`KQ5WS0p5-2)eL^t00000VtQ0qbW&k= zAaHVTW@&6?Aar?fWguyAbYlPjc-lRQyA8lV2t#|O$OwSBPu2-E*QLn*I)aqgvh-}z zx*w;bWJ;K(c3QBde@Te5Vj?6?C>VmCk)%(8YU;`DC z+5}OPaRVQdVFVqM!~_i7vH$?N006oG0KfnM(EtFP7!>jV0Q&#{ z`vCy^4FLNO0OS`4`xOA}AQt5$8v7&~`z1Xa`!p{5H7@%+H~T#}`%g>zP)z$#PWxV4 z`(9l8eS96A|6l+B00DGTPE!Ct=GbNc0004EOGiWihy@);ks%j<00(qQO+^Rb3kMSl zH*BToCIA2cen~_@R2b8Zj>{H;Fc3qh7PUn?pg>ToLO}%o{|BM=;A2O2H#wOJ(IV}Q zCR)d4W>wlt9v=&+zy_6TZ`TqicA;SFu75ZSAe5AChgaX=V{9|`9J>3&+2(C%hHE^7 zb+{_{eDa*E=D#v1^?Z=uWf4!g{M{-N7XRxbNlP^X8Vv|xc-_|$00000NkvXXu0mjf DknwRE delta 819 zcmeyV{;qg}q#_#w1B3kM|A|0~v%n*=n1O*?7=#%aX3ddcV6f1byn(fi)l|W;#yWRxtd*0q&TFqAXPsowK%`DC^^-& zEH$r0d9p3L_2h?a8k0C}Ctu^xo1Dw3JK2U)S0p9bDlNY#H?hQ4DKj@QJypLTFMYBl zhr;AroSu{Caym~|=5m}I%Aq)UB8TJT^&G5|%Q(a)zhn=Lvg1-vP_U`UE%5cV^2jVM z$uFt|3n|zXrKDK}rxrqZ5N=K;NHq|E9ch)AT#}ieXRDN4l$uzQnxcdvnK}6(rwuP$ zZFxp&-sA@y3Sw}P;{3Fd^2DN4$8?~_Ci8QuS?WV=)45_%aXYyVz=0Jhg{ep@&8*V1_a4{Y|bZq;^ ztpYyEfgeF4eec~x4Lm}r&DuVR|%*U0?y~{o)3w}6Ie;{?o^E*3> z(|m+BC-g}g%KOL6IN4xUpdxu-DB5^}}l4g0;Vx)-}|Id;VZ$e8OPQ{nOOrw~l_= z!no#swJpEC+lVXs=J4~yab1#(xL?m;&&;W>;$QlZU1NL0d;f~}PFtDo@|k1_I!R{q z6e}`@G^{liOYB#yd|z~c;xi`~2O-xBvWuTo2N=4^ zX)AO#JE}VC_bajx@pm}GNq8OhG_JaCfb(|o4?n|k*%Ggwc4su0ef Sp>-4(^bDS^elF{r5}E+j2qEPF diff --git a/mods/default/textures/player.png b/mods/default/textures/player.png index 6d61c4342f39fd8da8330e97117c68a3709483fd..4f9ec06c66cf362d2ff6df56119a5ff41fbb61b4 100644 GIT binary patch literal 4160 zcmeHKYdBQx8eWsb7Q`gp?i9IHh8f z9Cip%kwa1vi5RCXpJS3p2bJ1OyX)J3_8&j?k9}R%b-imn@AKa4Ue9}9@AX{wN_2EM zBqOOT2>^hMjkSdn_=JH2u}K8H`%c5W06;7}jOfa9B8MP2T(&PgfQI0Oa%cz|pY96) z{J}C3BXxO~^tUb@t|$SQ(sJ0P&g?>-f_KV%=E#>|_}w;d@d8pUjPz$-*fZMmMrxSid#dOhVC(?j^@mU9~Bhvy8F@r~ZYjS3dEkLFH$Jgk{7 zV7BMPPg{;3{}L2C9N%7ks_LIEqjO1jPS+DU_iw07mIPv@S}iW|7<+AkAE8cBcLrrZ;dGh3** zk5bcVK;Q+tb~DSE8B?yCR)sY>Nohm3&Ziga+IHVGGitttuMo@{9f|DR$$u-pw=7ye zR-Rq^#o%-HSA*8yby&#`=ZXx(YEoZBX*_uhuRMYLt_RQUL$;vBEQ+r0MQv#yk zc{%ZQr*5tPYdgVowR0F#2L5#)kTfvK2iVw%vWFd6u1+kID4K1J5-l92X~YmqwxLr?qC>4t*@l3f2B}|DbOW)4lYCZU$7Jg{U&p6dk%#%(QE@fbGacGYbe|;p zV%-BI+1Iibkq$=J73Fv>u3b~TZ~s1ATd%Y5M?vMijT zO|$mP6uun7;4pnD4FxXj$OJM3NsXf)_c!;hULl7PMTqzr%&V!mRBb(CbO&-E%C+hN z)K6gj?uQ7m)LVR1C56S8-rjn{Z9q+Wr^jAntB3GBXiseU{^(p@an0Y@k)QMNs}jRZ z@$NhI?bR%(afa0v0<15FlZk5WcVd%Y9!f7F7!TPeZ91}~?ceS1-;qptK8I#Cz*TdN6UOZywA8t4i@!K(Pa%JBoUo|XgmezO+Yqf!l^*t1R zw5<|uRpPh)_9hi6cPDG55_W%|Opf z92m+qviNk5zSy447~Je;_~KnnNujU0QQr#u|U5~?y8IcOtAdd%1?@9Qym7aM_t z-N-YC)#h0{HpagrT>YMNX2IrHm>{MfcRN=_zVMr^yNa*uxvGR>%BP6Z%Kq04P3I%f zp3KXrpx$zZoFIbbl`h<3@XQt?(>yGCW6(XbEd1cG?FBie)}gtG@IFIi-0z+rbW)*@ zmhSdmBlKf=j-?8T17A7wr2B1JvRyt}kG|D;ax>wPovnptkJi^^qy|m0N#5*)~DBT%tY}eF$ z+`C^@7~^IXA%B0{Op3bM>qYt2&$drrd&wS)ISYSOi2%E?&wp*hbPkWQ)`szkO)^n> z(jq@HV`NhYZqw9Kk3`}Iye#CsJ9>l}p(7eYTRrt=aDpdG=)+P$%gvCp&E306z5VbH zISW0vV#ilpTtWeTJvkwx1e*>35+~_k(|5JE!&2Bx6q(BQp`rLp4p;^N;12LPWD0}E zL-^4A=qx;P;cg=mL8s!8#|-WD>^TQ%{&edwF3ma2fk+8sP)w-E1N$X$d@M-7r18iI zJ~Mz7h~?vvKY6iWyp~2I5kDb31|I2Z?}#|a=F$)bCNF=z9_(e{o{Kd@);s*R=rc%(f02-6V;sv7hQTphgcq#>J z#pW`};QMqY*^h?iu>6qdwQAA7$_00i{%iYdHT>_djgPEL;|;ksk>jH0_t_``? zrNFwt8>j34OD@U(7$_PGbWI_kJpz725kPAt;b=#+1OUG^n-v9oTof4t0|?K_!5JV- z4S@gK0L16;AqyZuOwAgcNN}u=2LgZ;d~HC0tQ1NpW+RO6pF(t0BcSeu+^<3D%quk1Sk<=%nT*93njF!R!Si%Tem8gkm!WX@h&B| l38Esb7{(=q?$6@o^1yd*lxitj1q~7cHkJ++<>uZo{{o5VoC*K{ delta 125 zcmV-@0D}L(AdUf$7&2*y+{QCObaA>fUN^Y f;3~+!G~umW9#GF$kG3--00000NkvXXu0mjf_UJK4 diff --git a/mods/doors/textures/doors_door_glass.png b/mods/doors/textures/doors_door_glass.png index f597299bdfaa2389d40c5179069ccd5685b937f9..d0c14225a2cb54bcaac5f992c10acb847d42f05c 100644 GIT binary patch literal 8220 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 KT$PMj@P7fLXo_C| literal 3064 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 O002ovPDHLkU;%>CyqnDc diff --git a/mods/farming/textures/farming_cotton.png b/mods/farming/textures/farming_cotton.png index e2bbfd7af486b64c658bcc7c6101b22ca95ab7e7..ff75570941197bd6bb3c1eea635213d24751c00e 100644 GIT binary patch literal 3844 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!63?wyl`GXl4m_Jp8M3e+2mMat#<)>xlq$-qD z7NjbqR%E6zFjU;S8y-FFu?ElI>so1?9!?z7nk(lRThDmfzo9W?lGm=wcjI%l+{6?* zt5x4LeY?M3_TR>C8Oslg43`MZiM9Lbady4SBR{`_nwe@E!umksPELUL^5`xl=5 zdGkwA^n$uq{nfS^Gs_;CwA}ts`SF9zlVmnaUc=a`Ip-%l+x2FDPWr!^lJeh`RbkAF zyKW{kWzBh`K3#kpheg3Q>sxm>PMU30v}JetA35tAkC-c>s}7udy7GCo#(`E#MVkbZ zuNwSS_wrs$-1_uq-hwM{A93!!m;GjM?C#Tc5 ze0FL}!u%PhI^W-X;C*k0{*g_F8tP{*n$5UdIMae9f9Fy4^Esc7R2GD1F1VI?K*8vK z(!mI~>Jr9Cg9X7#t|l^zKTg&yO7d?vY)}dj+*Np3re}`F;q7Y!ZJtlMuyotvqa6a; zvZh%=>B^_8H~tBf*KOalp+aDyf>z+9CkGC)b1G&?q=$rstzYCAx>)V(#KrwW&Q~Oo zyDS5ftPiQQE}4+zrI}tl>ukxkt2fi0)Lb~&ZvTX%UGAfYyWTXrqvDziGdfkL#;h#b z`f2?_tt%11XL)BY4f^aGm2oS{Tetl5)^m5uUoOn&a`u{go7?!$>`muY&u%uX zKX+L=ds$elT7itZk%jTG6N?SkH8Xl=NX^;Vaqn_MUcob=$UqLsY>nnQUCoBc7tB>& z?%288@cT4#f&YT}U%D(MuKeYEmJnb*v-;Uv>1(el-cOypaWxnFvcBE2Ii_h+^<^^u z-T3!sKX`9&WT&p@A_Ls}IdM^4)%mw{QG=z;4U7poNM5ZZ3H8tn4kvz4kk*cc!(Je|z|K zo&D>FywkQ6T%77AZEPK&-}&o_(1s(i9C@D6&!5!xul*9LbiT7ld)o%x2?i zolX9)c=*5S&Q%$6*phUCg+L#Ez=pB{W`9OhdyOBv=+G? zJ;Sz{fq^qC6Ij$l`1)8S=jZArrsOB3>Q&?x0A0brU}IlVkeHmETB4AYnx2_wtMq>N zekFy>6kDZmQ(pt$0_W6>OpmIf)Zi+=kmRcDWXlvKdpj8?tx|+8VxRzLVzU2 zqp52&xJU{Ck`#}ouAvoNT!;o#Y96rFR1Rz&G5l|E05z=wd_r7-^o$uZmM&eod-v`= zd-m+zyZ7kPqsNXNyLj>9rAwDCU%q_%_U*@yAHRP6`rW&C@87@w^y$-=FJHcX{rdm^ zfAzfG(}DUKOM?7@862M70Co%+7?Zr+T^Kr8Wj%l#&H|6fVg?3oVGw3ym^DWND9B#o z>Fdh=fSX-dNK<5^uMAKq!PCVtMB;L9|81cL1r8VU&vl&L|NmcK5>!1!vi&iWHq+~e zL3i!>jT=w;OXk;vd$@?2>=OqA1(j@ delta 149 zcmZpXTgEs+vYr75tY$3O3#6Dzg8YIR7|JG}wE*(sJzX3_BqUi6F63=6U|>0LyPiob zfvanYoYq7Sp;-c}=39fbGOT#Mo5Ae{v%>{d2ELewuNnm8-#DntaU>{xFV4?h=dj^m u6_eY=fISTn={(#C2Sga2c(8-CePF(CZ;(BI8sE9cAg-sYpUXO@geCw_n=mf` diff --git a/mods/fire/textures/fire_flint_steel.png b/mods/fire/textures/fire_flint_steel.png index 624f5565dd3029b7f3fc0ce0de374bb8977e301d..7eb4dd39b410a8cc61433001def20a2ad31e92fd 100644 GIT binary patch literal 3837 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 literal 3363 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 diff --git a/mods/xpanes/textures/xpanes_pane_half.png b/mods/xpanes/textures/xpanes_pane_half.png index 4e846dfa088e9842872673dc7c405db46e944bd4..7fc02522e792296e3505712d17f4bc870e7ec885 100644 GIT binary patch literal 3424 zcmeAS@N?(olHy`uVBq!ia0vp^oIotV$P6U^wH*hNOxLSIB1(c1%M}WW^3yVNQWZ)n z3sMzQD>Bm<7%FbPotoSCM1!a8e{q*B)4xLnGE9!Qq~Cn}-Wu?7)vI~a(oF27MHKjM z9P3wn_~-q7!GDg5XJxL~ET0tQa&b|sHk)PK(^s0WvepNc`LF-<;fI{0lB53hY^(2o zxOUd+6x{vvI8<&=u5G3EqUeuWM!M%eZk&6kt3}`P?e`BKw!FGr_HFUcd&jiq-;+J~ zg01#YqrYawn@vg|943WqX))_6zVrBJ?y0Y@Z`_sJ%l=+&?@_&Ly3?-*w9NR{@ zc4szkoRJ@&aZ~qn++v>7a}6eQp5oB9yZT}32me=VGkRt|axsiA)Z#WcKc`K4@|_$* zZjOvMGj4UgU-eKk|B-M6qj7ZNxeJkx3s+k7*cEw;r608EmNHBEv`PEBXwR)&^`FDx#ItZZ1C zbwd7nkIX8yWe3kp+L@{yHd)1YTF@tx_bXmKdiCt&-Ob|bBR8d;)~r6a^GVbWj&%mw zD=Rd1P6^WP30tu)BGz#6wPt?HFB_C)>z*u@*{WDO%Pf0k<>|FsZte6w{_*|F>K8kw z$N5`L^jbczY}w`WHPbfpJ-Ibu;bAu^yH6U6?_J4|zb&5i#qC{n)|QpNNxPo?WH;@& zE3cIir*1a0Q9`?Mhd+}?#=J90YN7L_^UCC(?0YKa zQ{OH9zbj_Oi+^l84KC&u&EHw;xc2=2xacG6f-RDzQXeEq>rE|ws_dCpJmK{p>%VF8 z|4JVAFOqk)@2V5ot0lE#lh+S<{X1J8>oSQH0@HW`)+C-;P?8Kv;l zO)W`OsL0L9E4HezRRWu91!RMS^_3LBN=mYAl_Got6rA&mQWZ?}O!N$NT`MxnjFjxS z6l{u8(yW49+@MAPdA3R!B_#z``ugSN<$C4Ddih1^`i7R4mih)p`bI{&Koz>hm3bwJ z6}oxF${-^kX1JslCl>)jE;Bz*0c2)kQhsTPt&$Q@UIA)&N;2H+g3_WKu*oUO`l&go zxv6<2#rlSNhWcRjDalrD`9-;jK>eAyiRr2O1$pU8`XJZpL!Arsy*}LgAUDt+j9Nlc z7>@?mXmF7f0wgIOO;1l8s zq#ykHfBs7URUnJ8B*-tA!Qt5rU^j+=G0EHAg`tC0)&t1lEbxddW?n8_?|zE{|FS~^K@|x;kcfhkdvUm%E+*H2Zx|oj;9b%hQZU-&t;uc GLK6Vdmo2wfi6{w5ELSKf%1_J8NmVGR zEJ#&It;kGcV5qqDc6#)tCu%%x_aj}WHK?>4DKeP8>W#wb^ZmWGdd9^?K{MNJwyb2+ zN%4H){O+B>zhA{|_63DYWG2meKB@S~R4=U$GkNE=^V%R z5jU;opUPNnH#qFB-?>lnf3(_9XOW!IpVbZcG0fvCk1y-GW+o#lz2Gt|CK}KQ=Y|4^%D7e zQuNWI(oKR#mE2oiwM%texZ`=%_+a_(8r^kFO;yWoZagT}pUU`yf9dwas_Geyi<0)d z>R6M{>>;QWz|tJ#DPr6iv@GMy!Hx+Y>2bW&wE+~CN`6z0|SIr(H^+o~?L(6d>uqPC=+Tz#l$+n#$Xt{$1RGS#?PJFK}| zJ^Xy$ySP1KdQIl*#I7WN4DwoA5S6&|(Mzt@D1N&q9_?~JHyrLSx^irxr?+o(-nBhb z!>r3+u6R6ecj^13*BzPNGnXt>=9jiRwL;iE_mod?`aHARX$G&IbCdrr{L7uSW#vcD zEX`Zayg{39v#h<|sh6g3tdrr67~`Y^duF&UpHeX~`b<({NUKrP71rgKmDrjx1zs;{ zzbkFYTQT#WSRSLokMarJ+;`1S{5|nD{mQRjeOc-oSM!7iEne^|ZRTO^>e%~J;`<)X z7ujdMk7q9u{JWpm_fOdY`QsnVZ^Uhtj=z0zIWUVPV$B~aDsl^eu3%uWv9Bmd zOwLX%QAkQn&&;z`dcS+Wl0s&Rtx~wDuYqrYb81GWM^#a3aFt(3a#eP+Wr~u$9hXgo z70`g()RIJnirk#MVyg;UC9t_xKsHENUr7P1q$Jx`DZ)2E!8yMuRl!8hM9)CiwIZ|3 zNXd>%!KNrB%__*n4Qd3CXRDM^Qc_^0uU}qXu2*iXmtT~wZ)j<0sc&GUZ)BtkRH0j3 znOBlnp_^B%3^D>@hD&O3auG1-GV}8kKxQT;<(HP&Dk%Zw6`+QvB*V=vC@snXo1BuY zpPG}Jo0?ZrtZ%4is1H`3l5FLcUzD2&)SsD~n4YR%ke9Bc4|1(O)VV<4>%+Ydas%zb zs3jzY@n~?31{X;oK$7Co)HNDhB!vJ;ibqq|&)eCk|A^<>}%W!f`!00mx=zV0@&w#~8?B@O1TaS?83{1ONy^WZVD% delta 131 zcmdm_IF)gNWDN@g1H)Ds9ws2gS>O>_%)r1c48n{Iv*t(u1=&kHeO=k_u!#sunBTpc z{1_-Cn;8;O;+&tGo0?YwmdKI;Vst0GZ<+N&o-= diff --git a/mods/xpanes/textures/xpanes_white.png b/mods/xpanes/textures/xpanes_white.png index 777bd606fa02f1809009f3e687c6d9c336a96229..a2f4b636ba2f083d9cc01d5d12ff70deb0df8783 100644 GIT binary patch literal 3496 zcmeAS@N?(olHy`uVBq!ia0vp^j3CU&3?x-=hn-?zVCJm~i6{w5ELSKf%1_J8NmVGR zEJ#&It;kGcV5qqDc6x5#6AhlW|HWOlOxq02jw=c**?CZ|KAyv~{!Gs5aO3*0RTo%~ z6y`i;55D^F&+p?L^$#C;SgM$wSAE{0JvC%U(xZ>NUcJ&>cJ+8|dB6OVhm{PQ0}W1< zzOFp&e?s!to~OCDS5A0s?fmo(e_ucUE3+f}Wbg28S6+D9(PrDiUA&z6=U?u!Uzd6` z=FUC+g}Hw>&R=ixBSvbM%CSh}NT>N0vz|8XEcR*J^Hp-ijZgnAe$~k5g}V9FcpY?K z&%yf8ds^4L3y(wls{Mj4Y<}~kS*$%{#&qlT@$vDla_=sff9hZHUh;4EAK8~1gsSW( z__usA{uku;OO5~iM7_NCHqZZ5{8KQmjInugs5igoUGkjkud+@>6y59IHGNas1?#kJ z*Pv8g#t`1 zUVKRj%|a||rilDLJ}H?$RMdCXtgBbHW}Kar-ug7Ba^8xoM<%UIH7?c;YwlJLKcDw5 zZjYE=lW;iqtBn-(kGp6c5!&GfVVoVk4d(>2V|xhFiF-Q~<`rWm|(&Q1Qi@-KVVmX#lsOhw-= zWLtSNx9M5oqREmSg-Q(DJsVUE{L?OKs?K|&wmCu~bYYJ|>7kb7Rs;*q&%d|Mn6 z{CB-A<-vC5e}z2%8Pe*uJbduicquS{Bx21NnFS@upp0SbwUf8Of#bpU)fv^7*YmoT<5Tyl zPYi~NBDbd3{kg@!z?qc^%!LuYK32*3xq68y`AMmI6}bgKS1>Tx*jE%JCTFLXC?ut( zXXe=|z2CiGNg*@ERw>-n*TA>HIW;5GqpB!1xXLdixhgx^GDXSWj?1RP3TQxXYDuC( zMQ%=Bu~mhw64+cTAR8pCucQE0Qj%?}6yY17;GAESs$imLqGzD%T9H|1q-4jXU{jQm zW)m6U+;3Q)sSlHq0-losWHO-@PHPt8fqP0cGQ z);H8M)Ca3iNw#v!FUm~>>d(wgOi$G>$V*q!2f0=s>Rh1j_2J$Jxq_1 zgNvjPAW89P>KY9$l0twa#iOZfXayG+q5+kf2W&N!1Di(-{~H{DO)KUApAgso|Nk#P zB7FkLWlZvRcVXyYmGuB}I14-?iy0WWg+Z8+Vb&Z8pdfpRr>`sf18#OeCk|A^<>}%W!f`!00mx=zV0@&w R#~8?B@O1TaS?83{1OUBqR%rkL delta 106 zcmZ1>J%w?C1Sbar5LngC4xMbtD;Ii)O+?t5+ebKq6(}m384^+AoS&PUnpXl+#o%0& znpl#WqEMb$lA+-4=^K!um&y(l=kj!M4B?PX{=v_{$jHcG7N6b#Qts*M=d#Wzp$Pz3 CpBbe9 From 022d22cecaa902827cbf05ca70e63ad342b51acf Mon Sep 17 00:00:00 2001 From: tenplus1 Date: Fri, 11 Nov 2016 12:09:11 +0000 Subject: [PATCH 59/99] Creative: Fix missing item bug caused by 'start_i' value This fixes the missing item issue in creative inventory caused by using 1 instead of 0 for 'start_i'. --- mods/creative/init.lua | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/mods/creative/init.lua b/mods/creative/init.lua index d90426da..a6c74a29 100644 --- a/mods/creative/init.lua +++ b/mods/creative/init.lua @@ -10,7 +10,7 @@ creative.init_creative_inventory = function(owner) player_inventory[owner_name] = { size = 0, filter = "", - start_i = 1, + start_i = 0, tab_id = 2, } @@ -187,7 +187,7 @@ minetest.register_on_player_receive_fields(function(player, formname, fields) elseif fields.creative_tabs then local tab = tonumber(fields.creative_tabs) inv.tab_id = tab - player_inventory[player_name].start_i = 1 + player_inventory[player_name].start_i = 0 if tab == 1 then creative.set_crafting_formspec(player) @@ -196,13 +196,13 @@ minetest.register_on_player_receive_fields(function(player, formname, fields) creative.set_creative_formspec(player, 0) end elseif fields.creative_clear then - player_inventory[player_name].start_i = 1 + player_inventory[player_name].start_i = 0 inv.filter = "" creative.update_creative_inventory(player_name) creative.set_creative_formspec(player, 0) elseif fields.creative_search or fields.key_enter_field == "creative_filter" then - player_inventory[player_name].start_i = 1 + player_inventory[player_name].start_i = 0 inv.filter = fields.creative_filter:lower() creative.update_creative_inventory(player_name) creative.set_creative_formspec(player, 0) From 68192a17e9ce85950528778d2ff769dd4a8ec7f5 Mon Sep 17 00:00:00 2001 From: Auke Kok Date: Fri, 22 Jan 2016 22:04:38 -0800 Subject: [PATCH 60/99] Default: Add tool breaking sounds These will automatically play when a tool breaks. --- mods/default/README.txt | 2 + mods/default/sounds/default_tool_breaks.1.ogg | Bin 0 -> 6019 bytes mods/default/sounds/default_tool_breaks.2.ogg | Bin 0 -> 8440 bytes mods/default/sounds/default_tool_breaks.3.ogg | Bin 0 -> 6875 bytes mods/default/tools.lua | 54 ++++++++++++++++-- 5 files changed, 51 insertions(+), 5 deletions(-) create mode 100644 mods/default/sounds/default_tool_breaks.1.ogg create mode 100644 mods/default/sounds/default_tool_breaks.2.ogg create mode 100644 mods/default/sounds/default_tool_breaks.3.ogg diff --git a/mods/default/README.txt b/mods/default/README.txt index d7fede08..84213368 100644 --- a/mods/default/README.txt +++ b/mods/default/README.txt @@ -247,3 +247,5 @@ Metal sounds: default_place_node_metal.*.ogg - Ogrebane - CC0 - http://opengameart.org/content/wood-and-metal-sound-effects-volume-2 +Tool breaking sounds added by sofar: CC-BY-3.0 + default_tool_breaks.* - http://www.freesound.org/people/HerbertBoland/sounds/33206/ diff --git a/mods/default/sounds/default_tool_breaks.1.ogg b/mods/default/sounds/default_tool_breaks.1.ogg new file mode 100644 index 0000000000000000000000000000000000000000..2a571ae28d42304ec086ff85779220a8de7fb907 GIT binary patch literal 6019 zcmai1c|6qJ_y0^}Ph<&A9yHS!QN}(+maJnR#y%-)$T}vK#KVw~BxIRNWyIK;tnrA% zAezV)*-CaPT5K`D&rHwr{Jy_Gey{I+-MOE0@44rF&pr3td(K$<`q}}zfWJ$9+g1>Z zoW45y93l<55FF;=M_>&=3`YnJ4{g(b=2h_BVU3TiX|qX={ShEW8$ zPJSWhj#`KL%AEJ}aA1SWn8~OpqtumA%IY%mAM;56RwN4=virBJoWUsv2%rZ5FoJ}F zF@+#b5|T2ok(`1WFank&4J?FXp(+-xU2sC0Y(c(3qO1I$J!v?AC2&puq9`dzpGTGi z*KtaZL+F51A{rd?V~q(J{L>hr&w*Tho`a+*Wi5fYX{~iA$q4Nv1dh$gkoFqX<;Inw z!O1XnQ=2$0^cFs?UbFiNrvGYd)!b>;QRlmu36raY;n+r zLT~+iin$V%IV8E*=K!h^Bb=n%8uO2lVBdTm{xxC}aK%S(pw|hs!Rd<=&_UsoiCM zsk!DfkTQLC37com8Y8fv*v&%QJd`ZL>J~LV%gXC%11W3z{5V=p8Hek?|zxaeVuN|$0~H@i8$R9Y!`LIBk&bm~Z1E7mSheb6aj89kdDSLNUm zP*#n_ASoGGKDPa2K-(K|NqVK(vXDIzk&nq?dlMS>Y6jYBc=xH}?KJQ> zhd{@yK-U`L`#aw6*PqaJhluw<~ zN{5-H!~N2IFJ%?w-e;)t< z2y{LX?dpYE?t>3tm2h@S16ZR0JKTROmVIiLBA{V;Sr@h$N@6G#rJ3<6WhcqE!sf90 z+{ihGa%}$EK6D(pT@-DQM$a-MWwY)TCtwTSD^v%n6&l8{U4R)e&vuW5@ zs2M0W3H_LC$3V;9&3J`AeE0S~B!%n=a>*GCvuX0}w`TI7e>6kDpMkuZmk}U@0477A zuWzeaioz{LjI2fR10qHPnQE`q)NSo?mZFve_Bdy8%YjU|rK+W+D9%pA2q%WK%d*5} zdcRQ%9Ja@eiQ{m!-mX7EKOs)2S`Lfj1_mv0)kLs6mKiv9=U*t?kUh>-12<5kZX1rb z#d$k}$QQhaYH*H&L`zZpke%hQ7!H?(8y@h+Wf9%Oad=1k&=Ah?XVmau6n>C+R)U2* zG(f~%Ai56*PTV2loes0L!s9@#)InrWt3VLS@o$}R!#{`v#6Y}=(GUyS2$zWmWhXMd z**dehc0?k+CeSlG&~?8Rs58htn~5L0Lwqk0gkQVyS}pK>I3BNwcN_}DYbH1kMY-GK z+#S7#H65IPg7=U{oRBca4G`@v#Jdx{-Rp?%&O!LuziMur-+F~we6IS-INV(;YoG>M z5ybzpbaB09S+U{k5uLs&Vjqq;W{-Ej6X+@#gg0S>IztD6tadKP~JE+8VjaF zXV_Pcq+)Zf0|UtL0f2G>YF0*#4~$|NT;T1zosQ;~C1t40%8=5qvrtmH%OW|>1`|NZ z$Z$!fWu#*RP~u>$p9CZHnYhB%k3f7vDJOu100OC=&i8zCss3H5@JsjPsf8sAHHVz< zA(E(6YE9s!dr0tGUtaFY9;q)cS-j`R9#LF;4oXp}g~K{Q?3MH75)RTP4wV z@w1*nFHl9gjF%9$Lxu##QzR(^3x*^vC;;rTkmq2l{SbWfqeOQhywL%DKDl~ulmK?2k#F>QZevTTXP_iOYPCxM z1HCR|5kMQ13Kuev0Al(;^Ityma)Ae7ezwLV}?X63ICAZE89 z7-}?1Q$w(7;!Z4AV&#dkBVmdtRa5kgq6Vkz?q@htWLuSwvE+0ej!(8g&C3eqRnY1} zC+${Ftl6g{ak zZK#Vm%Hh`21_pZ`1EE+as2+q@OY1`dV*D%V06E{zenAGr1tTah2>~YS06DqbmmNLt zCg;Ac1H52h1d9Z)4ggw)F^P#Y$|`CaTF13d>KTAO@w>#t#IOlHu#Jgf|I^^~KFS^f zSpPIw6AyRt8!E`A#$?yXD;<&h;}02GSy{xfBZm+DA%{RJs~m+NL8-x%jvYO$tlZXA zRbFc4>gOtb>lWlg0L(9lR{3S?u^3sG$$3k}aP#?>6BBn_5Zhl$-EEq=Hk05L(!#Xo z4Z2r1rkA%nQ$(WDtR(a2;TqePDe#NOT>8|7yGRc1$?m!731S~E3(~f(Ww&-@p6*N5 z8vb+d+C*5&!zrm0NiT!Wx`?pJAVh&ya>L+XhcA?Gi(bnw(HIH2zwo4E545xS78i0xq4Xwojhp1jp`Qli_wCmj}Uq5bX+a%&p7 zxgH3*WbNa2?w41~8}vi$bKLH$iBv`BTzrsRR%teaD>xo<3#+7n3qW$6F5GXGWqB}N z?Z@)LKiwM^&WS0+MRzS(*h_}Qz4&h8ePS`-wXkUY*>_eHq{UiDdpgulOByD9=rm&N zSE()r!kw)?^*te;vx~E5Gx4h1uhVHx)TbwUG(&XuQJ}i``%0MemZl-vpKYHa^3Zob z^;>IE?=hL|(e*ubt+m&^YcWx^=9oCFF)bIv{si%E-z71Mlo8m$=f< zZ9lJ{>Z-;ipI2ItS5hQGKQ|mj@4mxl&-1gC_o_(Q2_=3Aib5|ZxerXwWOF+p@IQa( zk^$QmQs>qS?KeL-_O>#H9ryOnTq-Pwc-y6CKfx+TNnf3!rA9=n8t%vML}%_i<~ttN z81YC%HOZb++X zoNLso2*y0%ZXv~=^DX*Yykx-6>W1@8(fhhb(LN=c&xWY8xRsyVWAqX6y-VE=7nd@* z#dbsBS(*1RW6O!eqoZPS6NlYL6d%NuJoEvUETZaak4f|Bo!hyP5w2sUVXnJ>e?yf| z@BNDtbSCGgj!_Assf<0hR0b~HC;>i0P>&z*C*TFS=N zCsR1x@WAN}-7BW~YDKTFyIbpS{o(t^+nAfLDs~p8f|lNNB`mv))#097KfaVbFvmoY zW{c{&nfA4YDKmTU{bYn+IFoo`qI~$-K$b7PgXy?)y8lqq)kn(Xi@WXJw+Nr5e^Aup zKh}QIy+6F-V#6PFD~--z9ttA2n#PAk@s64Ed3`ASl^6lE2E^RBhV3;(-Ce2s^egnO z^wE!s)CBVv!I3fRIa=xkijnWZYpXd+?nErHdGd#zV%P1FD@)yX;$OE{48{B6KksOlQBB7ud5kke z?46s_cCKb?&cE5#>$Yi~mN>he1?Zden|!&|9`UQY<;{smx8*J!0_X0%@xD!$Aolp- zlWIS7DQOEX_pe`G9vvZ+XsqYT2|VycoJDIdGc~@__rxE-$>B zciqm7ca`meLOH>gP7p{&v7`sg>6hD&e5RVj>$9o-iOyjKT^tchU6&yicFmSP6F&!~ zW|$S4PtMoeSK;KHMDap&WdMlFLAYRO*FhWKT^xov_3>o zI)3!zUh~0*)$W#+&AXW`pAW?I!`z)*j->bgf$|U6K4H_hYj|m5XkheL<0;167neHv zm2dZ(XGJYDjvqNj|{P8;P z+M|Oj^GieNZ?2XshOcU$u7G&qn)SF>w#KeQpHvlfc9Fy*Avr`l(nfD^maLV=U7;f< zrUdNm&YphO*@V58e=s6>#k4q@x!u)CThn!!vp7+4)jK1)F(T`{{juQjlpo(XwH<*M zr6=_0+>>4Vhx!w)dyeA>->)eBng~TdY$D9KDcjt8F&_!cS)pOsAUAB2vodSDV)6_d?B`>Zeiyf$M}_rp$iB z&FqiwZSQ<4QV;G|jI76J6Cd67Zm|Ync22oecohdM-;6e|1{pRxhMKxdSG?&%xiqzE z{kk?Z*EOZSV$rwNxAfF%1&$krb2@zoW3{b}R?$B;Q)En?SyXAa(lavtYs`@l{L6jJ z@pb9-(PAQ_{$pA&;xRmTee}$yUW=>i1;n145#K9zb`DXsW|5Lpm-|!9Gxv>XOz1Ga zch?TNou~~S8jX%RnH05^xH@T)P@p#QUe-_|)m&jYuJPiUBzj{{lZdYQNTOLg&vD~EFyn{??DrL{Au z?GrygYd@Pf7e=in9%m?YoiNYQY;)GR3&`U3X&3m5-rO&jS}86nP-qm!Z9<8zUvfmFu&o^V|HPD>t09OP=smiuXXSuD4cp=&g|W zwnqGV4R2;J&OgP*Hfnik4*QQqM=A%u*?!IpeLPF}5}k8F{AYV`>pPJ$ljRiHOBwFt zIS-0{AnM;4O!hpS(9I%P5ytQOq!g+97o{0F?f#NjcHCRl!$cx0IUiyRwDV`FaeQia zxnk@$(&(bdm)sJNUD;z+>H62n*mx1{3XiOcU_bypq>Bl8O)wMXzn}8}lMN4s6~$k+ z-~~E%;H7anYL3&#q0mc0tnIIf#_wv2 z&#$3dq>P<6Zu>taK!?#4iz!Qa=*Y>9HYLh!|Mo|N=GnLCG%4C4Y1^BfMg=<>u`eIa zth6;D`b+EUt;lmVuO@7ZU6cI|wmAphE%I)IgeWfHbAyf3eAPTVuV1fvAy#{5gk`M zj>qN3xxg7jcW}h`g8D>lkjxBM7P$^cY1mj>JF^{yG zZZHXKi8bVl5Pw8avsg7_2(dK(%b(E4$E>p7U7) z09m?BM7D86_QQz97tv%PVK^cn5CDk5X{40&WmOaI^%@{YDjg^OtC}X+FrTx7Hl!Y~ zx6LPcA$Eb86{JNh?(+Wb@3%z1fqAEb>VxfI> zibe?tsnvKP-f9rWFa%NO&2q~x)>Jw|H?N^4>1|&N2CbZ-b5D!obRu}i2wyM&QN-U+P@pi z7o1^Ct{u?a^dPuEeqP2)iB6%iuJh*BDz1$3_GR&AY9+zKW`w?@G~U=@4YrsPTyALM zP*{P0L$ebQ6zBHi0Bx^G!fYL@N04m!0-BrZN+FQ<*PI-LtpNa?P1b&zYyVp}SbJ%B z^=QE=JSZVOsIQE4w;4%tM^*Wmj)tQ5{HDOV@BY9z$p-cR)W1sy4>$+t?0**mZDqoA z!IpRusQnqgNi3LiRJD^=>-q-LM&yM(f`| zBMlvmk{nGd-6xW5CieVh{;Q%%&zDFG0Jq|}p>bT$xH*|<9(9F>?E-)T3E@OW{NRtC zlZoR|kK?tEv-3*Idz13(O_~7qoCKgIkPu2lj%P%^XGET7^wNvChi{Vd@>2vma#m}L zR{pPg>DbemQ8OJQ35gnq~LSuLtiWdM1dXvo>3zxprHwt zJSKc*&S_s{ahlniR+2#PZLm(Iws9rs~(M>L)C2tl$k zG7$~(&LrBL>rBAvySt++9j#tFn*O5=>I`BZB%-I1-6xow(0ftcQjQaDX!K3A(TF4Z zW*BP3&%yv{VPrFQ(-5@_p2HIN8739vu)DrTsD-5;gN+ECi)H~VF;5;+2zJ?d+`cGD~H0?7vkh^FbIjotOSIK zV0L*DOf?%5iy-C9jzdK9W-|#cW?A>?{o=?nK!oRK(OdEJw#Fe|@@BJ`MhI6iVJJaS zi0~2+5eaQ$wCbU;(gj6sBMq>GDp_XT~&f8bttIS zV^EZax_BiM#tB-<0=EZ6IjBQhK~ch$lefqULk%o1XE%>pcGXlEI-F0AC&;VCt^@@6J@ zcu9+)L!|hkE}XCq4fPUma>qhE8;BrGp5Mx3)l<@HuJ2G$$>gIgj5ouqHMFt@KPp@R zML{c59f}%8CWF9q=>GYU3z5)$*bWCcC;&h#Oni|;iUN#c2_)d@jE{qna)u;GEOLaz zA{JRg;!IXjgLUB!*$D|IktGRn2nTUSFxGzuBlP{?oaP@uXc&$dKtO=Y(N?H5yAG?=)QNc=@{rQN{N+ZaH#TE&6Ha@{( z!J8ILEB?I2F4ux1rN1u~taOwLO;kEv{kmKWW*n7{D;+K%(NSXwt7>J@QLWf)ktY9zbG0+TJD&?z zfj6-#1e-_#)BEx?1fud9J)C`i@p@!1^q|3)dbTk2l{+u1%46(c3FLT z?~=tM3Mv*@LnyHoCJsHYeGW~B58qY4!MDgc1B1s8WUWJkS7L>y9$X*s=*e7ZV+=`tU;ED@7M-vEHSFS@A1!$QCR zNvGxD${`ADCJr?N@;+9p)l~>KJm8% z1_qu33Sb);`1eaAQ2u-fAbe>M2u0))+YC4hIk>nuI0S_Spn^hBC=UlGw-CP&Cl?1N zhp>nUl#7dt6Ur|F+5G(uUbq3#VOCsP-uiTmU zvS@&~pWdClZ?7k8uNa%gmGbZ~MfVD+NIT(|#JB5evlx2r?0)on|BUzQ!j!4c;}0Y> z@t4ziXNAV>U#HK@>Eb$hTlVCZ51)3!Xo;DGH~r{8dvpbOWGClG!6sXp&FFsg`z-yi zP@hL}{unZ0EBy3^^<7miy7zIHNyaM%muSn9f9{^D30wYCv8Tj);S_m419355uy0l7 z0g{Npj0ZB=W3~?gg99x`(yBiFmY4mrym`6I-_>`NwlD;(f&8sQkUJ(lp>}8po zERS>^l(^`a4Xn1C{{iZI$b*A^oHZrAy)W85T34E~IDuCEW5ygX*>jDG?3 zDg)0DCDXwMK}&YIJv%0aQ}1uBxR_yoH+fGU)b74Y4%2?$`l9-?A#763czoY*yxV2YZ^+)Pkk>dIEGZKc>$SZQoju9;dfjWlB)@F!debz; zTbqE7Q30H-WnWwnLJ2IQTR*0f*-MFzRRCUm-{FQ|A5FT=v?xsD&Q4a@Vx|T6*;8*; z)d{N~yF)jNoX{0HrBWo9^%3SjW&%+0GVz12dBTrs;%QK{+;*}3T;qSLO|{L7Thf-A z9cQ8-$9)&kx??8^&v_EtML(CXtF%t#dNC%~R(Kl~MYa@}Uewi6GJ7?6!p8ZI9M>l$tcx+|G$=ARqv%c2l zKr*IgV>2_xDFM@tX1>YeD95&~mN#_etoZ3I$Y_zU?bYAwEp1!NMJX`;Gt9zC46G%7 zzA6Qi@dUrE(rzm~s!i1w7Pdw9XGSc-<*_h(#JHl0;;`TiwjmGb@#@@aIsCI+TMMwN zf-)F5-rV6x=f4Rbw_e;*jD8Fi6$#HRyZ)nBBwy@(z1kQK-hHQ060j<*=jP!Z_Q>xv ztf8>$OxbVBdHX|$oxBTPkH{YZ+RXzgYd%^e(@<69)riE0#BdH>AKExFHm--)ODuP+ zTYL-qc!n{nVjI%&IFMEwimAXKe{fG8sRx=hKO}#b|GC3SeQM=_NOtk3_0qE`zp^$q zbxAhDyHUMMTkY4}1SI1YQCH%OEIq1s*M+80@J?ive83jMv$pZ8@9d+TIOxFPpR!T9 zW;J6KwnEBSY~!cVWW8kTeA!gnEV&cMH)n~Bsks6zolY+-ev>+cLPceN%91w25tg$2 zdz7&o^nX-*KESccdwWLe^I9Y9Y^G@T;ZII=kD|XmePE`c`sZMdxC=h+3}v!?zuEq9 zV53)3>zRiAPRTJ1#bDp7^^#N4dO^(+3l;Oju6~?ae$^OBZ2BX>W9jXW542SerHp;A zns#^Z3#<*j56-dx%HjDc8~1;5TV17{3CX>Mlzvm!goSBOI+gTfmLC;{fNn`g*!(0 zx68XXCzaz^3kXg-e@y&m-Rl>xZ;$RQt-SADoHsA+A5xm&-xw27DyX~N`!m4PDsxgV zOPjT>`a+h*r-PzHHT{?60ZF}H0ixcgD&Gv*xUSv*YO(Dn?c(%`0tW|@*`KaFbw?{5 zM*A0iD@|H2`}#98ro-yJx$JGZ!?QDs6^Y)o!{^YaIj5W;wXkf;O134L%oRk-)S*S1 zyZWGWo|(nSSX6#I*N$)WfZlHF^I`HXO?~ufWA`l%No+SNx!$C$2|IJASO?o*(BON| zvu!SG>dLa@BL~uX?SWP(iCF#FY1TVVti@tRB&^K4zB+*&eJb<2J2`ZHYfk3kM&4%) zZ1;>jCBwFMp3TS^>D5a;A9Fg#wN5-w-tJ7l!yF2@%5FBSzHadHdHrhipHf@N?Vhz^ zCDECe7s(=2H82ldOI}a-Zqg7L=8eSnx)p*KxTflq)}Cr3V_ZuUQ}K<~zLn%SbJy1A z;R+on^F3>#E=?tyz6L6QB#f`u%*C#3h+;8Is0Q07v$QPHKaT4PoAQnkQc|p5#fVm# z6}Ak(HZE^l7k8-mYo+GdWOap^EhIaVhlMTJux~i61nj9*d`#KIQy>*Ro+MPyu9{PWX+o``@2YbW*rpNBd1$r&D3KJ)TJM#F9 zm1P#(fXA`wvg_gllcxt~=mZ{G(asZ+260ulj={6xfK0%^wB2LuWJ=kJagN3s=OeP` zNIkjjo)Gm4sk)bR>}__5Lex!cx*S7OpqNQ+0exUHQkfEN_#!=_0l+OL)by2FZ>wZ3?-y$<<`U9rWQ~bH! zf_G%EOWv&d?ZIVo?06X>t5fObb7DjnXUnYc%T=rIPSjQ(wbk#)vbhhhF7ZdOJ4LIu zuTNljSPpRN_ZFf^qsqJZ0EM(IH=;lk3d_N4Gv$Mvvc1D`$8E=Lp~2qt3Af8?-0Z7( z_UX(zJaunQ5L0>X_*ai&qpY8Te@Ot^(XEA>w4DtBqqCW0I^4+Un zp7rMX3s{O`cbX>X+;NfrEhms9kLKpi_W5p zC-HEmW^cm_hi@$3*7fp8=FhzL8=0bGD0_35)#(+mJicy2R73onbIw}~_9p-Ru9@2x zk$75+w=3f#mDr^DBHW&Hwsu3$rou@w^84XT_PdPBL%Q2&Yf`oM04}F4g(`zlq$N+) zymzkgxOJ>|Q24=JBcFoznei7xW-c_Vj5#OTlX^-q=g|dLX3^fsbf%9v_4V3bg+7fr z;B@NR@@G|zjy!7CKiUc%Br!00FdhD@$&kl+TkO>0Wa?l!GtOlNx>qqRuw|EUW#u?C z^QpnG?}@;)Hy$uB`g5b$pLHPcib6{G$y^lm8DSj5&2Hfn~xOU<^%V9=0 zSk=m{`Xkz1dd@pby!E~mS|79Zb%!al?)n=)p)~jCZbPHfHFidP!Av1m`a{Ta&Xhu# zLWnVP`0^}GMeOr}b`h@Gx^SO_EUQ}X2}XC5;u0a&jPAy)u?6ER+`!@PTMttwnKl8L z0u~i(ftZ(FnD~xCucCL09=TDC7*FOe{!4W1iIAB?z<&VI4Q(QpIyHq@hnH~17^mkewu=; zP48l2>BV`qF#+B(5(RtG{g)##0^!Dte^f`@PDvIk+!9^v+~WC#7lC;=(vjRLpbZl5 zPyAT`H6~TACgN6(3YE^|Rca*K?qNCJ+4T_&9C~ap^l<(#go2HSuYsz{82nAc za4l#k;$=vE@s#12kcQZ&_xp=J4r>8RL;} zTDOZENA`__E~*Qs72P1$kyy2nkc=3`_~IEN3S1M6Wyj4cZe%ES)TQRM;@@UozUEr{ zOxsvv1z433*fIS~oBY z%d)q%N@103Gj7sLySI&PHpH@>ccz1 zoYiUu#wUi|kRdfSd;BuQ^>dCOpdVcKjr6vpl{9l#ZtmIJ+nrXMO--!vZHAj?kM_O&wTN@z0)Zp>`Hqn4~ZML;vH3=kU`R8( z4Rgd>5olF#r#H4YN_PE&!(*MZnpL8MhN3E8!`brf+5w}lMnprJ6->SBoe7VPvu8Ro zG!C6t>^>qAtCEIi%zKhOYK6N>N_va6`IVlGexAU2~uTLp^Vv;!*0;f-BpL1G! z8`RY!;U`PrN4vn__qW3R<676#vA6cx{Pc6qKKjqKq?HJlYg*|tOt1@dD@^wqNs|p! z&&cydMUMZJ;%hkYK-71cJaC(-UL_;jdN^pQWRQQ`??;2|9em8obOY`h7M$)(UlhrA zUE;^gCf1euj~w;w^&d2#LN~r)sh;je%VTTTjy40_D4VtYWcHd8m}9-l4=tw83RVU; zb01mkIY#=xa!fkpmmDTX=%aNRG0#l+vaQZcDJ9gN@ije&=p_x+oNu5 zCZ7XMwawy8WOiG`w;y?2j(MF@W`z9!@ogTxSIh5QtC%vnNYSBP7r_KtO8?FS7T`}5 zz0xfj%p93iP^mm;!#`YSKD&wDN{Uq#hf7I`R;RyrJ%{qOP^u7|6dUi8Lbg_!vi9-q z{DaMDy!G=npSkBmMm1&iqE^%So=&5W+METQjAxc}%jQN*)kdlWA}1?duIl7Ggi(q$ z_lXJ7Mq-)l_Md&mk@m08^v6+lhN!Z>6L>tNz?LhY^nqxlC^=oRbJBxq)gS-tQ=yS0 zAkWuewpewYyD%&NW5H8t2I05rA=FGa+o~I3yK6CvjceQH$46(k>l)t)Hu;A?D|DjC zSs}x%#Q5P_-MdF&xq4{3op|AT@2DVd1FO9Htk4VhObr^UVf$kHx4_=*IMEfG2BE6E z7Rp=Li}m65s4E2wO9hMcpBVz5ROI4>Gw4gbLDsV Y+?@l@U}n!y`)^;fZj|SuFY*Kb14D+35C8xG literal 0 HcmV?d00001 diff --git a/mods/default/sounds/default_tool_breaks.3.ogg b/mods/default/sounds/default_tool_breaks.3.ogg new file mode 100644 index 0000000000000000000000000000000000000000..a99c4b7e34ad54a62448577846e3b309b725c87f GIT binary patch literal 6875 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 Date: Thu, 10 Nov 2016 04:04:20 +0000 Subject: [PATCH 61/99] Default: Add 'group:cools_lava' for lavacooling by snowblock and ice Make lava cooling ABM use a new group 'group:cools_lava'. Nodes other than water can cool lava. We assume snowblock and ice melt, turn to water and cool lava. Leave 'group:water' present temporarily to not break mod liquids. --- mods/default/functions.lua | 2 +- mods/default/nodes.lua | 12 ++++++------ 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/mods/default/functions.lua b/mods/default/functions.lua index 429ce9fe..4008547e 100644 --- a/mods/default/functions.lua +++ b/mods/default/functions.lua @@ -126,7 +126,7 @@ end minetest.register_abm({ label = "Lava cooling", nodenames = {"default:lava_source", "default:lava_flowing"}, - neighbors = {"group:water"}, + neighbors = {"group:cools_lava", "group:water"}, interval = 1, chance = 1, catch_up = false, diff --git a/mods/default/nodes.lua b/mods/default/nodes.lua index ebd1e5d7..dba84da1 100644 --- a/mods/default/nodes.lua +++ b/mods/default/nodes.lua @@ -467,7 +467,7 @@ minetest.register_node("default:snow", { minetest.register_node("default:snowblock", { description = "Snow Block", tiles = {"default_snow.png"}, - groups = {crumbly = 3, puts_out_fire = 1}, + groups = {crumbly = 3, puts_out_fire = 1, cools_lava = 1}, sounds = default.node_sound_dirt_defaults({ footstep = {name = "default_snow_footstep", gain = 0.15}, dug = {name = "default_snow_footstep", gain = 0.2}, @@ -487,7 +487,7 @@ minetest.register_node("default:ice", { tiles = {"default_ice.png"}, is_ground_content = false, paramtype = "light", - groups = {cracky = 3, puts_out_fire = 1}, + groups = {cracky = 3, puts_out_fire = 1, cools_lava = 1}, sounds = default.node_sound_glass_defaults(), }) @@ -1351,7 +1351,7 @@ minetest.register_node("default:water_source", { liquid_alternative_source = "default:water_source", liquid_viscosity = 1, post_effect_color = {a = 103, r = 30, g = 60, b = 90}, - groups = {water = 3, liquid = 3, puts_out_fire = 1}, + groups = {water = 3, liquid = 3, puts_out_fire = 1, cools_lava = 1}, }) minetest.register_node("default:water_flowing", { @@ -1396,7 +1396,7 @@ minetest.register_node("default:water_flowing", { liquid_viscosity = 1, post_effect_color = {a = 103, r = 30, g = 60, b = 90}, groups = {water = 3, liquid = 3, puts_out_fire = 1, - not_in_creative_inventory = 1}, + not_in_creative_inventory = 1, cools_lava = 1}, }) @@ -1442,7 +1442,7 @@ minetest.register_node("default:river_water_source", { liquid_renewable = false, liquid_range = 2, post_effect_color = {a = 103, r = 30, g = 76, b = 90}, - groups = {water = 3, liquid = 3, puts_out_fire = 1}, + groups = {water = 3, liquid = 3, puts_out_fire = 1, cools_lava = 1}, }) minetest.register_node("default:river_water_flowing", { @@ -1489,7 +1489,7 @@ minetest.register_node("default:river_water_flowing", { liquid_range = 2, post_effect_color = {a = 103, r = 30, g = 76, b = 90}, groups = {water = 3, liquid = 3, puts_out_fire = 1, - not_in_creative_inventory = 1}, + not_in_creative_inventory = 1, cools_lava = 1}, }) From 2c122052d4332aa54b631091e718ba42500ec70a Mon Sep 17 00:00:00 2001 From: pilino1234 Date: Tue, 15 Nov 2016 22:08:12 +0100 Subject: [PATCH 62/99] Boats: Use player yaw on place, align player yaw with boat on enter MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit When placing boats, align the boat with the player's yaw. Align drivers yaw with boat yaw when entering a boat, would previously turn boat yaw by player's yaw + 90° to the right. --- mods/boats/init.lua | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/mods/boats/init.lua b/mods/boats/init.lua index 4c6937e8..26486f4e 100644 --- a/mods/boats/init.lua +++ b/mods/boats/init.lua @@ -79,7 +79,7 @@ function boat.on_rightclick(self, clicker) minetest.after(0.2, function() default.player_set_animation(clicker, "sit" , 30) end) - self.object:setyaw(clicker:get_look_horizontal() - math.pi / 2) + clicker:set_look_horizontal(self.object:getyaw()) end end @@ -231,7 +231,8 @@ minetest.register_craftitem("boats:boat", { return itemstack end pointed_thing.under.y = pointed_thing.under.y + 0.5 - minetest.add_entity(pointed_thing.under, "boats:boat") + boat = minetest.add_entity(pointed_thing.under, "boats:boat") + boat:setyaw(placer:get_look_horizontal()) if not minetest.setting_getbool("creative_mode") then itemstack:take_item() end From 47efa2f5584cff81880ad686eed848c59d29fd48 Mon Sep 17 00:00:00 2001 From: paramat Date: Sat, 19 Nov 2016 23:21:40 +0000 Subject: [PATCH 63/99] Textures: Revert many back to RGBA to fix visual bug With mip-mapping enabled, some GPUs cause a visual bug with indexed textures that use alpha. This bug has been present for a while but not noticed before. All indexed alpha textures must now be converted to RGBA, to start this process we revert some textures converted to indexed in the recent commit af3c918. --- .../textures/default_acacia_bush_stem.png | Bin 3959 -> 476 bytes .../textures/default_acacia_leaves.png | Bin 4100 -> 444 bytes .../textures/default_acacia_leaves_simple.png | Bin 4530 -> 688 bytes .../textures/default_acacia_sapling.png | Bin 3773 -> 359 bytes .../default/textures/default_aspen_leaves.png | Bin 4658 -> 761 bytes .../textures/default_aspen_sapling.png | Bin 4119 -> 320 bytes mods/default/textures/default_bush_stem.png | Bin 3954 -> 428 bytes mods/default/textures/default_flint.png | Bin 3729 -> 3038 bytes mods/default/textures/default_grass_1.png | Bin 3643 -> 2944 bytes mods/default/textures/default_grass_2.png | Bin 3695 -> 2980 bytes mods/default/textures/default_grass_3.png | Bin 3832 -> 3065 bytes mods/default/textures/default_grass_4.png | Bin 4093 -> 3134 bytes mods/default/textures/default_grass_5.png | Bin 4376 -> 3269 bytes .../textures/default_jungleleaves_simple.png | Bin 3899 -> 417 bytes .../default/textures/default_ladder_steel.png | Bin 4021 -> 3223 bytes .../default_obsidian_glass_detail.png | Bin 3504 -> 1167 bytes .../textures/default_obsidian_shard.png | Bin 3581 -> 110 bytes mods/default/textures/default_sign_steel.png | Bin 3921 -> 3173 bytes .../textures/default_sign_wall_steel.png | Bin 4035 -> 3187 bytes .../textures/default_sign_wall_wood.png | Bin 4518 -> 3391 bytes mods/default/textures/default_sign_wood.png | Bin 4374 -> 3406 bytes mods/default/textures/default_snowball.png | Bin 3826 -> 3102 bytes .../default/textures/gui_furnace_arrow_fg.png | Bin 3463 -> 251 bytes mods/default/textures/heart.png | Bin 5113 -> 14830 bytes mods/default/textures/player.png | Bin 4160 -> 142 bytes mods/doors/textures/doors_door_glass.png | Bin 8220 -> 3064 bytes .../textures/doors_door_obsidian_glass.png | Bin 5290 -> 2988 bytes mods/farming/textures/farming_cotton.png | Bin 3844 -> 166 bytes mods/fire/textures/fire_flint_steel.png | Bin 3837 -> 3108 bytes mods/flowers/textures/flowers_waterlily.png | Bin 4323 -> 3363 bytes mods/xpanes/textures/xpanes_pane_half.png | Bin 3424 -> 83 bytes mods/xpanes/textures/xpanes_space.png | Bin 4274 -> 149 bytes 32 files changed, 0 insertions(+), 0 deletions(-) diff --git a/mods/default/textures/default_acacia_bush_stem.png b/mods/default/textures/default_acacia_bush_stem.png index ca22d759cf3b07825b7faba1ca6ef246612672d2..290391526e7bb902bb49076399868d936f0f073e 100644 GIT binary patch delta 435 zcmV;k0Zjh)9^3+b|S`KgqI*Z6-}p`aHN@)Y%j=eb7!AHlYg&@6!Q>#(%P; z+l3*6sasy4+DS*}N4f|8FZDNIvo0jfb9(D>y=A+*p1iBi*B@mH5D|Lk3EuH96P@K5 zoAswZMU*Di5n5^V1o^x?e-(2y8!(e3e0?RNM9@a#gD1RpE(^)BV?yuH$t=OymOvOK z2|ygji1<;0v$BxI`xR~54(aZH-m_S(P%6Si<{+XFL&S|O&+gT)d=JPqWv(!~R>cnV5+ueBm<7%FbP4bPo)TY=~AdCe*o6-B$g=7VRxu-VqhOUyYk`^_@zzn5nolU6?M zB>(&!kg%X?``Em!>YWbe`As?#l;JHGvp(T+4f_xX_CL&yAc(mYcWrar#( z{<59(`t7_2egA%2VZPAEzR)Ua-g4)c6D1FsO`g-&!f$&vd-Ah=Z{D4n8P9q6XlBjc zGRB0E)}R|7^f=>f7jYN~=u4&_l8nCTH`Apc&GY<5;!=f|JHj=Tic}+v4oW5-Z$E4kT=(2UcI&n1IVX+@Yd<-vKOdW&lXv-Seqwj@ts=+YBH>$p2zlwOd~zyOOYZ-x zYy;D4A)o!MqcY2PzpLY~zH@n=bk$nVV&B>M3y)5VvWuL(#%`0F_%ploUbXDGhURY$ z^_s45j?i1tFZ^~+qhT4#G3Rs!-m`O!rB7PEJ5zctC&@GyYY5T{k_zT~)03^@Sa+UiHbdmp**{a)Xxs z-@BV`rkU+prEC_T`gzGT)}7lPvc0!hnr3_?V%pAqO>=JDd3RaMVC|6~EY(v}uituB z=JP>vp^oU)?D@Rc+ZS&+baK@N|LNN$!teK0J`1xlIIjH2|9$%E(4EW=R{y#fl=k(? zsRMDVV|u-~1?N9sJL9&JeYo-2%c7^OS8umEvM0+lZnodQ&rXq-KfPJ*{C@6Cxi`8W zp9Y8D*t6G=|4j3vIn0}{zdOyz?Yf;QN87c(`q_?|PlcTQou2GXOxQPrPnl=_-aTy7 z`ooLPdPUry$9O*cb4rBH{hH3INhPzM6>nShbMnqVH?!h=A4jLxzG13-bhbuJ&1BE9 z2l4)&rHd}k=x5^bX#2POx92bJZ|IU54whr{vuisyk!uN*p*Yv|fMJDQ-hKk?Xt< z(jplcII}W=B~yg2k5zJhu3lnFep0GlMQ#Dm6$}hE_7w$*$=RtT3Q4KynR&KK?|1K4 zQpilPRSGxtHSjHPPR+>ls47YguJQ{>uF6ifOi{A8^~=l4^~#O)@{7{-4J|D#^$m>ljf`}GDs+o0^GXscbn}XpK}JB#a7isr zE&>K!W`3Rm$jro~{L&IzB_*J|0@U!7WVqP{rA0YllT(uQQ*%;tQ}arS^$qn5^}*^> zlC9kGi*gfz`ZIGA(^K^e^3s*`L9W$@Iv41BeYp2QZlFCFwS=TF9u2P1;36pmNK!nS zx<-SGq!1uU@o4HATEWGIXh5ar0b5Pwz~&Ld{{{zO(<(W@C&X1)fY-;_#@E%}*UjGF z&EC)5!Qb6J07!Z`26#9GcsK=lI0bq-2YNXNdAWpmyM_3Ag!p-c_l> zcT|W^bckKmgcBiOExxmbc8nkosr5;Zf! uUH&@i>(j2y+~;`y%&LFpzgoXWWwPfBvw0u07Tg1L2!p4qpUXO@geCxiyDGZ? diff --git a/mods/default/textures/default_acacia_leaves.png b/mods/default/textures/default_acacia_leaves.png index 8db90a5aa8ff8df9851157f95d0f8378418c68f4..626e1b306d356abde3145bc8739f03c92207ac82 100644 GIT binary patch delta 404 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 diff --git a/mods/default/textures/default_acacia_leaves_simple.png b/mods/default/textures/default_acacia_leaves_simple.png index 1d3c45ed04211ee439d95fa2574e673116c00a45..3c7015bbb75a75866f407d158dfeab3235e51f23 100644 GIT binary patch delta 648 zcmV;30(bqgBd`UK7#j!%0000V^Z#K0000JJOGiWi{{a60|De66latpFAb$k~6f+Gg z1gQW30zFAYK~y-)ZIdx*6JZ#JpWNNw3W9@ewTDS;QY5B?4%ZyHD7K4;Py#M>$slB~ zLxpzNvDst5!9_6T5R^=z(4|8gkRFksOQaOj(zFOF9ZE&;FNwo>*Gu&q@A%$(-{<`< z)c)l303N=WqkG%~AbD>TRex8Au4h@cOQOBzNC0a-!`4fO;Dpf8;^RnwlT#R)bYBb) zC;-%}UC~~1WX&$~dViBg(P@AAdv}CT@-aQbGHGr#_*_Hei>3rnbyuKLaD?}PY{5j; z6)FWsJj*XhpkE-dW3YXr`HusDWX=@{KF=3TsSOV(sJg=NfI@0&ntv3o#bvuB;^WA4 zE-H^&`xur<(Ao9}N24V1(4v2-U5U&qJ$M zyMC_46{oV9Z1$Kw`(huuNjJ zCWjxp{BP{14G~?>q9m-V9JThb<})1ZbpS|BO%rR~rc!Xk$zdt}KjP6(=8*ZKDXYgN zx5B{*XxH#=KzgKuAOXLj;Aq|zrgLElP_xT!oO74wRSS?vE7IH3fWJB27{QF5gL<_q iTDduC%tWLo;>{l^`u2$0lZa~o0000v?Kfbkk*V^yi`+1-J?B9OYUhDT;Z@Qa{ zy`0Q882|v}938MYu$NzN8^pl(lyC?HBw}JbyqGuw3rY{C1yVxDP-Zlp3?)ZV0s$cE z&0SAw#l-H7EA2Wl(hgAh7Jh90KGU2L)+|ABY_zrq6I4ngW?H2cXJeg~XW}1!g~U%@ zGxEE3Vsp~d%dX~Ob~aN>zO3@NxEV>dk^1UrjX%?5Ko}!S<+Oje*pu>swYD&6bU(!O zv7GP%&&udfpnmDpu;Fmj!s|FgN_)#Us_F9kA^k9kc=Kf`-Qp{+@4p*WG%r6C_NhVq z;;i%HGmnZ}@I~dZI#Q6!yjacarG~aq;Y^{Mit6WtPl>OlwZ5JbVm~B5VvjtBd{N~8 zG8t3$hV5J3Vh$Aff4(_=SD-ABq*?!mR3*$jDKg))k=siY`Ou~ODY}oiTjA`30yF%} z&Z1WKRnaXNBZ&dQ;oeqr@s;$JU!QVLqU|ppHgMtNMQ9s^v9VXHLh~k+aCZ(%Yv%fA z>b`$Yu8a7F?9uC7K5cxaD_Ln}NW-#HFGqDyMcn!}&51l@ik!cxx@>nxEEz>O6r$T7 zoLiaV_a^*o(C=Zy+WQBlH%}M>Y4<7`w(fp&R&F>&wC~0C^n~k4mu1`gqU#!fbo$QM z{49pZ@NUi{J*|%IEsZ6rMdDZ~YptZbVbqH`zbltNC~bQ=)TF8)t!TT`aU)_8s*$2% zcj~2r^q&2)dUjdbfe|0^`bRywZkU9HI}oz1Gj>t-YX|MkBcMr<&(iXdbps>FszxPb zZO3`YuzTzo#r=DIaLwmSN~G4d9n;4L7grrjK9@)9us-SRd#uVPSQs(L{awBKbLTvP z`d}#_%RFZp6a3IyHS?5Bw?EW#=Z9 zY>;i`!sV-|{FUW}R-5({tX?qE{B~saSv|2$_T#r5f?O+M;ItO)h*!z=>GRFK8I6fW z5o+moPqyF5MMm=5F8K5i{R&3HZMTL*Yb0Jm`@Y4&OUi5)l{)X->Ns8SkfWhk;wof^ zEUG&`eWueBqw4;ebeHi)A~TggbA9spDz!Ujcp`u3V8(M{roxN3_p4Ayjmt@CggQin zvpR}9mTM~MsPj??HDs1NBMQ(d9|&#MS~J1 zyYQDHMupE9h;Ltt-}2&8W+7v()n6WKo#;3yVU!n8jS2NbRRM6SV&VhIj{`@y^1DYq zxf>-i+=4Rjj3Cd)v05Rl1$#ww|`^=ND+MTYANe zgIHMqLg(PYjB}T_R7K-_J$-%c@=v6~Nh>$vbBg-+Ti@6|cAyt3-hX^tWBUBHJtO18 z%)!`&wM5Ih&qKnj$uH;LS6$jPU0#IjD(aqaNa3VRWIQ}qy6K^+=Y|YvBcpdWr|GLn zA18T_yF4M;?U3;*188f{J1OsIIB~Tle5yrWBdd%YucMakyk&zfL%FS|psRN+ZGMIj zS{N4RBve><6J6F~0cXo|5rlDGh15Mx_W?f8V<-cu2`aG z{!p{JYJa+ZK2Hv>6#b13v2WW$agAN1bizD=>e z*@liAxNyoDS9&}byq%M|m&qU0m!ml~6QXlR7)#zNvN}(yac@()8ISkfFbp{GPR;Oz zQcQ94A%fALh?QM=AywjD4ce*fr-%{n2q*0cvPk`s;@1aGX2mxB#MHw+7#Tz75tpr{ zcAc>?)P{O&>=bTq5m&2)qUUc|>rgYHmQaP`F6ie>7xJ3+y~Fo&(Wr-*~ z@N`N~zzpFFj+>VDC= zBHyNS&e+fGH_2VDi{AH_$O&D6Z}S6VF0Uo!Kt%Cpg(^IA_vvxe*? zG6?rctH$nd&T+wXlgcgYV6$EigEfz;or9?=_F3LHT(iuZ*Mg5XA%|<_ZtM4*!tt82 zI{NBlFB|R@Y0AfakrP-n8thR3Hj(#pPEq>uWE*qIYT3V7s0)vHDfzc_^j(-J)b7Vs`lmcs;99MfmwVW2Z8Y9|qCgLK z#C6VOko!u$tgQH@n4Zk$?mmt?69A--QNWbvtRqz00!o1;H>LRw;>;;IK+gL-D6xlNHM`AlK_~7xr|v98Wf5pc>!QK&I*f!tzf+jO7?_u{8`OptPKN3u^bxvn+bBvT3T7??H46_2 zMB}h_e@lQf4D2YANk=1*EEWsF+J~Tp2O;%LOiYlvC?pC62N`fibSRS$1rKFtu1ow| z150L*!a?gOv{2}}CV@zcU}9h}@H_Nx@c`04+VqIgJ8(@Xpw)13!WbN&+*q|_}@Q2H~Artf7jd>ERTS-1WT~A(sFb1umyW%V*q9bxLKi4UTWHb zfPSDlCPXxrNk0?m>sx5x$1{5Ss(G;jnFLZrm^c@Az;d(~{1*X;5D(a6fi!V72XG=y zckpHa0A$m869Mw_RX|XZ>F8`L`6onjlel3%x+xxnE;(YYJfwO=P6M5ZEMEva1;?1zb~*O4!`2#09vr t4R}@)IN*hxF0O8n5ufu_ z-WxGYnz4Y9>N+Mws~W#7m4MxxmlW?te^J0A8n~BqVejKEHh-AS5KfU~j0(L2^oDU|?X- zHM9Eg;O;#JSyk=txYRIX6Ex9QWpQ$}`^(A6!SD|nOl*I@bw7La@fbI{S^%cZX5j-} Rq)-3=002ovPDHLkV1jxNj?Vx9 literal 3773 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 diff --git a/mods/default/textures/default_bush_stem.png b/mods/default/textures/default_bush_stem.png index c443badccc418e3ee3da5390ecefbfd6095d1be5..18b615f72d9199891bac311a8e3302b9d64d8bd9 100644 GIT binary patch delta 387 zcmV-}0et@Q9;^e97#j!%0000V^Z#K0000JJOGiWi{{a60|De66latX7AAbrN7Z)Mz zvXH9)00B8kL_t(I%k7fOZo)7WL{I$S6$n8f+9I~7|Nl7^+bVsiRY@S2#Ie&wN<~G& z7u35e&&-{x8Tfxe*T-fR*Rwd{WJ(Had3yeA#fr@;uDe9a(&D`1))Fy|#yqa)ts+WE zq>!EDa5O{!^tEmkQCi`us(+O{jmB78Ax5JCg|z@zB0a6B>iUZOaKFIhC!~;wm)8&O zmNQfkv^wc)eMNqI|DvjE3TvAb&X$ZR0H~bDd&hdcWSM4*-}(A^ZISQ(QLW`8>vymNYy3 z>4dtxcbn`2pq|AMS}UCMc;{KnW4!aES$@XcZsKMY*FD)JFpWY0(kyRnqi7S@CcB_? h6)I@(d2TwZ{0&U`r(qOFyu<(i002ovPDHLkV1m&Ewmbj; literal 3954 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!73?$#)eFPL>$*u~CC<#g|S12gTPs_|nRVb+} zNL5I!$V_8ksJQhuJaUqXI?vzdB6dtdLZ=HOCUM+9aQu7n=~wGky?iP8`?%n`H$EPW zlPdg!EQsXz19dunkTUhh46Z~fNYI&vPBo6SqN8CB2V=sR*YRWAI% z+86DWsxgAmYZ&(4hUpHAqQoNK; zZ)aKzOStGB%Z{JlT9@55c^lfb;SPuK%mqCg9z8XB-?G2>ZdaAOqF>76UeP~~1RDyH z4b11wV0BuN?^F87TK}_R-W&ELS&1v0#YfmS>w3EeRvno(+s67#u=cTa1Y@>( z-Z1Nl(FvizBmNUQBu>2w=~-39D`lGb?Ob>G``QnS-JU*ZV&S!G5pd?R+@%q?xL@(u zj3mD~GF~&(<~Mm7E}dfBleXeq#9Tw==ZB7pYDU#?s!j_ja{UpqGOCu>^jb*q<7ZNr z_Wu;~>DJv^bFnpG*ON=9;~#c~?<#U%Q+j=A_IKMaH-gWbXV1QRe$7SU;`q&Ov$r0c zai;R&L8&8(GNLA@I{D5Wkl=3oXdvO>@cF?RH=&0I?>so8<`$&UYjweQY^SF`1*Co5{+AL)c@|hVED)D##_(GSt{3}rd_o-mlbTi`DS89 za`aPPb<6d$9gc5mSSanXQ?{n)jL-RP2K$xYtG#Sijhtq)|H-Yh7iUWZ?w@*p_uAvL z_VWn=J4s)|yBtNcQe ztFn_VQer{{GxPyLrY6b zeFGzXBO_g)3fn4M}uoLxJU{Ck`#}ouF>EkDFjGTJesCK@tkT5=Y;3fB5c zc19|W#;T5HYFmVkH3Ic8mIV0)GdMiE0qlh`FeZ7syD)UH%6b4foCO|{#S9GG!XV7Z zFl&wkP>{XE)7O>#0XMramwKVl4=12dqNj^v2*>s01O>hf)n*S?Hny(`Y;0<6CwX{g zIS7`vWwP+M^EU71L{DNtsw1DIbHDkt|KEcgj)n7A<8mvfzopr0Q;RXbpQYW diff --git a/mods/default/textures/default_flint.png b/mods/default/textures/default_flint.png index 4e60a6c0f18c248b30a0ae865d54e7f27768fd84..3211db1570ceff9d2dbe0d8a8fdc060ee7e33263 100644 GIT binary patch literal 3038 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 literal 3729 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 literal 3643 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 VKOYiL?f{y};OXk;vd$@?2>_`I^!@+< diff --git a/mods/default/textures/default_grass_4.png b/mods/default/textures/default_grass_4.png index aa548674a4241f51cbaafdbf76517b7e0a0496dd..72c721afb35c7119cd8a758c2c1747d6edb375c8 100644 GIT binary patch literal 3134 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 Y0JQ?YKfQTx5&!@I07*qoM6N<$f=-O_WB>pF literal 4093 zcmeH~dpMM7AIBdOItb!(vacEm;s04Pj|{iu9$hycdraYDf;CX6rQGGR<1 z7zzNwf$0MQIb&$mPrc?mg}kS(1|Alng+Q^3DSErW&u9q!aivOOJ+{ z7Skl=)X~FFb6syZe9OzURgCDpS;`oU9zuQ4cYNIO{)mgFBeNm>uFQ6F$xwZ;tT3!D zGxqi4s~O1V7Q^m8^b4oQ_8Z@syfs7`;Pnqm`wJ-_wI3b*GlOBbF+rMMZ~SdyfQAs} zV)Hh&{$%TiE%Cn*o=nu*_P#R_^-h`y(40EQa%tZUJ?Y*YbjhO1A*AhM)&MAbC3%D% z_!!+js7q>@w5WR{Z=>^Y!<6bv-6I;h7|eb7&Wv`t{`a=SeyP+W)G8g}ra(0ln&z%n z-wR%nzh_@?KcJnCsE2FH>x;(SZ?eOb@H>7|2sIE|u?Z)z8fJSnH%$TIGOrPQEkY z9tv#D1Gp#3S*>`iuzwCt2j$eip_s`R8S4dOCVY24HjmgIKiessk$nHJgg-Du?!BYx zv{R9OIhu#&t?%pFm!0x|TG4yX*Z=tVea{=IGHtS*CuI+&DLj2j^_6N)vC3xiYYUot zEDw^~bY4;py|;f#tu8Ctx)VILgt!%6RP&Tqon*qwBHPvXw&%++N(UU}@ zpvx@3v%VKLkKJ|8Mn`B_3*I#=MZj8wKc1^CUdYr_r+YX%dMo&JIa*ik>72#0X`xzl zvQRN%%*-L%l;+$OOWQpueS74$!k_hK?xt;RbnEn*Tv8c(n94T#Q{(nNpU9Y@N+nw4 zrq1GndelCwQpXkbD(d|By1?$+XUEG^lC(eh&Nq^cJ3i2*!PXUSQ!Yrtv&3M2eCT@P zi$(dpm6f=}z~|FoV*BjvqHWtAat0PJ9Uq_Q)D9TEXh?Q#@}BH3nc{ww)WKul<-d(O zTK@ir{cUmFAdXrBn6U2j<_ddhMBye=9gmGF>hr{z>MfV2W7ofLt!~$x5>v#9Eus8` z>urv4K5fV4e3E;Yr8rZhsRITLVm?sv;MDl2P{fB4)RM{yv7sZL-EP47A}nQ z_fy0<(~3=qPt1L06Wyi9J1U0lgR-PeK~;`g;(Rdl+pX_wlzs1l}U*!u+6g@!U8 z?Z2ixkjtkpr#xKdJ+)*j)is|_r)X&I>WVYS--OUAo@ML;7QJe<$xVo@l8K!6n3B00P;lr;u}L0Q?LY-|va2O>tq z=7$Io>=>hE#J?GMW(=JNX$NxHuw`ZljT6hq!Qs$6>?@o>|A)#6*;fou2s2Kq`-=tS8vz{Ga|(GF3wG_~n<-&sHGxs7-efE?|L$O#`rxq7=#TJlu?b?! d!KU_iTa`4{xGIk*%tPA&o&<0FHP_&jzX2TBfW`m- diff --git a/mods/default/textures/default_grass_5.png b/mods/default/textures/default_grass_5.png index 033d36f9e54a4d83699ff66e2cb2af43042bb8bb..7fd6838805d5e6ef99eec788e061793e3eaa7665 100644 GIT binary patch literal 3269 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 Dt1U4% literal 4376 zcmeHLYcy1C8{UL8#_&3nl8lk0FivU4xeQ}symA~Q#>~cG4rT@uc~Ln<6vpc?QiMc8 zA<-*2R+K}9ltYs0HB^#QBsluTdTd+v-f`P=X$PvJ=c2Hz3=rTIoM+* zA=@AT07&9&Fph$!^m-HDAh_?=l5zq7(e4Om0^5-o4regwew1Jk&OXKf;UI_N2LPOB zwQinSGrOQ){N>$+g++YPCXepHYQD%>e;#_FpJBWow|YadJZ^`JjF0}e6;`hK`w;tz zO}w426|~G$5@sM`zKi~A>5`pZ$}?zASIZe6?j9Sl!cSsg|nBupq3M)sob&WvAu&>Tki)w`K)PkWs)92cu6R%1O70{pNgM@P(nx&1JibQ(?l*YPjxiY} zf_|Ar@5Zs;7=?MJ6pLbXJk(=zXC%5Hv4_ny!~-u^P5We{nZ6UR!*IbQZPf@vUhbmbb3|=Fl}!mfzvh?%VU9Hw8uUBl$kT;S+ZsuO!7$ zR}S;!+(s}%K|4X}@8+xfnvFlK=^M1>DEv`U`n7lXs}64dTPKv}DLVpqj!D%n(D6B? zNd?x6x~<3eO%(5EgX>)qx3r%-Qz8M2_rqs+VA zgVI=9Q#VpPAfi}T2$IP9PfA7V-s!aw$0<%tdIRw#;n5BGG)J?&1diJNc6_8J(Xq`!4ETlb_NYS<;N8COn10 z)C%o`|A^6Q>gDjP1Ls!^uMm&0!P`nvx$MtCKBEx&`ySeJvL~TYj&5I6KYN z?VT@MmzFYkZ+`EGiGil8(E6tmk;5%zwa?OeTKG_-yUDo+I)bt)Jr??Eyuvlp7BR|P zo$b;C=L0rot|kqjJnjZ(D%+6pLW$S2k|YsHo;t)C?5R=f@MAi+9wW8j#igstFNN{b;WSv@5--y6xKz^4J%b9T>^kj zffT_{gn+j*BGIYZL^9nM)aFnb0u=yYV$NX@NkJeR?hE=;Xr_p{#%2VZLN-OX?ZfNf z8J1uG#U_FYIz`w!lOlphXfndw3}V7D5)e>9HWALD2GdwZ98<)1UL(Q#dKig-e}}Mx zOc4aU1Kg6%1mOnS2HHAWRvb#09>NR)H(`?fj2to6KPUt}Q$zrp%`ieD!^6Y1!}Yc4 zOn;;<8jVKk=pps=v;+t()-f8J$kC#)RM#o~&4B?~B&NVR3Y`XD=Op^lL)oSXgkT*0 zgPctIhno?~4F1kcCLzIKkP6b+ETpcsF7i8`Ofs^jGpR(udfe*|(}E%Jw4 z!RnF!EPq|Y|Ni>*k)QJTmtDW?`Y8u~3jAw#{j%$)9QY~luif?kWf$Z>1r$gVR88T6 z@(5Uqu@ID2_6~N=R%^0`8V<^OE^xGqiXj29&r8jatYqz{X3d5Z7#cPaNXJMW`)FN4 zw5oTEzFoYbV1^0mccfJ9Lx8$o9i!^WKj01~q6O$f;4DF}ia**Lt_#&L;_vcIY5Vzc;yP$CX< zz*%7+H07|2unN?&D28}oOZ)xG#pcTzsYT}fVd8Hk?yOypo>~h1Jp2NTUj2RCEaz)0 z)Ej4Zqn972Xjl=`@FWDN`2>0R9N23gp-DTUV(5VB&)DJkfN`Q{<8Cq!bK@0d=wM+W zVId6x)$A!uxqb*^f~|Ow1;%m%l8~1mLXfF_i~>PW%g0 CoeHi1 diff --git a/mods/default/textures/default_jungleleaves_simple.png b/mods/default/textures/default_jungleleaves_simple.png index c60bf12c5bc43d858fded91ebabf3f7f91998dc7..7165100c7ee1b526628a81fa387f100fb30a601d 100644 GIT binary patch delta 376 zcmV-;0f+v(9-#w}7#j!%0000V^Z#K0000JJOGiWi{{a60|De66larthAAbrD0yz&= z{QZys00AyZL_t(I%XL#bZiFxpeYU^_!3rXxT=@vT|1oj|v}LpwD+7foCdKAOgA=AP zvS<8$#sI*_?OpIwkNea3p%dp@lzhPX_O#cJ4r$(ym)!tB6XGNQu%?2?{b`_zmxMS; znm4d7FT3HKWph6|_@R>!Cx6MyZc08-^6`rV0NeurUTD`;kme0*DyWM{Y#zhg>3mHE zmO8ltfFC*m0Mg_zFVbc6vYT4F9#~U>^X-YDmT5wqWd8gzL?#Pr)@Jfddt=kQ{V|VC zdO)w5iSa`xS|7iON~9|@n_3^;_vnPfG_^L<`4&yB^}iIZ%mna?QBgmZs}u;*j}H3r zSq{^{E2P>)0yLydV`>9EUeOZB`BpT5)qf)YG9uN{hB%3iG%vfc`dw>!bt*MG8vYG9 W+aavYEu4b@00003TN{2aB{0f0MiXjqb?$YW3s& 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 K^Q`->eg6W#;!IWm diff --git a/mods/default/textures/default_obsidian_glass_detail.png b/mods/default/textures/default_obsidian_glass_detail.png index d29a7a7160d72dd40913ea4ca076e7af72f6d8f2..a8bbec98d877d4df1130847e873d9c167bb033db 100644 GIT binary patch literal 1167 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`oCO|{#S9DvULeeP$l}IhprBM{ zNJNQqer|4RUI~!Pz~GyhlB!UiS(2gPo|#(^r~B_60|Se+r;B5Vg&?B<%lqG8Ringc g2#kinXb1p9fJK0TQR@Bm<7%FbPotE2oM}ep9e{q)_<86uAj|J?O+*@$`z4xId*0=Aj3jMwOQUlWw z#@iomoN4*^_BBs@fJG3G=h@PnLs>!Rrv!)frR|J3bhhR*z?#nu4vj@RgZ)JtlreFs67%tExxKY@2%{;YM1#Z?q9rGb&{Foe8{J}^&0Ab zXCzrf?%g=2KB8{Y>^o}nGS;S_dzW~w@a?)~Jtxjp2lua?qwM3dMa6P@YRKWm61O9{ zSFtZ~bbj;YhCmeivDO(XeqL8rURqN4tye0>$427MjGY_j7_px}WX@9@+7@e`#b5CkJ-f50QR7!_*oW?Lox{DZd0S_& zDwxO@E_u#q|LXUq9b6o*D$n%sUaN@F;#(>kt=;#8MR&%E7wc10UPm+bacmPkr{F4d z)MwEYO{vX-4`pO)v_vc~wec$`gueSQX|e~K%oB#3e)90JekAjJCQ4l z(_H1z@kz>UtGd)e&t|=f+L9J|b87LnJ$V&J16AJkpV zdNX3rlpyV%u#9yPv4#t;HS=3uTIg=~=EGu{t%@~KS+|NdKU+98%)0#L4u7kloz?n# z`J_0OPHgM5$@!tN*stZ*l$p!U+2sDx*?jMcModKgs{Q`Ga#wz+Y*oAE%j<@y~T zn`0tg{A1m@;X1G0Ejs&c^BD0_*8I&t*y-xBr81Vc~=W_E%TCMwfLfwy# z3H6Dg4Z7a@-t2j|DYr3G!sp!_zmM)`H2h0$Hnu2VSTf;twx;g!+a|Udmiu4i@f-XV zxwcg&`XU1ZXI3UK2S)h%SS9D@>LsS+C#C9D=?Nk^)#sNw%$0gl~X?bAC~(f{C7qo`J4wMP`|ik{y?VO;JjkRgjAt z)CeHYRw<*Tq`*pFzr4I$uiRKKzbIYb(9+UU-@r)U$VeBcLbtdwuOzWTH?LS3WCX+v zm(=3qB4Eg6=I1GZ%uGzmFD$r z{DK)Ap4|X;dl(p#yxm;OkH}&M1_Lh;W;|qZ<1tW>y~NYkmHh!XyD*zX z_Q6>|c?Pi(*N775{9I6zg~2y5B~_t3vm`^oJu|o9#i4k4pb8#O7sn8e>&XcUyg;4- V1LN^kt$jcigQu&X%Q~loCIEW@Pu&0j diff --git a/mods/default/textures/default_obsidian_shard.png b/mods/default/textures/default_obsidian_shard.png index 295cc35247903082407eabe2063b7cd5f17349cd..a988d8ce3689cb6bbba1e3d01290def0c8c752fd 100644 GIT binary patch delta 92 zcmew>oi{-ujDwAVfkFQB|3n~V>gnPbQo)!k!RT=O(06;D$+-=CW+_T=b8!4ocQ literal 3581 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!93?!50ihp8YU=FMbi6{w5ELSKf%1_J8NmVGR zEJ#&It;kGcV5qqDc3N!N9R;4&`;o5G8&p~nEG5oZ-gTUQpIhx*#iz?@M$f-2RWplV zcDm#LV8`F<=ik*mSd?>;b*o5mk6ic(#bQV0pO3AwJ|)^+@2<~`dGqd1W1`TNqCLlI zzv^#z{hERM^uE})=U#o9JWbh3_PqD8GmH1GRhX{)@UY+OyH8Emwak9H##*I5^8D=b zW(nVi{x?4ANp6?h%%LQrE+< zExFTrCT%#vm2@`z!=0MaDV?4*%N=^TN^hmdu2ed5z}h)4ZJo~LX$tkvtQNKeuGs83 z?U_nrD64tn%<~Z$=Vm{znJSc)*D}wiz)j-gvK`-h`lnnDe6M`8v&L$xQ;bcKR3cB& z=y@9F8D%CF{;p6RxNx@ZTb!X0D{djZ~ByY>>`su*V<%< z$x9i+IJ*99oG`)J)wMbJ>WXEao2O|Qy7U@G$)txEZcNC!cxFmObOp!`!%om&qeT?o7=hfr<&zXKK=NxKaa@WecQulN2P%lHQhVs#g83 zX}M9rSE`=uZ5 zUo@BH6w2IUCiACmR+s&2TRGhty*FtKy#2XO*2;M0y3hU)7=7`|CLf`9wL8;a7|Z_E z?AXtdcI_SK!7~welDqb-y=&gIV)+9^ug4R@$NeJn5A zdF%{M+Xsho{Vs|D_&MR$Sl2!&Ek;zRWpYYOfis9b<4f z*){XR{xv#R4LgMSS|29#nEdjzOV@9k8~NyKXlNy)p|!{@zjs-O85lUTGJ#n+!q>+t zIX_n~F(p4KRj(qq0O$+`1{?c|g2d$P)DnfH)bz|eTc!8A_bVx6rr0WloBA5~7C5J7 zWO`H;r3P2|g(O#HCtIc{+1qj1R9FEG$W1LtRH(?!$t$+1uvG$^YXxM3g!Ppaz)DK8 zZIvQ?0~DO|i&7O#^i1>&bX_Yl%Z!xlxD;%PQqrt~T-=~W0C~1b86_nJR{Hwo<>h+i z#(Mch>H3D2mX`VkM*2oZxO-9i^u0dZ`ye;a9*kN-QW%d0*JyB&6apkE9!*`N!9`LCkfeAtbq%fH z;zBf_QuBbVrgC8Oh~a;O1F&hu6W|l#nyQ;FARr*GW~gJ~J8kdP{XlWXk|4ie28U-i zfE_6Y#w2fd7lsa2Sq~tGv%n*=n1O*?7=#%aX3dcR3bL1Y`ns||;AR)*7umcuR}d(q z>FMGa!f`!0!GXQr;fS|FS{$d+GzQLnoC=2+JtCS^LLH8<3S4YhD9!L+p7oMy<-}^B OCI(MeKbLh*2~7Y-WqlF= diff --git a/mods/default/textures/default_sign_steel.png b/mods/default/textures/default_sign_steel.png index 2c857c02425c234091e6b7872fca23283e441132..5705c787c7cf2a5a990ae329c0b064051a1cd063 100644 GIT binary patch delta 3153 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 literal 3921 zcmeHKX;2es8g7)E5G=Wr!)XGHawPg(?B{hof__j~HA zx1JXG5ImF>wG;sWP{w<@`ohnB+e3aYd_Q8Q;s*fIYCQiSwl9$bGMMy8N*n~TlNb;P zaVe1iz#Ur*3}u=aAvUAb>!l6$eKWUQ*?jEk+)#$BPSZ1gL*Y>Dtb3J)9NwcscVuf* zJmR!g^N0|<(&_fX%F%kPSK)-{@rxq-cv6@RPw6Bt;gGq%Z2di2Sm>$(FUfQ{asF-n zncwReKkXUoRTAZv&a@2n_sNjgei1hZ##ep4>SFsUb|cHS=eOin`MJhETBjzwx&rTn zA?(cu4NfZrnnG>lpTuP8@M{u+?n+^+{v`9J_?O}r{zn!IGg{`N=kbn1lLMl>#v4e?(1=I}G%z2jFUp64%_taXC!SkV);-? z>dT9^dUc|*y93XkbPyT>J{WV}BuIg7qoGd`#$yGE$Et_(b3@-~PdNYb2mLrlR(SyK?z(+$Bj7{d#vHE~cuO*1~>#R>fhJ z9TZyWSnqBlX^+g)h~;CCEpG6SR$O;Ge8 zG|orIl^Y<}T#jvZSEed0Yeo-FWSMS>8gA@qy?z0$*S#XWM9J1_Gbp|S&gh0urQ6E+ ziBz&fit=VR9=iV~Lt=hNh)&436l?PRKS^Ej^nsc9p5gD(o;3J+ z)FExv&hfE#<9rPQo!r~?yIwx;ii-X^{!x$9!3BrzbKm~dGfG%_<1X`i3(B@`tTuPz^ z%25%tXObgvzOL?{Dd3p{Dw@q^;4l~thlA!=qUp>i4A#!h4r6YCv9K_M5oW9;8k@*9 zqp|e2DgNMag;*petR00;1GhPe5%dJM0}2JNgP+OCq(8YC3Cy@p%w!S6(O9JW?rK3@KAKsrdJQfV|Aola*k z81eD(OeT}XVzJrm#Kc6{=Ww~)q@*MskC&XBoRX4q_Uzfz)YP=Jw2X|5%*;$apP!YL zm7Se^{`~p;{CuHMcU2uj*hObF3(p@WH^x&+n3-69G8s3KbL@1#Md6KK#q*A zCp=MLcm}foKuL9bNC8D92jHL_8}IEV_f$zv6@halSn9$d3f|S(|A4r3s1KPABBXr+ zD|2#87QXxVQAo(_pFH!j)!N&$;0tI242G%#LO2(Ep59@U5cRAs9#-OIew3vDy(R*= zUYoB@lxSPFeCzY$dQL~#Neyz=M)6)lXTib4PRJ_jo`AIWL@8(+Lr_p?Z**^S zXm4;JNkc;*aB^>EX>4Tx07!|QmUmQC*A|D*y?1({%`g-xL+`x}AiX!K(nMjH8DJ;_ z4l^{dA)*2iMMMM@L4qO%jD{kyB8r88V8I@cAfUux6j4!mGk>yHbmir}mzUokXMJm* zz4tw5?|s&~0Fb=>xx92(3V<}8fFI)JN{@_+repg74DbL0%m84rGBW}~J;Q)VJ|1rL zOpz1#A_#ytcf>0IH;uf5=ydS^Nt%_x7l_gXiP(b8$z+MRP{gU(f()^JM#R+k6fwgn zG4n+S6tTRR6Mq-k@Uzb%JByi}#$$_EeC7;x8e7agBHo%M z6{c}T{8k*B#$jdxfFgc4LOO^JKENUwrF_Y9)-eX;$OUwSIQ_o0dBB}pL2uro2q&dxUGa#+UVg8rfZ>F_u7)%T3W>Ha7W-JO%b6s8L3;<~ZY zQ`3cfdVgjHlf|JM{dtK0ao}H{!!U%Cz~OUvqKI(OlyP~9qIUDxTmd(oN9XeXQxpGT z*q^jG*CJ6GJ^^a1F_0Rd0_4{|fT9oq5_3Sb1O3rAe|$I)zq|<5iN(49Ea=~}!e!zm zlbiTC&MhR2&Jyyo7Wc%@5}*MANCGNQ04hKO=zjtuU=D16J#Ypdz!wC9Fc1Y+0TxIC zX@C#1K|a_Bia-h20d|9GPzxGB6KDY^KnFMtE`ZD6I=BIDg9l&)jDzQ32D}0D5CmZ% zGDLwCAXP{UGJwn>2IL5NK>kn&6a~dWi4YGGLix}ps01p9s-Zfl3Hly71zmuyLW9sf zXnz!%f_{hI!w5`*sjxDv4V%CW*ah~3!{C*0BD@;TgA3v9a1~q+AA{TB3-ERLHar49 zhi4Ih5D^-ph8Q6X#0?2VqLBoIkE}zAkxHZUgRb+f=natP#6>iMMoK->`~sR z7|-H2{OUqatT zkE7pUFc=y}2V;Zr#zbL~F>5fTnEjYm%z4ZpW(+fn#bOn(23QAdAeM<0V2iMOvB$9I zutV5!>{}cWr;0PjdE%mRJX`^;5_c4L7B_^Oz|G^O@LG5~d?22U&&8MF8}MED0e}2B zex4vr&>=Vw!U)NPjf5&f3*i#sA>kE~NK_}<5`&3c;s# zLeh59VbXchJ<=;OnXFBACP$M6>atgt3H=1Y2UgM2$qd#E`@bNxY<% zq>JP#$vnwQ$&-=;lG9RnDQzh?DSxKaI;k3|Q&PiHv(gl4GwDF-H0e_5qtaKUCuOiQ z+AVXR18&z>O)PYmQcT=_ETqMWn?X7!)0@1 zYh=&Jj?fUAHqD2YN-LwCpxvRpms6H=k>kj1lWUP1lADuXBJV8EkuR2Sm4Cl2|6YNv z;GvMBuv4K!;gKRrQC~4wFdVy&)LYdbX@3wj7#ay06&l?dGn%TJ0h;-m&6@YM@LCM5B&|JKy;^hH zI@%H1TeLg0Cw1g?e01`3nspxPl69SQSL@d6-qOS9G4xXO_UqlyhxM)Wlk{u!2Mk~X zYXh#qeuF_nw4tpb&#>Nb*ob80Vw7dnY&2?2Gxj$wFzzsZVWMdgZGW=Uq}Sw=sg-G} zX@ltlGZ`~qvjVd&v)|42%~|F(=C>@!7M>RCEjle;S{hh#EDu=TwW3%BSZ%TDw)$vo zW6ig2v7WNgw28CXXEV&8GJ+VTj4QTiTUXolwx@01*;(5O>`vJIW^ZJlVt>?ra;eTz z&eDdZV-D&LOouv$5r0RzW1Qnb#}OwrC#F-q(-UV6XSQ>r^Ms3@OR~!`mlv+4u6)-v z*Eu&kx3zBP-4S;$_hR>c4;hc;9@QR?J=HxEJ)1peysW&|c%An~d;59s^d9z6_F?%n z`ONs*_^$Qs@gw<#`c?Zq@z?j~`*#Jv0lopd0v;~YTE<(}5q}5*eFAp{J_^zaS{?Lb zFeW%CxF+~%h*?N}NN*@5G&b~T=$kOtu(GfR%XOCvmv@IthR1|Ah0jH}N0dj5M4Cjd zjl3SE7{!h1jK)TXM>j^#uJBl~d&PK+RZLOLos~K(b5>qmrMN0})tOkySZ3_WICNY@ z+|jrX%s^&6bALA8Cw^c249ktRhxMH8%&uThaU3}1oQVX7gz|*RM2Ey(iBm~VNtH>{ zTsLkt_hqtoa&7WlN?^+2l!erY)YddyT3p&Go(wOA*ORW2o|8V9VUSUjF|yij_3qU( zd_R6;CX~4{vr|A7{Y>=a{6-hbGPMAwA3osmejsK$US(s&a1AyUc0{X5av+U zp{EVu4ZYtozHMq$Y%FQ~c$jy1T zu9enWavU5N9)I?I-1m1*_?_rJ$vD~agVqoG+9++s?NEDe`%Fht$4F;X=in*dQ{7$m zU2Q)a|9JSc+Uc4zvS-T963!N$T{xF_ZuWe}`RNOZ7sk3{yB}PPym+f8xTpV;-=!;; zJ%2A>>~-lqcg5k#>8o~EPhDeN>$q-xy}i$>uk9zRpW6DZ``ZU>20Cxp-sl=!I(T-- zY3RaD_nVh*`P{mGd)e*5JIn9f9gZ0uxy!ygc`x+2=_${t8_!le8-Jeh ze15v28mBOpTuPtA9&j!stev|fQey;ef!rLS7 z81H)DN4%ey&;Ee@Q1wyoW7j9YPY)N;78d>m1DNytC3hBe0000WV@Og>004R>05Jf7 zga82g0001h=l}q9FaQARU;qF*m;eA5aGbhPJOBUy24YJ`L;(K){{a7>y{D6s4bk}`M-T*rVaRi=wFE%` zKoA5dr2sJ2T6Vjg;)BVutdm!l-;RHC4wYqDce~v_ukZxt^ZB=KQ4|qH5ylv<*DGIN zUtBI1#CzX6<$3<2c)#EGDVwH2s;VN6V*nP5#gEQUPS$>OFb&XOAvDV_f?}6!bN>LP~X-Zj^BuT>Ycw{n}P!vVaYnleFHKKpDrmCv9 z6lt0gMG>>vjJmFwOeO#%N%F=M5#;%JF7fZqud!bjt(2l^8cf@^SZe`TE|=emUl*;l zMno{f;SlE>d7k&5M=6EYn#bdT_nxL{Xxp|=YK%cd@ZMv*_l(Em|K5UV!(bo`27`aF zFbp}L&z*_mnC*7^(Jic2D~uwDuwJh_5&2bx`~42UAAZ!xeNZ^+vH$=807*qoM6N<$ Ef}yV&%>V!Z literal 4035 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 diff --git a/mods/default/textures/default_snowball.png b/mods/default/textures/default_snowball.png index 7511b0ebcb361075ba6b2dc0d35ae74a8525b1c4..e952b79c03c0401d28e814cb95ea7074e7cad0fa 100644 GIT binary patch literal 3102 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 s06+jSQkt0n0*KV!Z literal 3826 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!73?$#)eFPL>VXg{^C<#g|S12gTPs_|nRVb+} zNL5I!$V_8ksJQiZdgP`j8a%H5BVF|wJv$ODXDBWz4>$T&5#B{u@o37iUYG7YcpZq*r_U zvGJFxYK0wZ?d86zP03Zyb1spb*Uod^*{*ED?Fk<)UEXJwX+Qn$-I8zTU4I+QpZ>Zb zC8X6h@vyH@-L5?xN&@4$E5B~+gjOc$%0Z(ZE!e{%Pd<#%rG`TA)FSMp!E2lI=z zd|l#Swe!vgdMNq`vM$0`lOZbo{5QArl<6`^K{E2x5eiiCxtMJ z>9F2m$=a8+@TIwLeXEj9_#qE9iNy!s?VMSD>iw3}0q++d>CD+v)ViZ0g!hodlVg&L z8CrgwTY2u!xwLn$j@@e%6}U3JfoH~Asp#H0B{p8iC2cw-sMvRQ{=%cvqTa38s&}{a?Y?%o>Q_G(ZChyDIEjRlh373A0$MNIh9%qA7voZw9}GZbqzS}~E&Vk(=VKuK?eb?lqGC;OhH zU8z0N`@eUNzkHQ6Z&YdHntBkjSjK z=eF}_eh!O@-D}zU|JBNEmv`o0KC!s?vqY=)dyCqx^Xqq*+`gfDe#^3o=V$+jFBof_ zx%HsMV$Gz3<7McN20CDZb&8pZDsh{4_DHZJXvUxU^&XnwZ(% zSBh%R{%%kR51Gnt$SZPV!#l;B3=EuEnZTka!q>+tIX_n~F(p4KRj(qq0O$w?1{?c| zg2d$P)DnfH)bz|eTc!8A_bVx6rr0WloBA5~7C5J7WO`H;r3P2|g(O#HCtIc{+1qj1 zR9FEG$W1LtRH(?!$t$+1uvG$^YXxM3g!Ppaz)DK8ZIvQ?0~DO|i&7O#^i1>&bX_Yl z%Z!xlxD;%PQqrt~T-=~W0C~1b86_nJR{Hwo<>h+i#(Mch>H3D2mX`VkM*2oZxO-9i^u0dZ`ye;a z9*kN-QW%d0*JyB&6apkE9!*`N!9`LCkfeAtbq%fH;zBf_QuBbVrgC8Oh~a;O1F&gj z5a1Ky3Z$n@T`_O|=2fc?oj7^z%-P!)Egv@Z{;|S8u+)dHem{`=1{^ z{`~mqSA-DbWuP9$k|4ie28U-ifSp4I#w2fd7lsa2Sq~tGv%n*=n1O*?7=#%aX3dcR z3bL1Y`ns||;AR)*5EJ?}>laYS%hSa%gyVX0!U67>y9y?!cV6a8X!|~QbGw7d?YYMF zejE)c=ic2czQk}M!KVC~AG=3O<+-`i+73KyoqgZjHs~FbOpsIv5Id5u$e?W?%H=w@ Rpaf_tgQu&X%Q~loCIGf{2{Hfx diff --git a/mods/default/textures/gui_furnace_arrow_fg.png b/mods/default/textures/gui_furnace_arrow_fg.png index 1021103200f1d8bdd9c20f79389386c51d38e492..8d3c396e77b0dfa0e22d78d1a552e72f1f7e1376 100644 GIT binary patch delta 235 zcmZpd{>?Z+qMn0|fq|iTj-w2aI^^l%7*cWT?X87EjE)TLAFE9~1w~v1SzLi+0E??4 zN7EvXE+vkxM~or*Nwr6N42vJ9J*m!F6zhZf=)ShC@oNV5*|Trsc6ZO;uM!1-laYi6{w5ELSKf%1_J8NmVGR zEJ#&It;kGcV5qqDc6wmZ6AhlW`<6%L7(F>UA14@uRySMz`))06_4TB`M}AMXxnpnOVr07h zdQIM6uAO#j5w|`)j+9%IYrT)xmZ#puA-m>{!gj@n-hRJrr`WDv=70KT`KM~h*S|jH zdANn&aPIptr72opzllS|+tvTYVu|C`bJqX+eW$hh$D}>gUncF2*d8-4STN}x*H2aV zXun@d({J;B@_9TnG14$XLy#;?n; zaAWZ*?ft7;{Y!=I8$|`KOieq^lx?FY+5jFL9GbYWsUuYBs2*|(Pc^68B`@pqO~Zr0?8sH$%Z*f!p5=bUxC z(=ScoSf|4sHAWE=|Fnyms`H+xZH|zb?Id}{Lw%0lWC@OClOx#gzL9%UcTzXwmu}u4 zlO)W`O zsL0L9E4HezRRWu91!RMS^_3LBN=mYAl_Got6rA&mQWZ?}O!N$NT`MxnjFjxS6l{u8 z(yW49+@MAPdA3R!B_#z``ugSN<$C4Ddih1^`i7R4mih)p`bI{&Koz>hm3bwJ6}oxF z${-^kX1JslCl>*OE;Bz*0c2)kQhsTPt&$Q@UIA)&N;2H+g3_WKu*oUO`l&goxv6<2 z#rlSNhWcRjDalrD`9-;jK>eAyiRr2O1$pU8`XJZpL!Arsy*}LgAUDt+j9Nlc7>@?m zXmF7f0wgIOO;1l8sYGX}% z7+UDI7sy~N3GxeOaCmkD*rj1$O!9VjVd!9$^#F1>3p^r=85p>QL70(Y)*K0-AbW|Y zuPgflZgycdwu$GK3jl>QJzX3_BrYc>9AIG&$b81W!o*%Gx8Lo*`_h>gGwMuk$@L!F fkiX+%1S5m=CjE=5Ya(s|H8FU)`njxgN@xNA=kYA9 diff --git a/mods/default/textures/heart.png b/mods/default/textures/heart.png index 8a40a111b95a4071ea0b90f77f7b6403e680238f..6d4e228930dd00bcff09f16a30e2873ce1c7feb3 100644 GIT binary patch delta 819 zcmeyV{;qg}q#_#w1B3kM|A|0~v%n*=n1O*?7=#%aX3ddcV6f1byn(fi)l|W;#yWRxtd*0q&TFqAXPsowK%`DC^^-& zEH$r0d9p3L_2h?a8k0C}Ctu^xo1Dw3JK2U)S0p9bDlNY#H?hQ4DKj@QJypLTFMYBl zhr;AroSu{Caym~|=5m}I%Aq)UB8TJT^&G5|%Q(a)zhn=Lvg1-vP_U`UE%5cV^2jVM z$uFt|3n|zXrKDK}rxrqZ5N=K;NHq|E9ch)AT#}ieXRDN4l$uzQnxcdvnK}6(rwuP$ zZFxp&-sA@y3Sw}P;{3Fd^2DN4$8?~_Ci8QuS?WV=)45_%aXYyVz=0Jhg{ep@&8*V1_a4{Y|bZq;^ ztpYyEfgeF4eec~x4Lm}r&DuVR|%*U0?y~{o)3w}6Ie;{?o^E*3> z(|m+BC-g}g%KOL6IN4xUpdxu-DB5^}}l4g0;Vx)-}|Id;VZ$e8OPQ{nOOrw~l_= z!no#swJpEC+lVXs=J4~yab1#(xL?m;&&;W>;$QlZU1NL0d;f~}PFtDo@|k1_I!R{q z6e}`@G^{liOYB#yd|z~c;xi`~2O-xBvWuTo2N=4^ zX)AO#JE}VC_bajx@pm}GNq8OhG_JaCfb(|o4?n|k*%Ggwc4su0ef Sp>-4(^bDS^elF{r5}E+j2qEPF delta 1917 zcmV-@2ZH$SbNMHb8Gi!+001a04^sdD1rd5wSaechcOY}mrt2yxDl+@}Ba=P-ZZ zVq#~Uj~Y@47MDvdaYje&zIIF2t>+ootMkEb?iUP`pp`ug{eR5Qu=~e?=#IU7w3}Fu zA3csP&&Q$6of(~Sf;^6dx1G+|q_Zx&r{kQT#O30i{5p0KU^EY-u;DHVKfiYoL?A&j zo`ffsvORsmD2rb+zrfDi-52og-V1g%AG>^n!q{*ogcppCo&49>ErecJyLSHYLV}I< z`Fg@`jHYAseSf;_0+0&k9O^pC>R}={a z$WfzAgZgSKRfOocGvH?C%Cc+<_!HMfikmkLj*_GqQE*kko50L>EVTAbYrjg0of}~$ z6PyuNe7en7#^1SbM`KKh6Is2nLR>rrh%hE|^NCp?gn!1t)GvJ3ZJu;vpNJJO=oie2 z17=&ci{j~_Em=GZ=6UOk-Eybcjsrl1y*+|~q8-^l;wg}g%#jEK9DgOc=wpa6YD_V!s8g>&qpBv&iIbp&`4mz#NmEKWW77=R8LKm9c4)z?sC)tYK<+@vA>TWHZVZK>r>9a8G9`yP7i+EdR1S{pLl@FR>kbfl4Q z)()#5S)&)`erAmhYm+gz=EVnVFvobgpjl4*6vHteK0tk&9h@l)+zY&F?P!4>^Kf{QGI8V-lh~#K>t@U|> zOMg&(XFx(!C;vG`NR@d*i6}tw^JB zV>?J#Y*X2@qEFR^yd%u1xI)9?3 z-t0Ops`E=rYCd56j-Y+L@}jXIgmqvirVS}u#n~x}_$E1onQf#TWS&)zd0K+hD!dc17wHi!@8edS_H(%AbDmwHXlgYSe`y8cXnX`g-KAT;xY}~$ z5m`7|cG|~x6-W30k`bTga>WPn<9~&jh}3~E*NX_gYnz?|uOo}ZQ^YL5u19JXAGbZn zi+d}oday3Vj$}?XO!{_AR~t7-yrnr=Lx~zruhhamC4ZZ!m(q~U!1W9?)@E$mB2xWl z<=@~>>`n)lP+rTG!F?cq&H(Z99g=I8`0Kc`3K=f%#ob{wI#`KQ5WS0p5-2)eL^t00000VtQ0qbW&k= zAaHVTW@&6?Aar?fWguyAbYlPjc-lRQyA8lV2t#|O$OwSBPu2-E*QLn*I)aqgvh-}z zx*w;bWJ;K(c3QBde@Te5Vj?6?C>VmCk)%(8YU;`DC z+5}OPaRVQdVFVqM!~_i7vH$?N006oG0KfnM(EtFP7!>jV0Q&#{ z`vCy^4FLNO0OS`4`xOA}AQt5$8v7&~`z1Xa`!p{5H7@%+H~T#}`%g>zP)z$#PWxV4 z`(9l8eS96A|6l+B00DGTPE!Ct=GbNc0004EOGiWihy@);ks%j<00(qQO+^Rb3kMSl zH*BToCIA2cen~_@R2b8Zj>{H;Fc3qh7PUn?pg>ToLO}%o{|BM=;A2O2H#wOJ(IV}Q zCR)d4W>wlt9v=&+zy_6TZ`TqicA;SFu75ZSAe5AChgaX=V{9|`9J>3&+2(C%hHE^7 zb+{_{eDa*E=D#v1^?Z=uWf4!g{M{-N7XRxbNlP^X8Vv|xc-_|$00000NkvXXu0mjf DknwRE diff --git a/mods/default/textures/player.png b/mods/default/textures/player.png index 4f9ec06c66cf362d2ff6df56119a5ff41fbb61b4..6d61c4342f39fd8da8330e97117c68a3709483fd 100644 GIT binary patch delta 125 zcmV-@0D}L(AdUf$7&2*y+{QCObaA>fUN^Y f;3~+!G~umW9#GF$kG3--00000NkvXXu0mjf_UJK4 literal 4160 zcmeHKYdBQx8eWsb7Q`gp?i9IHh8f z9Cip%kwa1vi5RCXpJS3p2bJ1OyX)J3_8&j?k9}R%b-imn@AKa4Ue9}9@AX{wN_2EM zBqOOT2>^hMjkSdn_=JH2u}K8H`%c5W06;7}jOfa9B8MP2T(&PgfQI0Oa%cz|pY96) z{J}C3BXxO~^tUb@t|$SQ(sJ0P&g?>-f_KV%=E#>|_}w;d@d8pUjPz$-*fZMmMrxSid#dOhVC(?j^@mU9~Bhvy8F@r~ZYjS3dEkLFH$Jgk{7 zV7BMPPg{;3{}L2C9N%7ks_LIEqjO1jPS+DU_iw07mIPv@S}iW|7<+AkAE8cBcLrrZ;dGh3** zk5bcVK;Q+tb~DSE8B?yCR)sY>Nohm3&Ziga+IHVGGitttuMo@{9f|DR$$u-pw=7ye zR-Rq^#o%-HSA*8yby&#`=ZXx(YEoZBX*_uhuRMYLt_RQUL$;vBEQ+r0MQv#yk zc{%ZQr*5tPYdgVowR0F#2L5#)kTfvK2iVw%vWFd6u1+kID4K1J5-l92X~YmqwxLr?qC>4t*@l3f2B}|DbOW)4lYCZU$7Jg{U&p6dk%#%(QE@fbGacGYbe|;p zV%-BI+1Iibkq$=J73Fv>u3b~TZ~s1ATd%Y5M?vMijT zO|$mP6uun7;4pnD4FxXj$OJM3NsXf)_c!;hULl7PMTqzr%&V!mRBb(CbO&-E%C+hN z)K6gj?uQ7m)LVR1C56S8-rjn{Z9q+Wr^jAntB3GBXiseU{^(p@an0Y@k)QMNs}jRZ z@$NhI?bR%(afa0v0<15FlZk5WcVd%Y9!f7F7!TPeZ91}~?ceS1-;qptK8I#Cz*TdN6UOZywA8t4i@!K(Pa%JBoUo|XgmezO+Yqf!l^*t1R zw5<|uRpPh)_9hi6cPDG55_W%|Opf z92m+qviNk5zSy447~Je;_~KnnNujU0QQr#u|U5~?y8IcOtAdd%1?@9Qym7aM_t z-N-YC)#h0{HpagrT>YMNX2IrHm>{MfcRN=_zVMr^yNa*uxvGR>%BP6Z%Kq04P3I%f zp3KXrpx$zZoFIbbl`h<3@XQt?(>yGCW6(XbEd1cG?FBie)}gtG@IFIi-0z+rbW)*@ zmhSdmBlKf=j-?8T17A7wr2B1JvRyt}kG|D;ax>wPovnptkJi^^qy|m0N#5*)~DBT%tY}eF$ z+`C^@7~^IXA%B0{Op3bM>qYt2&$drrd&wS)ISYSOi2%E?&wp*hbPkWQ)`szkO)^n> z(jq@HV`NhYZqw9Kk3`}Iye#CsJ9>l}p(7eYTRrt=aDpdG=)+P$%gvCp&E306z5VbH zISW0vV#ilpTtWeTJvkwx1e*>35+~_k(|5JE!&2Bx6q(BQp`rLp4p;^N;12LPWD0}E zL-^4A=qx;P;cg=mL8s!8#|-WD>^TQ%{&edwF3ma2fk+8sP)w-E1N$X$d@M-7r18iI zJ~Mz7h~?vvKY6iWyp~2I5kDb31|I2Z?}#|a=F$)bCNF=z9_(e{o{Kd@);s*R=rc%(f02-6V;sv7hQTphgcq#>J z#pW`};QMqY*^h?iu>6qdwQAA7$_00i{%iYdHT>_djgPEL;|;ksk>jH0_t_``? zrNFwt8>j34OD@U(7$_PGbWI_kJpz725kPAt;b=#+1OUG^n-v9oTof4t0|?K_!5JV- z4S@gK0L16;AqyZuOwAgcNN}u=2LgZ;d~HC0tQ1NpW+RO6pF(t0BcSeu+^<3D%quk1Sk<=%nT*93njF!R!Si%Tem8gkm!WX@h&B| l38Esb7{(=q?$6@o^1yd*lxitj1q~7cHkJ++<>uZo{{o5VoC*K{ diff --git a/mods/doors/textures/doors_door_glass.png b/mods/doors/textures/doors_door_glass.png index d0c14225a2cb54bcaac5f992c10acb847d42f05c..f597299bdfaa2389d40c5179069ccd5685b937f9 100644 GIT binary patch literal 3064 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 KT$PMj@P7fLXo_C| diff --git a/mods/doors/textures/doors_door_obsidian_glass.png b/mods/doors/textures/doors_door_obsidian_glass.png index 74a7f9a092a39db3acccc47b2c972b584223fb2e..107a5a1ac259280be3387dddb81ec0d1759a1c42 100644 GIT binary patch delta 2968 zcmV;J3upAIDXbTe7=H)`0001fWD2tY018iOLqkwdXm50Hb7*gHAW1_*AaHVTW@&6? z004N}ol|F2Q|T5x_ulkEONfA!OK(yY2q02Ii+~i7CMqEb5K4$4q1hEt!4XA81RKbp zhy#v}fQ%JUEDVYY*azexqK<>3h>FVl;d`TN*1Y%T&HlC5K7Z$|^PRKL2fzpnmPj*E zHGmAMLLL#|gU7_i;p8qrfeIvW01ybXWFd3?BLM*Temp!YBESc}00DT@3kU$fO`E_l z9Ebl8>Oz@Z0f2-7z;ux~O9+4z06=<09Y^p6lP1rIRMx#05C~cW=H_A zw*bJ-5DT&Z2n+x)QHX^p00esgV8|mQcmRZ%02D^@S3L16t`O%c004NIvOKvYIYoh6 z2rY33S640`D9%Y2D-DpKGaQJ>aJVl|9x!Kv}u&yop*V%+ABNBp-7|NI@(BE(5zxmYR`<53cEjzpS_^D?C(i9(Vo#U;}J zWa8f}`vX4TH2|<`J^_1?EvQ{%1NKWN5Lk4;;`aam^1E-r)F=o8fM|o^&v*atKmA9b zB>;eCNs@5@0A55SE>z01KgS3F07RgHDzHHt^nbw^EWidF!3EsG3;bXU&9EIRU@z1_9W=mEXoiz;4lcq~xDGvV5BgyUp1~-*fe8db$Osc* zA=-!mVv1NJjtCc-h4>-CNCXm#Bp}I%6j35eku^v$Qi@a{RY)E3J#qp$hg?Rwkvqr$ zGJk^nhP+2Hl!3BQJ=6@fL%FCo8iYoo3(#bAF`ADSpqtQgv>H8(HlgRxt7s3}k3K`k zFu>>-2Q$QMFfPW!La{h336o>Xu_CMttHv6zR;&ZNiS=X8v3CR#fknUxHUxJb=$GgN^mhymh82Uyh-WAn zn-~WeXBl@Gub51x8Pkgy$5b#kG3%J;nGcz7Rah#vDtr}@$_kZAl_r%NDlb&2s-~*m zstZ-~Rm)V5sa{iku0~ZeQ{$-#)PI(%RjQp(>r)$3XQ?}=hpK0&Z&W{|ep&sA23f;Q z!%st`QJ}G3IcfW3@?wFpw zUVxrVZ>QdQz32KIeJ}k~{cZZE^+ya?2D1z#2HOnI7(B%_ac?{wFUQ;QQA1tBKtrWr zm0_3Rgps+?Jfqb{jYbcQX@ACC<0Rv4#%;!q zeU1G+2MveW4yzqn9e#7PauhmNI^LSjobEq;#q^fxFK1ZK5YN~%!<$uvX3!jxRYu~JXPeV_EXSL@eFJmu}SFP8ux21Qg_hIiBKK4Fx zpW{B`JU8Al-dSJFH^8^Zx64n%Z=PR;-$Q>R|78Dq|Iq-afF%KE1Brn_fm;Im_iKB_KiJlZ$9G`c^= zE@oNG)mWWaNo-3TIW8)$Hg0Ub-~8?KhvJ>$3*&nim@mj(aCxE5!t{lw7O5^0EIO7z zOo&c6l<+|iDu1XJj3x3DcO{MrdBPpSXCg1rHqnUKLtH8zPVz`9O?r~-k-Rl|B*inO zEaka`C#jIUObtxkn>wBrnsy*W_HW0Wrec-#cqqY zFCLW#$!oKatOZ#u3bsO~=u}!L*D43HXJuDrzs-rtIe(U`o-57m%(KedkT;y~pa1O= z!V=+2Q( z!ODWcwE=7E3snl`g?;PX*X>OX6feMEuLErma3QLmkw?X+1j)X-&VBk_4Y;EFPF_I+q;9dL%E~B zJh;4Nr^(LEJ3myURP{Rblswtv^T)YTo*JycSU)+_5r4#yw9{+;i4 zEe$peRgIj+;v;ZGdF1K$3E%e~4LaI(jC-u%2h$&R9cLXcYC@Xwnns&bn)_Q~Te?ro zKGD|d-g^8;+aC{{G(1^(O7m37Y1-+6)01cN&y1awoqc{T`P^XJqPBbIW6s}d4{z_f z5Px*x(nbG^=R3SR&Rp`ibn>#>OB6F(@)2{oV%K?xm;_x?s~no zduI3P8=g1L-SoYA@fQEq)t)&$-M#aAZ}-Lb_1_lVesU-M&da;mcPH+xyidGe^g!)F z*+boj)jwPQ+}Q8je`>&Yp!3n(NB0JWgMZKdk@b%cLj{kSkIRM)hU=a(|cFn9-q^@|TmpZG5Hu>cHz6uiM7L#vZ=Ocr!6x z^j7=r!FSwu9q*&x4^QNLAb%+TX!)`AQ_!dTlNpnf{{#b=^Za8oE!zM900v@9M+-y% z{{a60|De66lam(|AAbQD6$l8fvV=nb007=eL_t(o!|hnR4TCTceU9AYik_8jgLLUL zNBVTx;70H&^i*a7ry`1kWr9y98RA!2LeJdi-3N?wE+T=hA3o=K8nG8rzH!dQ5Q0Gg z7N?~A6fUR~BEy&&%v{X>PWQ^N+(T{Tv}Yw36A`o=t5;(srGNZuI?fp}sYcW^CP_ut z50LT?7cndGShH}>Ig&JC0l<5|n)27%-E4(?nUh4cx%Mz~OihlgVMJuKMV)#FfY|o2 zD#WkZ14RvXo<>Odt&g>RtnFiev5&o;57Bp}s`#}Er_IW}Ftz@MdIQz=clD{~KUM$$ O002ovPDHLkU;%>CyqnDc literal 5290 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 literal 3844 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!63?wyl`GXl4m_Jp8M3e+2mMat#<)>xlq$-qD z7NjbqR%E6zFjU;S8y-FFu?ElI>so1?9!?z7nk(lRThDmfzo9W?lGm=wcjI%l+{6?* zt5x4LeY?M3_TR>C8Oslg43`MZiM9Lbady4SBR{`_nwe@E!umksPELUL^5`xl=5 zdGkwA^n$uq{nfS^Gs_;CwA}ts`SF9zlVmnaUc=a`Ip-%l+x2FDPWr!^lJeh`RbkAF zyKW{kWzBh`K3#kpheg3Q>sxm>PMU30v}JetA35tAkC-c>s}7udy7GCo#(`E#MVkbZ zuNwSS_wrs$-1_uq-hwM{A93!!m;GjM?C#Tc5 ze0FL}!u%PhI^W-X;C*k0{*g_F8tP{*n$5UdIMae9f9Fy4^Esc7R2GD1F1VI?K*8vK z(!mI~>Jr9Cg9X7#t|l^zKTg&yO7d?vY)}dj+*Np3re}`F;q7Y!ZJtlMuyotvqa6a; zvZh%=>B^_8H~tBf*KOalp+aDyf>z+9CkGC)b1G&?q=$rstzYCAx>)V(#KrwW&Q~Oo zyDS5ftPiQQE}4+zrI}tl>ukxkt2fi0)Lb~&ZvTX%UGAfYyWTXrqvDziGdfkL#;h#b z`f2?_tt%11XL)BY4f^aGm2oS{Tetl5)^m5uUoOn&a`u{go7?!$>`muY&u%uX zKX+L=ds$elT7itZk%jTG6N?SkH8Xl=NX^;Vaqn_MUcob=$UqLsY>nnQUCoBc7tB>& z?%288@cT4#f&YT}U%D(MuKeYEmJnb*v-;Uv>1(el-cOypaWxnFvcBE2Ii_h+^<^^u z-T3!sKX`9&WT&p@A_Ls}IdM^4)%mw{QG=z;4U7poNM5ZZ3H8tn4kvz4kk*cc!(Je|z|K zo&D>FywkQ6T%77AZEPK&-}&o_(1s(i9C@D6&!5!xul*9LbiT7ld)o%x2?i zolX9)c=*5S&Q%$6*phUCg+L#Ez=pB{W`9OhdyOBv=+G? zJ;Sz{fq^qC6Ij$l`1)8S=jZArrsOB3>Q&?x0A0brU}IlVkeHmETB4AYnx2_wtMq>N zekFy>6kDZmQ(pt$0_W6>OpmIf)Zi+=kmRcDWXlvKdpj8?tx|+8VxRzLVzU2 zqp52&xJU{Ck`#}ouAvoNT!;o#Y96rFR1Rz&G5l|E05z=wd_r7-^o$uZmM&eod-v`= zd-m+zyZ7kPqsNXNyLj>9rAwDCU%q_%_U*@yAHRP6`rW&C@87@w^y$-=FJHcX{rdm^ zfAzfG(}DUKOM?7@862M70Co%+7?Zr+T^Kr8Wj%l#&H|6fVg?3oVGw3ym^DWND9B#o z>Fdh=fSX-dNK<5^uMAKq!PCVtMB;L9|81cL1r8VU&vl&L|NmcK5>!1!vi&iWHq+~e zL3i!>jT=w;OXk;vd$@?2>=OqA1(j@ diff --git a/mods/fire/textures/fire_flint_steel.png b/mods/fire/textures/fire_flint_steel.png index 7eb4dd39b410a8cc61433001def20a2ad31e92fd..624f5565dd3029b7f3fc0ce0de374bb8977e301d 100644 GIT binary patch literal 3108 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 diff --git a/mods/xpanes/textures/xpanes_pane_half.png b/mods/xpanes/textures/xpanes_pane_half.png index 7fc02522e792296e3505712d17f4bc870e7ec885..4e846dfa088e9842872673dc7c405db46e944bd4 100644 GIT binary patch delta 65 zcmaDL6+A)0nuCpjf#HZps56j~@^oBm<7%FbPotoSCM1!a8e{q*B)4xLnGE9!Qq~Cn}-Wu?7)vI~a(oF27MHKjM z9P3wn_~-q7!GDg5XJxL~ET0tQa&b|sHk)PK(^s0WvepNc`LF-<;fI{0lB53hY^(2o zxOUd+6x{vvI8<&=u5G3EqUeuWM!M%eZk&6kt3}`P?e`BKw!FGr_HFUcd&jiq-;+J~ zg01#YqrYawn@vg|943WqX))_6zVrBJ?y0Y@Z`_sJ%l=+&?@_&Ly3?-*w9NR{@ zc4szkoRJ@&aZ~qn++v>7a}6eQp5oB9yZT}32me=VGkRt|axsiA)Z#WcKc`K4@|_$* zZjOvMGj4UgU-eKk|B-M6qj7ZNxeJkx3s+k7*cEw;r608EmNHBEv`PEBXwR)&^`FDx#ItZZ1C zbwd7nkIX8yWe3kp+L@{yHd)1YTF@tx_bXmKdiCt&-Ob|bBR8d;)~r6a^GVbWj&%mw zD=Rd1P6^WP30tu)BGz#6wPt?HFB_C)>z*u@*{WDO%Pf0k<>|FsZte6w{_*|F>K8kw z$N5`L^jbczY}w`WHPbfpJ-Ibu;bAu^yH6U6?_J4|zb&5i#qC{n)|QpNNxPo?WH;@& zE3cIir*1a0Q9`?Mhd+}?#=J90YN7L_^UCC(?0YKa zQ{OH9zbj_Oi+^l84KC&u&EHw;xc2=2xacG6f-RDzQXeEq>rE|ws_dCpJmK{p>%VF8 z|4JVAFOqk)@2V5ot0lE#lh+S<{X1J8>oSQH0@HW`)+C-;P?8Kv;l zO)W`OsL0L9E4HezRRWu91!RMS^_3LBN=mYAl_Got6rA&mQWZ?}O!N$NT`MxnjFjxS z6l{u8(yW49+@MAPdA3R!B_#z``ugSN<$C4Ddih1^`i7R4mih)p`bI{&Koz>hm3bwJ z6}oxF${-^kX1JslCl>)jE;Bz*0c2)kQhsTPt&$Q@UIA)&N;2H+g3_WKu*oUO`l&go zxv6<2#rlSNhWcRjDalrD`9-;jK>eAyiRr2O1$pU8`XJZpL!Arsy*}LgAUDt+j9Nlc z7>@?mXmF7f0wgIOO;1l8s zq#ykHfBs7URUnJ8B*-tA!Qt5rU^j+=G0EHAg`tC0)&t1lEbxddW?n8_?|zE{|FS~^K@|x;kcfhkdvUm%E+*H2Zx|oj;9b%hQZU-&t;uc GLK6VdmoO>_%)r1c48n{Iv*t(u1=&kHeO=k_u!#sunBTpc z{1_-Cn;8;O;+&tGo0?YwmdKI;Vst0GZ<+N&o-= literal 4274 zcmeAS@N?(olHy`uVBq!ia0vp^j3CUx3?wy9o9t#_U>2wfi6{w5ELSKf%1_J8NmVGR zEJ#&It;kGcV5qqDc6#)tCu%%x_aj}WHK?>4DKeP8>W#wb^ZmWGdd9^?K{MNJwyb2+ zN%4H){O+B>zhA{|_63DYWG2meKB@S~R4=U$GkNE=^V%R z5jU;opUPNnH#qFB-?>lnf3(_9XOW!IpVbZcG0fvCk1y-GW+o#lz2Gt|CK}KQ=Y|4^%D7e zQuNWI(oKR#mE2oiwM%texZ`=%_+a_(8r^kFO;yWoZagT}pUU`yf9dwas_Geyi<0)d z>R6M{>>;QWz|tJ#DPr6iv@GMy!Hx+Y>2bW&wE+~CN`6z0|SIr(H^+o~?L(6d>uqPC=+Tz#l$+n#$Xt{$1RGS#?PJFK}| zJ^Xy$ySP1KdQIl*#I7WN4DwoA5S6&|(Mzt@D1N&q9_?~JHyrLSx^irxr?+o(-nBhb z!>r3+u6R6ecj^13*BzPNGnXt>=9jiRwL;iE_mod?`aHARX$G&IbCdrr{L7uSW#vcD zEX`Zayg{39v#h<|sh6g3tdrr67~`Y^duF&UpHeX~`b<({NUKrP71rgKmDrjx1zs;{ zzbkFYTQT#WSRSLokMarJ+;`1S{5|nD{mQRjeOc-oSM!7iEne^|ZRTO^>e%~J;`<)X z7ujdMk7q9u{JWpm_fOdY`QsnVZ^Uhtj=z0zIWUVPV$B~aDsl^eu3%uWv9Bmd zOwLX%QAkQn&&;z`dcS+Wl0s&Rtx~wDuYqrYb81GWM^#a3aFt(3a#eP+Wr~u$9hXgo z70`g()RIJnirk#MVyg;UC9t_xKsHENUr7P1q$Jx`DZ)2E!8yMuRl!8hM9)CiwIZ|3 zNXd>%!KNrB%__*n4Qd3CXRDM^Qc_^0uU}qXu2*iXmtT~wZ)j<0sc&GUZ)BtkRH0j3 znOBlnp_^B%3^D>@hD&O3auG1-GV}8kKxQT;<(HP&Dk%Zw6`+QvB*V=vC@snXo1BuY zpPG}Jo0?ZrtZ%4is1H`3l5FLcUzD2&)SsD~n4YR%ke9Bc4|1(O)VV<4>%+Ydas%zb zs3jzY@n~?31{X;oK$7Co)HNDhB!vJ;ibqq|&)eCk|A^<>}%W!f`!00mx=zV0@&w#~8?B@O1TaS?83{1ONy^WZVD% From 75caa9167c00681e1adccc5ed58926b882823a68 Mon Sep 17 00:00:00 2001 From: Auke Kok Date: Sat, 19 Nov 2016 19:24:37 -0800 Subject: [PATCH 64/99] Fix whitespace errors to silence luacheck. Currently all minetest_game PR's are failing travis since the upstream luacheck now also warns about whitespace issues, and there are a few of those in the code. This fixes all of them so we can yet again rely on luacheck. --- mods/beds/beds.lua | 2 +- mods/beds/functions.lua | 2 +- mods/default/furnace.lua | 2 +- mods/default/player.lua | 2 +- mods/doors/init.lua | 2 +- mods/farming/nodes.lua | 8 ++++---- mods/sethome/init.lua | 4 ++-- 7 files changed, 11 insertions(+), 11 deletions(-) diff --git a/mods/beds/beds.lua b/mods/beds/beds.lua index b41992c3..bb2fd5d3 100644 --- a/mods/beds/beds.lua +++ b/mods/beds/beds.lua @@ -66,7 +66,7 @@ beds.register_bed("beds:bed", { }, top = { "beds_bed_top_top.png^[transformR90", - "default_wood.png", + "default_wood.png", "beds_bed_side_top_r.png", "beds_bed_side_top_r.png^[transformfx", "beds_bed_side_top.png", diff --git a/mods/beds/functions.lua b/mods/beds/functions.lua index b1c2c977..896844e5 100644 --- a/mods/beds/functions.lua +++ b/mods/beds/functions.lua @@ -174,7 +174,7 @@ end -- Callbacks -- Only register respawn callback if respawn enabled -if enable_respawn then +if enable_respawn then -- respawn player at bed if enabled and valid position is found minetest.register_on_respawnplayer(function(player) local name = player:get_player_name() diff --git a/mods/default/furnace.lua b/mods/default/furnace.lua index cd36f522..022024c4 100644 --- a/mods/default/furnace.lua +++ b/mods/default/furnace.lua @@ -4,7 +4,7 @@ -- local function active_formspec(fuel_percent, item_percent) - local formspec = + local formspec = "size[8,8.5]".. default.gui_bg.. default.gui_bg_img.. diff --git a/mods/default/player.lua b/mods/default/player.lua index 8fb0aca8..fd7341f4 100644 --- a/mods/default/player.lua +++ b/mods/default/player.lua @@ -94,7 +94,7 @@ minetest.register_on_joinplayer(function(player) default.player_attached[player:get_player_name()] = false default.player_set_model(player, "character.b3d") player:set_local_animation({x=0, y=79}, {x=168, y=187}, {x=189, y=198}, {x=200, y=219}, 30) - + -- set GUI if not minetest.setting_getbool("creative_mode") then player:set_inventory_formspec(default.gui_survival_form) diff --git a/mods/doors/init.lua b/mods/doors/init.lua index 01a549b7..a3012054 100644 --- a/mods/doors/init.lua +++ b/mods/doors/init.lua @@ -519,7 +519,7 @@ function doors.register_trapdoor(name, def) if not name:find(":") then name = "doors:" .. name end - + local name_closed = name local name_opened = name.."_open" diff --git a/mods/farming/nodes.lua b/mods/farming/nodes.lua index c75e1e50..09ad36f5 100644 --- a/mods/farming/nodes.lua +++ b/mods/farming/nodes.lua @@ -111,7 +111,7 @@ minetest.register_abm({ end local nn_def = minetest.registered_nodes[nn.name] or nil pos.y = pos.y - 1 - + if nn_def and nn_def.walkable and minetest.get_item_group(nn.name, "plant") == 0 then minetest.set_node(pos, {name = base}) return @@ -133,7 +133,7 @@ minetest.register_abm({ if minetest.get_item_group(nn.name, "plant") == 0 and minetest.get_item_group(nn.name, "seed") == 0 then minetest.set_node(pos, {name = base}) end - + -- if its wet turn it back into dry soil elseif wet_lvl == 1 then minetest.set_node(pos, {name = dry}) @@ -144,7 +144,7 @@ minetest.register_abm({ }) -for i = 1, 5 do +for i = 1, 5 do minetest.override_item("default:grass_"..i, {drop = { max_items = 1, items = { @@ -153,7 +153,7 @@ for i = 1, 5 do } }}) end - + minetest.override_item("default:junglegrass", {drop = { max_items = 1, items = { diff --git a/mods/sethome/init.lua b/mods/sethome/init.lua index dc431bc7..e0fc453d 100644 --- a/mods/sethome/init.lua +++ b/mods/sethome/init.lua @@ -43,9 +43,9 @@ end sethome.get = function(name) local pos = homepos[name] if pos then - return vector.new(pos) + return vector.new(pos) else - return nil + return nil end end From 1e691c442907d6bb5602bc34fdbb3c9a7436c223 Mon Sep 17 00:00:00 2001 From: Auke Kok Date: Sat, 8 Oct 2016 14:14:10 -0700 Subject: [PATCH 65/99] Carts: Merge boost_cart as "carts" mod This is all the working code from SmallJoker's boost_cart, poored into a more suitable form for minetest_game. - Mesecons and moreores stuff was removed entirely. - Textures were all renamed and moved out of default/ - Updated license, readme.txt, attribution - Changed code license to MIT, left artwork at CC0 - removed default:rail and made aliases for it - :carts:rail is now carts:rail. - localized entity def - removed copper rail entirely - startstop rail was removed, as well as detector rail - remodeled to b3d using stujones11 excellent blend model, but sizes of cart adjusted to make pixel sizes consistent (0.625) everywhere. - slightly more complex texture map for the cart (front/side visibly different) - rail parameters are passed as a separate def table, and stored in a private list. This avoids having to call `get_meta` on every node. In return, we need the node name, though. - adds metal sounds (based on default metal sound function) and cart moving sound. - reduced cart speeds to max 7, 5 by pushing. - Added on_step() rail event handler, gets called when a cart is on a rail. - Added various rebased updates from upstream (thanks Krock) - Included a fix that removes the 'reverse jiggle' when stopping. - Included reworked textures by sofar. The mod namespace is still public, but I'm NOT declaring it an API. I'd rather see it localized instead, for now. Any public interface in this code is *experimental* at best, and should be considered non-stable and unsupported for now. --- game_api.txt | 22 + mods/carts/README.txt | 20 + mods/carts/depends.txt | 1 + mods/carts/functions.lua | 221 ++++++++++ mods/carts/init.lua | 403 ++++++++++++++++++ mods/carts/license.txt | 54 +++ mods/carts/models/carts_cart.b3d | Bin 0 -> 3008 bytes mods/carts/models/carts_cart.blend | Bin 0 -> 544408 bytes mods/carts/rails.lua | 58 +++ mods/carts/sounds/carts_cart_moving.1.ogg | Bin 0 -> 14761 bytes mods/carts/sounds/carts_cart_moving.2.ogg | Bin 0 -> 14749 bytes mods/carts/sounds/carts_cart_moving.3.ogg | Bin 0 -> 14989 bytes mods/carts/textures/carts_cart.png | Bin 0 -> 1103 bytes mods/carts/textures/carts_cart_front.png | Bin 0 -> 3108 bytes mods/carts/textures/carts_cart_side.png | Bin 0 -> 3135 bytes mods/carts/textures/carts_cart_top.png | Bin 0 -> 3171 bytes mods/carts/textures/carts_rail_crossing.png | Bin 0 -> 612 bytes .../textures/carts_rail_crossing_brk.png | Bin 0 -> 684 bytes .../textures/carts_rail_crossing_pwr.png | Bin 0 -> 676 bytes mods/carts/textures/carts_rail_curved.png | Bin 0 -> 580 bytes mods/carts/textures/carts_rail_curved_brk.png | Bin 0 -> 618 bytes mods/carts/textures/carts_rail_curved_pwr.png | Bin 0 -> 614 bytes mods/carts/textures/carts_rail_straight.png | Bin 0 -> 602 bytes .../textures/carts_rail_straight_brk.png | Bin 0 -> 660 bytes .../textures/carts_rail_straight_pwr.png | Bin 0 -> 661 bytes mods/carts/textures/carts_rail_t_junction.png | Bin 0 -> 707 bytes .../textures/carts_rail_t_junction_brk.png | Bin 0 -> 698 bytes .../textures/carts_rail_t_junction_pwr.png | Bin 0 -> 697 bytes mods/default/aliases.lua | 2 +- mods/default/crafting.lua | 9 - mods/default/nodes.lua | 23 - mods/default/textures/default_rail.png | Bin 242 -> 0 bytes .../textures/default_rail_crossing.png | Bin 262 -> 0 bytes mods/default/textures/default_rail_curved.png | Bin 241 -> 0 bytes .../textures/default_rail_t_junction.png | Bin 247 -> 0 bytes 35 files changed, 780 insertions(+), 33 deletions(-) create mode 100644 mods/carts/README.txt create mode 100644 mods/carts/depends.txt create mode 100644 mods/carts/functions.lua create mode 100644 mods/carts/init.lua create mode 100644 mods/carts/license.txt create mode 100644 mods/carts/models/carts_cart.b3d create mode 100644 mods/carts/models/carts_cart.blend create mode 100644 mods/carts/rails.lua create mode 100644 mods/carts/sounds/carts_cart_moving.1.ogg create mode 100644 mods/carts/sounds/carts_cart_moving.2.ogg create mode 100644 mods/carts/sounds/carts_cart_moving.3.ogg create mode 100644 mods/carts/textures/carts_cart.png create mode 100644 mods/carts/textures/carts_cart_front.png create mode 100644 mods/carts/textures/carts_cart_side.png create mode 100644 mods/carts/textures/carts_cart_top.png create mode 100644 mods/carts/textures/carts_rail_crossing.png create mode 100644 mods/carts/textures/carts_rail_crossing_brk.png create mode 100644 mods/carts/textures/carts_rail_crossing_pwr.png create mode 100644 mods/carts/textures/carts_rail_curved.png create mode 100644 mods/carts/textures/carts_rail_curved_brk.png create mode 100644 mods/carts/textures/carts_rail_curved_pwr.png create mode 100644 mods/carts/textures/carts_rail_straight.png create mode 100644 mods/carts/textures/carts_rail_straight_brk.png create mode 100644 mods/carts/textures/carts_rail_straight_pwr.png create mode 100644 mods/carts/textures/carts_rail_t_junction.png create mode 100644 mods/carts/textures/carts_rail_t_junction_brk.png create mode 100644 mods/carts/textures/carts_rail_t_junction_pwr.png delete mode 100644 mods/default/textures/default_rail.png delete mode 100644 mods/default/textures/default_rail_crossing.png delete mode 100644 mods/default/textures/default_rail_curved.png delete mode 100644 mods/default/textures/default_rail_t_junction.png diff --git a/game_api.txt b/game_api.txt index 80272a60..e85898fd 100644 --- a/game_api.txt +++ b/game_api.txt @@ -650,3 +650,25 @@ Trees * `default.grow_new_snowy_pine_tree(pos)` * Grows a new design snowy pine tree at pos + +Carts +----- + + carts.register_rail( + "mycarts:myrail", -- Rail name + nodedef, -- standard nodedef + railparams -- rail parameter struct (optional) + ) + + railparams = { + on_step(obj, dtime), -- Event handler called when + -- cart is on rail + acceleration, -- integer acceleration factor (negative + -- values to brake) + } + + The event handler is called after all default calculations + are made, so the custom on_step handler can override things + like speed, acceleration, player attachment. The handler will + likely be called many times per second, so the function needs + to make sure that the event is handled properly. diff --git a/mods/carts/README.txt b/mods/carts/README.txt new file mode 100644 index 00000000..0cfaea26 --- /dev/null +++ b/mods/carts/README.txt @@ -0,0 +1,20 @@ +Carts (formerly boost_cart) +========================== + +Cleaned up for merge based almost entirely on SmallJoker's boost_cart +mod (github.com/smalljoker/boost_cart). + +That in turn was based on (and fully compatible with) the mod "carts" +by PilzAdam + +The model was redone, but based on github.com/stujones11/railcart, CC-0 + +Cart Textures are based on original work from PixelBOX (WTFPL). + + +Features +---------- +- A fast cart for your railway or roller coaster (up to 7 m/s!) +- Boost and brake rails +- Rail junction switching with the 'right-left' walking keys +- Handbrake with the 'back' key diff --git a/mods/carts/depends.txt b/mods/carts/depends.txt new file mode 100644 index 00000000..4ad96d51 --- /dev/null +++ b/mods/carts/depends.txt @@ -0,0 +1 @@ +default diff --git a/mods/carts/functions.lua b/mods/carts/functions.lua new file mode 100644 index 00000000..f255fef5 --- /dev/null +++ b/mods/carts/functions.lua @@ -0,0 +1,221 @@ +function carts:get_sign(z) + if z == 0 then + return 0 + else + return z / math.abs(z) + end +end + +function carts:manage_attachment(player, obj) + if not player then + return + end + local status = obj ~= nil + local player_name = player:get_player_name() + if default.player_attached[player_name] == status then + return + end + default.player_attached[player_name] = status + + if status then + player:set_attach(obj, "", {x=0, y=6, z=0}, {x=0, y=0, z=0}) + player:set_eye_offset({x=0, y=-4, z=0},{x=0, y=-4, z=0}) + else + player:set_detach() + player:set_eye_offset({x=0, y=0, z=0},{x=0, y=0, z=0}) + end +end + +function carts:velocity_to_dir(v) + if math.abs(v.x) > math.abs(v.z) then + return {x=carts:get_sign(v.x), y=carts:get_sign(v.y), z=0} + else + return {x=0, y=carts:get_sign(v.y), z=carts:get_sign(v.z)} + end +end + +function carts:is_rail(pos, railtype) + local node = minetest.get_node(pos).name + if node == "ignore" then + local vm = minetest.get_voxel_manip() + local emin, emax = vm:read_from_map(pos, pos) + local area = VoxelArea:new{ + MinEdge = emin, + MaxEdge = emax, + } + local data = vm:get_data() + local vi = area:indexp(pos) + node = minetest.get_name_from_content_id(data[vi]) + end + if minetest.get_item_group(node, "rail") == 0 then + return false + end + if not railtype then + return true + end + return minetest.get_item_group(node, "connect_to_raillike") == railtype +end + +function carts:check_front_up_down(pos, dir_, check_up, railtype) + local dir = vector.new(dir_) + local cur + + -- Front + dir.y = 0 + cur = vector.add(pos, dir) + if carts:is_rail(cur, railtype) then + return dir + end + -- Up + if check_up then + dir.y = 1 + cur = vector.add(pos, dir) + if carts:is_rail(cur, railtype) then + return dir + end + end + -- Down + dir.y = -1 + cur = vector.add(pos, dir) + if carts:is_rail(cur, railtype) then + return dir + end + return nil +end + +function carts:get_rail_direction(pos_, dir, ctrl, old_switch, railtype) + local pos = vector.round(pos_) + local cur + local left_check, right_check = true, true + + -- Check left and right + local left = {x=0, y=0, z=0} + local right = {x=0, y=0, z=0} + if dir.z ~= 0 and dir.x == 0 then + left.x = -dir.z + right.x = dir.z + elseif dir.x ~= 0 and dir.z == 0 then + left.z = dir.x + right.z = -dir.x + end + + if ctrl then + if old_switch == 1 then + left_check = false + elseif old_switch == 2 then + right_check = false + end + if ctrl.left and left_check then + cur = carts:check_front_up_down(pos, left, false, railtype) + if cur then + return cur, 1 + end + left_check = false + end + if ctrl.right and right_check then + cur = carts:check_front_up_down(pos, right, false, railtype) + if cur then + return cur, 2 + end + right_check = true + end + end + + -- Normal + cur = carts:check_front_up_down(pos, dir, true, railtype) + if cur then + return cur + end + + -- Left, if not already checked + if left_check then + cur = carts:check_front_up_down(pos, left, false, railtype) + if cur then + return cur + end + end + + -- Right, if not already checked + if right_check then + cur = carts:check_front_up_down(pos, right, false, railtype) + if cur then + return cur + end + end + + -- Backwards + if not old_switch then + cur = carts:check_front_up_down(pos, { + x = -dir.x, + y = dir.y, + z = -dir.z + }, true, railtype) + if cur then + return cur + end + end + + return {x=0, y=0, z=0} +end + +function carts:pathfinder(pos_, expected_pos, old_dir, ctrl, pf_switch, railtype) + local pos = vector.round(pos_) + local pf_pos = vector.round(expected_pos) + local pf_dir = vector.new(old_dir) + + for i = 1, 3 do + if vector.equals(pf_pos, pos) then + -- Success! Cart moved on correctly + return true + end + + pf_dir, pf_switch = carts:get_rail_direction(pf_pos, pf_dir, ctrl, pf_switch, railtype) + if vector.equals(pf_dir, {x=0, y=0, z=0}) then + -- No way forwards + return false + end + + pf_pos = vector.add(pf_pos, pf_dir) + end + -- Cart not found + return false +end + +function carts:register_rail(name, def, railparams) + local def_default = { + drawtype = "raillike", + paramtype = "light", + sunlight_propagates = true, + is_ground_content = true, + walkable = false, + selection_box = { + type = "fixed", + fixed = {-1/2, -1/2, -1/2, 1/2, -1/2+1/16, 1/2}, + }, + sounds = default.node_sound_metal_defaults() + } + for k, v in pairs(def_default) do + def[k] = v + end + if not def.inventory_image then + def.wield_image = def.tiles[1] + def.inventory_image = def.tiles[1] + end + + if railparams then + carts.railparams[name] = table.copy(railparams) + end + + minetest.register_node(name, def) +end + +function carts:get_rail_groups(additional_groups) + -- Get the default rail groups and add more when a table is given + local groups = {dig_immediate = 2, attached_node = 1, rail = 1, connect_to_raillike = 1} + if type(additional_groups) == "table" then + for k, v in pairs(additional_groups) do + groups[k] = v + end + end + return groups +end diff --git a/mods/carts/init.lua b/mods/carts/init.lua new file mode 100644 index 00000000..7cfee74f --- /dev/null +++ b/mods/carts/init.lua @@ -0,0 +1,403 @@ + +carts = {} +carts.modpath = minetest.get_modpath("carts") +carts.railparams = {} + +-- Maximal speed of the cart in m/s (min = -1) +carts.speed_max = 7 +-- Set to -1 to disable punching the cart from inside (min = -1) +carts.punch_speed_max = 5 + + +dofile(carts.modpath.."/functions.lua") +dofile(carts.modpath.."/rails.lua") + +-- Support for non-default games +if not default.player_attached then + default.player_attached = {} +end + +local cart_entity = { + physical = false, -- otherwise going uphill breaks + collisionbox = {-0.5, -0.5, -0.5, 0.5, 0.5, 0.5}, + visual = "mesh", + mesh = "carts_cart.b3d", + visual_size = {x=1, y=1}, + textures = {"carts_cart.png"}, + + driver = nil, + punched = false, -- used to re-send velocity and position + velocity = {x=0, y=0, z=0}, -- only used on punch + old_dir = {x=1, y=0, z=0}, -- random value to start the cart on punch + old_pos = nil, + old_switch = 0, + railtype = nil, + attached_items = {} +} + +function cart_entity:on_rightclick(clicker) + if not clicker or not clicker:is_player() then + return + end + local player_name = clicker:get_player_name() + if self.driver and player_name == self.driver then + self.driver = nil + carts:manage_attachment(clicker, nil) + elseif not self.driver then + self.driver = player_name + carts:manage_attachment(clicker, self.object) + end +end + +function cart_entity:on_activate(staticdata, dtime_s) + self.object:set_armor_groups({immortal=1}) + if string.sub(staticdata, 1, string.len("return")) ~= "return" then + return + end + local data = minetest.deserialize(staticdata) + if not data or type(data) ~= "table" then + return + end + self.railtype = data.railtype + if data.old_dir then + self.old_dir = data.old_dir + end + if data.old_vel then + self.old_vel = data.old_vel + end +end + +function cart_entity:get_staticdata() + return minetest.serialize({ + railtype = self.railtype, + old_dir = self.old_dir, + old_vel = self.old_vel + }) +end + +function cart_entity:on_punch(puncher, time_from_last_punch, tool_capabilities, direction) + local pos = self.object:getpos() + if not self.railtype then + local node = minetest.get_node(pos).name + self.railtype = minetest.get_item_group(node, "connect_to_raillike") + end + + if not puncher or not puncher:is_player() then + local cart_dir = carts:get_rail_direction(pos, self.old_dir, nil, nil, self.railtype) + if vector.equals(cart_dir, {x=0, y=0, z=0}) then + return + end + self.velocity = vector.multiply(cart_dir, 3) + self.punched = true + return + end + + if puncher:get_player_control().sneak then + if self.sound_handle then + minetest.sound_stop(self.sound_handle) + end + -- Pick up cart: Drop all attachments + if self.driver then + if self.old_pos then + self.object:setpos(self.old_pos) + end + local player = minetest.get_player_by_name(self.driver) + carts:manage_attachment(player, nil) + end + for _,obj_ in ipairs(self.attached_items) do + if obj_ then + obj_:set_detach() + end + end + + local leftover = puncher:get_inventory():add_item("main", "carts:cart") + if not leftover:is_empty() then + minetest.add_item(self.object:getpos(), leftover) + end + self.object:remove() + return + end + + local vel = self.object:getvelocity() + if puncher:get_player_name() == self.driver then + if math.abs(vel.x + vel.z) > carts.punch_speed_max then + return + end + end + + local punch_dir = carts:velocity_to_dir(puncher:get_look_dir()) + punch_dir.y = 0 + local cart_dir = carts:get_rail_direction(pos, punch_dir, nil, nil, self.railtype) + if vector.equals(cart_dir, {x=0, y=0, z=0}) then + return + end + + local punch_interval = 1 + if tool_capabilities and tool_capabilities.full_punch_interval then + punch_interval = tool_capabilities.full_punch_interval + end + time_from_last_punch = math.min(time_from_last_punch or punch_interval, punch_interval) + local f = 2 * (time_from_last_punch / punch_interval) + + self.velocity = vector.multiply(cart_dir, f) + self.old_dir = cart_dir + self.punched = true +end + +local function rail_on_step_event(handler, obj, dtime) + if handler then + handler(obj, dtime) + end +end + +-- sound refresh interval = 1.0sec +local function rail_sound(self, dtime) + if not self.sound_ttl then + self.sound_ttl = 1.0 + return + elseif self.sound_ttl > 0 then + self.sound_ttl = self.sound_ttl - dtime + return + end + self.sound_ttl = 1.0 + if self.sound_handle then + local handle = self.sound_handle + self.sound_handle = nil + minetest.after(0.2, minetest.sound_stop, handle) + end + local vel = self.object:getvelocity() + local speed = vector.length(vel) + if speed > 0 then + self.sound_handle = minetest.sound_play( + "carts_cart_moving", { + object = self.object, + gain = (speed / carts.speed_max) / 2, + loop = true, + }) + end +end + +local function rail_on_step(self, dtime) + local pos = self.object:getpos() + local node = minetest.get_node(pos) + local railparams = carts.railparams[node.name] or {} + + local vel = self.object:getvelocity() + local update = {} + if self.punched then + vel = vector.add(vel, self.velocity) + self.object:setvelocity(vel) + self.old_dir.y = 0 + elseif vector.equals(vel, {x=0, y=0, z=0}) then + return + end + + -- stop cart if velocity vector flips + if self.old_vel and (((self.old_vel.x * vel.x) < 0) or + ((self.old_vel.z * vel.z) < 0)) and + (self.old_vel.y == 0) then + self.old_dir = {x = 0, y = 0, z = 0} + self.old_vel = {x = 0, y = 0, z = 0} + self.velocity = {x = 0, y = 0, z = 0} + self.old_pos = pos + self.object:setvelocity(vector.new()) + self.object:setacceleration(vector.new()) + rail_on_step_event(railparams.on_step, self, dtime) + return + end + self.old_vel = vector.new(vel) + + if self.old_pos and not self.punched then + local flo_pos = vector.round(pos) + local flo_old = vector.round(self.old_pos) + if vector.equals(flo_pos, flo_old) then + -- Do not check one node multiple times + rail_on_step_event(railparams.on_step, self, dtime) + return + end + end + + local ctrl, player + + -- Get player controls + if self.driver then + player = minetest.get_player_by_name(self.driver) + if player then + ctrl = player:get_player_control() + end + end + + if self.old_pos then + -- Detection for "skipping" nodes + local expected_pos = vector.add(self.old_pos, self.old_dir) + local found_path = carts:pathfinder( + pos, expected_pos, self.old_dir, ctrl, self.old_switch, self.railtype + ) + + if not found_path then + -- No rail found: reset back to the expected position + pos = vector.new(self.old_pos) + update.pos = true + end + end + + local cart_dir = carts:velocity_to_dir(vel) + + -- dir: New moving direction of the cart + -- switch_keys: Currently pressed L/R key, used to ignore the key on the next rail node + local dir, switch_keys = carts:get_rail_direction( + pos, cart_dir, ctrl, self.old_switch, self.railtype + ) + + local new_acc = {x=0, y=0, z=0} + if vector.equals(dir, {x=0, y=0, z=0}) then + vel = {x=0, y=0, z=0} + pos = vector.round(pos) + update.pos = true + update.vel = true + else + -- If the direction changed + if dir.x ~= 0 and self.old_dir.z ~= 0 then + vel.x = dir.x * math.abs(vel.z) + vel.z = 0 + pos.z = math.floor(pos.z + 0.5) + update.pos = true + end + if dir.z ~= 0 and self.old_dir.x ~= 0 then + vel.z = dir.z * math.abs(vel.x) + vel.x = 0 + pos.x = math.floor(pos.x + 0.5) + update.pos = true + end + -- Up, down? + if dir.y ~= self.old_dir.y then + vel.y = dir.y * math.abs(vel.x + vel.z) + pos = vector.round(pos) + update.pos = true + end + + -- Slow down or speed up.. + local acc = dir.y * -4.0 + + -- no need to check for railparams == nil since we always make it exist. + local speed_mod = railparams.acceleration + if speed_mod and speed_mod ~= 0 then + -- Try to make it similar to the original carts mod + acc = acc + speed_mod + else + -- Handbrake + if ctrl and ctrl.down then + acc = acc - 1.6 + else + acc = acc - 0.4 + end + end + + new_acc = vector.multiply(dir, acc) + end + + -- Limits + local max_vel = carts.speed_max + for _,v in ipairs({"x","y","z"}) do + if math.abs(vel[v]) > max_vel then + vel[v] = carts:get_sign(vel[v]) * max_vel + new_acc[v] = 0 + update.vel = true + end + end + + self.object:setacceleration(new_acc) + self.old_pos = vector.new(pos) + if not vector.equals(dir, {x=0, y=0, z=0}) then + self.old_dir = vector.new(dir) + end + self.old_switch = switch_keys + + if self.punched then + -- Collect dropped items + for _,obj_ in ipairs(minetest.get_objects_inside_radius(pos, 1)) do + if not obj_:is_player() and + obj_:get_luaentity() and + not obj_:get_luaentity().physical_state and + obj_:get_luaentity().name == "__builtin:item" then + + obj_:set_attach(self.object, "", {x=0, y=0, z=0}, {x=0, y=0, z=0}) + self.attached_items[#self.attached_items + 1] = obj_ + end + end + self.punched = false + update.vel = true + end + + if not (update.vel or update.pos) then + rail_on_step_event(railparams.on_step, self, dtime) + return + end + + local yaw = 0 + if self.old_dir.x < 0 then + yaw = 0.5 + elseif self.old_dir.x > 0 then + yaw = 1.5 + elseif self.old_dir.z < 0 then + yaw = 1 + end + self.object:setyaw(yaw * math.pi) + + local anim = {x=0, y=0} + if dir.y == -1 then + anim = {x=1, y=1} + elseif dir.y == 1 then + anim = {x=2, y=2} + end + self.object:set_animation(anim, 1, 0) + + self.object:setvelocity(vel) + if update.pos then + self.object:setpos(pos) + end + + -- call event handler + rail_on_step_event(railparams.on_step, self, dtime) +end + +function cart_entity:on_step(dtime) + rail_on_step(self, dtime) + rail_sound(self, dtime) +end + +minetest.register_entity("carts:cart", cart_entity) + +minetest.register_craftitem("carts:cart", { + description = "Cart (Sneak+Click to pick up)", + inventory_image = minetest.inventorycube("carts_cart_top.png", "carts_cart_side.png", "carts_cart_side.png"), + wield_image = "carts_cart_side.png", + on_place = function(itemstack, placer, pointed_thing) + if not pointed_thing.type == "node" then + return + end + if carts:is_rail(pointed_thing.under) then + minetest.add_entity(pointed_thing.under, "carts:cart") + elseif carts:is_rail(pointed_thing.above) then + minetest.add_entity(pointed_thing.above, "carts:cart") + else + return + end + + minetest.sound_play({name = "default_place_node_metal", gain = 0.5}, + {pos = pointed_thing.above}) + + if not minetest.setting_getbool("creative_mode") then + itemstack:take_item() + end + return itemstack + end, +}) + +minetest.register_craft({ + output = "carts:cart", + recipe = { + {"default:steel_ingot", "", "default:steel_ingot"}, + {"default:steel_ingot", "default:steel_ingot", "default:steel_ingot"}, + }, +}) diff --git a/mods/carts/license.txt b/mods/carts/license.txt new file mode 100644 index 00000000..6c5beb47 --- /dev/null +++ b/mods/carts/license.txt @@ -0,0 +1,54 @@ + +License of source code +---------------------- + +The MIT License (MIT) +Copyright (C) 2012-2016 PilzAdam +Copyright (C) 2014-2016 SmallJoker +Copyright (C) 2012-2016 Various Minetest developers and contributors + +Permission is hereby granted, free of charge, to any person obtaining a +copy of this software and associated documentation files (the "Software"), +to deal in the Software without restriction, including without limitation the +rights to use, copy, modify, merge, publish, distribute, sublicense, and/or +sell copies of the Software, and to permit persons to whom the Software is +furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in +all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL +THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN +THE SOFTWARE. + +For more details: +https://opensource.org/licenses/MIT + + +Licenses of media +----------------- + +CC-0, see: https://creativecommons.org/share-your-work/public-domain/cc0/, except +if other license is mentioned. + + +Authors +--------- +Originally from PixelBOX (Gambit): + carts_cart_side.png + carts_cart_top.png + carts_cart_front.png* + carts_cart.png* + +sofar + stujones11: + carts_cart.b3d and carts_cart.blend + +hexafraction, modified by sofar + carts_rail_*.png + +http://www.freesound.org/people/YleArkisto/sounds/253159/ - YleArkisto - CC-BY-3.0 + carts_cart_moving.*.ogg diff --git a/mods/carts/models/carts_cart.b3d b/mods/carts/models/carts_cart.b3d new file mode 100644 index 0000000000000000000000000000000000000000..4e7eba363de4d01da5e924e7517eaa44879879be GIT binary patch literal 3008 zcmbW3OHUL*6om@}eBl$tw}MZ6A&Tf~rrVK8BnC(rG;v`}2rm;7jf#mYJ8?(iA8^C` z1rrypU=r8HpWhlv3+uu0V(H$iZ7#vXsp(SpR+p60 z?ZQTFwPH-U(qYQsz}KF24>e*UL0k@r*J`W8gIJt7jW}~+@pTuAf;Np4`=vU5t*xPW z}vLB_rO}>%3C20>U(3o>n-hk zT>X^&+5U8{Hb3Va%fGJDwtiCozP{!poj>&>?K4q78&BS!tsf+xkK12H|7rT#`t|iYVP{Pabfd9iq-KlVj_>csLl_Lm+vIlp$3 z^RfHO{r~>l`KH&e=Ck&ftdBeY^!}~B3Fk|H#&B-rXw}E{pSAz2`;n}#%b&i!nooH@ zBDJ6Le!2HAtA6tP>DDLz|FChBpD zA45Iuf;Y_;?=#*dbP64UKA+ad-XUxk^m#S#(Dc^~_za6~vP9P>W*N#TTWTsY-@?9)QO&?lS`@UhPe=Y+Gu1@B{D5-th@!e#Gc z^V8(2a7DQ0ee4?oKU0PT#Kp(HC5#9+h1=f8zB4g4&c1m#Ph*}J_!09_2VHnJ`^FA6 z|F{o=|L`@3^^q$~P82J3W#l_E3J{F>E_oCn3O-`N2nQn?j5si&!3YQ=9_*Tp0>r~d zNEi`e#DWnKMo<_rVMK!w6Gm7VQDMY`5fw&Y7;#}lgb^1;Xc&>p)?fVmhjmjb?Dd{p`* z3q8D?kxc)z=pVU2U1x(IDh~*1`hf>D#uN2^|FZVv-IBixjk%SCxq0Tg`|@vde*;IC B>mUFC literal 0 HcmV?d00001 diff --git a/mods/carts/models/carts_cart.blend b/mods/carts/models/carts_cart.blend new file mode 100644 index 0000000000000000000000000000000000000000..7d2515eb70379538759ecb2e9fcf6f7390dc840c GIT binary patch literal 544408 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 ZTKuLI{ZdhgfMUU(GDQmUQ2EEd{{a&>6XXB@ literal 0 HcmV?d00001 diff --git a/mods/carts/rails.lua b/mods/carts/rails.lua new file mode 100644 index 00000000..f929e84e --- /dev/null +++ b/mods/carts/rails.lua @@ -0,0 +1,58 @@ +carts:register_rail("carts:rail", { + description = "Rail", + tiles = { + "carts_rail_straight.png", "carts_rail_curved.png", + "carts_rail_t_junction.png", "carts_rail_crossing.png" + }, + inventory_image = "carts_rail_straight.png", + wield_image = "carts_rail_straight.png", + groups = carts:get_rail_groups(), +}, {}) + +minetest.register_craft({ + output = "carts:rail 16", + recipe = { + {"default:steel_ingot", "", "default:steel_ingot"}, + {"default:steel_ingot", "group:stick", "default:steel_ingot"}, + {"default:steel_ingot", "", "default:steel_ingot"}, + } +}) + +minetest.register_alias("default:rail", "carts:rail") + +carts:register_rail("carts:powerrail", { + description = "Powered rail", + tiles = { + "carts_rail_straight_pwr.png", "carts_rail_curved_pwr.png", + "carts_rail_t_junction_pwr.png", "carts_rail_crossing_pwr.png" + }, + groups = carts:get_rail_groups(), +}, {acceleration = 4}) + +minetest.register_craft({ + output = "carts:powerrail 8", + recipe = { + {"default:steel_ingot", "default:mese_crystal_fragment", "default:steel_ingot"}, + {"default:steel_ingot", "group:stick", "default:steel_ingot"}, + {"default:steel_ingot", "default:mese_crystal_fragment", "default:steel_ingot"}, + } +}) + +carts:register_rail("carts:brakerail", { + description = "Brake rail", + tiles = { + "carts_rail_straight_brk.png", "carts_rail_curved_brk.png", + "carts_rail_t_junction_brk.png", "carts_rail_crossing_brk.png" + }, + groups = carts:get_rail_groups(), +}, {acceleration = -3}) + + +minetest.register_craft({ + output = "carts:brakerail 8", + recipe = { + {"default:steel_ingot", "default:coal_lump", "default:steel_ingot"}, + {"default:steel_ingot", "group:stick", "default:steel_ingot"}, + {"default:steel_ingot", "default:coal_lump", "default:steel_ingot"}, + } +}) diff --git a/mods/carts/sounds/carts_cart_moving.1.ogg b/mods/carts/sounds/carts_cart_moving.1.ogg new file mode 100644 index 0000000000000000000000000000000000000000..869e765b84acb081468bba060ba973bff409dec5 GIT binary patch literal 14761 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 literal 0 HcmV?d00001 diff --git a/mods/carts/sounds/carts_cart_moving.2.ogg b/mods/carts/sounds/carts_cart_moving.2.ogg new file mode 100644 index 0000000000000000000000000000000000000000..b4cc5084388f475ef3c47842a1593d6a1bb71604 GIT binary patch literal 14749 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 literal 0 HcmV?d00001 diff --git a/mods/carts/sounds/carts_cart_moving.3.ogg b/mods/carts/sounds/carts_cart_moving.3.ogg new file mode 100644 index 0000000000000000000000000000000000000000..e19a782d85038a12ab273870ab8e2dc0a4eaa3c3 GIT binary patch literal 14989 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 U1LFgu%}!PAYO%eVzRv*v2hvqWL;wH) literal 0 HcmV?d00001 diff --git a/mods/carts/textures/carts_cart.png b/mods/carts/textures/carts_cart.png new file mode 100644 index 0000000000000000000000000000000000000000..965347c0f374d91e277104617b780a41fd773b3e GIT binary patch literal 1103 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 JPDHLkV1mku)35*l literal 0 HcmV?d00001 diff --git a/mods/carts/textures/carts_rail_crossing.png b/mods/carts/textures/carts_rail_crossing.png new file mode 100644 index 0000000000000000000000000000000000000000..e10f3b1ff82d8e8f941d45759980b3685a04cd4b GIT binary patch literal 612 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 Ef;&nLHUIzs literal 0 HcmV?d00001 diff --git a/mods/carts/textures/carts_rail_curved_pwr.png b/mods/carts/textures/carts_rail_curved_pwr.png new file mode 100644 index 0000000000000000000000000000000000000000..781bbd0ad6e223803e071b05b19767a802ce2ace GIT binary patch literal 614 zcmV-s0-61ZP)j zK~y-)rIO!kl5rHqKVK*B3=_(zMz)kjg=96h6}#vU2&9OyBnFMBi*B|EhLsSAMr1?< zi>`tZ3?h1|An>LuFULzk&}p{B^o8wbhJ`&h>eo^LfrWN<{dda;&F0 zbv`JwR}Zh4=viAR~Wsl zW11$F_cJ_;54Xes$;ThmQog{$sX4l{-m0G!KG2^9mBTmb_8A5#j-5s=N{m8b@8oG;pibBrR5r~?k-MW zpHrYD773sQ#|ec(D<8@4_hXtScbh4yCQbkV0q03X zK~y-)m6JbcQ&AMge=m9AMX#b11Utw@P;fF5LCMy^QE+l`5%)M17llxSK!ZbuNS6+s zS|nX6q&kSJ5{iNn0t#)oZ9>|HrXl)jUjAK&+q|X*ZT#kQ4(I!w@4%t*`Mgdf5}Ff~ zN~Lr*oAv8#fLt=Bl~M>H$iyQ$>;w^x?Kinz7l3-RjqADqEIhfXAHDcw*#K`oY%+Bf zT-RlPr@>C6&3R$tgaUY-zCY-kFhix3yjt2l+F)+AVog0n1I#Wf>)#fHR!Wgx*|Gov z{HF#MjxktzdP_?wDHICKPe*mj>v4JVGyv7Qhj47XPLJJ&$DlozjOn}2J{kt!RSjDy z0E+81yiT8uvRQ7x!Rz#KLIEyb5lAU{`+ECmgPFyWmA!`+Lh$_1+uxM9?rNnJGmE8B z27me+M)pUA+}&8=3BGmuh_?R&V^2AH3Y`oEA%#&px|`FFo` z!Q^4D=>bp!lu~5k5&ih(7sFtEbC2k4bA|U`%l_@1P=Ni$58r>o?Q-pof%y5`&@ap` oD=T|{%pAmAEv01PUDX2k4GN3zvr-!!H2?qr07*qoM6N<$fCV8v+V!?0wGC6 zK~y-)m6J_KR8bg)pL6Cq<8;6Xj1~qrsJ3Zlf6_u)2kqLlh-m3TkXqzo$QFs&B8iNG zXpwG)qU_IQiy{y$C`^dLJpSOArlOwa-kE#vX>t86G<#QP@f~>I=X*a`Qg3gs&15nb zuxu>b+S+Qf+3d=U1JKiQ!fLHiO3_|liAp=R)R9CMl1a&8J|GA!GxI*i7yuqzs0f{26^RP0l@u1imMZq-3^*LRUU zja5o<_3_B23^G*)tuLV-QI6hUbD zG3Vh(!6cxyroFz>Hr)QW+=HLg9E-Q`=F>Q(DM{Xs*p`xfm|ehlAwmd@7qb6k46$!; u%`IGiq(%13QV*W~qX$P#d`z!%0^m3LBm9nEw3qw<0000_pdYGnWb0wPI7 zK~y-)osvyR6k#03fA72FuIqp$7!?~#qIsG_M1@2L=^Pbxt3yQhf==aOJync#5bOiG zWZ1NmMuxUX-LL{x@2d-&q?M^$hJ2P*GDQlt3dQSg8Jcs8Cz9XN{t86x_ltS?b zD21{tOXYI8HI4uny?RiU+Rsra6lk2jkDk_O)FhFDWKvSD1O%aC`HPR2Ie}@KxMO{s zxi&5|fRSfYbhm@+x~wj)viPM&i{5~gPzw}c1X98#T?4={3e%KaOddG)?w%xaWDC!Q}K3DaQfey|aW{iTE&^KnTzz_%%f}h)765rbEXt z3`U2G_0n>=oU$zIuQg_~*}59#dj2*70dTKpzv?(TfNk4s`#eHADJgp)sib5_YnrK| zOR_;y{u<&NCuwVIqx8b!?Ddy%24ipMY1kcS@NQ}eEg`8?LlOe!i%DERBnT7{(A*lU z9G@uu+(G~Fj5u&A_TE12Q7-@kGNz?}6bc18y&+sL z#IJ=cm#XaCsuP5YkE3{|@r`{2J#Qs45JfUoOA800000NkvXXu0mjf=&2yY literal 0 HcmV?d00001 diff --git a/mods/carts/textures/carts_rail_t_junction.png b/mods/carts/textures/carts_rail_t_junction.png new file mode 100644 index 0000000000000000000000000000000000000000..8b1b946242544b69c643df109dbd6c0b10df4b92 GIT binary patch literal 707 zcmV;!0zCbRP)VYK$K`w5h)#fdNq@)O>ZBUDF(;~t@z)dtn!5apm8iQJd zwTKo{2+gC=>Q$Q}D5x35Mcir=JjV((%f#{JjLw_WVrCv1_T#|eayj37&-a|~7ZE{3 z$Ye6&IF8irf67!UCFyiJ!WkmM(@O^>-`g!Dwmr9gEVQ!&F zq4gNHZ4-?4bFzQbhygr&H9>bf1VO<3>^!pzE3{a3m?o^0gs=>z37f1K07@xx#Bp6$ zVgLh=J{hj-3c!WC69(%!H8Z?-$o~#q&J0*0dKMV@=(UFy6%j5;6EV`HhBL4glM>(Hfd}+4#QC@`pi+ zD?+wZW`k+a+F_xT;>pM~hk;0*bUH1mR7(COspB|nWHeXL6$AkQxhk9g2}48}I=4?c zj$Xs_yy^%#I=h;lF)sON8mw&=Gp`3I1I=41EXUqY(_35O)#1s=2bN`#ytl>+qLji50xZjl#=P!*HrDt+ zDTUUWcs#zwNIgA0Ms+VzW2lrOkw{3igPW)J$mXsy_`c81!Z1N0q_`3?mtSW4R*O<7 ze4Q^4GYw{1j$qq%)U@h@?{s!mRCxLJ3ylpXOT{u98%)N3&J7Zj7#0h@yzu=~<@dmTA#-I1VhAg?I%V2by&X0M~U1xkxUT zlN7+6=U-GVmlJ^NUWkY&)0wFcmRPlqHb41b!WZeOLV@B2jl1Ky0pbe+73 zwHB>4XL@_9Bpw6c!{;eZ*9zPk8c%$nwdUI6vDH2h*L9OZwJ`@?OfaC7s46)Wi$%%j z^JFra4UOdcKIwEikz9!gcQ5Rht(}($f`GQt5K$>+aXDsYeu>@NHRV|NHd`X)D89BF z#Tb)Vy6S@;baYl!c>8gJ#s-Il#TA+w97cZ56P03=QbeVgJ%=kKJ{{=h;p<8DS08Nj govpP}C=`;MKcb3xV4`WA^Z)<=07*qoM6N<$g3BW@R{#J2 literal 0 HcmV?d00001 diff --git a/mods/carts/textures/carts_rail_t_junction_pwr.png b/mods/carts/textures/carts_rail_t_junction_pwr.png new file mode 100644 index 0000000000000000000000000000000000000000..dd0eede22302af3278a9ca5acef885b748055f63 GIT binary patch literal 697 zcmV;q0!ICbP)|Nj>vf{0Kk z6vTDia$4H^b0OJmR&u#qQlmtK=NER%Oj9R85KuePi@i2QZOURvpt{=P`|Ki%u`oG3 zN3roBT5F<#9uD^ms1(4H*TZx)K@>$yO-wN{y+DIqg=N9Qq7W~EWkJ220>E(`Lb}Q4 z^O6F%{`8~D=ko$^{y_+cVntNWgCHObLyR#1q*fMso=Yb4EAQ{`m*s#;WHRRfN*vrj zvqPE>T*LQ$05<>d*-&52e9Q3!SOIvRi`JUDp(~_MzbSDrH1dU-Fa$trjWMvUMH2); z0z9^N6KgC*<1QP=ad`G$<IFGTS+fF=(yvJQq*`N^WOWTa7V9<}NP>V>%99 z!t-2g+ot>C$uf!i0eJgioFkP6m-|K%AK11{=Hc*iABf{PNh2tYdBYzClqeBN^!9zf z%=+p^GRBZjrxVGQh;ZvftE_K7MGyou7yF2cF>?zslQZ*d*=VyE3!kToq%6g!hJ9$Q z6HAwU@Rhdqk_xZhjZ#}q?t= kv}I1t`yY%Md@fuJKOReZY@RFe6=*kur>mdKI;Vst07}+XIsgCw diff --git a/mods/default/textures/default_rail_crossing.png b/mods/default/textures/default_rail_crossing.png deleted file mode 100644 index ba66e0155d6a3d63907ebaf7ddb04b18e8175893..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 262 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!73?$#)eFPHF4e$wZ1=6clt*Wc5>+I}2dGh4) zYSURoMrA=#{aJc7VbVqZk_*dCvc1H2?cEj{9_;jNuLV#8V@Z%-FoVOh8)-mJyQhm| z2*>s0gn}dnCT9h)H2w#i0VxSPG*mQ{G*&2`_z-czCGzBnfSHYs6Vw}vn-!RuR|jW* zxfXJimuHUC>P3C&GesCm3(X2tHJG+?7pfL8NjjJ&Mq69)2sdP<<;}mhjw3|*(7Xez zm)5;eS+ZuyibZE0Xy`C)aTe52IdboSD8n|{Cp@BT490gPPOVZkO#(WJ!PC{xWt~$( F69ATGTDAZH diff --git a/mods/default/textures/default_rail_curved.png b/mods/default/textures/default_rail_curved.png deleted file mode 100644 index 9084ac24d97fa0252ba9ab6923a5260d3a87dad6..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 241 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!73?$#)eFPFP2=EDU1=4kOb-VU%D-4ibP-e1f z)vDG6^&B6W)ph0*v-NAEl*>ZoJ3BjP6dIm9d9pV{>&)o}d7vJ~k|4ie28U-i(twN(Sem9dlSDy&QPnIk2@&RbYF)k&SH|w?muK zXMeUdgXYB9%%52n^e`}gk7BE4TepOnhvysLR-QXux_mrmW;!r4uhp`VFwzARx^0I`njxgN@xNA1W!;I diff --git a/mods/default/textures/default_rail_t_junction.png b/mods/default/textures/default_rail_t_junction.png deleted file mode 100644 index 486c416adfc4be4112940985a81ab0ead5f76550..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 247 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!73?$#)eFPFv5AX?b1=6clt*Wc5>+I|-3Y0y0 z^5n#9-IcXw^Gc1gyrmmrRja}krWY7iel4vADrGDQ@(X5gcy=QV$f@&maSY+Oo}9pu z#K7dt##Z)FIMdRyi<4)LQ{3jgwxO<)5-klzO>J%oZ3{LjOb|a3n{i|TM+(PAhNC`> zJb`YjnL0WIyrpIc>YRCSHGxAYFyTSm;xh*hsHPk^@PJJuk#ki>LP8)b7iYD9etLii p%gi&DOAlRO)L^>uV9_lGhKD}|U)A!3yaT#~!PC{xWt~$(69AqbRZsu` From ec95f470215a5547d62aa7f4d23c9a19a47d2119 Mon Sep 17 00:00:00 2001 From: paramat Date: Thu, 17 Nov 2016 02:41:38 +0000 Subject: [PATCH 66/99] Default: Add water footstep sounds Plus one silent sound to break repetition 'default_water_footstep.4.ogg'. --- mods/default/README.txt | 8 ++++++++ mods/default/functions.lua | 8 ++++++++ mods/default/nodes.lua | 4 ++++ .../default/sounds/default_water_footstep.1.ogg | Bin 0 -> 31719 bytes .../default/sounds/default_water_footstep.2.ogg | Bin 0 -> 29335 bytes .../default/sounds/default_water_footstep.3.ogg | Bin 0 -> 32107 bytes .../default/sounds/default_water_footstep.4.ogg | Bin 0 -> 3974 bytes 7 files changed, 20 insertions(+) create mode 100644 mods/default/sounds/default_water_footstep.1.ogg create mode 100644 mods/default/sounds/default_water_footstep.2.ogg create mode 100644 mods/default/sounds/default_water_footstep.3.ogg create mode 100644 mods/default/sounds/default_water_footstep.4.ogg diff --git a/mods/default/README.txt b/mods/default/README.txt index 84213368..c76cf7c3 100644 --- a/mods/default/README.txt +++ b/mods/default/README.txt @@ -249,3 +249,11 @@ Metal sounds: Tool breaking sounds added by sofar: CC-BY-3.0 default_tool_breaks.* - http://www.freesound.org/people/HerbertBoland/sounds/33206/ + +AGFX +https://www.freesound.org/people/AGFX/ +(CC BY 3.0): + default_water_footstep.1.ogg + default_water_footstep.2.ogg + default_water_footstep.3.ogg +(default_water_footstep.4.ogg is silent) diff --git a/mods/default/functions.lua b/mods/default/functions.lua index 4008547e..175365b2 100644 --- a/mods/default/functions.lua +++ b/mods/default/functions.lua @@ -109,6 +109,14 @@ function default.node_sound_metal_defaults(table) return table end +function default.node_sound_water_defaults(table) + table = table or {} + table.footstep = table.footstep or + {name = "default_water_footstep", gain = 0.2} + default.node_sound_defaults(table) + return table +end + -- -- Lavacooling -- diff --git a/mods/default/nodes.lua b/mods/default/nodes.lua index e514a48f..1dfc6644 100644 --- a/mods/default/nodes.lua +++ b/mods/default/nodes.lua @@ -1350,6 +1350,7 @@ minetest.register_node("default:water_source", { liquid_viscosity = 1, post_effect_color = {a = 103, r = 30, g = 60, b = 90}, groups = {water = 3, liquid = 3, puts_out_fire = 1, cools_lava = 1}, + sounds = default.node_sound_water_defaults(), }) minetest.register_node("default:water_flowing", { @@ -1395,6 +1396,7 @@ minetest.register_node("default:water_flowing", { post_effect_color = {a = 103, r = 30, g = 60, b = 90}, groups = {water = 3, liquid = 3, puts_out_fire = 1, not_in_creative_inventory = 1, cools_lava = 1}, + sounds = default.node_sound_water_defaults(), }) @@ -1441,6 +1443,7 @@ minetest.register_node("default:river_water_source", { liquid_range = 2, post_effect_color = {a = 103, r = 30, g = 76, b = 90}, groups = {water = 3, liquid = 3, puts_out_fire = 1, cools_lava = 1}, + sounds = default.node_sound_water_defaults(), }) minetest.register_node("default:river_water_flowing", { @@ -1488,6 +1491,7 @@ minetest.register_node("default:river_water_flowing", { post_effect_color = {a = 103, r = 30, g = 76, b = 90}, groups = {water = 3, liquid = 3, puts_out_fire = 1, not_in_creative_inventory = 1, cools_lava = 1}, + sounds = default.node_sound_water_defaults(), }) diff --git a/mods/default/sounds/default_water_footstep.1.ogg b/mods/default/sounds/default_water_footstep.1.ogg new file mode 100644 index 0000000000000000000000000000000000000000..63b9744ce5f53d8fb467245d06cd92680d7d44ea GIT binary patch literal 31719 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 literal 0 HcmV?d00001 diff --git a/mods/default/sounds/default_water_footstep.2.ogg b/mods/default/sounds/default_water_footstep.2.ogg new file mode 100644 index 0000000000000000000000000000000000000000..8d79c1f4b21f1b45fe9b70e370efe29d1927bd14 GIT binary patch literal 29335 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

^%a5VKE_cnukzrqZRKcouE3oX3N@I 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 literal 0 HcmV?d00001 diff --git a/mods/default/sounds/default_water_footstep.4.ogg b/mods/default/sounds/default_water_footstep.4.ogg new file mode 100644 index 0000000000000000000000000000000000000000..6f1eab8245fdc475451e6eb98186bd6db141fbfd GIT binary patch literal 3974 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 I`T9}qKQy`}3;+NC literal 0 HcmV?d00001 From 55ab3a117dcb4468638895811d1dae719be151ee Mon Sep 17 00:00:00 2001 From: Thomas--S Date: Sun, 20 Nov 2016 19:21:57 +0100 Subject: [PATCH 67/99] Farming: Add forgotten colon This makes the itemstrings consistent over the whole file. --- mods/farming/api.lua | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mods/farming/api.lua b/mods/farming/api.lua index b9ae818a..cd1e67f1 100644 --- a/mods/farming/api.lua +++ b/mods/farming/api.lua @@ -331,7 +331,7 @@ farming.register_plant = function(name, def) lbm_nodes[#lbm_nodes + 1] = mname .. ":" .. pname .. "_" .. i end - minetest.register_node(mname .. ":" .. pname .. "_" .. i, { + minetest.register_node(":" .. mname .. ":" .. pname .. "_" .. i, { drawtype = "plantlike", waving = 1, tiles = {mname .. "_" .. pname .. "_" .. i .. ".png"}, From 208c9f4901088140fd5c074bc7df112dac242d31 Mon Sep 17 00:00:00 2001 From: Auke Kok Date: Mon, 21 Nov 2016 18:25:41 -0800 Subject: [PATCH 68/99] Make smoke puff sound mono Stereo sounds are not played positionally, which should never happen. Convert this track to mono to fix. --- mods/default/sounds/default_item_smoke.ogg | Bin 11917 -> 6651 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/mods/default/sounds/default_item_smoke.ogg b/mods/default/sounds/default_item_smoke.ogg index e1c84078650aa03625017c458ceacce324422deb..038a46e4f7ba09b151b9a45d9581564c8e836038 100644 GIT binary patch literal 6651 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 From 09a229b412401a54cb635a0ffb9f37063798775b Mon Sep 17 00:00:00 2001 From: paramat Date: Tue, 22 Nov 2016 04:45:31 +0000 Subject: [PATCH 69/99] Update 'nodeupdate()' to 'check_for_falling()' API --- .luacheckrc | 2 +- mods/beds/api.lua | 2 +- mods/default/functions.lua | 2 +- mods/doors/init.lua | 2 +- mods/fire/init.lua | 2 +- mods/tnt/init.lua | 6 +++--- 6 files changed, 8 insertions(+), 8 deletions(-) diff --git a/.luacheckrc b/.luacheckrc index 3a4faccb..52b25132 100644 --- a/.luacheckrc +++ b/.luacheckrc @@ -5,7 +5,7 @@ read_globals = { "DIR_DELIM", "minetest", "core", "dump", - "vector", "nodeupdate", "nodeupdate_single", + "vector", "VoxelManip", "VoxelArea", "PseudoRandom", "ItemStack", } diff --git a/mods/beds/api.lua b/mods/beds/api.lua index 3624ea45..7b409e99 100644 --- a/mods/beds/api.lua +++ b/mods/beds/api.lua @@ -16,7 +16,7 @@ local function destruct_bed(pos, n) if reverse then reverse = not reverse minetest.remove_node(other) - nodeupdate(other) + minetest.check_for_falling(other) else reverse = not reverse end diff --git a/mods/default/functions.lua b/mods/default/functions.lua index 175365b2..37b5d581 100644 --- a/mods/default/functions.lua +++ b/mods/default/functions.lua @@ -356,7 +356,7 @@ minetest.register_abm({ end -- Remove node minetest.remove_node(pos) - nodeupdate(pos) + minetest.check_for_falling(pos) end }) diff --git a/mods/doors/init.lua b/mods/doors/init.lua index a3012054..364e7a8a 100644 --- a/mods/doors/init.lua +++ b/mods/doors/init.lua @@ -364,7 +364,7 @@ function doors.register(name, def) end def.after_dig_node = function(pos, node, meta, digger) minetest.remove_node({x = pos.x, y = pos.y + 1, z = pos.z}) - nodeupdate({x = pos.x, y = pos.y + 1, z = pos.z}) + minetest.check_for_falling({x = pos.x, y = pos.y + 1, z = pos.z}) end def.on_rotate = false diff --git a/mods/fire/init.lua b/mods/fire/init.lua index c600edc7..6f14d727 100644 --- a/mods/fire/init.lua +++ b/mods/fire/init.lua @@ -290,7 +290,7 @@ else -- Fire enabled def.on_burn(p) else minetest.remove_node(p) - nodeupdate(p) + minetest.check_for_falling(p) end end end, diff --git a/mods/tnt/init.lua b/mods/tnt/init.lua index 0c447f95..f9bc307c 100644 --- a/mods/tnt/init.lua +++ b/mods/tnt/init.lua @@ -332,7 +332,7 @@ local function tnt_explode(pos, radius, ignore_protection, ignore_on_blast) vm:update_map() vm:update_liquids() - -- call nodeupdate for everything within 1.5x blast radius + -- call check_single_for_falling for everything within 1.5x blast radius for y = -radius * 1.5, radius * 1.5 do for z = -radius * 1.5, radius * 1.5 do for x = -radius * 1.5, radius * 1.5 do @@ -340,7 +340,7 @@ local function tnt_explode(pos, radius, ignore_protection, ignore_on_blast) local s = vector.add(pos, rad) local r = vector.length(rad) if r / radius < 1.4 then - nodeupdate_single(s) + minetest.check_single_for_falling(s) end end end @@ -598,7 +598,7 @@ function tnt.register_tnt(def) on_construct = function(pos) minetest.sound_play("tnt_ignite", {pos = pos}) minetest.get_node_timer(pos):start(4) - nodeupdate(pos) + minetest.check_for_falling(pos) end, }) end From 0bd2efcfc1fb23bdb078d5aaeea8cad8ec27d828 Mon Sep 17 00:00:00 2001 From: Auke Kok Date: Tue, 11 Oct 2016 21:05:10 -0700 Subject: [PATCH 70/99] Merge 'torches' mod as default:torch. This merges the current state of the well-maintained and tested `torches` mod as I've maintained it for the last 6 months. This started out as a thorough cleanup of 3D torches by blockmen, where some of the initial code still remains. The models were redone entirely from scratch and have been extensively tested with dozens of animated textures converted with mcimport, and look a lot better than the original 3D Torches mod. The ceiling torch is retained and functional. The `wieldlight` addition that the torches mod has was removed, since it relies on wieldview to look decent. This can stay external mod code. I've opted to move the torch nodes to a separate file. It's not a lot of code but nodes.lua is already huge, and I wanted to retain the copyright header and some of the readme.txt notes, and this was the easiest way of doing it. This code passes "default:torch" to nodes with on_rightclick, fixing problems with itemframes. Essentially it has a more elaborate item_place() routine to make sure we're not passing the wall torch to nodes that may display it. The ceiling torch is a separate model and not the same as the floor model. That does mean that there are 3 models in this mod. --- mods/default/init.lua | 1 + mods/default/models/torch_ceiling.obj | 58 ++++++++++ mods/default/models/torch_floor.obj | 50 +++++++++ mods/default/models/torch_wall.obj | 64 +++++++++++ mods/default/nodes.lua | 54 ---------- mods/default/torch.lua | 147 ++++++++++++++++++++++++++ 6 files changed, 320 insertions(+), 54 deletions(-) create mode 100644 mods/default/models/torch_ceiling.obj create mode 100644 mods/default/models/torch_floor.obj create mode 100644 mods/default/models/torch_wall.obj create mode 100644 mods/default/torch.lua diff --git a/mods/default/init.lua b/mods/default/init.lua index 08e9efe4..7b5f62f3 100644 --- a/mods/default/init.lua +++ b/mods/default/init.lua @@ -41,6 +41,7 @@ dofile(default_path.."/functions.lua") dofile(default_path.."/trees.lua") dofile(default_path.."/nodes.lua") dofile(default_path.."/furnace.lua") +dofile(default_path.."/torch.lua") dofile(default_path.."/tools.lua") dofile(default_path.."/item_entity.lua") dofile(default_path.."/craftitems.lua") diff --git a/mods/default/models/torch_ceiling.obj b/mods/default/models/torch_ceiling.obj new file mode 100644 index 00000000..ea51f3ce --- /dev/null +++ b/mods/default/models/torch_ceiling.obj @@ -0,0 +1,58 @@ +# Blender v2.77 (sub 0) OBJ File: 'torch_ceiling.blend' +# www.blender.org +mtllib torch_ceiling.mtl +o Cube_Cube.001 +v -0.062469 -0.047331 0.068152 +v -0.062469 -0.559515 -0.164388 +v -0.062469 0.004344 -0.045667 +v -0.062469 -0.507839 -0.278206 +v 0.062531 -0.047331 0.068152 +v 0.062531 -0.559515 -0.164388 +v 0.062531 0.004344 -0.045667 +v 0.062531 -0.507839 -0.278206 +v 0.353584 0.040000 0.363553 +v 0.353584 -0.397500 0.363553 +v -0.353522 0.040000 -0.343553 +v -0.353522 -0.397500 -0.343553 +v 0.353584 0.040000 -0.343553 +v -0.353522 0.040000 0.363553 +v 0.353584 -0.397500 -0.343553 +v -0.353522 -0.397500 0.363553 +vt 0.5625 0.5000 +vt 0.5625 0.6250 +vt 0.4375 0.6250 +vt 0.4375 0.5000 +vt 0.4375 0.0000 +vt 0.5625 0.0000 +vt 0.5625 0.1250 +vt 0.4375 0.1250 +vt 0.5625 0.6250 +vt 0.4375 0.6250 +vt 0.4375 0.6250 +vt 0.4375 0.0000 +vt 0.5625 0.6250 +vt 0.5625 0.0000 +vt 1.0000 0.5625 +vt 1.0000 1.0000 +vt 0.0000 1.0000 +vt 0.0000 0.5625 +vt 0.0000 0.5625 +vt 1.0000 0.5625 +vt 1.0000 1.0000 +vt 0.0000 1.0000 +vn 0.0000 0.9105 0.4134 +vn -0.0000 -0.4134 0.9105 +vn -1.0000 0.0000 0.0000 +vn 0.7071 0.0000 -0.7071 +vn 0.7071 0.0000 0.7071 +usemtl Material.001 +s off +f 3/1/1 1/2/1 5/3/1 7/4/1 +f 8/5/1 4/6/1 2/7/1 6/8/1 +f 3/9/2 4/6/2 8/5/2 7/10/2 +f 1/11/3 3/9/3 4/6/3 2/12/3 +f 5/13/2 1/11/2 2/12/2 6/14/2 +f 7/10/3 8/5/3 6/14/3 5/13/3 +usemtl Material.002 +f 9/15/4 10/16/4 12/17/4 11/18/4 +f 13/19/5 14/20/5 16/21/5 15/22/5 diff --git a/mods/default/models/torch_floor.obj b/mods/default/models/torch_floor.obj new file mode 100644 index 00000000..e2487efe --- /dev/null +++ b/mods/default/models/torch_floor.obj @@ -0,0 +1,50 @@ +# Blender v2.76 (sub 11) OBJ File: 'torch_floor.blend' +# www.blender.org +mtllib torch_floor.mtl +o Cube_Cube.001 +v 0.062500 0.062500 -0.062500 +v 0.062500 -0.500000 -0.062500 +v 0.062500 0.062500 0.062500 +v 0.062500 -0.500000 0.062500 +v -0.062500 0.062500 -0.062500 +v -0.062500 -0.500000 -0.062500 +v -0.062500 0.062500 0.062500 +v -0.062500 -0.500000 0.062500 +v -0.353553 -0.500000 0.353553 +v -0.353553 0.500000 0.353553 +v 0.353553 -0.500000 -0.353553 +v 0.353553 0.500000 -0.353553 +v -0.353553 -0.500000 -0.353553 +v 0.353553 -0.500000 0.353553 +v -0.353553 0.500000 -0.353553 +v 0.353553 0.500000 0.353553 +vt 0.562500 0.500000 +vt 0.562500 0.625000 +vt 0.437500 0.625000 +vt 0.437500 0.500000 +vt 0.437500 0.000000 +vt 0.562500 0.000000 +vt 0.562500 0.125000 +vt 0.437500 0.125000 +vt 1.000000 0.000000 +vt 1.000000 1.000000 +vt 0.000000 1.000000 +vt 0.000000 0.000000 +vn 0.000000 1.000000 0.000000 +vn 0.000000 0.000000 -1.000000 +vn 1.000000 0.000000 0.000000 +vn -0.707100 0.000000 -0.707100 +vn -0.707100 -0.000000 0.707100 +g Cube_Cube.001_Cube_Cube.001_Material.001 +usemtl Material.001 +s off +f 3/1/1 1/2/1 5/3/1 7/4/1 +f 8/5/1 4/6/1 2/7/1 6/8/1 +f 3/2/2 4/6/2 8/5/2 7/3/2 +f 1/3/3 3/2/3 4/6/3 2/5/3 +f 5/2/2 1/3/2 2/5/2 6/6/2 +f 7/3/3 8/5/3 6/6/3 5/2/3 +g Cube_Cube.001_Cube_Cube.001_Material.002 +usemtl Material.002 +f 9/9/4 10/10/4 12/11/4 11/12/4 +f 13/12/5 14/9/5 16/10/5 15/11/5 diff --git a/mods/default/models/torch_wall.obj b/mods/default/models/torch_wall.obj new file mode 100644 index 00000000..57baa9e6 --- /dev/null +++ b/mods/default/models/torch_wall.obj @@ -0,0 +1,64 @@ +# Blender v2.76 (sub 11) OBJ File: 'torch_wall.blend' +# www.blender.org +mtllib torch_wall.mtl +o Cube_Cube.001 +v 0.062469 -0.195248 0.023570 +v 0.062469 -0.476498 -0.463570 +v 0.062469 -0.303502 0.086070 +v 0.062469 -0.584752 -0.401070 +v -0.062531 -0.195248 0.023570 +v -0.062531 -0.476498 -0.463570 +v -0.062531 -0.303502 0.086070 +v -0.062531 -0.584752 -0.401070 +v -0.353584 -0.613553 0.022500 +v -0.353584 -0.613553 0.460000 +v 0.353522 0.093553 0.022500 +v 0.353522 0.093553 0.460000 +v -0.353584 0.093553 0.022500 +v 0.353522 -0.613553 0.022500 +v -0.353584 0.093553 0.460000 +v 0.353522 -0.613553 0.460000 +v 0.353553 0.056811 -0.121957 +v 0.353553 -0.224439 -0.609096 +v -0.353553 -0.555561 0.231596 +v -0.353553 -0.836811 -0.255543 +v -0.353553 0.056811 -0.121957 +v -0.353553 -0.224439 -0.609096 +v 0.353553 -0.555561 0.231596 +v 0.353553 -0.836811 -0.255543 +vt 0.562500 0.500000 +vt 0.562500 0.625000 +vt 0.437500 0.625000 +vt 0.437500 0.500000 +vt 0.437500 0.000000 +vt 0.562500 0.000000 +vt 0.562500 0.125000 +vt 0.437500 0.125000 +vt 0.000000 0.562500 +vt 0.000000 -0.000000 +vt 1.000000 0.000000 +vt 1.000000 0.562500 +vt 1.000000 1.000000 +vt 0.000000 1.000000 +vn -0.000000 0.500000 0.866000 +vn -0.000000 0.866000 -0.500000 +vn 1.000000 0.000000 0.000000 +vn -0.707100 0.612400 -0.353600 +vn -0.707100 -0.612400 0.353600 +vn -0.707100 0.707100 -0.000000 +vn -0.707100 -0.707100 -0.000000 +g Cube_Cube.001_Cube_Cube.001_Material.001 +usemtl Material.001 +s off +f 3/1/1 1/2/1 5/3/1 7/4/1 +f 8/5/1 4/6/1 2/7/1 6/8/1 +f 3/2/2 4/6/2 8/5/2 7/3/2 +f 1/3/3 3/2/3 4/6/3 2/5/3 +f 5/2/2 1/3/2 2/5/2 6/6/2 +f 7/3/3 8/5/3 6/6/3 5/2/3 +f 17/9/4 18/10/4 20/11/4 19/12/4 +f 21/9/5 22/10/5 24/11/5 23/12/5 +g Cube_Cube.001_Cube_Cube.001_Material.002 +usemtl Material.002 +f 9/12/6 10/13/6 12/14/6 11/9/6 +f 13/9/7 14/12/7 16/13/7 15/14/7 diff --git a/mods/default/nodes.lua b/mods/default/nodes.lua index 1dfc6644..9aa7af59 100644 --- a/mods/default/nodes.lua +++ b/mods/default/nodes.lua @@ -159,8 +159,6 @@ default:lava_flowing Tools / "Advanced" crafting / Non-"natural" ------------------------------------------- -default:torch - default:chest default:chest_locked @@ -1592,58 +1590,6 @@ minetest.register_node("default:lava_flowing", { -- Tools / "Advanced" crafting / Non-"natural" -- -minetest.register_node("default:torch", { - description = "Torch", - drawtype = "torchlike", - tiles = { - { - name = "default_torch_on_floor_animated.png", - animation = { - type = "vertical_frames", - aspect_w = 16, - aspect_h = 16, - length = 3.0 - }, - }, - { - name="default_torch_on_ceiling_animated.png", - animation = { - type = "vertical_frames", - aspect_w = 16, - aspect_h = 16, - length = 3.0 - }, - }, - { - name="default_torch_animated.png", - animation = { - type = "vertical_frames", - aspect_w = 16, - aspect_h = 16, - length = 3.0 - }, - }, - }, - inventory_image = "default_torch_on_floor.png", - wield_image = "default_torch_on_floor.png", - paramtype = "light", - paramtype2 = "wallmounted", - sunlight_propagates = true, - is_ground_content = false, - walkable = false, - light_source = default.LIGHT_MAX - 1, - 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, flammable = 1, attached_node = 1}, - legacy_wallmounted = true, - sounds = default.node_sound_defaults(), -}) - - local chest_formspec = "size[8,9]" .. default.gui_bg .. diff --git a/mods/default/torch.lua b/mods/default/torch.lua new file mode 100644 index 00000000..0d3454bf --- /dev/null +++ b/mods/default/torch.lua @@ -0,0 +1,147 @@ + +--[[ + +Torch mod - formerly mod "Torches" +====================== + +(c) Copyright BlockMen (2013-2015) +(C) Copyright sofar (2016) + +This mod changes the default torch drawtype from "torchlike" to "mesh", +giving the torch a three dimensional appearance. The mesh contains the +proper pixel mapping to make the animation appear as a particle above +the torch, while in fact the animation is just the texture of the mesh. + + +License: +~~~~~~~~ +(c) Copyright BlockMen (2013-2015) + +Textures and Meshes/Models: +CC-BY 3.0 BlockMen +Note that the models were entirely done from scratch by sofar. + +Code: +Licensed under the GNU LGPL version 2.1 or higher. +You can redistribute it and/or modify it under +the terms of the GNU Lesser General Public License +as published by the Free Software Foundation; + +You should have received a copy of the GNU Lesser General Public +License along with this library; if not, write to the Free Software +Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA + +See LICENSE.txt and http://www.gnu.org/licenses/lgpl-2.1.txt + +--]] + +minetest.register_node("default:torch", { + description = "Torch", + drawtype = "mesh", + mesh = "torch_floor.obj", + inventory_image = "default_torch_on_floor.png", + wield_image = "default_torch_on_floor.png", + tiles = {{ + name = "default_torch_on_floor_animated.png", + animation = {type = "vertical_frames", aspect_w = 16, aspect_h = 16, length = 3.3} + }}, + paramtype = "light", + paramtype2 = "wallmounted", + sunlight_propagates = true, + walkable = false, + liquids_pointable = false, + light_source = 13, + groups = {choppy=2, dig_immediate=3, flammable=1, attached_node=1, torch=1}, + drop = "default:torch", + selection_box = { + type = "wallmounted", + wall_bottom = {-1/16, -0.5, -1/16, 1/16, 2/16, 1/16}, + }, + sounds = default.node_sound_wood_defaults(), + on_place = function(itemstack, placer, pointed_thing) + local under = pointed_thing.under + local node = minetest.get_node(under) + local def = minetest.registered_nodes[node.name] + if def and def.on_rightclick and + ((not placer) or (placer and not placer:get_player_control().sneak)) then + return def.on_rightclick(under, node, placer, itemstack, + pointed_thing) or itemstack + end + + local above = pointed_thing.above + local wdir = minetest.dir_to_wallmounted(vector.subtract(under, above)) + local fakestack = itemstack + if wdir == 0 then + fakestack:set_name("default:torch_ceiling") + elseif wdir == 1 then + fakestack:set_name("default:torch") + else + fakestack:set_name("default:torch_wall") + end + + itemstack = minetest.item_place(fakestack, placer, pointed_thing, wdir) + itemstack:set_name("default:torch") + + return itemstack + end +}) + +minetest.register_node("default:torch_wall", { + drawtype = "mesh", + mesh = "torch_wall.obj", + tiles = {{ + name = "default_torch_on_floor_animated.png", + animation = {type = "vertical_frames", aspect_w = 16, aspect_h = 16, length = 3.3} + }}, + paramtype = "light", + paramtype2 = "wallmounted", + sunlight_propagates = true, + walkable = false, + light_source = 13, + groups = {choppy=2, dig_immediate=3, flammable=1, not_in_creative_inventory=1, attached_node=1, torch=1}, + drop = "default:torch", + selection_box = { + type = "wallmounted", + wall_side = {-0.5, -0.3, -0.1, -0.2, 0.3, 0.1}, + }, + sounds = default.node_sound_wood_defaults(), +}) + +minetest.register_node("default:torch_ceiling", { + drawtype = "mesh", + mesh = "torch_ceiling.obj", + tiles = {{ + name = "default_torch_on_floor_animated.png", + animation = {type = "vertical_frames", aspect_w = 16, aspect_h = 16, length = 3.3} + }}, + paramtype = "light", + paramtype2 = "wallmounted", + sunlight_propagates = true, + walkable = false, + light_source = 13, + groups = {choppy=2, dig_immediate=3, flammable=1, not_in_creative_inventory=1, attached_node=1, torch=1}, + drop = "default:torch", + selection_box = { + type = "wallmounted", + wall_top = {-0.1, -0.1, -0.25, 0.1, 0.5, 0.1}, + }, + sounds = default.node_sound_wood_defaults(), +}) + +minetest.register_lbm({ + name = "default:3dtorch", + nodenames = {"default:torch", "torches:floor", "torches:wall"}, + action = function(pos, node) + if node.param2 == 0 then + minetest.set_node(pos, {name = "default:torch_ceiling", + param2 = node.param2}) + elseif node.param2 == 1 then + minetest.set_node(pos, {name = "default:torch", + param2 = node.param2}) + else + minetest.set_node(pos, {name = "default:torch_wall", + param2 = node.param2}) + end + end +}) + From b0ae48827736eff32f140e327b404cd8ac00b2c9 Mon Sep 17 00:00:00 2001 From: sfan5 Date: Thu, 24 Nov 2016 07:00:35 +0100 Subject: [PATCH 71/99] Use travis' container-based infrastructure (#1314) Use travis' container-based infrastructure (no sudo) --- .travis.yml | 22 ++++++++++------------ 1 file changed, 10 insertions(+), 12 deletions(-) diff --git a/.travis.yml b/.travis.yml index 805fe08c..5253938a 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,14 +1,12 @@ language: generic - -branches: - only: - - master - -sudo: required - +sudo: false +addons: + apt: + packages: + - luarocks before_install: - - sudo apt-get update - - sudo apt-get install -y luarocks - - sudo luarocks install luacheck - -script: luacheck --no-color ./mods + - luarocks install --local luacheck +script: +- $HOME/.luarocks/bin/luacheck --no-color ./mods +notifications: + email: false From e4b1c935120580b013a6f9ba2212a4cb2ef246ac Mon Sep 17 00:00:00 2001 From: Auke Kok Date: Sat, 26 Dec 2015 11:16:49 -0800 Subject: [PATCH 72/99] Keys: Allow easy sharing of access without commands This code adds the key concept to minetest_game, and integrates it with lockable nodes. Currently supported lockable items are the Steel Door, the Steel Trapdoor, and the Locked Chest. The goal of this modification is to introduce a fine-grained multi- player permission system that is intuitive and usable without any console or chat commands, and doesn't require extra privileges to be granted or setup. Keys can also physically be conveyed to other players, adding to gameplay and adding some personality that is preferable to console commands or editing formspecs. A skeleton key can be crafted with 1 gold ingot. Skeleton keys can then be matched to a lockable node by right-clicking the skeleton key on a lockable node, which changes the skeleton key to a "key". Gold was chosen as it's currently a not-so very useful item, and therefore it's likely that players have some, but aren't really using it for any purpose. This key can subsequently used by any player to open or access that lockable node, including retrieving items from Locked Chests, or putting items in them. They key is programmed to fit only the particular locked node it is programmed to. This is achieved by storing a secret value in both key and locked node. If this secret value doesn't match, the key will not open the locked node. This allows many keys to be created for one chest or door, but a key will only fit one node ever. The secrets are stored in node, and item meta for the key. If a locked node is removed, all keys that opened it are no longer valid. Even if a new door/chest is placed in exactly the same spot, the old keys will no longer fit that node. Keys can be smelted back in gold ingots if they are no longer useful. The method of storing a secret in nodemeta and itemstackmeta is secure as there is no way for the client to create new items on the server with a particular secret metadata value. Even if you could possible create such an itemstack on the client, the server does not ever read itemstackmeta from a client package. The patch adds an API that allows other nodes and nodes added by mods to use the same keys as well. The method how to implement this is described in game_api.txt. The mod should add 2 callbacks to it's node definition. Example code is given. Textures are from PixelBOX, thanks to Gambit. --- game_api.txt | 58 ++++++++++++++ mods/default/README.txt | 2 + mods/default/crafting.lua | 21 +++++ mods/default/nodes.lua | 57 +++++++++++++- mods/default/textures/default_key.png | Bin 0 -> 3037 bytes .../default/textures/default_key_skeleton.png | Bin 0 -> 3043 bytes mods/default/tools.lua | 72 ++++++++++++++++++ mods/doors/init.lua | 70 ++++++++++++++++- 8 files changed, 274 insertions(+), 6 deletions(-) create mode 100644 mods/default/textures/default_key.png create mode 100644 mods/default/textures/default_key_skeleton.png diff --git a/game_api.txt b/game_api.txt index e85898fd..db5fc014 100644 --- a/game_api.txt +++ b/game_api.txt @@ -672,3 +672,61 @@ Carts like speed, acceleration, player attachment. The handler will likely be called many times per second, so the function needs to make sure that the event is handled properly. + +Key API +------- + +The key API allows mods to add key functionality to nodes that have +ownership or specific permissions. Using the API will make it so +that a node owner can use skeleton keys on their nodes to create keys +for that node in that location, and give that key to other players, +allowing them some sort of access that they otherwise would not have +due to node protection. + +To make your new nodes work with the key API, you need to register +two callback functions in each nodedef: + + +`on_key_use(pos, player)` + * Is called when a player right-clicks (uses) a normal key on your + * node. + * `pos` - position of the node + * `player` - PlayerRef + * return value: none, ignored + +The `on_key_use` callback should validate that the player is wielding +a key item with the right key meta secret. If needed the code should +deny access to the node functionality. + +If formspecs are used, the formspec callbacks should duplicate these +checks in the metadata callback functions. + + +`on_skeleton_key_use(pos, player, newsecret)` + + * Is called when a player right-clicks (uses) a skeleton key on your + * node. + * `pos` - position of the node + * `player` - PlayerRef + * `newsecret` - a secret value(string) + * return values: + * `secret` - `nil` or the secret value that unlocks the door + * `name` - a string description of the node ("a locked chest") + * `owner` - name of the node owner + +The `on_skeleton_key_use` function should validate that the player has +the right permissions to make a new key for the item. The newsecret +value is useful if the node has no secret value. The function should +store this secret value somewhere so that in the future it may compare +key secrets and match them to allow access. If a node already has a +secret value, the function should return that secret value instead +of the newsecret value. The secret value stored for the node should +not be overwritten, as this would invalidate existing keys. + +Aside from the secret value, the function should retun a descriptive +name for the node and the owner name. The return values are all +encoded in the key that will be given to the player in replacement +for the wielded skeleton key. + +if `nil` is returned, it is assumed that the wielder did not have +permissions to create a key for this node, and no key is created. diff --git a/mods/default/README.txt b/mods/default/README.txt index c76cf7c3..9dde0eba 100644 --- a/mods/default/README.txt +++ b/mods/default/README.txt @@ -177,6 +177,8 @@ Gambit (CC BY-SA 3.0): default_snow.png default_snow_side.png default_snowball.png + default_key.png + default_key_skeleton.png asl97 (CC BY-SA 3.0): default_ice.png diff --git a/mods/default/crafting.lua b/mods/default/crafting.lua index 23f233fb..50b4b957 100644 --- a/mods/default/crafting.lua +++ b/mods/default/crafting.lua @@ -352,6 +352,13 @@ minetest.register_craft({ } }) +minetest.register_craft({ + output = 'default:skeleton_key', + recipe = { + {'default:gold_ingot'}, + } +}) + minetest.register_craft({ output = 'default:chest', recipe = { @@ -781,6 +788,20 @@ minetest.register_craft({ recipe = "default:clay_lump", }) +minetest.register_craft({ + type = 'cooking', + output = 'default:gold_ingot', + recipe = 'default:skeleton_key', + cooktime = 5, +}) + +minetest.register_craft({ + type = 'cooking', + output = 'default:gold_ingot', + recipe = 'default:key', + cooktime = 5, +}) + -- -- Fuels -- diff --git a/mods/default/nodes.lua b/mods/default/nodes.lua index 9aa7af59..6e391e63 100644 --- a/mods/default/nodes.lua +++ b/mods/default/nodes.lua @@ -1619,16 +1619,30 @@ local function get_locked_chest_formspec(pos) end local function has_locked_chest_privilege(meta, player) - local name = "" if player then if minetest.check_player_privs(player, "protection_bypass") then return true end - name = player:get_player_name() - end - if name ~= meta:get_string("owner") then + else return false end + + -- is player wielding the right key? + local item = player:get_wielded_item() + if item:get_name() == "default:key" then + local key_meta = minetest.parse_json(item.get_metadata()) + local secret = meta:get_string("key_lock_secret") + if secret ~= key_meta.secret then + return false + end + + return true + end + + if player:get_player_name() ~= meta:get_string("owner") then + return false + end + return true end @@ -1748,6 +1762,41 @@ minetest.register_node("default:chest_locked", { return itemstack end, on_blast = function() end, + on_key_use = function(pos, player) + local secret = minetest.get_meta(pos):get_string("key_lock_secret") + local itemstack = player:get_wielded_item() + local key_meta = minetest.parse_json(itemstack:get_metadata()) + + if secret ~= key_meta.secret then + return + end + + minetest.show_formspec( + player:get_player_name(), + "default:chest_locked", + get_locked_chest_formspec(pos) + ) + end, + on_skeleton_key_use = function(pos, player, newsecret) + local meta = minetest.get_meta(pos) + local owner = meta:get_string("owner") + local name = player:get_player_name() + + -- verify placer is owner of lockable chest + if owner ~= name then + minetest.record_protection_violation(pos, name) + minetest.chat_send_player(name, "You do not own this chest.") + return nil + end + + local secret = meta:get_string("key_lock_secret") + if secret == "" then + secret = newsecret + meta:set_string("key_lock_secret", secret) + end + + return secret, "a locked chest", owner + end, }) diff --git a/mods/default/textures/default_key.png b/mods/default/textures/default_key.png new file mode 100644 index 0000000000000000000000000000000000000000..d59bfb6b2e74cb7b3b54eb9b2321f69cdfa13956 GIT binary patch literal 3037 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 literal 0 HcmV?d00001 diff --git a/mods/default/textures/default_key_skeleton.png b/mods/default/textures/default_key_skeleton.png new file mode 100644 index 0000000000000000000000000000000000000000..eafcc19585b3239ca7061a7f939e6507422dd2e9 GIT binary patch literal 3043 zcmV<93mo)`P)KLZ*U+IBfRsybQWXdwQbLP>6pAqfylh#{fb6;Z(vMMVS~$e@S=j*ftg6;Uhf59&ghTmgWD0l;*T zI709Y^p6lP1rIRMx#05C~cW=H_Aw*bJ-5DT&Z2n+x)QHX^p z00esgV8|mQcmRZ%02D^@S3L16t`O%c004NIvOKvYIYoh62rY33S640`D9%Y2D-rV&neh&#Q1i z007~1e$oCcFS8neI|hJl{-P!B1ZZ9hpmq0)X0i`JwE&>$+E?>%_LC6RbVIkUx0b+_+BaR3cnT7Zv!AJxW zizFb)h!jyGOOZ85F;a?DAXP{m@;!0_IfqH8(HlgRxt7s3}k3K`kFu>>-2Q$QMFfPW!La{h336o>X zu_CMttHv6zR;&ZNiS=X8v3CR#fknUxHUxJ0uoBa_M6WNWeqIg~6QE69c9o#eyhGvpiOA@W-aonk<7r1(?fC{oI5N*U!4 zfg=2N-7=cNnjjOr{yriy6mMFgG#l znCF=fnQv8CDz++o6_Lscl}eQ+l^ZHARH>?_s@|##Rr6KLRFA1%Q+=*RRWnoLsR`7U zt5vFIcfW3@?wFpwUVxrVZ>QdQz32KIeJ}k~{cZZE^+ya? z2D1z#2HOnI7(B%_ac?{wFUQ;QQA1tBKtrWrm0_3Rgps+?Jfqb{jYbcQX~taRB;#$y zZN{S}1|}gUOHJxc?wV3fxuz+mJ4`!F$IZ;mqRrNsHJd##*D~ju=bP7?-?v~|cv>vB zsJ6IeNwVZxrdjT`yl#bBIa#GxRa#xMMy;K#CDyyGyQdMSxlWT#tDe?p!?5wT$+oGt z8L;Kp2HUQ-ZMJ=3XJQv;x5ci*?vuTfeY$;({XGW_huIFR9a(?@3)XSs8O^N5RyOM=TTmp(3=8^+zpz2r)C z^>JO{deZfso3oq3?Wo(Y?l$ge?uXo;%ru`Vo>?<<(8I_>;8Eq#KMS9gFl*neeosSB zfoHYnBQIkwkyowPu(zdms`p{<7e4kra-ZWq<2*OsGTvEV%s0Td$hXT+!*8Bnh2KMe zBmZRodjHV?r+_5^X9J0WL4jKW`}lf%A-|44I@@LTvf1rHjG(ze6+w@Jt%Bvjts!X0 z?2xS?_ve_-kiKB_KiJlZ$9G`c^=E@oNG)mWWaNo-3TIW8)$Hg0Ub-~8?KhvJ>$ z3*&nim@mj(aCxE5!t{lw7O5^0EIO7zOo&c6l<+|iDySBWCGrz@C5{St!X3hAA}`T4 z(TLbXTq+(;@<=L8dXnssyft|w#WSTW<++3>sgS%(4NTpeI-VAqb|7ssJvzNHgOZVu zaYCvgO_R1~>SyL=cFU|~g|hy|Zi}}s9+d~lYqOB71z9Z$wnC=pR9Yz4DhIM>Wmjgu z&56o6maCpC&F##y%G;1PobR9i?GnNg;gYtchD%p19a!eQtZF&3JaKv33gZ<8D~47E ztUS1iwkmDaPpj=$m#%)jCVEY4fnLGNg2A-`YwHVD3gv};>)hAvT~AmqS>Lr``i7kw zJ{5_It`yrBmlc25DBO7E8;5VoznR>Ww5hAaxn$2~(q`%A-YuS64wkBy=9dm`4cXeX z4c}I@?e+FW+b@^RDBHV(wnMq2zdX3SWv9u`%{xC-q*U}&`cyXV(%rRT*Z6MH?i+i& z_B8C(+grT%{XWUQ+f@NoP1R=AW&26{v-dx)iK^-Nmiuj8txj!m?Z*Ss1N{dh4z}01 z)YTo*JycSU)+_5r4#yw9{+;i4Ee$peRgIj+;v;ZGdF1K$3E%e~4LaI(jC-u%2h$&R z9cLXcYC@Xwnns&bn)_Q~Te?roKGD|d-g^8;+aC{{G(1^(O7m37Y1-+6)01cN&y1aw zoqc{T`P^XJqPBbIW6s}d4{z_f5Om?vMgNQEJG?v2T=KYd^0M3I6IZxbny)%vZR&LD zJpPl@Psh8QyPB@KTx+@RdcC!KX7}kEo;S|j^u2lU7XQ}Oo;f|;z4Ll+_r>@1-xl3| zawq-H%e&ckC+@AhPrP6BKT#_XdT7&;F71j}Joy zkC~6lh7E@6o;W@^IpRNZ{ptLtL(gQ-CY~4mqW;US7Zxvm_|@yz&e53Bp_lTPlfP|z zrTyx_>lv@x#=^!PzR7qqF<$gm`|ZJZ+;<)Cqu&ot2z=00004XF*Lt006O$eEU(80000WV@Og>004R=004l4008;_004mL004C` z008P>0026e000+nl3&F}0002~NklcUcW)CGv6T6TfmR`e8`88&mYp-5zA&4;s)H6nDCqZ}@P0_M z* Date: Thu, 17 Nov 2016 09:09:48 +0100 Subject: [PATCH 73/99] Default: Several improvements of character model MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - Improve arms attachment The arm bones were at an angle, so that the bones were difficult to orient correctly, as unintuitive combinations of angles would be needed to get the default orientation, or any other acceptable orientation. Moreover, a simple rotation of the arm, e.g. forward, would require all angles to be adapted, instead of just one. The ends of the arms bones were moved from touching the body, to the center of the arm, at an equal distance from the sides of the arm and the shoulder; the arm bone is now in the center of the arm. - Fix body rotation The body was rotated 180° while the rest wasn't, leading to strange results when setting bone positions manually. - Fix default rotation of limbs (manually positioning them in their default position would require an 180° rotation). Is is not know how this was fixed. Maybe just because the model was re-exported. - The bone of the cape was moved to the center of the cape (it was at the edge). For some reason this fixed the 180° rotation of the cape when it was manually positioned (similar to previous issue). The changes above fix most of the issues mentioned in #1376 - Add a player-model-specific workaround for the problem described in: https://github.com/minetest/minetest/issues/2813#issuecomment-198796927 https://github.com/minetest/minetest_game/pull/1392#issuecomment-261669915 During walking, attached tools would randomly switch hands. Walking also happens to be the only animation where the body does not move. Making the body move an imperceptible amount makes the issue disappear for the player model. - Fix body vertex group: it no longer includes parts of arms and legs Thanks to @stujones11 for these last two changes. --- mods/default/models/character.b3d | Bin 86830 -> 84526 bytes mods/default/models/character.blend | Bin 700448 -> 634876 bytes 2 files changed, 0 insertions(+), 0 deletions(-) diff --git a/mods/default/models/character.b3d b/mods/default/models/character.b3d index 7558e6f849369c419c8d307f022811ed546bc9f2..9ab454366bee8fb6c9e45e64ac0d77808d5ea66f 100644 GIT binary patch literal 84526 zcmeF4b$Aom_y3DjvEmNJN{iIeLfcF_#T|+}6xW3o_XKx$TZ%h0Nr6gAio@d0;_Skr zi|xYV{LZ;KH@Q=~{mlOPd!BEe=klJJzH)NrTsd*W0@BxCxZ-sWCZGWcr|TSyUxP~S)8H^Mc@F|Y~8yo6)XaGW2*<4(Xt zM>^iikFoc{-|t7zsQ~xGXZ*{1*=NvuxxF8bMbhU27YCogI5@^WgN_+M(Z9@mLI0dG z;L_Xk1jcd976UxS-}{4q@VPuL_RomKW48CA&+NVI7{m{3+0O(1#C>++=LW~T4pA)O zm;pbVAG10+MGD7wz2PzDbDHCGqu_mb%)pLiXLT7Z9E(bG9AlpW9Jhz><;U2$!G0vY z*VYc;?^fW2V;Q}d*Ac$gAp51JXdLHe^BInr=@{6Ci(~4oWsvx z$N8}|Iyb=ZJh(565syVG&x8Ad9An|VJO=jn!h85JC-e_rkr|u^9Om^K37i+jlpjNT z{1~rGJjU8ux^`ut^ZlW1z~}zZHsEvlG4zkUm-~WtgwOrK-VdCz-P`S@IX=VQCL{5D zZDT|vd=8$QfgStA#tq)zY{zW<7mqn%VI1&Q*ra2~MMv7+8vw`99&$hQX?855_u4)K z-^)G&gvUOT#{iD;*yAw+eFi^f5RUQp;xXn6w}aS#k24-)=L_$(w|n#jj@#-3 zGz|*AD1OnAu#E*7I>!4J9%JuKBVX|E{4@A5@Y()e*tGi$;~%rfkHLHS`5MwPXfN!T zvQ46|{Cp$v{aDyBM_c2^q9bi>$O{-O8GXjTy_e@G_C9=XB>I=m9vsVvi%Lu93wy8Q zSZ2QP&#PB5bIa&6;8=QJuwK*0509m{=L9d_P9u5!0>_Wp>zp66 z!W(#d;qQfG_+BUQF~iS@%-9#+UT}Od*xzf50UpEnVGP9ca2!*{%2vP1@k*?7yFKuQ z$5}j<-WLP&*=8@A{KI3s-tZXng>mFRkDn9zY&*u=Jsh$fv%+!SKO!B+Y%x81CTHZs z3GX98`THYq+i{Hf!j9GN*^)Rs<^-4fIU^m%4E$Jz?&Zd*UqKkdzJ0k_PLH@?7hHo|DpwZ{21C}9QY!Bt`B}L zd#}SDJI1(l=L^R&IuGvOIIxAEV~dr|9v)+#3!lN?8_hX5#{I)%oa6rW6pr!Fz+(m| z8OHQqK7+p(KVy{ry*B^Q)+o7Eiv}&HWCyG8$_fSN#rVnw1^4mg0>v2$Vy?80+a6Hd zp}0ZGLHoF!8%i!HIicWm8~1TLAC$aMJfXmpobBUwAt(i*6o68g_Hnxyl%i0IKq*f9 zxLpcLNhl?tl%{>$E(@g$6fY>{px{1kdqb%Jr9701w2#}Bp!h=Zfl`_FaT{+=RE1In zia+h+b`X?6C;?Dl(#H02yBd@bD8W#w(>`v8LkWWt3Pnr%xQ&Si2UH0PRtoOpc1R0O#8UK49Zd{OQ0;LecWCJWhImqP*&4EZvPBrEtEA-*3mw0 zZ-BBMN*t7pP;ei&w?NqpWfPRGw2#|6plpY-4a!d1$L&2(c0<_(WiRdHwh4+6N<0)Z z?c?@-DEpu!KsiABxSb3o2}&ZA6xzq_gHTeTSfE&GAGd2XZO|kqD86p9e`9LmZNEQ5 zvN+Wo+;g;3-uZ37hp066H#QjJAclp%Y}+-PHLb%&Eq2%-XCci>nvFC&sWYhysVk`) zsXM6$X%14Gvj#aA?dK-VL+VMImoy(~e$oO=ZG#_f7NY&aq(w-Jk`^N^PFjMrBxxzq z(xhIbWk}1CmLn}sT7lG?v?8ewsV`|I(#oV&NUM_ik@}MckOqV|NkTxZ4MjA!h zoU{dLOVU=Ptx4OEwk2&x+McunX-CpdObv2p(k`T3Nu!zC24&prPWwGbdy@7d?M>Q; zv@dBt(*C3aNC%SsL^_CcFlh{FEa?!^p`^n|hm(#V9Z5QhbTsK0(y^rDNXL^-Ak~u^ zNGFm`BArY+g>)+EG}7s$Ge~EW&LW*nI)`*F={(Z;qzgzFk}e`$OuB@0Dd{rO<)kY} zSCXzGT}`@%bS>%6r0YoINY|5YAl*p1iF7mR7SgSx+eo*Q?jYSsx{Gu-=^oO(r17Li zQWL3}G=X#<>3-4!q=}?Sq{*Zyq!!Xt(u1T{(nfXKx5TSISJ=-2h35|!&!@q*yrIY+ z2A)f@s$jpv&Bu_ui-!uf;5)tSJ8P*WhYGgO zYrR}zpUIL_1^dS{y==I5-jYiNd-S1Re&+qcl3NAa@UC9I)G=FX9u@3`>w3A}z&xp* zD%d?2_40*}MN{*tV5^@2A5ND|&8LFhcLLg(#Wyv-3bxZxz3jKoFSURQw%K95+-FZ< zYC#oj+#$WJ-4T>pNCnI77FNNczg5BCA}UxOhoUN29^YarSgf~;P;bRmu-G2jLVGBo zg2i@r5!zWv6)d*jC(wRNsbH~ROn`n-S_RAdo0kd}`>_x7<1#8(93RTT_)t~_i{s8h z7^86N|f{lW_nHBP;tb*+V z`OVejml~;pwLqRvH2S92P{G!N_^vjWO|7YdJq7hP{Y=r+S}NF&kl${X&68SN1v?S) z+rHOXQ|qW;ogcyY;P%{7R|Q-3xnBM{{+y+r3U&`%PySWXXsNG)Z3X?&>feO~; zqh9_!_h3sy73?t>cUG1Nw=`10?u7hyM)I&UR>9tZaq?=(Ln%#Eurpx%{b|O?l%^`! zo4{s&;*ru!1^W@$vrC32N2y>j5B<4(Xi{?(EYEK(?5yV@7tek$6!LkV{a&E~kL~*I zJgcP&7JVoHKD1K7;<>$sb8D@F#hB%Sn6**CVqL^SU9?rfVjbUtI&P1QuomRr!X|xKK&-KQrV0kVatAa(lHDIncP6dnpo&$f!t6(t>T8P60 z6)eX0J;Yb9g2j5f3iW1C!D4%;0PSI-3KrYh5@=_WRIu27E5clFvI>^p%bcQu<#WBM zDp-EcW||5X$A_nIFKD_7mXA9#RIoUnwSjwAGgYwsUgj(nEFXVot6*_luMYPz=cr)$ zTyL%lmgk{)Dp;Q1=Br@QZWPS*7N}s+-{A>Jk;~uh1U0bj*{wR0Z4iu3jEnD_iO^73^hbzkfe^ZdtB^eGmD~cm8?H z3Ki@q$ZsRtnJg<+u;n1XN#08>t5mReVSI>5jJ2#*!ES?br^8ywvPK2F0>-o0fjKQ} zRj`*}oNN$xH05U%>|_{!kFFe-vQ7ny&O#`d{B~ zV%vH1>*4D0D(&{4-a6E%lKmFDKGdX={c!zQs97Zo^%k0-l101wRI=#rewA!Lh{FMu z>}!Z`qDmGp_Mn)`dOMJ;(k|3nVv0%@;*e-j$wGV+Q&qCq-wvu|H(HmuTUD?lU~DT; zV5&Av1-l0F(13g+q(drL1LWA$Mt@3&Rj?)C`l0wgWpzhXuyk#tJF0@E>ptBv6)axU zKK6bg9aq89^}2LI1&ec$ze`Qfo>al|dDf}_!2Y6w<@2G_Dp)=jIirH*^MJD|SbhzD zP6f-af6uF6FI?5ji{Iu;y`X}f1NRZzyy<1RsFH2}rk8X{1&cl`dYeyoSq016?-dm+ zoty5e3Kq|;1NeJQCEFU}a9ssU=azay1wh?{C?Ce6)e9ObXx_>@59_t z!ScR|4-wa>0uRLZ>eIDxuikhYiG2}Zzzy3r|AGLH*#73^m#Wn$A0&4C?})63!7H0h zoU)TTlfuO%d%2Rjk-C$5kmexGNt%l^H)$SHPtv@k`AGAV79cH1T8OkTX%W(*q{T>! zla?SYNm`1uG^rO;gItERENMB?@}w0=y-6#Q`Y^TqZwuV4MEjLVp>Ei#Dybi-KWPAI zAZZY(hBTNogtQuIb<$AMFw$^REvdxRAnQmYNNqC+gB;2BZT~w1H*3;oc|eZw=gRNc)XQ8Wu2X$#Vpq^+15#`V;9O(!r!L zq_Lz!NQaVQkH*(qx`1>c=_1m_q)SMbk}e}%PP&40CFv^C)ud}k z*OLBBx{frCbUoNH>#iA>B&4jT9%T_}XC;_Pr8M z{qfSlmZ{NjS`HQ-9u9+>6xJIzL#ra2jo3wJ*PBahoe!t(VBz86aJZ3T-T64o&j;A- z#C{IQYTWgt3xvnPR?m`03pZ%2Wvv(e@&fBjY@fB+5}J<~r(j>gMJ^;%YmZLh{+BFT zvkS4E<>zM2_2Ce1hh2DhSPM7atg;NJ{bS7INyxFx)(azbGj9v+t9#=CXovvdBv zQnY3_Vqb(63=Vl$I#9G*s-sSV8}HU7cRd0=Bx%jI9BGgXpXr>?Z&a$n2eW>N1Q!d| zF4qGCo*mGdJ;?5vhZEx)zdEL{`(fr%32wYwzqjcaP-UOiY|FIvKofGD z+sXu!)c3XC+A-JU0IN}J&PjGZZ+1;MtC_E`JK_F$32wYwpA1 zJ?{X~Zsm$EB)AZ=cJtpI5WHP$&Q0tXX^Lh-o2o$~8`m+L4sN_#FK$l@7_muf&O_|w zY@dU&AIPKd_x*r8I=Jy}&Dr@i1x=%o#TE57Zl9m7<59h}n3q#v>_V-%0I?r>7fDF)3=b0HP<>CJ4sMWJ z_ch5H_?^8 zc=C7KOJ^hcTZGt*;^0kjNM7o0#5fcsHnaE+-;>*j@hwJdOQ^Tet5zu5&H<{oKYR)r zt3kaLC-w@ohcES`6ft{8?IG)v62=429!d~97TVeEKCKmYc{`hYq=Iocw6l`jF0|h{ zs|zaPfbI7PwBOZ}{f*duOA-4C`i169yrPbIzo_brk-Fg^5!njk8*!yfen;tK+@bEAj&lZIZH1>w^tUR%{ane~42Y7gxjgztOh8ml~ zI9Y+%-Z1{w{xw!HuEWE_Z2a{eIL3(MuQ##ZVO(!_F;&6B!^3P`zdTWI^n`J}BC(h+ z9=1#K7yX5YhgrU;wRoZt^Mwzwn1}Axj8o(xczBrQp)xxr88Hv}63fKC&BsbS;K*;4 z=_?r#i72<+s0SJoAA3wjai` zP-1bMY?fc682k3qI2lO!EsWSIgzp)+Ux4Oid@*WN9INDX=Z_k_Oq~g!@*5S3njkh4b)gyMlclLxcu45H3bDwFH zR>Sq=i|lob4?T605U`!rgckX9oLV|g4Z{2eY?;JR9KrialpS!-@Y>@PE;HQ!%* zD*XNY(L>q<*Xxg04>S&g{MMM*xE4?GuH>WtP-hxx_pO=FB#fo)3ci!TcjV#iw*{$9$GQwtBoTAyvw8}mUPYDVmm zdoc;8I?0NBapcrUmM?x@JrN#l*P5ei$UxVd#0U`3L2ieUb_p@tS6TAKSIHSk) zkt`1U3+{Crg5`XDLS%goXLDOOXH6SoYj=2HtWmX>B4*242g_T{A##bj&gO}c&YHHw zjydmdDpM#z!MgvYk!u#LCSP9QY%Vy%S<{Z#oyM`Ii{F&-Z8lCLH=0#V9`wxF{Opdi zraiF_25vXyxbFp1ddIoV`zuK9>{(qd)ZE3ajdam;Aa=#tUri746!I5icDrMcTxC;r zx!z$H^ZH#bnvTTQe(*M^*|z=|A4DGc)6>lGqF9(%?N5!c`#$SA7y(7$StOY$tyK(=IXiKG+l`O zb%;;Utlpa#%lljNG=F(exp4XGPB(MRL^n-WVhe1Z8`!BpA=Zbuzc({)(?k>Nd}UtzwN+o@#hA%U{p6gIR?aio-5lD?UDJ)&yom>m(-xj*EcaI`;wLwY z*UJ94-Ob}Rxof%;dn%Wgsp@>avqwV#5VUIX&Q6Aqrz_MvQ=eiu>}9=&%^wrp@*gyv7UpbnF9XQ zDeRW~UPYc`mgF}ZJj^S*duVzS`*)UErjxHVjOFJx_OB{($U#YNzw@i9e}4~6A7TxI zrZKC zHauj^efk_bH{K?F3i-*BNh_!2`C@vs*j$L~w|%e7O&W#f`h5KlMFAYzldmk-j`+Y*51#o3EV{_;ZK za5-e(N7JjRZkoZ|-?*tkSEZqh<#8z8B|v^P7y8BV52myE-83=89@?86R4P|F1?%J* zDBpMyDkq-*$FzN|t0tD%UPoR9O@ErI=<`kY2Fev1g~~Z^yf+oB=&Bh)Y|NqCCex!b zjOG5mYaS&3vb(xm^zl1WyxB!Fl-OF`c9{})?%FAyTis_ta!k?cvS;>priXQ1G{cC^ zHOOF^x%Lsu7rfr84b#Xq7FCmLhWu?h_`9=aII%b1X-xh82;VE(o%cc`Z!ca={$2l< z>Es+|%?M)Gw|{J$ZtB5U9lY&HV&0lYcsOfD5&QAvAMw*p7+JpHY^fW;^1;9mxplF(Ch0+T&1hl|jeYb(9yiCXnOi#-Gq$ry#16@%{cbqrV#fA6nb_V!zu$ z8N^o4WIP)_)!mHa*-T;^WHL@}yW?(t2;<}|Vlx|mgDZNNWf*^F6T3WF3O`Hhc#{JP{+&MzjsE?Gisa`Ni2-i`|h<)F*LeS@5H?us%+d98K`(@`x(_pwhTTblQplLy6qJ}Uw zE965g{JQUH@&{8GT=%UYwoSW~p#ENE8O#0U*OR)#|CmDHdU7SPHAcS~cQ^%cpZz=}YsjG;+=YHEXsZwdi@^jMEf1ASLx_S+2w!r-2xBG8RIKNm&?6;N^jrn6Up0`{X@YaO$mN;S~ zN9sm0e`Hj!B+CqNAc@|9O;Dz%r{&K`DeSX`>5Q7{o zcTCuyb+MVB7wRqdqsG?f$6L2zMUt1G2Bzn&EX52tXx#8J$n$y{!Plx#96tC}Ns36_Imqf&WQFOHtG_v(*tNZC`Z*cyD%kPH zI`GdX|4%O@@b`6We#ogQ{ssZA#Y~nC^ z^7t-6?V4#c2Z*)Bcf2BIArN27&Ox%*ndw0gUri#hOzhjX`X~(b)@AZQIR@(O;E<}C zB!^x2e2v0~2hbjxB@dQ+3|?!han4_pOf1wJwBH8`HrCe8WXriDraA*cG%3VF9H3t) zzw7X^wO_gX`M0Jog~K%#Vj;f3Iw|_l5nI2IBYZr}?(4OhRASZiw}Zqov2WYr01pqt zrIW#0Ejfz;>)1+v*Pdz_JSX=&Xrhkx`vLx=9e(fMzf<^L{N5>zSZAlQ2_Z>`14TC8 z_ML>>(e|B$<`A*Jd>EkVcW@RoQHNdnzEH;RyEWUjn#05%&QmbBX3zc#mcDD2C!Ks5 z5VBmWIYMmdxcb4<*7Z`b^gXXk-}7pY5}Q=Gm8SR+U+7W}AGlq4FZ+&FbBx$_a|)P; z^;CY>T-Emdylk4{Zwvu{j}!Y;Q#0Yx>u`l#6UCtoe7E@efL3#YSk18yW*@CGzVPrc zi*MzDV*)Y0Cy8ZZ-{wB!0mpZ0r|f@c8~8WKU$)ZhuSFin*0H#-=SzMe7N6}H_?zj@fvC&BpZ4CC)g08_{L8Kbe zVA2rMYNXXkLrKF(!%4NI5~+?ff|O4|B5A({X-(2vq_s)wkk%!wM_Qk$L2f|WkhBqL zW6~z1O-Y-PMlrSh4m@tQp#7Gltw>vwwjpgx+K#k6X$R7dq@74RlXfBPN*YbtjkG&y z57M5by-0hL_95*{+K;q9=>XD!q(6}kA{|T`!_*+hk`5sqN{T%iU&C$kFHaI1u zJZ{dT{rRK|NEebWB3(?ngmfwCGScOwD@a$8t|DDcx`uQu>CdF=NaIM?lWrj0NV%2|%S37>O(5Mzx}Wp_X(DM7X) zaA(2p?5ODwLWjSJ1!CEgR&CP){2%X+3wIIx?He*)!RDWl!k)C+WSHq+&izxktH91^ z`jD~Qhi6xv*^_s-CLZzM9~-1~6WHAP5<#L5$(uFoNn%76P8qCq7ue{B0W1y}1ANbk z+`ZY8#E4w&x>D;Qu&t&XQTTi8&RnSgJfVSzZ^cw?4q`FBIcHadrepgS4Yl5k?d(Zn zM5^cfO`DTgjBmh!dz#8Tqw6hqCc=!A4NzCcB76skyP*BQE zEVi8sK6e7eI6TvSl<-MnL|lEmr91)~xBm@e`PK2cJZ|hs;<{I2OqTv3k|(ivZca(f z*tzlZ+mSCHdy@ETi)hpBBQ>SGg54c|WeGw*xgP^!i|OFMi`jg5(L~B8*nQp6U17JC zOBwbgaRL2lle@W%lwV-)e#ieI?PzD&4_45@Phv2;L0>yb1q8O>z9}Z|D{7$yKI}5sOmW}3NreP9GrRf0ZefA#(`AX>F8Uz)s{wzD z2yA9?aD_M&B^K*gj4%586UBE)0b_vd z17Uo)0^>tjfqjxEi1i`luv`?zow+dXloQwm&24euDn*+(av_byTByISL_!)kl$cHU~ESHt)^KlaM z+Z`Au!vwqW&8G%pyTQ02JCMfTMKJz)!1x<3*v)KQ$NZ)h*v#@cIcN$G`E-2~HYbbe%eG7rTz)?Wb);Z=EOQ z<7qQHOOXQGH}a%CzR1swDyuttTyNDqXkaQopq*4hU}J(Bu|CAd-$`{!>YDsw%k$Mt z&83>eV!cI2`q}#?@>MDq*7ZE6x2`>M!*p$41F4o^H%@1}8_4}FQrc7Z^peeP6W>Uw zwqQ5Jtg+{Av|C5(rrQrs9aozXV=BEVM5-g$?eM*-okiQPs(hEW-?rK9U$T-^S71}G z?t<>;xQ6+8#tUiV0~=d1zNA!7V8<2lWijJ%IKTIXH1!X?)jw>x>G?2EslLD_mP@dY zJIJ>_c0>w>CzLyN+iLQgoK) z?s94AUwZ4Hwe3uPrc>HR#A2VX?>pLF7kG}l-s`23|Jdx_+Pp*CSg^ZcYFCB7ZO2DR z#Xmtit6b9j_UkNd6M^;Y(MZwG?kw?=CVtUd!?L~bFI2pZwyD5g**l#1z+<-e?E`Hc zctY80;uik`>kDa{5sPu?U|7!VB8%nWgQ?n{@J-05wA%h9CYr*dh{ba&64euidB=Rn z!@cu;>d3;GGRAGe1oZq!Fuj#R(4mvrNF))){x~l zp0n}`KAZv{S_$lh#F=~W^ZB_w7S638oLg&wg-p)u@|Ycbd7z*yabSZq6KjK%o0vj-?siH0}3Uj^6a7{ZzV4wAT z9f+UJ>-e5@E+3)VzE6$8XmF!hW=s^ z=Xxn{FLS0~H|I6STpHQ*vIJ5#;u{zp7e`VQ{?UMSf0s<_9<`x?{L<#eBp+1Qc&+ewQAyKxrRcpfj*zA>eB?@#Kjy{0xX z`5K!`iv_!B+4d^f<{gXa#=(8%r43q{dd+PhEfLtL)-M(8;UNWdgD=>8m|8JXS}OS9 zw8eH^jh~NY|A|~W^A){yeW^aC{2M}~WdggX$00==uJm=$Re>iP5vf+ZlC)f4=X72i z#BHK>JoZI8e8Hf`B$#n`96A1{rid12qZ zr?hK`MIRzlUF<%fAG3p3OYLD^__<8Wpeq}9Xx9pMeX=$+q7Qs5={0(abp5^FI-=c3 z)7~$$v_BJz{n&8-468TpbK$=2r3WAN*6PX2On((^qg^N1jrrDC;jj1Bic&9_7b5a^ zTp?|oz+PxmNMSeh&L7$+m=~6+vE9GWBvbf$fxUmP)o%XzsL!&*YUjXQFA8#O(MZ?u z4FbzHfpPG7#F5`N5{u`Sz2gh}eFBU{tv!cRX1*M4{d-R52;Jpn=1u>B-TWWeE&qYt z`XAVB|AF03EVgyntm=pt#tvTw>sg)nBynUKvFw@vGHQYMq(|qj=mtLvRU%CK~~E|1n$lthZhs9M~lASz|3dNz7TLzxDSNjYuszUcS=jLE!Z@Ve}+1 zXAO#atJJY?#LO0>w75rYDIrX5*(W zi+H$qn0)Y9r=Z5M8hVnLvkO=pu->pdzBe&dU89J5 zcgM)Ciwgz?e5y`Q5_2{Znv%m`&BzuJvy$geU=a!|V}^5vnmb=kJ&Og%&_j+36DZY&q# zxgq;#zn8rDWL>$>vF5sMqvu-=3#`{p+y9W}ap>R9U0%7Nt$d+S3!Qu2#VJPwHtptC zMJ_CH)=6G|vye14 z5d1X^h-5KC4$JxuQE~y-0`lTGXWjkca_ULJF54sy+4S{xDg&0s*X696-0ECgx%B#R zy2l9xHNOZxyja(T)iJhnPGcioN`*QyW~NuApC4z7qO$f<(?mE z$mJ`v(JgVEZ#hFO#;kUSl8i+j|L1dqyRw}0#790+y^8ML-5jZB1-tltH*#3e57&oL zvZY3TS@)B>Zu)N#spkZL`F9=s+|tM4yui-re}|nLem?#WqnrJr#h}* z*-sMlvHHXEn)bRt+p9L~WS?P`i`vR}UN+Q~thG4hvcUeY_IpKOFa247`GE1l^J@im7m(e; zVE3xvZ(_oB)-RAl{u1~*6#P8|{diz!Ifwu?#zrvP3h>`>9s!dqp+j}2x-U+-BiLn|6a%!KzQ5s<#5%}o^?P+=w?GX}PB$XqO`wisVB3bH^!mS_ zBen&?i{ep+v@B^k((q|Hd9NSl+kAZW9MZX@ z^GN5DE?^4(?UQs7>0;6)q)SPckuE1)LAsK373pfyHKc1veNnoOEPY9UP} zJxFRL{qZ4UCj;dVAb!Xn@Hg8lt4$2ZhQ?=y({iwQ5zwXfgs=v`e@-m>e((Nlj5Tb@ z0<6o4mvHJ1_C2t@_Ups1H2<2Uc^`iuJK6pI{d#1ik1haNw1?#^l)^PUwbLHYOYX3( zUZS($L+^rVE?SRO2LkYwXLr8IiamMt4_+bZ|+I1 zf)6Lpz6%uXKL4VZH#EyF9r!dS<>o)NliUQmeakip64{}j^zzBqjGlH@M1 zn((er)wT;8)IZ+q!{!IB?rOZ{dRM<}&F`OhHTcUoIr& zAQs~rIk_G*9Y-9(U+CorbrYm-%YrO#CVx!IDcCi{4^-HdVcpuDri)S&OEXJYsl3U# zh{d{yi~n13Zlmt#WjXAnH2vEE%dK1GlXDApJ$HRju(e=)j46|{>pbgBw&dwkJvk3! zZSA4mg$jx|$$I$mkH`LRuM zUScs0!|qMC#{v2F2lcY4dU;))JsT`18}vxdC$Nz@CfHew-G)THtf^jE=dyOYrNhU8 z$@v8zJ{;d|_W{`+39!C*cz`Z#$sS9EXG4<<5Q{M@_WE}P`->62&_{iV_JWcjG%!h*kX zg&(jwMh^M1;O|lJ_h9~big6I3Urp>b%h)ypl8XsGMC^HE!q4XA`4Lzfvw3md>a`mz(}H>=7iX+34ry`9pHi)R zS}z~i<*6GuahdzgvET_37g;N~f*kEhTCNCYL5w>~A~{Yo5Z| z<#iIIsrPzY3fC`_>?PQ3IQ6z-EZP1F){MQeOnQ2-sinzJp2=kdc1ZVcY>eV|xBjh{ zU&RfRMqLiEta1OAR90Z?H~gfqI|tTjYM)J(MlUX58F%<*QaNHV4om*%4P{!e;}#6VE6XMZSg#|s6D^Jx~jcTXkX61n$ja+X;KA&-IQ&;g53sV z>MR(4Qy*4(ScP+>P|qjy)QavLnzZsUl--?IC_{NkzUm1?U&S4>;2;f>HLWEbng z%V#|6n>@c^9Bx1yMjwsQ-U{>yt19>qpKam~@m&bVSWN@S@}f4V!eH^ z)th!>z|t^(!3Un-#P)C++QZ^O*`$T*4}^h(_%dLgH>^{BVa?mw*u^EJe-7UagGPui z1G2$4Z8to`_WKgr@94`RQgx4SVbBQiWkB}I!Md!iW4y5Ne(~&JQ)$;vp5YpXIvM`0 zzd1vHn|80aG^>7@@L*z@zv=QD_T!n*kI!1iOB-qhhKCS~bs^?AK0bVe@uAn~nbPHa zk>S+@yXo^Ajyt_<C39vaIN4&`uv9Z z;uz$M)co;M@vI}lC1NpVJip<&p&vpXl1{A{6|Q5fEe`*d-%igkNm*k@herrLEb!c< z7|&86zpZPa(G^`|l$v>u3Wr95F9X(b;{M}`m}LWhFYgG@Ey=c5x;u4PcqEd*qQ5aW zZ2vKX*TuL4a6P%Kif-M99n#%E$;TFWoKeIw@&%m+)Ewd$MT^G=0Zda`m`g{xhPe?)3TPl5_D^;k6lS z*nniIk#VUJ;C2eOR^~1nfV^9N8axbsbP(tQjcM! z!|Rj3S;6jg};H%;ri@VqO>Wvx^(`Z z?_mvz#d90Azl)+h)P!|*E8U8dPPZ>D&E0r6tdU^%aIad5n5978tX5=(ROOP3^m}JZ zSYyFoQ;ui$dP9GwLEfxy>MZ%LyQPg8xH7DXVE2lv?V)lW--VDjC#F@BVk>UfzHU7* ztSQ+=f43FCU>|?6J)DE_cSViYTBodov>*CFme0COXYas_b?>JBUt4l8J zboXPSQGySDUo5A{g%5$tYhrMNGx*DFs^(Olm9G&8|^? z34(Rp5bC({x?3ra2CPhKC)nM!P5GcAww>y>wqptHY)NWQEY{oo2~LW3hHcUp+T@w` zr7dY2?k05*?0VLVQTU5(-3)DgOK^3|AMd{>brk$f&>jvHTW6Gz{jW&0?*Ry9qwrZ;@nY z`I!3FHl|u$j_Q)!omljt_AP`sA7tB*vHLfVdAkELraj zO71DxjqL7tKpNkJx#be%mZjPDTE0&imfTCQ>-A3~MSOYADz?UG>0e<~a&N{OwxGWU zD^6C%EZtnMk6^b*u;ZEl&rQg&Y_8W=@b`Z4&+OcIdq_Xm>nE_?dtX+>LAWMhbG`lo z8(+z&uq)2>#=u-}fWSr;8>~1tehsq<=6X|Mt~Zdew((&>vlaF_#`vb6>-{9y{g69V z5nn#n8$oluK?1vAsN>5)el3S{y&g2z8!WKhSMOB#i`R%V;2QB4n(M^~Z2bkXjOFpg zxt>*De@c6 zor=QT3Fmr6VXik?uqz$=s>nm>=XzrVmNx%27mgL!oX7tB!ER@o>wSf}-Z;kE{Ecav zOTnVQHE6CU!CY^=VE6CD&i1;%`rvckkucZ02Xnm%0vk0%xl9elcbP4|+6OS#(+h0& za#??RnO5rfqn=IIUVRGboY&+O5ZbH9!LUX+-0{cW`yI;cX zVt>QA9`rY9Cd~Dw3T)i)ctyX!emu?AkEQi6*PAA=&7aM%_xW_=gLDbzdea3qlW|8n z0du_>jHU7H@fJm0;CQxQnCs0H>_)UaVfO*!faByMxF?2ly@oK?nuD6g_cAdKX3A4-FI_CKz!d!2WVE4jq$IqK# zTf^%IH({=~n6b7x-nH2AGlj_FT#v3xq(qqOEfMVQS-nJYZv1+O&-IoHtk3vt3Kp-U zM$=sHFwFIq5sP*4rS$`oSjXaA&kyE$%LRYadX!~tlJ_CJ?wdn%y-zULTOs)HdTM!Q z7g;R)dJ^Y)-C?e`QebZ{a6HI?G3Il<+%VVE!d!2azz%;@$bN2Um(TS!!d&kH%=K0a ztaN>}q92QMy?HR#TO+XdCn>M(`CP9u&Gpt2i!mGTr2LT?KG&;6bG@G#YpdfYKlfu} zACDQI>kWaq-Yb~vtrP6JzrD`JKHiVg&-LPn#p^!9w2q4WmVU0sZajh^WTOh;Ej`C~ zUwoc*ALe?GV6L}8uuGf&n%_1G?4DmYu=%{$esZ|++p|tioBjj4`9H95;fpT=p4j`=aJN4_|uN#$vihDf@+8@BC2(#}RISX}3Pc8>TRuJBW$4`vSa z*{x)&h<0)P^eu-9`Cf%($m;DHyA2$~m%-)(+qAa_T$dgHrri;wE7-JqAT&Y-*w}c5 z593e5cRo+jcKkWlN7t)a_dsae0vqke$5Wm+4-czc$#t%~ZgcbQfiTbrY#eL9+~;eM z=Uq!a+C*~@?qbN@Ez-ceI<5DS-qu0QQZTf!3yjJga+cTg2f$2dtmY1bQt5Cx_;{Jiiw%9LcOIzy&01fY&p>s(DsoGDyN3ieG0S^Jjzu=$TR!SKPELmzYl}m`{H`p=D*eEAWqTcAV)OT# zA+JWs;d#Oja)19`4$79JwzshFI@&p}%h2C1#2zCSuXmif+x~-~(zcU=tEXM5q=@It)X19Iv6%KifJt?rXX&-lNydw^$RIoVyBKC{G78vjNu?Mt? z?X2Li0()@$t+A-`&eH;$kkfHpf-JV*QVUk@#_{)Cg`8E-5Q{O}bZC?Px&+5F>=!4e zM#SUzTj$>W-Dio#>j(aQH;)1Kw|(m^@z-Gd{rUa%-RBrf%DWbd_JHFeW%Z$yu z{o?o=+M|5ID}vo_eHy^f?dZp7clD9U{#qD+7ezl9xm{#24sXgfuZrXE(8;TIT^D?~pC{W7@jdAC3&uC~mtj$RZZP(L)>|sn zoAFn&n^}9f2jg#S-yX)Bf)DARJ%Ar4lD`&-h@S-G?@zOO8gCJcbDA?0E1?#4R;OPl}NH~G&IH}2KP{&U3a zzo8l6olqRL=&;;!=?Bz!a>5shvNTJ)a7YuFe1hmZYtiIyto_ZA03Yv>j7;QjD|%X-CpdOr4xMlXfBPN*Ybt zjkG&y57M5by-0hL_95*{+K;q9=>XD!q(6}kA{|T`LmEpugmftBFw)_qBS=S*jv^gR zI)-#C={Tkac|7R^Qa!1Gsgu)0(n+L~NvDubC7nh(opc82Oww7Tvq|SLg`a&Poku#K zbOBTNxmMCeq>D+HkS--%M!KAI1?fuCRivv)*O0Cy{h4$fX&mW#(hZ~=NjH&hCf!21 zm2?~FcG4ZBJ4ttu?k3$sx|cMb)JSR~HIpWg?jzk#dVn;MG>J5sG=I6zu%yR-?I^m3%{4xIv-BmVfO?r{JxVG ze$P(qXSVQr7YL7otxgNSm!*Z@or%RC`ENdAoPvEx3%~cEh2LF>#f9HB*KI!+#%*7u zh2NXg!tbucs#*BmjaXdxJ>*^KKyDMY6fOL|gcg2xCpM!649v9fdly>x-GkUOu<(21 zSH~1~#f9Iiz=F{^h*h)jdro3ATKIheEd2flEd2h27Jkn~Y(@*e<3cZRra z?A*j=wD5ZzE&P5F7JeTA3v%ZnHlu~#-_yeHIbq@VeX!8CC$TMH;dkSUoX|ZS?IDpC zeh;RF-}4fi(ZUn7D2(+rE&QI3*o+o_uW0dQKSz9(7Jko9teS=23lOVj;rD{Xii>LS z^P>fCthC^bxsVFGb*#39-wO-=UcOUT5wr38{B#}R=Nh-YbT-Dq!tX_h%_t7u6o=%c z?#4f0;rF7%W)|P!d)T5o=3>OQgnApjYDEA)FVq86Z-4j{G**L!--{D_CEMqqFZH8> zMD`uEhpbOZ7!N>uC_(I4X^Q4{pVkVyyq!%xQo%SJ+F40%H-p7RXrUtO>dF2_Y`>+5 z{j}LNL31V^hGR!Nozl1g??OySR5agPv4;E^ZRIgXb+1IJw2c`mn9a*oy470Al*3p<>O9)Zas`2 zleFe?#NKytOL$Rbdc4S%$)Ah;y!xWBfyUmj@Oyb;ZR4b~A`WM0oQ!=p)YudjHL5^t zZy0}T{~D_p*YDBz>pgIc5f?!6CiXjw>+LS$FCsYnm1tbQJW+4-gxpe*Sj-m>+bMs_ zZxrQ=T8k$deSq~L7W2^En##Li^C%CM*rZwsQ+}&VEczSTw5#IW4w1iGDZf=A_9M%0%5RKAC=R74zf~m`<2&8-yTXST6yIpd zZ+^sLy{&And>a2e)mu}_Z~nxp$#2kL;bpL5J3H;+rDzXcl;4(7euDBf{D#2zm0|b_6YLZAC%uh zh|MU!`9glfpCgW@{8o+FjPlz$%5Uc(zu~x3o!E@>+ut;vc|d;K593)Vu{cgP%db(4 zefw#g45a)PM(i;EZKfWfn@wVy+yQsALg8nTUQ&JwCpNQj{W9e@EwO6yn?$Ud{H7yT zO@50Y_CfEy360#&D&p{Zcc3l`exhn6?xptHgE<-tR3d+WOIA zd30alCx*9{FKN66?V&cY*B5;@&pw=w`HOeUu#|d~RW}`$b*Np;+qenZSsh~gSvn*v zPb#Q5w>D3oNx2^Btpoq@Hx7XOR+m^)-lIVsN4qNgoz(7}6aqgF6*n~8_zLn{J!1EJ zXHPieI#ywK)Z2Jz|7*SVb$A`)2k3A0iS_ODvu5m4Wk0^Wak119^4sK(&5YflA2%R& z^$K@Q)^+a{d8l*3ASnm@MLhN{}!rv#OJ+wE0 zeYjt5%m+EE8L><5#Uz~SBrEbo%%Nf7AA!vqH__+|Y!tEcPhx(1t;hjs`-X(Uon`Bs z-II(}fo)DK6Wg{uzZnX&gQ=~-x^+aUWjKFpkpYW$sj;MA7`G*{X-Dq->w>!*VBvRM zaJLn)j~CyIpIU7rq(;ZL;d~+ARS&Y8Ltr7_*2HdqKF;WIJ>vy}^*Nl)xIl0lVrzGJ zV60KKmm+4%VBz7du<&q+y3S@?c(^UGW6t}V$`p!FuzW$|%L|;%xS(-6Vs{$Hnl64* z#+NUYJm{IT`57#f+@9D61Gk%U-1mYhz2n^Y0?dV)yO_1G0CNXoSFHWj^dL_me`I;# z3p>|4>|$OI3p;ltw)TU!LCv=9XDqJ^zF_o&a948)STMR1v8$G(2F-RU9e_6RCp@t5 zg{bQva5V?RLe!m!?OAR{P@Bqw8Owd(3tX?%xS6ZN0@q!L{dI^>(5&8@7|Yu_UpV{g zPB(K5ES%ky*aDm926ie?i1i`vFJF-RdI@*)09cSanpo#6^Wv|qvi)oiXZb?kc_zD? zaiQ;S#O6&rXq>k2d_4CRl`kOff7{)R3y60o_Eat}Q`7NV8O!}$x3{WXHm@Z2_4Y99 zVPWzf#J0QD!qj_U#tWXWf`#9GV8QdA#5VUIX&Q4qUrD(XrcP)u<(19Mjo1e z#ICE@(lj8<76;Cr?^IPD+gXw=u<-jhh(mv3Po#R82IREGm!I3jJyqpO`6M~_#xJJG z7w(z?#I|jC$e8=|ITi=rCVdL|$&yJcr{(!#dbHVHGmzNWsq5myV{8k*b02;EW)QK--OC4Q>um`@ zo1DFvZTdY{f(O%bX6M4SnfmVE&=kZxnc6k;~z|C^Sfzch&{A7 zIjB^wathYTHBi3sB2-R1|Bq?=T31ahvAvGG3Yz{jRnh00?hTYHHVTz<-gs{+SkYB8 zgxHuvw@s!;Wf;r-eb+ol{$+P{x#;6}rg*c9W+<_>y6rM0?%cIgJh!^fg5;Q@)n(7@ z?@SNtx@d+Gn`@B4G;{4EmM?g{RU4*}Yb>fJ*9`gFbntg)&2VCGzSEfc{Sm%bv^(#G zM&4e$n*6)|FVo36&YBU#u5bU?INj8Pu{>r^qk`o|i6Qc*$8SwfYB_605}Pw{k}B3B+#BB)&TuIGZuPdSb6-Qg4Y%oy}Np24dYa zX%Ew1JDaW09{yi@=N%Ts)iv<7qp@Ib5W9j3yDUXzcXm;OVvN0E4Myw*?6JVE1sjMc zBBG+$3y8Q&EbQv2Xrji5z4z#Ai5fMD8tZrN%(=UF=36JPf4qNu@AK{R@SFvH9L}73 z%DpqQb7vsiQX$UV!i!r;oXtdboI?DrJ67CE;&&FZLzujvW84Yyq9NpkcdHUsk{7d) zJ))3r#rBu5Zi9S_L$)`Q$5d}^%;PaF+^i&z=ODXVp+4l~xLHYkn2W4Z-RWJsr1coo zoq5PMQ>bSX<4RgdJ)4hgJB2#A<$6i$U8s`_kX5R`0gXyojZlB%kxf;o>o1_cO@q3g zfNWc)U(onfW4~w({p}<4w}r?m^`XC@zmYzai0r@9-xeX;G-{3|;i2ok`3m|Q>6=N& zmTEcKvi6|se%t~28|lZ3k?mTgno(7^TlVdC0%mROiS zBqO^%_rT8N*J6L8wU5qAj+K6AA@h=@$mZp(%t^C~{f+vU&UZTZd21o_ofKq^&*%B2 zP7(VX)l275nG4@oM!`I48L}@sHqgGkyiw>wG}h_-?0DwimMEB?r6M~`J4aim^EiPm z4E>ON(Rts)yw{c%Fz;KAY|n6;c0}#E0!!_s^GWW|D@!2EC)1E^IpvwQMr*s!v*_d4 z=sb1$v6q$_Fi%~9?9GzbEHfL|5?Fd{bpHF@rN1oeVE(%jS&!UI%bMdovIs|Qpz~^< zmw#GlMBKv^<3QdOETL3i(@pT(1*)7S&7F0aYjcVIk{) z)yQ^xb#LdBl92*S?M;RC#U@x^+`09_Le>{+kp0kY#?FdkU9VftjeKDt>y`{;4W9QL z{f+vJu7`rEy|4tpdT1@OKj-}Vzxtc{O@MKCxjW0Uu{^~gpT z`{wQ{oNT4XMdXu`hy8jK#PFN96f+e3nu?DjHuL`uyYVyhZu$&%^JlPIK7-wg?BU1z zvsDMAcY_MQ0)NuSqi#cX@w>j+D)S6stw;T~A2$%6xb_!K5!gT+CS>q3^G9<(0_W*N zIU>DqWAdnBKl;6bjmaUn1vV>k2e5ffS(a{iUNNwxmTY(qfWQuqjfA&bny~Dx46C72 zUX-!5ZI(9Vq}m@6L0|U$r^e14Ll|@XQ6hA0&ELB<|uo-^Lmr?)qT4_CA>G$tAEbZlJf5M6d8G zI2L!wr^}4dRDcC!!#56v?bw%xms?DvtkXQggokt7u0T9=$&2D6qtY!957sye47nD_)cEKZxw{*CYLh?{|J;i0H@bg+_9{+aDgadPP&06j?!t?;YbN{>*tz?U(}F<&PyWyz9(hwKf|TmEEONvx-db)7dr{k;P9_dK${g1ukYSuL?Q zQ0y1{A*{a_kQM!~SnwJ3Z!Ff|IIO=Hk$npOZQWca(W}P#TLiCe;Kq~*BL-+nWA2sw=u5`ud%nAzYE^a#c7|Kg3rDph6i08~{_Rz+D& zkY;0blr>P+MCpOj6XlmEYoV+yNR_G%%DO1)p%ibd_;0_F7y<~7w-w6PD8&n#|LGfv zRjMxd|GJ{=hO#@#9w>XF?1eHMWp9*yQ1(UH4`qLp15kd8G6Lm5l;5Eogi^e)@K28< zHXDZvJUrqLx1924xh=XhEt}V^NMnIUXg+Xp+YhQBFcR8RhqaRH>$*oQiT9 z%IPR$P{yJ(p){kMfpR9wSt#+uo)J&l8S#Xi5l^-m#S>{N70mR67t98PS3JrDlnYTN zqFjVB3FTsxOHd}GT#7OU&^S0rkFMNK_X4c_lW*UD1>_ZD z^u~9Ve&l=)vlrlny%~AM8GDBXNb_ z?={+I`vO_w-_r4otVAEx+ZOkIk89gf`$y?Jw$jKF|7vzukk~tm+4p_z_eJbw7*@XT zdrnDl-}kw#D_C`XE8EL5_MY;(?#KG!5wq`mq*p_GIfj+*`+gGleQ$FPPF9W#w7Vlq zj!m_F}>An-xjzX~SJGs#c_I=k5ecZubfzkWvec#(_hgf^s zD>AIozVAuz``IfotkS;kV-G~w#W_t#2st*orv^PXX0KcAhYtho;=D&>|4FYnHxk*Q z1C}~`Ms%}#7cK#N#rc!SD)}K2{2+Oq}zDgvj?6Atzj& zd)-#B21ERc^FopBI=ZVwFS|$P8pw-U%(2Pytq0~?3gp`}$hX?alA5|;+bl^QpONKp z9fn;xPJDbO&EwlleMo}(P?upJl+#M`?KD$&ibCC~$FNCVW(zjZlg@On+v_t93-zo% z!#+A(SEBb3-7^*HWC^H~4Ui@A`yykE980njhJ7<;2H`AGT@yVvbG=tJHNE4+pHqPp>Wo=CDFZY=yjjI&z@ zpZYjC=vmBOw_QMQ6J&`WJ~VVbl9-I$ENU<8b-NJkg|!;I#5lXv`Hf&N^+N*VhaTVu z_@@F(^w#gZM&jSu)W2qp`V9Ej7g-W#frHjc#_bs$H}ib8JB%CrQ$a6b<^AoPtiNd( zHgd9aFIM7@GfbQngE)hK>d>oyQeVg+8ozgB@e99nuzhYMSy=zFd2tu|8x#bAC4P|S z8{O+R8S?D~~BHH5}(QY8@tyn>2J*#R^H#7 zd)F@*b8?BS?p-$?cPPSn5=5&d3j4@#gWBpBr`a2x@TQH+nsjid$ zrej#8{+0s$LeH@O)Q32R{iptBK$iITLj5w19zf!P>=7R-?h&v3`fP+9k``WKZmOnd zIp&ju?Zxape|LU=dkDi03pwiWFJYNI?X@#ThTB^*Y_wK<1TBr&Q*QH*Hdti#%!K)APf%{)^h#TQhnyIO)m2YPH7S`uNb|7 zR&otRtWiX7sLqYs1vecB&5PE?YzVZ6GJ5-b^l`A{Z+>t3QNQ(?sQ0L6V|yEh-FH3< z($87@R?mB^Uw>ON6!{vEsMw`em?x?Qg^M+Rbu59>)gC%zCY?G=_ zf&FX8q=#!CS&rG-BTI5V%zKJsEXXlty)@}PUx~+-x@nv38%FQCIOn4-h~8c?o%J=} znD}x{JpHpjEUI)s*uS<#k;m#pkDj)U40~?JM8O8?vmGyP>q5!? zwS_jS6V_F+bwZZ-p^rIL&`VhIb@z6hE)p(;Og_+BU23)^uQRgb*s67ogfj2E$X@F9 z@!&_mmbtamcXjI$d0iMAgtx#t$C>=Zxqj=az-};nfTfC=Kl!k*&!vy zRirjNTk5+RZ0OFgr}oUxCjXxv+kNKPiomh;VAzZnUOOmDMi7>6@9xL@`BWb7=1*y+u%6Pt;7LG`jR`4D2V z55v~(CH*kea*Xwd5bK*D*84K{1`Ivzuz~okC+5%q$f1RhL;V=N&#uhT(*IB7S|&H! zLT>hFSk?Hx(Dt42AkX;$44bmoF6gB^sU_Q(TJkN!Ryyf?Y%j4_UZWzA6>`)4v_vmk z`?f>v8_4LLUhJrYC3+iUOP@oH<04Yt10or{ z5&MQa#)7atnBMX$^p?R4d#hBs#D-|>S?)brY1>238p7D1uV_Rw;+i z2%A}<0+$URs!?@|5Z36U7`=z8Zxw7H9Ql&3^+q##Pc=U5&`ZWbzSbLqEQzzM1BV^4 zL+X@#trx}Ub(==+X>jHRyVfIf#At>!S01DxEU}eHcJBEn%st04tY&6M$yl6b)_MJ&yQzSMlq-zn_bNxE3MJ6+>{E@_Q%o?XN ztZ}|amgMH^k<%P{iH}#(wG*5hJOgW|DU9A~J>Chuh1x4$>rG`?;VmAQ$djKqd*L*O z&DvT`qW3hj*6Rmrz3Ipjdn@hQF0pqJV{Z!B8^h?GH_j%obSxG#e&`Q=h-KL5sZp3$4LB~`G2`mGz*^@>o}heBOXVAxAnM@xLh_6u?@b0Ne2 zQy)rX?ER?w>5s!ig&nsDT6 z*H2|Q>p78)UKeOz#;{8UIk#XS?73mZxu%yzHl=1`dn&^w^iS4OokaFM@=kx~y2x_b zp7!O8y$xcvNc?-!^qYRb9g+1M?`}^+mgLa2lP!gDqyFvbep&wz)`f#!F0&-gC~RNB z=$%(^M8n!pF!PAM6RZmfqPczFwvu5FEW0MDeWqJE`f0E(BuM?7W42Yu5*tGH6?fP` z?1&FosqYQz!nbw0S&}wvv!ye7y$W{};(?CwkSVkE7hl3UD}1tc)cXat)yR@OHs3lS zj2pGN>agDW+wdXRW_ioBBWm`vtzq;=fA~gXZ^O-v^n+ntNRUymZpmQSQ$4Fl^ftf# zFI{J{E^N6~T{O;;x0YdV-R!=d{(mAL6&kBcfVE!dQyTTF&=Ps;7*==-jFTrnarU?M z$dY3#+V`>JJOS}VjqF3V`A?_te*Mqn@f~@Y`F~AtuS?GVZWF!_2|-qv6VTXMx9Ea?>wS~)MDkW!mu6O7ri3+Tv3gIJ zImz`{7i+9^%iUh0L6#nV2`{SG+>~XjtPV4Ho}6lY_(*NPwzd%m0l>0NC`)2})u8!? zdOnkk<99c=|Cv6R0|ObBym!XK!Qf?vDnS#BgM3=phg6!z?I6E)*pMXgL*-u=8veCl zqS5rw%bs3*F!_`R!`Aj?_4f7}W_Vw7it%FVU$!l#h8!dq!-hCm;S~CA^Zx)O~+|6$hhT7SgGFQ zPvg0ZLri=u*TL`VH#)qLn2v?hUUH1L_Ek4DtRBN>#@_ZDwyFi*NK9GjxUKwtnBh$4 zDg3=@jkRqr1mTUulqCi^$6~EtqT&9NiTu{Y&f3|10`Nv+*KFC9%M2^BCh#@x_0!%R z`_L&7U+Ush?3Hxg4e zM2K~2^H#%2?z|6*+edLuDqUFRFUaeu#L z+@wB>4tIy?keR>Iv50V!sZd-Yen~wW88Anv>(t%{k$>3Spr-D+-lN62Fn8MlMz8%* zq|h%Y8{hANzWuKzV^^PV^3LxssXvG;(d*vaP0|Z9zxs|VlMLGrocS?ta@{%lLkwFx zQ~ZE5)%(|@mE3O{*g~{WN!z$d~<{BiwZ#@_5h zl^nI2=w|hf1-(a*CB1NZhp!y=lKQ~f`#sqEBcu1rh>ikF>lyV!^QPbAT>?M+#Mo;d zDShn!ee~}R@b4+`?@>mt@Ro^n{9YI?lAFgA*t+2Zg)uJIxR@};$B`vt@p#Pu$r$IR zUeKE!n2cq7X6KEB`uj7Zcj@i!S~?CyKCf_+3*QiHOn4Gw(>2V}pFo!Q?5jS`t&0e| zDI?7Ad%;wrHT0FO==w(7FN|LHdN*OqM9w$lL;aoJ+uJ^K^y3qm4YMX1uX*{{?|O{pPBAvTPHp9gUov(Bs|+*jcAH`x7gW+- z^Jz=&G{bgR7nAs5;{ZnOZ zg|de0&oZn$euZB_Zc1+?7IX8=lS&dBUObBDJR?ke-t&UIjhVys=NWtVa|U`2>lndjG=6&p3Vz_%#mCu-fgdh1_TGs3!b*>e9HZZ#f`9oB zvCD0z!M~RnRz7YXU6&au2TkB@7t?JWVcae=Hpt__Hg&#Xsm~;SZ|@{qYlw#{$dWjF zcFK9po!H=ZD$G#3U@E`-a97)ib&a^Ij9z+Q5aGzzvmqzBob|DM#Mn!DYheCxjj?yb z+Ak%s)BVef`VkM{A#vSq@7)|^)m>-w3U5)TsGI!6IY%Tn5_2#cX+1D{u&Vr`o)+?a z$v z%Ec&`piD+7o|I9k#1k$mm3T5mr4mn+s8r%f5S2hwx`)LRc97 z{!?sJNQq#08Vz5n+odLiEdp$XPxPfUA4 zwYj`sO#F2Iqi+#lzfjOyEz`&a?lJLS=T}qz4xb(@t)TbJqXFE_)h7PtN?*w#_v0^%B~t4+2|O!G@I63EaI%6JMlignA3G<$xveK*nOFY@Sj$FOBnT z3s3!2Zi9JFeLI#v^f6W49M~!fdMBaYtEji?XV_a!L2n=Q!)x?Ibp=-L-x|o0_@&22 z7YNmH+%kN`ajOX|jR$#d7Q=X`2=R~ze(+GRVL8T`8^)O@V?!Fo8I4~9#;-TV@0ScK zx8W-0#qK3yUer>sp&sU2SIoEC3VIu19w%ZR*HO^>J=O%7Xaaeb}q3(DB zTMt<_eyJZC^iS2Ff_hf^(pcXHz}8o=_Y2SN`Wa9spF^D_PXcbBz%Il3`|6oke;c~6 zf#&fxtn1(R73+E!|U4;JiMb=e+D-PpE`r8xi zZ)z7d(0Hhi@lXolp&^X1MnUg*jI+iVXMPMzbDkcXJbtyvvh{(oY+e)w8~ho)a{t!B zeCq=F_6+Jn0HasVUdBBB0rNP}1xx+FVSVtz`VgdGgS_rE1D4h^xgUyRJu8p(thoyt zs2|w=HW`ks1!DuPXOw-3{Y{PiEtp~DevtP!9kQ-sQr_S63VP-JjRThEh1?JF{$@bE z?0kog#fFIeoF4k-=?WHue z7W9%e@TYQqaoO*OT=O;R+Q7C_(3}5mGv{5;#J6v=MXdt1wSwL$V^(u3btZn& z-?{2j@U&dA-ljg2kK35EWNv8>6Tf!PVRaI)p{SP~H`-%YSmtu?qD*{f_Y3Maz_xM0 zQlH)XZ6f#Me7Nvg^?~{sJl(ggg1vvW@5>ch2NzU7yi%_QHcY|Zq2)rjN4rgYuV;lc z-vZkX^|~61jQ#bw*Km_|<@}-=Bd}j9*gNoQN$%zq6TjP3MAHe__DXuQZ|WD{H}P%w zH|iu{zfrLFm?m4VehxPTocL8;9DLS6L2rX=CVk=8up7tE2i2>A?TC8Wv7r9d1~$=; zf(y$}d#0#EARam~Hpug$`uGF7n{W{%ta*s~1hAbIY&dwVr0y!Lhek%F`+f;^vJ0|o z4pAH6SMYN7x32Krr(!+pV=-8MnE8ek#EUlF6j&?T5Q{c+2bRXK{MhQsj;#l>uHwND zd^Qq%_5^*_Q^AIMI2I8&7QGbo9)U6Tg)vToF)jk*7S8CE+na&06N<6Z8(CNO%44#R zg5EV4>y*ZII_sKLs1u+*|{(-k-5SUQ6y`&VQ^T=KKIgFSWr{EeQpmeaqM@ z*Bga3Y8}+5#lS`=*dVWco~U>o3CFCNx5Mn6a^dP zYrUxoEc^;y&R#eTzWY?p_rbN^0$l4&2bS6^kDa|}Z(CgJ#h_j?7V`PJ75y*_*LtxE zHcJ#2X+Rsu4*ccvql(aGZ`D?evrrSEQX~v z(0FKwd69tUKxQkj@_dU^VCCm*<{;}TFO0a>Ym95XxyZWmgS_s{1D3{v{Mh96Y`%iM zv`)@}bD3nVw?KiF*WY*rR$kW=6j*t`Sct4EKgid5iNJo!5Ay!DNWq44_x5w!@5J&& zx2LNcfFF`vu#Vo+e;?QKek}iDNw)eC%rzD>tUTW`_&o0Q(^x(*@VJ`nO0tAu<>R)e z#BT1;-?9AMlF!t~U>=nW?5B=xN05aZTEfKt5noQj!_Hqz74$alnZ+emHSx9FnrJ%0 zjw>k)E6<_BlQ(j_H(VD;1UR8L+$1fxVi5O*-o;7c8x3ztjoi@^-?L zDA(`TyoKF*(vck-bNlpx%+UFwt?TQiQcBOW+|!?0_k z44V3|8{Ikuc6WY>FGznYIj*#DL)Ll)Ho9^(I5lhL$+b7XH5WH+_zZUAXRw<-gWdcY z?3T}9w*pJX*wy;D>h9BUD$dOB`8h3%_+lHQR~`?gK2$O+Z4<*M_r2m5x4(ro6IoYv zvaaVC!=ks}^La~rwWj4k)+|OZ%{LmqS;ylIZ$l^XEmR$}yH^HSwN=5MlipLi`GLPR+l5}rwyc$Gs2MPkuW_uGw)Gi*>kb9I*0*yEqn}UWFBWN|4XGAr z%~8<%W0|&wTb|SSfn_Ra$2Mwi-HEI#Kimu|;Bt1v@}>Ni`~7?**b0N-7z??7zg>A* ze+zDg`gK=^<{i`$E3&Tg7{+Z6j+=1(I9EaMaMb%7=zRlvfA|c0cOmO4cI1B8jjXG2 z%SHcQM*o8GpPYNj$8E2Iy~PU8H6%To#NT=wsyzYYmghn*jWe@PTSG^WX}s}6d9B7v zyovZz^I!k80xl{$mLFYYx!=Ga#hZv}ouu(g<7|G|RsC!jxBl5{H2!!K@xPmI`(4;e z^)gQ*R*~G~ftA}pdrQ55)jB<#6N^i$sc8uP_yFp4H5S!=TA}X%*S=z(RPft0OJ_ZZ ztgHBSTUeE=eb&SejZF00c{kX4h_OK)zhm9Ia7(wD`0d;C{pQvSw&pXe+-H}E4Cd;l znfU!N7yJ@VwXhyW8(hU%WqlVe8uaF*=ldN8y+@FBb!@)1s&U8Q;S@Q(iGJPh1zUe) z^vdn6l((9u#8n;%7Pq>WGSpLSF8GhH@bk-A$UOJDW zdGYY=AVZbpDSYy{zx^`nw6Ol7ptsoU6^01+34EW@-rBU^f~+TjrLive@6vC#7=AxA zmQM+2uDzfNvKBBl$o;!-Q-+~yh4K8;yUnz>iv?LvF|1tg$K(ZuYhx$zZSMqWy{iOS zPb=6P)}pUrf%{axN&7%;nmWjOhS4jxVPrcW!-$mjR-s}`4JdOBMV=UKuUcuhBjJ+$s-U|x$z6U>C2S2n!KU`#3xzAYt-U9z# z!eb-(CTHd2c3HvR0dXq~jUgT)%6e<3K|EYxY@l&QeYT@?q@nhbDg2!Hzy0b%oLyDW yTjR(R?(A2we3yDN{YF6iUSssi$L(F#8+|9pi;u15Yt}+uTvuS>SMYM?=KlbUQ*xyM literal 86830 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 XOIzrRcy5N_d+3Xs7_U|y)V=wCU({5p diff --git a/mods/default/models/character.blend b/mods/default/models/character.blend index 7324325a1197155471dcd0a5aba574d001115c1f..fca9f6597fe998d1aebcac4abe126b13099a5788 100644 GIT binary patch delta 106862 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

-W7H0l~9`+fS?&c5zAo?f_r6Ko;0 zu~^T3`MPg?_@B?b^!N{OGwoLpCyX@cM0VMDtbdknA=8uBsI*b(V?TeKeSR};J^{PP zZub9&uK!3n#{Pfb_5U;P`#jFl@4j@$H3iIx+Ct9$?596*C2l_d8Q4O8`0}%k7e04b z#_$(E^XPj{e&q1+XYV>o@bMwoLf(>p)2E)^`kXw!g%9a<=1R7Z_4@qbE2Y@pj>5Th zW3{2x=fX|aO;_8ymC6(UyeAJVy^}U_3s-t>t@$zEc6>VK+rQ)Zw&Ul?`i*a|>#*mi zfNy8M^Ap9l_ihy5PSS&}<1lq4KA6l;#-oTl+W0nW2D~T1x7~Q$S`V8Sc(BgFezM@^ zJkP#@Z^yDD@#&ave^G6m8OP6) z?Hk|Tnao&C{HK9$|Km>z-xizWzuzdn{osFk_eB3xCwXKt&eCC82uIN+-?$#6^=aQ$leU_&{Uc}FSD^p>e0t&d7?SXY02tYdX)>wBL4XP>=YWML2c|7P5-FYgWc_787;1$@js-`;`uBEh%! z+=H9tcfeQVve#`te!)FEC4N7AMLz!Evp#uj|98c|<0E)4@`}asiA(O>OFX1}Tao;b z{Tkoi=J>XSo7JHk_D0bMU_8(KeNN8oFF`}>L-MNp>UDf2JHBq%yT6ie=ZjsqU##b{ zwzge%leF*a+7iLH1n=GIt!vQMXBhe?{5rLK=JAaA`UH>BbbZpwju*l<=zLu=z|&6l z5&DllOZXhEH1T`4Yu`d`{|tDLK^X&H_4#w7b0hfDyo9$O%bC&sXyOsP4Od&DGo#1j z#)W$I+5XU)XWm9$R^OJ$&RbmV?8gLPz9&t-BB88}OC7_sXfM_qsXb;H>QMHK+N*kx;o#?Wh*=9Bu(cZ5=%Z@Gz|R zE#l!-uPXJVTelY4!`8O-%kr1&S8={rD|f7h^@Wwom7iE>wI%yy`J?*9@-xj^uU^h| z^7U4&+L*SgHYFs!CeWy@hplLZeK;pEn~VQ>V|*32oRL_`GAg4>hVF8R)6$lnEa&6O z7x}DDTR&{|Svaa6VZOG1_-bfL7=z*MIVj?W#KQ5F`Qq)r8T#-azIx;2+>OIf9W6k9 z+&wW0H;$j8e==5-i$;`1PJC^hAb5t0pAlv77hX0epfe*FZ^6W-dj$8DC+@9R{rsT*|)8@d2N+n{%DUg-F;*E@UmVkswgba z8qPoW+$G-6e(F<~o_fwX0$Up6SDybIxeq_<@+IDkUv>UAx%WOZyL974yOt)N@!X|r zF1SSQZ`^y&(sDPNT(TQ4g-UyD=iJ9VuCIOTi?tc{gYdzNFIzhB%ooJ%?tA9*mL|8p zaM`xmFKe6O2S511f$`ed8Co9*b9~l^3!e1kzURVc*v1RCeMxS^!v){ixx_o!KKt<4 z$2@Y``+4V|zr>qu*c@=Ko{zNWKjRro&w1L@mbPDT!BY0=PnU2l?VsAUYl-*SkIP73 zzVOxOF7alZZL@y1|FchdoZM{xIk=h5KD+=o;pd_cU;2`coj4%O+s02g#6RKl&N@rl zX8VMBTl<9BmbHJu`DZWjwzNy0`Ao@U`|a0VwZ!;0zxmA={|`R+pv0~HZ-4vS1MOe< z#HaMN&$zWum~FE?j-Pe&ej(aI^)bWYiaZ+zyCrSE<3ds5eno^!GE%W(d0f9ustvxNzntFM3k>r1Cjoszb{`qi&W z`LGX3{Id<4f5N1&_kw>~7> zw>8C(?S*l|Mt?uN?-ykKun#}@${S=3*!KJX)vK2t_-uRWpU{UlHm-?rP2B(c4}Unu z(*;j?isTJz-`4i-^DdP3EzXd0&pv$lo_fq%F1b+YopkWN-+X1<{?W?bC8Ifp7ott} zkvHog9+K^cZ4nM{j-Su64}br~xw!qWe6kU*zi`Ek2$oIm{G4`t4-S@^W{i*2)A(w~KF{~x|I zFY9fk`d7+l`>fa6A)h4vuWTNZv01*AvHt$gzyA3RX`l64-RuMV%l0L7^k#hv!+-wr z8fe<#-CgI=I6SSfB%V<*9Y5RUAzgi9ZMr@{j+?_`wryo zu=Y8=ucF;=eZDu)x8&G|#lyZ3wz*))_^@X-GL2)laoaptAHMXl*Kd0J%Z>kZw9hfK z9is!G3E=*8;h*hU`|N|jZY`XS`DYvKgV8zLw>aUAq_tsnCD$AKLp(4%9qn5?9J93> zhQs>2p0pcaCt7?Y>;mqc$`_$BwJZP#t`i^lW11r3>xQfM_X_2xRawuwsHkmNTWlmV z;vLZQ+`CoVT$p*Z`=(NMyS{_@zns78T?fXpi)6m${H#u1tk3^P4da0(fRo?#-_Tsb z#r`vVxL)i&Empjr#Yp11&wW!l>_3Zy@rM)4z7glV`v{U5KZV!g-z&YXXAX##ah~4@ zT4q~DZ|5_TxQ=~q{o~ zA~e4BU+^%~H~TWa%C?5#ZKK-HIDRemZOSpn&xydKmxU8r z-$0*H-+dFTFX%JsW11fa#)fiHG&o+SCCh0W*1r%hK8+-;W3zTq{e-54^|9RB68K{| zrrCI-3B^HQpHYT=?i-sc7vhR_v0NWcqP9;tH zVz>v-Ji+_iuO1e<;@Di;gr+I|S-Fq>?ytx6XXP|a=?`hbhxx4G&!tHlMjKX+&$1kG zW#u$2#@~t0{K5M%w*IxMX?^@)!pd127_CbSX(*a7USjRCoTptKFVap}T7YMl=6RFw zMYzrwpQQ8h1n$hY{I^OFjjjm3UBdWeB7SQke)7e;L|;CGg>h9b>yIxc;>Qy4lZp7L zL_BkOe|_5$@ySHIlIUM0k-wOT&n3z)CgOJ`;>Qy4k0#&znCb0ED=AMh@Y2uep@1bMIt_#h@VQ-mw8eD_-;*< z-qB0iURelZchD-l1Ih<`K@KbeT%mx!NA#E&KVb21S>m565&>up;i zKADJD67j`E-1J7{19W0Di4%c;TmBV}Zbs!#u8@E0GWql!Jn8zy`pHX_pQ!vmRP#<6Y8a+8U2P=RsvU;Qwl|k(Pif23)#3{Icdd|rY=!)fCi2lGT)zF2E9Bp|LjI{`@`2TxE=Mq>CRV@Mirpev@&0lKm&mB$iHHR{K;kVNl&K|{Sh9HX4@pG3cs^R>7_{#`5NA6p^+qbuZ}Tp|Cy74lCllP~-y zfhV9?u1CqQ@5O_i?w`T^v$&(^A_>*Lc#+r{)xLI-*x6Xl%BU`Nk<+O( zoxk=h^L1PoNvLb&qCgMSbgPr?SQ+vQt~0hpn$qtwT_pUPzU55kw-EK))fY)<<@qf0 zScYjGvvBpIzxMw=}%%Z(iuL{!3?cD)2&X{Z)Io)e+F(o%l}zo*^^<+HKCsW$Pxi<9z&SJ;AU$v{SwGW^1~});V>;V^o`c!$R)H^$o{umq zu=bgGEYCD6&u6zW8R<;3{xjtBOlQ8;^FqKJC({XsWf*7rW%#|^!3-~TFvHyrX2^0Z z&oX$INnnQC9n8?4Wjc(1xGs`#hl3efdFET4tl!Gug{bJoxcMw$p34$uc!h%*S{d>Q z%6yigjmO|UfEi~x%P?+rGESIjRzK^rXZf79MZWY!#O?gX&JoT*+H%(`Zn+`fTCTtf zc^P+(OZrn9AO66N*ESnlugMq7FSw=L?w03%zJl^$nY)AXgzXBS<@d`^xIDscY9lG*>LqMtlCYJ(n{~MI zgspreu*wj^wl|+hz$dQKGB*ePxjg~%X=rCFP07AxPImjDYFoiCmfbBI4lzd+$I}b}8f9o?sZjVVMxtTKqa@oX=XBi3ENuJqmEeGQ--EKDY*Mc70)# zu+`Jo7R$JDQa*sKeE4iw=k2a6>nCjGqoDucJcjejGS=<_o}F-Yv7Qi)T>1jTA!S&W zH!lf;GFCn;vo$DBI4ooE?LisB3oM6gA^|gQ=^UGtP@;LU_WZFCaAB z-kyNvLHw|cU0UApLrGVd&l=5ZJwDymOY+$dI2p?F25T8@jj&yBNWfvAhqYTmd25%j zmC-tV-z=Sdh^`FAC9vp4P~J^X+J{0XaC1+3CT^BjonLi)?lHHxbn5-wXL7H{H0~96 zu{_hcN8lclF!z|;FR&cTGtRnMpY9#>dFHbmpJDwh!+x+oyjUOWrG9@6ZtDE|adVGA zy`1}jt8ueV>b~sDS-9CZ>b!jR3AkA|^>3DAoaxk&+4kAEx8i0WFT~A0Qb%PUSoS>J ztdo6VS?c^uXFkil0QYlnKLhuoe6i2$8^=JLvaiG+$H4KkEb&L2upjIX`$fE*iJNorXxuDIy5by> z_KE99;^rK&9OF#qT#-&$C-HD8ZuWtFXCE%dO}ueze2&kv9@6=vaK8jM+he;d$MSrR z^T7Gojhka2PMF4dW!)3FnYIr%@x326%dtG4voT)=nDa!Oa6B)@{aD;r;AX$se~yFW zWI2{6u84DvgX7`2h+C#zi<`K+8aL;V^UASte%SZxagzpaz)hOE5jX3&4mZ6cJkt;2W*=ULn`1eIo8?%Z@t?!Z`dBZY>+;_NVP(&nwWNvp5I&AE6rZqm+excMBPXFadM z&GJlV{%dhFo%OK3*WqS8tdHebp6#(+*2D6Aj`g#h9Bw|x{;(Y5OlLn>59>3#fcdGK zU4XQ_+_i4Ifb;i$DjGRwnTBG!z%pf)%QF9Rk$+hD8P_gppR|yC-#?A_fBzuG$4@st zxGp9j7;T-9Cv#o!qU_n{UW9wO_|NO z#`#_m{vYYYf@>Ti3fF@4O+&(i@rT>@iZ&B}gEM0|QM?d;qFe%V4=w(zUp9vpPlm(t znU-ED22u>97#J4=k7vO>7vty5GY6mHo}GKusi`UVoy%c-Xz;l(Ws7INlu4|ITS&3P zT?P&g4U-`x3 zm)-N}D;e%anEAtgyb%+9 zg<%r5II&9D->F{caiKI9#*^?M{`8sjH^o4TffNJdVn9Tl(+jCWSq`O)p}vST(NdW+X_*Bzu5~-E)UZSt)_li#Z;9C43m0c zXfM13_QJ(fFZ5^>yoEB=U|+=aLc`lAy>M)Mq0<9nz3^#HFLe5%Z&@Meh3#I4r}1mP zR;3p%{`KbTh2!Wo3vRfNkkHe&()wWBuWOsbjR@IzvMo!q`lW-eoTa6Dp`WKD{ydI+ znIul_8N+QFrWi;ukYZpZ3_OzsM%oMMdp`OcIdXQL<=Y5k*K&GcUnO>q9NG#AJN`G8 zz0l(bJuub_pXKyIr!V@J z720=je=R?M`p%Ijzq0vyVRDT9a}Y(Tf8ij8EG4xU8Ya>(#XyRI6ayg!`p%Kz&EJ1* z#5r2iAEQ2)a9=!GVihv|hIagLlhmiiZZY8j>zny#&-OfNLNty?d2dSI*^y!5Ik8Olrc&@K?q+WRU?2XKeuZ^%5np_^H7wVZBn+thue|#l- z;bf{8#`D!LyOMHBis7~dg0>NHeWAHj?u3d#eJ$54r0hsQoYbHk%lP-QVgUR z2r&@Y3m@fQ5U~==+Y1-^bUAw_8J^=4R;?GV=N#GOa#Am(jm3}DbeF*}X)k;*|L;Dz z^Np=N_kaJ+97#J4=r{R5M{=)>lR;?GBY_JM69M4{8ayh9Nig1rBBwyt<7$)_?q`ffn zzSO@^acB5T$|%FBmNI*x;cb*&IJUje>4C9cc#G2uoxbS%rV#YPc7B%Msaf*}425+1 z=_lEW#D%6ZE$z=kt=BBLE~f7z_s>;oFYL!h8cQ*dVj#tUV&HrRa*iCGDgSD!4>8M~ zBYRz{?~#E>-~+X4y>LDDLX*qG^ui7CFHH5qV6KPhgv0g1Nr$&ldg0jbBRf4X)(anS zdZE)7gU$)K@8C7nTJ41g%H7ceU#!pJx3nIkfo%0pQrdu2t)WlymO;H1>@e)G?mD(B$$kz0liy zOm`U!llH>ocWM?>z0l?rA@Mit_C?HIXn0$8dIKOfNLNty?d2dSI*HR4+{R!sL2bZ=9sMTph#m$0hHyT#A7d11ScGfz$Av8h?557P^MZRD}M2E*igC&};BoJ{pXMO}=)Ve-lsF}=|6HcBrX`#UvG4~+G~ z^POJk^hMvYLi-NhknbExrmiZ!D!p*>4G#~!&>T4)+V9jDZ4loE4+{tLQ+r{Er$PMm z<8xR()6y%&K#GAB1LIOLhmC+p37@6 zOzMSvANl#YrH?cG+5FPSGk=`=7b@-yf1&&`*q1Q9(C{`&FC6+eI8dj)nPou ztLCP^DF#vuq!?Hp18cVzj{kq~;vSqV+PS zg14kRGF)mg(+dr6qx8bD?S)PcjP=6pPA_!&V$eAOp%?aQ-D;~gpUfFMzAC-&V@n2PL0XsVS1sATKYwP%4;x8+6$B4wLY2Zg^IcueUZ{8 x?h@F4yK<>^m~ffNHN2FAufpI+!+$8gUt|6S|I@%iN& z)Bkruz9r@NeBs`E3 zq2X=adZE(;W4-WJrx!YX(YLJ7zJrH~?R=~J!kf$aBb_yAhpW;HPrfsskYZp=4D{)R1J7)PUdTG!CA#71(hE&4 zZF~C0z0m1_v0hkndZE)7eai|#FRYjIr|zJ%$8hPP3A;n?4)ae82^7tT1n(CLf5 zWre60Hk;kk=U@1?&DRT)V+_|P^HRNV5JQ%-<%~x}3oj`twTeWKG_M(dxcabMn_yz0lJG=OA2TN!a36&eKt9FZ8%jN)F>mco2X3O!}K*AjLq6 zfpIaQdLeCs!>;B13(1pKzMkNVu>5M?JAn;R_+Fna5ou$cBb!{_EWL0s)eHU14(Nj> zuY3{H3k`4U)(f2;80&>^aeATC7k$eLK`(4h@!unF-;vB3H!h21(8e_IxU7rCw{N~) zIM^4%yROaDUN|r}aYAY@j8TySDF#vuq!xF|oH@qudr+VQahAbu33k?%#m|`HsK#GA718e_(CtjBd z>l=i(_(R*%su!AE-VD8P_dTD!GV}h_ztGQisE>rOFJXG2;ceY|q0<9nz3|^Sz0m24 zzGa2>9Xwo~TgS`Ds6{B*lXJ3#I4<_W%sV${PxZnWF#|xV7Y?8#O-M12 zVj#r;Fwkc&%p_4V%)jsp@BZ7X8t?d;JL640F&GbI*P8W0dnei1563!3Hn}`ZFH|3L z_EqgF!@?E)3sb!?nCws=31MHv^ukGpw^4fG*#3o14~+G~V@@x0`l4@HA?SsbUcInJ z*FvddRrbP@@7jF5FgZrIKAfFBeeYxtKRzYZ3q3AUD8)dEffNHC10w47(7#aiAfH2M zdH=#l>>~Y7493JFsmZI=3)kmg=;ZP+z0liy)~**Wrg~v8*`Y2N!oG;xE7a zG`-MT$~b+|;ub2HdG6ay&+#>Ifw3-Lr?+SBKk*9*y$R=&>iMNX?;XmWY8^um*=Ug&3bHU5R`v=<(@ zaqo^ZU%4eZdEW#7vUI0*frNVq88_~|;p*#P0?#(ebKNN0YL{oCY$@N(N7<=r8%kle zmdEd0G#?#}=IYf3e)5PBnkSTPHLHzoxgAZno4r;vldtjK8FlAd<){PyM21tf{B+dF z*UPtEw)?eFCqGjzMbbzOZ?$xr-F%Gz`Y>B9p~Y&!6~64XQ5R3P@}*p7N7U;?)nc=e zW0_XF*($fY)iTl$t(FS4X7LC+T`Nn?(%O#gJJBA~TKR6}HjQRm`F6R%!RCuc$|dGT zv$yShZB*e8yUMUw$v39UrChgKFL%26dW(tKcDdLUV7k@o0%N^)nNf7`wq3792g|uq zd8*uQV|>|WA(BoB2J)qLu~{nXxOVKk0(BKyxXVYo5zyF%4=3=zU?$&|ClH;%2%~DN z8KEWo zH)=II40lBBaxLG*18l!sE7zkQ5IQ5Xsk6nF+Hp&5ne==K_-mJ^SSugublbP>0wM&i z9xdz0F)wH>JJoL1Svw1($(>P=NM$?Iob_6@QAVLAYR34K5I`z26P>8R>`tV=S&Rk) z?38OY4y+gfDn{8}qtwh5dQ*`A9GL)8Rk2xbktU+LG}>Y3I_2__XsTK4b#f(aeDaMV zTI+P1Ehgq`IXpOx&ogz(jZU*2HG1`2p_VV97nSOCC3ihEH8J?t zMpjjh7|M6?!d4H6ZDNK%JvBU?Ej6dm`A)tWP0i(GO^|Rde{Ccy2>q$$+rCF2bxb2r zR0LI7H^am_3940{X?CMhcMhoSbU^2Atfp2a9~EoW7RDxFxlxKRs7};ucPq_Y2ZJm} zC48>lp@ZYh&A9>R=0PykDby&zeDtboa_Bj`AVbK3utEMzvnQsi-KYa5P{wR`ie=2_ zR2x&+Xlsaer=~h(ltD6wr?qhs^MT7)kh)O$71U$s1&E6-y*7=~&{}J7#hDy0yOJHgFZR+LA{+8$ox-K()i2Zm$JSq|Jdd zl(fgKG9XMU(9Pd@`IQCFsPu(EsoVku5>om?gZWMibk%9iE6H`xZaD|6cB_r)P9&3_ zQ<4BtU5d2`Y_cz%oLgHG!34=f?J8MvfFVI4_*$_Erqt@X-$r>_)@4b$3BLAvaKR{x za#3$4=IY?cuLlw07pok>eaRs5j1OAe2NemR-jz3b{Vha+a-qWJY=Lk z1K!=}NOSpmfqAIciUR~2l}vzAk|j!5tPHVI!APWKD@HcPEM-zsU9DG_{+7UKm~f=p zIAWnof^eR$Fby2X)ji$L&w!6Hu~wauI*EJ6Ar7QVSgJJ{O{bDCHD{T16l_fz0f3|i z)5x@?7}g7B4NPAs#f7;_4`PU1(ogpeuuCWzA~UjN2H@-kXa``0kOEj?V5*F^&Xm-IAAO#9wI~^d5>jmOD4}rjiFPv=(iUn9tPM)<$2QSk?q;xPvr7Cm^ z?V95a=)Wj55RN6FDr$A+0pceoTqmcb)hzTyRR_v-+hqtcc|4~&NV5u!Kzh;;P1PM3iaAg9y^3r#pedW`Sy(8#A?mGBDC<)>xg0 zn3lr?1fs2es21dKoq7|xkY-o%)wV($g+e(Z19jwtTeoUeu;Wg*TC3%hlPda9%Bxv? zm`q;~SJGn5VmaTy+7->hElnAyAPMSJp;rUHfSAQ|%?8#3gia@q3>Bra5~hXb_ygSy zt3#fxPv<5h{M7QrUL)V8fJUrY>_XXuKmn*C2+(vMY7@m-E?;lF(|O2PZt4*I!!>7 zYfXU?L5?RQjPg@dDkz-FP?9L07(xs}gKdjsZseh(M4)HN$p*NiQe(LReZB>4bcPyf zS5#EyLZfOH9h+s~R~ zL%AfmXyMWbnxK#b^)5!BkarxZNI#jx4GBVtgH`9GtO4`n-jZ}QhIAQV=aA2V8Di2E zq&gWx^Bz1JSY?49iXUDMh0604U>ITuiOxYfVV#7WPh!Tp4{Yq7vCl z9hnytNu<(jSC3*Vq)SD(SqB&ae)(9Kil`u?fX$ARCRpb+Sz#7!x#YX`99Lkq zWU*?)Jpn16bMwto;2G5hlz4O?NF^CkmA15w>o6B8U_1rQ92+J#crcD0bfmg=j|GGg zD}%*6?v{O49jLi&2Nb&&SdwnID8eqIe4rp>S0PI~9Z|GZT2kkrv;^vyYT2xxBrQVL zJz{CTxTUztO;@IP$rXEDa1rQW^L5N)8+tM(ir95Cgy~alk`w6?F)J!LgcJ94L*O2Z z>fC^!MudJI5OH&IV6mLTtYhb@tT3y(7nm}&WUSwEyNbPw(h9T|EI<5W`Qf)9 z`U`)i`BR9Xh_v}5&@>^U2@4OX;{(8vP(D={EOOmZ07;S=9VIUXftM7QwH{Rd;(RpI ztVPqZbHi90J@xSp$SHSr>F$yxEFDth-*zPL%>=xmev&X zSc}SrT}#2J(uMAa&7!Lz(Aqn~HfzdSLA5!ZYHTFQ#@o{c?676+kp*E5*2q)qkoshx z;9nAwhRGGN2@?V_Sd>mxwaSqHR6emSsHFQk4R<~i7l=>?5PNm06~4&w~L51 zFiw^QA>~;}V{sEvj>0dZsftL`xp~QqO7qy? zU^1f)C`5 z7|%0_(QMS_75Ahg=>xDSaI1|b$qr}Gq?^VTrD+bL1q!|Hi8ZBIYvO6yBtu>cAl9JW z92_@xQcUu((>LD2986COMhq|xnqHbUu04i3BbY^~xWiV3Z7P1im*-lPpC#TqBW#XQ z5llk-6+4max1wwr@2WTGf+ZC|pOdJHb;L&P33YyTahxu;Iz3!(y;9wyUMN2wGet znvE(jHnj`D6ij8x*RiTvw4*RxQKe9!JcE5WW(3)7g&-Z94b}Sjyx4bysJcAe*S(j5 zQ19#x zV4xtfNu9E&Iu-sm9M#Qcfjt%V_|J(n*wrdJYjdzF&Ew`%!njCaWSv+pm~1s<>TSf zARu%>UGSN$mtiJ_;myV50jyA{z*K!@^tnP;A~Uk zr+}o32&Ioe36(f-Js}hjLnSK0UPPV`lYXf>;{q@}NGu2*(K=)zSSDM?w1{mD1|qB_ zq6Pits-i^dz_>=Ed#^D|tM&}GTi9!1qqRFKie#<-(16YdaxPyp2Byb|IePS&x03YTy5|o3bf$d~@wl-74Sf{ zflMPy2v$+6z&dWTOmKV{RT1VKs(4uyGgwZzpm>m6Y9Mc%Uz8xaRKEaCDbexRiqq7Dv3kdLh*}6ktVo_P_#E1J zQATXN2(il`60oOc0NZLAHf&HCgk~FCAk~&_N0Ji^^mP=(%Y8a&*wHCKj9x4V&X~&z zsk@QQq9F$Jkz>d(rnE6I^a)c*3nQx1{WwP{I{}&xb;xC!nuSk@ok;EB`@!EqPpEae z+!gk$Cveq<>afHv42pHRe!lc*tC$VD&!2)+)EEut)z6}92unNmF}LW3ryDEr~* zr|ts_O1MrdVlP+%^ddMk8zTp<1K^oOYeHV7|dB1PGr- zx^~DFkTw7lVGhqOrox=9VP#P$VBV#1<>%Ho8r~+!Q@ut}xU-mGfq~pqwIRowbsn;U z&Ondk=_)4$A`{g#k~_~htFqx%hLnrrFp?H=ROXI3xy-v*X%U%oNB)&FA=D@dRi55q zdBb81b&E8NgQ(uzVFmT1)U$&l<#Ou)^etF9php}L4y)izEr<;+^Xp}UOK2}Ss1u=% z0cWAaPlKJvx~3d*T#k#@gSnY$ixp){rji3{CCqD1eA1@rBW;|VQKiKxi-kF+33HZi z&?w=A0k)frbWrQ8JdqW{Eeg|qt4jzGVuo{Im(3zKBcfyC06jMg zJ1h=Xun)oM>2w2!gI$e!HYvHfgDO^;*8Ajoso9UOp(w_IMBb(m7Hlwgp#d}7o& znw!uh_ss;jn`Q0A9n=&+_j6nTZW?@45l9i~@}V}k^#)F&vL9A(1#k%5n1MMsE2oJn z8zHgar_e16KP^xNsN__G5E z3waW`n2Snd+KSrVKvdXK>q#?|%yJD!C_;dIFo?>7vS|P#q}a}36UAUg#9_HDN~o%J zxehEx1=+K=i@L#a86|KU$p9c3B0vQ7Ei3|^1Tae+X~MR{b>73mVmJl=0EK9J#Lg7+ z45sRyfMo>+0-zt;Dutek!I6@IUkU2CWy5(B!)L>E*LrbwL zhGStD*apkSjmV~O>Q5wokw|(5E2c&T`$HFm4g0`s)KoKp1h5QfA{En~I6}b$0C-mR zn$VwMCxF3VHY)X^(oBS14afvW6|xbjlNN|8#GV0lLtGZPf0m&%3l$;^M20DZuLX9` zTwLlhgm4EVJNdJVKa?$S&7s#7^bT4*WPM>*%4If>d7{&nizt`F;Al0+IVR8nPb>kV z>@*IM@-t|&PFBmqIaEyZ(tc${ok$NWNJcp7!pe916v`C%*0kMWKTSMvVuJa&CN%&@zaBmVw1z^7qBL_L>tv4X>vj^sz=@+0LKGkL%#c-Bz^+$)La2tz zN&?5UGFR9Ypilrf3U%OG*KAdb*Eox>4$LT+PG*>1EDxcn)`^7CBjZ|Ax2UMj?OKqcwlLZrfO@(JVl(EfE;6g)(S**ybjnkB zkQc1Y)e`-%=wvAy#!5}pIX{2rRO9EY@ZnnTIhz>Bakd9O~eT53aRB^^8*;( z4n;k$$b;J2E#Z<Ls0-2%ha0$6!BZ5gSC8f?LvWHY z<99~1s){5Ebahn%U|M92*qA^mcFTpr5Q>)~12DBG*n|&td0qjB?u`(k<8Kz(zWPX_5nwTB_!iklRPpT-1URQ7!VE znf!mcnTMa7G)GX2V!<%Nl_en-j)YX>RBN!-4uQ;>B`r?%jvk$tQ$08jXq}jMvR!d~ zX73J3a_(hPp67z}D=LfYG6sew)x@G`%JL{fY!QM7o@;bqoq+nLl>@7wd-x3DM^+&L zEL9Lmr%+UVFpm=wu?%2LVkzdJ6o9gN1XfD5>0Eapg3io!4r>?D0s5^q!8M>~!Prv7 zi3v|IwDxMF1+PYGN9euLthj4H{WX&YPR8n7h&6~zgaXP2*CJd(x|$%inVp@gW8q_8 zm3aZ1 za2y8~_f}D1Eh2Xlz6uS~D z2#D_$Z|kXi`x-h+N-oZ9Iu(qQCJ?@%P;7M$!>*@jauH$*;LDveIkpn~kh4g~LniXV zMCfmHRs@-dVWq!dU#crfN}g^u9oyz~9i$!s#}`q?uuE%0+kry}ehPH!Z1ZQDKX3*y zUmXB6=fm&<=1VD7Yl{1w2^vuhKt}tTbFN)@@<;>CBKaG{z(HWZF`TO#P+TGMt6Wd$ z3zy+E7!jooi*UCB5b2Bw2(?oB3__C7iFvqw;dlqcrB-W97+{$B@r&bh{EB)&z*GXl z@-P9g4Hc#^eIgzqfP`a!;u6q@A3GT66dG{s`KI$;%fmGl#)o`U^x%9`yvGo$@*&iX z-C@3ol^b|~#c|=eq7X2t#eJA_An@@bCI{ON%1|Uyr(qOIf%wiL32uEsj8=rcg4Du! zc!iS4V<3(%&c=c0G}alc*gnB^MBX8Q4u~POPyotC9-DW#Sb!PHIe*l_`2e<$wbnJ* zneaTn*1|G^ExuTADaC>&Ocjf=77l%y-ht`Uhc_LdDRCN@ctgQw3MCDibjfYmkTYbQ%;v zGVGjEjX+Mrnua}AmQ));6&p@@lrT1o2CJ*37OVH>Pzk(Kv1uX0WL(NwvvOvpYoRF$ ztt`J5kkB>*3s)aSpGff>d5+PWaYV_;?Og#epx}*DX z0=YS?PXW}y&YNMWZGt`4%KMv*sVb$w)Kqm&6cu`&OI7HVx2)wG`RUqxtD>7h(PQ9% z>|FnK6LMdYo;jh#Fq2SlUFNXCz!1s zJ*sE2mckcNAML{iIX`$74=R(|)v%mz&mCm1L+#~F*}<(K;|0VrKz-;$c-zyorF zXcL}Zg1m-zDXd(vI~J_cLdxJVmql|OsDtzTfv*$|oAVmbv4N*}JgJ2^b0pv}E;ZA9 zPX%6GfT(1E7E71Igk6?=7%Hg>@ED!~fX)Ce0bAi7>>=RFO$>`lNolvbX3B$*LKqCK zm_@+=s1dV*li7J#i0P{&{#Fzu&a}y0J@HZ}4n;zc&(GobIhyB>tBh|Zlwo!0!8|2Q zF;}0~;|?CMb(J0o@jVZQ@YhFEB4D^8)Jd1xVUArCz|oYz(s@ng0uZQ=v?K+~2VRgo z#n%#GJme1=p)~d}$~uljo})w%0C>kB#fohiFqT$}?yXR;8tlF07mGpc7%tW$Ro-^_ zW!NZBP16K}cR{h^E(CC=d2gC=6F!)Qofgk?KOrm<^1^K7?mH8vd?x2 zQWYl87lfl_bJhll@x93BkqE_bH6&@EA_#d-sW6|A--PVOa~rn~$Zwo8E}Gs2T?wuk zKsG~}Ndiz9X@=!-8(iP44CDiB4@?Ay5eF}vfH|XzvW^~&T=e|%8F*oUI-|TP#CfwF z4=18c18#f@St=KL(-1mfS;BWg-Q;^*CRfnX<;c9!;~Q1(OipwNzPM_L%fSwW?VrvC zr5mkOCG=eJEh*H$#N$&2haSkl_|ljR3~Pj2mDpu~fHS&+hc)p2?i@TTu}QHQ-qeKu zwZy`5Fv(Ek=gt+6kk>g-8*i7V!5$!sRV-_aUNRDw(-w?H{JP+&oUhh&1hP!R1k|k+ zk`Z$2L*|HA&bSua@ce7T@h_h@a^v(lJ}D*elA*kGs=f$dF4%P(pd|^yTF9Y1SCtok zXF6~Sz$;ytHW*e9RpB4vp1~7bnXvK#1?pEdslI@vvTQG;oSZa~G@!*Z*$ZtD8(*AF zq{4hD9RynqPfUu?Jt0n@DApkTphnPU4iI^6n0t#Mo? zK38OOuvCEcyLXL91yTn$F7!Lqx57GQ94|wqhULYvIbAL)t7yW*;TQM2AWQ9#>kr@D zY!s`|gv5WB)4-^74NWP_#g>|LPZLtROmhhUoIDefqf%KK0`bLTI{gFtLKJ%XrIUub zq#$kgDjRtoZf3fySS-!ujC9Jwf4mgI5i4z}*5`18!Qj-^b~JA5Xj-0_rE%&Fu0krc z=eZ7Pd4R9B&X5_jXLMS~ZlmmM5Ya)=tqQb}=R75s3 zUF^j9q965T>bW%>TS7nJS)&0ayRrn*{Xdh&P^NL&(~6Dz0{Zl_Q#imH|OX5uhd zR<49QzhfO$czwXjtU>NRjZ;7_XXPUn9!r4&Bqzp5 zQ_f^^PmbV#I?xB#GD%Q7?wnMxFYJQ&okM{|gu{xbAEaOoQWLJhDtxIM+=jP&J4Yb$ zLMg2YG51z2n0{T!4Cn}OijOmZA-I-u4_R%xvMxy{M;{kX>fRvI6fvc!sOd|O*>?DN z8!U(pUb^bdiAO7n^IWrzJQA6tI@z=KWt%Fmg{dQhExA#+m?$pLqqK;kQjS#hrFcQ3 zU>d&6F!#YGElGSM1EYgqlz4|=zg?_Qi1$YwFTj349tvuw7Yg2>b{X*)`#T&b^H|pE zz$To`4~_8%Nh_vw^l4OARIiI6OaV?ro#S_>VICU-@fbskOB72;WRXNvl(W1}P#?KU zL<{pEIi_Nj7}zI;iDDw?OQDV-hgHF&Q>qWhJ`KwiuV?6Xi~2i>A4hSpe$}{4WKwi7 z>6~+;;XDheN5c6DDe$+lwHHHvNA8olO}r3*D8I@AX6oJ+l|>5*p>h)MnRO|U}qV3&cML~9fbgDHwS0P;=(LYN2n1~)hgcVF?> zRn+lEkJ!CrbmE>u>W&^Z2YMc;I!G7(F(R9E$|z7IDX0F+jB8Gikj0xO^vvZv$VN7c zUzDOdpPVtOa>e$#v*w4~orSE>B!~(XnDcxHs&P&~>wzjEiL;!qct+^p4pRU(-Eerv zD-3E)gFd1Zgnd0e>j28ZMix7K*jeG;gMFfYG9^pJo3DfAAR%Ec^||d{!KcAn5#;FN zsA3B5@4z&VFR#$)1n6t=REl5r$zltB09t%0Kdmx_$ieah8^@|8LShJKBKYtRQ~$Xt2g5Dv}GUR9Weea0E3drZC81#k@K%gmT z=x+B-<1V-8YO_QPBr~CP=#t#GV1Qzw z;ZG1(asR#k|$B$tA>>ms<| zlddQ-rL<0&K0z4#f;Hhqa4>Bi`A=7%9PX#z7==f-N$rPjSg=R%2-$%+)<*F*DNI}s zV8!EGT6B#T)3#ei%2u#0=}6GP$u69t@$x=+jBYQT51Y`h_N)lf6HR9)tpnm+u6s{e zy7rW;1EF20Ln@SC1kY}4@nKAT5jNn+qqjG3!Plqo5*~8VCs1fIP7$p6Y7*wF_JzI# z#ip!vR|K=+BpGXykFx1ukVK({;K+iXE+oW_F7}U5avLx%xQz`oL~aiqs)$`EfKIQ5 ze;F*_IP8MkEcIF?XMOX6aur503SBhJ03-`0?Fh(X`YA=e>#4H9)j&_fo8LwLOQe}oDHK-G<608B5=62qn7m0wfji)_G34-SYq*gx@>6_|>|@PVr; zj4N@RD}tkCLY5`qiBxFk6e7!)7c&@T2@;TCVh1LW{WY{;b@&W$Ck(Nw9&y%y*6U-K zF(|d#IA8zc=QBuDLU&XNgu)Y!-BP(rA6$iVRJ4SWnq zxH+H#WF_C$mUngGg;eW71>*N~;Dd!V;?_3S5)@jCtA&F~VXux?nbfMCE4A?AHJOdN zOSxsCmNVcl+frX)0kFrV@efG_*y|yp1;mSp&>*3b!RZS~WtuuZmgr!{wXXIiB}a7- zkWYYW0`~UWUpjPwUg1>-LoQwfBFh7R>QXfp>@4a!^9fr}RvSl7;E` z7I@NQqtKt=Y#7e?MdldbzEGP2PVl);J66MDhLI9{yTRjU92o-W$R`jOC9UOz*s6GK z1WI3lFGvw_dkCg&cvI3@uM+NHKyh(10aj>~If+fEQfApop)6X}wVEt5T1&A~CB)Q$X*& zZAAKWohso83yvZB*Gag-upelZ{)#|8gl-DIT-!GFFc2#eG8Gb}zz{A*cu zqKgf%KU?xgep~;1(`W0AT+0NR$SZ>TM&he zV*zU4s&ZKjuPul%!Qw^&EE!O@t_2oS$hT>6*JcoPZ4!}uP!Jk-Rb%d8xZi5+D}J2n;-UPJm!2e32esB1evBwBUOE z3DYgA0dZRF6Q(1kYR+eUvJBCZ`E{OLkJ=UsNo>YqR8Z-`669eH5~Z0EKOq_o5=2C@ zLbb8r9JVa=yC^q`K`vaPmD!3JQTM_@w%D)bt#KtGR|y+V)XStq-O|1O`lS@#=?>bk zCv!nNc;nJ}8L}W^u(JdSz&W*(KHOUxDXy$@W=RFm&k-_lR%VH>m(%Pp1vxU4!Teic zSLu+Pxb7i&+C+bbnyXy18VL%3O~Xe8P66^IVwSQLaU|$Zz$-FA0ddR-6WneiC<09P za|qe=I~JT%xj_oW+ST1}13uyC4QiU9x~2OA;RFhb98r*_Q&&LHtf}&u90kSDs-P@N z1w|*I+KkDEGmam(Pjf0Ls`qImTYO2qFO5PAmYV)VVdIH{s?hhBgC5Hx#QsFxZZoak z1kaBFF$Xgh+c74J!yy4NBN7nLSOWT@Dq3`tlx5;bFk)vN5q*qhERLNsHp|qD zv~8La=+mmnCIu6v+47J|^dWk+56SG|txz^KBHK%Jp4rK+gOwnH57fXE#0V|Rf&^Wg zIF+N?D|>Hdckrek&bw5WQb7+WL!u4pb+LAZokgb%FY zg_j6cEcoU@m5cC}f`|tISlOtmUB7K7OsGl#@V-EC#jLqRw%=TunwajKD8Lb`l!Q$ z`bz__`pLr39!Jy|t;S*gI~I-Wxo%vD=)(I3?)la{zLLzhUfl3_d=tm2JFf6q!lp$( zhv-mCovb0+cCk4fND(I{oP6T=K;C1J^B(e54uU@DU@7qbx1qzYwEzb@m?7ZZ#96d= z&avC8l;PM3WzOvdVc+0+j0QWgK~Q@P5C3(hiF0Rdn4?1}TNRm70xyFXxWMv`gh0+C zUtp&up*Jw0k&eivVTMxygpDv?oo)1DubLhGQG894WQ1>jhz*9JjFLtd{1YFLC_72b zOCoR=q~AF;zw%tUC_G(?f>iNV1g(4|Ld*%yD)^lsLiGNHNeVo@o^MnrdG$?fB$RtV zAlx&30zT^wQ#i8XQ?G6T7N;q=jG`x4Yxpz~J^`;WWt?(8pR4f2SQtHVdMVgOsH<79 ziI|2UCQKHjA(tUGgjA6Pv$J*DAFVw3@6b+JpTKM>a@&9kCB%83YF6x=bX zCgPP<`q#o}+$_-Q3k<>$GJ;wqoj~Y5WUr=u+MF>3?s%BQ0Bi9y{`&)L6#U>ZRXcf5 zHn8Aa{It6|Q-Rau_>nP8kQ=Q;`A=9>#F(RqENj(w#nKnV@vIw5kmz2erEQUpyKp5i za5j%FsTB-+PH_~BzoKAogpk+lxD4+Y3G0QLCUlfzx9U}XjwRxk#n45OOmwr=1iWv^ zZy6+$K_Ml4(;T0}<5M!d&1onr{P!^C>8Hz`b7(`Ju8Gx4nJ4BQCM5nd80grAeC)s# z`p?)Q7SK$`4)d)8esNd?o}Yig>7w&vL=pm1|z7H<1QgDcp~6B;Z7VS~y{#har(XW2V~1M=`J| zWC~6i@ZWSud@PN=$-HZ#I&|7fU>aGY4k1hx!;`FSegeT6tjzN>j{B7&lEtF~pS!_S zs_&l-MSFpd@$-vMRKw&HpK6)_bdJ$;eV|>vUvL79fy4h5bBlM5$VzE!r9Uf^7-C6+ z#wwPSgR8r^6}ckn38g!vxD3~L)S2bU%@H_x$nueGPZ3Tv_>2=jVoh@|JVSd01d4MU zt^!lU5f1Et84>3E_hd5|4F2I1K3ST@H%qf_m@x5rlRr*hXkIYigg64L{v5qFV7SIC z!ibIEd58&^osk-~@dZ(|rz2;RIDd)c^cP3J*cXwear{Wrb{>u?+E3~(`2S~d8)6WH z&ceoZqoed7=}t}w46%m~q0&@I69bL?K}_qmPqOC<{06oTNVjd;M+dWan!s-as)xI& z;jSmx3hdxg%g*e=y&K1-u)oqED0Xqdp_&{8R9_RP0AmA-nW3|k3{|-wO!P|Z%9x0v2@GR z5OS_>kfJy)!;upKH{^k`^c<3oC@twYAwex&hDF_qQWdl2)hr%EIE{;7kijpsU^4k) zn}T>RSPt5`YGC=4Pk~GU!POeSQdWm_5#6nmEL$ z<2&{IPb~N*GhT4x58hjnFN?@)LBc+!-NkUhThb*d{H4hhP z9DJ{YuhQYr6d%v!=^_F7F0+2dIEyn$9IDHvo7xeVCjYAtKKVeGTjb~)Tv#sXDr#U* zhhqekG_9M5{>+e&uc<+}h)qoxt16CQG5q&%m=Bmwamb0KDk2CQT>I_{g^i3X_l09FY*dH_@Oix5&#gLpr1{(k zp>CeAVxd7&-@ygPf7*ush$v1T)Z-<~G;@`1*p}dD+ZFF3>z7i3$X5jtL?<@sgBCMS4Jzu-t2c`1lMM-wlu*x}*-t*HXwZ;eS&t zUBg^;kx*`qf96I(aoeRkfK5WGjq)thtuWz4DCW-m`5KXMD2bE(yAL`78D}1GNJf!*Mco6$Eq)5%9jar$ib%uz^dHQLar*W zw28xzgZXhz!Hs5tjO3G^L6X|4j$&!Wh8D$sTQ4S=IVv%Fb^{$ifLJQ}Xl_Qg=fJrfBeVDL z-oU7F{*52(uEA6J?;Wu8)L{XhJK~@o*M@GyFs5JL8_T4qo}E; zVj5WS5i|-nv6B4MFf80@Na;}6#v^NLj2o;==DwaKMvR~mWsSHDt!=g zfzJoFk-Vp91$19(L_coRZ$8xVnW0(GG!~KgqhlMTEjR!ez$+F!aK(-k4ufQ6=nar} zGsK8?7_@`$Eunh%uQL#ZmWk;h%jK38J#!$6^3&$JMQ|^7Ks@L_69d8(@GFQDEK-Si zafD7a@Fg=d3=m809iR1ZJ4;ExzI9lF{M)ilqXdEy-#fZxkp1q$XN&kBk?^(+K0E`; zZ@5p-%yU72yN6Mjc=3fNYS+}(=xC~JK$aGrJ@AOY;E#k+8@v_m`!cRVzHS*NdB#Ca z1>6lE)8(hfz=RQZwIbCZC~R6g(qf3O#JFj}jDkOaXOKk@cX&@vTqjB6d;HyWI_BHJ+$X*vC z&r3nMLMVn3NJhN#Yna6r1QPFcY}05b|pB|avpMF?9l!Yrj8{ftR%b9xqaR0AG224pk8gL^=d^1ovJPkMP<>0b{22!CZxyMz|v{K;Z*VWY>@i5a!UqbkPbI zRuH7d&w64`#NQU&UqTTn0*SEVj@~EX1C&}A?1&i}z=F$If&bg6TLHV*4}y_v@bz@z zHBnW%b1iskvyUR8L7;Y*_0ms~Za?R@_!tEd)Y!L#D{)^Q>BBT(q5nM;_XL!?6b zqCmN)@5X~-0~(Q&drvYFHOi8Rk(SUsSPIEcVSPIXTZO49>;;92t4F{v#I>?|1oP~8 zbrqk!YdBc`kCFU`Z>1>8I&r}UT|j>o8gXpj`JuBx{=edCF-QQy;9jPiQJghM3<%M$ z$-$5Bh-m5v#cP;S9+ey2iU5ME65LSaUrfs^VrUxT69JrbSJf1_hqzLKUxLZVM`Foj z$zf@Kjm^V~>;IpzvjD8J`v3oV?!DU`+Zad*DvAnO|yBibCFE(~}_y6_&oaebg`2R89_jI50IiK@6@suDrn1HQ6MV_5Wzx9XAKpRkY zj#+aJEgzm**Zis}->>ei-60py$f33p(h+qr3wEwbce9c4iGcP-3dUZ%Kj=o!_nJv; zj_C6ZYD*i}G(q@u0u2-D^rk*j1~gs=U&OQd!1x$tQV-m9qzi=ue0=Vm4BMQA%!D#n zXQVQ0N6q(4*m)K(%#x@nLT#mzjU7hOvKImq_6PXX=<5`;Gl_*q5{>AHzg)Q3mJpTN z!Ql&~dWK%VcB44d(Hvgq1-!=PF-h77)?s?l_0nWWPW`x=I}dVf0%z;Y5NEUJ3^~u6 znwCo%{-C|y4h^2N+x zyrCUYW;=!IzwxXr=*c(uBR;nr4lu9x1I)g3=WoRE%{y-w`ITT?5k&qYvk#MLvR2CQ zOK&i;kQF**6Nb++6GO^OvV+B+EhfMG&;X1u`=mm(1V-8$;aH+|W^sLyz}QcGX78_Y z>GLq*2(rVoGm$h()Su@4yk2Vtb`2Q7M%$$ke}bah0ckeTUvSgrgJ&W$441G_Hu5X{fkg!@F7{~Nt`y7xjP_&vh;z)Dr zM1U7l+D0Wj07t=R@vTPPD6%*FZK0sqiXARb{Jq{%W=MyYG=_Ke-_EndjhE-+xyE>K zP|M!iVq;0SUW_Xbzh%J+2WHB$uJh%v|Fl?x=L7u33JFH_fp{)VX+IoSd#-@j^kjrP z;Y;Ju$JCLRT3J1<>lw~3y+XBjsP^Ha7aQ-|zoOnGvlVN_&Xy#mEJwI!F^`|dIrH`7 z4-@!nc#(-0QW3UyGfAKtXsTT#pyu?B1@Aw}HT0vNZ^ehl^r~!p9dU)n7%!^Kd5gwyh7Eum8+wcO~lC&a=X)W|qt>O7)Re#8Jk&OZ*zQ zs80Ha&XNdpQ>9pCbk*zcc7Rn+>~{5cSWQgo&AiG7r=`AvY4ewrro zGfzMMMQWAXuS1~@UITUa8ZR$0>9?1X_}SGT%0XVikd~}bk`j83o#Eu{KOJWxRZPvL zPE>@PR?2}PnbJc>nH}x&pDGjitxgX&GS%>oCCqixRC}yhhm?Hhw#S2v_(D!R(@t0Q z8krv0U2vhxeA)*N-J$|DKV<=AzHwgXx5SoZx0NoL>bM8$IQ+T4m zWIBkGr1vwR-qR9;;t$pM8WTs$syJ*=Pd#94!(FfF88_Le>qKVbXl#<^K_A}pncJJs z@WCY6e8ThZx&}zE(BxY;9T7K=ckxLExFW>gZedTiu$NoZ(=B4H#V0f|o8nE_%Y+*R zNG+b~r&+IMUCKQ$iJvCSqA%Cl%}1(M501Hdzu18tg*!$pYIiv7)76Sfq*m`~+ILuN z&K4bTWXnl_BvKEP0*%#EN}53IA#iD+eabq*JgOK8GG?1Ikif_+ag0>9>P_WCfEnLM zu~uM)^P)6;l~{8yJ28AJ8M!7ypIrr|!m=*>QnDB<82q~F+$ZPrfhLmn4X8}|5SCxB z)zd#r8zSZi}Nirg1B#XDx z!E9jDfufznOsn)a+Dw)nzBneax_^jlVuK#FNXtzo^NAikSeg=~L>AGv$m|I_NVmNQ zs1H3M%hUXyetz71H)@1I`(&MrDHZ#KyCGK(@&RU z@hjRc38opmUhg)B!7?nu(AY?l zb#N^v(U5q7F_|)W@)bEPf*PfqLgI^TnAfg3TkO52jG;3PK-E($RkK~{ONmYpG^O=y z+C(CiTJ2Wd6km-&3p!Q`CiR7#0O|X&qJyPXw4hPZ5+G z|InA-HPB4R;Y{h^G9>tAQnnY!?H&j($mw;x=+=X_cqG8`ea3u=AaL~lh%IpZsPsio6Fm`9k-Mm1QQVfplqF@;%T;uWFiN{RB+|#K#wx-rY*NlJ zTM5lYXPv@)h8grXA~U2SJR+KX$eVTzWGlkxHQ0Eryiw2Oz{7?MB70thVygnQ8WkTi-?#!>u8{Bowv;#z zD0lI*(Na2^`YfZW4{gyf@fZ&%sRNUv4h}Th!R`f$c(Q%c79qKgZ%s-( z#(o_)-XtfHFrjv$KUfCGH(Gaowu=J31|G|OUY0(!5>`g*#yXbpxi}bR5 z`1BQh5NVe-bW>BYcaCOWj-UCL{cAasH-&E;rp)z7Md$^gsEo8S^!6-dakbNc8WAQ zv+bXd#ge6^?93vR>dDNh16~T^1R^~qWk^$Ggfb8AcRW{5K6kT4m zEsTY^OQULI2u9j0dn-PZxx(pSmORySr`r-yz;IZaXxZn=Yq`d6y&-M#<5Hqe`jN$J zIz^IcV&hyM7|!rMuqch`&+o`8`sNM<2{&(qsBpVYy^S-ktj|sOV^vCLN(E3tm|^{= z@SS@ZE)gy07mk_GFdChLcau*Ys%Ej=ioy&9_aXF$OY`j4UT(i64dS%z+wIj=Ws){}gE z$d{*{Sd@*h5^S~aMX3-5bww`2q!=3quj!6#IV7Hc`qmvg-yM%WB~;8=#}0+3Q2 z#?-RfpIy^-hNpEd`~Yugvh+C%!=@3_&^#Xb&=x*gb1;qGU@_N>yoSlyM{MzI^=%JQ z`z0b(GjF~Zp&#JcMyosaxRI1h;h3);;q4v0KP9%=YM5n)K8oh4FeFSA+IGPiHG0$| zw6F&RvaRgB8MOs-lRcXp(-vpL4t5I+BY7r$-hL&c?sceO& zGi{tI)LK-B3ms&rVLDO*HsUxo5EWCV$VK0+WgTuiEz$azn6dPM>>92AK6-{W${!JF zu1!6$YSKt!UC26;E&t{|mkS_%T*W{$e+h^T$^!=H`NDB~=aeJ@@KG;wUD zUZ*_CglFT8VPWu5J4je`KO!Yumzn)(U8nF`s2`u6!P4@HM_YH0xX(9|U!vuG5Q&Mk zUr(kWhxQbc?f+5$#H``bPdhqor$D_;O85pF&tAwZP8x>=Htv)|==PSI_(z{}-6-P4 zT3d{0fmI)B$*|qL;DTiMyk&I!UU_0k#G5h3+u7OSw6UAnhP<%ivg~@cg)iMhXGOl$ zFzE{z3ntr}&)Aux

!CoB$OMPZ%{>bk-ZmR-;LfHL{Fgrfe8i66bQ$V>(hyZe?&7 zV3C?7nr|Rne2LBCV_9Civf#61D$*&1#1`a`R}<09Ft<9I8FG#l+)D^wCD-_AhT zJ731skl>Ey6{Kuc6R@I2fq2to?fRVb5H3V>D3Pl%7iY`qWuw%>K5gB$Xl-9C@K)VVR`0 zQZSlWJu+0Hgluu{Ma-5Xg~=#{jOk-cbGT0k)sx^8GS7q_RV2F*dIp+a&Wr&EY^QS& zY#Zlp`_Fjzjo~H=xaJP99lK@&@9_%w=E`mLyEDHi$BL~ZD$@eUcy#2 z;wekh)J~R`t#Xzo5LIuq3}&1k5T}Wed@+@4Hn+_x*cgRHi4GE&)}I*&9bts&UdkF{ zf?ZzwP+EAU(Hrm>TBoI4Ccl7dV`ET9s29qQR>*Kq{yRqDC*Anif_=tAf*X1z0t4#; z$_7~_Z@l(KUD}etQy8zc$BB&MF!#@#KT(1-$d7lF_%zy16BQ4+1b^JiUuG4NYV_ZN zG=W?A5=4rj^G9bwzIQ&%go$yYVQ=5Wwc%?LGHoL%uga8iZd0&2d_Ct0H5N>QYR#`< z!G}@2J{_+&Gm^bf!5h_&?Os(zNQxOI#_pRId7&UvB5pXIh%@)Ijd9pscx>8m4LEro zJZLCW2wxYC1WDni6w?GETH$#b5=l*MhKmf*Jm#6`D5l8O2u7F+1qwg@XpDYDgRP;Ua(hIGUlf6gGcs2p|FVTFq&6>1f;7xa@FC+3UkS3m8?HVM6NNhcG>s zVtR@+GKEn^5qlx9Pld4Jjl+$;h}Gn@xy5FOyTWrel*)e{rW>3ot4w`1)}(&wzTs6! ztuyrL?l7NrFAKgmZ;)FYZ}#FELNfnIz_<% zVF_t9>h)ItJi2VRb@3tDGx6w>PPkF18CSe#xP$J4kw-pu!*`AKO-CdSnyIo2gPcQ8 z;Q7u#HDwscu0Kf-UE+z3?PR4GS+0|EWWAvrL~ccrA>LV--i)D2y^T!Z|83=DxX=N1kKUh_mO`ju4%`kYL zA~g6O>koRR$qtiF$Ucb+vVovk#ET)2cSUwgh_FcPBq5%V1{W#TZNf*EQD_;y9mHx= z8$X^wi?)Z1TgxsGx67NF^g5$Gm#LhDN1U0uqqEK;&5^C2AfpnBxzjVycGogoJ52~J zqaa@TBQ9KLHd0e!m|?h%dY(L6?7N?Fk{P+xM2|!XF49zrrW|?$cP4ofn70mKLi|^2 zJcq*iPCFx^a14UN-jx`A-(59ZN~VU4)k~c9Aaq3AVCd|GmlqXSD4hXeU9JmenLEoY z08Jc|;a_|Pv`AMP;cK-sX$IRLO0Byla!J!q`aTVr(|m-j@BPbEB4w$M>>%LbgjiO< zEUQq6MkI1FgOA3vTK)TO7`jNDXWPn|9B)Vn z>}*};ksxL)PTQpqI%Jr8+4`hgBfMrf3#S+i%$~BFmlTiU7EGFJ{B>%Q4tH@=X1`4e zi4@7wB;=Q|-poNu*18hHnNG8w$R+#35=HV+Zmr%pCgBT*oI^V`R%m-DOyg0NYM(e} z<9Hqy0kzQga&b+Q;WlBY)vzawS=;VAn;&6+Qs=ay(TAw5l+kNhMK^FPL6qKlaY&H8 zHOwq7^R%;R0^Ztr3pm%dAUddH>nbnq7E$622pcX&wh=AZYo?({*&M_~v56*$JgZEv zdWnCyrt@}wedl9gZe|T)M6esLi|Eva>YeqG`iz#+TxQWj$2Lst1z-QBgRQbd zIc3I)>2A@N-~9&}QpRwsr_AAo1g~b=Xh%As7pyp>s^i?Sqdbx1FXT|Fl)M!lE2Wox z6U)MAM_c!hvMrd;HI~B}mr`=nVpe@G_A>liM;Qawrd%Bztz8JO!U;#6>CzEVvzgb( znk&PG^EK=E(KkD?{VZP3&*CgU%58R9-X=31*<`2XZPxXZotFGWX@&Cg^fs(69%}5< z=c8TP)c$MQiqEBcUm-oIO$CcAQh_3i#bQz5&{SjLjznshc^Bnt!!8P=amhxd-RMjE z&$LZ-opdi{7Sh8jVt8gZ@L%hBh5{OTx4m3xgH^I0wwO4rXeY!pei;~~N;lI}JV-@F zr8V-|hOkGF5SG_1(u*aks}$EmwdkAGkRCgCGI1Jje}~fZ@H7X7BtnZ?68G@_xREL^ zGJ{p}2UJyJ?PZ3C{6igf_^?wo{);xM0cOJap-HtHebLfrS%wKWpS;3EI*yt1aE=Rrx$pED$*j0V&l^`Upc@ZR)Alcg-=;WZc!wj zzfso_pTl`ndn&7TUZ^5K*3((o`o9;AN}Cnn z7(^#IWUmA)Y9A?D4q{nEXgNb}hdAkLwol2NsS~oPeM?xasF5@5rtsz9NxW*GVdb0~ zvrkpo?J=i=cN{#mUpw~4MyO8z!8C9UcosD^&wlOxA}kl5oD*X+w{M?XJ|7in=Idn1 z2==7yr&QAP5lq0v+L}j5+6!?AzmxUbo2izer=Q7gXlWHcD5IYFjiL&9+hb>AD=Rn7~@^d+&gL3 zI+o5dJ67*YRdeW?3@GzT)GiZvV+~7eugfUxXj}7FPv>5gFL0$Eh%C{juJdlAxlY8! zLWz1ur9S;VX`<FN%2%fS5j=nwh+b07+u-S`IQKuht4SG=$_SE zX?Q%y>Jm5Gpsdjbr3D=|fu)Y3;)#Qalg6<3qlhDaVYYmr5n{w@^#1;&RK_Z(wUmK? zRbnNqyp_mV?b|XH5^B4ea-Hv&+(?c=yAnG0P(6f4 zq;ut5hN#zEDuytqobMX4w1_M9h)-p;O%ATIicJltO7fZ!JelVz^*gr4tCY)Cmg`1O z(80L|0jAs|{}>|Harh%(a9{?EaxI2d&2u-KNO@IRBa1%5vQxj)sV< z96B?@P_0$xl$7Hr_{M69i7h87lh1W2(-e`1saU?#dS8OjoMrGu2wg_lc4p;h`;xA! zVDrG5sZt^$D{?h*C09<{+w5pzQzjp6NVa^DeJ4`uRA$;&`!5`4*^ThWA+qdzPs|Ki ztjAok{3vf(7K61(lVwxcpbsWzSt;k$njW%ji&gwAn`#L+*S9IT#IJ4&q%Bg~xMOIObnt0M>jzicDvHsx0&YI4mBu&ly zd4sGBSyzLEyW*N5Mrf+}Hu<`BR|?T!=&zh@H*e;ICe$iBQidr#k!LFOT#p8A z30nXVlcuSD0B8BG(qSj0JJt4~!2fV^kP>O1u^4GlxdR$+JMPuhUv*qZe!Nj=W$FDvC#3L9v~ zam*Vgj>`(6AvFdzyNSJqEQgVr`=_th2C@*9bs?#B^*$*-?T(l=(Nq6wd#|t>k)hU3 z^@IHys=kV6SzLWZ)kHCV^MEl)i+dN7ai`xl%r&(hzcbqeoV_GJA(=)*RoZnq1Wwi>FK{ zCnG~8>_TKusaB0mUQ^BzRm&;Q6_{^xS4S8_ z`78a#jg3-gLyk80AGkMG)^mChZyk|K^JtMpHtL_LJo;Yf#?B8lH9q=^s#;oa+2xkE_r} zCsWS0s2FX}`Kh6KcgMG0ng1xL?1*091@%p5BU zD$NMjtJH@xFUDJ&u2_#9nQoL`mM$JKlxyugR{+baS=z!Fr|!eC_Np&sPpTNma(71YEWOR8#|VDXi8@x<-N3Fj(Hl*mZ(v}Ov@Vo4LHAS4LxQV zU_yPC{9-OF$Plu{ZRfffVI^qk3F*P{@MCx=ezf2pn(=5}6#EttGgZPKuL4Ux(Vc|3?= zgGWzLdZT(d^#I)_V;{XcpU%naykmdkZGZYREiV+1REm z>tYtTQ|Th)p>CbEO^PV2x8NH$l|6>Ada`0m1sQ|flGAosj-HKxSz$qm-q@5#731%; zn36?`w9yAcK^7tqw&ttt+<}Ajnb!m{(jf#o?JVSMk%7@#KZ_S6BXbl!GQ(T(N#A}6>_?fpi^NDbSWldi6Q*en(~ zFf)-Gix#FP5k2{$*!Cd4*GE~lap}3T3@hUmQ)cUrOjN#OrmX8VRj(V=X34adsHW03 z>jprymv;0bxeRk^vnp+8Y;M}nUv^9w%*rCuq0N(4FWqBvNNZoZLB|~jF#+Q}N-V-Z%_zmFB*U+8MKsT+DXk z>xT}vInvb+$!fTyxt;mNQI-pn;3_P={8{H>eJ3+>~W-wei8MI;hA<2rU}!=@N{aFq^lpTZ?rRgO@mUTZAWmVXMNjh&Ooi}vzqqv zGRVyEMgiCLTFEM~ZegZ3UnQ9~Bs|S>nQ2*ypmROTat7|K1%AFtXB=X!XTjDfW3=`e zCc$-P%=X4?w&xOECL1+5)0dS-M;$UPtF(8LX+hRUXv;Fwj@n(%&e!5P9$7qWz-LMh zkr}5i_|@Ie8^({%GQIX=;e2jt z^eieO-SzBD>bssTPYO$JwVr(qi)YO)>0(;MqbrKT++?JtielLzuUffZ-mt1GmMNnV6vR)N7Bib9qD$FS!5gzB#T=qGoa49n(s}lcnVB)| zturdqUcAgqJ7Q_Ou{A04yqU#3$ll~Pld$zNB)>mF7?VIC-DY|=>4G_+H7SVogADs9 zENel_s2?@yogySz{-rg^&9&fT`Zig#^u_GLMrJcu9Yi*vK+9%|$SxH;oTejtldFZB zP$@gfbgHX{m>eu6{)k*t7Rp4*5V_iNUReyqiy18udC8DB4KEd8P35hWJ6Ki{5pA`A zM2)34nOz`T zFoS)llzRoj7#-+aFk@(CnPtVo(AGosIbLftwk;t4k$owrWXvtHz$KD6_(fl84l74j zTfv5KD2|Y^eBMmYh^4JdDr*_Z2p$`K*S27hjWbh;zba*V&zF09o6MWM-Vb&20(Z&b zqlwOMn1?;U8(7F`?^HZuxSd|^duF-sy;`EGr_%{-+Z?@)F(Jb7Q!yGFac+2ZtqCfq zVU1;`V+9?>tZtW&hE5zjaqbx8L>jTyWk>7gkNS`_6|?H554N)fk&T%cG=BAy^60sX z5gd{v7iqtCIJMgDSVWfPCK-^)xNlcJ0ufIw3z2bS#*Qu?JECl4Ng3;PyHJ&udiXVU zN(kbmQ)aYcYEI2Eg<{VvJ6|DYg|yVzR(J+h)y%_4r?dQS$j<24h9XWAxa>$$qcAIK zik)%bHp?j^TN3YQxrM8YEIZX8yUIF@5LJU@dUhr^S{7`?H9R9+?T;95Bo3FkUlVTg zd0H77Y$$53goub_OY2t<)?3GpTh}JTY+56)wh@*#rnj&q9#fZ13Es`Zgk32sMk^gP zq#h~v)Zk9p7@?1>YX|F04MRn@V^UrQ>nzWIdl?fQ@A+?U*@=k@k$6Zupkc?_NSgoU zbN!_M%lF1}5O$>hLk`yU`QJHM*LQXfM7HcGoQC>F(%!J2^;6xjzwGopncYZ2>o~5T z!a5$Zqb|`70_TQwU~nS|Y|zX4$!ySDc4A{fW@sY`t>?UcBI|j{P9Sx_XCo=B@4kK# z>-&iq`P49B!7s_elyr@)=Y^ADTvztF_|KUmJpQh*@ zYIIFw%Ya?XUh3{U%%+*Mm6QSPlt5`m2LH z?9m6E2&WPZ;+?gRa3!O0<%ku5?p_M#|Yoq>+c8^W3u7Qd|}i=BdF_%F~Ds`Fcd| z!FlF4FIY{^+6UvQGe_7p)MyWKy%2Rx;M_s@ccejGlD}I}TLS$nbe&>d$=iA4ZU}Do zxPF9j!E(&wa|UgqvbV(U5#ku+I^``Rrk2Fei0L45eh_IW-mb1|+}BqpS5>H(og3eb zch2#%H15s%T^?Bcgl-x1AZIOI9`*AXsjQ{8dSG7R+B9p#=L*o?Y^IX4C9YFq{0__7 zbZxUDwjyT`^^kDq5q=0MFAb)mU+UT?IuTPR{#x?4EdE`rrTeY#c-KDO54+EH{*K?S zq^o>XQA_$aUZtfE(X$ftset^rorq~^d||LA(UtmXPbl>%`a-M`-`@q_1)Q!XN6XA@ zslwvpAmUtVSV^uZwHtx@JnB;XE_M6!TSYjPuoEsz2)zvRS(uiPkMZ=NlPQ(zJCAgF zkdLlzhz1unU1JGM3*C6q?q}`VNLzI!RF(bZ5#v<;WNL3ZYJfT&@3yc%YJoUg(pE!A zzlS@BSo>Mua4MOq!v3k|!aO9@-xXIIepUXi#8k*%UQWxLt~t~ac1tL`>ZcQb%0nA| z^W4h#+IU`KWqeKCC055*##e`bs;41|L4@f+NYznQVu&lntayhI<5J=oL7Fbnnf&!5 zK8?Sw*sjE1RUDU$f9;8r;gZT#ON#r)plF_wF8^-TfmCSAFO^ZBa4eF#vi3mU+mRR`%$w+ z7Po_DCENkvKx}I9dl0C@Tn{D?W+Lh&Fqu3~p|?z>T^RDN0UT`k-kx-lZW@>lW`LQv z%>s?In%riCIiLy5#eNR6G`_Z;y5`>^Avhh3wqM2t6e+OD-*zh!1}iAdWG)2 zNnPVW{lAa9$ohAYyO>^j3AmIrmV?WPLH+V_AR2xJ>XqOsa5cCFtN_>Ib{%nDk9vcp zRpf4DEZsyM+>G5V__-CFjs7-pJAUr~cVc%Je(nbMfO{Ds_hElOcmO;I9-^N->~@1& z=;a<|#Hei^1CN6zz>|!_rx-;~<98)^20RO%1J8pOz>8oN@vjCiftSH6gnbpf23`mM z18cw=xV;J90&jzNz`H@Go#dg1(t_L6CGY5C@5159`O7`Od+V z^@+Ba+XZ{k@}7=uN|^Sb1NQ1Wo8fnJutlJBpvTy63APFfTqpc(4Yt9&E$9rofbFo` z9&`mefNnv5w_`BS?G$LnPq^;Hw=@2B0qUbYPLvrVmA-W2MfSLum~&$hk!%DVc>B3#Sz4_DNvh4{dEa$M}nik(cl=|j|InphK2q-w193H-lTit>89rJGcYfN!Yu< z-QXT@FLw8V`@sX?!JvYgR+}W;L$t-ipaPB{Vg16nM=(DM%HR%8$Y`U-h)eC5*)ES0 z-xJ_T@Dz9&tOU=1XTfvedGG>w5v&5M!Asy}@CtYpyaryUjQ=BVYtX*|-UM%fx4}E$ zUGN@xSPR|6!Zu6L*U$?-m zBiIsb1v(LCYoKwk4d!h@XV3*~2et=Y!49As{&oaAQJ(IoJA+3l?=Gl4Ku^#M^ag#v zuCXDmZ>-4e78?%VAMp<(D5ZGk4z6FU67IZ`%BqCV80mH=jOdx@+8*fplcrxUXpI1k z#XJD)1qOmaU@#~K?QkzaEsc$WpHW)k!-`xP>6e3wnCRM2H-x$pof=B~!+_@WGQx_E zX|5M78%{hUKqdJb8S7*;Y!v1yus7&H8}3dVqlv2;i~(ao4HyT;<7XeRFW3+B{;{oy zIq43-?BjrzllC~w9Z0VX&bb{B2Q4|4>fk_gS6w7rE%kj6=2h6&q1J;5U?P|VCKJyT zFqL%t`XS~Tus@h^(_(wu`fEDo1IdfZ?)lZx#GJ0*8HAr1tH!R#&5Dh2jf9fnn%HGY-f8 z2(SdZsEkLVKMMDw!7-K><}&hsEcyz<9Ebno!BTJnI1!u#P6nrdQ^9G36<@Oq^>lCs zXh$4p#%kPI#B(-%^Biz4I1ij38|^N@&xPP3>h5B23Gs|0y-QJ-6Xr5-Ik+M=4sJQK zZq&!3dKmAnjP2vDitX#Jj_v2JiS6%J#13%R#twAX#cJL4v4h+Vu{w8Stlr%eo8WGa zO?0;q->tDp?zY%ucRRQP+zIXicaxufl;a-Md%=C+e((TzkbI^4Z^G(Yb*_4S2=^Mw z`!M+}LwyAGQScaeocbLWo8q1zFL|!OJxM%I;s0se)K6C8uKD&E)Mv>zoTGaV_vgV2 z;6?1!r&gK&diq)9juaESmvC>zicE6Zmx+6C${EM}3SnObt(;bJ(02U29;W#c^^hR# z9LCt2sBeL{Ssg0w{}JYaFiqc&_p`XyVE+d7oJ;S2GK?oP?`5naC3|?&($s1)Gj63d z-r~`m){-8kvHDbO!*M+uYha8r@5By9O}MvX(+KO_JN&#Gn{IAT#b%iLW=t#1gnN&4 z*HZrXQ9p=j<;l2X+^6TsM*PpB-e+4mKg8chVL7aRS)Hm5KQ{X&mN%e>Dm&mUHmBORC!LiP0jDoVf?IvFn7SO z%DEZp=3ooZ5tI?9=IJd-Z!7ZGDSk{?mSf%4@#EY!@#EdLxOFCumPix|ER7A-t?DS@ zx>y{{^XSXqMkPb2AeCV#u&)&um!U#~Fk z-q>qCSNr#gpA^;y>nwBkZhhk?Lw}++l$)Oy8|WjQ!tgEKDM;it)>k^Z-7@0SeBO^Z zb_aU^%`N>=_XGpLUSJ>?1S;r>tP*I8m>W!5#gx0o)_U+07UyYZgIc^kT zs=(faAB|caKi7?kpBIL!b7SLmt_F+)}bjd-UMW(KP0(9HO9H;cF$G0z5bKm+bgU@n*k=7R-{;f3+b!?AvaTSQ(LgG2Ct zC^!rp9;Q=3 ze0yAk{l(xCunYb!1sZ=!N4#DuR`4Co@6B#`{1$f^{w@bs;O|PHF>w`W!<=+A>NQ{m zxE5RoL{F{A;3jZ0xCLk|+)93K1GnQR5C0A1`404DNby=&x*MWF9o?PO=Up~# zeA#1!y*rH4kFVRHV=ANES*rrcitZ)MefYf}JOCaf%tNI2aC~?72ys4&{xR$xM|~oG zdn%46v3m;tPlJ`{p8?N;=l;KO+>wf-6LCHdULc(p|1%tGS=?7!p0%%VXGr_*axca2 zb}ti$=EXAY?^qc%_E_(NSIJWw`ibgR{iO^^r=R2Cm2i{&>!_=cetLWL3-}}ATm#CG zhG!iQ4w*r z04>2LpcQBh+9bAeZ4=QNL~9E1Fps--i6`kNPZHCUj_$;~DX~DMP{u z=Zou8`0L0Xw93d_Ox)rl4-O!W z13@h~2y-2%M}IgiF#-KV{7wRssgo&SDrf))V>bxMovt55-ovLlUdqp^1y!Vc_sYzB>Xe zA?_o=QG`Dl90QI`yyT8cyzGuAjirg5+zHs7n0U&al#smX6?mstD8(z*pSsXas(Z2rdE_gG<1rU^%!9Tn?@PSAwg+)!-Vi0$dBO z1J{Eaz>VN0a5K0C+zM_3w}U$p+Gl#r-HHA#@|g#HygTta{E6go>|tSlFL_d)@58-} zU8Nl0fYx4`AMUp?vIaV{2KzN;{{Vg;1fpB5sHKPS^Dy=PNaAdErnM7zw)xYTeiVO? zfycoU;7RZlcp9i5D<1WqmE@y8Aw?UWp8zd z2VbE75>zKvvFqpa{Z-;E_jTfJ_YL`!Y~x$X@Ev}>$NU58kKiZpGx!Dk3Vs8>gFnEZ z`2P#Pf200``CmW-xBvow25H1l;|OgNASdTdmy0fcddRq=B!|s^%}P&c3Xi8`iI6v zC*s-~Y=i%8Q9FY!=(j`N9&|;&1Ly{JB-~D*JJ=a$-M9;C58Qf!UZ6K+?Sr~2=$oT? zBj$F)t{>PPyFKvVA9YVK0R3J-Z9Wk5ATXHx7Gu{ByAsT$pbV6Q3NQo=#eEp+@SOLM z@RX2}XiZpbG2_MuTS<^V%bL7F1&%1IB_HFb<3d`%w0Mf#%-*Q1=H1 zfCE7-I0!#=pdL&B6Tu`f8B76FK?67#Oas#iGXu;7vp^$uv%wtD1m+^`5z>BmP9RQ?h%>&ey{CtfhCawJ|-A zv2eV#1N%|Lb3%^RaPPy<6}S^~3fxJ!oeWL^r-IYKGH^OL1DpxY0%gQ_cFqTM_X2kg z;m*bGJRpAK{G1Qrj}qCe69vBk?)r= zzXDzbuYvvH(H`Qw!s|I-xc}vR>DJ_YMO%LE-oULh=^f5ow+HiBH8e_n=1ubR7H)5Y zcfh+qXN=y<`Pwb9aPPadwCnq{;RiV%xexKLHNU54&{xbKgHOPx;Ips}w<2$!gD=3B z;4APoZr^}!!FS+$(1tPg1L1x|{}cEbEXA&Yy#9jzSKNLBzoY*H{E7ZA@HhJBz_Z{V z@I3gJyfYcPAQxH-#OuY`97_Pvyd2bAkOX<48OYCV?Fv9)ZY$S37wIN;EkMg$cwx{A zv<7X6uPtgjuqkK{I^b_JusPTQbOc+1t#IoEwno1V*cN?f(1pBhM?BkO*A=vAN=hK`hwjs_XE45-vhNj*pn~=Q1=1@!5}ag_hL}v zwsR%8m!dBt{_@1IZbR%-VVVrzJrG8_5xDvOKU=*kV zl2hz$aqDCWyKv!pr5EaG?5o3c$K-xTUx&_;uK279AiB^#_C4!)@`k^0U_96d>Md=pWqxqmbE0Je=80hae#L$k_LIRBuxspFHx;!3{6v2|IQM%u zjrcsx_q?8H{&d_Ux<3Q`Ops0gq2t&!5_UG21De2G?B; z2jC6FpSEHxvmo~;9%{i%a1aXVE zTY`EdI0_t%`y9@(9FyDI9Se>FFToQZPuQiozmdKlOOG<%Pr!d`!j4$jDxyixN*M|WoKALL(o^7%ar|7W8=2lZTV9ylMA z;rD{vKPkWb>NHWh9O4&q8KW2GPH-1lx_`5N^!XKSipBrI$KUQ^b7LMN{#Nc^`qIDD z>AxXeh2O@$jA5^{mXZ}+O1j$b*WT)K^p{yU_;B=BpuZCJD%7h{uK_F2UyFJj^?yCM z0o({~!tQ3=Zb7{j+y-t3cYr%{gW#^*SkRoDs88RG|9h~%7u*N#2M=KPAb1G%l?AL<#!3W?&@DcbJd;&fNpMlTu z`vqaX1Yd!#!8f@b-M6UUf$zZ&;79Ni_!;~Heg(gQ-@zZ?PvZFt{0;sA|6)foIhx4P zM2_w%@rYwcI+ArskO!J2IlBuAKp|+JgdYaS&}UlUsU_G1u}Z6CENGof1Um2A27hfq zJFqEe4>|z9mz6_E_+#SU9Be^ct*i%fh5Sv&K$74dfhTZ3(q-Ql4lepBQ3 zJ-01(os&hbOLDE-F4@s-kH4;92ha`dNL=C*c0%oLY5B8G`GI(`ykO^KJlG}KEa;I; z20fEsvw!!o>qUIML7!xS+ZFT$yMcaS_arCgQ2Qr2HAj2{faEuO;eTLKbnpi^D47!s zPD%!n8x$uCgOa4y+4-(C8Sw*sU0JeuP@WV|SQNAX4g_`Ipau8}sGjoTdjH=#yp&n4b@7B@5;KMQcL2j?5j?&uaK zTf0Tn_u^zxa0qdZ#qXi1cIFHMeh&vnfF(e6HIz<%6nQ<8bdCZ?1C^^Q?#F;*!EwZM zJXi`&04HL166u@_P64N4cN$m;&#(;j9O~ipha9vP5?lpThO1Gp0V}|@;5x8` zFxOM|8^Ddp4q;nv8su)Yo;PERZmbQUx8!>fCpFt`)KB~1X41U{+zM_3w*%$v4sa*9 zi#WtDFJc{XH~G2;+?#CY?xUXWPi_&k{Li?H+ylvu!Gpx{P;$%QVd7KSA3=Q-JVqRk zC%5|l#L+2ug7$h6|KcT{B7MzePg7Sb(JujIoH#AmXg(B1>B^ttQkl02;+#-*K=P7j zlG_H&HW*%hi`=uM@tmdGIoNcA{?zB?HyY!Z>=t}Y9ee}6P3{u5GfuF%I;MZh#`f7LTmHC@^f5Yx~@CR7M>0X`t|C6-;0)HoW!MtXxE3Y5zrTM$S4WteS zfx(~{ln_=tcPakMKzZKo_}vhl>K9ZHug+5JK$r^R8j`mMGu9r|#2&Pp=Jo!;P~5c7 zI*ho6=j|DA?+5n{%{v-{?c9hw-D~mvU2CdJ@+0{r;;kZ$y+QjJ zYc29r4cd~*7~FDM$BxY#5Y$-v?X{7zhz9sH%i&S{*w#t&fy6S<`rtU?Z%04fhq@V$ zz9py7i#A%81ns7HirhZrbzkzaAJ`we1HgfKgNb|HdhoJ_TKpZ9SIlYdb=}i-P)D8A zgH`Y*6Y|8Pl+Z^-TRoi>otlXIB%nRdUaWJ}29q&QA^oY;&r9&0TAPUmYku4!PyMr$ ze3eq>Qp)UH1O5&M)4+5vBd-h|-DfF0g{z5nKW;1A3Oja1P_6S!6V>N@ECX; zJOQ2rPl2bwO7IM6Kbto!cng5SXJ z;1BR8_zV0E{sI32rW^-T;9?*S5+DcUf+WZT%|JdV0EM7AC;}}&ORx!O1zLkPpe<+z zHU;fL2e28~9BctPf-S*TpcB{{Yy-9hok16{9oQap1v`LlU`MbM=ni%UyMP{`C+G!w zgFawa&=>3m`T@x{cSqd=^ap!_0bnmM5DWr?K`|%+rJxLyg9CRAEk@D&SPm`&mxC*CyAoUluEu-~Sb_dpa2>cF+yHI_`#{%j zBEFkJ4f(nSzqf+hniaX*!5!dEa2L26+ym~#?|t~WA3Oja1P_6S!6V>N@L03GgU3;y z08fIaz|&wQcm_NRo+JI|!3)&Oi z;orgSUGN@Q3*HAGfDdu|2z(4a!SAQoeFi?q`~|9)2gTf%==m7O~uE*T-Wu%<+6*VE zGM4=??}vGR(tr-)zZ*~Uh*6zEb&j+fXJxEXWUdFAx4zx>u zYnvjsC+dLwI{4N);;$oq@u{ucUc@;tBd$T{2ZLgZPj@ER`#`UHY6eO`5hw*^0;>z9 zQw}P?5HJ)B14?r^Z90PdR8o&4^Ctv)5nvSIs=(f0G;WFbn4mhpyBk9tjRiGymT}mR z2Mu`>sr!lKc_Mk%z2r%lwXS2#<9FZu$GdH4GT{_KYCTIRslHWJtDRGi5F z(d#~J6Y5;@JrB$W3&__(un7Cb;E?=-gG2MRFYo2}hvkcp*7{v{ui0xL%n|w1f+gTc za1?EFbpG_<81ix~ZrT$)4)u7j6uT3M^F(kGI2pTBP|qOG;@h;xseQ;tIAwht^mFIL z4C;0U<(onIkY^G9Y4~53pGP|vxzjDJB6kM%XHrLJfwRFm_&FDx2hIl<ofe<2lw3ZototxM^*ei@%%lo6OJ6*x!;rmpI{LalZ|-)*ZK#U(JzMGv@9<{{Xi~ zn*k(>))%yIEqAr)orJrKvfiD)eQ;0yeER9U;MdsH;9laoFMk2)$UM;9pT96ezbN#_ zde&BIi-}kM4oTTRK=?9lrYc?C2Y3*(&MiKK`Y_N6?-A5TNxvmGopap)_gMY__c(Y0 zJPDoxPv;+o+hOGWFw#iNV^&hv{kid)2OL=6&EK6ngVXEXfdlLMX-SFxVn6B`^6@Nq z4h*7xpC?aasT-a7eF3`{!78vCyaZkbI$K;v8D2sEDi9Cy8tUudf8=cqcmuo%-U4rf zcfh;gJ)nDfYf;Nl-=~c}03Q;zC|DAFl&^DCMB-Mp}hHf09(?3 ze4TwlTB5a|=4+jQ6z$~S!1yd*H_(r!BuA6h(WIq*5!Ewt8)!iDykm$*_FgXjIrZ}e zDB~8f_VpqenfA6Ni}{kWe3gG3V?$wvy06KT7zc-LGH(<56%({+>5QBYR_2h;`^!My(E=Kx$_ ztKADOWlr~H)0+aG4yEhP_Z78?%C(%jQd&s*=*vBbqbC?ep5?C%b~W6z*DFTKgZjVv zjK+fMpci!~I@OyneZa1uFLkk7!R65DC=UtpfZU$`EIQB~6oY=$&F%$PFh=}%*@L+H zgFT630N9IozRbVU#?U~@H3;)x)WKlF`S#NIxXQ-A@}%(`rBjUGl7g%0o9e6A*jV15 z^7{USJe2s$3e=}p*cjA(VevyPtuFLxfTtT5C9ku&FmsG*@4Z~%@vD0-6$RJZxYD~S z%Eu7Opn4a58j8PRU^sRoD1-c07U<=HbY4c{J_=NUy}{^$b7;SF7+dF%|8ug&mij<7 zW%FZ6?KYipsC9_mo6%kI0yn0hgBx2QUdZ?5xv1i8qVdpyzNmS>48IqFngYKUJFehH z>gh((y^(YkH~W~>wPde}_%O~U`1Q^{1=?SQUm@Oo3vS|U!cF+Ni7?`aZVI|EviGw* zviC@N4gd#&TIxXiMF*j;1NC46P(7(mC!)`#zfD4&45omopaJO342|`J$xnW8Gje|A z#ot?>R#4=ogBj#yX2C7NEXvbpX>ra3{&+Tet!s2=O?zf@Fke7?O~f@9%meem0_+!p zMPM;F1RM$uE4Y>Zpu4xq|MS$tt-;~gi*GstbqQ$Yp0oaUB>JPk(cl>3JQf@Wjt4ql zz7+KYa3VMfKPQ7zz^UN0g4==}d40kGUza+E?#GP!)iS~qGcHf3ZqEQ`f`!o4vnco3 zgzZAObEt=N!FdI`Bhb;EkNpMI--Y z5(oR6#IG^@AZ2aM>o5-$tVDF^`|QKyVFh>u^rjEU-=p|{3}`Ph4}a}BzrCVhn0uV? zPhkIK7~fOo=PqdR`Z9dK$F4P`?rL-jo+hmL6~E8PzG%VS#Ch6Z} zpnO96^6!EE--Dlf@Z--G%k9~MdzowQ#r|IGHFridgL5;a^SqVQx7!QU$BW^ZUxj{k z!F|x*`v`j^=g4$G7%lr*!A`D8g=wKw91EhAZTIXk=2CZ z)}X#&@pW`>qP|6XZv&0tcTnHO-Om*o+Yds^6c=kS?B4@xf%?k(*nI##1RsHq3m$_0 z$S-Fu!Kc8}Ddk-+t9UoH-6xj*BO9>O&GdEsJ!bS=wCCl-wa)7QgP)iF z4}SD=PE;O07ad6tQ9lr$TV}87Xx^5azsIV(tIf%a?y>G4(~CQjH6Y95;+g8M1;U+{ zg*r#o(QQ)r8uco7?^edkJh@qB`BmM@|Nm(7|1oC&$Cyoz^;Wp=Nh$+K{{iZ|HF594 z%RcSwMbI_o*XI|0jrwU@C>o-^sPl}}J9$?>ZAUztg7%;T(49c-C$^!zHY3lQgDnar z&v*lVMsn|{Z+qI)k+`=6TY*ksYp@Mi#p^;H01{mC@@BAYp=b&FB*Z5^r3-#M-^JTw z=(jI?E9i<_SMsz2`RGe0VO*Y;sveY<`t?+JC9Qq>5U=*$75^usIfuETIW%rp;_Cw4AHhC(7xaB8 z`)=gN=Lvd6`Nb3W!)|x52j~y>Bwqu_|6as55Dda@FepY}0!k@QSz&8e4l2M9?1qA2 zgsb7zrQwDB$v^ws@wN1g{(;u6dQY>AmzZ+g+F%56SK@yp7-jYGHvRZ*%Kf&LyNbN- zO}&f;)wrwAmBCS~ES@L&Agq%QgE58voWn5ot;bTn8vKh-9)~(U3_E~y_5qURX%Bf{ z^!tJRaX*0kA4oV~UmpdvDPSsS00$R-!YE>m2lQS; z59mwJf=@#`t#_k7_8GmKy*S1c_XJYz)2LTZU%#O2oO>($k~;J8iH6Q7)QePpyv{8A znz4o44V(c!VZAYnx@@E@WxQA=8QLJmk>o^@8OulwmjJyfT1lThlC<>3!%?V5W3PABj-gBs(N@P2$8m)}GtVQp#C<8~0N*B=#0ltE zaRy=+>hnbWm+=~xKoCEas(7CARf%6G> z0l2X6FZy@PU4;H(a0$2+_vPR+a5=c5@NeoZs?&e0udF1!D+~XnUuf(z)u3L*&(+`# z=Pj4)Y#dO|TcTuzkSH0<70L9gSc@^Pr zBJ9mz3gK@-y%k(v7>{Y5%9KUEMHz3yP4Cv+PQ5VR=oRp@Uzm z^y?-3y=-AO!mSRsHAF!Y!%ONPforh}&nleO|Z~aUlOBZoNbCWnm|4*H_@FzAW6@^7&=qHrR33 zh&+8=xGnV%jRjBpzA5ZXIgo?0juW4&dw<{J_dD=C_<=A#f}g<8n12Dk77nEM`}w07 z^*7T09eV!<_>=hl!q4B}AMh`5&HJ(j;$10dc+i}Y58@yJazHK+EfTlj z!ZZ3eP4l>z-wc2Gs0FBnpgH;?)E1~MQ8yu-R;aB(8_*WC!);Sg=DvV0jOIM%3kGcm z+;!jap?uEwH7{_RH~-S^Pi)b=Z+MTQ3-zTlfN*;F)%}Sw?x*y(`LauF%jN^!kA?l* zR?T^NzWL8?>*fR8Hq9mD=|F2eVqq%6-5_-H$$X_oqYyS5Tl?-0wDoH zsDUIv9x3$RK?&7>KmyWx=pemHk4Tp$O;JFxfC?gl4HOl{-T?*6|J|LpNhF^Co%5a9 zX?O0-&dyGIv&5?e;jRv}&(yaF>}`-dFrZIm>{alOgsLzdzbM?Ip&G1b{YBE2|7=vp zUV|{Hgo(kd39+P83u;3hs7si7P#@yNME?eaYY6d>fSdduB$4Yz&=`9YNCH1Jg=9#9 zR6CrM!f86fsZU0iGW}XXQ|1jG0p18+x%A&m2 zdLjQ|c*L$w%wVfG*XhuQFnysP^moJ8pk1s%+0;N^>02{`q`feGYNOA!;xWjGAxuml zjQroogpvP*$8nNlNlts599&fmATI;a`AYF9^(g7df1o8#iI9O^^ca*cefbZ^deHlvFUN8(YAq$4X2zVSu!YCLGV~``y+F0bsoJkb_40|HCUszj> zL+*H6{!eYf#qq34A4JA+6Nn?{uTI32`JhRdlaV(Ck_j^vdp1l1nJb@;IRj?GLgvS3 zVa|p*Fc;>5tVPKhm9)W6V4n}(`2q{LUI>d|F}g2-rLYW^!wOgltMHfq3qHy9YFGnn zA#Z(+=ZgNzI^5R72G|HW@D#es+S^Ik#P!q2+6-Ip%fAk{75g^W4m)5cJOjI6H|zm9 zw?gjKUat4Sv#=lJZ0Q5YJ_z!kl|z_^aeoe;ha>O;ya?9`dlYjovb-}8j$uDeoR>iM zZoZ8D1iS*T!fWt4oP<;G2D}Mx!D%=HZ^K!52hPE}$T|-fXxrX{_i_6GKBSG?8YJgf zXzL?8&AMoZS(o5rTgHrX&c$i#6Uyf@d}`;=YUc1X=g^MUQlHs1)#p4*%R;;}4(g~Y zb{+MF%|D6Zs=d(q%3f`K4c{R1Tf46M4pZiXFYqpt^$|HoB%SBrdvy5${bZf&M@*@+ za-V+U`e*nBenkhFGyM(o8eFGMyn*>U`~f%Zdg_+#oe`j|KkaJjFXH_T|Je0eV3PB_ z;#834T?Mg0i>+v8Jy)ZLoNG`Bw_uQVBOSZk-#f6&8JUGKi$GB*2E`!+N`Rb)U}I`< z;1+i8yaXTiJ0TQGLMbQ>cfs9IMw{onET+tD-Gf<9^B-FXgZtoqC=V6j0eDc$^SXrp zG&WEbk?{~z0y&>n)`P;ij)2OpOxB!;6X~WSYrc$ovG)jW=(exkn1tNXzDv6#Wgk!b z7f;(3Putdzw%+XbFGtx&5jT|9J6b0YKY=g_gwa+t>XFgyZL=q!7|dUKtw z{i=^{s`~0=)la9W{^&da2BOEKkOHz_C0pqt>^7eJOk#8;SQ=T?$Yxx=XA^?jtSF_ zGUNS4In0Lzuu#jX#FeaMciy}M{f&~=BIKL;+0ji~-W76A+hXJ_B)*&nutaxq(_ZSj zu_uYSH?w}!nK&{R#i}1=znnByfXG{^<%Hxe6h#-eyi0Ow@+$nE1exnia8FOx)@tId zp?udOI|28m^w~^)ySe?Lb-DU=r*9!Uj=LjI)+D;BMDBZZuzXLYn_5peIj1B6ou&R% zXDqb=*~@S*M*E$K-$v5N(LE>w#^CsE(mg37If1n&GGAxDR9jE$UaBl7cCn8SH*Ia! zGAG$nZQ;Ieg=lwe%iPm#$h&=>^5655%GyqTcYyRoeAJDdf&6sjM6klZF6BTv<~|&! z2A1T6_&pGm$paJ?J$=-!N@dK134D{C)#i*VPiEo&dw&k}aO z8_x?bW4?6mX*zMziQ~zWxvh%)x80oKb%64bd>_;gt3#B_VXmKp=L30=_uLWWzCby= zsO7Y3uU+hm?7qnEi)`O~6 zHEVz;aF_S6tOXw<+$(yZo6b?(UxmxmI5`6}j+3#CEHk(CnvUi^(;p$sKHkA6(K$0H zgOjc^&@sa;vs2{j4S19CYC)S`-hJlS7fhVfxjLG)>G(pm)!q1u4rlOx8)Tew7E{)& zC7pLbo}=QtuVh?%4*R=s9xlLp@IHJ1AHqj)5iX&_$9kHTWMx~Q=t1;*L#)d>&H5BB z()amH4_2S+au%nvSywQ>fG>%66~2P6;T!lCzJu@4@dwNw;U|#3jGU47GuOZ1_bdDc z*Wfzb!2NeP$2;~9>^Hf-1u_Qw6Z>EAH%LF=AIg#G6D!D}rEw&`obQ1djQtKM3`HFF zv_dgB!?{((9c_g;rY~QDur_GIIha1oJ269{B$R^Ea2MR|Oy|@bDHA#CRL&8tXO+Rd zEOGi!&i8O#4(j$`&x!9Z3+6T#lypJ|QMcjK> zGngOs((=+UVf>t;p7&iO*>6MN26>eri!{SAW$!`+W@V@XW^ayZmtu=M?p*ME(vtso zMmj^N!?Fi8Zx3r#^oepx@b6&nd6M}}=7t~#qLFF7k0X0uhtfBc`SM|^niFDGM_vu` zAZ@VhPnEU)7)SQAHepRvzPUr+2LD*71+|?_RmW*))rESD74GbL`cvDh<$M)3TESc!yf1b*Bbq(Ca9K{L{ndBo;iw}6(= z%1ux7&f-f3SyZenw_TF{cWeCHcf-BAW7ZaA-Pg~__A=(~fuDSLiSw>$M@N$O$UxdzswaNEK*F}ilyuF1Guacu zbvtL2D&xkb-$XjSNh2Mz5A=n8&>sfCK>QB#-hPzp20SYn#2*BMu|Ed#AH&hSw}#+0 zl(54flj|~SH17kGzbx#-aUbDismC!#!YCMx`z7KoMaH>8W2jRS-jvH2{Kj(s#yMk| z2N_HL#s>0d!kpv1H=gHmf-^=s?KAPaC;y9XjK9feDDTx7q$hK7GYRMCR6?6wA+wwjYBuh9x{OwH z$mbzFQq9GE9$}w=`OY|1y~sqhz?r0CtVyIfi8SThRr#VonzhhvU%W9E^Z&Fx(jS}8 zT&q0ii_u{TEQMvT99AG#+O(?VZzb2OAWwhxqB!-e)yP?c`&y9pZXK+L4X_b%;3?Py zPs3)|0$X7lY=<4NllZdl@g|x-gUns9+d079+HdV~qaQ6{j`hTyIhu4ttI-GQ-y3f@qt_P!IsFh89EN{I* zc$qJH6aTlIDJtEbM%|i5DNN)3nSRY_n6rrkppcNz(zJkN?Q~ zlRbuZrS z{`uuE4d_Ro2iawO`O{cdKz9>H0|i$+KX2f_mf{4t1qTM z?6)@Ox{I6ipUb=TeG4`tuRd-8oHyLRB~Y zJ-O+XcI(mJTzTfcu*cgCH%pmsOv?V(g72#+$}k$4)d(x?XLZaPAo|9DS4V1c9gBM{ z+Lzi;2kJsSs1I@YHGqbMi^nc&1Lj+5(jKw*1-C?K1dX8yBoTghQSWA$OLvNfu From e8376215378b0c0ca676e634d7a84936f23e40f3 Mon Sep 17 00:00:00 2001 From: paramat Date: Fri, 25 Nov 2016 02:24:46 +0000 Subject: [PATCH 74/99] Farming/fire: Add tool break sounds Add tool break sounds to hoes and flint and steel. Flint and steel: Reduce gain of use sound and only add tool wear if not in creative mode. --- mods/farming/api.lua | 9 ++++++++- mods/fire/init.lua | 12 ++++++++++-- 2 files changed, 18 insertions(+), 3 deletions(-) diff --git a/mods/farming/api.lua b/mods/farming/api.lua index cd1e67f1..725cbc47 100644 --- a/mods/farming/api.lua +++ b/mods/farming/api.lua @@ -50,7 +50,7 @@ farming.hoe_on_use = function(itemstack, user, pointed_thing, uses) return end - -- turn the node into soil, wear out item and play sound + -- turn the node into soil and play sound minetest.set_node(pt.under, {name = regN[under.name].soil.dry}) minetest.sound_play("default_dig_crumbly", { pos = pt.under, @@ -58,7 +58,13 @@ farming.hoe_on_use = function(itemstack, user, pointed_thing, uses) }) if not minetest.setting_getbool("creative_mode") then + -- wear tool + local wdef = itemstack:get_definition() itemstack:add_wear(65535/(uses-1)) + -- tool break sound + if itemstack:get_count() == 0 and wdef.sound and wdef.sound.breaks then + minetest.sound_play(wdef.sound.breaks, {pos = pt.above, gain = 0.5}) + end end return itemstack end @@ -94,6 +100,7 @@ farming.register_hoe = function(name, def) return farming.hoe_on_use(itemstack, user, pointed_thing, def.max_uses) end, groups = def.groups, + sound = {breaks = "default_tool_breaks"}, }) -- Register its recipe if def.material == nil then diff --git a/mods/fire/init.lua b/mods/fire/init.lua index 6f14d727..0dbd7c3e 100644 --- a/mods/fire/init.lua +++ b/mods/fire/init.lua @@ -86,13 +86,14 @@ minetest.register_node("fire:permanent_flame", { minetest.register_tool("fire:flint_and_steel", { description = "Flint and Steel", inventory_image = "fire_flint_steel.png", + sound = {breaks = "default_tool_breaks"}, + on_use = function(itemstack, user, pointed_thing) local pt = pointed_thing minetest.sound_play( "fire_flint_and_steel", - {pos = pt.above, gain = 0.6, max_hear_distance = 8} + {pos = pt.above, gain = 0.5, max_hear_distance = 8} ) - itemstack:add_wear(1000) if pt.type == "node" then local node_under = minetest.get_node(pt.under).name local nodedef = minetest.registered_nodes[node_under] @@ -112,6 +113,13 @@ minetest.register_tool("fire:flint_and_steel", { end end if not minetest.setting_getbool("creative_mode") then + -- wear tool + local wdef = itemstack:get_definition() + itemstack:add_wear(1000) + -- tool break sound + if itemstack:get_count() == 0 and wdef.sound and wdef.sound.breaks then + minetest.sound_play(wdef.sound.breaks, {pos = pt.above, gain = 0.5}) + end return itemstack end end From d42ae715b8a4e5a46a590b0f97683855e5985cc1 Mon Sep 17 00:00:00 2001 From: rubenwardy Date: Mon, 4 Jul 2016 19:19:39 +0100 Subject: [PATCH 75/99] Sfinv: Add sfinv to allow tabs to be added to the inventory --- game_api.txt | 106 +++++++++++++++- mods/creative/depends.txt | 1 + mods/creative/init.lua | 237 +----------------------------------- mods/creative/inventory.lua | 171 ++++++++++++++++++++++++++ mods/sfinv/README.md | 21 ++++ mods/sfinv/api.lua | 158 ++++++++++++++++++++++++ mods/sfinv/depends.txt | 1 + mods/sfinv/init.lua | 22 ++++ 8 files changed, 483 insertions(+), 234 deletions(-) create mode 100644 mods/creative/inventory.lua create mode 100644 mods/sfinv/README.md create mode 100644 mods/sfinv/api.lua create mode 100644 mods/sfinv/depends.txt create mode 100644 mods/sfinv/init.lua diff --git a/game_api.txt b/game_api.txt index db5fc014..a2c4e312 100644 --- a/game_api.txt +++ b/game_api.txt @@ -70,7 +70,17 @@ Beds API Creative API ------------ -A global string called `creative.formspec_add` was added which allows mods to add additional formspec elements onto the default creative inventory formspec to be drawn after each update. +Use `creative.register_tab(name, title, items)` to add a tab with filtered items. +For example, + + creative.register_tab("tools", "Tools", minetest.registered_tools) + +is used to show all tools. Name is used in the sfinv page name, title is the +human readable title. + +The contents of `creative.formspec_add` is appended to every creative inventory +page. Mods can use it to add additional formspec elements onto the default +creative inventory formspec to be drawn after each update. Doors API --------- @@ -391,6 +401,100 @@ set a players home position and teleport a player to home position. * return value: false if player cannot be sent home, otherwise true +Sfinv API +--------- + +### sfinv Methods + +* sfinv.set_player_inventory_formspec(player, context) - builds page formspec + and calls set_inventory_formspec(). + If context is nil, it is either found or created. +* sfinv.get_formspec(player, context) - builds current page's formspec +* sfinv.get_nav_fs(player, context, nav, current_idx) - see above +* sfinv.make_formspec(player, context, content, show_inv, size) - adds a theme to a formspec + * show_inv, defaults to false. Whether to show the player's main inventory + * size, defaults to `size[8,8.6]` if not specified +* sfinv.register_page(name, def) - register a page, see section below +* sfinv.override_page(name, def) - overrides fields of an page registered with register_page. + * Note: Page must already be defined, (opt)depend on the mod defining it. + +### sfinv Members + +* pages - table of pages[pagename] = def +* pages_unordered - array table of pages in order of addition (used to build navigation tabs). +* homepage_name - name of default page +* contexts - contexts[playername] = player_context +* enabled - set to false to disable. Good for inventory rehaul mods like unified inventory + +### Context + +A table with these keys: + +* page - current page name +* nav - a list of page names +* nav_titles - a list of page titles +* nav_idx - current nav index (in nav and nav_titles) +* any thing you want to store + * sfinv will clear the stored data on log out / log in + +### sfinv.register_page + +sfinv.register_page(name, def) + +def is a table containing: + +* `title` - human readable page name (required) +* `get(self, player, context)` - returns a formspec string. See formspec variables. (required) +* `is_in_nav(self, player, context)` - return true to show in the navigation (the tab header, by default) +* `on_player_receive_fields(self, player, context, fields)` - on formspec submit. +* `on_enter(self, player, context)` - called when the player changes pages, usually using the tabs. +* `on_leave(self, player, context)` - when leaving this page to go to another, called before other's on_enter + +### get formspec + +Use sfinv.make_formspec to apply a layout: + + return sfinv.make_formspec(player, context, [[ + list[current_player;craft;1.75,0.5;3,3;] + list[current_player;craftpreview;5.75,1.5;1,1;] + image[4.75,1.5;1,1;gui_furnace_arrow_bg.png^[transformR270] + listring[current_player;main] + listring[current_player;craft] + image[0,4.25;1,1;gui_hb_bg.png] + image[1,4.25;1,1;gui_hb_bg.png] + image[2,4.25;1,1;gui_hb_bg.png] + image[3,4.25;1,1;gui_hb_bg.png] + image[4,4.25;1,1;gui_hb_bg.png] + image[5,4.25;1,1;gui_hb_bg.png] + image[6,4.25;1,1;gui_hb_bg.png] + image[7,4.25;1,1;gui_hb_bg.png] + ]], true) + +See above (methods section) for more options. + +### Customising themes + +Simply override this function to change the navigation: + + function sfinv.get_nav_fs(player, context, nav, current_idx) + return "navformspec" + end + +And override this function to change the layout: + + function sfinv.make_formspec(player, context, content, show_inv, size) + local tmp = { + size or "size[8,8.6]", + theme_main, + sfinv.get_nav_fs(player, context, context.nav_titles, context.nav_idx), + content + } + if show_inv then + tmp[4] = theme_inv + end + return table.concat(tmp, "") + end + Stairs API ---------- diff --git a/mods/creative/depends.txt b/mods/creative/depends.txt index 4ad96d51..975e6525 100644 --- a/mods/creative/depends.txt +++ b/mods/creative/depends.txt @@ -1 +1,2 @@ default +sfinv diff --git a/mods/creative/init.lua b/mods/creative/init.lua index a6c74a29..79f8978f 100644 --- a/mods/creative/init.lua +++ b/mods/creative/init.lua @@ -1,237 +1,8 @@ --- minetest/creative/init.lua +dofile(minetest.get_modpath("creative") .. "/inventory.lua") -creative = {} -local player_inventory = {} -local creative_mode = minetest.setting_getbool("creative_mode") - --- Create detached creative inventory after loading all mods -creative.init_creative_inventory = function(owner) - local owner_name = owner:get_player_name() - player_inventory[owner_name] = { - size = 0, - filter = "", - start_i = 0, - tab_id = 2, - } - - minetest.create_detached_inventory("creative_" .. owner_name, { - allow_move = function(inv, from_list, from_index, to_list, to_index, count, player) - if creative_mode and not to_list == "main" then - return count - else - return 0 - end - end, - allow_put = function(inv, listname, index, stack, player) - return 0 - end, - allow_take = function(inv, listname, index, stack, player) - if creative_mode then - return -1 - else - return 0 - end - end, - on_move = function(inv, from_list, from_index, to_list, to_index, count, player) - end, - on_put = function(inv, listname, index, stack, player) - end, - on_take = function(inv, listname, index, stack, player) - local player_name, stack_name = player:get_player_name(), stack:get_name() - --print(player_name .. " takes item from creative inventory; listname = " .. listname .. ", index = " .. index .. ", stack = " .. dump(stack:to_table())) - if stack then - minetest.log("action", player_name .. " takes " .. stack_name .. " from creative inventory") - --print("Stack name: " .. stack_name .. ", Stack count: " .. stack:get_count()) - end - end, - }) - - creative.update_creative_inventory(owner_name) - --print("creative inventory size: " .. player_inventory[player_name].size) -end - -local function tab_category(tab_id) - local id_category = { - nil, -- Reserved for crafting tab. - minetest.registered_items, - minetest.registered_nodes, - minetest.registered_tools, - minetest.registered_craftitems - } - - -- If index out of range, show default ("All") page. - return id_category[tab_id] or id_category[2] -end - -function creative.update_creative_inventory(player_name) - local creative_list = {} - local player_inv = minetest.get_inventory({type = "detached", name = "creative_" .. player_name}) - local inv = player_inventory[player_name] - - for name, def in pairs(tab_category(inv.tab_id)) do - if not (def.groups.not_in_creative_inventory == 1) and - def.description and def.description ~= "" and - (def.name:find(inv.filter, 1, true) or - def.description:lower():find(inv.filter, 1, true)) then - creative_list[#creative_list+1] = name - end - end - - table.sort(creative_list) - player_inv:set_size("main", #creative_list) - player_inv:set_list("main", creative_list) - inv.size = #creative_list -end - --- Create the trash field -local trash = minetest.create_detached_inventory("creative_trash", { - -- Allow the stack to be placed and remove it in on_put() - -- This allows the creative inventory to restore the stack - allow_put = function(inv, listname, index, stack, player) - if creative_mode then - return stack:get_count() - else - return 0 - end - end, - on_put = function(inv, listname) - inv:set_list(listname, {}) - end, -}) -trash:set_size("main", 1) - -creative.formspec_add = "" - -creative.set_creative_formspec = function(player, start_i) - local player_name = player:get_player_name() - local inv = player_inventory[player_name] - local pagenum = math.floor(start_i / (3*8) + 1) - local pagemax = math.ceil(inv.size / (3*8)) - - player:set_inventory_formspec([[ - size[8,8.6] - image[4.06,3.4;0.8,0.8;creative_trash_icon.png] - list[current_player;main;0,4.7;8,1;] - list[current_player;main;0,5.85;8,3;8] - list[detached:creative_trash;main;4,3.3;1,1;] - listring[] - tablecolumns[color;text;color;text] - tableoptions[background=#00000000;highlight=#00000000;border=false] - button[5.4,3.2;0.8,0.9;creative_prev;<] - button[7.25,3.2;0.8,0.9;creative_next;>] - button[2.1,3.4;0.8,0.5;creative_search;?] - button[2.75,3.4;0.8,0.5;creative_clear;X] - tooltip[creative_search;Search] - tooltip[creative_clear;Reset] - listring[current_player;main] - ]] .. - "field[0.3,3.5;2.2,1;creative_filter;;" .. minetest.formspec_escape(inv.filter) .. "]" .. - "field_close_on_enter[creative_filter;false]" .. - "listring[detached:creative_" .. player_name .. ";main]" .. - "tabheader[0,0;creative_tabs;Crafting,All,Nodes,Tools,Items;" .. tostring(inv.tab_id) .. ";true;false]" .. - "list[detached:creative_" .. player_name .. ";main;0,0;8,3;" .. tostring(start_i) .. "]" .. - "table[6.05,3.35;1.15,0.5;pagenum;#FFFF00," .. tostring(pagenum) .. ",#FFFFFF,/ " .. tostring(pagemax) .. "]" .. - default.get_hotbar_bg(0,4.7) .. - default.gui_bg .. default.gui_bg_img .. default.gui_slots - .. creative.formspec_add - ) -end - -creative.set_crafting_formspec = function(player) - player:set_inventory_formspec([[ - size[8,8.6] - list[current_player;craft;2,0.75;3,3;] - list[current_player;craftpreview;6,1.75;1,1;] - list[current_player;main;0,4.7;8,1;] - list[current_player;main;0,5.85;8,3;8] - list[detached:creative_trash;main;0,2.75;1,1;] - image[0.06,2.85;0.8,0.8;creative_trash_icon.png] - image[5,1.75;1,1;gui_furnace_arrow_bg.png^[transformR270] - tabheader[0,0;creative_tabs;Crafting,All,Nodes,Tools,Items;1;true;false] - listring[current_player;main] - listring[current_player;craft] - ]] .. - default.get_hotbar_bg(0,4.7) .. - default.gui_bg .. default.gui_bg_img .. default.gui_slots - ) -end - -minetest.register_on_joinplayer(function(player) - -- If in creative mode, modify player's inventory forms - if not creative_mode then - return - end - creative.init_creative_inventory(player) - creative.set_creative_formspec(player, 0) -end) - -minetest.register_on_player_receive_fields(function(player, formname, fields) - if formname ~= "" or not creative_mode then - return - end - - local player_name = player:get_player_name() - local inv = player_inventory[player_name] - - -- If creative is turned on mid game - if not inv then - creative.init_creative_inventory(player) - creative.set_creative_formspec(player, 0) - return - end - - if fields.quit then - if inv.tab_id == 1 then - creative.set_crafting_formspec(player) - end - elseif fields.creative_tabs then - local tab = tonumber(fields.creative_tabs) - inv.tab_id = tab - player_inventory[player_name].start_i = 0 - - if tab == 1 then - creative.set_crafting_formspec(player) - else - creative.update_creative_inventory(player_name) - creative.set_creative_formspec(player, 0) - end - elseif fields.creative_clear then - player_inventory[player_name].start_i = 0 - inv.filter = "" - creative.update_creative_inventory(player_name) - creative.set_creative_formspec(player, 0) - elseif fields.creative_search or - fields.key_enter_field == "creative_filter" then - player_inventory[player_name].start_i = 0 - inv.filter = fields.creative_filter:lower() - creative.update_creative_inventory(player_name) - creative.set_creative_formspec(player, 0) - else - local start_i = player_inventory[player_name].start_i or 0 - - if fields.creative_prev then - start_i = start_i - 3*8 - if start_i < 0 then - start_i = inv.size - (inv.size % (3*8)) - if inv.size == start_i then - start_i = math.max(0, inv.size - (3*8)) - end - end - elseif fields.creative_next then - start_i = start_i + 3*8 - if start_i >= inv.size then - start_i = 0 - end - end - - player_inventory[player_name].start_i = start_i - creative.set_creative_formspec(player, start_i) - end -end) - -if creative_mode then - local digtime = 42 - local caps = {times = {digtime, digtime, digtime}, uses = 0, maxlevel = 256} +if minetest.setting_getbool("creative_mode") then + local digtime = 0.5 + local caps = {times = {digtime, digtime, digtime}, uses = 0, maxlevel = 3} minetest.register_item(":", { type = "none", diff --git a/mods/creative/inventory.lua b/mods/creative/inventory.lua new file mode 100644 index 00000000..177933f3 --- /dev/null +++ b/mods/creative/inventory.lua @@ -0,0 +1,171 @@ +creative = {} +local player_inventory = {} + +function creative.init_creative_inventory(player) + local player_name = player:get_player_name() + player_inventory[player_name] = { + size = 0, + filter = "", + start_i = 0 + } + + minetest.create_detached_inventory("creative_" .. player_name, { + allow_move = function(inv, from_list, from_index, to_list, to_index, count, player2) + if not to_list == "main" then + return count + else + return 0 + end + end, + allow_put = function(inv, listname, index, stack, player2) + return 0 + end, + allow_take = function(inv, listname, index, stack, player2) + return -1 + end, + on_move = function(inv, from_list, from_index, to_list, to_index, count, player2) + end, + on_put = function(inv, listname, index, stack, player2) + end, + on_take = function(inv, listname, index, stack, player2) + if stack and stack:get_count() > 0 then + minetest.log("action", player_name .. " takes " .. stack:get_name().. " from creative inventory") + end + end, + }) + + creative.update_creative_inventory(player_name, minetest.registered_items) +end + +function creative.update_creative_inventory(player_name, tab_content) + local creative_list = {} + local player_inv = minetest.get_inventory({type = "detached", name = "creative_" .. player_name}) + local inv = player_inventory[player_name] + if not inv then + creative.init_creative_inventory(minetest.get_player_by_name(player_name)) + end + + for name, def in pairs(tab_content) do + if not (def.groups.not_in_creative_inventory == 1) and + def.description and def.description ~= "" and + (def.name:find(inv.filter, 1, true) or + def.description:lower():find(inv.filter, 1, true)) then + creative_list[#creative_list+1] = name + end + end + + table.sort(creative_list) + player_inv:set_size("main", #creative_list) + player_inv:set_list("main", creative_list) + inv.size = #creative_list +end + +-- Create the trash field +local trash = minetest.create_detached_inventory("creative_trash", { + -- Allow the stack to be placed and remove it in on_put() + -- This allows the creative inventory to restore the stack + allow_put = function(inv, listname, index, stack, player) + return stack:get_count() + end, + on_put = function(inv, listname) + inv:set_list(listname, {}) + end, +}) +trash:set_size("main", 1) + +creative.formspec_add = "" + +function creative.register_tab(name, title, items) + sfinv.register_page("creative:" .. name, { + title = title, + is_in_nav = function(self, player, context) + return minetest.setting_getbool("creative_mode") + end, + get = function(self, player, context) + local player_name = player:get_player_name() + creative.update_creative_inventory(player_name, items) + local inv = player_inventory[player_name] + local start_i = inv.start_i or 0 + local pagenum = math.floor(start_i / (3*8) + 1) + local pagemax = math.ceil(inv.size / (3*8)) + return sfinv.make_formspec(player, context, + "label[6.2,3.35;" .. minetest.colorize("#FFFF00", tostring(pagenum)) .. " / " .. tostring(pagemax) .. "]" .. + [[ + image[4.06,3.4;0.8,0.8;creative_trash_icon.png] + listcolors[#00000069;#5A5A5A;#141318;#30434C;#FFF] + list[current_player;main;0,4.7;8,1;] + list[current_player;main;0,5.85;8,3;8] + list[detached:creative_trash;main;4,3.3;1,1;] + listring[] + button[5.4,3.2;0.8,0.9;creative_prev;<] + button[7.25,3.2;0.8,0.9;creative_next;>] + button[2.1,3.4;0.8,0.5;creative_search;?] + button[2.75,3.4;0.8,0.5;creative_clear;X] + tooltip[creative_search;Search] + tooltip[creative_clear;Reset] + listring[current_player;main] + field_close_on_enter[creative_filter;false] + ]] .. + "field[0.3,3.5;2.2,1;creative_filter;;" .. minetest.formspec_escape(inv.filter) .. "]" .. + "listring[detached:creative_" .. player_name .. ";main]" .. + "list[detached:creative_" .. player_name .. ";main;0,0;8,3;" .. tostring(start_i) .. "]" .. + default.get_hotbar_bg(0,4.7) .. + default.gui_bg .. default.gui_bg_img .. default.gui_slots + .. creative.formspec_add, false) + end, + on_enter = function(self, player, context) + local player_name = player:get_player_name() + local inv = player_inventory[player_name] + if inv then + inv.start_i = 0 + end + end, + on_player_receive_fields = function(self, player, context, fields) + local player_name = player:get_player_name() + local inv = player_inventory[player_name] + assert(inv) + + if fields.creative_clear then + inv.start_i = 0 + inv.filter = "" + creative.update_creative_inventory(player_name, items) + sfinv.set_player_inventory_formspec(player, context) + elseif fields.creative_search or + fields.key_enter_field == "creative_filter" then + inv.start_i = 0 + inv.filter = fields.creative_filter:lower() + creative.update_creative_inventory(player_name, items) + sfinv.set_player_inventory_formspec(player, context) + elseif not fields.quit then + local start_i = inv.start_i or 0 + + if fields.creative_prev then + start_i = start_i - 3*8 + if start_i < 0 then + start_i = inv.size - (inv.size % (3*8)) + if inv.size == start_i then + start_i = math.max(0, inv.size - (3*8)) + end + end + elseif fields.creative_next then + start_i = start_i + 3*8 + if start_i >= inv.size then + start_i = 0 + end + end + + inv.start_i = start_i + sfinv.set_player_inventory_formspec(player, context) + end + end + }) +end + +minetest.register_on_joinplayer(function(player) + creative.init_creative_inventory(player) +end) + +creative.register_tab("all", "All", minetest.registered_items) +creative.register_tab("nodes", "Nodes", minetest.registered_nodes) +creative.register_tab("tools", "Tools", minetest.registered_tools) +creative.register_tab("craftitems", "Items", minetest.registered_craftitems) diff --git a/mods/sfinv/README.md b/mods/sfinv/README.md new file mode 100644 index 00000000..6ff33923 --- /dev/null +++ b/mods/sfinv/README.md @@ -0,0 +1,21 @@ +Simple Fast Inventory +==================== + +![SFINV Screeny](https://cdn.pbrd.co/images/1yQhd1TI.png) + +A cleaner, simpler, solution to having an advanced inventory in Minetest. + +Written by rubenwardy. +License: MIT + +See game_api.txt for this mod's API + +License of source code and media files: +--------------------------------------- +Copyright (C) 2016 rubenwardy + +Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. diff --git a/mods/sfinv/api.lua b/mods/sfinv/api.lua new file mode 100644 index 00000000..a8c997f6 --- /dev/null +++ b/mods/sfinv/api.lua @@ -0,0 +1,158 @@ +sfinv = { + pages = {}, + pages_unordered = {}, + homepage_name = "sfinv:crafting", + contexts = {}, + enabled = true +} + +function sfinv.register_page(name, def) + assert(name, "Invalid sfinv page. Requires a name") + assert(def, "Invalid sfinv page. Requires a def[inition] table") + assert(def.get, "Invalid sfinv page. Def requires a get function.") + assert(not sfinv.pages[name], "Attempt to register already registered sfinv page " .. dump(name)) + + sfinv.pages[name] = def + def.name = name + table.insert(sfinv.pages_unordered, def) +end + +function sfinv.override_page(name, def) + assert(name, "Invalid sfinv page override. Requires a name") + assert(def, "Invalid sfinv page override. Requires a def[inition] table") + local page = sfinv.pages[name] + assert(page, "Attempt to override sfinv page " .. dump(name) .. " which does not exist.") + for key, value in pairs(def) do + page[key] = value + end +end + +function sfinv.get_nav_fs(player, context, nav, current_idx) + -- Only show tabs if there is more than one page + if #nav > 1 then + return "tabheader[0,0;tabs;" .. table.concat(nav, ",") .. ";" .. current_idx .. ";true;false]" + else + return "" + end +end + +local theme_main = "bgcolor[#080808BB;true]" .. default.gui_bg .. + default.gui_bg_img + +local theme_inv = default.gui_slots .. [[ + list[current_player;main;0,4.7;8,1;] + list[current_player;main;0,5.85;8,3;8] + ]] + +function sfinv.make_formspec(player, context, content, show_inv, size) + local tmp = { + size or "size[8,8.6]", + theme_main, + sfinv.get_nav_fs(player, context, context.nav_titles, context.nav_idx), + content + } + if show_inv then + tmp[#tmp + 1] = theme_inv + end + return table.concat(tmp, "") +end + +function sfinv.get_formspec(player, context) + -- Generate navigation tabs + local nav = {} + local nav_ids = {} + local current_idx = 1 + for i, pdef in pairs(sfinv.pages_unordered) do + if not pdef.is_in_nav or pdef:is_in_nav(player, context) then + nav[#nav + 1] = pdef.title + nav_ids[#nav_ids + 1] = pdef.name + if pdef.name == context.page then + current_idx = i + end + end + end + context.nav = nav_ids + context.nav_titles = nav + context.nav_idx = current_idx + + -- Generate formspec + local page = sfinv.pages[context.page] or sfinv.pages["404"] + if page then + return page:get(player, context) + else + local old_page = context.page + context.page = sfinv.homepage_name + assert(sfinv.pages[context.page], "[sfinv] Invalid homepage") + minetest.log("warning", "[sfinv] Couldn't find " .. dump(old_page) .. " so using switching to homepage") + return sfinv.get_formspec(player, context) + end +end + +function sfinv.set_player_inventory_formspec(player, context) + if not context then + local name = player:get_player_name() + context = sfinv.contexts[name] + if not context then + context = { + page = sfinv.homepage_name + } + sfinv.contexts[name] = context + end + end + + local fs = sfinv.get_formspec(player, context) + player:set_inventory_formspec(fs) +end + +minetest.register_on_joinplayer(function(player) + if sfinv.enabled then + minetest.after(0.5, function() + sfinv.set_player_inventory_formspec(player) + end) + end +end) + +minetest.register_on_leaveplayer(function(player) + sfinv.contexts[player:get_player_name()] = nil +end) + +minetest.register_on_player_receive_fields(function(player, formname, fields) + if formname ~= "" or not sfinv.enabled then + return false + end + + -- Get Context + local name = player:get_player_name() + local context = sfinv.contexts[name] + if not context then + sfinv.set_player_inventory_formspec(player) + return false + end + + -- Handle Events + if fields.tabs and context.nav then + local tid = tonumber(fields.tabs) + if tid and tid > 0 then + local id = context.nav[tid] + local page = sfinv.pages[id] + if id and page then + local oldpage = sfinv.pages[context.page] + if oldpage and oldpage.on_leave then + oldpage:on_leave(player, context) + end + context.page = id + if page.on_enter then + page:on_enter(player, context) + end + sfinv.set_player_inventory_formspec(player, context) + end + end + return + end + + -- Pass to page + local page = sfinv.pages[context.page] + if page and page.on_player_receive_fields then + return page:on_player_receive_fields(player, context, fields) + end +end) diff --git a/mods/sfinv/depends.txt b/mods/sfinv/depends.txt new file mode 100644 index 00000000..4ad96d51 --- /dev/null +++ b/mods/sfinv/depends.txt @@ -0,0 +1 @@ +default diff --git a/mods/sfinv/init.lua b/mods/sfinv/init.lua new file mode 100644 index 00000000..f030222c --- /dev/null +++ b/mods/sfinv/init.lua @@ -0,0 +1,22 @@ +dofile(minetest.get_modpath("sfinv") .. "/api.lua") + +sfinv.register_page("sfinv:crafting", { + title = "Crafting", + get = function(self, player, context) + return sfinv.make_formspec(player, context, [[ + list[current_player;craft;1.75,0.5;3,3;] + list[current_player;craftpreview;5.75,1.5;1,1;] + image[4.75,1.5;1,1;gui_furnace_arrow_bg.png^[transformR270] + listring[current_player;main] + listring[current_player;craft] + image[0,4.75;1,1;gui_hb_bg.png] + image[1,4.75;1,1;gui_hb_bg.png] + image[2,4.75;1,1;gui_hb_bg.png] + image[3,4.75;1,1;gui_hb_bg.png] + image[4,4.75;1,1;gui_hb_bg.png] + image[5,4.75;1,1;gui_hb_bg.png] + image[6,4.75;1,1;gui_hb_bg.png] + image[7,4.75;1,1;gui_hb_bg.png] + ]], true) + end +}) From 9bbe7f99da97743844d29d8148fe8c90196f51e0 Mon Sep 17 00:00:00 2001 From: paramat Date: Fri, 25 Nov 2016 02:04:12 +0000 Subject: [PATCH 76/99] Carts: Increase power rail acceleration to help climbs This is partly a workaround for a bug. Climbs with continuous power rails were failing often due to unexplained losses of speed leading to a reversal of direction. The lack of acceleration on climbs meant that lost speed was not regained. Keeping cart speed at maximum on climbs helps reduce the chance of reversals. This also allows players to slowly accelerate up to full speed on a climb without needing a horizontal run-up to reach full speed first. It may not be possible to build the horizontal sections needed, or, if players are replacing a previous carts mod their track constructions, bridges, tunnels etc. will often not have the horizontal sections needed. Players will also sometimes need to place and enter a cart on a slope and be able to climb. --- mods/carts/rails.lua | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/mods/carts/rails.lua b/mods/carts/rails.lua index f929e84e..5da4ac4d 100644 --- a/mods/carts/rails.lua +++ b/mods/carts/rails.lua @@ -20,6 +20,7 @@ minetest.register_craft({ minetest.register_alias("default:rail", "carts:rail") + carts:register_rail("carts:powerrail", { description = "Powered rail", tiles = { @@ -27,7 +28,7 @@ carts:register_rail("carts:powerrail", { "carts_rail_t_junction_pwr.png", "carts_rail_crossing_pwr.png" }, groups = carts:get_rail_groups(), -}, {acceleration = 4}) +}, {acceleration = 5}) minetest.register_craft({ output = "carts:powerrail 8", @@ -38,6 +39,7 @@ minetest.register_craft({ } }) + carts:register_rail("carts:brakerail", { description = "Brake rail", tiles = { @@ -47,7 +49,6 @@ carts:register_rail("carts:brakerail", { groups = carts:get_rail_groups(), }, {acceleration = -3}) - minetest.register_craft({ output = "carts:brakerail 8", recipe = { From 81f8c8aef8bd9d8791ee4aee03f608af0658711e Mon Sep 17 00:00:00 2001 From: SmallJoker Date: Sat, 26 Nov 2016 09:09:35 +0100 Subject: [PATCH 77/99] Carts: Move entity definition to seperate file --- mods/carts/cart_entity.lua | 384 ++++++++++++++++++++++++++++++++++++ mods/carts/init.lua | 385 +------------------------------------ 2 files changed, 385 insertions(+), 384 deletions(-) create mode 100644 mods/carts/cart_entity.lua diff --git a/mods/carts/cart_entity.lua b/mods/carts/cart_entity.lua new file mode 100644 index 00000000..ea5f4bca --- /dev/null +++ b/mods/carts/cart_entity.lua @@ -0,0 +1,384 @@ +local cart_entity = { + physical = false, -- otherwise going uphill breaks + collisionbox = {-0.5, -0.5, -0.5, 0.5, 0.5, 0.5}, + visual = "mesh", + mesh = "carts_cart.b3d", + visual_size = {x=1, y=1}, + textures = {"carts_cart.png"}, + + driver = nil, + punched = false, -- used to re-send velocity and position + velocity = {x=0, y=0, z=0}, -- only used on punch + old_dir = {x=1, y=0, z=0}, -- random value to start the cart on punch + old_pos = nil, + old_switch = 0, + railtype = nil, + attached_items = {} +} + +function cart_entity:on_rightclick(clicker) + if not clicker or not clicker:is_player() then + return + end + local player_name = clicker:get_player_name() + if self.driver and player_name == self.driver then + self.driver = nil + carts:manage_attachment(clicker, nil) + elseif not self.driver then + self.driver = player_name + carts:manage_attachment(clicker, self.object) + end +end + +function cart_entity:on_activate(staticdata, dtime_s) + self.object:set_armor_groups({immortal=1}) + if string.sub(staticdata, 1, string.len("return")) ~= "return" then + return + end + local data = minetest.deserialize(staticdata) + if not data or type(data) ~= "table" then + return + end + self.railtype = data.railtype + if data.old_dir then + self.old_dir = data.old_dir + end + if data.old_vel then + self.old_vel = data.old_vel + end +end + +function cart_entity:get_staticdata() + return minetest.serialize({ + railtype = self.railtype, + old_dir = self.old_dir, + old_vel = self.old_vel + }) +end + +function cart_entity:on_punch(puncher, time_from_last_punch, tool_capabilities, direction) + local pos = self.object:getpos() + if not self.railtype then + local node = minetest.get_node(pos).name + self.railtype = minetest.get_item_group(node, "connect_to_raillike") + end + + if not puncher or not puncher:is_player() then + local cart_dir = carts:get_rail_direction(pos, self.old_dir, nil, nil, self.railtype) + if vector.equals(cart_dir, {x=0, y=0, z=0}) then + return + end + self.velocity = vector.multiply(cart_dir, 3) + self.punched = true + return + end + + if puncher:get_player_control().sneak then + if self.sound_handle then + minetest.sound_stop(self.sound_handle) + end + -- Pick up cart: Drop all attachments + if self.driver then + if self.old_pos then + self.object:setpos(self.old_pos) + end + local player = minetest.get_player_by_name(self.driver) + carts:manage_attachment(player, nil) + end + for _,obj_ in ipairs(self.attached_items) do + if obj_ then + obj_:set_detach() + end + end + + local leftover = puncher:get_inventory():add_item("main", "carts:cart") + if not leftover:is_empty() then + minetest.add_item(self.object:getpos(), leftover) + end + self.object:remove() + return + end + + local vel = self.object:getvelocity() + if puncher:get_player_name() == self.driver then + if math.abs(vel.x + vel.z) > carts.punch_speed_max then + return + end + end + + local punch_dir = carts:velocity_to_dir(puncher:get_look_dir()) + punch_dir.y = 0 + local cart_dir = carts:get_rail_direction(pos, punch_dir, nil, nil, self.railtype) + if vector.equals(cart_dir, {x=0, y=0, z=0}) then + return + end + + local punch_interval = 1 + if tool_capabilities and tool_capabilities.full_punch_interval then + punch_interval = tool_capabilities.full_punch_interval + end + time_from_last_punch = math.min(time_from_last_punch or punch_interval, punch_interval) + local f = 2 * (time_from_last_punch / punch_interval) + + self.velocity = vector.multiply(cart_dir, f) + self.old_dir = cart_dir + self.punched = true +end + +local function rail_on_step_event(handler, obj, dtime) + if handler then + handler(obj, dtime) + end +end + +-- sound refresh interval = 1.0sec +local function rail_sound(self, dtime) + if not self.sound_ttl then + self.sound_ttl = 1.0 + return + elseif self.sound_ttl > 0 then + self.sound_ttl = self.sound_ttl - dtime + return + end + self.sound_ttl = 1.0 + if self.sound_handle then + local handle = self.sound_handle + self.sound_handle = nil + minetest.after(0.2, minetest.sound_stop, handle) + end + local vel = self.object:getvelocity() + local speed = vector.length(vel) + if speed > 0 then + self.sound_handle = minetest.sound_play( + "carts_cart_moving", { + object = self.object, + gain = (speed / carts.speed_max) / 2, + loop = true, + }) + end +end + +local function rail_on_step(self, dtime) + local pos = self.object:getpos() + local node = minetest.get_node(pos) + local railparams = carts.railparams[node.name] or {} + + local vel = self.object:getvelocity() + local update = {} + if self.punched then + vel = vector.add(vel, self.velocity) + self.object:setvelocity(vel) + self.old_dir.y = 0 + elseif vector.equals(vel, {x=0, y=0, z=0}) then + return + end + + -- stop cart if velocity vector flips + if self.old_vel and (((self.old_vel.x * vel.x) < 0) or + ((self.old_vel.z * vel.z) < 0)) and + (self.old_vel.y == 0) then + self.old_dir = {x = 0, y = 0, z = 0} + self.old_vel = {x = 0, y = 0, z = 0} + self.velocity = {x = 0, y = 0, z = 0} + self.old_pos = pos + self.object:setvelocity(vector.new()) + self.object:setacceleration(vector.new()) + rail_on_step_event(railparams.on_step, self, dtime) + return + end + self.old_vel = vector.new(vel) + + if self.old_pos and not self.punched then + local flo_pos = vector.round(pos) + local flo_old = vector.round(self.old_pos) + if vector.equals(flo_pos, flo_old) then + -- Do not check one node multiple times + rail_on_step_event(railparams.on_step, self, dtime) + return + end + end + + local ctrl, player + + -- Get player controls + if self.driver then + player = minetest.get_player_by_name(self.driver) + if player then + ctrl = player:get_player_control() + end + end + + if self.old_pos then + -- Detection for "skipping" nodes + local expected_pos = vector.add(self.old_pos, self.old_dir) + local found_path = carts:pathfinder( + pos, expected_pos, self.old_dir, ctrl, self.old_switch, self.railtype + ) + + if not found_path then + -- No rail found: reset back to the expected position + pos = vector.new(self.old_pos) + update.pos = true + end + end + + local cart_dir = carts:velocity_to_dir(vel) + + -- dir: New moving direction of the cart + -- switch_keys: Currently pressed L/R key, used to ignore the key on the next rail node + local dir, switch_keys = carts:get_rail_direction( + pos, cart_dir, ctrl, self.old_switch, self.railtype + ) + + local new_acc = {x=0, y=0, z=0} + if vector.equals(dir, {x=0, y=0, z=0}) then + vel = {x=0, y=0, z=0} + pos = vector.round(pos) + update.pos = true + update.vel = true + else + -- If the direction changed + if dir.x ~= 0 and self.old_dir.z ~= 0 then + vel.x = dir.x * math.abs(vel.z) + vel.z = 0 + pos.z = math.floor(pos.z + 0.5) + update.pos = true + end + if dir.z ~= 0 and self.old_dir.x ~= 0 then + vel.z = dir.z * math.abs(vel.x) + vel.x = 0 + pos.x = math.floor(pos.x + 0.5) + update.pos = true + end + -- Up, down? + if dir.y ~= self.old_dir.y then + vel.y = dir.y * math.abs(vel.x + vel.z) + pos = vector.round(pos) + update.pos = true + end + + -- Slow down or speed up.. + local acc = dir.y * -4.0 + + -- no need to check for railparams == nil since we always make it exist. + local speed_mod = railparams.acceleration + if speed_mod and speed_mod ~= 0 then + -- Try to make it similar to the original carts mod + acc = acc + speed_mod + else + -- Handbrake + if ctrl and ctrl.down then + acc = acc - 1.6 + else + acc = acc - 0.4 + end + end + + new_acc = vector.multiply(dir, acc) + end + + -- Limits + local max_vel = carts.speed_max + for _,v in ipairs({"x","y","z"}) do + if math.abs(vel[v]) > max_vel then + vel[v] = carts:get_sign(vel[v]) * max_vel + new_acc[v] = 0 + update.vel = true + end + end + + self.object:setacceleration(new_acc) + self.old_pos = vector.new(pos) + if not vector.equals(dir, {x=0, y=0, z=0}) then + self.old_dir = vector.new(dir) + end + self.old_switch = switch_keys + + if self.punched then + -- Collect dropped items + for _,obj_ in ipairs(minetest.get_objects_inside_radius(pos, 1)) do + if not obj_:is_player() and + obj_:get_luaentity() and + not obj_:get_luaentity().physical_state and + obj_:get_luaentity().name == "__builtin:item" then + + obj_:set_attach(self.object, "", {x=0, y=0, z=0}, {x=0, y=0, z=0}) + self.attached_items[#self.attached_items + 1] = obj_ + end + end + self.punched = false + update.vel = true + end + + if not (update.vel or update.pos) then + rail_on_step_event(railparams.on_step, self, dtime) + return + end + + local yaw = 0 + if self.old_dir.x < 0 then + yaw = 0.5 + elseif self.old_dir.x > 0 then + yaw = 1.5 + elseif self.old_dir.z < 0 then + yaw = 1 + end + self.object:setyaw(yaw * math.pi) + + local anim = {x=0, y=0} + if dir.y == -1 then + anim = {x=1, y=1} + elseif dir.y == 1 then + anim = {x=2, y=2} + end + self.object:set_animation(anim, 1, 0) + + self.object:setvelocity(vel) + if update.pos then + self.object:setpos(pos) + end + + -- call event handler + rail_on_step_event(railparams.on_step, self, dtime) +end + +function cart_entity:on_step(dtime) + rail_on_step(self, dtime) + rail_sound(self, dtime) +end + +minetest.register_entity("carts:cart", cart_entity) + +minetest.register_craftitem("carts:cart", { + description = "Cart (Sneak+Click to pick up)", + inventory_image = minetest.inventorycube("carts_cart_top.png", "carts_cart_side.png", "carts_cart_side.png"), + wield_image = "carts_cart_side.png", + on_place = function(itemstack, placer, pointed_thing) + if not pointed_thing.type == "node" then + return + end + if carts:is_rail(pointed_thing.under) then + minetest.add_entity(pointed_thing.under, "carts:cart") + elseif carts:is_rail(pointed_thing.above) then + minetest.add_entity(pointed_thing.above, "carts:cart") + else + return + end + + minetest.sound_play({name = "default_place_node_metal", gain = 0.5}, + {pos = pointed_thing.above}) + + if not minetest.setting_getbool("creative_mode") then + itemstack:take_item() + end + return itemstack + end, +}) + +minetest.register_craft({ + output = "carts:cart", + recipe = { + {"default:steel_ingot", "", "default:steel_ingot"}, + {"default:steel_ingot", "default:steel_ingot", "default:steel_ingot"}, + }, +}) diff --git a/mods/carts/init.lua b/mods/carts/init.lua index 7cfee74f..53b33cc2 100644 --- a/mods/carts/init.lua +++ b/mods/carts/init.lua @@ -17,387 +17,4 @@ if not default.player_attached then default.player_attached = {} end -local cart_entity = { - physical = false, -- otherwise going uphill breaks - collisionbox = {-0.5, -0.5, -0.5, 0.5, 0.5, 0.5}, - visual = "mesh", - mesh = "carts_cart.b3d", - visual_size = {x=1, y=1}, - textures = {"carts_cart.png"}, - - driver = nil, - punched = false, -- used to re-send velocity and position - velocity = {x=0, y=0, z=0}, -- only used on punch - old_dir = {x=1, y=0, z=0}, -- random value to start the cart on punch - old_pos = nil, - old_switch = 0, - railtype = nil, - attached_items = {} -} - -function cart_entity:on_rightclick(clicker) - if not clicker or not clicker:is_player() then - return - end - local player_name = clicker:get_player_name() - if self.driver and player_name == self.driver then - self.driver = nil - carts:manage_attachment(clicker, nil) - elseif not self.driver then - self.driver = player_name - carts:manage_attachment(clicker, self.object) - end -end - -function cart_entity:on_activate(staticdata, dtime_s) - self.object:set_armor_groups({immortal=1}) - if string.sub(staticdata, 1, string.len("return")) ~= "return" then - return - end - local data = minetest.deserialize(staticdata) - if not data or type(data) ~= "table" then - return - end - self.railtype = data.railtype - if data.old_dir then - self.old_dir = data.old_dir - end - if data.old_vel then - self.old_vel = data.old_vel - end -end - -function cart_entity:get_staticdata() - return minetest.serialize({ - railtype = self.railtype, - old_dir = self.old_dir, - old_vel = self.old_vel - }) -end - -function cart_entity:on_punch(puncher, time_from_last_punch, tool_capabilities, direction) - local pos = self.object:getpos() - if not self.railtype then - local node = minetest.get_node(pos).name - self.railtype = minetest.get_item_group(node, "connect_to_raillike") - end - - if not puncher or not puncher:is_player() then - local cart_dir = carts:get_rail_direction(pos, self.old_dir, nil, nil, self.railtype) - if vector.equals(cart_dir, {x=0, y=0, z=0}) then - return - end - self.velocity = vector.multiply(cart_dir, 3) - self.punched = true - return - end - - if puncher:get_player_control().sneak then - if self.sound_handle then - minetest.sound_stop(self.sound_handle) - end - -- Pick up cart: Drop all attachments - if self.driver then - if self.old_pos then - self.object:setpos(self.old_pos) - end - local player = minetest.get_player_by_name(self.driver) - carts:manage_attachment(player, nil) - end - for _,obj_ in ipairs(self.attached_items) do - if obj_ then - obj_:set_detach() - end - end - - local leftover = puncher:get_inventory():add_item("main", "carts:cart") - if not leftover:is_empty() then - minetest.add_item(self.object:getpos(), leftover) - end - self.object:remove() - return - end - - local vel = self.object:getvelocity() - if puncher:get_player_name() == self.driver then - if math.abs(vel.x + vel.z) > carts.punch_speed_max then - return - end - end - - local punch_dir = carts:velocity_to_dir(puncher:get_look_dir()) - punch_dir.y = 0 - local cart_dir = carts:get_rail_direction(pos, punch_dir, nil, nil, self.railtype) - if vector.equals(cart_dir, {x=0, y=0, z=0}) then - return - end - - local punch_interval = 1 - if tool_capabilities and tool_capabilities.full_punch_interval then - punch_interval = tool_capabilities.full_punch_interval - end - time_from_last_punch = math.min(time_from_last_punch or punch_interval, punch_interval) - local f = 2 * (time_from_last_punch / punch_interval) - - self.velocity = vector.multiply(cart_dir, f) - self.old_dir = cart_dir - self.punched = true -end - -local function rail_on_step_event(handler, obj, dtime) - if handler then - handler(obj, dtime) - end -end - --- sound refresh interval = 1.0sec -local function rail_sound(self, dtime) - if not self.sound_ttl then - self.sound_ttl = 1.0 - return - elseif self.sound_ttl > 0 then - self.sound_ttl = self.sound_ttl - dtime - return - end - self.sound_ttl = 1.0 - if self.sound_handle then - local handle = self.sound_handle - self.sound_handle = nil - minetest.after(0.2, minetest.sound_stop, handle) - end - local vel = self.object:getvelocity() - local speed = vector.length(vel) - if speed > 0 then - self.sound_handle = minetest.sound_play( - "carts_cart_moving", { - object = self.object, - gain = (speed / carts.speed_max) / 2, - loop = true, - }) - end -end - -local function rail_on_step(self, dtime) - local pos = self.object:getpos() - local node = minetest.get_node(pos) - local railparams = carts.railparams[node.name] or {} - - local vel = self.object:getvelocity() - local update = {} - if self.punched then - vel = vector.add(vel, self.velocity) - self.object:setvelocity(vel) - self.old_dir.y = 0 - elseif vector.equals(vel, {x=0, y=0, z=0}) then - return - end - - -- stop cart if velocity vector flips - if self.old_vel and (((self.old_vel.x * vel.x) < 0) or - ((self.old_vel.z * vel.z) < 0)) and - (self.old_vel.y == 0) then - self.old_dir = {x = 0, y = 0, z = 0} - self.old_vel = {x = 0, y = 0, z = 0} - self.velocity = {x = 0, y = 0, z = 0} - self.old_pos = pos - self.object:setvelocity(vector.new()) - self.object:setacceleration(vector.new()) - rail_on_step_event(railparams.on_step, self, dtime) - return - end - self.old_vel = vector.new(vel) - - if self.old_pos and not self.punched then - local flo_pos = vector.round(pos) - local flo_old = vector.round(self.old_pos) - if vector.equals(flo_pos, flo_old) then - -- Do not check one node multiple times - rail_on_step_event(railparams.on_step, self, dtime) - return - end - end - - local ctrl, player - - -- Get player controls - if self.driver then - player = minetest.get_player_by_name(self.driver) - if player then - ctrl = player:get_player_control() - end - end - - if self.old_pos then - -- Detection for "skipping" nodes - local expected_pos = vector.add(self.old_pos, self.old_dir) - local found_path = carts:pathfinder( - pos, expected_pos, self.old_dir, ctrl, self.old_switch, self.railtype - ) - - if not found_path then - -- No rail found: reset back to the expected position - pos = vector.new(self.old_pos) - update.pos = true - end - end - - local cart_dir = carts:velocity_to_dir(vel) - - -- dir: New moving direction of the cart - -- switch_keys: Currently pressed L/R key, used to ignore the key on the next rail node - local dir, switch_keys = carts:get_rail_direction( - pos, cart_dir, ctrl, self.old_switch, self.railtype - ) - - local new_acc = {x=0, y=0, z=0} - if vector.equals(dir, {x=0, y=0, z=0}) then - vel = {x=0, y=0, z=0} - pos = vector.round(pos) - update.pos = true - update.vel = true - else - -- If the direction changed - if dir.x ~= 0 and self.old_dir.z ~= 0 then - vel.x = dir.x * math.abs(vel.z) - vel.z = 0 - pos.z = math.floor(pos.z + 0.5) - update.pos = true - end - if dir.z ~= 0 and self.old_dir.x ~= 0 then - vel.z = dir.z * math.abs(vel.x) - vel.x = 0 - pos.x = math.floor(pos.x + 0.5) - update.pos = true - end - -- Up, down? - if dir.y ~= self.old_dir.y then - vel.y = dir.y * math.abs(vel.x + vel.z) - pos = vector.round(pos) - update.pos = true - end - - -- Slow down or speed up.. - local acc = dir.y * -4.0 - - -- no need to check for railparams == nil since we always make it exist. - local speed_mod = railparams.acceleration - if speed_mod and speed_mod ~= 0 then - -- Try to make it similar to the original carts mod - acc = acc + speed_mod - else - -- Handbrake - if ctrl and ctrl.down then - acc = acc - 1.6 - else - acc = acc - 0.4 - end - end - - new_acc = vector.multiply(dir, acc) - end - - -- Limits - local max_vel = carts.speed_max - for _,v in ipairs({"x","y","z"}) do - if math.abs(vel[v]) > max_vel then - vel[v] = carts:get_sign(vel[v]) * max_vel - new_acc[v] = 0 - update.vel = true - end - end - - self.object:setacceleration(new_acc) - self.old_pos = vector.new(pos) - if not vector.equals(dir, {x=0, y=0, z=0}) then - self.old_dir = vector.new(dir) - end - self.old_switch = switch_keys - - if self.punched then - -- Collect dropped items - for _,obj_ in ipairs(minetest.get_objects_inside_radius(pos, 1)) do - if not obj_:is_player() and - obj_:get_luaentity() and - not obj_:get_luaentity().physical_state and - obj_:get_luaentity().name == "__builtin:item" then - - obj_:set_attach(self.object, "", {x=0, y=0, z=0}, {x=0, y=0, z=0}) - self.attached_items[#self.attached_items + 1] = obj_ - end - end - self.punched = false - update.vel = true - end - - if not (update.vel or update.pos) then - rail_on_step_event(railparams.on_step, self, dtime) - return - end - - local yaw = 0 - if self.old_dir.x < 0 then - yaw = 0.5 - elseif self.old_dir.x > 0 then - yaw = 1.5 - elseif self.old_dir.z < 0 then - yaw = 1 - end - self.object:setyaw(yaw * math.pi) - - local anim = {x=0, y=0} - if dir.y == -1 then - anim = {x=1, y=1} - elseif dir.y == 1 then - anim = {x=2, y=2} - end - self.object:set_animation(anim, 1, 0) - - self.object:setvelocity(vel) - if update.pos then - self.object:setpos(pos) - end - - -- call event handler - rail_on_step_event(railparams.on_step, self, dtime) -end - -function cart_entity:on_step(dtime) - rail_on_step(self, dtime) - rail_sound(self, dtime) -end - -minetest.register_entity("carts:cart", cart_entity) - -minetest.register_craftitem("carts:cart", { - description = "Cart (Sneak+Click to pick up)", - inventory_image = minetest.inventorycube("carts_cart_top.png", "carts_cart_side.png", "carts_cart_side.png"), - wield_image = "carts_cart_side.png", - on_place = function(itemstack, placer, pointed_thing) - if not pointed_thing.type == "node" then - return - end - if carts:is_rail(pointed_thing.under) then - minetest.add_entity(pointed_thing.under, "carts:cart") - elseif carts:is_rail(pointed_thing.above) then - minetest.add_entity(pointed_thing.above, "carts:cart") - else - return - end - - minetest.sound_play({name = "default_place_node_metal", gain = 0.5}, - {pos = pointed_thing.above}) - - if not minetest.setting_getbool("creative_mode") then - itemstack:take_item() - end - return itemstack - end, -}) - -minetest.register_craft({ - output = "carts:cart", - recipe = { - {"default:steel_ingot", "", "default:steel_ingot"}, - {"default:steel_ingot", "default:steel_ingot", "default:steel_ingot"}, - }, -}) +dofile(carts.modpath.."/cart_entity.lua") From 2effe40dc5e04fec7824f060dc843bfe8fba05f3 Mon Sep 17 00:00:00 2001 From: SmallJoker Date: Sat, 26 Nov 2016 09:20:09 +0100 Subject: [PATCH 78/99] Carts: Improve readme file --- mods/carts/README.txt | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/mods/carts/README.txt b/mods/carts/README.txt index 0cfaea26..31ce6449 100644 --- a/mods/carts/README.txt +++ b/mods/carts/README.txt @@ -1,15 +1,17 @@ Carts (formerly boost_cart) ========================== -Cleaned up for merge based almost entirely on SmallJoker's boost_cart -mod (github.com/smalljoker/boost_cart). +Carts, based almost entirely on the mod boost_cart [1], which +itself is based on (and fully compatible with) the carts mod [2]. -That in turn was based on (and fully compatible with) the mod "carts" -by PilzAdam +The model was originally designed by stujones11 [3] (CC-0). -The model was redone, but based on github.com/stujones11/railcart, CC-0 +Cart textures are based on original work from PixelBOX (WTFPL). -Cart Textures are based on original work from PixelBOX (WTFPL). + +[1] https://github.com/SmallJoker/boost_cart/ +[2] https://github.com/PilzAdam/carts/ +[3] https://github.com/stujones11/railcart/ Features From 1a6ad498d74f5130a18c0563c99cde149aafc3b6 Mon Sep 17 00:00:00 2001 From: SmallJoker Date: Sat, 26 Nov 2016 09:48:24 +0100 Subject: [PATCH 79/99] Carts: Increase performance overall --- mods/carts/cart_entity.lua | 61 ++++++++++++++++++++------------------ mods/carts/functions.lua | 4 +-- 2 files changed, 34 insertions(+), 31 deletions(-) diff --git a/mods/carts/cart_entity.lua b/mods/carts/cart_entity.lua index ea5f4bca..4301b852 100644 --- a/mods/carts/cart_entity.lua +++ b/mods/carts/cart_entity.lua @@ -158,13 +158,13 @@ local function rail_sound(self, dtime) end end -local function rail_on_step(self, dtime) - local pos = self.object:getpos() +local function get_railparams(pos) local node = minetest.get_node(pos) - local railparams = carts.railparams[node.name] or {} + return carts.railparams[node.name] or {} +end +local function rail_on_step(self, dtime) local vel = self.object:getvelocity() - local update = {} if self.punched then vel = vector.add(vel, self.velocity) self.object:setvelocity(vel) @@ -173,17 +173,17 @@ local function rail_on_step(self, dtime) return end + local pos = self.object:getpos() + local update = {} + -- stop cart if velocity vector flips - if self.old_vel and (((self.old_vel.x * vel.x) < 0) or - ((self.old_vel.z * vel.z) < 0)) and - (self.old_vel.y == 0) then - self.old_dir = {x = 0, y = 0, z = 0} + if self.old_vel and self.old_vel.y == 0 and + (self.old_vel.x * vel.x < 0 or self.old_vel.z * vel.z < 0) then self.old_vel = {x = 0, y = 0, z = 0} - self.velocity = {x = 0, y = 0, z = 0} self.old_pos = pos self.object:setvelocity(vector.new()) self.object:setacceleration(vector.new()) - rail_on_step_event(railparams.on_step, self, dtime) + rail_on_step_event(get_railparams(pos).on_step, self, dtime) return end self.old_vel = vector.new(vel) @@ -193,7 +193,6 @@ local function rail_on_step(self, dtime) local flo_old = vector.round(self.old_pos) if vector.equals(flo_pos, flo_old) then -- Do not check one node multiple times - rail_on_step_event(railparams.on_step, self, dtime) return end end @@ -210,9 +209,8 @@ local function rail_on_step(self, dtime) if self.old_pos then -- Detection for "skipping" nodes - local expected_pos = vector.add(self.old_pos, self.old_dir) local found_path = carts:pathfinder( - pos, expected_pos, self.old_dir, ctrl, self.old_switch, self.railtype + pos, self.old_pos, self.old_dir, ctrl, self.old_switch, self.railtype ) if not found_path then @@ -223,6 +221,7 @@ local function rail_on_step(self, dtime) end local cart_dir = carts:velocity_to_dir(vel) + local railparams -- dir: New moving direction of the cart -- switch_keys: Currently pressed L/R key, used to ignore the key on the next rail node @@ -232,34 +231,36 @@ local function rail_on_step(self, dtime) local new_acc = {x=0, y=0, z=0} if vector.equals(dir, {x=0, y=0, z=0}) then - vel = {x=0, y=0, z=0} + vel = {x = 0, y = 0, z = 0} pos = vector.round(pos) update.pos = true update.vel = true else - -- If the direction changed - if dir.x ~= 0 and self.old_dir.z ~= 0 then - vel.x = dir.x * math.abs(vel.z) - vel.z = 0 - pos.z = math.floor(pos.z + 0.5) - update.pos = true + -- Direction change detected + if not vector.equals(dir, self.old_dir) then + vel = vector.multiply(dir, math.abs(vel.x + vel.z)) + update.vel = true + if dir.y ~= self.old_dir.y then + pos = vector.round(pos) + update.pos = true + end end - if dir.z ~= 0 and self.old_dir.x ~= 0 then - vel.z = dir.z * math.abs(vel.x) - vel.x = 0 + -- Center on the rail + if dir.z ~= 0 and math.floor(pos.x + 0.5) ~= pos.x then pos.x = math.floor(pos.x + 0.5) update.pos = true end - -- Up, down? - if dir.y ~= self.old_dir.y then - vel.y = dir.y * math.abs(vel.x + vel.z) - pos = vector.round(pos) + if dir.x ~= 0 and math.floor(pos.z + 0.5) ~= pos.z then + pos.z = math.floor(pos.z + 0.5) update.pos = true end -- Slow down or speed up.. local acc = dir.y * -4.0 + -- Get rail for corrected position + railparams = get_railparams(pos) + -- no need to check for railparams == nil since we always make it exist. local speed_mod = railparams.acceleration if speed_mod and speed_mod ~= 0 then @@ -279,7 +280,7 @@ local function rail_on_step(self, dtime) -- Limits local max_vel = carts.speed_max - for _,v in ipairs({"x","y","z"}) do + for _, v in pairs({"x","y","z"}) do if math.abs(vel[v]) > max_vel then vel[v] = carts:get_sign(vel[v]) * max_vel new_acc[v] = 0 @@ -296,7 +297,7 @@ local function rail_on_step(self, dtime) if self.punched then -- Collect dropped items - for _,obj_ in ipairs(minetest.get_objects_inside_radius(pos, 1)) do + for _, obj_ in pairs(minetest.get_objects_inside_radius(pos, 1)) do if not obj_:is_player() and obj_:get_luaentity() and not obj_:get_luaentity().physical_state and @@ -310,6 +311,8 @@ local function rail_on_step(self, dtime) update.vel = true end + railparams = railparams or get_railparams(pos) + if not (update.vel or update.pos) then rail_on_step_event(railparams.on_step, self, dtime) return diff --git a/mods/carts/functions.lua b/mods/carts/functions.lua index f255fef5..beda5849 100644 --- a/mods/carts/functions.lua +++ b/mods/carts/functions.lua @@ -158,9 +158,9 @@ function carts:get_rail_direction(pos_, dir, ctrl, old_switch, railtype) return {x=0, y=0, z=0} end -function carts:pathfinder(pos_, expected_pos, old_dir, ctrl, pf_switch, railtype) +function carts:pathfinder(pos_, old_pos, old_dir, ctrl, pf_switch, railtype) local pos = vector.round(pos_) - local pf_pos = vector.round(expected_pos) + local pf_pos = vector.round(old_pos) local pf_dir = vector.new(old_dir) for i = 1, 3 do From 788ae97ba17891aea44c81adc269c88ea6f18c90 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Diego=20Mart=C3=ADnez?= Date: Sun, 27 Nov 2016 03:02:38 -0300 Subject: [PATCH 80/99] Carts: Take creative mode into account This commit makes the carts mod not add the cart item to the player's inventory if running with creative mode and the player already has it. --- mods/carts/cart_entity.lua | 10 +++++++--- 1 file changed, 7 insertions(+), 3 deletions(-) diff --git a/mods/carts/cart_entity.lua b/mods/carts/cart_entity.lua index 4301b852..a0a2d9f0 100644 --- a/mods/carts/cart_entity.lua +++ b/mods/carts/cart_entity.lua @@ -91,9 +91,13 @@ function cart_entity:on_punch(puncher, time_from_last_punch, tool_capabilities, end end - local leftover = puncher:get_inventory():add_item("main", "carts:cart") - if not leftover:is_empty() then - minetest.add_item(self.object:getpos(), leftover) + local inv = puncher:get_inventory() + if not minetest.setting_getbool("creative_mode") + or not inv:contains_item("main", "carts:cart") then + local leftover = inv:add_item("main", "carts:cart") + if not leftover:is_empty() then + minetest.add_item(self.object:getpos(), leftover) + end end self.object:remove() return From fa17fe31d6e3014728dc6d4e7aa8618ee77601e1 Mon Sep 17 00:00:00 2001 From: paramat Date: Sun, 27 Nov 2016 23:52:28 +0000 Subject: [PATCH 81/99] Creative: Re-implement constant hand dig times, add comment --- mods/creative/init.lua | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/mods/creative/init.lua b/mods/creative/init.lua index 79f8978f..868b802b 100644 --- a/mods/creative/init.lua +++ b/mods/creative/init.lua @@ -1,8 +1,14 @@ dofile(minetest.get_modpath("creative") .. "/inventory.lua") if minetest.setting_getbool("creative_mode") then - local digtime = 0.5 - local caps = {times = {digtime, digtime, digtime}, uses = 0, maxlevel = 3} + -- Dig time is modified according to difference (leveldiff) between tool + -- 'maxlevel' and node 'level'. Digtime is divided by the larger of + -- leveldiff and 1. + -- To speed up digging in creative, hand 'maxlevel' and 'digtime' have been + -- increased such that nodes of differing levels have an insignificant + -- effect on digtime. + local digtime = 42 + local caps = {times = {digtime, digtime, digtime}, uses = 0, maxlevel = 256} minetest.register_item(":", { type = "none", From 0196c4793a7414990bd452ca49c00dd8196935ee Mon Sep 17 00:00:00 2001 From: paramat Date: Mon, 28 Nov 2016 01:17:15 +0000 Subject: [PATCH 82/99] Carts: Make rails 'is ground content = false' --- mods/carts/functions.lua | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mods/carts/functions.lua b/mods/carts/functions.lua index beda5849..285645cb 100644 --- a/mods/carts/functions.lua +++ b/mods/carts/functions.lua @@ -186,7 +186,7 @@ function carts:register_rail(name, def, railparams) drawtype = "raillike", paramtype = "light", sunlight_propagates = true, - is_ground_content = true, + is_ground_content = false, walkable = false, selection_box = { type = "fixed", From 4f32fd253ca53d6942c4231499cc247f89af4d49 Mon Sep 17 00:00:00 2001 From: Auke Kok Date: Sun, 27 Nov 2016 14:05:28 -0800 Subject: [PATCH 83/99] Fix ItemStack method call for keys. Fixes (I hope) #1420 (bad method call). --- mods/default/nodes.lua | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mods/default/nodes.lua b/mods/default/nodes.lua index 6e391e63..a81f4ed7 100644 --- a/mods/default/nodes.lua +++ b/mods/default/nodes.lua @@ -1630,7 +1630,7 @@ local function has_locked_chest_privilege(meta, player) -- is player wielding the right key? local item = player:get_wielded_item() if item:get_name() == "default:key" then - local key_meta = minetest.parse_json(item.get_metadata()) + local key_meta = minetest.parse_json(item:get_metadata()) local secret = meta:get_string("key_lock_secret") if secret ~= key_meta.secret then return false From 04f045158fe6ee4440a58654177255db435b596f Mon Sep 17 00:00:00 2001 From: sfan5 Date: Sun, 27 Nov 2016 12:15:52 +0100 Subject: [PATCH 84/99] Avoid "leaking" creative inventories to other players --- mods/creative/inventory.lua | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/mods/creative/inventory.lua b/mods/creative/inventory.lua index 177933f3..8dedffc4 100644 --- a/mods/creative/inventory.lua +++ b/mods/creative/inventory.lua @@ -32,7 +32,7 @@ function creative.init_creative_inventory(player) minetest.log("action", player_name .. " takes " .. stack:get_name().. " from creative inventory") end end, - }) + }, player_name) creative.update_creative_inventory(player_name, minetest.registered_items) end From f06f66ccc287e4773e4259cbeba95fcb0f522363 Mon Sep 17 00:00:00 2001 From: paramat Date: Tue, 29 Nov 2016 02:28:55 +0000 Subject: [PATCH 85/99] Boats / carts: Fix and improve on_punch functions Boats: Previously, boats were not added to inventory in creative mode, fix. In creative mode multiple boats will not be added to inventory. Add comment. Carts: Set speed to 2 if punched by a non-player, to match the effect of a player punch. Add comments. --- mods/boats/init.lua | 17 +++++++++-------- mods/carts/cart_entity.lua | 13 +++++++------ 2 files changed, 16 insertions(+), 14 deletions(-) diff --git a/mods/boats/init.lua b/mods/boats/init.lua index 26486f4e..9f1264b1 100644 --- a/mods/boats/init.lua +++ b/mods/boats/init.lua @@ -109,18 +109,19 @@ function boat.on_punch(self, puncher) end if not self.driver then self.removed = true + local inv = puncher:get_inventory() + if not minetest.setting_getbool("creative_mode") + or not inv:contains_item("main", "boats:boat") then + local leftover = inv:add_item("main", "boats:boat") + -- if no room in inventory add a replacement boat to the world + if not leftover:is_empty() then + minetest.add_item(self.object:getpos(), leftover) + end + end -- delay remove to ensure player is detached minetest.after(0.1, function() self.object:remove() end) - if not minetest.setting_getbool("creative_mode") then - local inv = puncher:get_inventory() - if inv:room_for_item("main", "boats:boat") then - inv:add_item("main", "boats:boat") - else - minetest.add_item(self.object:getpos(), "boats:boat") - end - end end end diff --git a/mods/carts/cart_entity.lua b/mods/carts/cart_entity.lua index a0a2d9f0..a0b0e3fa 100644 --- a/mods/carts/cart_entity.lua +++ b/mods/carts/cart_entity.lua @@ -62,22 +62,22 @@ function cart_entity:on_punch(puncher, time_from_last_punch, tool_capabilities, local node = minetest.get_node(pos).name self.railtype = minetest.get_item_group(node, "connect_to_raillike") end - + -- Punched by non-player if not puncher or not puncher:is_player() then local cart_dir = carts:get_rail_direction(pos, self.old_dir, nil, nil, self.railtype) if vector.equals(cart_dir, {x=0, y=0, z=0}) then return end - self.velocity = vector.multiply(cart_dir, 3) + self.velocity = vector.multiply(cart_dir, 2) self.punched = true return end - + -- Player digs cart by sneak-punch if puncher:get_player_control().sneak then if self.sound_handle then minetest.sound_stop(self.sound_handle) end - -- Pick up cart: Drop all attachments + -- Detach driver and items if self.driver then if self.old_pos then self.object:setpos(self.old_pos) @@ -90,11 +90,12 @@ function cart_entity:on_punch(puncher, time_from_last_punch, tool_capabilities, obj_:set_detach() end end - + -- Pick up cart local inv = puncher:get_inventory() if not minetest.setting_getbool("creative_mode") or not inv:contains_item("main", "carts:cart") then local leftover = inv:add_item("main", "carts:cart") + -- If no room in inventory add a replacement cart to the world if not leftover:is_empty() then minetest.add_item(self.object:getpos(), leftover) end @@ -102,7 +103,7 @@ function cart_entity:on_punch(puncher, time_from_last_punch, tool_capabilities, self.object:remove() return end - + -- Player punches cart to alter velocity local vel = self.object:getvelocity() if puncher:get_player_name() == self.driver then if math.abs(vel.x + vel.z) > carts.punch_speed_max then From 0413cb67b8fd2aaf139908d8631dac1738124a5c Mon Sep 17 00:00:00 2001 From: Napiophelios Date: Wed, 30 Nov 2016 03:59:49 -0500 Subject: [PATCH 86/99] Add Cobble Walls to Moss Growth ABM --- mods/default/functions.lua | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/mods/default/functions.lua b/mods/default/functions.lua index 37b5d581..ed373ed7 100644 --- a/mods/default/functions.lua +++ b/mods/default/functions.lua @@ -437,7 +437,7 @@ minetest.register_abm({ minetest.register_abm({ label = "Moss growth", - nodenames = {"default:cobble", "stairs:slab_cobble", "stairs:stair_cobble"}, + nodenames = {"default:cobble", "stairs:slab_cobble", "stairs:stair_cobble", "walls:cobble"}, neighbors = {"group:water"}, interval = 16, chance = 200, @@ -449,6 +449,8 @@ minetest.register_abm({ minetest.set_node(pos, {name = "stairs:slab_mossycobble", param2 = node.param2}) elseif node.name == "stairs:stair_cobble" then minetest.set_node(pos, {name = "stairs:stair_mossycobble", param2 = node.param2}) + elseif node.name == "walls:cobble" then + minetest.set_node(pos, {name = "walls:mossycobble", param2 = node.param2}) end end }) From 42afe679a7f7267806b0bf2749728e609e78ccb3 Mon Sep 17 00:00:00 2001 From: paramat Date: Thu, 1 Dec 2016 03:15:15 +0000 Subject: [PATCH 87/99] Default / flowers: New biomes. Limit dirt blobs. Add corals, bushes Biomes: Add 'sandstone desert', 'cold desert', 'snowy grassland'. Rename 'glacier' biome to 'icesheet' biome. Rename non-swamp 'swamp' biomes to 'shore' biomes. Remove 'sandstone grassland' biome. Rename 'stone grassland' biome to 'grassland' biome. Edit biome points for improved similarity to Whittaker classification. Change 'tundra' to bare stone with snowblocks. Make dirt 'swamp' / 'shore' less deep. Ores: Make dirt blob ore biome-specific, limit to dirt biomes. Decorations: Make mushroom noise spread match that of appletrees as originally intended, to have mushrooms spawn in darker thicker forest areas. Add coral reefs in warm oceans. Add bushes and acacia bushes. Jungletrees in deeper water for larger swamps. Register flower mod decorations in singlenode mapgen for use by minetest.generate_registered_decorations, as in default/mapgen.lua. --- mods/default/mapgen.lua | 470 +++++++++++++++--------- mods/default/schematics/acacia_bush.mts | Bin 0 -> 113 bytes mods/default/schematics/bush.mts | Bin 0 -> 99 bytes mods/default/schematics/corals.mts | Bin 0 -> 171 bytes mods/flowers/mapgen.lua | 14 +- 5 files changed, 311 insertions(+), 173 deletions(-) create mode 100644 mods/default/schematics/acacia_bush.mts create mode 100644 mods/default/schematics/bush.mts create mode 100644 mods/default/schematics/corals.mts diff --git a/mods/default/mapgen.lua b/mods/default/mapgen.lua index 52aa294c..d786a841 100644 --- a/mods/default/mapgen.lua +++ b/mods/default/mapgen.lua @@ -43,6 +43,7 @@ minetest.register_alias("mapgen_stair_sandstonebrick", "stairs:stair_sandstonebr -- function default.register_ores() + minetest.clear_registered_ores() -- Blob ores -- These first to avoid other ores in blobs @@ -109,6 +110,8 @@ function default.register_ores() octaves = 1, persist = 0.0 }, + biomes = {"taiga", "snowy_grassland", "grassland", "coniferous_forest", + "deciduous_forest", "savanna", "rainforest"} }) -- Gravel @@ -379,10 +382,10 @@ end function default.register_biomes() minetest.clear_registered_biomes() - -- Permanent ice + -- Icesheet minetest.register_biome({ - name = "glacier", + name = "icesheet", node_dust = "default:snowblock", node_top = "default:snowblock", depth_top = 1, @@ -398,36 +401,36 @@ function default.register_biomes() y_min = -8, y_max = 31000, heat_point = 0, - humidity_point = 50, + humidity_point = 73, }) minetest.register_biome({ - name = "glacier_ocean", + name = "icesheet_ocean", node_dust = "default:snowblock", node_top = "default:sand", depth_top = 1, node_filler = "default:sand", depth_filler = 3, --node_stone = "", - --node_water_top = "", - --depth_water_top = , + node_water_top = "default:ice", + depth_water_top = 10, --node_water = "", --node_river_water = "", y_min = -112, y_max = -9, heat_point = 0, - humidity_point = 50, + humidity_point = 73, }) - -- Cold + -- Tundra minetest.register_biome({ name = "tundra", - --node_dust = "", - node_top = "default:dirt_with_snow", - depth_top = 1, - node_filler = "default:dirt", - depth_filler = 1, + node_dust = "default:snowblock", + --node_top = , + --depth_top = , + --node_filler = , + --depth_filler = , --node_stone = "", --node_water_top = "", --depth_water_top = , @@ -437,8 +440,8 @@ function default.register_biomes() depth_riverbed = 2, y_min = 2, y_max = 31000, - heat_point = 15, - humidity_point = 35, + heat_point = 0, + humidity_point = 40, }) minetest.register_biome({ @@ -457,8 +460,8 @@ function default.register_biomes() depth_riverbed = 2, y_min = -3, y_max = 1, - heat_point = 15, - humidity_point = 35, + heat_point = 0, + humidity_point = 40, }) minetest.register_biome({ @@ -477,10 +480,11 @@ function default.register_biomes() depth_riverbed = 2, y_min = -112, y_max = -4, - heat_point = 15, - humidity_point = 35, + heat_point = 0, + humidity_point = 40, }) + -- Taiga minetest.register_biome({ name = "taiga", @@ -498,8 +502,8 @@ function default.register_biomes() depth_riverbed = 2, y_min = 2, y_max = 31000, - heat_point = 15, - humidity_point = 65, + heat_point = 25, + humidity_point = 70, }) minetest.register_biome({ @@ -518,16 +522,16 @@ function default.register_biomes() depth_riverbed = 2, y_min = -112, y_max = 1, - heat_point = 15, - humidity_point = 65, + heat_point = 25, + humidity_point = 70, }) - -- Temperate + -- Snowy grassland minetest.register_biome({ - name = "stone_grassland", - --node_dust = "", - node_top = "default:dirt_with_grass", + name = "snowy_grassland", + node_dust = "default:snow", + node_top = "default:dirt_with_snow", depth_top = 1, node_filler = "default:dirt", depth_filler = 1, @@ -538,34 +542,14 @@ function default.register_biomes() --node_river_water = "", node_riverbed = "default:sand", depth_riverbed = 2, - y_min = 6, - y_max = 31000, - heat_point = 40, - humidity_point = 35, - }) - - minetest.register_biome({ - name = "stone_grassland_dunes", - --node_dust = "", - node_top = "default:sand", - depth_top = 1, - node_filler = "default:sand", - depth_filler = 2, - --node_stone = "", - --node_water_top = "", - --depth_water_top = , - --node_water = "", - --node_river_water = "", - node_riverbed = "default:sand", - depth_riverbed = 2, y_min = 5, - y_max = 5, - heat_point = 40, + y_max = 31000, + heat_point = 20, humidity_point = 35, }) minetest.register_biome({ - name = "stone_grassland_ocean", + name = "snowy_grassland_ocean", --node_dust = "", node_top = "default:sand", depth_top = 1, @@ -580,10 +564,73 @@ function default.register_biomes() depth_riverbed = 2, y_min = -112, y_max = 4, - heat_point = 40, + heat_point = 20, humidity_point = 35, }) + -- Grassland + + minetest.register_biome({ + name = "grassland", + --node_dust = "", + node_top = "default:dirt_with_grass", + depth_top = 1, + node_filler = "default:dirt", + depth_filler = 1, + --node_stone = "", + --node_water_top = "", + --depth_water_top = , + --node_water = "", + --node_river_water = "", + node_riverbed = "default:sand", + depth_riverbed = 2, + y_min = 6, + y_max = 31000, + heat_point = 50, + humidity_point = 35, + }) + + minetest.register_biome({ + name = "grassland_dunes", + --node_dust = "", + node_top = "default:sand", + depth_top = 1, + node_filler = "default:sand", + depth_filler = 2, + --node_stone = "", + --node_water_top = "", + --depth_water_top = , + --node_water = "", + --node_river_water = "", + node_riverbed = "default:sand", + depth_riverbed = 2, + y_min = 5, + y_max = 5, + heat_point = 50, + humidity_point = 35, + }) + + minetest.register_biome({ + name = "grassland_ocean", + --node_dust = "", + node_top = "default:sand", + depth_top = 1, + node_filler = "default:sand", + depth_filler = 3, + --node_stone = "", + --node_water_top = "", + --depth_water_top = , + --node_water = "", + --node_river_water = "", + node_riverbed = "default:sand", + depth_riverbed = 2, + y_min = -112, + y_max = 4, + heat_point = 50, + humidity_point = 35, + }) + + -- Coniferous forest minetest.register_biome({ name = "coniferous_forest", @@ -601,8 +648,8 @@ function default.register_biomes() depth_riverbed = 2, y_min = 6, y_max = 31000, - heat_point = 40, - humidity_point = 65, + heat_point = 45, + humidity_point = 70, }) minetest.register_biome({ @@ -621,8 +668,8 @@ function default.register_biomes() depth_riverbed = 2, y_min = 5, y_max = 5, - heat_point = 40, - humidity_point = 65, + heat_point = 45, + humidity_point = 70, }) minetest.register_biome({ @@ -641,71 +688,11 @@ function default.register_biomes() depth_riverbed = 2, y_min = -112, y_max = 4, - heat_point = 40, - humidity_point = 65, - }) - - - minetest.register_biome({ - name = "sandstone_grassland", - --node_dust = "", - node_top = "default:dirt_with_grass", - depth_top = 1, - node_filler = "default:dirt", - depth_filler = 1, - node_stone = "default:sandstone", - --node_water_top = "", - --depth_water_top = , - --node_water = "", - --node_river_water = "", - node_riverbed = "default:sand", - depth_riverbed = 2, - y_min = 6, - y_max = 31000, - heat_point = 60, - humidity_point = 35, - }) - - minetest.register_biome({ - name = "sandstone_grassland_dunes", - --node_dust = "", - node_top = "default:sand", - depth_top = 1, - node_filler = "default:sand", - depth_filler = 2, - node_stone = "default:sandstone", - --node_water_top = "", - --depth_water_top = , - --node_water = "", - --node_river_water = "", - node_riverbed = "default:sand", - depth_riverbed = 2, - y_min = 5, - y_max = 5, - heat_point = 60, - humidity_point = 35, - }) - - minetest.register_biome({ - name = "sandstone_grassland_ocean", - --node_dust = "", - node_top = "default:sand", - depth_top = 1, - node_filler = "default:sand", - depth_filler = 3, - node_stone = "default:sandstone", - --node_water_top = "", - --depth_water_top = , - --node_water = "", - --node_river_water = "", - node_riverbed = "default:sand", - depth_riverbed = 2, - y_min = -112, - y_max = 4, - heat_point = 60, - humidity_point = 35, + heat_point = 45, + humidity_point = 70, }) + -- Deciduous forest minetest.register_biome({ name = "deciduous_forest", @@ -724,11 +711,11 @@ function default.register_biomes() y_min = 1, y_max = 31000, heat_point = 60, - humidity_point = 65, + humidity_point = 68, }) minetest.register_biome({ - name = "deciduous_forest_swamp", + name = "deciduous_forest_shore", --node_dust = "", node_top = "default:dirt", depth_top = 1, @@ -741,10 +728,10 @@ function default.register_biomes() --node_river_water = "", node_riverbed = "default:sand", depth_riverbed = 2, - y_min = -3, + y_min = -1, y_max = 0, heat_point = 60, - humidity_point = 65, + humidity_point = 68, }) minetest.register_biome({ @@ -762,12 +749,12 @@ function default.register_biomes() node_riverbed = "default:sand", depth_riverbed = 2, y_min = -112, - y_max = -4, + y_max = -2, heat_point = 60, - humidity_point = 65, + humidity_point = 68, }) - -- Hot + -- Desert minetest.register_biome({ name = "desert", @@ -785,8 +772,8 @@ function default.register_biomes() depth_riverbed = 2, y_min = 5, y_max = 31000, - heat_point = 85, - humidity_point = 20, + heat_point = 92, + humidity_point = 16, }) minetest.register_biome({ @@ -805,10 +792,95 @@ function default.register_biomes() depth_riverbed = 2, y_min = -112, y_max = 4, - heat_point = 85, - humidity_point = 20, + heat_point = 92, + humidity_point = 16, }) + -- Sandstone desert + + minetest.register_biome({ + name = "sandstone_desert", + --node_dust = "", + node_top = "default:sand", + depth_top = 1, + node_filler = "default:sand", + depth_filler = 0, + node_stone = "default:sandstone", + --node_water_top = "", + --depth_water_top = , + --node_water = "", + --node_river_water = "", + node_riverbed = "default:sand", + depth_riverbed = 2, + y_min = 5, + y_max = 31000, + heat_point = 60, + humidity_point = 0, + }) + + minetest.register_biome({ + name = "sandstone_desert_ocean", + --node_dust = "", + node_top = "default:sand", + depth_top = 1, + node_filler = "default:sand", + depth_filler = 3, + node_stone = "default:sandstone", + --node_water_top = "", + --depth_water_top = , + --node_water = "", + --node_river_water = "", + node_riverbed = "default:sand", + depth_riverbed = 2, + y_min = -112, + y_max = 4, + heat_point = 60, + humidity_point = 0, + }) + + -- Cold desert + + minetest.register_biome({ + name = "cold_desert", + --node_dust = "", + node_top = "default:silver_sand", + depth_top = 1, + node_filler = "default:silver_sand", + depth_filler = 1, + --node_stone = "", + --node_water_top = "", + --depth_water_top = , + --node_water = "", + --node_river_water = "", + node_riverbed = "default:sand", + depth_riverbed = 2, + y_min = 5, + y_max = 31000, + heat_point = 40, + humidity_point = 0, + }) + + minetest.register_biome({ + name = "cold_desert_ocean", + --node_dust = "", + node_top = "default:sand", + depth_top = 1, + node_filler = "default:sand", + depth_filler = 3, + --node_stone = "", + --node_water_top = "", + --depth_water_top = , + --node_water = "", + --node_river_water = "", + node_riverbed = "default:sand", + depth_riverbed = 2, + y_min = -112, + y_max = 4, + heat_point = 40, + humidity_point = 0, + }) + + -- Savanna minetest.register_biome({ name = "savanna", @@ -826,12 +898,12 @@ function default.register_biomes() depth_riverbed = 2, y_min = 1, y_max = 31000, - heat_point = 85, - humidity_point = 50, + heat_point = 89, + humidity_point = 42, }) minetest.register_biome({ - name = "savanna_swamp", + name = "savanna_shore", --node_dust = "", node_top = "default:dirt", depth_top = 1, @@ -844,10 +916,10 @@ function default.register_biomes() --node_river_water = "", node_riverbed = "default:sand", depth_riverbed = 2, - y_min = -3, + y_min = -1, y_max = 0, - heat_point = 85, - humidity_point = 50, + heat_point = 89, + humidity_point = 42, }) minetest.register_biome({ @@ -865,11 +937,12 @@ function default.register_biomes() node_riverbed = "default:sand", depth_riverbed = 2, y_min = -112, - y_max = -4, - heat_point = 85, - humidity_point = 50, + y_max = -2, + heat_point = 89, + humidity_point = 42, }) + -- Rainforest minetest.register_biome({ name = "rainforest", @@ -887,8 +960,8 @@ function default.register_biomes() depth_riverbed = 2, y_min = 1, y_max = 31000, - heat_point = 85, - humidity_point = 80, + heat_point = 86, + humidity_point = 65, }) minetest.register_biome({ @@ -905,10 +978,10 @@ function default.register_biomes() --node_river_water = "", node_riverbed = "default:sand", depth_riverbed = 2, - y_min = -3, + y_min = -1, y_max = 0, - heat_point = 85, - humidity_point = 80, + heat_point = 86, + humidity_point = 65, }) minetest.register_biome({ @@ -926,9 +999,9 @@ function default.register_biomes() node_riverbed = "default:sand", depth_riverbed = 2, y_min = -112, - y_max = -4, - heat_point = 85, - humidity_point = 80, + y_max = -2, + heat_point = 86, + humidity_point = 65, }) -- Underground @@ -1047,7 +1120,8 @@ function default.register_mgv6_decorations() }) end --- All mapgens except mgv6 and singlenode + +-- All mapgens except mgv6 local function register_grass_decoration(offset, scale, length) minetest.register_decoration({ @@ -1062,13 +1136,11 @@ local function register_grass_decoration(offset, scale, length) octaves = 3, persist = 0.6 }, - biomes = {"stone_grassland", "sandstone_grassland", - "deciduous_forest", "coniferous_forest", - "stone_grassland_dunes", "sandstone_grassland_dunes", - "coniferous_forest_dunes"}, + biomes = {"grassland", "grassland_dunes", "deciduous_forest", + "coniferous_forest", "coniferous_forest_dunes"}, y_min = 1, y_max = 31000, - decoration = "default:grass_"..length, + decoration = "default:grass_" .. length, }) end @@ -1088,10 +1160,11 @@ local function register_dry_grass_decoration(offset, scale, length) biomes = {"savanna"}, y_min = 1, y_max = 31000, - decoration = "default:dry_grass_"..length, + decoration = "default:dry_grass_" .. length, }) end + function default.register_decorations() minetest.clear_registered_decorations() @@ -1112,7 +1185,7 @@ function default.register_decorations() biomes = {"deciduous_forest"}, y_min = 1, y_max = 31000, - schematic = minetest.get_modpath("default").."/schematics/apple_tree.mts", + schematic = minetest.get_modpath("default") .. "/schematics/apple_tree.mts", flags = "place_center_x, place_center_z", }) @@ -1157,9 +1230,9 @@ function default.register_decorations() sidelen = 80, fill_ratio = 0.1, biomes = {"rainforest", "rainforest_swamp"}, - y_min = 0, + y_min = -1, y_max = 31000, - schematic = minetest.get_modpath("default").."/schematics/jungle_tree.mts", + schematic = minetest.get_modpath("default") .. "/schematics/jungle_tree.mts", flags = "place_center_x, place_center_z", rotation = "random", }) @@ -1207,7 +1280,7 @@ function default.register_decorations() biomes = {"taiga", "coniferous_forest"}, y_min = 2, y_max = 31000, - schematic = minetest.get_modpath("default").."/schematics/pine_tree.mts", + schematic = minetest.get_modpath("default") .. "/schematics/pine_tree.mts", flags = "place_center_x, place_center_z", }) @@ -1261,7 +1334,7 @@ function default.register_decorations() biomes = {"savanna"}, y_min = 1, y_max = 31000, - schematic = minetest.get_modpath("default").."/schematics/acacia_tree.mts", + schematic = minetest.get_modpath("default") .. "/schematics/acacia_tree.mts", flags = "place_center_x, place_center_z", rotation = "random", }) @@ -1313,7 +1386,7 @@ function default.register_decorations() biomes = {"deciduous_forest"}, y_min = 1, y_max = 31000, - schematic = minetest.get_modpath("default").."/schematics/aspen_tree.mts", + schematic = minetest.get_modpath("default") .. "/schematics/aspen_tree.mts", flags = "place_center_x, place_center_z", }) @@ -1349,6 +1422,7 @@ function default.register_decorations() flags = "place_center_x", rotation = "random", }) + -- Large cactus minetest.register_decoration({ @@ -1366,7 +1440,7 @@ function default.register_decorations() biomes = {"desert"}, y_min = 5, y_max = 31000, - schematic = minetest.get_modpath("default").."/schematics/large_cactus.mts", + schematic = minetest.get_modpath("default") .. "/schematics/large_cactus.mts", flags = "place_center_x", rotation = "random", }) @@ -1407,10 +1481,52 @@ function default.register_decorations() octaves = 3, persist = 0.7 }, - biomes = {"savanna_swamp"}, + biomes = {"savanna_shore"}, y_min = 0, y_max = 0, - schematic = minetest.get_modpath("default").."/schematics/papyrus.mts", + schematic = minetest.get_modpath("default") .. "/schematics/papyrus.mts", + }) + + -- Bush + + minetest.register_decoration({ + deco_type = "schematic", + place_on = {"default:dirt_with_grass", "default:dirt_with_snow"}, + sidelen = 16, + noise_params = { + offset = -0.004, + scale = 0.01, + spread = {x = 100, y = 100, z = 100}, + seed = 137, + octaves = 3, + persist = 0.7, + }, + biomes = {"snowy_grassland", "grassland", "deciduous_forest"}, + y_min = 1, + y_max = 31000, + schematic = minetest.get_modpath("default") .. "/schematics/bush.mts", + flags = "place_center_x, place_center_z", + }) + + -- Acacia bush + + minetest.register_decoration({ + deco_type = "schematic", + place_on = {"default:dirt_with_dry_grass"}, + sidelen = 16, + noise_params = { + offset = -0.004, + scale = 0.01, + spread = {x = 100, y = 100, z = 100}, + seed = 90155, + octaves = 3, + persist = 0.7, + }, + biomes = {"savanna"}, + y_min = 1, + y_max = 31000, + schematic = minetest.get_modpath("default") .. "/schematics/acacia_bush.mts", + flags = "place_center_x, place_center_z", }) -- Grasses @@ -1446,7 +1562,8 @@ function default.register_decorations() minetest.register_decoration({ deco_type = "simple", - place_on = {"default:desert_sand", "default:dirt_with_snow"}, + place_on = {"default:desert_sand", + "default:sand", "default:silver_sand"}, sidelen = 16, noise_params = { offset = 0, @@ -1456,11 +1573,36 @@ function default.register_decorations() octaves = 3, persist = 0.6 }, - biomes = {"desert", "tundra"}, + biomes = {"desert", "sandstone_desert", "cold_desert"}, y_min = 2, y_max = 31000, decoration = "default:dry_shrub", }) + + -- Coral reef + + minetest.register_decoration({ + deco_type = "schematic", + place_on = {"default:sand"}, + noise_params = { + offset = -0.1, + scale = 0.1, + spread = {x = 200, y = 200, z = 200}, + seed = 7013, + octaves = 3, + persist = 1, + }, + biomes = { + "desert_ocean", + "savanna_ocean", + "rainforest_ocean", + }, + y_min = -8, + y_max = -2, + schematic = minetest.get_modpath("default") .. "/schematics/corals.mts", + flags = "place_center_x, place_center_z", + rotation = "random", + }) end diff --git a/mods/default/schematics/acacia_bush.mts b/mods/default/schematics/acacia_bush.mts new file mode 100644 index 0000000000000000000000000000000000000000..df95586110928918f10e78311b6a0a974b7e150a GIT binary patch literal 113 zcmeYb3HD`RVPFQq`uchhm6%z?AeEAumROooVwISjn4FmypHy0$5ucNqSe9DMAc0M; uxFj{VVoq`b1GAe7hj8K{0mm@mc=>$!eEyUx|JSo`n&?`<$e_o_-UI-1Y9pTj literal 0 HcmV?d00001 diff --git a/mods/default/schematics/bush.mts b/mods/default/schematics/bush.mts new file mode 100644 index 0000000000000000000000000000000000000000..d08cf5f5f9a204b3389405db80edae858d871dd7 GIT binary patch literal 99 zcmeYb3HD`RVPFQq`uchhm6%z?Ae@q#mROooVwF@{oDrXsnpl=v%piy&SX`2tTQMg& nfq~ggg+n;;kbq;DaJ+oJd_I55mH+G6H%)XcU}Vr^WN!ihdf6T? literal 0 HcmV?d00001 diff --git a/mods/default/schematics/corals.mts b/mods/default/schematics/corals.mts new file mode 100644 index 0000000000000000000000000000000000000000..e1bd7ded6c202e4ca9f308164806f53117606728 GIT binary patch literal 171 zcmeYb3HD`RVPIuoW?-$aw+Awr6Elk#L{d`I5=(PRtdjGK5_95#L|%F-gD|RSQc-?+ z9)lRFU~zV8PHIVhUd5cXJr{Wy6gix^-`F!RE)@~k)9~+pchcpcMz;l}!mV5L=PU0m z+!C7hHEZ`~ Date: Thu, 1 Dec 2016 17:34:56 +0100 Subject: [PATCH 88/99] Default: Make Book with Text a furnace fuel --- mods/default/crafting.lua | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/mods/default/crafting.lua b/mods/default/crafting.lua index 50b4b957..483245c2 100644 --- a/mods/default/crafting.lua +++ b/mods/default/crafting.lua @@ -1075,6 +1075,12 @@ minetest.register_craft({ burntime = 3, }) +minetest.register_craft({ + type = "fuel", + recipe = "default:book_written", + burntime = 3, +}) + minetest.register_craft({ type = "fuel", recipe = "default:dry_shrub", From d7f176dfd836373f162b888c79634817cef15ca7 Mon Sep 17 00:00:00 2001 From: Auke Kok Date: Fri, 2 Dec 2016 23:05:01 -0800 Subject: [PATCH 89/99] Torches: Make selection boxes consistent This makes all the 3d torch selection boxes 1px oversized. Before, they were inconsistently sized and too small for the upright torch. --- mods/default/torch.lua | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/mods/default/torch.lua b/mods/default/torch.lua index 0d3454bf..e94c5bd6 100644 --- a/mods/default/torch.lua +++ b/mods/default/torch.lua @@ -55,7 +55,7 @@ minetest.register_node("default:torch", { drop = "default:torch", selection_box = { type = "wallmounted", - wall_bottom = {-1/16, -0.5, -1/16, 1/16, 2/16, 1/16}, + wall_bottom = {-1/8, -1/2, -1/8, 1/8, 2/16, 1/8}, }, sounds = default.node_sound_wood_defaults(), on_place = function(itemstack, placer, pointed_thing) @@ -102,7 +102,7 @@ minetest.register_node("default:torch_wall", { drop = "default:torch", selection_box = { type = "wallmounted", - wall_side = {-0.5, -0.3, -0.1, -0.2, 0.3, 0.1}, + wall_side = {-1/2, -1/2, -1/8, -1/8, 1/8, 1/8}, }, sounds = default.node_sound_wood_defaults(), }) @@ -123,7 +123,7 @@ minetest.register_node("default:torch_ceiling", { drop = "default:torch", selection_box = { type = "wallmounted", - wall_top = {-0.1, -0.1, -0.25, 0.1, 0.5, 0.1}, + wall_top = {-1/8, -1/16, -5/16, 1/8, 1/2, 1/8}, }, sounds = default.node_sound_wood_defaults(), }) From ea9c4012d53fe85e1af839f70c601d86aba3930a Mon Sep 17 00:00:00 2001 From: Auke Kok Date: Fri, 2 Dec 2016 23:39:25 -0800 Subject: [PATCH 90/99] Farming: Change wheat into # shaped plant This changes the farming API such that any nodedef with paramtype2 and place_param2 are passed through to all the plant stages of the farming plant. This allows plants to use an alternative mesh for the plantlike drawtype, and provide a bit of graphical variation in plants. We enable this for wheat, using place_param2 = 3, which is the '#' shaped plant mesh. If you would actually be able to give yourself this plant in creative or through /give, you would also get the same '#' shape. --- mods/farming/api.lua | 15 +++++++++++++-- mods/farming/init.lua | 2 ++ 2 files changed, 15 insertions(+), 2 deletions(-) diff --git a/mods/farming/api.lua b/mods/farming/api.lua index 725cbc47..3ff182e9 100644 --- a/mods/farming/api.lua +++ b/mods/farming/api.lua @@ -213,7 +213,11 @@ farming.grow_plant = function(pos, elapsed) -- omitted is a check for light, we assume seeds can germinate in the dark. for _, v in pairs(def.fertility) do if minetest.get_item_group(soil_node.name, v) ~= 0 then - minetest.swap_node(pos, {name = def.next_plant}) + local placenode = {name = def.next_plant} + if def.place_param2 then + placenode.param2 = def.place_param2 + end + minetest.swap_node(pos, placenode) if minetest.registered_nodes[def.next_plant].next_plant then tick(pos) return @@ -239,7 +243,11 @@ farming.grow_plant = function(pos, elapsed) end -- grow - minetest.swap_node(pos, {name = def.next_plant}) + local placenode = {name = def.next_plant} + if def.place_param2 then + placenode.param2 = def.place_param2 + end + minetest.swap_node(pos, placenode) -- new timer needed? if minetest.registered_nodes[def.next_plant].next_plant then @@ -290,6 +298,7 @@ farming.register_plant = function(name, def) groups = g, paramtype = "light", paramtype2 = "wallmounted", + place_param2 = def.place_param2 or nil, -- this isn't actually used for placement walkable = false, sunlight_propagates = true, selection_box = { @@ -343,6 +352,8 @@ farming.register_plant = function(name, def) waving = 1, tiles = {mname .. "_" .. pname .. "_" .. i .. ".png"}, paramtype = "light", + paramtype2 = def.paramtype2 or nil, + place_param2 = def.place_param2 or nil, walkable = false, buildable_to = true, drop = drop, diff --git a/mods/farming/init.lua b/mods/farming/init.lua index 796e9871..97dc9b4a 100644 --- a/mods/farming/init.lua +++ b/mods/farming/init.lua @@ -10,12 +10,14 @@ dofile(farming.path .. "/hoes.lua") -- WHEAT farming.register_plant("farming:wheat", { description = "Wheat seed", + paramtype2 = "meshoptions", inventory_image = "farming_wheat_seed.png", steps = 8, minlight = 13, maxlight = default.LIGHT_MAX, fertility = {"grassland"}, groups = {flammable = 4}, + place_param2 = 3, }) minetest.register_craftitem("farming:flour", { description = "Flour", From e67a60376f3c44efed8f0d1e86a232b87f2c557d Mon Sep 17 00:00:00 2001 From: Napiophelios Date: Sat, 3 Dec 2016 15:56:41 -0500 Subject: [PATCH 91/99] Xpanes: Improve bars texture --- mods/xpanes/textures/xpanes_bar.png | Bin 180 -> 155 bytes 1 file changed, 0 insertions(+), 0 deletions(-) diff --git a/mods/xpanes/textures/xpanes_bar.png b/mods/xpanes/textures/xpanes_bar.png index 4d17ceb855793cd0cd05229e774968fd017cbfe4..3ea62a9382bc1bf942cdfb1786accaadeeb516c3 100644 GIT binary patch delta 139 zcmdnOIGb^TL_G%s5LnGvuop-%l?3?(Gcc4*K5GHwg?PF+hE&|D?K{YOz<`Ho=4Ry& zUso4zXmDSfbX_-ViJe~Ggo6z{ZX#b57(S-`_3n6l<&0R5>XOar7mR+K%;1i%zv*Co r^5sVH-|rJ8&$G=ITjI0SB&Kn0z|`NfRTF^bGkCiCxv;ErN@xNAY7{t1 delta 164 zcmbQuxP@_oL_G^L0|Ud`yN`l^lxToYh%1nuJb7|)aq)r$3$n7ZDl03aqM`~CIoyE~ zj3q&S!3+-1ZlnP@zMd|QAsp9}0|J8rgNlNR5)(=ooLJph+1$1|unMFxd_16ZhD)Gh z*)iP&YuPI^$Wx)dmCR&CJHKF1;H!C~$BwF>s{up5Cu)s|7Tf N!PC{xWt~$(6959yH1+@h From fc791d80f0eaaaa46582f17ecf6e4fc6d42b8ed5 Mon Sep 17 00:00:00 2001 From: paramat Date: Sun, 4 Dec 2016 01:52:06 +0000 Subject: [PATCH 92/99] Default/flowers: Improve papyrus and waterlily schematics Papyrus: Make base node dirt instead of dirt_with_grass. Formerly the exposed dirt would change to grass but the new grass spread ABM now prevents that. Waterlily: Don't specify a water_source node in the schematic, as it may be used in river water. It was not force-placed but should really be "air" prob = 0. --- mods/default/schematics/papyrus.mts | Bin 99 -> 73 bytes mods/flowers/schematics/waterlily.mts | Bin 92 -> 75 bytes 2 files changed, 0 insertions(+), 0 deletions(-) diff --git a/mods/default/schematics/papyrus.mts b/mods/default/schematics/papyrus.mts index a3b67776e25848302c6f9d29c4cfc797f28b0d89..1333a7c4279d94b4d9a124dba25138cb11ad5738 100644 GIT binary patch delta 58 zcmYfHoFHP##K4o1nwD6aQ(~2pSyaNn591Xi7E~6M7FWzkPGDeillb$0zZ{E%0t17I H9!os{Gba+* delta 84 zcmeZFo*?4S%)pb9nwD6aQ(~2pSyaLxj?9ZM&n(G^PcKR=E@t3|Nfaa&R2G#MSIkLH XNJvOYXgc`+|7*tvMkWT6Wh|`#_V*w3 diff --git a/mods/flowers/schematics/waterlily.mts b/mods/flowers/schematics/waterlily.mts index 876310cce9110775b10b9cef15ae36e7a5b2d800..69e1d8e0c76ea232c9e17f52b6d4dbcb30e378fd 100644 GIT binary patch delta 48 zcma#?o}i%3oS0d}AefeuU!Gc2Y*n6El3J9LnNwLYCpjS@AtmA0`GE5W4lpoqNHR77 E0IZP`Qvd(} delta 65 zcmeZ{nV?`Jl9HO1SejE}Ri0RqS`=TLUs{x$${?7QlV6@%R16W#$;_#&n3J54kdTt_ QD?a}GfddQ-TvM1B0WE162LJ#7 From 7998de671fcf247c2bf630144c58c5b7908b98fd Mon Sep 17 00:00:00 2001 From: paramat Date: Sun, 4 Dec 2016 03:50:07 +0000 Subject: [PATCH 93/99] Default: Convert remaining indexed leaves to RGBA Some GPUs cause visual bugs when mip-mapping is used with indexed textures that use alpha. Because leaves are sometimes rendered opaque it is even more important to keep these as RGBA to preserve the correct background colour. --- mods/default/textures/default_jungleleaves.png | Bin 184 -> 425 bytes mods/default/textures/default_leaves.png | Bin 304 -> 773 bytes mods/default/textures/default_pine_needles.png | Bin 203 -> 391 bytes 3 files changed, 0 insertions(+), 0 deletions(-) diff --git a/mods/default/textures/default_jungleleaves.png b/mods/default/textures/default_jungleleaves.png index 870b4bb27e9debc742a57ecda1fa9857cbc56499..5afcc36d3a7f61e5580c612a6180ded3e4d8c089 100644 GIT binary patch delta 411 zcmV;M0c8HT0jUF!7=H)`0000V^Z#K0000JJOGiWi{{a60|De66lK=n!32;bRa{vGf z6951U69E94oEQKA00(qQO+^Rb3XCMHUIztHc3Q5R5;6ZQ@zfEFc5PPZ3jvO zEfO0QZ@~M%4b1#hqzu4t-_SbWL8+IBQ|yaS01%c{E&$;A8Ex}4P@qUz<t_Tc^K|{ZAv2f7t++p~UrmB>n2h$`HcwMlx!5!k zT4ElAwi)mO3x68-$JKjX-0H2cHV%^ssCeX=c65juWtEE$5ddr&3A-{Eit@CGh`CzWwQMlJ{FlggU&B@}`T$ zTZH7SNJNVT`cLG1xk!3pSdVWP=s!5rd;JUS#-Md3e-!4H8I7qcG%NrB002ovPDHLk FV1iHevoQbw delta 168 zcmZ3~&|kBXLLS-3G%ArfU;Z5>jFg9Z)zwLD8Twaox@jylpd|^=LCVNJ#px TxPMv{Xbpp>tDnm{r-UW|bw)m- diff --git a/mods/default/textures/default_leaves.png b/mods/default/textures/default_leaves.png index e39535c66435518a9790c4f92cee8ea9b5346ea6..ba09fe1d90904067ded5d7f120232328f92f8367 100644 GIT binary patch delta 760 zcmV3szZ%EmHVrD`nB9?W$=&#+U(vHGhnqh_T)JF^|*5WN0|M zd%yGkzM}x#y@t%g1&=l=bUyTy+uD-IEHSY~V#VBi@|D}#5*`V5*&*zP1pSc$u=bC3 z#IY>AGw6KiDZW_}r|6OpjbaXtcg6d2O0rC`%MkQOYX4|QhPMfNc$?szO<1d0)SESN z_Zs4zTq(WOB!6K-&>yK~9A`_1X^Q((6#!!lgPyMd z1{X7&bqlR^-XLk3a`|b3UVe$82w^wGR5Yi5i~#7L-Q17k{nl6G>nYFLC7hxIfMr=! zpH|V{$(8a?1Eq~-Wvz^V8mKq#Ur4=KlbX9J?Za&WpnsSplT>)~{)Jq32WoOLLFW#> z7pU>|6o4INrTa0x%uUus7^1AfGu- zNy3EEN`Yt@0kD6xBi3RX^ZDcs0JpUz?yCytA4ANVAsR(^oht=!-5n@^TDmE|7pQ~d zU75`nXn#{M_q?W(avLn^cWzYJ4e58XMK*SxN#2QV+W>t2C15;O=*Z97>HT_#UR5ln z8Rxmu+V6HHT1Mo%%GoJb%8Uooj0FIv=ulcM@VzznUHSLx9Qy|wr1SvuPOg-RE!6j) zn~e?0E9Y;$qA9KxNWP{Iw2_+zs5fiUKHQf2%W>)hFzAmmNiY8oZoPdjZfom)C%X3Y zrle__1^hK5zs`EICat&6Wzh3g5@uRxA8yO~6T^Hq$K7iPfG$5S128`o^=aLWTh^xuA$^z%2pL30$Q?tMTSL0QqZjFMlkAUm_F*k_5w9 m!3d8yXfl;{ZW-Xz>G=Q|T?M06!RVm?0000P< zd)TuLo?WEHx;^YyMKzuQ7bz!{$>pO3gEB$W)J*gv7wOJGz_MF;=OS@UBSU@1zuyS} z@bcDRI-ZOaXm%TrMgg*5wzHXqZCR&U99$XdT-=1 zjWcLyarsP0<8h3q*Js?$SJ2R6djH7hX1B>>($Fr=QHobH*hs>eT^?dGpPN5_JuI9!Sf%m WpY#z7_}bzC0000Pc}3^Kr=uN;)YYFn=Tl6k;q1@(X5g zcy=QV$jS0_aSY+OE_(K$V2c3{%fZ;6Oak6aK@S-m1XtAjeBSc&T(Xqor5?6*tIAAE z0 From 0ff09e018d25cfa99ddeed33916c866e1b011661 Mon Sep 17 00:00:00 2001 From: rubenwardy Date: Tue, 29 Nov 2016 09:26:56 +0000 Subject: [PATCH 94/99] Add sfinv.get_homepage_name(player) Also sets creative:all as default inventory page Fixes #1423 --- game_api.txt | 2 +- mods/creative/inventory.lua | 9 +++++++++ mods/sfinv/api.lua | 9 ++++++--- 3 files changed, 16 insertions(+), 4 deletions(-) diff --git a/game_api.txt b/game_api.txt index a2c4e312..38718c36 100644 --- a/game_api.txt +++ b/game_api.txt @@ -411,6 +411,7 @@ Sfinv API If context is nil, it is either found or created. * sfinv.get_formspec(player, context) - builds current page's formspec * sfinv.get_nav_fs(player, context, nav, current_idx) - see above +* sfinv.get_homepage_name(player) - get the page name of the first page to show to a player * sfinv.make_formspec(player, context, content, show_inv, size) - adds a theme to a formspec * show_inv, defaults to false. Whether to show the player's main inventory * size, defaults to `size[8,8.6]` if not specified @@ -422,7 +423,6 @@ Sfinv API * pages - table of pages[pagename] = def * pages_unordered - array table of pages in order of addition (used to build navigation tabs). -* homepage_name - name of default page * contexts - contexts[playername] = player_context * enabled - set to false to disable. Good for inventory rehaul mods like unified inventory diff --git a/mods/creative/inventory.lua b/mods/creative/inventory.lua index 8dedffc4..be24b3a2 100644 --- a/mods/creative/inventory.lua +++ b/mods/creative/inventory.lua @@ -169,3 +169,12 @@ creative.register_tab("all", "All", minetest.registered_items) creative.register_tab("nodes", "Nodes", minetest.registered_nodes) creative.register_tab("tools", "Tools", minetest.registered_tools) creative.register_tab("craftitems", "Items", minetest.registered_craftitems) + +local old_homepage_name = sfinv.get_homepage_name +function sfinv.get_homepage_name(player) + if minetest.setting_getbool("creative_mode") then + return "creative:all" + else + return old_homepage_name(player) + end +end diff --git a/mods/sfinv/api.lua b/mods/sfinv/api.lua index a8c997f6..2fef3c84 100644 --- a/mods/sfinv/api.lua +++ b/mods/sfinv/api.lua @@ -1,7 +1,6 @@ sfinv = { pages = {}, pages_unordered = {}, - homepage_name = "sfinv:crafting", contexts = {}, enabled = true } @@ -57,6 +56,10 @@ function sfinv.make_formspec(player, context, content, show_inv, size) return table.concat(tmp, "") end +function sfinv.get_homepage_name(player) + return "sfinv:crafting" +end + function sfinv.get_formspec(player, context) -- Generate navigation tabs local nav = {} @@ -81,7 +84,7 @@ function sfinv.get_formspec(player, context) return page:get(player, context) else local old_page = context.page - context.page = sfinv.homepage_name + context.page = sfinv.get_homepage_name(player) assert(sfinv.pages[context.page], "[sfinv] Invalid homepage") minetest.log("warning", "[sfinv] Couldn't find " .. dump(old_page) .. " so using switching to homepage") return sfinv.get_formspec(player, context) @@ -94,7 +97,7 @@ function sfinv.set_player_inventory_formspec(player, context) context = sfinv.contexts[name] if not context then context = { - page = sfinv.homepage_name + page = sfinv.get_homepage_name(player) } sfinv.contexts[name] = context end From 58038a7941212faf59f9f390b6bbfb62f45b95dc Mon Sep 17 00:00:00 2001 From: paramat Date: Sun, 4 Dec 2016 06:55:32 +0000 Subject: [PATCH 95/99] Snappy group: Remove beds and cactus from group --- mods/beds/api.lua | 4 ++-- mods/default/nodes.lua | 2 +- 2 files changed, 3 insertions(+), 3 deletions(-) diff --git a/mods/beds/api.lua b/mods/beds/api.lua index 7b409e99..3b2bb0d5 100644 --- a/mods/beds/api.lua +++ b/mods/beds/api.lua @@ -33,7 +33,7 @@ function beds.register_bed(name, def) paramtype2 = "facedir", is_ground_content = false, stack_max = 1, - groups = {snappy = 1, choppy = 2, oddly_breakable_by_hand = 2, flammable = 3, bed = 1}, + groups = {choppy = 2, oddly_breakable_by_hand = 2, flammable = 3, bed = 1}, sounds = default.node_sound_wood_defaults(), node_box = { type = "fixed", @@ -137,7 +137,7 @@ function beds.register_bed(name, def) paramtype2 = "facedir", is_ground_content = false, pointable = false, - groups = {snappy = 1, choppy = 2, oddly_breakable_by_hand = 2, flammable = 3, bed = 2}, + groups = {choppy = 2, oddly_breakable_by_hand = 2, flammable = 3, bed = 2}, sounds = default.node_sound_wood_defaults(), drop = name .. "_bottom", node_box = { diff --git a/mods/default/nodes.lua b/mods/default/nodes.lua index a81f4ed7..3e781091 100644 --- a/mods/default/nodes.lua +++ b/mods/default/nodes.lua @@ -1048,7 +1048,7 @@ minetest.register_node("default:cactus", { tiles = {"default_cactus_top.png", "default_cactus_top.png", "default_cactus_side.png"}, paramtype2 = "facedir", - groups = {snappy = 1, choppy = 3}, + groups = {choppy = 3}, sounds = default.node_sound_wood_defaults(), on_place = minetest.rotate_node, }) From fed2151d708b79b86bed7f112c2356966f2b4500 Mon Sep 17 00:00:00 2001 From: paramat Date: Sat, 3 Dec 2016 04:54:44 +0000 Subject: [PATCH 96/99] Fire: Rewrite fire sound code Previous code: Used looped sounds without attaching them to objects or playing direct to players. The looped sounds are not 'stopped' when players leave the area. These may be causing the bug where sounds are heard at extreme distances. Entering a world with already present flames results in silent flames. Sounds are often played at a large number of points in a 6 node lattice. A large fire is reported to cause a high load, disabling the sound code is reported to help this. New code: Optional flame sound to not interfere with ambience mods. Permanent flame now has sound. For multiple flames, sound is positioned at the centre of all flames, and has volume determined by flame number. The original freesound 'large fire' recording was used to create 3 sounds that play at random for a non-repetitive effect. At low volume it is suitable for small fires. Original sound files and sound function (as an empty function) kept temporarily to reduce disruption. Reduce gain of flame extinguish sound. --- minetest.conf.example | 3 + mods/fire/README.txt | 27 ++-- mods/fire/init.lua | 236 +++++++++++++++++-------------- mods/fire/sounds/fire_fire.1.ogg | Bin 0 -> 57957 bytes mods/fire/sounds/fire_fire.2.ogg | Bin 0 -> 60497 bytes mods/fire/sounds/fire_fire.3.ogg | Bin 0 -> 56781 bytes settingtypes.txt | 3 + 7 files changed, 154 insertions(+), 115 deletions(-) create mode 100644 mods/fire/sounds/fire_fire.1.ogg create mode 100644 mods/fire/sounds/fire_fire.2.ogg create mode 100644 mods/fire/sounds/fire_fire.3.ogg diff --git a/minetest.conf.example b/minetest.conf.example index f5e4e85d..3f20eb77 100644 --- a/minetest.conf.example +++ b/minetest.conf.example @@ -24,6 +24,9 @@ # 'permanent flame' nodes will remain with either setting. #enable_fire = true +# Enable flame sound. +#flame_sound = true + # Whether the stuff in initial_stuff should be given to new players #give_initial_stuff = false #initial_stuff = default:pick_steel,default:axe_steel,default:shovel_steel,default:torch 99,default:cobble 99 diff --git a/mods/fire/README.txt b/mods/fire/README.txt index 35affc26..099da1c2 100644 --- a/mods/fire/README.txt +++ b/mods/fire/README.txt @@ -12,17 +12,24 @@ Authors of media (textures and sounds) Everything not listed in here: Copyright (C) 2012 Perttu Ahola (celeron55) (CC BY-SA 3.0) -fire_basic_flame_animated.png: - Muadtralk (CC BY-SA 3.0) +Muadtralk (CC BY-SA 3.0) + fire_basic_flame_animated.png -fire_flint_steel.png - Gambit (CC BY-SA 3.0) +Gambit (CC BY-SA 3.0) + fire_flint_steel.png -fire_small.ogg sampled from: - http://www.freesound.org/people/dobroide/sounds/4211/ (CC BY 3.0) +dobroide (CC BY 3.0) +http://www.freesound.org/people/dobroide/sounds/4211/ + fire_small.ogg -fire_large.ogg sampled from: - http://www.freesound.org/people/Dynamicell/sounds/17548/ (CC BY 3.0) +Dynamicell (CC BY 3.0) +http://www.freesound.org/people/Dynamicell/sounds/17548/ + fire_large.ogg + fire_fire.*.ogg -fire_flint_and_steel.ogg - https://www.freesound.org/people/Benboncan/sounds/66457/ (CC BY 3.0) +fire_small.ogg and fire_large.ogg are unused but kept temporarily to not break +other mods that may use them. + +Benboncan (CC BY 3.0) +https://www.freesound.org/people/Benboncan/sounds/66457/ + fire_flint_and_steel.ogg diff --git a/mods/fire/init.lua b/mods/fire/init.lua index 0dbd7c3e..bee487a5 100644 --- a/mods/fire/init.lua +++ b/mods/fire/init.lua @@ -1,11 +1,13 @@ --- minetest/fire/init.lua - -- Global namespace for functions fire = {} --- Register flame nodes +-- +-- Items +-- + +-- Flame nodes minetest.register_node("fire:basic_flame", { drawtype = "firelike", @@ -34,22 +36,17 @@ minetest.register_node("fire:basic_flame", { minetest.remove_node(pos) return end - -- restart timer + -- Restart timer return true end, drop = "", on_construct = function(pos) minetest.get_node_timer(pos):start(math.random(30, 60)) - minetest.after(0, fire.update_sounds_around, pos) end, - on_destruct = function(pos) - minetest.after(0, fire.update_sounds_around, pos) + on_blast = function() -- Unaffected by explosions end, - - on_blast = function() - end, -- unaffected by explosions }) minetest.register_node("fire:permanent_flame", { @@ -76,7 +73,7 @@ minetest.register_node("fire:permanent_flame", { groups = {igniter = 2, dig_immediate = 3}, drop = "", - on_blast = function() + on_blast = function() -- Unaffected by explosions end, }) @@ -113,10 +110,10 @@ minetest.register_tool("fire:flint_and_steel", { end end if not minetest.setting_getbool("creative_mode") then - -- wear tool + -- Wear tool local wdef = itemstack:get_definition() itemstack:add_wear(1000) - -- tool break sound + -- Tool break sound if itemstack:get_count() == 0 and wdef.sound and wdef.sound.breaks then minetest.sound_play(wdef.sound.breaks, {pos = pt.above, gain = 0.5}) end @@ -151,72 +148,134 @@ minetest.override_item("default:coalblock", { end, }) --- Get sound area of position -fire.D = 6 -- size of sound areas +-- +-- Sound +-- -function fire.get_area_p0p1(pos) - local p0 = { - x = math.floor(pos.x / fire.D) * fire.D, - y = math.floor(pos.y / fire.D) * fire.D, - z = math.floor(pos.z / fire.D) * fire.D, - } - local p1 = { - x = p0.x + fire.D - 1, - y = p0.y + fire.D - 1, - z = p0.z + fire.D - 1 - } - return p0, p1 +local flame_sound = minetest.setting_getbool("flame_sound") +if flame_sound == nil then + -- Enable if no setting present + flame_sound = true +end + +if flame_sound then + + local handles = {} + local timer = 0 + + -- Parameters + + local radius = 8 -- Flame node search radius around player + local cycle = 3 -- Cycle time for sound updates + + -- Update sound for player + + function fire.update_player_sound(player) + local player_name = player:get_player_name() + -- Search for flame nodes in radius around player + local ppos = player:getpos() + local areamin = vector.subtract(ppos, radius) + local areamax = vector.add(ppos, radius) + local fpos, num = minetest.find_nodes_in_area( + areamin, + areamax, + {"fire:basic_flame", "fire:permanent_flame"} + ) + -- Total number of flames in radius + local flames = (num["fire:basic_flame"] or 0) + + (num["fire:permanent_flame"] or 0) + -- Stop previous sound + if handles[player_name] then + minetest.sound_stop(handles[player_name]) + handles[player_name] = nil + end + -- If flames + if flames > 0 then + -- Find centre of flame positions + local fposmid = fpos[1] + -- If more than 1 flame + if #fpos > 1 then + local fposmin = areamax + local fposmax = areamin + for i = 1, #fpos do + local fposi = fpos[i] + if fposi.x > fposmax.x then + fposmax.x = fposi.x + end + if fposi.y > fposmax.y then + fposmax.y = fposi.y + end + if fposi.z > fposmax.z then + fposmax.z = fposi.z + end + if fposi.x < fposmin.x then + fposmin.x = fposi.x + end + if fposi.y < fposmin.y then + fposmin.y = fposi.y + end + if fposi.z < fposmin.z then + fposmin.z = fposi.z + end + end + fposmid = vector.divide(vector.add(fposmin, fposmax), 2) + end + -- Play sound + local handle = minetest.sound_play( + "fire_fire", + { + pos = fposmid, + to_player = player_name, + gain = math.min(0.06 * (1 + flames * 0.125), 0.18), + max_hear_distance = 32, + loop = true, -- In case of lag + } + ) + -- Store sound handle for this player + if handle then + handles[player_name] = handle + end + end + end + + -- Cycle for updating players sounds + + minetest.register_globalstep(function(dtime) + timer = timer + dtime + if timer < cycle then + return + end + + timer = 0 + local players = minetest.get_connected_players() + for n = 1, #players do + fire.update_player_sound(players[n]) + end + end) + + -- Stop sound and clear handle on player leave + + minetest.register_on_leaveplayer(function(player) + local player_name = player:get_player_name() + if handles[player_name] then + minetest.sound_stop(handles[player_name]) + handles[player_name] = nil + end + end) end --- Fire sounds table --- key: position hash of low corner of area --- value: {handle=sound handle, name=sound name} -fire.sounds = {} - - --- Update fire sounds in sound area of position +-- Deprecated function kept temporarily to avoid crashes if mod fire nodes call it function fire.update_sounds_around(pos) - local p0, p1 = fire.get_area_p0p1(pos) - local cp = {x = (p0.x + p1.x) / 2, y = (p0.y + p1.y) / 2, z = (p0.z + p1.z) / 2} - local flames_p = minetest.find_nodes_in_area(p0, p1, {"fire:basic_flame"}) - --print("number of flames at "..minetest.pos_to_string(p0).."/" - -- ..minetest.pos_to_string(p1)..": "..#flames_p) - local should_have_sound = (#flames_p > 0) - local wanted_sound = nil - if #flames_p >= 9 then - wanted_sound = {name = "fire_large", gain = 0.7} - elseif #flames_p > 0 then - wanted_sound = {name = "fire_small", gain = 0.9} - end - local p0_hash = minetest.hash_node_position(p0) - local sound = fire.sounds[p0_hash] - if not sound then - if should_have_sound then - fire.sounds[p0_hash] = { - handle = minetest.sound_play(wanted_sound, - {pos = cp, max_hear_distance = 16, loop = true}), - name = wanted_sound.name, - } - end - else - if not wanted_sound then - minetest.sound_stop(sound.handle) - fire.sounds[p0_hash] = nil - elseif sound.name ~= wanted_sound.name then - minetest.sound_stop(sound.handle) - fire.sounds[p0_hash] = { - handle = minetest.sound_play(wanted_sound, - {pos = cp, max_hear_distance = 16, loop = true}), - name = wanted_sound.name, - } - end - end end +-- +-- ABMs +-- + -- Extinguish all flames quickly with water, snow, ice minetest.register_abm({ @@ -229,7 +288,7 @@ minetest.register_abm({ action = function(pos, node, active_object_count, active_object_count_wider) minetest.remove_node(pos) minetest.sound_play("fire_extinguish_flame", - {pos = pos, max_hear_distance = 16, gain = 0.25}) + {pos = pos, max_hear_distance = 16, gain = 0.15}) end, }) @@ -245,7 +304,7 @@ end if not fire_enabled then - -- Remove basic flames only + -- Remove basic flames only if fire disabled minetest.register_abm({ label = "Remove disabled fire", @@ -279,7 +338,7 @@ else -- Fire enabled end, }) - -- Remove flammable nodes + -- Remove flammable nodes around basic flame minetest.register_abm({ label = "Remove flammable nodes", @@ -291,7 +350,6 @@ else -- Fire enabled action = function(pos, node, active_object_count, active_object_count_wider) local p = minetest.find_node_near(pos, 1, {"group:flammable"}) if p then - -- remove flammable nodes around flame local flammable_node = minetest.get_node(p) local def = minetest.registered_nodes[flammable_node.name] if def.on_burn then @@ -305,35 +363,3 @@ else -- Fire enabled }) end - - --- Rarely ignite things from far - ---[[ Currently disabled to reduce the chance of uncontrollable spreading - fires that disrupt servers. Also for less lua processing load. - -minetest.register_abm({ - nodenames = {"group:igniter"}, - neighbors = {"air"}, - interval = 5, - chance = 10, - action = function(pos, node, active_object_count, active_object_count_wider) - local reg = minetest.registered_nodes[node.name] - if not reg or not reg.groups.igniter or reg.groups.igniter < 2 then - return - end - local d = reg.groups.igniter - local p = minetest.find_node_near(pos, d, {"group:flammable"}) - if p then - -- If there is water or stuff like that around flame, don't ignite - if fire.flame_should_extinguish(p) then - return - end - local p2 = fire.find_pos_for_flame_around(p) - if p2 then - minetest.set_node(p2, {name = "fire:basic_flame"}) - end - end - end, -}) ---]] diff --git a/mods/fire/sounds/fire_fire.1.ogg b/mods/fire/sounds/fire_fire.1.ogg new file mode 100644 index 0000000000000000000000000000000000000000..cbfee4c65f4739acc951e8f87f30d824f1ae21ea GIT binary patch literal 57957 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%0AypZXh?iy`+ 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 literal 0 HcmV?d00001 diff --git a/mods/fire/sounds/fire_fire.2.ogg b/mods/fire/sounds/fire_fire.2.ogg new file mode 100644 index 0000000000000000000000000000000000000000..e8d0eb1356c3ef33949dae57847c88988a1c38a9 GIT binary patch literal 60497 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

Km#WIsL%1&itVHO@E6jtcQoT`WK2nZZ7@w% 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 vX9l2L6t2t!U4zJ8c(cvwg^#OP-C5%0+YX}0hN literal 0 HcmV?d00001 diff --git a/settingtypes.txt b/settingtypes.txt index 2f91a7b6..eeea0bfc 100644 --- a/settingtypes.txt +++ b/settingtypes.txt @@ -13,6 +13,9 @@ creative_mode (Creative mode) bool false # 'permanent_flame' nodes are unaffected. enable_fire (Fire) bool true +# Enable flame sound. +flame_sound (Flame sound) bool true + # If enabled, steel tools, torches and cobblestone will be given to new # players. give_initial_stuff (Give initial items) bool false From 4a5206e3a7aa14c79a3eefde7c42ab7d7183dcd0 Mon Sep 17 00:00:00 2001 From: HybridDog Date: Sat, 10 Sep 2016 09:11:52 +0200 Subject: [PATCH 97/99] Furnace: Make furnaces work when unloaded This is slightly modified after #1279 - the setting for furnace timer was removed and hardcoded to 1.0s, which is the old furnace timer interval. --- mods/default/furnace.lua | 111 ++++++++++++++++++++------------------- 1 file changed, 58 insertions(+), 53 deletions(-) diff --git a/mods/default/furnace.lua b/mods/default/furnace.lua index 022024c4..fed7cf2e 100644 --- a/mods/default/furnace.lua +++ b/mods/default/furnace.lua @@ -113,62 +113,70 @@ local function furnace_node_timer(pos, elapsed) local fuel_totaltime = meta:get_float("fuel_totaltime") or 0 local inv = meta:get_inventory() - local srclist = inv:get_list("src") - local fuellist = inv:get_list("fuel") + local srclist, fuellist - -- - -- Cooking - -- + local cookable, cooked - -- Check if we have cookable content - local cooked, aftercooked = minetest.get_craft_result({method = "cooking", width = 1, items = srclist}) - local cookable = true + local update = true + while update do + update = false - if cooked.time == 0 then - cookable = false - end + srclist = inv:get_list("src") + fuellist = inv:get_list("fuel") - -- Check if we have enough fuel to burn - if fuel_time < fuel_totaltime then - -- The furnace is currently active and has enough fuel - fuel_time = fuel_time + 1 + -- + -- Cooking + -- - -- If there is a cookable item then check if it is ready yet - if cookable then - src_time = src_time + 1 - if src_time >= cooked.time then - -- Place result in dst list if possible - if inv:room_for_item("dst", cooked.item) then - inv:add_item("dst", cooked.item) - inv:set_stack("src", 1, aftercooked.items[1]) - src_time = 0 + -- Check if we have cookable content + local aftercooked + cooked, aftercooked = minetest.get_craft_result({method = "cooking", width = 1, items = srclist}) + cookable = cooked.time ~= 0 + + -- Check if we have enough fuel to burn + if fuel_time < fuel_totaltime then + -- The furnace is currently active and has enough fuel + fuel_time = fuel_time + elapsed + -- If there is a cookable item then check if it is ready yet + if cookable then + src_time = src_time + elapsed + if src_time >= cooked.time then + -- Place result in dst list if possible + if inv:room_for_item("dst", cooked.item) then + inv:add_item("dst", cooked.item) + inv:set_stack("src", 1, aftercooked.items[1]) + src_time = src_time - cooked.time + update = true + end end end - end - else - -- Furnace ran out of fuel - if cookable then - -- We need to get new fuel - local fuel, afterfuel = minetest.get_craft_result({method = "fuel", width = 1, items = fuellist}) - - if fuel.time == 0 then - -- No valid fuel in fuel list - fuel_totaltime = 0 - fuel_time = 0 - src_time = 0 - else - -- Take fuel from fuel list - inv:set_stack("fuel", 1, afterfuel.items[1]) - - fuel_totaltime = fuel.time - fuel_time = 0 - end else - -- We don't need to get new fuel since there is no cookable item - fuel_totaltime = 0 + -- Furnace ran out of fuel + if cookable then + -- We need to get new fuel + local fuel, afterfuel = minetest.get_craft_result({method = "fuel", width = 1, items = fuellist}) + + if fuel.time == 0 then + -- No valid fuel in fuel list + fuel_totaltime = 0 + src_time = 0 + else + -- Take fuel from fuel list + inv:set_stack("fuel", 1, afterfuel.items[1]) + update = true + + fuel_totaltime = fuel.time + (fuel_time - fuel_totaltime) + src_time = src_time + elapsed + end + else + -- We don't need to get new fuel since there is no cookable item + fuel_totaltime = 0 + src_time = 0 + end fuel_time = 0 - src_time = 0 end + + elapsed = 0 end -- @@ -196,7 +204,7 @@ local function furnace_node_timer(pos, elapsed) local active = "inactive " local result = false - if fuel_time <= fuel_totaltime and fuel_totaltime ~= 0 then + if fuel_totaltime ~= 0 then active = "active " local fuel_percent = math.floor(fuel_time / fuel_totaltime * 100) fuel_state = fuel_percent .. "%" @@ -210,8 +218,7 @@ local function furnace_node_timer(pos, elapsed) end swap_node(pos, "default:furnace") -- stop timer on the inactive furnace - local timer = minetest.get_node_timer(pos) - timer:stop() + minetest.get_node_timer(pos):stop() end local infotext = "Furnace " .. active .. "(Item: " .. item_state .. "; Fuel: " .. fuel_state .. ")" @@ -259,13 +266,11 @@ minetest.register_node("default:furnace", { end, on_metadata_inventory_move = function(pos) - local timer = minetest.get_node_timer(pos) - timer:start(1.0) + minetest.get_node_timer(pos):start(1.0) end, on_metadata_inventory_put = function(pos) -- start timer function, it will sort out whether furnace can burn or not. - local timer = minetest.get_node_timer(pos) - timer:start(1.0) + minetest.get_node_timer(pos):start(1.0) end, on_blast = function(pos) local drops = {} From 3e5852993d571b5aefa405eb4c54b28942cba91f Mon Sep 17 00:00:00 2001 From: paramat Date: Wed, 7 Dec 2016 03:23:03 +0000 Subject: [PATCH 98/99] Carts: Stronger handbrake Handbrake was barely noticeable and fairly useless. Equalisng with brake rail deceleration makes it more intuitive to use and easier to judge stopping distance. --- mods/carts/cart_entity.lua | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/mods/carts/cart_entity.lua b/mods/carts/cart_entity.lua index a0b0e3fa..e8707fb4 100644 --- a/mods/carts/cart_entity.lua +++ b/mods/carts/cart_entity.lua @@ -272,9 +272,9 @@ local function rail_on_step(self, dtime) -- Try to make it similar to the original carts mod acc = acc + speed_mod else - -- Handbrake + -- Handbrake or coast if ctrl and ctrl.down then - acc = acc - 1.6 + acc = acc - 3 else acc = acc - 0.4 end From 55a16cd2c6c56e2b15b495fc5311e8cdc4ef8e47 Mon Sep 17 00:00:00 2001 From: paramat Date: Sat, 10 Dec 2016 01:05:16 +0000 Subject: [PATCH 99/99] Default: Add missing 'default_dig_snappy' sound Some nodes with the snappy group (wool, glass pane, seeds) were missing sound when dug with a sword. Adding the sound causes it to be used for glass pane, so define a 'dig' sound in the 'node sound glass defaults' table, use the footstep sound. Adding the sound also causes it to be used for seeds which deliberately have no dig sound, so add an empty sound override for seed dig. Reduce the gain of the glass footstep sound which was excessively loud. Add some freesound members to license.txt. --- mods/default/README.txt | 9 ++++++--- mods/default/functions.lua | 4 +++- mods/default/license.txt | 3 +++ mods/default/sounds/default_dig_snappy.ogg | Bin 0 -> 7258 bytes mods/farming/api.lua | 1 + 5 files changed, 13 insertions(+), 4 deletions(-) create mode 100644 mods/default/sounds/default_dig_snappy.ogg diff --git a/mods/default/README.txt b/mods/default/README.txt index 9dde0eba..d261b6b5 100644 --- a/mods/default/README.txt +++ b/mods/default/README.txt @@ -252,10 +252,13 @@ Metal sounds: Tool breaking sounds added by sofar: CC-BY-3.0 default_tool_breaks.* - http://www.freesound.org/people/HerbertBoland/sounds/33206/ -AGFX -https://www.freesound.org/people/AGFX/ -(CC BY 3.0): +AGFX (CC BY 3.0) +https://www.freesound.org/people/AGFX/packs/1253/ default_water_footstep.1.ogg default_water_footstep.2.ogg default_water_footstep.3.ogg (default_water_footstep.4.ogg is silent) + +blukotek (CC0 1.0) +https://www.freesound.org/people/blukotek/sounds/251660/ + default_dig_snappy.ogg diff --git a/mods/default/functions.lua b/mods/default/functions.lua index ed373ed7..a8e3355f 100644 --- a/mods/default/functions.lua +++ b/mods/default/functions.lua @@ -88,7 +88,9 @@ end function default.node_sound_glass_defaults(table) table = table or {} table.footstep = table.footstep or - {name = "default_glass_footstep", gain = 0.5} + {name = "default_glass_footstep", gain = 0.25} + table.dig = table.dig or + {name = "default_glass_footstep", gain = 0.45} table.dug = table.dug or {name = "default_break_glass", gain = 1.0} default.node_sound_defaults(table) diff --git a/mods/default/license.txt b/mods/default/license.txt index 137923c8..e9267366 100644 --- a/mods/default/license.txt +++ b/mods/default/license.txt @@ -144,6 +144,9 @@ Copyright (C) 2009 cmusounddesign Copyright (C) 2010 Tomlija Copyright (C) 2010 lsprice Copyright (C) 2014 sonictechtonic +Copyright (C) 2015 yadronoff +Copyright (C) 2007 HerbertBoland +Copyright (C) 2006 AGFX You are free to: Share — copy and redistribute the material in any medium or format. diff --git a/mods/default/sounds/default_dig_snappy.ogg b/mods/default/sounds/default_dig_snappy.ogg new file mode 100644 index 0000000000000000000000000000000000000000..3686fcddb5f3caf1ff812943126794cb1c33ceb5 GIT binary patch literal 7258 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 N@WW2e3-wod{vRheoE`uG literal 0 HcmV?d00001 diff --git a/mods/farming/api.lua b/mods/farming/api.lua index 3ff182e9..182e1b20 100644 --- a/mods/farming/api.lua +++ b/mods/farming/api.lua @@ -307,6 +307,7 @@ farming.register_plant = function(name, def) }, fertility = def.fertility, sounds = default.node_sound_dirt_defaults({ + dig = {name = "", gain = 0}, dug = {name = "default_grass_footstep", gain = 0.2}, place = {name = "default_place_node", gain = 0.25}, }),