From f343969d2f51a4bbf82f8f6251298142e52e31dd Mon Sep 17 00:00:00 2001 From: Vanessa Dannenberg Date: Sun, 16 Feb 2020 01:45:23 -0500 Subject: [PATCH] update plantlife, castles, basic_materials, cool_trees, currency, digistuff, farming_redo, technic, glooptest, homedecor, maptools, mesecons, moreblocks, moreores, pipeworks, teleport_request, unified_inventory, unifieddyes, worldedit, and xban --- 3dmushrooms/depends.txt | 2 - 3dmushrooms/mod.conf | 2 + along_shore/depends.txt | 3 - along_shore/mod.conf | 3 + anvil/mod.conf | 3 + basic_materials/depends.txt | 2 - basic_materials/electrical-electronic.lua | 13 +- basic_materials/locale/basic_materials.fr.tr | 33 + basic_materials/metals.lua | 33 +- basic_materials/misc.lua | 17 +- basic_materials/mod.conf | 3 + basic_materials/plastics.lua | 9 +- bushes/depends.txt | 5 - bushes/init.lua | 2 +- bushes/locale/bushes.fr.tr | 11 + bushes/locale/template.txt | 10 + bushes/mod.conf | 3 + bushes_classic/cooking.lua | 2 +- bushes_classic/depends.txt | 4 - bushes_classic/init.lua | 4 +- bushes_classic/locale/bushes_classic.de.tr | 46 + bushes_classic/locale/bushes_classic.es.tr | 46 + bushes_classic/locale/bushes_classic.fr.tr | 46 + bushes_classic/locale/bushes_classic.tr.tr | 46 + bushes_classic/locale/template.txt | 46 + bushes_classic/mod.conf | 3 + bushes_classic/nodes.lua | 2 +- castle_gates/class_pointset.lua | 101 -- castle_gates/doors.lua | 18 +- castle_gates/gate_functions.lua | 45 +- castle_gates/gate_slots.lua | 15 +- castle_gates/gates.lua | 15 +- castle_gates/locale/castle_gates.it.tr | 16 + castle_gates/locale/it.po | 34 +- castle_gates/locale/template.txt | 16 + castle_gates/mod.conf | 3 + castle_gates/screenshot.png | Bin 166238 -> 151082 bytes .../textures/castle_door_edge_mask.png | Bin 190 -> 91 bytes .../textures/castle_door_handle_mask.png | Bin 194 -> 95 bytes castle_gates/textures/castle_door_jail.png | Bin 878 -> 851 bytes .../textures/castle_door_side_mask.png | Bin 189 -> 90 bytes .../textures/castle_jail_door_inv.png | Bin 186 -> 185 bytes castle_gates/textures/castle_jailbars.png | Bin 253 -> 245 bytes .../textures/castle_portcullis_mask.png | Bin 194 -> 95 bytes castle_masonry/arrow_slits.lua | 18 +- castle_masonry/depends.txt | 7 - castle_masonry/description.txt | 1 - castle_masonry/init.lua | 17 +- castle_masonry/locale/castle_masonry.it.tr | 49 + castle_masonry/locale/es.po | 111 +- castle_masonry/locale/fr.po | 111 +- castle_masonry/locale/it.po | 126 +- castle_masonry/locale/template.pot | 105 +- castle_masonry/locale/template.txt | 49 + castle_masonry/mod.conf | 6 + castle_masonry/murder_holes.lua | 17 +- castle_masonry/paving.lua | 17 +- castle_masonry/pillars.lua | 18 +- castle_masonry/screenshot.png | Bin 311654 -> 287410 bytes castle_masonry/stone_wall.lua | 18 +- .../textures/castle_corner_stonewall2.png | Bin 682 -> 672 bytes .../textures/castle_corner_stonewall_tb.png | Bin 691 -> 682 bytes .../textures/castle_pavement_brick.png | Bin 700 -> 691 bytes castle_masonry/textures/castle_rubble.png | Bin 563 -> 557 bytes castle_masonry/textures/castle_stonewall.png | Bin 660 -> 659 bytes castle_shields/default_shields.lua | 20 +- castle_shields/locale/castle_shields.it.tr | 3 + castle_shields/locale/template.txt | 3 + castle_shields/mod.conf | 3 + castle_shields/screenshot.png | Bin 14418 -> 14135 bytes castle_shields/shield_functions.lua | 9 +- .../textures/castle_shield_back.png | Bin 620 -> 614 bytes .../textures/castle_shield_black.png | Bin 275 -> 201 bytes .../textures/castle_shield_blue.png | Bin 379 -> 293 bytes .../textures/castle_shield_brown.png | Bin 424 -> 320 bytes .../textures/castle_shield_cyan.png | Bin 328 -> 254 bytes .../textures/castle_shield_dark_green.png | Bin 371 -> 289 bytes .../textures/castle_shield_dark_grey.png | Bin 319 -> 170 bytes .../textures/castle_shield_green.png | Bin 388 -> 306 bytes .../textures/castle_shield_grey.png | Bin 355 -> 188 bytes .../textures/castle_shield_magenta.png | Bin 420 -> 297 bytes .../textures/castle_shield_mask_chevron.png | Bin 223 -> 149 bytes .../textures/castle_shield_mask_cross.png | Bin 153 -> 95 bytes .../textures/castle_shield_mask_slash.png | Bin 183 -> 125 bytes .../textures/castle_shield_orange.png | Bin 441 -> 313 bytes .../textures/castle_shield_pink.png | Bin 338 -> 264 bytes castle_shields/textures/castle_shield_red.png | Bin 426 -> 319 bytes .../textures/castle_shield_violet.png | Bin 364 -> 236 bytes .../textures/castle_shield_white.png | Bin 339 -> 171 bytes .../textures/castle_shield_yellow.png | Bin 398 -> 312 bytes castle_tapestries/depends.txt | 3 - castle_tapestries/description.txt | 1 - castle_tapestries/init.lua | 18 +- .../locale/castle_tapestries.it.tr | 6 + castle_tapestries/locale/template.txt | 6 + castle_tapestries/mod.conf | 3 + castle_tapestries/screenshot.png | Bin 26720 -> 26487 bytes .../textures/castle_tapestry.png | Bin 323 -> 275 bytes .../textures/castle_tapestry_inv.png | Bin 2062 -> 2036 bytes cavestuff/depends.txt | 2 - cavestuff/init.lua | 2 +- cavestuff/locale/cavestuff.fr.tr | 11 + cavestuff/locale/template.txt | 11 + cavestuff/mod.conf | 2 + cavestuff/nodes.lua | 2 +- cool_trees/birch/init.lua | 3 - cool_trees/cherrytree/init.lua | 3 - .../textures/chestnuttree_leaves.png | Bin 3205 -> 2591 bytes cool_trees/ebony/init.lua | 3 - cool_trees/jacaranda/init.lua | 3 - cool_trees/larch/init.lua | 3 - cool_trees/lemontree/init.lua | 5 - cool_trees/mahogany/init.lua | 3 - cool_trees/palm/init.lua | 2 +- cool_trees/pomegranate/init.lua | 228 ++++ .../pomegranate/locale/pomegranate.es.tr | 11 + cool_trees/pomegranate/mod.conf | 4 + .../pomegranate/schematics/pomegranate.lua | 67 ++ .../pomegranate/schematics/pomegranate.mts | Bin 0 -> 174 bytes cool_trees/pomegranate/schematics/tree.mts | Bin 0 -> 151 bytes .../pomegranate/textures/pomegranate.png | Bin 0 -> 1753 bytes .../textures/pomegranate_leaves.png | Bin 0 -> 2990 bytes .../textures/pomegranate_sapling.png | Bin 0 -> 2184 bytes .../textures/pomegranate_section.png | Bin 0 -> 1484 bytes .../textures/pomegranate_trunk.png | Bin 0 -> 3220 bytes .../textures/pomegranate_trunk_top.png | Bin 0 -> 2612 bytes .../pomegranate/textures/pomegranate_wood.png | Bin 0 -> 3144 bytes currency/README.md | 8 + currency/barter.lua | 43 +- digistuff/touchscreen.lua | 2 +- dryplants/depends.txt | 4 - dryplants/init.lua | 2 +- dryplants/juncus.lua | 2 +- dryplants/locale/dryplants.fr.tr | 28 + dryplants/locale/template.txt | 28 + dryplants/mod.conf | 3 + dryplants/reed.lua | 2 +- dryplants/reedmace.lua | 2 +- extranodes/init.lua | 2 +- farming/README.md | 3 +- farming/crops/beans.lua | 2 +- farming/crops/beetroot.lua | 2 +- farming/crops/blueberry.lua | 3 +- farming/crops/carrot.lua | 2 +- farming/crops/chili.lua | 2 +- farming/crops/cocoa.lua | 2 +- farming/crops/coffee.lua | 2 +- farming/crops/corn.lua | 2 +- farming/crops/cucumber.lua | 2 +- farming/crops/garlic.lua | 2 +- farming/crops/grapes.lua | 2 +- farming/crops/melon.lua | 2 +- farming/crops/onion.lua | 2 +- farming/crops/peas.lua | 2 +- farming/crops/pepper.lua | 2 +- farming/crops/pineapple.lua | 1 + farming/crops/potato.lua | 2 +- farming/crops/pumpkin.lua | 2 +- farming/crops/raspberry.lua | 3 +- farming/crops/rhubarb.lua | 2 +- farming/crops/tomato.lua | 2 +- farming/hoes.lua | 13 +- farming/init.lua | 4 +- ferns/crafting.lua | 2 +- ferns/depends.txt | 3 - ferns/fern.lua | 2 +- ferns/gianttreefern.lua | 2 +- ferns/horsetail.lua | 2 +- ferns/init.lua | 2 +- ferns/locale/ferns.fr.tr | 22 + ferns/locale/template.txt | 23 + ferns/mod.conf | 2 + ferns/treefern.lua | 2 +- flowers_plus/depends.txt | 4 - flowers_plus/init.lua | 4 +- flowers_plus/locale/flowers_plus.de.tr | 13 + flowers_plus/locale/flowers_plus.es.tr | 12 + flowers_plus/locale/flowers_plus.fr.tr | 12 + flowers_plus/locale/flowers_plus.tr.tr | 12 + flowers_plus/locale/template.txt | 13 + flowers_plus/mod.conf | 3 + glooptest/textures/glooptest_chainlink.png | Bin 175 -> 0 bytes homedecor_doors_and_gates/init.lua | 6 +- junglegrass/mod.conf | 1 + maptools/CHANGELOG.md | 5 +- maptools/LICENSE.md | 2 +- maptools/README.md | 8 +- maptools/aliases.lua | 2 +- maptools/config.lua | 2 +- maptools/craftitems.lua | 2 +- maptools/default_nodes.lua | 2 +- maptools/init.lua | 2 +- maptools/nodes.lua | 2 +- maptools/tools.lua | 2 +- mesecons/actionqueue.lua | 168 ++- mesecons_delayer/init.lua | 131 +- mesecons_fpga/init.lua | 129 +- mesecons_fpga/logic.lua | 100 +- mesecons_fpga/tool.lua | 13 +- molehills/depends.txt | 3 - molehills/init.lua | 4 +- molehills/locale/molehills.fr.tr | 9 + molehills/locale/template.txt | 9 + molehills/mod.conf | 2 + moreblocks/CHANGELOG.md | 10 +- moreblocks/LICENSE.md | 2 +- moreblocks/README.md | 8 +- moreblocks/aliases.lua | 2 +- moreblocks/circular_saw.lua | 2 +- moreblocks/config.lua | 2 +- moreblocks/crafting.lua | 2 +- moreblocks/init.lua | 2 +- moreblocks/locale/de.po | 2 +- moreblocks/locale/es.po | 2 +- moreblocks/locale/fr.po | 2 +- moreblocks/locale/it.po | 2 +- moreblocks/locale/pl.po | 2 +- moreblocks/locale/template.pot | 2 +- moreblocks/nodes.lua | 2 +- moreblocks/ownership.lua | 2 +- moreblocks/redefinitions.lua | 2 +- moreblocks/stairsplus/aliases.lua | 70 -- moreblocks/stairsplus/common.lua | 2 +- moreblocks/stairsplus/conversion.lua | 139 --- moreblocks/stairsplus/custom.lua | 2 +- moreblocks/stairsplus/defs.lua | 2 +- moreblocks/stairsplus/init.lua | 5 +- moreblocks/stairsplus/microblocks.lua | 2 +- moreblocks/stairsplus/panels.lua | 2 +- moreblocks/stairsplus/recipes.lua | 2 +- moreblocks/stairsplus/registrations.lua | 2 +- moreblocks/stairsplus/slabs.lua | 2 +- moreblocks/stairsplus/slopes.lua | 2 +- moreblocks/stairsplus/stairs.lua | 2 +- moreores/.luacheckrc | 1 + moreores/CHANGELOG.md | 15 +- moreores/LICENSE.md | 2 +- moreores/README.md | 8 +- moreores/init.lua | 31 +- moreores/intllib.lua | 44 - moreores/locale/de.txt | 21 - moreores/locale/es.txt | 21 - moreores/locale/fr.txt | 21 - moreores/locale/it.txt | 21 - moreores/locale/moreores.de.tr | 22 + moreores/locale/moreores.en.tr | 21 + moreores/locale/moreores.es.tr | 22 + moreores/locale/moreores.fr.tr | 23 + moreores/locale/moreores.hu.tr | 22 + moreores/locale/moreores.it.tr | 22 + moreores/locale/moreores.nl.tr | 19 + moreores/locale/moreores.pl.tr | 22 + moreores/locale/moreores.pt_br.txt | 23 + moreores/locale/moreores.tr.tr | 28 + moreores/locale/nl.txt | 19 - moreores/locale/pl.txt | 21 - moreores/locale/pt_br.txt | 21 - moreores/locale/tr.txt | 25 - moreores/mg.lua | 2 +- moreores/mod.conf | 2 +- moretrees/crafts.lua | 31 +- moretrees/mod.conf | 2 + nature_classic/blossom.lua | 2 +- nature_classic/depends.txt | 3 - nature_classic/init.lua | 2 +- nature_classic/locale/nature_classic.fr.tr | 10 + nature_classic/locale/template.txt | 10 + nature_classic/mod.conf | 3 + pipeworks/filter-injector.lua | 250 ++-- plantlife_i18n/depends.txt | 1 - plantlife_i18n/init.lua | 7 - plantlife_i18n/intllib.lua | 45 - plantlife_i18n/locale/de.po | 488 -------- plantlife_i18n/locale/es.po | 488 -------- plantlife_i18n/locale/fr.po | 487 -------- plantlife_i18n/locale/pt.po | 487 -------- plantlife_i18n/locale/template.pot | 486 -------- plantlife_i18n/locale/tr.po | 489 -------- plantlife_i18n/tools/updatepo.sh | 24 - poisonivy/depends.txt | 2 - poisonivy/init.lua | 4 +- poisonivy/locale/poisonivy.de.tr | 12 + poisonivy/locale/poisonivy.es.tr | 12 + poisonivy/locale/poisonivy.fr.tr | 12 + poisonivy/locale/poisonivy.pt.tr | 12 + .../locale/{pt_BR.txt => poisonivy.pt_BR.tr} | 3 +- poisonivy/locale/poisonivy.template.trt | 12 + poisonivy/locale/poisonivy.tr.tr | 12 + poisonivy/mod.conf | 2 + technic/README.md | 5 +- technic/doc/api.md | 4 + technic/machines/other/injector.lua | 2 +- technic/machines/register/alloy_furnace.lua | 40 + technic/machines/register/battery_box.lua | 2 +- .../machines/register/extractor_recipes.lua | 1 + technic/machines/register/machine_base.lua | 45 +- technic/radiation.lua | 2 + technic/textures/technic_river_water_can.png | Bin 0 -> 346 bytes technic/tools/cans.lua | 18 + technic_cnc/cnc.lua | 2 +- teleport_request/.luacheckrc | 20 + teleport_request/README.md | 96 +- teleport_request/commands.lua | 68 ++ teleport_request/config.lua | 28 +- teleport_request/functions.lua | 608 ++++++++++ teleport_request/init.lua | 570 +-------- teleport_request/locale/es.po | 10 +- teleport_request/locale/template.pot | 10 +- teleport_request/mod.conf | 2 +- teleport_request/privileges.lua | 40 + teleport_request/sounds/LICENSE.txt | 20 + teleport_request/sounds/tpr_warp.ogg | Bin 0 -> 30788 bytes teleport_request/sounds/whoosh.ogg | Bin 25717 -> 0 bytes trunks/depends.txt | 7 - trunks/init.lua | 2 +- trunks/locale/template.txt | 17 + trunks/locale/trunks.fr.tr | 17 + trunks/mod.conf | 3 + trunks/nodes.lua | 4 +- .../locale/unified_inventory.it.tr | 79 ++ .../locale/unified_inventory.zh_CN.tr | 78 ++ .../locale/unified_inventory.zh_TW.tr | 78 ++ unifieddyes/depends.txt | 4 - unifieddyes/description.txt | 1 - unifieddyes/init.lua | 30 +- unifieddyes/locale/de.txt | 74 -- unifieddyes/locale/es.txt | 87 -- unifieddyes/locale/fr.txt | 87 -- unifieddyes/locale/ms.txt | 87 -- unifieddyes/locale/pt.txt | 85 -- unifieddyes/locale/ru.txt | 74 -- unifieddyes/locale/template.txt | 173 +-- unifieddyes/locale/tr.txt | 88 -- unifieddyes/locale/unifieddyes.de.tr | 76 ++ unifieddyes/locale/unifieddyes.es.tr | 89 ++ unifieddyes/locale/unifieddyes.fr.tr | 104 ++ unifieddyes/locale/unifieddyes.ms.tr | 89 ++ unifieddyes/locale/unifieddyes.pt.tr | 87 ++ unifieddyes/locale/unifieddyes.ru.tr | 76 ++ unifieddyes/locale/unifieddyes.tr.tr | 90 ++ unifieddyes/mod.conf | 2 + vines/depends.txt | 4 - vines/description.txt | 1 - vines/init.lua | 4 +- vines/locale/template.txt | 14 + vines/locale/vines.fr.tr | 15 + vines/mod.conf | 4 +- woodsoils/depends.txt | 8 - woodsoils/init.lua | 2 +- woodsoils/locale/template.txt | 12 + woodsoils/locale/woodsoils.fr.tr | 12 + woodsoils/mod.conf | 3 + woodsoils/nodes.lua | 2 +- worldedit/manipulations.lua | 2 +- worldedit/serialization.lua | 57 +- worldedit_commands/cuboid.lua | 267 ++--- worldedit_commands/init.lua | 1064 ++++++++++------- worldedit_commands/safe.lua | 44 +- worldedit_commands/wand.lua | 34 +- worldedit_gui/functionality.lua | 448 ++++--- worldedit_shortcommands/init.lua | 90 +- xban2/init.lua | 12 +- youngtrees/depends.txt | 3 - youngtrees/init.lua | 2 +- youngtrees/locale/template.txt | 13 + youngtrees/locale/youngtrees.fr.tr | 13 + youngtrees/mod.conf | 2 + 367 files changed, 5637 insertions(+), 6655 deletions(-) delete mode 100644 3dmushrooms/depends.txt create mode 100644 3dmushrooms/mod.conf delete mode 100644 along_shore/depends.txt create mode 100644 along_shore/mod.conf delete mode 100644 basic_materials/depends.txt create mode 100644 basic_materials/locale/basic_materials.fr.tr create mode 100644 basic_materials/mod.conf delete mode 100644 bushes/depends.txt create mode 100644 bushes/locale/bushes.fr.tr create mode 100644 bushes/locale/template.txt create mode 100644 bushes/mod.conf delete mode 100644 bushes_classic/depends.txt create mode 100644 bushes_classic/locale/bushes_classic.de.tr create mode 100644 bushes_classic/locale/bushes_classic.es.tr create mode 100644 bushes_classic/locale/bushes_classic.fr.tr create mode 100644 bushes_classic/locale/bushes_classic.tr.tr create mode 100644 bushes_classic/locale/template.txt create mode 100644 bushes_classic/mod.conf delete mode 100644 castle_gates/class_pointset.lua create mode 100644 castle_gates/locale/castle_gates.it.tr create mode 100644 castle_gates/locale/template.txt delete mode 100644 castle_masonry/depends.txt delete mode 100644 castle_masonry/description.txt create mode 100644 castle_masonry/locale/castle_masonry.it.tr create mode 100644 castle_masonry/locale/template.txt create mode 100644 castle_shields/locale/castle_shields.it.tr create mode 100644 castle_shields/locale/template.txt delete mode 100644 castle_tapestries/depends.txt delete mode 100644 castle_tapestries/description.txt create mode 100644 castle_tapestries/locale/castle_tapestries.it.tr create mode 100644 castle_tapestries/locale/template.txt delete mode 100644 cavestuff/depends.txt create mode 100644 cavestuff/locale/cavestuff.fr.tr create mode 100644 cavestuff/locale/template.txt create mode 100644 cavestuff/mod.conf create mode 100644 cool_trees/pomegranate/init.lua create mode 100644 cool_trees/pomegranate/locale/pomegranate.es.tr create mode 100644 cool_trees/pomegranate/mod.conf create mode 100644 cool_trees/pomegranate/schematics/pomegranate.lua create mode 100644 cool_trees/pomegranate/schematics/pomegranate.mts create mode 100644 cool_trees/pomegranate/schematics/tree.mts create mode 100644 cool_trees/pomegranate/textures/pomegranate.png create mode 100644 cool_trees/pomegranate/textures/pomegranate_leaves.png create mode 100644 cool_trees/pomegranate/textures/pomegranate_sapling.png create mode 100644 cool_trees/pomegranate/textures/pomegranate_section.png create mode 100644 cool_trees/pomegranate/textures/pomegranate_trunk.png create mode 100644 cool_trees/pomegranate/textures/pomegranate_trunk_top.png create mode 100644 cool_trees/pomegranate/textures/pomegranate_wood.png delete mode 100644 dryplants/depends.txt create mode 100644 dryplants/locale/dryplants.fr.tr create mode 100644 dryplants/locale/template.txt create mode 100644 dryplants/mod.conf delete mode 100644 ferns/depends.txt create mode 100644 ferns/locale/ferns.fr.tr create mode 100644 ferns/locale/template.txt create mode 100644 ferns/mod.conf delete mode 100644 flowers_plus/depends.txt create mode 100644 flowers_plus/locale/flowers_plus.de.tr create mode 100644 flowers_plus/locale/flowers_plus.es.tr create mode 100644 flowers_plus/locale/flowers_plus.fr.tr create mode 100644 flowers_plus/locale/flowers_plus.tr.tr create mode 100644 flowers_plus/locale/template.txt create mode 100644 flowers_plus/mod.conf delete mode 100644 glooptest/textures/glooptest_chainlink.png create mode 100644 junglegrass/mod.conf delete mode 100644 molehills/depends.txt create mode 100644 molehills/locale/molehills.fr.tr create mode 100644 molehills/locale/template.txt create mode 100644 molehills/mod.conf delete mode 100644 moreblocks/stairsplus/aliases.lua delete mode 100644 moreblocks/stairsplus/conversion.lua delete mode 100644 moreores/intllib.lua delete mode 100644 moreores/locale/de.txt delete mode 100644 moreores/locale/es.txt delete mode 100644 moreores/locale/fr.txt delete mode 100644 moreores/locale/it.txt create mode 100644 moreores/locale/moreores.de.tr create mode 100644 moreores/locale/moreores.en.tr create mode 100644 moreores/locale/moreores.es.tr create mode 100644 moreores/locale/moreores.fr.tr create mode 100644 moreores/locale/moreores.hu.tr create mode 100644 moreores/locale/moreores.it.tr create mode 100644 moreores/locale/moreores.nl.tr create mode 100644 moreores/locale/moreores.pl.tr create mode 100644 moreores/locale/moreores.pt_br.txt create mode 100644 moreores/locale/moreores.tr.tr delete mode 100644 moreores/locale/nl.txt delete mode 100644 moreores/locale/pl.txt delete mode 100644 moreores/locale/pt_br.txt delete mode 100644 moreores/locale/tr.txt delete mode 100644 nature_classic/depends.txt create mode 100644 nature_classic/locale/nature_classic.fr.tr create mode 100644 nature_classic/locale/template.txt create mode 100644 nature_classic/mod.conf delete mode 100644 plantlife_i18n/depends.txt delete mode 100644 plantlife_i18n/init.lua delete mode 100644 plantlife_i18n/intllib.lua delete mode 100644 plantlife_i18n/locale/de.po delete mode 100644 plantlife_i18n/locale/es.po delete mode 100644 plantlife_i18n/locale/fr.po delete mode 100644 plantlife_i18n/locale/pt.po delete mode 100644 plantlife_i18n/locale/template.pot delete mode 100644 plantlife_i18n/locale/tr.po delete mode 100755 plantlife_i18n/tools/updatepo.sh delete mode 100644 poisonivy/depends.txt create mode 100644 poisonivy/locale/poisonivy.de.tr create mode 100644 poisonivy/locale/poisonivy.es.tr create mode 100644 poisonivy/locale/poisonivy.fr.tr create mode 100644 poisonivy/locale/poisonivy.pt.tr rename poisonivy/locale/{pt_BR.txt => poisonivy.pt_BR.tr} (89%) create mode 100644 poisonivy/locale/poisonivy.template.trt create mode 100644 poisonivy/locale/poisonivy.tr.tr create mode 100644 poisonivy/mod.conf create mode 100644 technic/textures/technic_river_water_can.png create mode 100644 teleport_request/.luacheckrc create mode 100644 teleport_request/commands.lua create mode 100644 teleport_request/functions.lua create mode 100644 teleport_request/privileges.lua create mode 100644 teleport_request/sounds/LICENSE.txt create mode 100644 teleport_request/sounds/tpr_warp.ogg delete mode 100644 teleport_request/sounds/whoosh.ogg delete mode 100644 trunks/depends.txt create mode 100644 trunks/locale/template.txt create mode 100644 trunks/locale/trunks.fr.tr create mode 100644 trunks/mod.conf create mode 100644 unified_inventory/locale/unified_inventory.it.tr create mode 100644 unified_inventory/locale/unified_inventory.zh_CN.tr create mode 100644 unified_inventory/locale/unified_inventory.zh_TW.tr delete mode 100644 unifieddyes/depends.txt delete mode 100644 unifieddyes/description.txt delete mode 100644 unifieddyes/locale/de.txt delete mode 100644 unifieddyes/locale/es.txt delete mode 100644 unifieddyes/locale/fr.txt delete mode 100644 unifieddyes/locale/ms.txt delete mode 100644 unifieddyes/locale/pt.txt delete mode 100644 unifieddyes/locale/ru.txt delete mode 100644 unifieddyes/locale/tr.txt create mode 100644 unifieddyes/locale/unifieddyes.de.tr create mode 100644 unifieddyes/locale/unifieddyes.es.tr create mode 100644 unifieddyes/locale/unifieddyes.fr.tr create mode 100644 unifieddyes/locale/unifieddyes.ms.tr create mode 100644 unifieddyes/locale/unifieddyes.pt.tr create mode 100644 unifieddyes/locale/unifieddyes.ru.tr create mode 100644 unifieddyes/locale/unifieddyes.tr.tr delete mode 100644 vines/depends.txt delete mode 100644 vines/description.txt create mode 100644 vines/locale/template.txt create mode 100644 vines/locale/vines.fr.tr delete mode 100644 woodsoils/depends.txt create mode 100644 woodsoils/locale/template.txt create mode 100644 woodsoils/locale/woodsoils.fr.tr create mode 100644 woodsoils/mod.conf delete mode 100644 youngtrees/depends.txt create mode 100644 youngtrees/locale/template.txt create mode 100644 youngtrees/locale/youngtrees.fr.tr create mode 100644 youngtrees/mod.conf diff --git a/3dmushrooms/depends.txt b/3dmushrooms/depends.txt deleted file mode 100644 index abb01ae5..00000000 --- a/3dmushrooms/depends.txt +++ /dev/null @@ -1,2 +0,0 @@ -default -flowers diff --git a/3dmushrooms/mod.conf b/3dmushrooms/mod.conf new file mode 100644 index 00000000..27d96847 --- /dev/null +++ b/3dmushrooms/mod.conf @@ -0,0 +1,2 @@ +name = 3dmushrooms +depends = default, flowers diff --git a/along_shore/depends.txt b/along_shore/depends.txt deleted file mode 100644 index a63765af..00000000 --- a/along_shore/depends.txt +++ /dev/null @@ -1,3 +0,0 @@ -default -biome_lib -flowers_plus? \ No newline at end of file diff --git a/along_shore/mod.conf b/along_shore/mod.conf new file mode 100644 index 00000000..8d0c9dd4 --- /dev/null +++ b/along_shore/mod.conf @@ -0,0 +1,3 @@ +name = along_shore +depends = default, biome_lib +optional_depends = flowers_plus diff --git a/anvil/mod.conf b/anvil/mod.conf index 2372a4a9..5fe6e011 100644 --- a/anvil/mod.conf +++ b/anvil/mod.conf @@ -1 +1,4 @@ name = anvil +depends = default +optional_depends = doc, intllib +description = Hammer and anvil for repairing tools. diff --git a/basic_materials/depends.txt b/basic_materials/depends.txt deleted file mode 100644 index 436cd476..00000000 --- a/basic_materials/depends.txt +++ /dev/null @@ -1,2 +0,0 @@ -default -moreores? diff --git a/basic_materials/electrical-electronic.lua b/basic_materials/electrical-electronic.lua index 4802bbc1..91fac4e3 100644 --- a/basic_materials/electrical-electronic.lua +++ b/basic_materials/electrical-electronic.lua @@ -1,27 +1,30 @@ +-- Translation support +local S = minetest.get_translator("basic_materials") + -- items minetest.register_craftitem("basic_materials:silicon", { - description = "Silicon lump", + description = S("Silicon lump"), inventory_image = "basic_materials_silicon.png", }) minetest.register_craftitem("basic_materials:ic", { - description = "Simple Integrated Circuit", + description = S("Simple Integrated Circuit"), inventory_image = "basic_materials_ic.png", }) minetest.register_craftitem("basic_materials:motor", { - description = "Simple Motor", + description = S("Simple Motor"), inventory_image = "basic_materials_motor.png", }) minetest.register_craftitem("basic_materials:heating_element", { - description = "Heating element", + description = S("Heating element"), inventory_image = "basic_materials_heating_element.png", }) minetest.register_craftitem("basic_materials:energy_crystal_simple", { - description = "Simple energy crystal", + description = S("Simple energy crystal"), inventory_image = "basic_materials_energy_crystal.png", }) diff --git a/basic_materials/locale/basic_materials.fr.tr b/basic_materials/locale/basic_materials.fr.tr new file mode 100644 index 00000000..0bebf79d --- /dev/null +++ b/basic_materials/locale/basic_materials.fr.tr @@ -0,0 +1,33 @@ +# textdomain: basic_materials +Silicon lump=Morceau de silicium +Simple Integrated Circuit=Circuit intégré simple +Simple Motor=Moteur simple +Heating element=Élément chauffant +Simple energy crystal=Cristal d’énergie simple + +Spool of steel wire=Bobine de fil d’acier +Spool of copper wire=Bobine de fil de cuivre +Spool of silver wire=Bobine de fil d’argent +Spool of gold wire=Bobine de fil d’or +Steel Strip=Bande de acier +Copper Strip=Bande de cuivre +Steel Bar=Barre d’acier +Chainlinks (brass)=Maillon en laiton +Chainlinks (steel)=Maillon en acier +Brass Ingot=Lingot de laiton +Steel gear=Rouage en acier +Padlock=Cadenas +Chain (steel, hanging)=Chaine en acier +Chain (brass, hanging)=Chaine en laiton +Brass Block=Bloc de laiton + +Oil extract=Extrait d’huile +Unprocessed paraffin=Paraffine non transformée +Uncooked Terracotta Base=Argile crue +Wet Cement=Ciment humide +Cement=Ciment +Concrete Block=Bloc de béton + +Plastic sheet=Morceau de plastique +Plastic strips=Bande de plastique +Empty wire spool=Bobine de fil vide diff --git a/basic_materials/metals.lua b/basic_materials/metals.lua index e4af694c..cae56d79 100644 --- a/basic_materials/metals.lua +++ b/basic_materials/metals.lua @@ -1,62 +1,65 @@ +-- Translation support +local S = minetest.get_translator("basic_materials") + -- items minetest.register_craftitem("basic_materials:steel_wire", { - description = "Spool of steel wire", + description = S("Spool of steel wire"), inventory_image = "basic_materials_steel_wire.png" }) minetest.register_craftitem("basic_materials:copper_wire", { - description = "Spool of copper wire", + description = S("Spool of copper wire"), inventory_image = "basic_materials_copper_wire.png" }) minetest.register_craftitem("basic_materials:silver_wire", { - description = "Spool of silver wire", + description = S("Spool of silver wire"), inventory_image = "basic_materials_silver_wire.png" }) minetest.register_craftitem("basic_materials:gold_wire", { - description = "Spool of gold wire", + description = S("Spool of gold wire"), inventory_image = "basic_materials_gold_wire.png" }) minetest.register_craftitem("basic_materials:steel_strip", { - description = "Steel Strip", + description = S("Steel Strip"), inventory_image = "basic_materials_steel_strip.png" }) minetest.register_craftitem("basic_materials:copper_strip", { - description = "Copper Strip", + description = S("Copper Strip"), inventory_image = "basic_materials_copper_strip.png" }) minetest.register_craftitem("basic_materials:steel_bar", { - description = "Steel Bar", + description = S("Steel Bar"), inventory_image = "basic_materials_steel_bar.png", }) minetest.register_craftitem("basic_materials:chainlink_brass", { - description = "Chainlinks (brass)", + description = S("Chainlinks (brass)"), inventory_image = "basic_materials_chainlink_brass.png" }) minetest.register_craftitem("basic_materials:chainlink_steel", { - description = "Chainlinks (steel)", + description = S("Chainlinks (steel)"), inventory_image = "basic_materials_chainlink_steel.png" }) minetest.register_craftitem("basic_materials:brass_ingot", { - description = "Brass Ingot", + description = S("Brass Ingot"), inventory_image = "basic_materials_brass_ingot.png", }) minetest.register_craftitem("basic_materials:gear_steel", { - description = "Steel gear", + description = S("Steel gear"), inventory_image = "basic_materials_gear_steel.png" }) minetest.register_craftitem("basic_materials:padlock", { - description = "Padlock", + description = S("Padlock"), inventory_image = "basic_materials_padlock.png" }) @@ -76,7 +79,7 @@ local topchains_sbox = { } minetest.register_node("basic_materials:chain_steel", { - description = "Chain (steel, hanging)", + description = S("Chain (steel, hanging)"), drawtype = "mesh", mesh = "basic_materials_chains.obj", tiles = {"basic_materials_chain_steel.png"}, @@ -90,7 +93,7 @@ minetest.register_node("basic_materials:chain_steel", { }) minetest.register_node("basic_materials:chain_brass", { - description = "Chain (brass, hanging)", + description = S("Chain (brass, hanging)"), drawtype = "mesh", mesh = "basic_materials_chains.obj", tiles = {"basic_materials_chain_brass.png"}, @@ -104,7 +107,7 @@ minetest.register_node("basic_materials:chain_brass", { }) minetest.register_node("basic_materials:brass_block", { - description = "Brass Block", + description = S("Brass Block"), tiles = { "basic_materials_brass_block.png" }, is_ground_content = false, groups = {cracky=1, level=2}, diff --git a/basic_materials/misc.lua b/basic_materials/misc.lua index ceafa4b5..00128972 100644 --- a/basic_materials/misc.lua +++ b/basic_materials/misc.lua @@ -1,29 +1,32 @@ ---items +-- Translation support +local S = minetest.get_translator("basic_materials") + +-- items minetest.register_craftitem("basic_materials:oil_extract", { - description = "Oil extract", + description = S("Oil extract"), inventory_image = "basic_materials_oil_extract.png", }) minetest.register_craftitem("basic_materials:paraffin", { - description = "Unprocessed paraffin", + description = S("Unprocessed paraffin"), inventory_image = "basic_materials_paraffin.png", }) minetest.register_craftitem("basic_materials:terracotta_base", { - description = "Uncooked Terracotta Base", + description = S("Uncooked Terracotta Base"), inventory_image = "basic_materials_terracotta_base.png", }) minetest.register_craftitem("basic_materials:wet_cement", { - description = "Wet Cement", + description = S("Wet Cement"), inventory_image = "basic_materials_wet_cement.png", }) -- nodes minetest.register_node("basic_materials:cement_block", { - description = "Cement", + description = S("Cement"), tiles = {"basic_materials_cement_block.png"}, is_ground_content = true, groups = {cracky=2}, @@ -31,7 +34,7 @@ minetest.register_node("basic_materials:cement_block", { }) minetest.register_node("basic_materials:concrete_block", { - description = "Concrete Block", + description = S("Concrete Block"), tiles = {"basic_materials_concrete_block.png",}, groups = {cracky=1, level=2, concrete=1}, sounds = default.node_sound_stone_defaults(), diff --git a/basic_materials/mod.conf b/basic_materials/mod.conf new file mode 100644 index 00000000..4b58eba6 --- /dev/null +++ b/basic_materials/mod.conf @@ -0,0 +1,3 @@ +name = basic_materials +depends = default +optional_depends = moreores diff --git a/basic_materials/plastics.lua b/basic_materials/plastics.lua index 953023e5..3ac0f982 100644 --- a/basic_materials/plastics.lua +++ b/basic_materials/plastics.lua @@ -1,17 +1,20 @@ +-- Translation support +local S = minetest.get_translator("basic_materials") + -- items minetest.register_craftitem("basic_materials:plastic_sheet", { - description = "Plastic sheet", + description = S("Plastic sheet"), inventory_image = "basic_materials_plastic_sheet.png", }) minetest.register_craftitem("basic_materials:plastic_strip", { - description = "Plastic strips", + description = S("Plastic strips"), inventory_image = "basic_materials_plastic_strip.png", }) minetest.register_craftitem("basic_materials:empty_spool", { - description = "Empty wire spool", + description = S("Empty wire spool"), inventory_image = "basic_materials_empty_spool.png" }) diff --git a/bushes/depends.txt b/bushes/depends.txt deleted file mode 100644 index 6628c823..00000000 --- a/bushes/depends.txt +++ /dev/null @@ -1,5 +0,0 @@ -default -biome_lib -plantlife_i18n -stonage? -sumpf? diff --git a/bushes/init.lua b/bushes/init.lua index 28d91aa1..4be5a61e 100644 --- a/bushes/init.lua +++ b/bushes/init.lua @@ -7,7 +7,7 @@ -- Branch textures created by Neuromancer. -- support for i18n -local S = plantlife_i18n.gettext +local S = minetest.get_translator("bushes") abstract_bushes = {} minetest.register_node("bushes:youngtree2_bottom", { diff --git a/bushes/locale/bushes.fr.tr b/bushes/locale/bushes.fr.tr new file mode 100644 index 00000000..a3388141 --- /dev/null +++ b/bushes/locale/bushes.fr.tr @@ -0,0 +1,11 @@ +# textdomain: bushes + +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# fat115 , 2017. +# + +Young Tree 2 (bottom)=Arbuste 2 (bas) +Bush Branches @1=Branches de buisson @1 +Bush Leaves @1=Feuilles de buisson @1 diff --git a/bushes/locale/template.txt b/bushes/locale/template.txt new file mode 100644 index 00000000..e3db363b --- /dev/null +++ b/bushes/locale/template.txt @@ -0,0 +1,10 @@ +# textdomain: bushes + +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# FIRST AUTHOR , YEAR. + +Young Tree 2 (bottom)= +Bush Branches @1= +Bush Leaves @1= diff --git a/bushes/mod.conf b/bushes/mod.conf new file mode 100644 index 00000000..998cdd5a --- /dev/null +++ b/bushes/mod.conf @@ -0,0 +1,3 @@ +name = bushes +depends = default, biome_lib +optional_depends = stonage, sumpf diff --git a/bushes_classic/cooking.lua b/bushes_classic/cooking.lua index 6ad7e585..3e46441b 100644 --- a/bushes_classic/cooking.lua +++ b/bushes_classic/cooking.lua @@ -1,5 +1,5 @@ -- support for i18n -local S = plantlife_i18n.gettext +local S = minetest.get_translator("bushes_classic") -- Basket diff --git a/bushes_classic/depends.txt b/bushes_classic/depends.txt deleted file mode 100644 index 12276f62..00000000 --- a/bushes_classic/depends.txt +++ /dev/null @@ -1,4 +0,0 @@ -biome_lib -plantlife_i18n -farming? -farming_plus? diff --git a/bushes_classic/init.lua b/bushes_classic/init.lua index b77a88c4..353bdc76 100644 --- a/bushes_classic/init.lua +++ b/bushes_classic/init.lua @@ -4,7 +4,7 @@ bushes_classic = {} -- support for i18n -local S = plantlife_i18n.gettext +local S = minetest.get_translator("bushes_classic") bushes_classic.bushes = { "strawberry", @@ -55,4 +55,4 @@ biome_lib:spawn_on_surfaces({ minetest.register_alias("bushes:basket_pies", "bushes:basket_strawberry") -print(S("[Bushes] Loaded.")) +print("[Bushes] Loaded.") diff --git a/bushes_classic/locale/bushes_classic.de.tr b/bushes_classic/locale/bushes_classic.de.tr new file mode 100644 index 00000000..35520b5c --- /dev/null +++ b/bushes_classic/locale/bushes_classic.de.tr @@ -0,0 +1,46 @@ +# textdomain: bushes_classic + +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# Xanthin, 2017. +# + +Sugar=Zucker +Basket with Strawberry pies=Korb mit Erdbeertorten +Cooked Strawberry pie=Erdbeertorte +Raw Strawberry pie=Rohe Erdbeertorte +Slice of Strawberry pie=Erdbeertortenstueck +Strawberry=Erdbeere +Strawberry Bush=Erdbeerbusch +Basket with Blackberry pies=Korb mit Brombeertorten +Blackberry=Brombeere +Blackberry Bush=Brombeerbusch +Cooked Blackberry pie=Brombeertorte +Raw Blackberry pie=Rohe Brombeertorte +Slice of Blackberry pie=Brombeertortenstueck +Basket with Blueberry pies=Korb mit Blaubeertorten +Blueberry=Blaubeere +Blueberry Bush=Blaubeerbusch +Cooked Blueberry pie=Blaubeertorte +Raw Blueberry pie=Rohe Blaubeertorte +Slice of Blueberry pie=Blaubeertortenstueck +Basket with Raspberry pies=Korb mit Himbeertorten +Cooked Raspberry pie=Himbeertorte +Raspberry=Himbeere +Raspberry Bush=Himbeerbusch +Raw Raspberry pie=Rohe Himbeertorte +Slice of Raspberry pie=Himbeertortenstueck +Basket with Gooseberry pies=Korb mit Stachelbeertorten +Cooked Gooseberry pie=Stachelbeertorte +Gooseberry=Stachelbeere +Gooseberry Bush=Stachelbeerbusch +Raw Gooseberry pie=Rohe Stachelbeertorte +Slice of Gooseberry pie=Stachelbeertortenstueck +Basket with Mixed Berry pies=Korb mit Beerenmixtorten +Cooked Mixed Berry pie=Beerenmixtorte +Currently fruitless Bush=zur Zeit fruechteloser +Mixed Berry=Beerenmix +Raw Mixed Berry pie=Rohe Beerenmixtorte +Slice of Mixed Berry pie=Beerenmixtortenstueck +Basket=Korb diff --git a/bushes_classic/locale/bushes_classic.es.tr b/bushes_classic/locale/bushes_classic.es.tr new file mode 100644 index 00000000..9726073a --- /dev/null +++ b/bushes_classic/locale/bushes_classic.es.tr @@ -0,0 +1,46 @@ +# textdomain: bushes_classic + +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# Carlos Barraza , 2017. +# + +Sugar=Azúcar +Basket with Strawberry pies=Cesta con Pasteles de Frutilla +Cooked Strawberry pie=Pastel de Frutilla Cocido +Raw Strawberry pie=Pastel de Frutilla Crudo +Slice of Strawberry pie=Rebanada de Pastel de Frutilla +Strawberry=Frutilla +Strawberry Bush=Arbusto de Frutilla +Basket with Blackberry pies=Cesta con Pasteles de Mora +Blackberry=Mora +Blackberry Bush=Arbusto de Mora +Cooked Blackberry pie=Pastel de Mora Cocido +Raw Blackberry pie=Pastel de Mora Crudo +Slice of Blackberry pie=Rebanada de Pastel de Mora +Basket with Blueberry pies=Cesta con Pasteles de Arándano +Blueberry=Arándano +Blueberry Bush=Arbusto de Arándano +Cooked Blueberry pie=Pastel de Arándano Cocido +Raw Blueberry pie=Pastel de Arándano Crudo +Slice of Blueberry pie=Rebanada de Pastel de Arándano +Basket with Raspberry pies=Cesta con Pasteles de Frambuesa +Cooked Raspberry pie=Pastel de Frambuesa Cocido +Raspberry=Frambuesa +Raspberry Bush=Arbusto de Frambuesa +Raw Raspberry pie=Pastel de Frambuesa Crudo +Slice of Raspberry pie=Rebanada de Pastel de Frambuesa +Basket with Gooseberry pies=Cesta con Pasteles de Grosella +Cooked Gooseberry pie=Pastel de Grosella Cocido +Gooseberry=Grosella +Gooseberry Bush=Arbusto de Grosella +Raw Gooseberry pie=Pastel de Grosella Crudo +Slice of Gooseberry pie=Rebanada de Pastel de Grosella +Basket with Mixed Berry pies=Cesta con Pasteles de Mezcla de Baya +Cooked Mixed Berry pie=Pastel de Mezcla de Bayas Cocido +Currently fruitless Bush=Arbusto actualmente infructuoso +Mixed Berry=Mezcla de Baya +Raw Mixed Berry pie=Pastel de Mezcla de Bayas Cruda +Slice of Mixed Berry pie=Rebanada de Pastel de Mezcla de Bayas +Basket=Cesta diff --git a/bushes_classic/locale/bushes_classic.fr.tr b/bushes_classic/locale/bushes_classic.fr.tr new file mode 100644 index 00000000..4400433b --- /dev/null +++ b/bushes_classic/locale/bushes_classic.fr.tr @@ -0,0 +1,46 @@ +# textdomain: bushes_classic + +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# fat115 , 2017. +# + +Sugar=Sucre +Basket with Strawberry pies=Panier de tartes aux fraises +Cooked Strawberry pie=Tarte aux fraises (cuite) +Raw Strawberry pie=Tarte aux fraises (crue) +Slice of Strawberry pie=Part de tarte aux fraises +Strawberry=Fraises +Strawberry Bush=Buisson de fraises +Basket with Blackberry pies=Panier de tartes aux fraises +Blackberry=Mûres +Blackberry Bush=Buisson de mûres +Cooked Blackberry pie=Tarte aux mûres (cuite) +Raw Blackberry pie=Tarte aux mûres (crue) +Slice of Blackberry pie=Part de tarte aux mûres +Basket with Blueberry pies=Panier de tartes aux mûres +Blueberry=Myrtilles +Blueberry Bush=Buisson de myrtilles +Cooked Blueberry pie=Tarte aux myrtilles (cuite) +Raw Blueberry pie=Tarte aux myrtilles (crue) +Slice of Blueberry pie=Part de tarte aux myrtilles +Basket with Raspberry pies=Panier de tartes aux framboises +Cooked Raspberry pie=Tarte aux framboises (cuite) +Raspberry=Framboises +Raspberry Bush=Buisson de framboises +Raw Raspberry pie=Tarte aux framboises (crue) +Slice of Raspberry pie=Part de tarts aux framboises +Basket with Gooseberry pies=Panier de tartes aux groseilles +Cooked Gooseberry pie=Tarte aux groseilles (cuite) +Gooseberry=Groseilles +Gooseberry Bush=Buisson de groseilles +Raw Gooseberry pie=Tarte aux groseilles (crue) +Slice of Gooseberry pie=Part de tarte aux groseilles +Basket with Mixed Berry pies=Panier de tartes aux fruits rouges +Cooked Mixed Berry pie=Tarte aux fruits rouges (cuite) +Currently fruitless Bush=Buisson sans fruits pour l'instant +Mixed Berry=Fruits rouges +Raw Mixed Berry pie=Tarte aux fruits rouges (crue) +Slice of Mixed Berry pie=Part de tarte aux fruits rouges +Basket=Panier diff --git a/bushes_classic/locale/bushes_classic.tr.tr b/bushes_classic/locale/bushes_classic.tr.tr new file mode 100644 index 00000000..38ed28d2 --- /dev/null +++ b/bushes_classic/locale/bushes_classic.tr.tr @@ -0,0 +1,46 @@ +# textdomain: bushes_classic + +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# mahmutelmas06@hotmail.com, 2017. +# + +Sugar=Şeker +Basket with Strawberry pies=Çilekli pasta sepeti +Cooked Strawberry pie=Pişmiş çilekli pasta +Raw Strawberry pie=Çilekli çiğ pasta +Slice of Strawberry pie=Çilekli pasta dilimi +Strawberry=Çilek +Strawberry Bush=Çilek fidanı +Basket with Blackberry pies=Böğürtlenli pasta sepeti +Blackberry=Böğürtlen +Blackberry Bush=Böğürtlen fidanı +Cooked Blackberry pie=Pişmiş böğürtlenli pasta +Raw Blackberry pie=Böğürtlenli çiğ pasta +Slice of Blackberry pie=Böğürtlenli pasta dilimi +Basket with Blueberry pies=Yaban mersini pastalı sepet +Blueberry=Yaban mersini +Blueberry Bush=Yaban mersini fidanı +Cooked Blueberry pie=Pişmiş yaban mersinli pasta +Raw Blueberry pie=Yaban mersinli çiğ pasta +Slice of Blueberry pie=Yaban mersinli pasta dilimi +Basket with Raspberry pies=Ahududulu pasta sepeti +Cooked Raspberry pie=Pişmiş ahududulu pasta +Raspberry=Ahududu +Raspberry Bush=Ahududu fidanı +Raw Raspberry pie=Ahududulu çiğ pasta +Slice of Raspberry pie=Ahududulu pasta dilimi +Basket with Gooseberry pies=Bektaşi üzümlü pasta sepeti +Cooked Gooseberry pie=Pişmiş bektaşi üzümlü pasta +Gooseberry=Bektaşi üzümü +Gooseberry Bush=Bektaşi üzümü fidanı +Raw Gooseberry pie=Bektaşi üzümlü çiğ pasta +Slice of Gooseberry pie=Bektaşi üzümlü pasta dilimi +Basket with Mixed Berry pies=Dutlu pasta sepeti +Cooked Mixed Berry pie=Pişmiş dutlu pasta +Currently fruitless Bush=Fidanı şu anda meyvesiz +Mixed Berry=Dut +Raw Mixed Berry pie=Dutlu çiğ pasta +Slice of Mixed Berry pie=Dutlu pasta dilimi +Basket=Sepet diff --git a/bushes_classic/locale/template.txt b/bushes_classic/locale/template.txt new file mode 100644 index 00000000..c721e236 --- /dev/null +++ b/bushes_classic/locale/template.txt @@ -0,0 +1,46 @@ +# textdomain: bushes_classic + +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# FIRST AUTHOR , YEAR. +# + +Sugar= +Basket with Strawberry pies= +Cooked Strawberry pie= +Raw Strawberry pie= +Slice of Strawberry pie= +Strawberry= +Strawberry Bush= +Basket with Blackberry pies= +Blackberry= +Blackberry Bush= +Cooked Blackberry pie= +Raw Blackberry pie= +Slice of Blackberry pie= +Basket with Blueberry pies= +Blueberry= +Blueberry Bush= +Cooked Blueberry pie= +Raw Blueberry pie= +Slice of Blueberry pie= +Basket with Raspberry pies= +Cooked Raspberry pie= +Raspberry= +Raspberry Bush= +Raw Raspberry pie= +Slice of Raspberry pie= +Basket with Gooseberry pies= +Cooked Gooseberry pie= +Gooseberry= +Gooseberry Bush= +Raw Gooseberry pie= +Slice of Gooseberry pie= +Basket with Mixed Berry pies= +Cooked Mixed Berry pie= +Currently fruitless Bush= +Mixed Berry= +Raw Mixed Berry pie= +Slice of Mixed Berry pie= +Basket= diff --git a/bushes_classic/mod.conf b/bushes_classic/mod.conf new file mode 100644 index 00000000..0adcd692 --- /dev/null +++ b/bushes_classic/mod.conf @@ -0,0 +1,3 @@ +name = bushes_classic +depends = biome_lib +optional_depends = farming, farming_plus diff --git a/bushes_classic/nodes.lua b/bushes_classic/nodes.lua index 1babb1dd..cf94d997 100644 --- a/bushes_classic/nodes.lua +++ b/bushes_classic/nodes.lua @@ -1,5 +1,5 @@ -- support for i18n -local S = plantlife_i18n.gettext +local S = minetest.get_translator("bushes_classic") plantlife_bushes = {} diff --git a/castle_gates/class_pointset.lua b/castle_gates/class_pointset.lua deleted file mode 100644 index 3cbbd895..00000000 --- a/castle_gates/class_pointset.lua +++ /dev/null @@ -1,101 +0,0 @@ --- A simple special-purpose class, this is used for building up sets of three-dimensional points for fast reference - -Pointset = {} -Pointset.__index = Pointset - -function Pointset.create() - local set = {} - setmetatable(set,Pointset) - set.points = {} - return set -end - -function Pointset:set(x, y, z, value) - -- sets a value in the 3D array "points". - if self.points[x] == nil then - self.points[x] = {} - end - if self.points[x][y] == nil then - self.points[x][y] = {} - end - self.points[x][y][z] = value -end - -function Pointset:set_if_not_in(excluded, x, y, z, value) - -- If a value is not already set for this point in the 3D array "excluded", set it in "points" - if excluded:get(x, y, z) ~= nil then - return - end - self:set(x, y, z, value) -end - -function Pointset:get(x, y, z) - -- return a value from the 3D array "points" - if self.points[x] == nil or self.points[x][y] == nil then - return nil - end - return self.points[x][y][z] -end - -function Pointset:set_pos(pos, value) - self:set(pos.x, pos.y, pos.z, value) -end - -function Pointset:set_pos_if_not_in(excluded, pos, value) - self:set_if_not_in(excluded, pos.x, pos.y, pos.z, value) -end - -function Pointset:get_pos(pos) - return self:get(pos.x, pos.y, pos.z) -end - -function Pointset:pop() - -- returns a point that's in the 3D array, and then removes it. - local pos = {} - local ytable - local ztable - local val - - local count = 0 - for _ in pairs(self.points) do count = count + 1 end - if count == 0 then - return nil - end - - pos.x, ytable = next(self.points) - pos.y, ztable = next(ytable) - pos.z, val = next(ztable) - - self.points[pos.x][pos.y][pos.z] = nil - - count = 0 - for _ in pairs(self.points[pos.x][pos.y]) do count = count + 1 end - if count == 0 then - self.points[pos.x][pos.y] = nil - end - - count = 0 - for _ in pairs(self.points[pos.x]) do count = count + 1 end - if count == 0 then - self.points[pos.x] = nil - end - - return pos, val -end - -function Pointset:get_pos_list(value) - -- Returns a list of all points with the given value in standard Minetest vector format. If no value is provided, returns all points - local outlist = {} - for x, ytable in ipairs(self.points) do - for y, ztable in ipairs(ytable) do - for z, val in ipairs(ztable) do - if (value == nil and val ~= nil ) or val == value then - table.insert(outlist, {x=x, y=y, z=z}) - end - end - end - end - return outlist -end - - \ No newline at end of file diff --git a/castle_gates/doors.lua b/castle_gates/doors.lua index 886af3d1..ea3440cf 100644 --- a/castle_gates/doors.lua +++ b/castle_gates/doors.lua @@ -1,6 +1,18 @@ --- internationalization boilerplate -local MP = minetest.get_modpath(minetest.get_current_modname()) -local S, NS = dofile(MP.."/intllib.lua") + +-- Used for localization, choose either built-in or intllib. + +local MP, S, NS = nil + +if (minetest.get_modpath("intllib") == nil) then + S = minetest.get_translator("castle_gates") + +else + -- internationalization boilerplate + MP = minetest.get_modpath(minetest.get_current_modname()) + S, NS = dofile(MP.."/intllib.lua") + +end + if minetest.get_modpath("doors") then doors.register("castle_gates:oak_door", { diff --git a/castle_gates/gate_functions.lua b/castle_gates/gate_functions.lua index c44cda54..41cecfc8 100644 --- a/castle_gates/gate_functions.lua +++ b/castle_gates/gate_functions.lua @@ -1,5 +1,4 @@ local MP = minetest.get_modpath(minetest.get_current_modname()) -dofile(MP.."/class_pointset.lua") -- Given a facedir, returns a set of all the corresponding directions local get_dirs = function(facedir) @@ -130,17 +129,16 @@ local get_door_layout = function(pos, facedir, player) door.previous_move = minetest.get_meta(pos):get_string("previous_move") -- temporary pointsets used while searching - local to_test = Pointset.create() - local tested = Pointset.create() - local can_slide_to = Pointset.create() + local to_test = {} + local tested = {} + local can_slide_to = {} local castle_gate_group_value -- this will be populated from the first gate node we encounter, which will be the one that was clicked on - to_test:set_pos(pos, true) - - local test_pos, _ = to_test:pop() + local test_pos = pos while test_pos ~= nil do - tested:set_pos(test_pos, true) -- track nodes we've looked at + local test_pos_hash = minetest.hash_node_position(test_pos) + tested[test_pos_hash] = true -- track nodes we've looked at local test_node = minetest.get_node(test_pos) if test_node.name == "ignore" then @@ -153,7 +151,9 @@ local get_door_layout = function(pos, facedir, player) end local test_node_def = minetest.registered_nodes[test_node.name] - can_slide_to:set_pos(test_pos, test_node_def.buildable_to == true) + if test_node_def.buildable_to then + can_slide_to[test_pos_hash] = true + end if test_node_def.paramtype2 == "facedir" and test_node.param2 <= 23 then -- prospective door nodes need to be of type facedir and have a valid param2 local test_node_dirs = get_dirs(test_node.param2) @@ -183,19 +183,23 @@ local get_door_layout = function(pos, facedir, player) end end - can_slide_to:set_pos(test_pos, true) -- since this is part of the door, other parts of the door can slide into it + can_slide_to[test_pos_hash] = true -- since this is part of the door, other parts of the door can slide into it local test_directions = {"top", "bottom", "left", "right"} for _, dir in pairs(test_directions) do local adjacent_pos = vector.add(test_pos, door.directions[dir]) local adjacent_node = minetest.get_node(adjacent_pos) local adjacent_def = minetest.registered_nodes[adjacent_node.name] - can_slide_to:set_pos(adjacent_pos, adjacent_def.buildable_to == true or adjacent_def.groups.castle_gate) + local adjacent_pos_hash = minetest.hash_node_position(adjacent_pos) + + if adjacent_def.buildable_to then + can_slide_to[adjacent_pos_hash] = true + end if test_node_def._gate_edges == nil or not test_node_def._gate_edges[dir] then -- if we ourselves are an edge node, don't look in the direction we're an edge in - if tested:get_pos(adjacent_pos) == nil then -- don't look at nodes that have already been looked at + + if tested[adjacent_pos_hash] == nil then -- don't look at nodes that have already been looked at if adjacent_def.paramtype2 == "facedir" then -- all doors are facedir nodes so we can pre-screen some targets - local edge_points_back_at_test_pos = false -- Look at the adjacent node's definition. If it's got gate edges, check if they point back at us. if adjacent_def._gate_edges ~= nil then @@ -209,7 +213,7 @@ local get_door_layout = function(pos, facedir, player) end if not edge_points_back_at_test_pos then - to_test:set_pos(adjacent_pos, true) + table.insert(to_test, adjacent_pos_hash) end end end @@ -218,17 +222,20 @@ local get_door_layout = function(pos, facedir, player) end end - test_pos, _ = to_test:pop() + test_pos = table.remove(to_test) + if test_pos ~= nil then + test_pos = minetest.get_position_from_hash(test_pos) + end end if door.hinge == nil then --sliding door, evaluate which directions it can go door.can_slide = {top=true, bottom=true, left=true, right=true} for _,door_node in pairs(door.all) do - door.can_slide.top = door.can_slide.top and can_slide_to:get_pos(vector.add(door_node.pos, door.directions.top)) - door.can_slide.bottom = door.can_slide.bottom and can_slide_to:get_pos(vector.add(door_node.pos, door.directions.bottom)) - door.can_slide.left = door.can_slide.left and can_slide_to:get_pos(vector.add(door_node.pos, door.directions.left)) - door.can_slide.right = door.can_slide.right and can_slide_to:get_pos(vector.add(door_node.pos, door.directions.right)) + door.can_slide.top = door.can_slide.top and can_slide_to[minetest.hash_node_position(vector.add(door_node.pos, door.directions.top))] + door.can_slide.bottom = door.can_slide.bottom and can_slide_to[minetest.hash_node_position(vector.add(door_node.pos, door.directions.bottom))] + door.can_slide.left = door.can_slide.left and can_slide_to[minetest.hash_node_position(vector.add(door_node.pos, door.directions.left))] + door.can_slide.right = door.can_slide.right and can_slide_to[minetest.hash_node_position(vector.add(door_node.pos, door.directions.right))] end else --rotating door, evaluate which direction it can go. Slightly more complicated. diff --git a/castle_gates/gate_slots.lua b/castle_gates/gate_slots.lua index e2c6287d..ef30ff9c 100644 --- a/castle_gates/gate_slots.lua +++ b/castle_gates/gate_slots.lua @@ -1,6 +1,15 @@ --- internationalization boilerplate -local MP = minetest.get_modpath(minetest.get_current_modname()) -local S, NS = dofile(MP.."/intllib.lua") +local MP, S, NS = nil + +if (minetest.get_modpath("intllib") == nil) then + S = minetest.get_translator("castle_gates") + +else + -- internationalization boilerplate + MP = minetest.get_modpath(minetest.get_current_modname()) + S, NS = dofile(MP.."/intllib.lua") + +end + -- copied from castle_masonry in case that mod is not loaded local get_material_properties = function(material) diff --git a/castle_gates/gates.lua b/castle_gates/gates.lua index ce471760..de6b807b 100644 --- a/castle_gates/gates.lua +++ b/castle_gates/gates.lua @@ -1,6 +1,15 @@ --- internationalization boilerplate -local MP = minetest.get_modpath(minetest.get_current_modname()) -local S, NS = dofile(MP.."/intllib.lua") +local MP, S, NS = nil + +if (minetest.get_modpath("intllib") == nil) then + S = minetest.get_translator("castle_gates") + +else + -- internationalization boilerplate + MP = minetest.get_modpath(minetest.get_current_modname()) + S, NS = dofile(MP.."/intllib.lua") + +end + minetest.register_alias("castle_gates:gate_edge", "castle_gates:wood_gate_edge") minetest.register_alias("castle_gates:gate_edge_handle", "castle_gates:wood_gate_edge_handle") diff --git a/castle_gates/locale/castle_gates.it.tr b/castle_gates/locale/castle_gates.it.tr new file mode 100644 index 00000000..79d34a04 --- /dev/null +++ b/castle_gates/locale/castle_gates.it.tr @@ -0,0 +1,16 @@ +# textdomain:castle_gates + +Oak Door=Porta di quercia +Jail Door=Porta della prigione +Jail Bars=Sbarre della prigione +@1 Portcullis Bars=Sbarre della saracinesca di @1 +@1 Portcullis Bottom=Estremità inferiore della saracinesca di @1 +@1 Gate Door=Porta di @1 del cancello +@1 Gate Door Edge=Estremità della porta di @1 del cancello +@1 Gate Door With Handle=Porta di @1 con maniglia del cancello +@1 Gate Door With Hinge=Porta di @1 con cardine del cancello +Wooden=legno +Steel=acciaio +Stonebrick=mattone di pietra +@1 Gate Slot=Alloggio di @1 del cancello +@1 Gate Slot Reverse=Rovescio dell'alloggio di @1 del cancello diff --git a/castle_gates/locale/it.po b/castle_gates/locale/it.po index 379d533e..c6c3645e 100644 --- a/castle_gates/locale/it.po +++ b/castle_gates/locale/it.po @@ -1,22 +1,22 @@ # ITALIAN LOCALE FILE FOR THE CASTLE GATES MODULE # Copyright (C) 2017 Philipbenr And DanDuncombe # This file is distributed under the same license as the CASTLE GATES package. -# Hamlet , 2017. +# Hamlet <54187342+h4ml3t@users.noreply.github.com> 2017, 2019. # msgid "" msgstr "" "Project-Id-Version: Castle Gates\n" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2019-04-14 22:15-0600\n" -"PO-Revision-Date: 2017-09-26 23:51+0100\n" -"Last-Translator: Hamlet \n" +"PO-Revision-Date: 2019-11-11 23:23+0100\n" +"Last-Translator: Hamlet <54187342+h4ml3t@users.noreply.github.com>\n" "Language-Team: \n" "Language: it\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -"X-Generator: Poedit 1.6.10\n" +"X-Generator: Poedit 2.2.1\n" #: doc.lua:11 msgid "Heavy wooden bars designed to prevent entry even to siege equipment." @@ -237,46 +237,40 @@ msgid "Jail Bars" msgstr "Sbarre della prigione" #: gates.lua:23 -#, fuzzy msgid "@1 Portcullis Bars" -msgstr "Sbarre della saracinesca" +msgstr "Sbarre della saracinesca di @1" #: gates.lua:53 -#, fuzzy msgid "@1 Portcullis Bottom" -msgstr "Estremità inferiore della saracinesca" +msgstr "Estremità inferiore della saracinesca di @1" #: gates.lua:113 -#, fuzzy msgid "@1 Gate Door" -msgstr "Segmento di cancello, porta o portone" +msgstr "Porta di @1 del cancello" #: gates.lua:145 -#, fuzzy msgid "@1 Gate Door Edge" -msgstr "Estremità di cancello, porta o portone" +msgstr "Estremità della porta di @1 del cancello" #: gates.lua:184 -#, fuzzy msgid "@1 Gate Door With Handle" -msgstr "Cancello, porta o portone con maniglia" +msgstr "Porta di @1 con maniglia del cancello" #: gates.lua:227 -#, fuzzy msgid "@1 Gate Door With Hinge" -msgstr "Cancello, porta o portone con cardine" +msgstr "Porta di @1 con cardine del cancello" #: gates.lua:256 msgid "Wooden" -msgstr "" +msgstr "legno" #: gates.lua:268 msgid "Steel" -msgstr "" +msgstr "acciaio" #: gate_slots.lua:36 msgid "Stonebrick" -msgstr "Mattoni di pietra" +msgstr "mattone di pietra" #: gate_slots.lua:45 msgid "@1 Gate Slot" @@ -285,4 +279,4 @@ msgstr "Alloggio di @1 per cancelli, porte, portoni e saracinesche" #: gate_slots.lua:70 msgid "@1 Gate Slot Reverse" msgstr "" -"Rovescio dell'alloggio di @1 per cancelli, porte, portoni e saracinesche." +"Rovescio dell'alloggio di @1 per cancelli, porte, portoni e saracinesche" diff --git a/castle_gates/locale/template.txt b/castle_gates/locale/template.txt new file mode 100644 index 00000000..3817f391 --- /dev/null +++ b/castle_gates/locale/template.txt @@ -0,0 +1,16 @@ +# textdomain:castle_gates + +Oak Door= +Jail Door= +Jail Bars= +@1 Portcullis Bars= +@1 Portcullis Bottom= +@1 Gate Door= +@1 Gate Door Edge= +@1 Gate Door With Handle= +@1 Gate Door With Hinge= +Wooden= +Steel= +Stonebrick= +@1 Gate Slot= +@1 Gate Slot Reverse= diff --git a/castle_gates/mod.conf b/castle_gates/mod.conf index 1ad7f80e..bac93665 100644 --- a/castle_gates/mod.conf +++ b/castle_gates/mod.conf @@ -1 +1,4 @@ name = castle_gates +description = This is a mod all about creating castles and castle dungeons. Many of the nodes are used for the outer-walls or dungeons. +depends = default +optional_depends = castle_masonry, doors, xpanes, intllib, doc diff --git a/castle_gates/screenshot.png b/castle_gates/screenshot.png index 54163c854f3f620117c8c2f8c957cb8f06458994..28fd97bbe7bd44b58f85b937a157953d2c2211fd 100644 GIT binary patch literal 151082 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 VYWs$QJ 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

We7cM)Q_4<{|+dAcs}J98-0VmBm>Z- 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Μ%YCH6vDOB})ed)@{P!bNQ z93R;u!=#sxtVJ}Pc>o#@j-S8<`P&az(s~r#MT$^HpARW>dJi-?&f1W}6)s)_kJyq-sO?4wQS z*k-5Q^^?GH2AU#Hd~_gCh8@vXr`lFU5`b2U9CsMO(8}O40oa^mOBaPLc-u~s(5lKM z9X)k6m{9bpb%kXvy$R(1yctle1sVm!BPSjY9LqFr7Ut&{*dIzBifPqqr7-W;&GRKl zEgZwH!UHNh1|3K68j0P}Y~{`D`m7s${IvIHUzi`hc(hq9^HT4+kiadrxb#seH>VA= zTrCE6q(In4*@Ow-@vWWD)!Z`;{o%>M#m!XC|D(~svh>+HgybS)wff!m!Jsu=u8Wf8 zrw+PqbJfwiyPSFSVUNed>)Ar)X)V{GD9^G*=;+&4i*h%qk+EpGWlr1P^VSreXcN*p zKRrJ6Hk$=|L)43T3Jvu_u2Lywr=S-egnkf&A3S}2eSLj-?dkIV`pH@gbGA*uWi?!rdzt_FFy2(M}hE6XbiQO;$*aj($Ty=ht{->z|6AyJflz2^C1 zO67kF`^m~)E2FIlF)s?)MOMt`vz!HUXDC1%&MFFH}x00Cqll*yU0f5uP zT@)To6tvM~4u!Emme)OadgMnResnv%g_Jo`fkNP&WyYYCJ$u@EgKq!TtC#S+so)W` znp$qVu6AehIei@ZQ^-A{j>#`mP9eYpJF}TSSui=jFx{^5U5p47Q5>y2wGDx@-&^Q` z^=)L$zU^I;=O+32Zu?mXP1o0#v_SJ=+tOMPN{@6_8&xfMTkP1r8?1x%;P{Y24PB}8 zn+azY7R=Bpn*R1NJe153_A^txz64e7f{8GNTB-oZn zv6q*_K4J1ifA;eWx82oShhgSfW}@i~vy@x|fPS=l<3#<%`(WIGbjoA{TT_uCqk~bp zzd-b0ys@e8P_NrB;J1x~R9Z+14C{lAc$WgotWx&0T+MU#!jo*8O3}O|{V6zISqDx> zLkGI-Dj!H0D^gR10`om1f>WPrZ2Yh;yd|F%Qx5@4(M>ij*T`a}*nn`eyK*LrRh$G= z627@y1Yy#oDxfV@{nN1!h#314w_p>dh^S7*9?b$e`!sV-1$F{~oL0+ufBw$eWtd>X)=XnTNT@D5xOdJWC4lTVB3!U;i zOb!nY=?SBxr0iHs$N9JZ;1BC(qX)K!F&j1Xe|hK#$I(xOB(88t3%h9wc;`v zH&n6DY=Y*U>Luj!(=uIo;US8+d>Q12U6FRk8LR}lA1i$CiEx!l$CQsWn^_W=^j(Ds z3L+1Wy4SOBD6qNELD>(*UX8h0O$N9QmY*`{b|NTDc+4!JB$Ps!v)nblrwxnukRqdD zvGbka=zAMlMwA03{3 z@X3oPFS=bwHHd3zj(_$=04vM;^C*{*BmH1JcIn7v_*JPQON*HPaup2!hkte@NhR~N z%f2#@O|14uLH;}%y!n@FicqwFPLI3XCvLHcCfdUpZ3=z(@>cocpReeqkJ_NbQ<6fz zdwF@T3eN^?2PLmh2(?7FQ)*~eEp~RF&2{Zp34w2WRjRmB(zTU;B|J+B8{P+Wq)B0v z?JC2|jDEhN+R9N>{dOK@28M&K<+`>@$wF>#AMKh|B?p3;eM|Vmq~^qjmHO+Bmy9&2vY)|g7Q!q*bWB$8a@6U z1gzZ~tcmHPq6|wbx}C&tcQvTx?2pkpSp8)>!{QiLL-&2_ps8uY;V3MJk7l9jzCOBz zGXUii2AjDCM+4x?KYBcR`EE+fI;MobfmW}2k8(1*23{w!m}< zFV`U_7w|@G3e4{{=H1dVa|b(C+|hENE#x#bYHFqtj>in;gXr64N!lIsk~HgeJ7^Z5 zb7a%8>218Tp%SXy2c_N424cETOFRr%SIcy|xLkDg27O9!)LW+J7`h=c3>XeVIme9SWOVj`eubWp zu`i)a4*^RqHjMBBgNO6G!zc@(?N^|?F0?0#N=Yd`gO5NDqfhPo0mtWDP%I!Mvab&$ zbb^2u#{2j0a<=)B1wbDP(mF7FZEeEXYW2RefK^Mr()+u>olYsl(*19OG8#!u zde_K{KGhMsIo98oVIp_~%tfl>mw;d7OjC5LFnV6L4TfQ=#aU?Rytw(bZ|9qF|6uRr zq}Lnv-J9v=ZsGa)o9VU}R!XN92_#{$#a+vYl8l*U1*`EPVCC3#I$IeR>=RsE2#CUK^C2PBXqhd3YB9e$-? z-*XJGHA5;i2c4$8+wFlAy_l!WgJGHct%eVW@>G}0%b88W-YVRt1i6(2GLdXMI?GN-yRZ=3 zG^L?E**r5uxlnT9(l3~@up%{WhYG!d9Ukeki#t?@ou6ep$aiS{Q^0}?JU3z0C8nRF z;aE62ECgy+l#eJ)QrHn59aDx2{V9$ql$#9tqvdMB(Hy9#w%Ug2gQ~69>-NJ(68;#h zmy67=bgv8^#c;}=BN1kdyJQ1QU!^QK6$4cEi^*h3Sa3N_`@I1zn3rGtQi7Vsqykv} zL?M;2gZ@BxLKLIlU%V4|mmu1iuR=@6WQoCU2Lr?zeJFTMa`dFlj=P{5-&F%kxb9jF zS`#O0&Wg8#!97Voy4H6Mbr`9bNF>_kUzN8*E$yZ>1OmDA%bM7Cc}!YKEfl-#Xj+0b7{9N z9gw2evEN)Scea)c|5f$3UJU;E-}y3aLB9+y0f2kKlWeNZGAc`{Xr!7NEm-NP7OGm> z9h9?kR?En^InNp(bRN3+I|IrowCR``qAE|=`;dw!B`+DOqLR#VW3=vlX-LUJ7rv+5 zntCUQf`Xc=@=ip86VIU=qHhB&S=*&^h|?&Hx){bCw%cvm`4rSP>!kzF9;m8NQn2>J zgCmzdkYmB_jQ$+=+J?RotJ-Er;&p|=0@Qx0Z&S%)8d@3!25rRe;hCQ$$&{Jr^7gohU4q zXnOueE)iRPsR=vxEtd-jKx=xENzTGxch)SZS$;UB^nwqS?)k<0+WnNfONrPC+m@5% zDWec5GfjoH7qITTI4#=%k>gFe4y@`$s+iKNFq%?eoz5ooDsWw90W6(WYb0RNv(a;| zRx1FWR|`?E?RTlfv;4qoGcj96VHARSJi4KLpFS5X6gxetc%aOusso0e(p~c?>8C$A z<{lm#`ItEZfY$34^vzA2JKbTPrQgw%aJAx@pa7!`R%nFV3QU7X2at1Sc_x7=aEf@p zr~_1U(rs5B@Geym=27|23N0n@_v^`os=^2T2Xf0btsMO&1wA>KP2HBg@}hcWH><*0 zjFfv=g&@OIR651;$KwKW3;7psr}XFHu>0VsM|I_!^BW$V_XnNMZ0WyBbJ!MGEvwT1 zuJ;eU?)l9+$@C_VsHpnr&B{fP^exAF_83eZdPSwkpFTXI*PYB)*OO@K+it5zX$7sz zls|P4W}TKp>DM}I%`mQ_M5(2BJD z(uPie3KwFQm*bg$q)rM;#BKX59H9)k=JZq|amyC4nh+#Q8S>KTyHLydR4!);hpa-1 zP1)g$@Txr}HBqD~(V9#p$vFtBrP09FJg_KFto?LV9zbvD{mshIioNa@{eHjO4$~rt z0!68P1EkqUyV_K1Aa5DGRK~=qmeiAc4AEQWPCQ##a*IGl6Y{<&9Dr)BsodU1TV0kq zZ4I$F7IQF(?}-n+7rKmsy^?m4Am-`mp??&HvO%ae6a8f>KA51T1|B4a1w;zBh$vuu zDSRu$9I)5zBW%$lH@?IO%FZ#KL-Q7L%qe%mX@&Ru14@x3{h>Qgr-kQvD;CV6Rm90u zNWrMr>r*(UFr-7-xwBj@p~)2@J>0O#*l;jHYROlF9y1sWsmxlgmO_@mL7Syiv2wc| zFbH~kD|owpcNrF19(ehdQi=ZXz%^x9LvI67!CasC-yqzr9{+_iAp_d0!a zRZLjah`w0Lt(Gi;x*E1rn93XDlb_{o_zgrX@W!OMw%j;2u!|(IqNU7;3Y%H`NN&K{ zL<37TSQH$ahxHL@vGOD#>jDGma#}qalrHeJfzgV}ve|6P=1&WOgF*?m-EBFo;c!G{xXZ<3*LcEPW7DNMNl~juxO0VCJZc0>*(-^QZjlo@-RBdD667$Sl%SP zCHm}-A3ml^kn#Nv3r{EX7&Kd15+3RhrcK45?|D`mlM<-EdmDO7^Z=2u{n4NN=f!sz zumnLXr&L+ZvNO17<^$>mTN>ybB6!o{<_&Nc>s}Xq!e7^Sw|c!shbW=Bhh-$f?P|&@ zpzE1Qv%l;<L@;x6fNGzIhQf9wmn5u5UUq#3UJZ;Am?gxd6*B6V^ai{iH;JIE& zgOCXTT}(myw0gtd@W`Ppas1eHATB&Sex!3uNuarGNSY#sF5IV3D*YSL?JW4>NMfZG z6_-c^e6$Kns#JbIVn9&oBWqO;D;FqSUQ!4lMIc}vCKRXAl4Fm1tzs0aF$e*Digv>%p^}gOVPyA7?n{DENM_y zqec5ip|*&MfXb5K_9yzF}qwn1<);E#>m`w0v3=(t5YxQD;cc zr(o~G^?J>tnnhE#IvWDfO=d z*4}NR3~1xWba@W?tsvgQTeDJaJ6HKUK#5_RQBcmv;xwV0-ZlyW>D6=3`Y%{Qlx$iM zj_`b6e6+X|>`TaCulSTFJQ?#~3XwLECO3yRwz6V~yyUXd;i7{EWFuyS3iXU>fQd+y zpnJuz*_=T=DNBwZZc@0X?O|J*QaVHyyb>sXq!+R)gC&WcH4IH~k4*_|Noj#`t6B%r zG^CS5P!6^!@H!UWfEOWtL@5M)BEvQt=;ET$f|X$^rlR6PBG1MLR*56sYo1EWi9TJu z4r&zyfj3J~s};~FQUI}0q(;SpmLo*?A@$>VZd3@QQ~Xxb3JYFitT@3hA)Uv^CzQ>J zZfZ~jWv0yH5JFchTkjYwm{iIo)tA6otLjxse&`4t93BRKz~e$p3}H)wK}foNn4w#+ zQ^n8I03Qb_Nh(Q$h*0PhE_n*!Q!NNb9~@fJEiE5F5%%oGPvX%3&H`2`c~e;dib}FT z@+APvjj64Q6qblLLIzj!( zOw$Z1H0b@)3d-erXL%Hd24`O>yj#Tnv8ZKyRNy0ZhKAx#xQt2xz%D zIWq^P2(guNi#>a3e??I`?z_6EGn=-;AICBbItgmJDEM?7>>eNY1-L-pTyCOV9B~w7 zz6ysuM;OtAeuqA3$2R4`{o}67?UdY)?_d-BOqtRH@1kKKG zr%9rGcVEVOwHDaAVEjC!%J@@;=rT?ckPh9?FbK=(ox0O*m*X0xjH1@@YcG+j z^O|n?Ps4)gEx8wmfx%IJ=r|=mrKAmWtyD1nG9|>k7xhW~h~lctBS8aXRSO zO=Rh-_jCHev&Unh;59+~d+ijMvM8xES@u4`&MZ=etu$>jh$dGdr>M|jH*;^g^ank+ z-*rag;V16UVi;nUL_h!YKTV3P-|a(nzEGoZBl^yAU0hvoXFZU*+hu93!1w>;XaA&3t94x4*?e|(a=KWdHMUu=In%+F ziP@3j(@%eZ>#b|HX^UQ9r$Yq*Ye1C0AT%)PUKrAIjG}J4!|y>6sKjc$diLb$)y*pyzCL2H#-=i-DuNP)JBpq$#aG3bcEmfub=l+c#w@ibszg%Og7NwmeA~ zMa|KkJQe+j0v2-YEN>z)Ye4Wkw4Qe<5bV=?T8>>}Ak;ds*OCg$stTwl&(!@&54l~T zL14r(jY_&Re|9!FzgM{NMk_k3Rh^WU@ucHfL|n)PfI~8YQvShO^Gi&6V$Mxa!Lj;S#BO z82RmX$FW_{-$+?kh}{Qg5CG5tu5AetSmmTu+E}*j%JF~>uH#5=9ujnPqHuI`YdDW^Ug8>DBE9K=%}+O?cujp)VR>=>4r`h26>siwtc$< z%i^o^g^^k+gGM%IIZR(bc@G+fE|JL99TOU4t;C#3Y)=(l5 zklA7=X&l!zDJjdBFJ7&MRUap@zETbzM2>(y$hB4xVu5PjAXG$rA!qd0#3>POq{y1fqjFj?N@r*w*`F3z7u^fb)H6RiHd zAN_G%6~D=V^~ZnocUY3Nk>9p5wdT$y+xXqz{(U{@f=*|@L8gDuwW~jZ&vqv>q7y*a z@dWW+6?WP(f!cE50i2$l143JMktUI8ultj_9op0(fPfVoF!~H zrlRU?HZ^}sISooEmBco$By+JuGm|21WwD7ip6!YBU2{P!+|SJ)FDVRA>IuMzM%tY! z)gdxc`JfYqcT#U=iBonLJ{{r!joO;i$P&Y}dw)aI_{?=;g1!eBO=KY#X|n;$TfYJ$y-FhOQBuaoZr zWi1^Eo($O7*Vk9N@=be3#ge30OIKSAz-`w8loSZfaTI*tDMF^DR@wnd`+}_>dJ>Zif+6Gq8 z)?|*4Pmo{^=yBiw_PcMNJbCiVU;aXw;k%3Ul}(EGe|dFvd~)*k&3Dq9bJWn#_>KP4 z)UZ^@xn*nW_?vvfMpc?t2zyIH)NFxS{2h$3l$oZ*E*kS%wh+&DG*RKUnNl@)dhwLt ztFE@wMK-%Sy7;2Lw=6fb`K@FbwZK|#)1z_6_{3{k>ux$(w#y(I-39z%)D0rm>@DA8 zfGCW@*rUtqA~)L;UGgbxLg#*>s3~e3jCxBMCsZ&6nAQd?-?deypxR@(YGKNe_Lvy$ zP!?Y5DI2?d*T}Z?Ll8Utaz%|Kopm{o$K3D-hm%uHD#H zj)e@SVY>j&XTr)!#qJCs2*EB9l2=pcmx_;y6jvENGT9sy0HE|DIY>1uD}jibHb`CY z>lX8wFH>WNq(3(EJDLu#*e{d7QVrp!NMUQ4Z_dPFaFifKNvfi3+soMrtdnVez=S?YtMfKk2}xe)5#DE>~^u0 zb|Dv;ivP7v(Sa1{$usJQF3sPJc0*Dwt>3@6c!CXyFJjYnx?K(Fz8k2FpNg_d7ZU4% zf>StnkgNeqZnhiNaPU<=ID0hB zzLyedn^Cf|R4-I&g{(vlhXcI=8(h0=N9?IesY_PMF_MAb&NkkZyDkTf3%6^M_E!tQ z;njK>N6Z$ZB+`%U+O9&aME=3cN~u_>Mj)==ot*!M1J0Wc z8fwDRy)W0vkmqu_#ETCPkJO2qq87W>o(}ZrGtfO_+V1xz!+6Ci?{@6?eu{0Eb#_A9 z)k$53=rnL`t#iqt$9|AwS6T&=a!#W*MEiHgPK&?pWKbUbju%!tj@1qW?c|N>l2N0v z6t3!qH98rx&5YEh+Sw`J%(u_ah8&)5e!nTQ$OPC%tzv{!(e@3*(Cq!s|0N=Sx_UPX z!*ad7`Zxc?B1Fn+dJg-yw^Lj-Cb_v$f^WqzB&W`W9taR>yAqfxX=7Kkx39I~Rcg&k zP?E(QBo8P2(ck_)pL(ivX)om=V0v;gC}e~M|6|pzHfHOjQclX-(w3LvbcENt z>6El#(jdgqKHUoMpIDL-&z2>9>PjKldbRL6{oioFdW7*Bmh*0-s-VRFU`?yXz~Nh~ zVSggXae|~%&?i#bx-vT8wok}aaT0j~*knw$4HM{8d-KMgnJ7@Fsv`}1!5gufHy??D zR;4D<$^#HLuu?Qe9BsPCd0bZa<2QO#*#dc*jyQmlXFsS#saeFXN{4ehE~|a3LFr4} zr^I=2FC(K(OHsVFWG--Tnisc-3&TQ&P5!r7E>_g^u{t5XW8sYJ`hF#vHd4kR%oBzJ z+gi06R8c*yQZZcN6A5!&I0x7UBF}szzhiwA3+53$B_=HZq%Xm>WBn)}rxBxPMf#D@+|wVw=5a$P(P6v zuA}s5*pcD$htyx6V$Jh)e16z#d(o}5nZj>t=Mh8OA*J&R5zjR4g_!xSL;&P&i%6Zy zTWTQuzWJcgP*g{yveXU8lsQVC8xQ<)Bx^R+)n+=IY6G2Lv>GE)5*3x?A@2caK*^$E zfEdTXp=vgAaX`_SQ7qV3i%0mw_PM>i0S;oYFfF9#aTK}iuGp>AGCm_Y?u!NTS?%B# zsf_o^r%^o_pZD2S3wuqK6e20mQ>s172-`+LKncbqzQ~@%`%%4$L({@uEroZcbM*&L zJ~w`|MfYx}yI(=C@72?#5$ky);RNHo?o(H~GK?-VtX}*2yXhSwRY>i8j{6PiIgY#@xpcJGI)ZM#uoYY(@(W&GKb$-V&m4)oNT7|z$puQ@jI`Jh)=l&44|7(>swT26)8PNs%+)6f$gNeMTF%zK7XLV5A@g)OlL zZ%>^m65#+TCc-Q6hal)&Q9d+~(tG15feY%(c2+=L95Z-(8~Phqg|GS4u z!Diyc#Rak=(Sq`_Je9Y>kd3FQk{g5J06#wH4XQ3d`swkB?fPYw{3ZjI-ozjJM@hO$ zE#rvaPX1WCQJF|nw`ZC}sD-g-w^{GGtG8#kFDlWT|F9BkPhR*;f&V;&F zW5lhlw|nx6O46)FCs%_B#kq_Ghr z!q$sTmY1t_^7~($+)S5IlF27B@Rg45sNN}#oF^y4eHgvZC}vBfu6EDM+!u*ddFFa= zc;4J`==ES5bp5_x98!ugO{07p18R8(<1rO<#ej?4BC3gasw&e=O(Zgn+_=@rup!4S zJ2LikHyjML!51YeXJSc*ih>q|u@W^r0Vzn|&Q8w|-SE4pye_3-F`Mw|g)RoPO6+Vu z3tmamwd(*|jYpG)7h16_B|Q@g4T_em<$IykW18PRJXY?97z~z*`z|h?01;zL;%8Uu zB_ouui#dGD>=IyZ(+R@ad`69jc#DT(HIhcP30K!BUkd4Tz>yN%;8}lh6zKEJj5++WC z08EY_=b0xBw6NpXm0I|6!lRUeG!?;EV@eb%;VJNBmgI#rD-vSuj@_*&XDd;y<`}KT z_7;LyF0<>kBkepoQ|$JJOpU3Vk*UMvjkQkN7+g2;78`nr62&I^5IAsP~`6j=mro4CcO^hUemgn`K>U z3-cfR-m`r%vtGxm8osEj%4m3hlTPlN@p_Z|{6qQehgq*bIzBuU^9Yuf+c`5|bE3WD=>~*`>B1h8+I$jV&+x7YBc?1gRh|xYm3Vs4cX+iX9FiOB@Fk8U}apkRUxK? zi%8{0+j7QFULAzKzuKgK{uOO?qcjIzu6`i)0~0BeS)Hbevex;&eFj#VtdHOQtuJ#9HrU(s=G(;wsq+A1F=4|S za~z5atXBweYWG7T8O@sW#+VB?|M!3I53jF2R3g&Wa&&d15nr5)54o6y$*qM3tZDHg zFJ%nc7W#FmpbYt%Cq&RTcJJh_$ezQ>cBS;C2bBaersvkKfPJ4uYSc3YN{~`yMG>hP zkx0m^xMh3mmYd9T?ZZ*m-sQYB$O)W&$NQmTNVTh2WuLT4+7e-sA!?hI5S3f;YL(SS zG+qHfB)Lqvo0}vjbtH5<-SYH|Gt86udnXSfbXL%`Ih6+2x(UoN399VY(8)1BdYt_3tsT*`K#q}MR7h= z=@;?OFTeb86h$1w62yQNFdk2^p3cuN3>sD+;5v)N{HH(p?YrCCyv)m;u!;%+wxptM zw0ZsdM|h1YJ`z95O?dV4m4XRvM3%CO$_Aa(q6JuSgwCe2&Bagu{%=ZE=01ARhjy30 zX!A&>9m`x!)ctb!_xGOVW4C|RnYE9X9}lT5%?hFvyt;aW+Se@C8^tYov-kk$)L}R%~x?s(U{p{YBYx%{~!4}X5|!i zKoV0l8ISQ|nf_8ah8h^lacwg-=kw{us}Hp#Ec&}@qfvra7xscBk5amvDzJwGnMEZ% z)wOzs5QhKX?+-afCtBkIF6>m8<(ti_*Xdy^?gX~ zI?@D9@%Jn-X zon)hywZN?_T@kUxW+I&FxVwDM2E2;nkGGM~FxoYwBdE1mn;$;Bmk3Ucg45&E&_`X5+~u+H4znMS+UA|GjRHa+nQx zWYq~fAG<@JvSL!5D9{ko)=z-TX0z$ji>FstS0t!2*JHI)jl#4 zx}ENHK0O#8ynXkEl2|*dQ2c6^6hw?r3)6U_3I9r-%1+d@7Ox#w zGa^6e?#6lV$JBwZbz!$|wf_N;NURm`Y22#HO%>g%tERBK7bP8QZyGo^^LB{84Ihex ze~{a^(|&8FK;@Gt*;l#3Z6)h|M)cw55f^f6FTYGEMyslw9!kIWcS@nW%R37wZLZ&yZ~=4mSP;iG6jU0jh>yJWo)rj;$_Ny5vw!C@za+v`8=$q)XJhPG6)7i zFVNPYM{x~HhSAiJy$oH3;5vXy69lw{RIl2==ZH}`t;6oxnV zzjdEOM&bwYsERN4pZ5li+H5b1Y_mm9=*&tf7*Xs2>U4o|L@JB;3UE(G0yzRw z*%hVo#Jx)Owsp3Kq!`wKxk+?b*XHY4w8HAIrIuxuxHE-jc9paj@t6?xR_mo*+gaUg z_)@fY6hUjFiVbx@iHbW%#(jhpA;ur<2FfgSrb;>uWHH59!PF@hrL!rWCFu1#4t^D% z<7OM@Iq-GAz2~##Do(a;&^_qmiS5g)nF8(~+}n~yeAylaMd|W1%h^VWOPd_iZIId? zjjA?O=clPdWzEqEygwWcsqiHZ^7wSLv#5<*F`(0@Pu0!s7TXn&L<3f5Cx)eGGa`?g z1S8l5ehB<>es=!$?RU&X1&=uP{nRRu3%*{;bTsbpdcFSa)n|wr929j}tc}IMC6q9v zC`^B&#*|(UM=f0i-@bpt+P^rbHf+yS?uk~y1q1p^EY1L60pJDw9)cI^cUVHRZMK+Rrpclz?JUYI8Fa`QL+zW( zx32LH2k*&~FK$nM_3t0BG@+5?z+OzR@hCd|{_Xo;vwoM(meXb62XDVFe*KsK9B=%| ztDk;+^D`&kGep#$;C^=Y*Q2{f-_^sG=ibfrlP6D%dXJVVQ~X+Myw9QP_Wx?@F`3~$ zxx*qtz#4SDwtdy+fEst=r1)zr>32%VwYs!3;lU2sRY_KxR0Z1UAj3Gm?uN~IE?~bB*LZ`B=ZuBVjG_ptO+$q)u~gQToI}g7G}6fszpWTs5=J)oY)SGERU55d zng3u8LdVc5pDPNGpI)-LSy+ajmrqeqBw{E9TGYgrGR=R`P1?Xz1D*X;C z4-)K}`erBaQek7OP-^JWmBV`I@BPVe6sHT?dww$MJwG3R`{DLzFv$ubMzGCGJv(*f z&?;D~rpN>Jh)jGW5iV`^jf;=`_xB^l<X+fo9 zwUQT)9Gs@+>B$+c^XA=m3S&Fe0^O*h7Cql3@|t`!bV$SRy1l#UGdg6ddW?Uopi+-? z+#JLa+;gRv(#MpCO^HQ?D+6)kCKKE_?sRsSi1!4(EAfTR87vjPb6GRE*4^E$&`L5< ztTQ{Eo+ld0c-y!j@Yl`VjaIZ(4zI^(m59(ghvXO2kN^08`fqJOy1+>z5?|77?S>9A zV52m{U86B z;u)J;N<&t~W_{c3jf*lGpB~L`Zo_^s8b6=je7#*qRgqtQ_gA^_>6{j0D;>1y#}9_K zWqsN}RKAbCSe;|{zZ-Ny+jVvd4Grd$HQQy<3)#2t(K5;=`~{-d5TA*GoqE}()Oh)vSibP=!lZYG_DaSF_Dukg-i*O#_a7fCg}`G(zX-W8|FQ_Hg*<$CCtfZGWrMV@MBNzzDSC|0e*5o=;gWaR%biQzf zbiWm%|A*x(U!(+(3S$W?%N7}5XT4dmcuy8aS;lHZAF-;nUMr~*85XzqaD;OR`{(fB zNTiv$=j-IosAoGm@*W}Cs6*dbZD<>{O~~3%gH>{fqx|K?@%3!`?lyXJc`M`7R(t$t zGi0am!$=Xulsvt0(GdX-Qn@#wZZuOncmcM|&FzgS$xLx1Q;3RnEo9;goce0ET1g@) z1gvneTq4g>El`z|LG(X3IK(Rxi7eWu0&XQcOdghy-B>;oo%IcVybx+@5OnZ{U%q&S zM{e6?SEeIX^cfLWb^ZeOTdaf0f$~v(rkS>wLazaw5vm$rtHA&G@jYLV>Qn&d2i2RN zO-$S<&k`$N+v(!;!lNoZ4q_YYn>0@g(>BwsP8w9f(9O2#c6+zHyB1>&^MQqYezMa zckGPVrHfhiLmFM0TX6zYTsro(JC#4Jtz7)|uw;NHRtf`mzDf$=B8$9VMS*Qo=9O8~L6*1D>6x8vgggRl1JQfYlfM?nEm3Vw zI+jzA1Ep+rYd2(X3a6pa89<>^QENqt{*8hXX*k>og{qZfS8BYV8!!T8p6JhtyoVS* zn}*Kc0ZOP8gp3(7I%69Ss3G)et#I$JG)Y@*wz)95DqUTI5bb~?>$Y+oRo#C_cQqQV zXoDv8NnVZyz4bQI!MfvvaYEK`8>~?xf0;(CQCM~%R<`#E3mk2wV93YenTHlIGuRPkHScXH-k}0V5U^B-?61*# zdPqb6!IGACbK9D|ruyo{y+d1g=M5r5X1o*+%j2OVttaE`AW;49EM+R*@w%gaPe%6U zBJ0r*heFRzb{#r(B2mgH?dDV{_}^P@x_&T6*wXQ9oy%)@eR1yfZLAaI;rXHQ;Vy|{Dvp*i7Rb@A_k^v_YA;Ng(={R3;dn5euQ)zhSD!sSU&Yysc)5Oiy+kNKJsi)LD>~hq zMw~VN-kgo!##;5qK1=g@((i4fMEfPa>tZc*0$Upb!W&?ZJW7j{lL=wJ@9XE%JZ>^R z&_0rgdA5vyOBnFJHt)3bQSZ26xH)%sx7bl?S^=nq$Q1}ZT^aD*PFGDih4Gtdhf!-% zjOmtnbbLG$op|*dmQ-=w=%(9tm$V7~GsX1*P!}_`-f?&MR})o^vZs-n^7Z?JM7n_p zOv;H@mr3E_aRN!gv8%#ul_42vp5dcDd;S8EhH8rx^9t}m4-Zdpn_Zi=EyU)u9oz2N6*kS$`uUH( zc>Bv7Dd6d=+mF9Iz@cONHqYan=eG?sWjet4%qo0t3;M59yA05w2>MCtMk%dik10PHd@u|`*Gry;{C2RxR3fRc2wZVbU z{N%~gcFWoKd_wb|{ImZRe~mJvb*5xnM$59=)$dIaV6ap!rfFPS=9c5Z<|d|f^QiB? zy}Ex7Nt#{WvO4zUl-{e@$J0e5xuk^L^TI*?|)E_CS4v&v5T3lCXE1t-2QO{d!a`f287EQ`n@sUC*W|ypd708u1wL^~yPkUJS zFSU`)M)E;(y|f15CNH{SWX8?Im~K6SKBFVEANF4a!hIC65{|{k!j%umzQ@1hXS1bXtL*j z!}cpKhE$Fx#FU<02tY{3@Novc{(38_UgF?j$kLUe z_RSHM0#PfKdbu`;;!NTN71PO&;Xj(bX~t^Ha5!1-%Q?D#+brp$`AY>U<9p1dS ztfueZzo)^d#4nyboboEeDl;=h0IkN%#P>(r)AZ>z#W{O!vxf5Q6}$C}yg}H^iFknW9Lx5nv=nSIt;ng(E#zj2W?n!~$4#8imml%6L|XlLQ^?3%mLbbR zq@bpBsRLH8wdSSSP$lO(VQrN3yTPy@G)t;}U=EDq3HxW*5AWt1fzS^!MBfv(R~@O@ zSCo)qliRgME)^85&AJo%=f}fsoB{*vx>+pA0|4%eNK45NpE_;psR$OmUKnkX-Z+qC zt;))L9C)GYF4j@lLoQ?tx}A@g)80XV#k5$?Ejt$Vm`VwOSk070&JjvN%@LY8&4#bQ zzpy`@B>v8{4tq>mUFBxGk@!{ELgv(NpiOQOr!mwbMN*OuHm69N?`Dbfg1jwhnTxp? z=|x)_G+5ovh#K=e!&xfUUX}KR4Uq%zzE8N-6mM<6(|0m_y2y3RG%u_j*$TfG;EOC4 z)47~3Wh+|h`lZK%xj%fhKX{1rmL<`o^%KKFdv-Sd<|L^<+EwYc79|YL0yJC=~y(Zi}pEH2XKb9CWX&y}?NM*!ztOtOWkTk;}`veIFSuE*z zG)b!x5dn9&WK%Dc7#eC91s@7XjWd9C71HRmZ`tQ4oXL2Sa>~d+E?^)HPPW-% z8zX)4yKWg5c4ag?EH!A{CtEdhf708=w-$><8*a3rt4cjGY?z2DYqNSD_3V0*OKThJ z0Rcj733i0_M^p)$mLB^iUaUMjyOHHRowEjx0TTtj-L}9@^M^SIyYGl$y)x$OR>s8l z+@s+Dk@08W&T*LE%$A`q)2t#@n3XhJr`B~{^*Vq-o&+N-;#}hzY#u9z zAYr-36g_n8kOa}t^J>ZJ<9fh)9#-VQ3UT3nHw-$i$;m$6gl@N|)etMNlvxvVJTtb1 z8Z0-kQOjyw7lG;Ubd*bhWU$fd^Ze7(vqTKXWw%r$Nl>W`bOmi0Z%pan9;n8s}wSihxbSF7zGsI$Uj1{gE^;J8a#U1gyKI((8EZII+B% zCF|{)LRUsZa#rM`wq065GX!w}ed5^eibG!{Jvh9q+)+0bxoA0DiCU$6>dE8)3*HuX zF>n)r1``Y_1p2pWjYz1$brGH`hEZTo;fHziu{v|BGMz zrTmucv)4aT-{w?CsY&eeLwRGROsb^E$EV#+M-c|TNP{mC8XEM6sh0#nfN)6x^s}?C zzy7L`$B_~z65Ok1K=Rr0ITo;WriDCc|;vd$F-gJAKod`6v(KhjN*2@|M*_1CF9W;pZwhL#eYqnka0QiW>EI{#4!8-Ak#nAeF`8&kVn?edH;IG2a^JV{1RwogGc& zz;wR)Ft=*J`1JR5j>(s`&pl?Egic?W+an-H@Gah;I70I0-4H1et5O(wKRj^vdyRYsIL5h@+3E^N_o{s9TK5|INZ)~`X z@gP7JEb4%b;4mIsA}jJ{wxK%E!^)}EEEuyD6hitR2A<4#nyq=)-sr1Y2n_-YqjS(% ziutqahn!N$Q=4=uv$P0E=N#oTM6x?&sg5ZgSL|Ro0<@7KJc>&9`~4q(`CCd{(6J3R z{>tLX#l>vF3OB3cqM_umPemiy7tdeec1@?Z`g-80*RMbO`7eHkN2Z21!h`^@O19z( zp?AKlDOQ7U_szFoD_Axfvk6cCia#G8onU+3-rXt{-WG~)+lyzte7*8TK)GPeqQ>vj zYBJD`ijk_&JKo9d-3`Jqo<1HKz`H7=Nlm1dW;C*Inp_+oA0vqC;2k3G^!+wABF<}( z%WP&*0ptZ(rZuTx$hhYObQOsgMH!atz{%UowxxrEP1bK&)LFzf5ngW?Z=kmm_*5)~Hh%Rrka|4(Jt~A}QH(Oe$|WbbAgmss>>p2eJzlLFTUk7FEM0y)K97#CweAe9p94) z16N~TuAT%;3e0w7)DkOnnPh4x<{BS&lOK&>TLPTw*%B-FWgF^Gk=_2+IJgrPfp?$I zIL+YXz35foyXKY!>}|YmbI*q?kWvWZJPqY7nXcoAOsFL+C$gU%*Qu*U+gLiSb(&<| z(ctcGO3H66VuJE4T1G;x?u1lUV@y$f8>5+1lp#2?5%LnB=-QN_LToJ>v4|xnoyxbH zfPJcfQf-Gvhlj`Pps@#EsZF_5xLg$}6;7k8Tb(($AY_EM4&7pM;X|7F=IX^HA5Pqh z!|v~#*Ll@3>)^Y~mEKI{yWK6;hvN<%Bz-3lG^+56v4%4-oTyRdb!3YbmMU+1fEzXL z4~`Fp?`~EXhy9FhNvrlT>P?>v!Xx;!I1E>PnAuO$0gk>y_D6QAGH#dr^aNW0W->CH|qPgyT(MP1*Rhp#z zZg;VmYxi8M7CK{$98gtW5fBe1hi~7#>Gk_NBILbNfST*5qOVBB8+h|~cdlY&ovOhu z6D@L6%VF3}XQyXKdKz7lnzD=dpCUn(07MFTdUCd5*kUg-Dx#+OC_|*uVW`zmHm6(- zz1)mpVFC<=cDkXEh(#JuU1W8h;m#QGs=zWyFIiu6d=B^Lv`?$uz_L9S%Pr693|&*a zVzF+Dq_)Kmqyz**B2g&4(8iDCdE|7gG@>GRXPn!CQF+)PwR^gX=LKHuL~-MZxRHHG zMusG`fSS9+o}U~^?|x2)Woq6_7g>)K9Zd7y+~!j`2MvoPQqlwYk!#O=fg>v`&uK9o zDVNTkoUSW4OR}M)?Q3#h$#C3q%Yi|ASH=*!rm;;VR!T{QF7P{I`hzKus;a+Fl;VdP zsn~42kP4ZB)8+n{rjHR8r-(eBqe@C3I3ive_&#nf{>(sN8&aNQmyW*h;#-m@NhZc~ z@-S^ZIg}tnePmkW*=imkC-tdD6fjBRb~03t5WIneb0JJ}DHrE@ z<7q6@>pc(qw>w`=iaHFSK(_X6qh=TffbNhUfi{BX-S28zo{dlgy5P4VG+b~x<( z?iZ&@rn_CnzGI&sPmpUry6vh{!4e%3E(BUBnX8WDPUs53u26D=t}RP4K4aG@vgI|a zZTfG2eSLbsTXcE1mKJM0=yhUw$JUOYktAxiSX^Fx1U~xuo3GS#KHpJ!gx?>~_Nk$p zGu0BaQo5^k!aqb<*Rjw>gIg?c4h{|l{E}!s><{tv%j?S^4E1^K59CVXY3+=o?aQkV zQM_F)<}4OVd!!k9+o=i4bUODY0Fg`}=B>wS9%Y+o)7JP!cA1XzcXzkgp}0ar7-rG7 z0Jw9cv5WBP2~Raq?s1Z6dW#@M@}1)hheJZn!BA^o@TZ8B2FU4b|0kdhjZg7NKD! zRnWKXoWBS+Ib9Xu$W2#3$_8@Dotf>he`QFL zMS*Uo$M9K{+1{`y)mryv5BvSbS}uxX^}jG|V5WMT8K(I?GJA)kP$*93qjBr~xPf2# z;d=GrbZD!JfYHuxn?KCZFc4^JE#Fd4#Wwfo?W7UI;K}w5lT8&vfeGdg>aEw`s>w0svs%3GQxi6*_ zHr}VGS94ZFC@KAmvnTkGDB1!3#XT4MV zTdcSEtqYNK0|>gjx-iB3SQqT(#_*-_36EGTL*ADSR7-^!21QNm`=^iOvHpS4)}1V1=`m_9cLi!f;hO z0Yo}POccK8PMMmeWL3pdWn?6bX_`^;*Z1Yo=*7KGw=0CZ%oD|w^Ye4OTk3gLjq-$6 z!8q$)R;$$v@BHfODwo=Vj)IqAUM7a^GMn)@b!yTkT}r=*T+yQRx?D?apa}~O&?y{n z+RzE8xnNXA9+#FwN)~G)$PJSccnuFNS>qIE8Py%L%<9F5O#C$IR)9~pyvqEp zL!wqxI)nbe5v5~}gJ!vsNW}vxVOL^TERdP0WN+#)f2g|W==xJWx7bZQ_MmSKyT5l1 zG1-~Y11(s4Sr}IEZb0vQO6Xbw=Ol2^STT=!epeh*3=@g9{p)d@;%b? zJ3H*ZyI$&!sD&ZfS}QxYl~EV%L7%FT36~b#CN73Oce-2;dco5}@2@_lK&d=Zd z)t`u9ljR3)CYL3YFsu|Qu>jjf!Ns<67V@d|M^;p23ay>2!b%sb3~IQdi?FM;S3Bt% zF;$}$u&ZWYx?6OjQx)|rVa7|5%MojJQw=io@u}(-7V*{f$Aifc_BQe+YDE}zmS*eC zQlFuefiexB7St40* zqhj{VW!KCxFKCads7EOgI;G6wfHd+b&@N{c9t{GnmWI_c0~$#@FN0m=SDmY$!Uccd|@6`RHD+RrTTO`ckuZjaj4N_-;B?$4zQTR!G$CqPj;!$lBb!ShJ3bPGCQdTJ__< zg`QLG4%yPI5bxq7=VEPU(+av#)cXSQrno4`?%Mlk3?-H|>~)_UkFcNLUf!y2Ajw~Y z@cM4u0z3u#QAXyG?>RN#NM5xcf7rGE>%TYp+1FQDvHHKhaVol3rb4VQOmictiYao> zWkd~{Y83%7ci5P4>VwfSR)XvIGvv-SL-Wb$xzsbcD_8)*>Lho;SH5zZ>HR0{my&!k zU(Cp#q9uVR#bd4mg7!xF+E7Y3B4;k@HHLwr{O zMTJ^sgRrD=Ayj%_jJ${|Z6FPEZ*7QDkT?SYKJ*U`05}}!=G*|rLeR5FB8u42x=8zz;>Wr zbKsGKA~MRF4i5Sw)u_T(lzfjr9~~bf-qAppmGvr?j8&MihDOGc?cD?q_2%Xpr&$|z zsns=6!0G9HE_; z*);Eb9x^wq4aAW$lOc1gS(i14A}RBzQrPKuR%O=7hE^aohh&-JA$S#3UbIXO$Rm-= zy^ig$_hX7nEI}%ZUp?L>geoUsd@NHP@!;xp_E3_mKuKud+($RJH!@3^s_LtHH@e*i z_FUK%<|k>_qlsu0In;+I%GQ=ZwnQNb7NN^#x{;QqV|`i$r@L=16i+1^$w-}L?DXo| z#i?;>XJKJT6s?C{e;uVxW$vo)c{lU}&)Fu0VkKJ!DN0k=DD3GPyUE+el3osKtC8RQ zR6+TE`;|F6PK}79r8>x!vB~n=MSL}vp=9jLy28pU9=DXQ-zR4${NJBdkBX z5}Q+~smR(I@isBGF!v;Oii$kEYvkZ-rl*dWqCudLYW_O&0vN^n|2afGH z-JmlbPpDNcAxonXvepiJ9MgB?BvpUZV2C)J?avGBea9Q zoyKewaukJom=k9O(>)VU#tkeMw(^>3u85`c>(be(kv3*r_M)oTbk80HtbN%}&CONm z8!H}nR*i7>Q#snR}N91jH>%b}!lea1Gc}AkW=_9MQK(g@@$r|!x8nP`9ZyMuS5J* zev?v(pPTN@0kp zn6gphg}$MKAPf`E$)t#px$K;P{9a*cvzcs&wNI@8g+O}0TeK8_H zo~b2pWquYi9oYyg34;V@j~2_dj7?Dh)?t0*3JBJsp=ya(7@KT2jJ=H=}uF#zPNbu{KX5! zakxk+Qwn$kqNdM0bi3IIW6obJ=U75v*u~2N+H@BQNvBR*mcboRK_PrtgDg^azi(P?3hD^n?K(k{{2z96^*&rwZylL zn&v4}T+^dF`r==#!yg6i*kPg7RFO9O762E9X2%UpIr*m?PV~)5c9yyMnyzGVd>PVM&>z}?p-g7HxY9ILV%iGl>#uQzo z)`=*8YYChc3Qc+ic-5MS>3iG6Sp5(5#qsBkl;l+l%lbaCEwhz~xSvR*-61l0&$YWD zg$9?%W6Sbr)W;qJ(ui)q&Yc5d4ZqfzL0Y}Wy7>UH|-)iR0W z$-$Afu1Qa2`6yAD_EZ+D4jZujC-hO7O0)XCJ{_3j&3HJmh01^fdb?fwlB5jm5#r!# zIbYy7ZPb_C#^bA`WKu4DTW%*j47n_xyNUvdYsRkOWzYu{9}Qayhy$Da$6x+rv0O@( zbAayx)mHWWSf{8gusN%<&;iL6RL!^B=)dpfSQFSD8#NYs?RSKbrEU})9t5(voNn{7 z9C$pQ^cQS)njE;3J7`wFI2&SZ+$^@zf-D>_{Oq&SZl~uuNW{8Wz+IX%2SgvjIA>3- z%%z^|_j)~jKS@IOKyi>Y@CWUF<4}>waE~r_Qrbs&60P@*!fQMnV5{SUqr1Di`C>uQ zo~AowJ-N8xu(8bdoSd9$V;Aq?{NloB+!a&l-ll-A*H@RDXd~o%W4n#6t}aRAN@)|> z>-B+&y4~(-Nd$o1q}>2*Kax(xnmkeS^JmW&^Tlw;9P_)k-;!z`_fx1P>MEUr=G z;b3wI1cz_w`~z;!B~^Mnv(BB6^OE!1*enoC7q5tbF=%a9^ z_)`Y`Q~;pPOLKqjx&=FG4os%Iz2{{rT{qME!Gijm%LU2P!sKi<1DXj|VZ_w+-lwjO zhh4(@XcYePyCytV^zZ3x<7EFXApyj~!&W3eyR456`-35k#SkL#fG5K~(pb*2$vpE; zwVM3_>~P6yZ3zlwy^=VZW_liAwO!v{9Uq@!^&o6<{$Acf5OiFz?otO}q>wV3y;a5# z_VMlAwI*>0Lx%^)B0hsBf_%gXJ3UqP(!#`GFgiIoL%xp$6R}K60hD~QDPAg5gc_mw zP)tMJq@|XxJVtB--)|DAZhr)%b|+NHT!!Pco%iu(&B24F9%_vGtUCYv>s#D0eD~t8 zk34Rh=Jh9!&Dw<`#I;DI=XDhY z(z8~AVc6-Y5)R;@1|S5Tu-j1xqb(-!u&KA(I|TIAYJG8besgm}Vx1^Su*mKCmMBsq z1`P%Sy#u&aFJ8RtgyD~W{9Cxx$?*vg5CRC2l~=Dm6B<{gaYy#D#fV9}w#1TJ0*rlkP9Ah6Y-*e~k!^t>=$0>RsZrij0xKt9l z*X?5g>`14U=sIMGeYdyQ%%!%Zq#hm|Dfu3$CD~izkQjzN9Q2OkolQFP*^PX5oI+lG zgVp8GYOEXHUN8NnD|wkw%*&qP=IgZh6E>*_q_lX^zgm)FiFg_nu5WGsT~uzX@!#*S zK1AV9ygD~`K1^IQ(N%8wh8BI*H;a%TwBpOaGXJ zLziF{F$njb$EGw~0fun55uUK%sHf>0tc<$eWO9I?Wy0M0zf;aFOPoQuVjfSF>j8!@XzoRw17+h~KYyS9t4my1gv3+r_H zjPU71X25BWnlz0sj)&9b=D|T&i}yrj5na?qYx4H!A>tHorZPj9^E64eo5X7PC0NYT zIOZkRafX+*BRG#dnG`wh#@DG~5T#r5^Dhw&IO)x7H{EWwS6A1!w|Az!W5573?aVZH z+9af99v$^AKwgYf`lDuXrtTgh!vP0KaT~FNdcEO?%Wn=3p6G}^t3cOA*bi3ggoSg5JhjdLU3E$t+tsdB z-x<|;-RXKZ?!mvYP7ZtXIx$Mgc{YZ3$fIugXHoy}2DbQ)l*`h5-B_49!Oku6(RfY! z-`1r<)dE_JZ{?C`^1LsyytASz8}|;wxYdD!*5*%2`#2eT9pu;v*-3ljJx%$^R{g04 z3Tb6zzDlS^T0h9jdR>NjHqOd>%U@jP$?1@3W>Nn7?G%u`-@{|BlQh3utZ+vU$9+0| zcKqcgeU#}%Y0gwsF20JghvLipD$v0_pTRU|t4O~%>G|_Tv@(sG+4j}>NE~JAJ;EBZ z>DnXfy(0(R-Sloa9ICE}h~AoOiCpUIhbXS8-*_~>o!(NYx7(905)&NNNVvTEs1Jo_ zzDYS_RVyoHK0_VlPEXFTF0ZdI@p>dgPRSzUd^RJYSvsMJcSnaO)U?{Haj>&|?|72$ zSB{&U%!i%b83ShDdxE?2}BFdjjiKiH-A~bbFA+o}8I2Vw_3Eh$qBzv|@pIko(mhVrt$ z%i4UuH^H^k0n_!e%}TiFwO1|ed|DoiMk{l!x~c0M8e4Fxe^J*?T~2eNz+cr_9vco~ zG=iR4MrAgyoQAzgHtj}-6107&nhkhh_&U;Q8Ws^c-l%XQo-e|+5|mnPY>i(Esme0< zyg;L&QYMrteIE@i6ZtvkO4Dk!UURt?7LtWl^7&r-jl4vTC}Ra9VBJ#^D%Pz4;!NT9GFHJ?u{QNoqU!E(J_Dfe31h@LKVEK00rU|Uv>Sq!FP z3~7)?J)Rt#pFO#~yO}TN>-9opRe%RQ>2vXUX;VzPNUmT{8fkb;GdU0=ty{C&wV3tJ zFkj{^tvpeN(B}eVgiB0@9nZDIG1mBmE5~X@BS|bLHUT&iaM3hOSqi3f$K7oE?5Mvt zK4BQGS`cE~h@zuvMuw1!9f=$MM}PcxS}M7eHLI5|Ua38bxtnuXEEm{!*ww%f2tz%Q z@zk9x1$e3~h@EvSo5DCa86t)2FAg&F5b=D!6LfGoj5e6^V&P+FC3481%xs%c(dCk~E_ee={tBH3(^YHi%>ShxCo z%8orgK2ZRr*&7Z41o-w+)7cbv^yTxH*h`d}m3Ec>vlXQp`TBY~<2<^s9}Uqyw?8d! zkNe?%zUIr8HVxyERA0-kxD#IUpz9+;1YZ5tv9i1d4(f$oSvB2gq$kymF0|St`!*9Q z<7EDOm~QCTa1>!fB1i>Z!+gP}`gdRRuAZL^gw@mpNj$`EcdX{g_(#CJAtYx1V0<7? z*96X|-BTCfoSx=byT~6`tA!L+c@AU2?S?j36K}0mv8IQkF*1&~Z@;a?U476W8bY*@ zX$()<+qbv3cv83y0uxRkG4-PSG4Yh;MG1$lapD8)uX&o_+};cZBXWg8-*m7|jXY0x zF~!pwqR7pV4S?)yxk+4SmmX@@%QV>3>+lS$Y$^6E8>E*$g+Z*rm9}9llEkiF;ecLj_j$_jjVw*uWiS;>x9w)p=?>y(Z8!D~ zR=+pEcXN`zswCg``v)bR3QZ;P$4TVMzz~H-X=veBok6EFV6ZN7PuQ(iAg<$%HyWLY zlK}e(`Hc~8q5^AhG#ml=Pz_o@kS;-_Dg<~sPAqL;tf9|8`yBs@i$tes0qrLE*dW_g zm$m<uzCh=omNxD(P!GJzsWc*dC=lck}aK?4#PlrFKC4nzAmi+>fBd7QE zY%?Apd#}Y@leOW%wHy2=@*|UexY(59Y-sKB(C^V#P19n|`3D-TH@qtGQSj0V z7XoN14uJRE{u;@qw_oIXaXy}}V%)?u&t-HzM_eEsnLvs4SCLNaOlP;ivp97*FD4e} zc#vFw60KzV+7nSM;0tF)aRtI3!NtT&c&y9CjAFRAH7J@RfWYDwJ;(Y7!i&xtbw~bCjL6Xrz;7^iLP{g49uSF(BS-yxDeL$&FxJ}z)1-} zBzEd2h;Jdx9UUAYJ)cZQ+~BljGI3A=BAlI^RKhMwgb+`IuhlBQxyE}CEmIe#Bi2tQ ze0>D{H`&lW_(Sv1B-tRNL$IIC&5j+GYuak!IAj&m%Q$+0#FH{x(RMW)PPCCN4&)Bj zF#B&bYV>FGTj{!5(r`;%b}h_mM={YZgm@`ABCyIYJM=5F>%3#Qf%7}R{k!{h@zxU7 z+EoO_13jq}nKa&b`%`rmj&#XnZ6S->^97Z|0DZCR{^)Q29U1*C-n@NtZ`Ue-P#68# z*#(O-$-K;^YxEH40Jel)GaaVQp!1{tUITnL_ZNB*bsU=-7M@f2kOPmOeRs3^c)P~O zK0h7WGG5ya-0zjm(j!_$ri?~&i{|y861B0}d{L#xiGYA`GuyDg&IoIK`Qi{ubGlA7 z8GA{xL?D%?IT{j7PiD;+ts2E2KF7&qtP)7CUcUP3>t7ozH}q)i7*iTf z`3>UK&BO;==i?IIa21aR3wX{&JS*vnKzr3|3-O8&h-FWwB|1Xda4hwyEPd2wu_q zcPgXk1kO%gjb(36N9BwoH#b*m---V|fBGVo{D^8!o~<%LYVbvu9o7W+nMUI=#|uPZ zo#-syR`h31RhBE@2)d6oeSUT!YJ$Ph(NVY4!_}TWd4|WJ>YE}J>1k9&C|hqg_;EUY znZ}#9-zj-Ql@3H*m&6D_at-B5#geVWbiuRPOU-aMN}0G0&RLLkpH6|_k6x)+_Aq&m z#~iQUxVGOJ9M+bbrK>!RL|NM_c-ncQ!nPGlnvO{Ln#h2un^t5lHDd|5L>Q+k@+3;O zcz0pg*Iue+mGp2l4F~rnO|w1bdc4_g+Ta4PO8xmA>0Cnoz0+zVnI?Bf>qEk?^_8uI zFI-(+y?pVqE!DTp5$(k?X>UuVtZtiw z4XfFr7h%oGcGX`i@;J@5+bSLKM{7?TgWNHofg)GP*mjc<8j(Jqn`TEVb_%A+S zA=;-qy$7=tZB7Ir_KySmYI|>fPHnSPfm@d2%u;NJlg8{h$~<@hr<$ zRi=UcBsz3)0zMij%<`rm$9q~DX;ws*vbT{(R5;R~oeXe~(>;wn$$%LMw{aGDjgmoo zo;MlFBI=zD9~f5D_kvobsEiK#KAz?}$*abEY4c2cGIrTUQm+avIx2rZ%d%Zrw zO|RR-ft^ULN8Ty%(aG@%jl39~UEic)I(8*rCcJ-BbnDeIM4Q(s9aT7-6d}n{fqX>C zh*cg9{dyA?%f$&*s5aD4jN(HO2x_FI4CCC@#o!NOY9OZT97Ljdv+2&@M0gL(clPgPv5uDRFCy^`Hqz_ZA zHxr!@#92q?KkEBXa_=LrB3=)~Kt`hx?VebYyq~rqL&tSn#Xb#g0rgckDuvP1?{|r( zPHF16e+0NoA8m1VFzUrNA9kFU`&3bF;$Em^y-nNqw$F_AJtt1`>)A#uPNjy$!vI)1 zYdS}!FPJ^Mm-tPz!$T17gzA3GRTxE!#Z(1hKL61dSWn2;kSuh&B#{wR3q8v92%dqh zuw93PenbXP#;>~+T*sfWGjW9i=paeQqY<48>iQ4<;P+Rn)mLAAB|1!&3U8_qVA5Llgq11{5u*?ROwvXUR)s|$G`DYlkwOP(YULtOT@A?$?m4NJ?c7)@$$pL zk?<1V>;|FCJ#TQcWrteUV=|qk^C@OSAr`l>xOyn7sGPPW%_&RhsE>>U$Rf8%EGpXy zW1BpxK2kFoE>cK<197~(mV8Zm@dXkPEuwQIC8HPyf`TvFfqA|WifM{ft-1h>0Bl(t zpPT^xXdJ}dma(d=6w!rBt!u7p8pHiIC zo3lh+yTRJFG!|lC&M-^LCRXikYR=b0b+-En&ja6O<(Tzs zMmiO=R3WWr&tA$xt>TDoW%HFi1WdyjC}v;8{C{=px9 z_088-RhC&#CNa)86Cj&gf*gN=>5 zaCUa~`t_^fVASaaUw!qpiaOx_48_+^rlVLPHbSS3N;lKFjQse=w7oIpczci`o*(w^ zDZBTzL{o46IwFF5_2lI1_t!;+44PYlg@BT?<8f&ub=Rt$%a!}xVo0a8=Py3%V#~)A zW2sfUs!%5(6@IC`x@}>zyjXG?L4a7EdF<$keU_3785do89aZF})g^KnB$!Cg@$F|n zeFkWtJL2iZlj~c07bav3ke%x|L)^;g^zQcVR`eNT92SUlUwr;0B2h!OFbxf4v|^S% zBd(9*>gxJhTp&$7?8~%N7$q!7W4T(a*1%kml;;c4T41yVB#DfuX@G_u97RV*N9*;P z87S*SEaV}hXX%5|eR#nJ#}e)d!Wr>Q*l|`JWQQ`URnVQAvd&dOE(NinDRbI2GKZRM z23rIf)Z&-(p`;B_h}H9)tW+VOT<~%&ljE}3D#WZhiMO~^=^o=3WW(3UldC+o>%uuS z3#!hTo%MHoSjn|xlummDwV*>q>Gv@R`|-j$+io|X2DLWV+t(e%yV1^zUXr4Z!YONI z&UebCD)w56z21E~_=rHTqc1n{s2l!2guMxqWao7y_Vz9J%G#?}Gyno5C4$!yT z;fM)4!r`!gg#VR)hCLIZ@J!f}J)@yWNgRfs1=5y|SnOzM)HrVW_?ykzr z_ulv2@7#OOJ;&2QnMROByM13Ngtsi{_V^K3St0h$#`meu`cA{1cfa2#Nf~iO*?w2N zMz=Qt=8KDj(u<86dF5r$NTtvDmuxR6`9P1<4ze+huz1J9P{Ab;`kq!08oHGfBK2ps z;-60Wc0cfc@25X`{`|{YgkSPBy5H&1Y({h0VNKuPxj3oW8+vpLiW3>)gD0^9rAE<@*35 zo-pggCA&U6I#e2AB`+Q)>qigIo_+A-=H?E&>*nTmy0IU?>d)yx`8fnuH13W~SHIm&0C!I7?+>dG`d@FA`)FqA5zl5?>yX_NHc{2qk;2 zn-?{ZtK|Bvq=+If$RI_51nd>ZYN|#B1zX?twf0mJd6}Zc)a^^h#LCQU!}KE7+R05t zEUKDx_+yTW?fsm*Szdfm{Qo#KNNE3#CZBSw?+F{!-vMh%Nk!I;n}xVepA}KRG7YU_ zyrUD~`jPjL5L{V1M%ecm2YIK3@NWEKi~k#qChIg0TxT~RAVP@UXCuI{~)f=>FXo zpCbjsolzyZz3E;?>T#k3(ZzD!>GLEBF4pq{PIw8shm*PpVdS{;2*r=QeEAAT=wE&O zm(QO+fAjXu#~=U5b*RsGc6z$mZ15lygf12{L?Wz)pZ@swo(zY-{MFz4uCEqGd0NcV z`EWSg4z9N!fB4a0FetTCTsP9vVneVL1;KuAz~c?us44;6MpVl>{OtFB>WBWn{}2CH z)4ay58H6+ex*w`e4@q{tx?7m$U`CT|lUB)&JaW@mY|4ZF@!NRxc9CVJv^aWFTn zH<$6?;qTv?=Y=2ldhTzp0Q4Rhg;8uW%NxZM-VwLKz}wdQ06MB6#S$p!jF6%JHyX+* z5W0QDikKdpKIjhz)9L={@yYSwk>3s60VXhKM<9Fl^nO_C{i~q>*ZP_w! z*r;}uz8a1boYrio2GRWkUaVd$RdZJ$wzoI2#FPoo`rh%}IW3eGXRX+|t0^}q64g?u zj&s(hB+nIjzffC*F11nuUYcP%e7L{ma_4HThy^eik5}teDlUh+R0X@I9-JX@G#~uQ zH~xY7;8SiWmg+L|_8j@JI0ncOO|5r^JM0@8Xy#>v6jJmp04%GHrp<{y#EVi|(o6)! z9EbvNZ7cpBj6rH2&f8_1MJ-}Xoq3NitElP+07#JqDlHdS>dfhJ&^zDJTI{&?Tk?VG zV5lvfZuyQ``hMx*9?9SxJwkap+VJ)z`QHiDl)79@Qo6;;(d@A}(q>ghY}kg#?j1Om zOMYqf9TnxWYBni$ORLoRtJ@9W6*9z8-{K?E|C}_#9(RO-CiRRilUHXbZMvNZiz=8@<%*J>;czx{@}Bp<7oNzff*gZM$A6jc|Om)Obuez-9| za>uhKU)V;?Ayq6?duaL9GItkQv}$_gEJ&Pa?_uw%%A2gM8ka*JACX}3a#6lrIskVe zl3?-frI&S{0d8pL2SHZ**9!cxN;m6`=$%_Tog9jJ+RkV+;S8qhVsD?Gp3;7?=E&aD zCr`15$Kx@X%slETrH`$JQ)DT~U!R!3SKBfG~lKRbIs z?$v6ApI629qRcfz(lF$@GFvXLkyJffuc&%ltN=a&aWE>X0=TvoDK0HksebXv@d+ZP zT(8QP+mp#eAsDA#h;a&j$o0w=D@mk>S;8?D)(&vYv{va3b0a)2dh6hcf#buYE_N{7 zL#D#`E1ehDv8V~cDFQMp5#3u659|8)tx=R&O+hP14B2dHXR$v*&YFR*@uQ8-(u*%D z3CW`F#}bHRHm2j5(zT?`bchv>E}oLNR9KRfZ9EkOi# z10nAWhl79hr+@mp-~Dd6T0Z;W8QH}tX(h);$8`{h%1wwQ?#Vg z&6IO1`nds8lCczwg#Vr4`y(=edpM=BmxScK?qp#@ zxVpkd#ZKwOYC4UF8F}zdt=V(N4@^h(GeZ0ivsseTaz3Uk;CNf?iOeZsP@&X z7mL+mC;t+PXp$;h$#e@HB3Yg64|gm@+p~95{gPmoI!~tN_4tIt(NLjW!-6$8NM7Wd zY$F!)R##N=A`;~sN54~@j8&3U+wK(j7h*88NNLNcVKq*;pg*kX(n=XsL&!#}IR4qs z{&=yuQEAZD8W!Hf@4JOJZrQD4su|ek9Ff|gT)J7Y1>d8Addl*Xa696XRq&=Rtu9{Na=kUCMdL+9SgF7)c*Qq#4 z58Cw6alKHbF=_JUa7Aj30)eSC%z#?YhKO9^@5(Hzo$pA4?pj@18M%+VzK^Z6@^{Y* z#NO%BXzAUO=}(z99Qx7;w?ff&TU|#Z@>LU znK<}bM>0v!??&fYURf-c*bJY2_Sx0d$;lZ)4QH*YYSM3e#sc5^@_hd6pgB5-8qRT5SzhAF zws!P4U$jYX1Qcd!l@D1--&zI~E0rO~AMpWXf3sh{gv8haAzSqPV)Bu>yEE zzr(jC@kZ5g^F00Lo3FcxmQE77QNdfu0o%!Vq#j&@-as3ayT^xTM6_Zfg9|JfqD<%} zKf!I-#OwQ${7OdabOA&GhFYVOy_=hB-Z$S@0(T`E$~x<&&@3bk_zsuz;^hmx4E6vk;{M<-^|P1B`GwuMh^b9Sm?cE!QN#w6tG^zx+KChD7&s5vrM za402)WTKX=(G(QfbYd}_`f5d3NjGex^f&SAv>X9)veuGIqR(0Y?+Sx!HyOEgDheI4Z04zWK$xkcka!{n4 zT^^za6@=7rapZSw`bdn#j~^Z$?oX$eS68dm^622uW23;t-a`&@a(qm#dYX)fBaLwm zWgen9j=y~VWle$5srtm|h{@rhluM`)S_0)Q@1^b7Y5jgDq*clvyJ1qcW!)&C3NRqm zk3ansN#)=E&3{;a`|qEf4WAuxfJT&ptjKphLa1tt%h?9I#j(uGS!!8%6l4#>?6yJ< zILfW5x+f4;2*-kaTH@at8O?_ue%O!t`v(WEs@%l!$?>Vw$V-tNAaM*?Fn;#ogNNUI z`!%iwxsY0FN(&_r!eOUhOuc9Fxv5VNTq$CtruLNdcu@8O-fKe*2KqASm?3UHa8@qH ze|py9UlBu*OEPzp1ckg1$I-WNh1iKLj|ZW2EyN>Fs<-0yLK_Iyb7dk*5Mn8kSmk^% zBOj&AtD1lin^+fofPH)33^=r~tMc1$Nqi6?vD|k!-fEGrPr7^p&(jFG8zpTgk>1*8y=` z+g7AorQ@`uQd-Jcq0Fc4uj9C7swm2FmP}-jj4J$7k;})|IieopK9!W}uJ|SXG9CZA z%{fBrhF;{nBOh(a3OcDkZI=2rzNm6DFq}yvc6u{I4LDN3-pfAtA;e+UCdxTZ@EcA4sF^3KRf@yclP$3 z!?3CN^y-ej^Zi~p8FB_~v0QgijO9-~9J*H)N5AHNBKd=C5B0NB>(edMnjQLF)EYwH zO0vS|P(Mx+dO#qW^aleiB-Ju8yt5`Pg(I4X1|AEH76rMrJgjb7trSfT_NVw>032kL z5luQ5Uw-u*VP$8HGnq`dg&YTYrP$vRY=7~^7pG@u$UUEb_0@}4FOf0fV~8aTLj=X; zZJQ&7axr1xIEEa#@wTm0#3_)+=-+Q`O${0Ao*2PJwZhTHFos$UMI%<#TQGNlApi1D4_w zkA`EUcp{ZqJDo3Sxu7jbb$P(BpwMNDsr-kXbD!d%6m4BYS(^34DF^5N4uZ*$eRID^zoR|Z-Qa5X z|5nIWJAYGaYqaJ0kqA6k*c&?SY`3OXH~&9+o#MNlAz(=zL!}B?g-P@B>sK?p$fqA1 z)bHns4aZih?|7r@$DXZ{N2lXP4KjWxJH$pr3_J)n7fDaDgDMfl9=a6Z0(y}O+Kxwb zokD^DJcVrR+ZW&B*6r=>Nr#9Gm@o`*8<#PKx=X1XEmte)r`S;#VmsknpdhksQ>B+m zET#Hl@CX#anY-It?9)e&AAkJGPhNigrC+{@0xJ1Dous(BqO4zD%y3bUj)sdhK$+?E zti4g+vfRq_UuKWK{Q4Vwr0L$CD{?mtmwVRUwI6--u^J<$w|An#(ER%O4Pw?GeR?t( z_MScHjt#s%Q0MvWrqw$o4>ZC>HO9&5@fay^-CSMWT%2FvpcEkivoTWlAgl}x1|M5d{fc)Y^#_)Hz4wKOJ1k?w4Ew*opd$;*{|v+0r)W=VB5 zde+wcHri{)JyzyC|9S1y500^}YtDX>>H(0Jt>(&vl_hG5wt%U)MnY17!-WYxv#KVe zPQSRC+q8^82FIqIwA-ZMNO7jT1SlqH7H3IZsuV4G%K~Z|8?iuUs%nvMHAvC4sxqtb zf}vmKY)`W(xiyz`ZBK)WCEZNXi!k$TS*U&Kt|*xveRvH2k-Rph3B^Z)#iO_bF7r589 zu$kSe#=XwJ!-o)6c;j%d|Lr+rbe^mm-o{?j@x6XPfd=_I(vYgkm0;z$JN94iY=&KnUMDR9pb zSwz^n^+}uJbTqyPp>1|^J}G|vvxAYe(iVYdCpj{&Ce5pdha4`uUBrPGV6ERS)0@Ro zbdt@x*>666`m@~qCyLPjjwN`!&5DxHhH7rM!SAe7pn*lxBQ!kJju>?8Oec;s;R4!6q;zFrQ%$q?@FtV zC1I0O{dm*yc!C&;zg(@C)XZb%p5RjOmpY-N9NMEy4S(1a@7+Q~a zS!Z;`rOkF3Kx=!;aK^D72J~jHXmiS%FQWnR5I4I3ZCkqbOoKGd^1VRn5`4blfPOr3 zt81U$KXl1rpS3QeBf^%YZ#yz?&`8o`$$r`uJ3j*iP87ysoG#ND-)rM8o{Pc2;G1C_I`axybD{~`hnC859LRXreD9EDM68{ z19=tsj?ar?qBraZ-Iz`%8U2ogu|J9C%M>p@?z_FvZmP7XjJ?rd5QVthZ!cDc{T&u4 zvOK$aCoZTQ}E`ze3!>fB5D-mva1SbGBUE$!Sqd?Tb|sxWm)wbc)4^GhjU79K+l5b5$He zKK13-U*X8@_Zf_^b@#@-pl*ICZTOS9Ds| zk$MCr9F4&ESVhEQw$t5VaRW3ZkJydZ;h@B+etCI$d~}Qtfu}%|Wcda)eA=x~rEVcC zZsIi_T)Kbw=FJ;6xwKr3D3)Z{Htp~sTV;n&Sv9o0Qw8 z89aqqnx@|$t~V>u0wHP6N6>dnSG7IzGRd;g4^3gHx1^g}VZV=;#mU;rO+$R@HyMIC z;tyU{lsH-Xa9zKp=zytxr!w0hgcVgzO%6i{vI0El%;Y+O&z~)6Kxs3Hm1`j-)o2{s zm8WV}0-!odxoAM*^NY7D-UM;V%*#SM_HwSbjvhW7$K@uC^nPhsL<>0hN%63*pFR6X z8(5q5`a7P3orT;x`E5EQ5WCqFAryYR>4~i3&Out0YFNC?GKqs)vo|m2`C`Qe_Q~OZ z#T5kaGJ7B95QO#uXPt81QjP3)l=`h^fSmL1N4_|#X~o*SZ#&<1gE*s}b6{T0gx7VLM?ERZR`}m75zy9bD@Qvxu^OsjRA0r-n^--TkQ!k|DR8<%A?BbU% zRtI~-qab+x{P`DOei;VA{{DU~uVrB$u|vFFwEiAOH2okB%qX1AyBh z&AR)!1J1d?PULQm-&+^O?QD5+a`xndkLI^;Z(jcn8Av~L?COOvFyl1Oid8=_qJX33 ztmQdYqf@2smao!Qmfe%lZcE}?ez-TlFVA&)!q-i*^70PL#=e`coxD6oo@WPEIK7RX zwkm3gO!xT&kqAZPS&pSu`(BdRJD~zmnBdgsU^uc=m76(~ICj#NgPe6_*~8&zK_-Wl zkX$CBqcU~C%6B0{6mG9@2cYpAK<3Cm7|I!LS`kYPdv&@cIl#E)96PsP^M5Sf2V>2K0rYs;b}F-4Ak zNm+=p^RmLKa)bgM_@req29~)F`aGM6MqJ!?x5TwGrluEHMdM@f6xbJ_U!(t|UcfBoP5#jY;1+nhRWwBxvo z*%?LndcB@04cDE`6>v3s@Y1Y}#c}idGl|=JJV%g}HM4s=o&L{Ro5aJHazI&9Xok&E z(rT3*w-Z*U^%))*=K?y>6}m-qB7c0`c}f+bIvk6%=zB{Tt|;%2_oQEF>@>V>|IgpBW1%e*J6hfZY()7@+fBe+Z0^|uF4MlJ~wINg5vd>Op* zhQqzlh>M2TB05TX?f!QAtyU`p0x$mj>69=qzvEK)okaRkr6S35_{~kq z>D{7=<7|(e%|FD(dvJCZMbSV1<~Oh3zWLzE2mWYGDF`{!q>0ohZABY@+A9Evue!RD z0a#j5?Ve*zFE6fSu8tx5(di*_5vO^X&E~IPlLt_dAYuSX&PDkX-yiu%a2g~xzyHxe zKlCUlRu^ng2Bddx(p=;i0YoXAn`ShR!1jJ~z0vW&*(w#qvG(+!zmBuWZ;tjlDvWKd zkl%cJ>nwA(+MXY(jv_{+n&DZc2!tXJK}u_hys|K}SeuvB)c`hBy3-oxEpGV1;nme8 zFbHxUnd3ET7vQ3Hr^l7BjjGT-)Pt3sOAb`WVHgYlU@@eS?3X*7u6<7b-Et=88_eY ztdusZ4J$XDa2T5f7VAMqxru?@a4UuYO%;Na4{$9bTtZeT^G${jTS$SsYGoQd&(iVU zej3LFDB@@vAWYIXpwj%b70pPYVp+H&?B=)@!*T1Wh_B@aWzKG+8?dbuS$iT0Sz1*g zx=n@0);z@|A~s7cX3&i3>>7%HFh6_fiW8NKqt22flEXbF6>bdGqT!6X@)GWizvOA! zRmZiHg?0Ys?HhIUW=XHeuWzou?~~d#?RRLUYW1OWHd^x3(@*1Q%)S?*|W0SZl2B-dwK)h_;6FUj2Jl@s=dtl&ONM7j#M7F!FW+HTSbk{QX=U zDC*{&S@o%lEp=%|Qw51jqte5p1h zC;LN@;!LuB(RH#b5m9x4)gu=GY`; zPDlbpT~J_N$DbTNS=_$CQ@vfL-y@<);^qqxzp-|cSlA3nn%pcd`k_1B6WQe=*|sc5 zQBi&U&=-5otk`V2(&zOCOCpWaa!sKaW7PLg_Stv-(c?X}R>kU6a>*bv@PpJ~$P#Q7 z!dbJcKLDj5Z5+9^l^2`RY5il%AFFYxKFJ_t$z0Yau^hE4QZBRe%Zqo8aI!+y>osmh z>Q3tM^mRR1A3Qb>O{D>Am6O=N*B9b@o7`R@MPvr2J4aAbB_q&yS>Psd$F)Q@(eON~ zio`6wbkfyg@IfO7^5ScRB)^mbvQUm&k(jhK6={F@RLZ@tG~vIG3^%a#qXqOrfE% zJlE8UUMJ&#fgG1$y6lr82o^Om>xzUg9zBihN9I*#Bf>D5KuFv!q>u!9&YL%{IV~w$ zNVx)1Z;I5uQCf18YHO_K&H0<7!y{Kcous&~ZM)HEth5F^z}0#sCTQ<8YVbd7W6OA# zUa@orB-408!t`%$Zt9uFP4 z=OVsdB-NrmIll$&s21~i8gCZ!J8I-xY;v{XKA%Z+n4A4xzgL)a*T&v8-M|nPHY9Qj z7D7%B(1{k5rdp#!+OF=_=hn_9E z7qVPyVO>y+PXsUk^Bh$(Kn~rA>M?#^@;=d{up~WT9g(67Kz2>-(~F=mwHPivEwP_5 z?J(*^GSsCe^Muc}L+ zkP_B43r}pFRZCBs#yMa5 ztC9rQZx{7%zP@_;5k2)o;S=x(^ps%gUAnkS40*V zsdefIFH}jx4gno6J6o;EqD&Ej&9kE^ZccwZ0gg@=Zz#0z`rDgdzvfV$VJ+Vl3wcg} zIimE!z4GvA_~$=A8}_uz(MEDgAZx3tZm0kV-D=51n+`(qMNBs@>+{ z0=W+#PLRC({)Yzwc6hz=g(;4q?A~_%Mo5E;y2v);!24vn_+>Wx`r5Sp-naQE?RnK? z(0Btj2z3)^isbp(dc|r|TboHPA)aA}IgR7cT$SnwZJ9GB*mQ;AEGN@0u?iQs#Hw6F z@gcjb(MoTg;f^HF3b#-BH}bKmP#{N_2y~U4%B)Gmr*R=QCacB~zI#h1c@qU*L2>pP z5snd+J{|mki1SRtExS)=3dbN5O17Bbf-J*sr(nZ8%~aiYO_TamySi9AN^2lA<0;S7lUF+83Ps!73Wjbh1GdPY}IXx@KV?H@z)| zg;-W?&vPXimuSMdu(J5Uxj5zi=0bhYu?b6BFv8d>#0~7eWoE0D`-rx>mY8?9-*=tS z@hg36b>d~u9w&}n?FgG9TS(ZS6k=9=j!v~Qkr$lRt@W|RYF3JqS)pSSCSFU(l zb$#&PTqUI}0e}NwkaR%w2csIM?GkR{7|~xBBJKnc&?ZL! ziCOPy?+=!fI2wBR#h#tmVd%(uBklZu{=5HO{1?2yr*~fHB0e_%jt7R%ie&%YE?Hv7{J(!%|Y^K9tI_cs4Pp19lCc#I2a2Q?BmO9>q z^Uvy#IHeXBs~F*awl2j2l1GIKR~$?L*x8kTa5y+U8j7K;^`plgen$q1YuhBnCM_;* zH~1s6#XtbsI?Z2Qt`KT(=dpJ5@%eFG!=6K%LS%<;NDHa8F}JDX^`^9w zc(ttixUo5)Rb5z>S$a9vt*Ph*@Uo$iwMPbc+oTl^FkgYT%#z}5IR<3!L}FP9N=+(J z5)c4_P_03Oh~stx%oHSbIq+SH|A(eQxR@kO)Js`OvH8|-_PtR=A?)kd#2{=H+wOJ% zf@D9jT|mx=?JBdo_Pe2$d;ej}&>+H%On1miq2-lkRJDaaD0;(#i^93Nwes4^?Gv@% z#NA)#D>E|WkfUoJ4Y8#v!9uLlbh4uDj{HpfKMByJt9jeTwrWU*PN;IjJbOjZSM?aR zxoL|o2L32EHru+r>Ox3~cjqU>Nh^FFivr;ygv8znt=WufwT>S@e(ZU{5o-;NQ?Kx< zwmJU#xAWU&5{9lO!p1#~Epq)Gm49&TfSX)+LRLYhWb^5hiIPG*F=!TD4p-|$$j&Zq zSJ$&O(0_{f{3_Q%XlPuB!se#Gz?kv*FenS&4jk zed7JOsnheDF>T?93YhIhjjr8<;ZXq!jS0eo1%SQ;Vi;a^<4HA1E0bq zjVUUM*zUN^2rD#t;HD!gt0?V)U~ABihGn32#@ew+RV!t7g=-bwAag0#k?r~fm;h?BW8$&GC+|6 z<3Z()(^8tLa#*?n$PE>F)Md_rp{j7yf>B*>UArv1_}zXcZe1GGxMbQooM_0O?8CAAiFwl|6a<>c6)fsAVZFw7PtgmEnHRIB#=nr)KvR*q;amJznoJ*Mx{q++1c12o+d)JP#YPs z73f5tQyNd^8o#LbW|-=dRM*vZeu;Rx?aKYFxwAy16p$r`X@)SfIN%~EU1S&y@AC3| zZ}0Ho)ad(_lYQZ=Z`9i*&Z}c9G7+QVj4U7Z8DMJ{@_39$wr0;B?$}-IY3#1|QxXk>zGK)7jT=&*wObhkdeY zE!zj+!Y|y=+xc1o7O(WdA>P(Knf6Zi`#X19mCC?t-prHRWel)#JRON)dL4NFS8o=a zWv%P^Dg$6adWhs(Qeo?Zv&k@G{pZQ)xZ#7S5z&sP{rM{Ok@#2jT&kjodNvLs)0%IJ zo8?C3L$2;9_%K_LPiu3F8-LpWUFGb3-Tde>i3-Ff8GMpdLcGDHFz1-Iaxsmj1bE6T z2CrIrkTNL3-Do;AS(ispi+u+7b`TIxiGl!&$T_L0r7aN+pn+C{LIEXD7W>(@LJs!O zfT}U<-e3~&m?T!D)mT#*WmDt}eQH=To|aQ^ld)FB#5B(fX&#bZUQ5LXaVn)jgXP&$ zKQ%0@GpvOisE~YjQSGium!aI$0v4BaK?0*KsjkI;uktQiQletpk9wX+7kP|{%*0r2 z#36y3U;t;euGxAb)>v|W({1v!#4$|G0#p11EU^s+sv_~7mfhmVVhd0hgoNQ~URVuD zMZ({%@oJ?O*;sY75hfbZGPTVbKPEHnt>R*hzBr}%)?Vc7NH_O6+B&ZJZY15Z-n@Nd zQCO0VPdav#?*%LsW*~!fD-xu0Uiex#5Z!;bcQ*ovy57@HIB+r=0+Tqp2 zrL)`nMxNGvQ!>O{s#{x zmv_wjP7eB`0Zvft;q|iz1JO%!g#W@BojhAVf6b%&!O0YWX*|HGX5KDl*c8jy0Jx(~ zUQq!qaVIp!qf_^A68V%2v^Hs}(K<mIn{xUy>Wz(It<$}X*R}`FXel}XjhWgW8-<+c)ck6x0fH!8!W_@COJ|B zwZ*+z=3L22ZL^}QB_oyY4OG5~j27W5n!@qp6b+O83|j`EqwkB&3df9@Z`y)D070gc zDIWX&WJo>Yu^tUp;am_uyXz-(^3MNhE*F;c_AUAc6}OR zHkEKSq<@ENB;d9r+S}OXRDB_6R4z#NytAEG=YV+;bslu%uZOR*v62W}E> z*CtMA8!iG%67liT13Yh&G6&ot4DmAe$S8-)VjAZflGsWIUxHI(NK((-+!0yJwl7no zyBy87-*e&YZfZR^`%oXG+>3 zi&_RNEm{3c{weJ!-$@rasZrIPv_qrfYBbs#4n2>Buc+74vV0gu;yFrAa~MPjSQ~K( zZv_q6);qNcyi}URyIPu@oRo!8vo^h`LOL=!4NC$0ELXmdewYv^2JJ8$S(CIBSByqB zW5b@y1hRn}n1F{2KJ!-@d$I(~373p%9VI8}_&_sV5_~ zc|at|eGpoZq0p%XFA}GG3Td8EQX;QX)4aIds0I+yL%f$5b{XSgaCQWc=t-g2&?zoq z7_^ig#_t}>(hRP)6=$XLQEr#3|6%X%e(`O2*`Au=BhyBNX5pEb3wU3c1VZdKRf_^C zbQ-TJR<9W1fnrK2Hf6ZECFz1krpr@NoTAsU2H(ZB+Vbu z2l39eM3$JuD9Z2c5b9xzis)X8M?-m1 zyH@31SM z=mvn1HUSw$7xB5=drlMg#f=etw89-Ho6at!l5)mY$X(o)x_h7l{^S`4u=fW3@bvs`r(gHVckSS$lniEfb z^R{d|?wF&3vq<08F)grW%N1g{_M)S}eQ-4NChm`)vfsao)3?{NL%<%_>G#56pWA%L zpTL2MCAChFba$ddvnAfTO|xp9oFFe`{Kl|v=c33O8ov#9EXpH)yD-0v@ zHk$@P4L^bSJC752-iYlb6GO+EEfOXvazYGx6;YdGJv<)m6l{CGo0Zhy6T9=a$V=M+ z2qP_iJiwVLYK$^t_RrtkV%xvIULzECqWeHzBL=&lp7}p%-7luP#;X9&>KvZFc zt|?Zme8s#bXT^8B^SN#uwV0_I3!AZZLtKz!as(4ku#lrkUq%dxxmA$T`C+f7)TK)A z0RDv}xZom-be#Y?x*Srf+my8aP8Ss4=u_^=>dLj$zoFxn=m=TTKoFXyNN6B4t;Cfb ziKgKgY=cnQ(OlCG&-Q~Jx3dgFwQeB$nnwWjhb0n@k+RBe3D3Z)1%JUh41#B8W0sI;HQMH46tvg? zb7-tIUtQh~BC?PX_>jh8d*813YS%L=N#T`Kv8UHc#JG=r3!LbL9z_Tq9R)%YH-RgC z&KkKoG$(pQnM+wXoBqtcrKOg|ItR44x?9o}TyPC;-QJL3_LC=5e1<2dV{S;>TH^*) z)!kx^1WBlcJX}uw>VF>m_IlH#wfol>Ph(b}c%X~(piR=85EQ6oY}+#MXO$)1h8nP& z&AOKIrzbO=glW0T1mhD?3kVoMIM|)tYb}5o`(jh&2<}1Hm%)BEvZ(9iJ3Y^&C0WY} z1T4(D<&6!99!w!#5E=P2&uc^C5QBTW#+H_qEX}1>hWiZ51xTX@xTqe=oVX!ocOntP zb};Gn6gY7`={A_nmW3}6wQ;EDgZORdWI$0zl)a6H`ZGz~s)jHtai-{!SPrlkvs&_d zTXBT(RqPB|UYZr2i23L-N-;li1QS*GmY()58(c1loOm^!GzcRI4b+5Y!O(Po7CDSv z1FDBU$4*L)(AQ3_Y{%C8@BYny|4tTp%Q=!>qqVC>sf-Np2-W6(`ZHYan>VkO;QkIG zwH=jIK?H$PK>@R_aVE}GyJ)E2wl|%sJ{JxI&ZgQ{zt=##`f61(qE&HHa{P_mX=885>GwXB zhW)1LB$cH*%nq`{97L3no9g&r!coe_I?jmW(!8O4X(~=DUCZ7SgZuXB*+jdaa>`65ki+PI1Ll8C|L z#RsFYqm}@YYFQLKU;zjZQ?*Z2s?_rWe1Ksn?lp2uI-;b<*|n+?VF{Y(&?`uQj89cq zTK5PDFm+<)HCTFR~?f^=ru*kT-6$0M^HVE8kW`KCHb^A~X>teCscxPU))+V2$>8vrjSfRXx z*(W@YYRZzS5&oo=lu8d|^jEvNjxdh@2N-%Wj<9SjiT zo;~Od`~GfCE!Rj+n>bAqVWM5$b}L6DRpfVMD^Z|BKl3$~UvY8s9{=Wpv+;Bo{^et(f7q1fy=$1&A=7hjcc-Yv_o65vqL)en`fTPt9JX9P2 z$l6;j`^8nHVuLN+L=Jc#~!6Ck7<$Y zE#6qbR_x@+s1RFJmB>m_-_G+4t&^5nRmfq$Qb~#Ef;_!3wD8wxn^Y6xTGHXFDb)4a z>SC7sy;Pn{PHS8JD6(iwCl;!<84Evx!l9Caxsu=6G+`}rd;ra<%fb;yTefB?-Blw; z1zxO$XCUG-Tnro>vJk#pfHF3QnQn7}n!}p_gQg>*6pcwvANJRRkt+y0;;7hIm#VYM zW3cV06CE2{ECN_pYMRw*B^BjbTW`2!2oUO8h?hD%Jk)8P;c%oHkFMvZNirUf_NVk6 zy1BcN${B03oAo-C1{|=bfHG4m==FW4BT=ftKNiwnwA3Wol12wYfcS2=Iv6P`9ONM> z(S{Yn&i2`q@k~NFA!^m4X~h!Ra=9E0M@Vm1tEKr~;h(Xp++st-9W^Y;L`zx-Rkg7- zbEV{kbR<-F82JSeBFziJg67)M^RK?@E{Y4^Z7I-h%K)(R4__{S{?Qo6-XOA$_uR=a za2$U!2vuR$6?!s~FP(!2##sZ*2v}Gpg{B27A)2n@Lgj*}C)pZLPDZ0=>@Jnk>e?Gn z-wpsz9U8{&E1kri|4N>6S&yqdh|*JH-YRBDIOg5pPo$t zP+Xyy;)CH@kxi~{)+D&G5Z>U%kNP3N*X@Gvp)V%kNP|{O=7(7B>}geGHsYfKf*nkH zkB$cY2%D$Hy=~N;Te3^eZ&wY1?`o6mJN5ta@w#*-*LnXxUQJ)lsdQ)B4EZTm#+O%x6DjE>5H1{RgP?8x_q)YUT+sSXmDGWxeRbE4ca zX~ZCsH7?~7gsp(Z)#yl|+MmlH-X?GO09_98U|rd)f>Tw!=W*7D!+km;LK$LY`aT{( zFR-x%v)YilQX}noE-DfDBz5VQ=uVFl1!3EEUms53CTm} zCMmxY^f@49iry(JOLgOX_0{v;Mzx)tRXyW8{m{j6NXHso(W6l}s%Ia3Xqy~B4Wj6M zK7?uy1tl|6!g$02BwVxk9exU+?Beo#KA&l7prB@_1$rN9SwWYOHbNz5&xK+C*Al5up}RGyi12j~$R^^eH)<^v@1^Y@0|y6yI`oxbLfq zkY%mY0x1zPxHq>e&7-O4l9sWk^dN;4Wk@3=WFrr2zCyfej;H-&lC6{&OgGFy6bwRo zf?my*wE+K}E~6n5A2@Wv!1?v_D}aNm+n8f66t-tQb}|SMIFQK#hG-jJCutpqI;F43%A`jxk4BsJE56ky@5E$l ztP$}Ud^mjmx)V1kOu0I2<)Xm>fKY*ixc$@Fex@#A!APf&N&D z3k*?qERDjn#e0Q4(8iRCt!T^#zGsOjNWn;1kXR!WTe*rx!VQhV*)0%aID!EpG=YLJ zJ6!fFD$($goDMe%N3wDZY&VRUmG`2M$tD%t4axDTv`Cc(lQTmS+$>?b+4HR z?k+CQ)jnHc6h1fge3?4chX)6Ea`X9Iy#qRv^v+S$RIR8Vlujr3bUk&}-VPtLqJ$)I zW2{<*Ilzq~&aFX>#S4?Lu~Ahp;fHQ5M-2RAOKFZ$IK6FER4P!R{m@#hby^Yd8I4Bj zLVkR74A3;2&t2C$Jvqg7;gWYXEc`eEwARPg8~U|i4_{wjsec;Yht>mB(Y5gbXRBu9 z7s~Rd3RP}?{Ah~1`{H7SR1Uuq2}wFdIO>u5hcEu<#}CNoavkmOa5j*FFm=Wg%s4w5 z;R1U|_M{DbdN39_Fh0sStG;}3i#xsC@RdbgopEq)6k4KKbu?i?>U6)aIT}!^Fb1lA zXo~`)$Hsieysd4=1Hj2BJ82-MTrf8@@0LrcskcJIG0qP9)kDpH4j|_XO`#@fW z(OxqUnmVQ@74dtf9@u@BlD*pV>&5lmdX-e9i*zYGIke+p*it8ca4_x53zH}?==p?l zvXw9IVnLyr1v5@~>?E@-b#=$7spl{5NCoNCjk+Zj`F1a|%PKuR?420Z?;F3a3_EMQ z|LyAMjtutu?Cxt>fwlH9^3__Y(V;QAiW040r(`Tva9xWC67HbUIAraWjW7>nJ=5N) zWUZ~0z74Qy*-G$XS)HdiHWN{;m?Z~+C+5gZMX8f30s-Q5Z&EUWMtYW%Tn#`U@}w9{ zs9~vFQVkY4)fC7?u<~l zni&w&cXUc+-*#2#DC(&UUKj}4qP0;7uo@@TJMS#n9y`a_-4JyryFmdnhcgB06SwWu zlJZLlt+r#{H;R55N!IiTWr5o@|~ARsrHBk{K<2y4{y z4#%M>li{sM$Y0)3@b8yj+=xbSR}&ibJ?xZ0h}@9K2(ZHSrLn-Nv_cdJ7$rD#EwEH4 zMvwPLB34;{^@?rQgn^?i%e6F;YAmmQh+Ae4hrzHnK9)}l^u+m|mh+x?ULt)Xa|INN z5*t?*^F7PduaOrsc!1?<@>6#?i30e{%@C!+uml^v3%B7(74iR0*46yTm9H^M`S z0=6LjhV0ah>WPw|V)FCo> zrc8Fnlfw5mrXvGt2xYF48ky_SK$(YGQz`mvWzegNLKgLlnx$@6<|nA1SBnOgp}sa8 z0#Y|w)le?WM(hO*(V=9M!S=n3y$%ZzH&617kqg0!Qdc$^r@SsK&O7loZ$;o6XHVa@ z0fDoMj?kPu%s(^@xJM7H~;ZQLw2vef~ww;o^%p$JI7;E@AV$JR9l3AA*0c_V}7@t@B=GQqW?D-4DNgLh^Skk#h{&d z*8L;bQfZ;KBc&;|NgNhrp0lcOXvn8&b;3y-E2gQ`yIR$9yFQa@zib%;IuE_xtb%}Z z=Z_yg5tX$-X?rah)tRznuh%OCXhgj?Z{N&jcZg~~|LhO(xh^l>=v=;ZMT=(ZMyVRD zJD)pEJIgZPpYCT_7DWu&hfhDAfBUyMXh!{@6)9`vGe3K_--u}qj$=Vs{DfGn>lj&5 zbGuld989oxu_v)%UtBC@%D?^Q?OdwPaxz%v-k8jiN5^By89Nb+&a|zm*ua(|yd~O? zqaL;%J3QF-l??ThBryzr^}9E~HUIRS40x4@(C`2B$v$51$;n74y@tvFBx#XQM>t-r zx{4x2S;orUOg|64-OCWU;q&akoH-Y%4U133F>H2c{5`j>C)-xbdqC#X2Pjg!U@ z5|CpH>=79cCR3GIy|@&`rGT8uY*y5~A|zq6NDkPX=O%RvdOd0oc{XoRW4Q=9mg_P` z070jj_Qq$s5vL;fIc9|7IIyVvWcpg}C-jmEF zYU5g3qL?N99Z7c}vcvT#7e}NDMHrr~Qti}=xV0^Ns+2Wn3nznHT)2t`>*uuHD;inV zz)ha0E&qB2(itR~e49}OtRb83q%&BXM-42CZ)I~T^krPZ0H=2Wlv4e>$DUuS;b zalZKCb8|bqLXOpT9#C0PT56%(l?Xq*v&ehEieIi)2h)Ar z;!0R2QeUq-)@Y~3g2b6`$UdOj07{G%Uh+5yAz_tefan{B><}_(s{?FMy9c) z#R22_>m?3VBvyMPLX}NQM7G*6E#T=O90;834-N+Xkd-FDC4FV)be*Xu)5$nv7+!4h zIF-@9I^Q1;2faYr`5e8zoRNxwzy!3p++<27(zYO8`CyMM*q?uVq?)ugHDoLx(=@LR z_E@be8slO{3T}}neJL}C0Jq}hut-S?HHB)Ak2PDSIji`BZ3L@6*bC0We;AGXaohh@ z`KROnnS$(O4U>aP{eM6O7DYW)xU8h$RD;YOSRJ89Oa^2h0z`?E8#yDzrV;T?p@(|5 zp+|^_>X=9}Q#->VXV$buxwlA~ zY*qO^TV*yJWf<&c2Blls)ljzv%SOkF?0WiU+ns5g4tQT}y;TztC2j6rR)j3rVvBk# z$!tU?NdI+b9IaqYJCcalRCko3m1Wxst&Hs_@H!cn){?atljK=?baaB7;0y-rc?}<0^Gkta-TnOX)e>7n7+9&y7-DVNtGHB| zy+#wK{8b9nRX55*|7FKEFUJgg;%)IR3+-*0R=&aykkR z_j@WIvQO;>&a#y}e#9 zH|2|~7+Hc+$@WJf`L0tY*AI_|>`2Pa$0pZMqSMs)OZB+Liwh6eJe)*XR9@W7*T^j^ z#L8xq6ss6eu3T&~l5$)EsL-=j@7yKHkPA2R{XsustvzM3iT~qb=}TdgzO*+ANshNo zgf`1Mz>6cD+$1HUuocv6+z$%M; z!ag{6z_IAgtHVDxR%bo>3kS9h+BJ;Fz5Bjce9kDrIDQu*k!2) zi7xwwVinYD7HKNG>3~=#!UY5$X9cM%3`6|%Vq73e07>vv#!%R3ik_b%eF!`bGTRBM zmZqDy!HsFnOyk0KXV{KSY0O`lZsY_*Zqi02#}V>fgx8i3tw#J(Idbl?Y+czR66&bv z<+~KjwZA_)BVr(3%^P@1saw+NE54J&De?U~T|e9ugoeBMygwMm_~PzPth&RUw%_i( zxGbbK-61a;D7wnA_>M%E^rJeN0L3&qGl+=G>1d8DQ1wibN_J00(3;F+tciS`%dyNH z@NoZtEbYNa*vZvSHINmzsAsXV6N>t&0v1EdRX9*RVY-%5@evu8rb}7dcSAYbNocaw z=F8c$4?h0#`R95M@#C*z-e?f)wEIgo-PV>FAS~MVgg4|S zbBvt&5Uk7Mp`??65A^ceuWzx8kzT3ejy`96&v+Od?)7_-J7hJQ_Sb`6=Rku~7Xasr zSMyqxEjaSR_!9WeDk&IT^6Kh#jjIbi_u0eo-B2ykb(tMk0cvMZGv2&MDYiIN6$oRl~JMLXyCjS5W`4fZ;DFe|$FD=+~PDNdh zglD_;EVIXMV5{+}TOe}!08bH6$S7N7G-hLYlE>l2D(cu!XiQY$h;TW%XKjxrp~H)v zvRO)-8;DH0GQ!0vYdKyybj@;->lGZs;pQTlOD6RAWC_g#?%A{s~Ug^BDafjq0ZI87oMsrSxw_6(ra+!AYN2hD&2?|oc^}sW^|pqrZb5Xc0Wm;c(M);R&Pg6 z5b+Fei351E>P5XYPG#<|``1buf65C}-YDlDyg*&r#SbE&&{~>y#*hkBI9YFGX{I*Z z2=ytQl!`ds;1ojeW%z4%y3cZr+hL=cBFHp!Zl$2$`9Z(ekHrm`oeHVFZVJmco%uRF znhrM!LD20I2yl<^hgw=W;6pFsELaR^kxQyhk)|dgGtgSD6J;JXI{ucGA3fZ|gFQLu zKRX)%RtO);97G=VuZjv_Wx2s#T`3GKSxL1!(x5aJ%x+CkaUssI%oRb(j=9shcFLuochmHex;5 zNT(7Tzr2d;UgTfg#vPgN;+k+ ze`>j&s=`Z?Diof%vK(5epaTmvf?2puBTwq0;)g8Ne9i&eflYFyzz!XXP8peSPi4Va zj_@tm52PbW%h=@mRyR>g`D0$SK+_3{f5=&YN}{xg8|7 zwC!-5-WRs>!ZCBBjomOt^znNLw^o@3Rn`DBW~-7}X4#n3ibg6aLd25#wTyginQ=cl zz9qI(EC-5SD&0#>Sq%6==j`;1MD4mxlImT1ZX1<$>dD>EucT>nQOjf*&~<+>mT4-! zv#=-e5?d=P07^-ckl%L}&`QX+*~^nrVc#DP$Gu+foz=~*ZpBgy36pFKh#i24YH{!| zNj735TF&OP$!JQ4->TL;jvvzJVbUKA>Z&2vRQOSdmDHbXRfD)LSv_f_P~L@OgsS@m zDeYlvIgE|4c!QWI3hrv+w8K|j%d!<}7~pLy(B0|{?rv{R&mO*h^OBISHS;V_tKmVD zdTbAM9QU_3$p^=j6=q!6JB(9a@5`$Vi`+Fbqgt5XfG`ch(b3*;)aNA4>A^rTzA$bo znQ)F*n`Rwn!rqo)ZbAQ2_@Jada`99~+`vsfkhWs=bu^?YQG z<3Ttb(}L=Du}ZQ+E4vf}3^+G5i0J*HFP^h}Y%JH*&xqwM)Erm^ie(Wq&|4M_sP6W!=g)z0h(35z(!s zIEI}=%B(m(3+S<=&fzp$9I|WnX?yE_0P5)PMyI`Jb{-7hWlP=H^Yh8I?Otaz8Z)w( zyNXY%=Fj*EW!g$rnw-O-J8 z=bT1%@&{)V+@`<$gGWu%Zoi#Rf3eAMAtF**ZEs6G8n~lDkLamp0BU!4O|_#qYdJR46xr)!TE(<$8nuw1Z#kl|it``eq>$0nc zuRv!Ag>jrO5@u^2u7jR;NXIZkvxkP96>Fc~KfHlgGkyk#9Tj_f z)|zU~fam$*90|Mio3F36U2cey0PfG(LI0;89y~l6B7EG;7Mmp7J{0n#4&Cy|`W-&z zZ8Z3I*FUmE$eV--(Z9tX(y~M(pxCJmFjW^d9pvoJ@5<2$n%Zi0JlPaJH}@bV+uM|P z+R{9imdj3z;<~v^> z!XqLxA|o=Zi&9k=Y8rLZOhN+jh>-e$7mxr6A>I+ch!?~Y4?s1jkQ%y*s_rD`$Z(J0 zy89i^Z1ceSzO~KnxgOaa73JySe(pJT%=TV;4c}l>YDy6mYYYuL$Z1>Fdb82W)G`dp zR!h$DXaWI{ww=u|0{4tOUdN;fp~=Uo0(64~0g#Fj&W%Bc-{ev5&FW75Otl!h`?g#$o* zNGZ`NAfi_v3?yYbD~uu*mB5k42ejeVl*hnE?%k)W^~!)D9NRu{c`!Amjkg6O zGzcV7Iz2mI%#W52_rtqoP-~F1s8)29GIHoG4l_&R0xv0EXYF}OD%;TYr?gxHF}@H2 zy}!TZ)X#b3mpqO_0sHn*z`B|mst43=yPePHR&O9}6Q+nZ1rtp93R#}fvf5W*D;fvr z;DT1!mF4Z-&FSee_*@lv0$swS?hXL|$zFEmn{pQWR1E_>cPy!y`IFfzmygUOlhU%th z51jy4K&ZbgCUPD~0kxC3!~T)FMJd5y0!kNS!jmW6`NTzxHR$_Dg{mn*!R3K?! z;%mo&b36?v;{_5HIMx)DkW{@%uQy3l;YZ2Pi#W98l$82bs&~ASPZcy|M|Lkltppkg zg*B}PWy8w#pl=;IUwnKlwWJiQ^>4_0+eGcIjG$2 zR9#%>`*HfWLGjO4*70ioujgLG$`5W}5bY$Z5p^yIiFgVUe?wS1K#y4dq(IBuMr4H2 zgDVA;9NEYKLcg&*{Iq;8ppgJS-0W)JSfKqNc?y6QcJ98y7y)op-|LLKK}&E0A~Hl^ z`00g|*xt_ZYS|pq*>BwFS5PyB<(N}t-SS&2o_pa~N)8+7Y~s6hs0Y@~whl&ac2klL zfcsIGNU7Wa{Rn7lF*Ydx$MKvX>EydqSxa+PSeT&HXNIN!dJ*m=(*dMf;mDQBQIafA zLW6n{52_5B&h!|fh&CVYV!m*C_x8id;P4yGm?T&%mk;u??RLWw$><=XjaAqC?OtPt zN>j-`JUct*q2XMdovZn1*AE#b0F`+zq3Y!1q+(M?-Wkclek=bdzJckK@dGu&SQL=# zT7%?L7^5Or4agH`g3Y$6qjLktRdnCuKT1*5wiyu&tukh9&O!3BAO{edTqLanBj&=q z04<`9yl4bX$*iif$Z=};OwA-QY{638eEZ!u>NeEh_Ho$UCbTfI31pYd;?4W~Vxj!A z^2I6quh8Ya*~*3g#b3Q4?8T5vaHdcW2H{AXWYO0c+Fr}FDHHLXfEkG{Tw{N6b7!od0bqcK4VHdAu5 z3>K4-+??427tr*#I$>~>`ghW|X4%@bY8}ts|9SmfAhw6dOo2whZZcsgii|HsUn)SYVPijtU z+K~p2{L@cQ<&8gmHs^V6tMr9xAHTm_FE?hzY6+=d87)A`C~!X6L#tOS=$i+Lg7pfm zv`!s^Oe$d8U%u=vPkxakqwliWKfOJ_FJr4ASDV6d0gD64`&!1wG%p-ZndH!^fXuMv zuNw5iA*wYFJsKFNl9tM`R6q|9OR=ndmVjLf^%O>7)>jqA`L+b6Do1pK;=2R5tBu=^ z5nnj^%C?u0|2qk!({nGJ(qOS1mpf{YLIseL8?tM+DCIbpK+8$i9<^UPB5kZ_tl6=I zt4>=^puQDA&NP)(?#<*6(NW{PXZI#mlB{8wN%+&hMXB5Yjm6T^s5CetpG19$*v070d=Us=u;+%>O{{y`@vNHl=<4Uc zUrUw8!xIC;}dzHx(M*3p=pS&BqZ1cTuw_Ze54*sh@uKfucKB$At3{# zmZsa&_V<7O%dh08W@BWFkX?TbMS=9$#&%#U!97mRfj?`_Tpu63ezW#}U%tArjvFU}C~?DlO2xc5jicw3>jQ_bBDYlwBo}Vug8I5)yiOGd1xm>Ws^-&a5wVa`7T~yV^^==&JE|_k@aWy{OR5>u2Qh-V( zwSOo#*E-1K`*?OQ$Z1k?^pa3mNI04kRU7uG>T}-wkjYN;OV&`w~Xedo#Gy4Gs|B|jCLrP z#XkG7Y%;Q%6vpn*<*F4P$>iy#K%Vc z&9$mkp?7vqNR|ZfwRN#GZ55*Fhys^;A{Q*L485&f{{}DXY1Ou|`cR#Q0Fs134TWr+ znRoZMa&K7~H&Nv1)gB+8K^Uv50FQ7Notwd8(K4RW^3Sin+5YHqL=8Oar?1A^ad*H2 z2{kGuC>}6z*95RLuvv`%%Cso}6K!<0Im|z|`|{oGj$-HOYLnYcC;&JhvF)>ukGH#2 zJ`U6klEoP0ajKs!rbMeHo-*Ui(4!xp71?rIXo}GgGNS4+HxEF){o>80qt`LJdbZ}j zm#5RCS;BVsa2}W=qfz0TzMVVt!X4@n4&Rq(l~(msZkEe82!W>`tI^R6_h1xg4dnCEv}(pNK#opvSvh! zU0JZLRitgULY*|b45iu$oX(T=kyCz8O0e~M-RjZS4+OQFql?F7wb{5)70hJq{p2TK zKwG-5)Za}qR%e<}%0tRC5O|@MtDbVTS`>x~lE>-}J#IOdWR@x)#Q~IR z`Y@+}ST@DF_2!X0q(-wqR@DgW)5%Qr@O4r#pD)zRR%419*3;d$-S0MVdnH9tDorrI zkk)ldhf)Pd%071M_SmwekZI2rqnigQ(4j0xQ@3zwM)*+8(wgu>BEON>JU^X0KbvUm3z(oitid-8P~{>iaT&Y=FPbHjwtEjc;Y+no_>Xw_B{y>O5I ztnw3!X@snwd`1Zhn|<;6?fU!cjiT7;*veY6mBQ0GorlwrN3m)8M;XV8?9JQebTPSI zZpa9bTGDR~t;&*|D~STA%{XHisy2pEPh;2px9@g5XDu@3DMLsP@cASv2cG-vWCSnxy1BaEu{QQEz1#oxkBYQ*|EHhZx7DlCp^YpI z9Q{cW*L6b3Xan&$*Od$!Q~bcegtk?Fk2Yk8A_}ZFifX_C(3KCyZ=%sRj+@$U4mHrO z;a7<)Sf5b+-NW=vewEB6NL(+(S17i1#T+U~ywR~DzpQuxb;GsxVgDrt{!YN=HG*~NidfGtlUxOK=rXo&Y&rt?UBY$XKt_j z2jDe-v?N8@2J6_x>409Qqs2lc3$)7u1JczNDFOyk>k1>b(5`|uSL6t1@<@)T*xCH- z%b!WLb^q|7@_U+D)kcW`%d4`y#!G0o-Fp3y6N{3)q@t?Wu>usUbVm*3ZRsEl7JTD( z%^xLqJ7_0JLY~1Tr7u*i9!AI>pMD>B))FV(lFpwGFtx|LSB^&BpQjyH%2mR-3&9ualWY1wLy&8OfJQ zi%Pzqf(&Sv4FTv3%A&ReDPXDO6&21dbhQI-3bdjvu}L=DImtazA^zg)J9>h+KYBUe z!x*(oi$Yt6@*^jU86G1!bkx#oRDQdnh@d=HDTO3V$ThHUjn4ul0J#WsO+(*_LPrjU zyLI`nMX&whczk&}>B*HaBqiV=o+WX^Vfn*mPuQ(%9Ig2T3q~S|P!b)!zm{XKySmwG z6qrp=a~(}1kd`i{0Si5O2G{qi?Jny&<0GPgSeE>XiIL;gxKB<-$z+@)tSxmEaJxzs zFmX>G?3;(Z3ggI=9mg2$%O^_ooQrk zLj?!MP1U)aIW+`K!I3othSMYFQ{gPgC@77rXit)s%}mgyB@bQ1@V6k`@NFFrsXGv) zj){6mh8wf-Am`y2`6X!GSDnVhmYOq|s^p{RjeP_{d?zT8?)`}>XLaA7K8#%YaZxqNvvk8&tmvoY0yGbweuPk|30lI3->3{pui-7r%C z7v!%?-^G2C8yw0f;z+L_&?z$@F_*gC^Vyu0e>fhE`}tz0&@f!T>DM-z;>jl1@AvA@ z+Bjhr9GCIA4@1ZfcP7}mb(Z-@esI^R!=2W=oe{Zz^v!OnaQdpQe*cJSve7eMZu39= z;!GFE^)lV;iY4R(?6+vv^dyZQ1NG_i#pTKPCm$cX{U3Eb7)o}?{iaAk=e3@lPqn(= z0n!Wg+jFVV=s~WZEW1};sB7}w?Uu@UDTT4R9)yQ@eR&KN?%7fJv~OwtIX?<7PvRg< zx&v~R3c5=^o>z9h?&;-@XL9nUy?NMD&%V~PSKj~I_Zy9gfAW*_B=SFfJ|D~<2T|F3 z$u_Hcy-jIc6lunB2)JqBLSGGkvfk}CyS?v6X)Y=14h6D3pwEn9?(_3$9QspojQZ9v zAg_ShGS05Hd2MV^jeZ$~G)VxI04E9Q1HIHFu}X{P{@W$ajN{Qa?>C&u+P>iz;Ki;B zkDp2G2EKfSzm-()s{8nL@p9LMkb$Zk$v&b0d_E+VX%WNV8wW{aU-|LxPJeU@{)%j@ z3fT>7@IbWep^xOczU7q~~HYG7H&E9c`N3LH&HUF=5NuqiM<3FP1DD3XIZx01hI zp8RHewwLo`d&Ek$c*VJZ#v^+1XQ<*q2+|}qbpI#mbca35g`baK!yB7C#jqi zk7(ZeP7v9TfFU+V8^%7s6hbGO14=^gVQe^5mrSMxG%k>51Z8Hc%Ko$e2>4;C=HyARbbmV4i7!~VrZ66l4v}h?8-LF3*FT~V@VM8)ck{v75j{SziiS`9z@Tj zj<#zG3vGI3bWR>C-MhLVTrXIymhw)s*^%dadA94gE;=GRDf92@jY1h~Fq=}aG^CPK z%AfSUoCdmt?skKUGpGjiC6O2ZCnjr9?md zAgy0gs492AzgofY{b7eGB%yjZy4f>=SL-P7?252VbDHwGggs`>J~SxdCn5m>A}^Dq zwuwUj{CFPtoV7Qebw7&?N!(u}|_uUm{5 zYpI?JhXsKQz3EXmMZTIC0Y@ya@fx*%h6`RDM<9VFrIq|c$vZJX0 z9);{S@{&ANm(&taX+U!GcaXP%n#urZpe`h0Zcc*dyStr{9p}-Q#FG2FVdymC3M6A`+2$L0RzU^k8DzcGbWHLR=p*a0cB~2T_$n_C zFrj>)yl2X+JVFW3A>a^zPQh!tD$IC@vKP=;faeOtq?<$zqbTeePsz!0ZcCw=17F@W zWval?eiYW`bQM)`I6eYL(kzd*xoR;;!V=N#l-YZCeJgwP>gv0$$7E3Bw03C?q6e*7 z&aK;|nEY7oL5L(9Lm7$RBOi(%l8eBgiMN;(S;#iZ_AT=)aGKZ&a(jF+JKAhkW}`9@ z=nl%3SixVG^)^3!7T-!L&{JVr{gw4XFixP%wU~}At2=D#%0IVDBpsW5dM4F{nZ8?^ z6g;f6U%in^qOroQCayn0#rVUI7Jxkz6Fa(7s?m_72p&LF)r~zsZ z93U&r!tbu{zJ0&@`f9sNo1UF%4VbCfIFPOT@w1sq+&vDRNjzL`!CPEz_JeB0V+KmQ zOg5*SrzBQ0{*9{mF3(h3t_=U7k!{oJ~|~P%eKmisYQTUu~Y9 zooSWr^);t_3e>o^va^7e7(VOLzrVbj*!JZ8Ed8okNgC2yFPOs0jOw7Yg^oCItH^*H zg-xN2UA04OGDRH2oEjTxzN6PrW;JOy>_B@K;W@1M`nyJ64#i!4$FDj!bo|JvvPQD1 zgXh6xn1~0ac~)IoD&;JnE}3BeKCMPT2~xZ3QcJ=hcB7f6lS)Zrv^~$Z0p(01i$p)YS3gqtS#9L1yPhm|($u3n8$_h$+r85IhNQp%(Q#o_waEzlw z{w(yhc0*%c3iXP{kedIfJ3~#JdI+R@g$cOw)A?iwFV-P(MQEti8Uq_9Hk~TG*saZ@ z2_>fOJ798owh3JdTSQ(1QnX!z-{rJ@Do*tRz+2$H!2&k3qTG&e9Ap25{%{eZcZStB`luYGv6}l9oBaCc11MZbr#O%A^6aHk2(IE1^arf9vhq zZar`Y_c<*Qt>n{}M>c2VKn%f}wq+FsuB_U3%IB^jVs$HLjr<@OC$;=qXd*6~XEu(4 z074E?$Y!7Cvgguu-M>tk!$tiJLl@+7acEkE5(c$6Zm-<3))3O0O9*LzU9on#v3K)2LW>k`K4|x?vu{CbXb`Jv{ z7|F}&Wwd|s#*1k@j{UQvQNn6Ya!l&7^{Os%_U!OUawp}`1tE;fO#c4%VO^Egd^VBt z5fcU;K{}3rQV7(<+T|wIS%fOFg? zWb+aTdo9Di{_g!Kj^rxget@I7BMPihR*JqxzN1v=drWDo4E{}R3?R5yPTKUe!7_xB zm8Ieb*cXyORg}T=(EU+fnU-mqF4+p6Vg{70YvgE}H2DB>nG#Ij3Wu=W+c`W!r6f-2 z+tztg?xX@kSd^GGdlpK`iP)zNAD2Br#~Hw-=tjAOQ|uaTx&tQQm@`n`)*vZdo@{L!jHBBws=$>1+gwgw#hE=gRTu zVEpNEPyot)$y!hGFYMa1(BhFB3QgfkwRBw&BC}dMqa7LLjt=|kj+oh|EOJK{bS4EF zi1e0{B0b)?w)Ltavr!I6q0*{MBA7CE7ek&Euyv5Le7`ZSmz^g6z_Q?**1F)v1Sqte z2h`qZ<4!kV=3xrpCYjt-0&%Uf$j~D8k&BEtn3o(=$JiG8R%oTSHH9-kb_H#s!DqN$ zvv$Vgcv03_?8JoETfNIPgqGH;l{WR|0Wa-O9NU;&#Gx-KfZUIF_j`G|zGqgBPTy+= zX-M?h_VwM)?t8SdV$_+8{!tATY?vI{1`w9C2GWA&$bcYd`zGLE zOPlzr29p)dch_=V`?)z|kD_z>Nu!DIvt^}5L|3Hm$i_S@yY$Cz6RdH^*t@}-=V*mQQ3 z=%GF!q1dD7(Fy$SapbKwcq=INhjPu`e4HH3#zQf7x$xfJ?+P>-+I{Ohb7nv&?(rW#4-c@qwvdgx(!0uh7xqngR&8#EArIsR;uS1q35`6M4r%<4wm5 zj=zCxA|xSgf5eVE{siMfs)@Qvtl__w7pvTnr3GNVt@90F5R}We7;J!VfLkG#8f~>G zZ)kPHvNu2*itEFEN7kbs1o;CdoM~Q0$%r+dXOW9XD38Smh259~3a@F7qiaQixkqS> zJa<`*5Y}NqAn!hASEST@)i&PNHZ8x?CY3iYOE}_Sqk3UOd>MxUogBbHB9)1+WrAjl zVH88pH!lcNQM@W9rGJJ&e{j`vb;AVOuMRlXDXG=Res@{t4~--NwFG=15;``h_PA1OcaV2))gGHbWr z<#}FJW$ey^@U%3zqvSyR-06d1;?=mtqq5wDDvA+UmQs`@KGxA%EB?*FRqHfkio}sa8uYir_=lh zo3VhBy*9|TN8V-{ZV(pJb!BgB33`W2@aVf4Jk0U7= zpob4t*+_OOd=_wUc=TrPsEEetHHiCPF+Q2Cv9X&Idq(4Jm$y(N5{U@ekXHdta++OT1v0$>Kc|!lFXBgX(Uq9 z@Msc^DH{*BO+w$LDk)%N(YA*kADhaZ*f?+fz>C8$FOBrduV3GXK2)gWOH5*y_#j8p zuJ5jMg;QVMY`*y9bg1uY$Y$f2j-&A;2`#wh#Fbi%O9ZnWQ)h83Ex(iMY`rVq-Rn*`Ga-;wV#n;PyP7@l= zG3C9J$c@;9N;TU-_tt81lQK~%ZTDe@6!P4VI8-()a_hf6{ zud}-qU|(|2wGXHec?ex3z7*@@SPlcV0qPJQpib-t(TGd8auqVb>h4Fo=*OGcO_XiM zpKChIZFjy@oTrw|vUHNDYy< zRYClxtH^cmv0EfCofdsf(QdB`34Br~`Z2_?6rUwOh``}WdWGNXRZB(Xln}#`aONkj z#7c=-Qd+`}EK~%kT(jLDx%{qQ{73&CF%3=_(nJqk^Nv&%PkZOC5txOKrraQ@^0F+W zEnP63&gH%pN^j;I9V9iJ4-HK#I@Q%?ZRzSPk3QWBr-IatBxO{ULPTUfVzgg@QlW|l zw2B;e3RGez1@*qDWf{Z)B3cfq)`qVFp-(=o;y?0jCzDA>hihe1TXg%TxRp(xNXgaP z9Qk)8mHp+5kNqH2A=3u-0XF-I$cj`amq`pa`*lCkH9)4&dH{@NZygLH)snrb#{#u2UE^v8rf*-cPxHn2t6dplm5~N=}Ka+=& zX4Ms3iHi3RJI+XYA`Uy#aslVZV+KcGa{+mqQ}Vj?TV#DY1OEa;&@h4!RJjS{Q&(GM zEZWz%k~fulDE#S{7vEoRw^{N1&CW>6o6j{so1>{za<-JBkD81_jt0;vW(_Cv=>SI3 zjEbmTw2gh#r#c%yz}d0UDiKO*yIZdzM8nqF|;F$&sg@NL#bE>1j6&HD}m6L&sg){KGs5-vS_2Tf0|) zxsS1pJh1$112~YCozoE$N~kcb?;JG;xC8VlLqTxXwuwD63Tc~=&xl3jIw zLF$@nNj*VN_D>{BMi;eGc5d!5PpoS7XzX<4FVXr8T$AwP7`FIoZByBe>pk#R%Z=on*4OX8rO~;GxpIrgNf3tKzxVR|<5u>k7b8UG+q#CouoX^7e{waQuzRIl z%MNWV*(7fYMpD}J1kxf?;1~Qcs3#XVkNLWu-*h6qryCFe3Kz>M9-h>9o(TrMRO=ks8@qdIl0j<+4m_ z;eddyv^igZyXCL`&!5xGc6DCM5XB9l#1!VKF|#v*CTwjA85 zPvOASqgGct?W1B!#dZm7X)QO2J-hd_NTJJ)*_l*!kkNq885(o)$MVAtjCMRo9sujm z5?0!cphy?BfK~+_Z?WdV#F08fxGZauwZR+~YvK{!RC%|9qF3pt!+3U%;YS6&&;41XEM;3x@2djcY#hNkXf-jEgCSpBE0y3c# z#L)x{s<|AVXi)_8m_%O;p2^S)#1fJ1+;gE(QYm|x8d8`K+T`9N;8x9gn@i0oB_Xh}+O=6INb`QN+6W$RtKS<*O>BXyrk%AS;FkW_d3 zZW?>u+N!S$30Q5pZ`{C%rXGL@vCAmdO5kWJ5+1;(fxZ~m1g3;?f>$XA`+aytX1Awi zL4ak_R>X)ogi{1ayEL(CN_F>RtTF6WTdG1oaTI}76|KTIyjFQc2CqW*YVAWPb`;8i zfmSb(Z)gjxjy$_s0c9lgVgORI5!>;u^Vz_>Y(AaMY%57dP=hT&H%yW-O%^LwQaC@$ zsz3+;RjurZ)Ue3}Z!NWe-*~Be7X)Xcp_c1ku3r8ZtNv zK?`yCqG^*i8p~OmN*HxLxyP`sk=uso15@0?huHT0%ZQ8%u)r z*{fsy;u7iJ-!19s%@%&>kK^!!q7+X)x<4wm z#mRI&36-^TP#O@523Cuju8)k;PyaRaQ6}Tp^e`ImEV0YO`(jccqql61kG&0A3ij zm9Aw!tA9GGh#r)!{Zbw+1T+}w7=?-T$Sf~{%BW%~@GMrf_JNE}78i^zu_kLF6u~o5 zk;@*tcX$jEvZ0T~ziX&6520bo@yZKg->oWjlhGbCnnpoE1*oc(vqkpeB#ag2)LM!K zwX`Udg8{-9jfFNN%cVFB$|8fqVn0qORez(vxL4&RIc-!i5Mr)uho)~Xn_y^o>sg0D zCZF2Wv|q$6a4e5_eYXPPhK9I3y$H1M8Wk(r*^OEkTkG{|u{Z{Vy=jTtf)-;6RY|Is za5^pvx>7NXrgCUD*`gM1b2RD9@hpJ}Ih-TQ0apZ#4$GPaqZXQ|nbsFl!@!hL(y1(i zAa1^wNK3vo(#BC>(N!GDJtUra_`YtQ{e$DLzq-nwp14xrNIWYydrUQc|Ms;<^4dTi zlza3e%CvuUF;o21h;|GEcA+qccB>e)RFRu)!T4`KKbd@VIW?kDj!lk4Hy%ZD z^=HR3t@U(mYpNm#jC|rYRS*wHqL#^GR2mB3oxms_x3$rvV^O9$KU$zk0{ik}>bgU# zez?0WY+Q)~*`|Q7NtzAN4+B@(?j?2gFi}-aD~H+>q)#~Tb6jnUhfQ{cHXOVf`yQ4S zx$TFZXb&XB~3ba$@sxt;$%mdMj31Yyqq@skqVt;WO$=QI1lApHEw6SS=xvizT zEI>Sjj*;MEKef&q&MT=zIu4CpD!j%xyQ(Slg&4_qrIDP)CK6|LX@ijq}&PSsqP7O1YziIX@an zeSJKO7t=@r1Z0({V4;pXFkyyf&X(fknf*v`kw;+hoY2OT6*${lEFPYl{ny^&XfA7CX}kdl*C>=tXC~(j&`reD68b{_5ET#r5_gv zdbSZAGU+vOSZrFa0O`n437X*1q8aKW7}$B2C;0T^X{7Kp`K+(LTdubGwbX|D;wK*; zZ}-5^=VhtHCi(RDx2uz*soZ)cTuL#uCeC&!^i*>Wc+RqxL`IGqDKqur4Qdo{XoSTi zbSEP(fnTM4b(g1kv)pFew0M3tnNJ>F@0vQ3|9vRZ#dIu}eKZ-*$K4V>+$H2z$^|R{yAJE{&WdvbsfQ z|I9l6%3fWyyB%GJWM?-;OS-D1jV5)JFd+$L4`zSi*u{*MXn;mmuGf)}0#GQFWJsJQ z$;*o7J`BFLaQ6a`)y3QpCdHl6M<%r9a79}lMBfb{i{&AHM9!%)Z6$2^iR)!qsvYJm z=P}!MJOVE9^uR z3#xJ%ksFjY7g2I%S=9kAhUS_@^Y{PF7w5;LLAGJ20+@p!2i@!|MXu-%0dpitBKPVf zNvmF#BuDjJ>KxyPs&X&YhrwS_d5(Fz>xcaYgys4J9KOST#bO#Rrt#nT z(W$Cv9TsDr-9a0zkyLIrpC|fuOW;7Ax-N)%$5qXzlIZv$43m*C>g8csSUSGwB$1Km zObF}a1t<+0H!zmU!o7f4#fLUh&rhKEcDt@7qj)-so=hS9m{n7`-t7^ZQ5PX5xL){p ziy5b78QeT%5~JBKZih0nx8s9>$mPl8i&sa7_aCD-IsdFqzMbr{4V*tdU{;w1P+>LC zs_+cmMeBD_`ra)#^~2s$#TX4Dh)_D{tiYs6m#ymU#S34eri7%rP&0Bg#bm$uk<)iN zNy(o3t)c>4t2ge%DZuXy8;c5qGo3zy+-CQS2jR~*D0#MvC7yPkL|_&94B`oA4Nk~W z9VPS{-HNI>4>78$lwCs)PCdG9xmvPbnurpEZKq;^Kt)ivP6AwDso)p!EwXhp=pcLY z9vs!mF;SBk)>4zs$}4~m8n&+G+gnQ1@VypU2fq)sj#(Y3VLka-6ugRj6tjg>L2DE? z2y$m>9!WwI@nxh6hm<}hfDkdrgT`)A*C{&cou@`;PC&~W*MbCtZySh=#rZ(haKceh z>reH$7(7)%uN^$&(d=PIQ(~<|1UbbTi_zM_z>&xdIecnH6C-iK0IPT(RK(Qjflu#x z_UEsfzmPA@oLOR~;TZnauipK~|KPKR_GN20-$iI6HJxhp4b-+#N>mMqfr>?OHEe6vr-hu3FK}SsYwY1SRwV$Cx6mL`^;F9#^IS7; zwV#u!6rDThb1Q@xpj?<@xYGy!XI}XmO?8zMrMb*M`Rmsg$3b7hWMMSMT_qP%Dn!z2 zJU$bZUA5)gu>S(OpTuZLuaosEiIm+tbrbH0dD%yoGh!VAa!s@Vu{zUp?9{u=?r{M9 z3Na8om$Nx7Pn79(JWnJ_+^@FsK36vn>un|lwbVG@U2h6@mz@4&FufagGp8eOnz&j4 z*+%otdV8}xmiQ3_8lX36VResbW@oh6@oEZ5qvhZACQ=#)wKZ09n7G=NzkYKU5Ft%B zXu}iGj%pIQ(~&FL7-nw0(l>NDTU9~PJ}p?;hk2mq1$<2-7d{`$2`%;bPMs`zh+IpF zE^w691Y0ANGsHjshI~)wvzJFw@=LfJOpnxp#MVp#GY2UE3pExP)aVbKVtA3xhXV~; z-4ZQV5~Hh!^?F-5t$p-cxBASgFRjrL%&8>+Wy^}NPg~vaG%N!TOca7uH#U|3lvQ)k z2W3&;vg2M@<=*lWDOrpNxI@B-0tD&&Oj$0aI)@HPzy^@TRuF{qAo&1HkmGhR33E%B zeRd^bO6s7MlLBIhI~H5QegBNdFAoPKM^wD-Z1%0GI)ziQW(28$sMP*b(>fiFDk;~1 zf2%<{t>vd6*kJqU7lN6g`L2Z{QTxOycZD)Wfj?XX&IIs1OF1+9%Ct0DE!%_ZY7J+% zuA=xZ{mm8RZXmqqlm`K&oIrAv`b+ur0P|vSP8*Ak4i}7)!+{Mvfr8=cCh)L?5kOn* zP6I}!CqMX-RG4AA3tjmV3O*pxhY>QfN=ejwTzGVj%jCK3t;ra=(H(=p(O2EG&%56_ z=2#zO|JqH~9aUBo*uCn5C7H{Bz%<73uJh*II?d~^ua?Bqy`j^BmtZ zj)$67Ye-se_xr5a=LN~VW-RMGn&zp=Q(*VbV;^Eo>7#M;kb*!?ZP0`O55t=oP8g|1hxssYILVD4_YMkk$!^J8ax#UFB zW&hH5{aj^@Y&1k2;Lptcxq?7R&aa#&w41~0Zu-aaggToG|ZVm0OVU|)m?p^RB$NGQd zYgxVBk)Fff-xZ%;hPvE0+ubAy_j$A0N=?wnij)xfu*ppFW1AyuIu6x_PpUlmg40o8 zXf8z!nR6OMwrq~B_t+9D0o)gemL&VC-{6xCyWW**!fc`9_V%kxHqLLqUG6hXtTD{W zs)tQJ_)r*58QkjKICSXE<0hf0kGkH)NUm7kEe@eh6-SV@(@C77bE%GN&qsm0KNP_L z+5(x>vD8nKX{+N%I=S3tyR3SDzn7Y{gpz?N5>;Ybu7P(ToK57+0^eJOWE5)9pc=4; zu7-U;0yTyQeCoKFJ~)-~uL@vH;**<)%|6TTR@==k4Wk&CxT?K=sP9&p`)F9KN?Q`w zLiO@FKOSEkkGS-o=y^0CZI=tK!=i4y*QT?ylF16vfQT? zag_ETv!j7>ocPaACsI2Or&Q?xF<#m_ay3wYN>_i|H*uF4S zXD?E`sAcrF9PkH8!EsC`MLTE+)Vuwe*%_1iWZ_vy7P{<|5$50s+!2@A3lL}yg?nT{ zR;{7)XPgs5k(JOZhANW@cO(NA%tZ+ebvauxOt*sLLeKSTg_H7-1D#E?c`vdXC4R_@ zd=F)Z;l3*vR{k>{1!O*3XdpmH3*XO$;4?lQ!Yow5Xlo4A_hq9=5LUeJRE-wVUEQHC zD#2Fbg1lSJnh`847eimVq&VuS$xIpc*D%nv8qf8Oxjm(_6m4Zp4EgYD*yPgSfP8gX znyP48!aPp9|9DUEGa#mnyGc41Se8(Fz={HFP32&W0zUv8w)Q`QM-|eR_*<-7$q><} zubcPoMHWeR60Y&(MZB04%D3VB>R4 zIGskS8`FyyTMGTvp`4UVN$i6h7kGz1FELIcf&%A3B^A<=~}2t!C2sV%{AF*1j}ff(QW@BHZO$1fM{fyhtUH=Z?L+w9ZzHkIt`v88oD>Q>f{=@&n_ z&R!IZWOXpfZ?}%~crOOJxMDJX{PIX8UWdMM6F)l>d zsM%Tq&?yM2T#i9GWLymp@>$SVKxtzn-v%LVJ*cxHQ(COsD>TdFMhZY!1Y2Hq7*E>X zkk?mRVH{H}c2P%RAmsB7+hmqfYVxAtSfr`TLh?vSWF(+;#H{*|gQeL;*McN*S=WT46UV zP*psOIUr&gz(=hr|1ykI(ab0(I7Vxn%S}r@o3=}GfTJU(GXi97=-_p2NuWhU$3x2q zct}Mom3HW+l@iZEJBME3>7QBoKao88gZ=aV9u^)^pyUFi-?I_in2)DE2PvR{^tK)B zDT<2Lc3psy=~UeM z@`k7L@Ob9y#_&C}PTD?=l5aXC>U>5YM4boqKIBGw01{wj!?~w6D>_Y2f-t5JdLujh z7hkATU#Zrt2@BzFv4%vW%4s z1f2$`a~K`LeA^I!%18&xXm;@#t<2)%PkA|9iMp_^$C2+zHW&H?N7d?XB-yp>!;H*t zT}xLJnbnvkFlde<5?UgD#5PDXAK#a8l9}xl{d*MAh05zrWqCm|7x)9 z_W|uo zKLaS9fd?Wz(WJDB(f)V8?Hl9n!2hurR>`Jlb>Jf=~=4`5e9-{vVdBDVO^eDtEZFJn>Ok286qE1=rKbnBJV7M}asRZEmgyW_(#bIZpKL)uW_b{D@P~Y7u zC88?h1L2sjKf@*?*tN>8K08XXEcGGwrXi!zQVvH9eBnJ{&pi*GtUd2>C~#mI&7npH z8|13%tu{?*3%c{zXgLZW<=Pa>6Qa|~&QtmBgaoax8DeN&E_&+1-_yYhv zF;=MlL1sj8>OCrn>8wPqqyz$fyDz?eyOv*}yWl$RBPtz@HYs=mDB`=%Pp3cq zMbEzv^5165x8=_9A*;}_zh3212{{mKpiU*-D~tyI0EmaCJISQ-GS-H+RDzI#NbzmT zoPB-5t01kV(`pu>o;H#oQ`iAfOQBU;0*4$?&@CW)PFalXI$N-*1x~|K!R1z0A-njd zJx_$RhuYBU^=ev$ccL7tTOF&g=PiHUSap>_d%{vhYWc*xA|AG_{2;WPSYpgVjbseU+R5vwKD z64_8}!?E4cpJ(_+i24oel*wXLd)%QAFg|O>#NF1O6g(P~PC!kPDuQ#IF-CJ+=u}G- zRF)q>I)OYC2b#`yTGkFv8CmlAK85dvoCLP}b@!uV?{5xw7UeKe(jL!7qo^H9Cqj)z zY*fXA2=8OQ&`U7OCRy)`ALbdu56CGkC&=5It@D%}(r0b>&5N_i^OFgN{r!}UZyvq9 zS?cc>vx$Vuqv_~_4{F-S-7F;aC zA&HYj{}*3hy*N8op9_lI!>a8A($Ar$nCph83weq@9ZW1Kd|#Y5zkc%o5bqK~DMwQ% z7;IL%n`JTloaZ_pWQkwAI{xI@{P6M)x$A!jl43|Nax=pqhQ|^bkts3hXdJtt_hoeS zWei%_Ki$3i=lk11<`k}iyS69dxL&AeGfM>l9v^+xN}-ppu@@$%K`?f;T5QS=Qm94K zdxbH0IR;?|>YS7z%;@b5ch8*IY*Y~6!ETjPm5htRXBAwgSN62`+2Ay=-% z^Fp;+DS)EZ#2$@*TGeA2Qe>_pLm1x??b6QC+ST`z^4I}~0>AHubP9xWD9u@p674)4 zcf#fbONi|zn`s9L&j)*{Q-v+#>OPBaX zHAb`&T#$kt&n5|E2s^8n6VS3T2d|~UCDn=!?vYddjg_ChUG59WA(ZgWpdhpgHVoaF z?jTx8(f7qCCso~8PdZ<=E{ypo(vwLtGD#BqWQ~Lva1bP@N%9-0$-A8Y1$HYy05FIG< zrQ~xZ6_P}iMYPd}KtBQgQUFo^=@;i;U#-5o-pbAU=DIqR_8%%f*;=2!IzC$f46z`~ z{qRckCS(5V81ZPT#XP~^a^2chWgKp$WFN(|yePN(Y?tQWyuFbfI!+KzzqF35+vdAs zmj-nUa7d~?l?YHj3O4Qe;?LW8oZk47$8 zel3;T03aYg*+wm716J-D>_SI6HdDFYCRV4|S_4t^0qZHx3)Tgk*0DLGr&8=2$qh8! zjAneBLs+|+Or`*lR+#Zirq0ntt9MJ@s!)a@|G()PU_rysaH@X`2n>8TkkMcT$*`eFEh_AG>-k4G6T;} zCr7km)}?>9On>vuLl2Lz{`j*~0M@bsV%A+}FeHlnK0k8Vois}7R6DTj!$ME1C-AyT zD*4IFZtnNG6z##h9)b!MFk-$t8+!>$t*hI7o7TEfW&gZ5pALBh@S7;xad}cwoy@0- z=fcIWb|pQcNGfm-+f{vzh=!EJ3<*zHx7*u?)bk#D*1cIFwy^}4%agHWLC5n%YpjRW zcC$}a%b~yH7>B!lXdP%j=;g8VK-c>~O4rdi4u)oyeV}+nZWHAE|Hbca?pcf zG>$yujp+5pZQG*N!cg_-~N! ziHQ7X6vY7|nyR2F4x33Uc9*?ct@is3lpq5yOJxn!wiiB&w#~PH`TT668SW6U?pE7z zZ2#Gp&&Ehhhb2x?1p^9MWa8XWg|`LN1vmg$GL<{*DLKN?9~`0?|( z?L5(F;7Mh^*X?qh=B?{`|BA{BSbM>xcc*(XK_A zW|NeiACD!Ciq&z_b>zY6^wWBjW3={JEnh7IiR6)raCq_aNklI-B;dQWxKXn*K4?kS zPG+%=+$6KRf*@k`FP~RPfC*aH+Z?CqG`Cyhv>HtxZ$*`ZU){S5SO%!V4@-`MXyW!g z@vhDv!>;}5zxQ9~1s>;OzCd$Fc3o8gZ9wZlAKyo1@Gw)6Y%u3qEh&1(blhV>Xhj~+ zWXqA;B-<^k+q43lkHOBNkt$W=IUZ7HimIk_9|z3x4oT=UmN`|02^>)c@SXr9l^G7o zekH;}HqWMnR;T*T9KO<0k`OdCL*!X%I|g{oXaanEt6iofFh~2opx(eBJVdQ=b%SlS zwZ;bfU?vN@`K}!$VP;^AW{s+s$kWD>5Qb8wG;y5X%vRpek;G1yw(jy)9b(Z;#{+mZU|WSYtWnj-M{8qNnMeeCKR@*Su5azj#jN&)N<=9|F=u-?Wx?NzrI_oHo2I(yqZr7hIDFLe zJB%DQsH4p=>8CJ@d-x)y4YovNdy?H)_TaI8XtOF8BSCXFIMeh-o(fIULRjtzxqIWY zMI!mjK3jq?u0{l>Zm9WlCq@FBPSSpigkdFP2G7=aZ>ynN!E_lMl6{*u_a`wLxl)t6ENx| z)>f6KA))V)sprY&hp;5ospJ~>yS;p@tk^gTRO{8lte%E4>Hvyl2kzT$prc_t*9HiE zc?UH&HgI*I^?;%x1&h6E)zqP26EPn^S8*^;Jsfse(9Pp&gXx)V6j>qdf&Aa=ZD%c%%CwjMMEN&^RA{b%$dRm^J$olt*IKym5tAiCl3(%+6 zYVmM;naYKTB$$bq+TqcCKw>!9KXSTM?S5ardB472rGwhR;KJba?@IIJ;MwUoO?TZv z*JWVL^*nq?2k4j9v<`|6_1=YsZpe|6#Y3tZ0+jrr9~kzc#vs^mEz_Haoe^#txGav* z5$BN6{p_Qo7iY*=bjqm&gCR~)^uOJu`NMigLGUM>7(U-Z{tcs%^saf91CuCyAEzqVcV2R z9D#Y`2E@8n)agf1&dUl=d*UO;oajMGy=iHKO9BiNnj}eZFQ|v*C>y{DQ125=F8PSu zf1eGJ&Vd-IMdSFkK;k3yzuh1|Y&ev3RPv8VbDe4{Nt?862G?WL;Q_ih5{~5NHu5V|Z@E;L-TIoiF!sON zexMJuT@?88&SVjJWL~=(@-VUJXxKqKs%;pwR?*b=(Tiu@6^cZAm`wQqY_;A0_`m)3 z;wV-HyS~n{=VLjI;i|w=y$>0V)AW*VZ?Bg}YFAp|d?okeF2f8r`Pvt@R2TIDl7cU{K6DaJNplKe5x;h!f#x9QhhfS`YgwFG9`K)#hcP3UWSQ+U_cxiRQW8Er70m#`iC#G4>@*`+BDG8;bRu!nQh zWf`HtawtTFQW1?<8oGi0!qy!9GHni(&_Yt@70OI;hdUS)Sa9XBRiBF|DMt)EeB>=g zfuja+bgj2zNn7aFRkOwd{; z+>=^Qs;6-hoF9!OxvT5;phWEkGkR8hn33(XVgPVH4Mm-503!jUcY*a`&zqgT60=c^ z8dIwGJZ&WPgT+pAALuzd%>?Yu$9Jl#OaipaX+O2VaJT`{+KVQC&}EmWoTI7GZmAq? zs@=}ufpPA3)>^84Dn4J`Z12~Z-Gk|$$mURym@W{GAIicC`&9%Eocx+)5>7yqN{cqD zy=~^K_N`-o@FrH9yZP5ieKj6GZ-eJ~@I13>$4^|zr{J{O0SVFj6?QsFv;h%Ecg153 z#Z3ov8Z_-ByOY)AImY^lRT6OB@*h0m$tQt&p+miy5}GsA;xqtDHvoUPE}bBj|0peI zk$6BV*YzeZm3BzLQD}NYDk9ws2wg`m#PgV7aO4bX4(+)JwzrLIqV0?l-z9oQu7@ra za)#GHzjo?R(a~QX6>G=#e19T!zT-pSLGHJatZnl>q+*l{i1VLdwcc&pNH19Z{J&FW zON#<~K<9b{w?oUu3vi>AyF-Y)-KnxG`Sh3%lsRS8JT+LXFax87hE+CUa&FDLfvtEEYr`ZU4!oWpQ-vKXB%lEG*i ztGrB`CvYk~dAtJ*XZMu5XNtl(8#fSVwVl^jHyH(;Ay=@^&QBK}&OB>hcDL*HZkZky z!|o$k++f9i_UY+QUL7^fW3Rs`n-As>`+f2LeyJ&&VU;@{rc2tZ`q0v*dm3arxmUZ* z4)Qfa)coMBwDI)gmy1^yGrc(yAK%_S{2=aGaum(veDl2z9?Idx%f3tVdbKZxfcU}3 zk@MTGxA`~k)^49Fe}Lf{zF^3rPZ5QbtEgF;qrWIw6`W$L>f3j#|L^NN`4ow3i^U?2 z;~)BxV6ZS9%L}?~*Zs;WermoVAQ*~AmKhRwd!Yh{ z2oL!VsMcGW3aL?oENHF7Vt~9l*{C~;3q$ps@z|k)F!5o)Nm1L&uGBG12@u_YUg|XG z(&m=J@MTXn1ej?I(nV}kD~n8SqaTD(L}f&5Et_hdO~0d@83~u$w4(kW&aVQAk|@~W*=I)D7*b6KO%T4~E~uhZGse|3?Z&C$p>nvEolf^smR zJ)ZS+0H(>pHkD(gUGMe{MxWm0>0%f!B8s@G*z11v{c^d@?$>!m6qRiqYMCHCl}nTZ zKZ=5jV|32Rc5r?;a6^q&mmG3>Pw}BoHhBPEu{#?D+IkyYZH5i7OEYNIq}6&??J|gA z5M$XLwyAZrC$V12y^k(t09g6XpwMvmZrZz$Fd_dk6K_5+tr^}BV_#Ji{zDh9w^Yjc z)i#%iz}83ov~}JWp=~S0^%t*BMs&LOJ?95#1c+b4vW_EUWcDaXTt|i)9K?ZHmfDPIrNSdbic$voVgcRMN#8XfV?c`KEU#-h-f&N!P(GUEEU0p>GMVIdL|wfq8y8P0?%r*LGWiH7H}n>Gr8CNwaF z5M!gR7XiuHLI}|h=+%ml3wFC$Vg<)w26F5sDPSHrS{BL~LcE2$W0SjTPE1{o8e!b6 zh*AD5AGDDjHp3kuiOQL-X~NeZC+NLsTFi(v;QC*SAAT79AN-oYvu7*D&q*#g~ggp!!4tC?B^7Ih$;`bBY&f;bN4 zFby1I(oej3e+qD1Arui+Xt7lO7}E`6)vpq;(SM?PI_eW>z>cg=E!CDxJn!nJT6XO7qTpFbph*+VA zPtM9>B`bh=;dFJR?vNOPgD9{hlPh?RB7cVO1#q^!cUfXxu+W6m8q9v3UOj^h%OKU$ ztI_y!9HP9GZ+-Oe@P{7_*BMZjPZ!aY#1)!gK@sB^Lj=1=qiM927;LlxsUm+1gZK_V zIhnZ+I^L}>d;0qN*I&K2EOX1t0^j-Yxc|uqd)qZpR|NGKp_xaxji(~r-zcYc0@2h# zhx|0%4P{|DEGmIBHwsdyB$JutV2EN2$tBU= zYBORl83HTHUdtg$$|sx1suu$XBst_?51AAqsXW)APfMbZP?w0X4`|!WNcsV>R3^bz zeaB2lNfmP~x{Sbc^W~EKJPcNLic?bQF$;2N&OB9ef~8AALKWVV%(m98Vqyb)oJ1dY`U_HbHmbGKnvpXP8DG9!Myn{*cHgoI z-S2pit-wR$Q~HzT_56uwnK-A<2w{*n1|5S4PXY1u&~eXNb5K-88XhUWI-9(FcLT{3 zq~gG9p_-+fBVUy@8T0y(;kqXi6lc9bJ4`-OSCYX1wxsx?xLxs`TiQB z4{F0f=-(S6K$yH#R+Jlhq zgcYE{ifMFP4h!j^F}vSId?}i-CT-t?^1jo8lEz^uUBBbQIb4ia?8j9~UqLB4AzN=r z9;;Qg_)NCie$eW4IwTP+QH@9s^1Q>Ng9r_tmf>=x98<7N8l&D;5GaWi{;dV11o zwU3XFgP`@n2Oq*#3MtimHtltL5T_tbD|wpwhhq2E-5Cse{ekRLH_cCN!ySZA#JsmK zMl1hv5xmcqw)pWs`Wag3VoMv_G%|5TuVPzK<>rpNOf0Dl#F`kmaA8T~*vLdf8wXtLRkf})MWJ9DM>eD-1Nb+zeLlnNr z5CU$R!r@sT*+JbaiCu`6a{?1ns+7iDoeIRixNu~|yBfyzA|@XQf>KdiicBalb76Ho z7UxR|VL&fTV~keRN+)z6tW2p*$Bu5&6)R_!mP3MzIA#=LGM%z?gv01#v6j;${480| zW^w`<(eGCfO5+T$wNQwwqBnAgJVW;0}2M(kyd6kl;J&HssPM9f0 zqg9k^tTvVL9IYz%FNO$?c!=BS^+YyS#=hJyI zo+n|Pn6>^DpDK|7o#Xuux6INkyJHfXNdS#px9|~H;}scS!gG>zeEVRhUvC33Ip*wo z!S=DI#8j^j2jt~aQQ-SQr`IbhHJg}63S9;P$w+#?PDYE&W}h4?`X-af$;msUe9+JS z{{F$iA=%ue%swL+ld0Vkf#Qx{yWMF89+yGnND@H3q6npO3IgB$3O;2m_nf2N!KC|A zeD^>7(_AXdv8H$~*1^|cqA6Jon(S(YHA~EWRxG{{ie;55Vj}Q8>VMnhu1eyqc&G7= zs9j~^&@4GQ?0JQsv9)h}1yJ&0^IP?2M8Hibm+Q6QkRZDedOgZAHRE zv6!zJrc(NvtJ)|@AjfX`b_|(1(WesP45Um-%7o{y4j!Hk`fsQ=Wsnw^5l+?`0D-W7 zFL*LpK^hgEkm;sloB8H7w9^lEdXN#?^{k;>4&HKsgvoRD_g}SMx>yWc7OTX=O0=wU_P0?Hl!D}8K?7#{fPhs^g zh>_t|onzMSF>r+aK|ub}68ay-Ntv33QS$WFHPOXUhpTX*+*GbY674)W9y~tk*@RTw z8kq7eRUx?;mvb^~DZanFDL=U1X&vni%1{L#_2rxE7w>M+yd%rDl+z~c(_Saf)*J;0 zAHM69H7@n3t!0$IyUwO7%s6C~&=j!Sb{v{JL*&$lNUVAjS zA9n_0O6JXYk*{WH(Q!qYj%Y3|sxacu%-u^*C_P}ylHQ-_3-6lqWm-N_dxO@4!(N)z znRJ+7!fEgJyEbtgc?m(qcPfiphKln z?lB}ClDlr(!?5Dp^Z8VW2EY-AP_|mYsSYA|lX8YorhEJZv)eoT;}EdB9)g&5b2(mK zkC&50cyYbRnxLPBtT1{49uC|52We1QEs}|LmeW)&4SZWwL{P-DWEISDhqOB?;-b^} za)fw#0tTUMbTFEt%g!Z9rZvaMoH-?sA^Cz#G>Yt*rFA8N4-0(XorKnGWlUE_m>8zH zR&bU~42g4ww8(#W|G}_7Xt!GMWWGB+xwyQzxw#<%EH;pAvI>OowY#%B91IEckk=7n zTrfe^$u?p9K?!ATn_6<>N5B84xbk81;jbA9C>Yu;A)oW&Sz|TpLd(s<;)~UR*USO( z_(IcTQ_>sYWpH!NVx}Fj*=ZqukVY%F)t0`3h7=7BQ;AE$fj5GcFwCGQiQ`3-%;R6h ztHAR}8w(prm_7tPRP+cYlNpN0&N}3?*g_ev6m$MutUoxUk=TavRR|N{fQ1d7w zNQa<|NuUoa!4yb;76+FS^o+P__{+$}zq1Itgz_Uy){%bE_-Cngk#f?JWA~j1MNl$HH6dt2&QTy6irQ%6Cv5+vCuq zSw1*<_x`ec_zNPTLqcr&=Tf_Rss8e4f43931@a%M9_vvWVJsOx`Q_`;Z(d%q*kNP( zV^Lszd~fjhUe6g~{pV?CaOpKmN{Puj7^e z7iN*HQ4cOZy|_6a&E8)}+jBJDEF8b%65OwFX{qGD#P=Zo^T=N$a^|+-XaWJ>8I&~v z;r`Q3yZzw)eUIRyu+p!tufBf%Y_-DP0%T#s;qbxz2gWAEM2Qp&R}6qqgFE(K!Z2$Z zmx#ajC;uwuT?_#X8I9qI1upq~B$$oDrWqOS$z~_A0vX@sRC^PSgyWw0Xz01c|F6AT14-C{3Cm#RcDMBL>nX zn~ki5aT{jH?CLa`trC;cF*amkK|V_QSaup4UP$)l7Ab1u;Il|yZA!ML30&T+(RC3)~Q1 zyMN|-)86o%DPoj#6iLZfC|8c-o4sQ%B{NInh@us^nhY!_Ng=M2`#tCTSKS_Ebi5T+ z*~G@PlLc$t?G0OpyB!Tfn4mt#`W=H#3nB%|#n9|HYsM}}7V&txf{IU;bxn#3ta9_o z2fN4nT{bAAF1M7pN!EfB_`cUC7eoix$a+~Xvp9qeM*Yq1u-osn*X%jlg0vSZ<TvH@0sot9aO+hA4r@UXYj^DQFzLw4NjxGHqsF66!#5I0{XWp1G=#_*Z!^r0HF z2%mwq=G*t<SoOSc>YD({XGqQC_C@ zBJtwPB0bw=OMk#Ji&#+mfn@4nZ-0Mp4?>vlqovxrlatZSP5HT*a%a&T?yYig)oIS!SZe2_!$F)0lMnOQ>o z@(pVonGbH85tU5=2=<;O&lXr1!>E}abA*b~F&A}~r}J=GdV(TKHq+{<-G0zPV=iZZ z*nV`_ld|o(t~i<-q_nk)=1a6+C&Ia>*@9}hRq1(CUnl);Yj4>Bgv>-k|HLN}dq$A@G&JtHRo4-S~sY66ctNHG^0`g&;|$ zt?+vYSQl4whFr0?bGzk^5Q#qFwmO60YPB%QgIZ3G+v<87qCUE<7;spyHBT1lY?Z-3 zrtP(YmRoe4xDj6FU)*B1)&gKgy{zL*1#*;Lw|jhi)a`V+7=)+#^!@wE1RnD_>+kk@ zJt$zy{+IT{z3iAw6?u&#e22q__Wb?MAOD3}464TD9Zx7Bla%=+T?3AkVJ|>(+DV8E znS+9GQv~=l2mQ86ETZ-h4ytn&z*9pq8fg*FlX}b?h8fb05CKc@HBS~1!#_Pb2nJKq zCB}>qVGJpu;nA}MjpGTb!JIo*q|2y(1`h%}+=2vWl#8ZeA{mSkZzlHGs({?t!Xz#b zfOHdR{%+B}2{}52wSuI|m{JVrISCwc2Sv`#)8fmuh<;7Ay+w!zT&T18lqRHP@0Lcx z{paoerR&crJPD~UQ6+X5rLeictSac+>bDurk_ufbm8#fshjf*$kjTIHzTFM^uA}J&A?JQ z0w0ZM^CjdUVZFR?9N)CI#VifJ#Ge8g_st|8p(4V@f`!BD!Ct3Ne%DPHQMNahuk6=i z*3B$b0a=_@qUgUtf&qS58<+-Ff2V8cXxJncXvx6d5BqGJ%5gA z6nS~Wf;~PyMh%4xw|zRBE|<$Kxt{pRAO4K*W|9k;d=u;k2h^$LxMj3Wxt_-@O`Dug z$d3%OEc`3Na53b>AkU}_MJLG0P)JS?DLudfMG=Uks0(=FLPuaD6CwRnkh>c*5`yz_ z$F|{KvwcGj%Z3!{ZBzE<$u1jD9wONsr7+^0MV0bA2m;dcW6m3&0eU+3IGxTC8wSBqDu{eL{~o zYi6g9sg?Ol%e}wv)I9{UF?kc^w31PQk z!_5s$6nrY~AM{ZD4ksbXYbFRzj(Ef!ixbbL&YLomn=HP-Y+b0Ou%~6AzMv8IR=1aGVjc3i?+E6OK5yX z7*2z@0jQkgdoIIP!x;I)5O)xLUfBJ>L3#LRBj`*pj=`1_0-SfUF*2O9 zjd>)F1*LT!q14lAZZJpow1JZ-a*(0$XszPhv_sR19Phf-e`jQKw{@0hHibb`=gn1} zMTDs*{_2x%yQbH%GRp6Aq69EIv^<*E#%ds!{c3~D@iN)H7q!2$7^WgGkDVneg48+f zmJjvyi??U>)xr&OV*WUbC8Ch(0IqelPVAFT%Nh29VHc(EQiT?y1}U1N;wW^s2xpK= z#jz>G=G=z{x9I1ot2n5mHy+7B=7Mz}M2)HobXE#oa$5j-g=Vkq3_3VkAt6As4uG)e zsfK(7(k|CAH{lyniq1%QLLNj)u8!*}c+m6x0xTlXRTou2U%VS%j~B4dX+3^b&IQeT z;s0GfSG=YnD3l3{6z7T&_q&MTfiy;QLla9-b*t%^SQ4~bEr)E+x5O#@Aln%X2NE+- zAlgaNSQK6PBn(&FS;o-jy8HY4old8GK7RAX)6wW=6|VR{cXoH+HI3L&0zaZ_1k-HU z9u)iIzw=-I3;q?lE1Op7-$g}`nZ#iki5W;)Y=aC3mA}tO+zwZ}>&YsVaB`%g=@dg{ zlW!L!&S_e>W)|`Q4#hU|YL0BwM@DOSY<|-|AH}4sQY^0W9y!<#%Ax3k`~hPhiv*D? zV#)@kS&D{(lqiyJI+pRGbXTNAlAOc@yQUJhET%?*D0y45@hnLAlv3qF-%V1QbKJ*@ zkuNpTX{aA}cb@Nk@MWH@AN|!hskbhnUW4fBb*bwDyKQrKm|?zB^YdgGHFlSIKA+-wJ)~ zw!P!M&UYT~Y==r>DKuZ+Oc(Rz>egd6%ONzCa`81LUs2%rp3NpY+kX~ea)Te9)`z6(e;(|#PcEjf&n9XLw(;66tJT|6f5XX?QW`rD zP>_N%PhXse+u2Bb=P^ZUwVLRJdOFwbb{U$W#4kipszH#qd`y#~Ft0_Qot>Tiy}i=V z?CR?3)6YL&MPXU7?(Ocjps>9IvR3?qfAT+L%_rEcGY@&lX&6Ozf!+w*ET?43%Cds^ zLirdryl|j~$)_NLY~mqWBn)EmWqBX8IeK`f;r`e zl&+w6pzgTu>l$#8GsJS8y!Pel+@h)w5Y`ZhZn-L=$_XRZoh0~Pl ze-2w-+j4>u?t+b{@ku1Nb_%IT?krgNh^vaTT;-aeyuT?Y!3jyu@aS;;U_n^y zS)6mhSLY<+?@s!e@~rOf^t$6PwLfa8PV7#);7+gisbfhzMj9u`o9WGW=_XalrvsWa?KR_UCd6nLfEUfMD8f zqqxx7lI$d?Fpc+>psa(;fZ%&nk57~~s(qdBQrL9Oe19vNJTyeW{C zt@JkiO}EqO_xrFI5pZsrH#ax0-n@Q) zeon#8a8Xm+hq$(hDql3+|Ku-4QQeWR7w1zVWd&J^RyOiZ$iyL&04u1&WFm^2GnUQc z$%HuUR;w))BTaVLARq!Kt5JlT35idpWNL-wAv_R$;tdbten4#CAQAYvy7n3CGZ zv>*eAVrec`tB}NkNi8sA|2UJ#A7}?ped3&CSe%4Ng%Dc_9V#densnv{3aR7O8uHWE zY9~fNu$fUoQpKgsZx$g1GBT~$c9ZVWGvUlz{r6CbW{DXuGc9}KQjWCrGcCP>j3MY- zg<3rR<@hwB-{T5}XoXjhR=)Xl4n@XCXuSmwZ6t?&wnwpCoxdznnW>S(nPy~un0Vh= zwh9&qMvue2;bMi74DT+cI9@c(8t+8@i-4ET2gifGLC|fvs$ixDm_%j7B$>>XQ0>7N zx~1G>roF}BPs?uBc%WCYiYX-5*OL`G{ZySGGzcq{rJcZic-VV#udk{#z`M?`C)eYd z`a!N^4|>QS;ab%;%_fBw#6!WJI)~`9WCxSYxC+#6P9g2Ox>>-JFSaE#@RXX43+Ym; zw7+I5h_dUrtOgDRFOn86X3ySU@;=Ie=J4Z~6K+-0rTso5tpeS4+?2L4cBqqpp z;JbmqT!=vBgbfQzr4elU2$T$FPm0okG9fRKC$B>>XJIR zxSM&Nj|g7R7l=wlq&ghLM$!*y)(exzIJ{io;EOQiE?Y+JD+k*ml-$xK zw;Vz?BxtxmSSo6`Id4pBD%}5zmQCvS%+`*pK5o%s9hGwGE9GfkwlWENCaPr`ib;m^ zG@6qbAWB?Up-(Gq%9?W=v6o-~VtQ{$0l_RPJz^K7V^&9t(oy(f-i)oHc)_0Hbr`>1qsFQnYcjsWkg$i}3B) zgm8|xS36HS;ZLPR}d<>DXoESjD^_!

UohrCN6c-;Qx#HbI*zIb2-Z51fbnd~Uw>aY-62t!+ zW~;9!R@}Pca$kixEm$#QQ@AbRgF3;~a z#UOsycsyP#=Ehc49JQ-uTLoW6sUnfPpD@ZSPmpUbPOH}BqEU0vB!TDrtt z#01F1>xHCXif|c7=-7g!d>bcF5EBtyij@}%i6oTJIc8yWgTdS4$w@{E z67X_KaK~0!gzTbnN&xZ5^)W0;wHTc22DVA)W8!L>66HvbtYte9&8Dxs_S>NM5@C`n z#`={I72+QiUq6&!-9s-=*Ix>%8ON1YH+H^@-Oct*$cgeSuUA=WD;?t|HsvrugPbcE zI9iIND)GT7L3UPY^5~+pSbMUiGMs?rh|0hb{`Smpp03Y@VU6(bPoC_3cz+-jjW;~X z{D43x8I2*AT5T=&)IpUl-B&NT;BlEPqW4$m{JfEXoy*=(r{zAr*MEG}7sA-ma%LbX z3(q5MK3Z%!Pgrjc@9ja!xd@Z(bsUe9$J5pI7^P;mbDmkHveoYN2SccXMx&cdfos9L zONnLzPrx(QUSzGLNZj8eAakr9jS~wV{~hfgaN4pZ{UIG{6QaPu{y|xIZo9NJ9gVK1 z(`gwW8R67?X{PDaOTyauELSUP=l9?=U~RTrL9d`jGgs^X{N*nIi9mM0XLB_8;E)GJ z;`h%arI`4TntTooKA7c@vT(}kj2}r3S+=M}-EspW!h>%lOV#-0>L0c~D zaf@Oj$#Np@$s&;KNK@v-BO(R@UQ%Ez8Bv8TFw%S=AHWDR0@O>Sl#-wog@L%>?-3C| zaU^vx^PCkLSp1Nn!4@kIzzeW!tOqPLh*Te;4kU4F>Ks*?5d!DRN>e+@b<9GO zIKc*%1Y9%JFsE+3-Y<>tee%5z_a7ZWW@0nxr17aQkqwyjkcI&Vh&WoZ@?S0ULYLFU zD(kdt->cj!+X=MxIV}6pcsZItiiV&OV?!CkfT=;(gOJ*5dnk5HTK@Ugv0#cS``Ov$ zTnQ*SS!|{1ks(fXTmIg#%Q61^X1Qt_ICAzknyetIPT)ptrOR+SGu+v0bvjHDQ|-B? z)7gABSHGUg!gzH)frH1C;td9aM~|MA!+J;*UcGvSbT`UVPy=tc6JTq}y7e5ORD`23 zHhX(ig@2!(o^b1_NdOv?4E{v!sRzD)Yvv`xfpP@j57c1S@AW*-lmHjBE~tp*ZxZD<_<#+*(4Sjx91WrPXIz)!w|3cM{YackDs86L^l=9)oo;nua%Iku8OWW4r?-j~9{=;l{O(BQ_Vs zNFbl;bi3-qP%0ltU{ID$#^cEXwjq0&x8mGBJ3G0)y5wNN#nJuy4~D~?w7@0Zj7IRT zoxyOERGzxULg^O-{-8f_J#TC44Tob;SI*~ih!=EoVvWsLnf=+e=Xo3}>kf(aBQu-L zA#~@u+l5->2yf%m2rj47YIVCE$kceG2o>Vnx9>)y5#}?${U`qmieVLPML67SI^|@? zpo2Q7ZN+Bp84EVR3w>-)TWPko5hsrZ0h=9uIDAYJaW^W$7=_6ifh>`!U+fZS&>--1 z-L{LwV~9Bs>F@Ey!zsbKAfaUWbzlWZc@v5?uG*hO6+F5`JgA*4-?Uw`JVOXot7)pPv~T-^|FHKktGa2y zzZR=x870$2yuH-pQFF@??Z7YP{QisB--99f8#Z+~z+ zcye!`T7KUBN9%gS$GyK^a85*ugDITvM-L9S1V4E3`_TeYzjx=;!Z-Ui#E|749^K1x zjUrS1)>4VDd3_$9jUp)5Rk#!U?W%f4I5d$pN$~)UiP`}|mQX&z@Ql>4F-r0)aqFXQb>Tpgv+d0? zrj`-f`H)OAN{1%osZE}VwoRl_-h?vx^a!ecEKYN~yZ|PppiXaI zL-Wbf2K~@I+bVRdRx5SNV7$MYef?&{idb33JOn`%U%sh(P03USwch>x?$KTcO4Lr^ zY@f>Ap%_`~J@C)f&Fp466H3SG(Y-y_vDD!pJaV&T1m}M~n!}bI#>wVNiX;P2{w`oZ zA}=#YGvOaKnX+kS3Abt$8Sf|AXbQ>Nk~u9Uq|+&^?cqNci^a>AFCa(_2g6pY#TE~) zS3M@;ysa{KgCpF#ch4edc!}6rF6JuuAZWE5)bhoC^mIC9Ti@-~T&a&z!dX=<_7Xf% z{wG5j)LgP5q@vTTWmLSfa}~YS9}M>Q_PV_uwT}dpgn!0%E~Mqc?lx?^x1JkebU+z} z+%{5*6Ik#R1eKh9kWxx-&<+co5b0<{LgbwS{_Nqm;Lf8A>Q2~)bLISEG=|E!mB7Pt zhD&lFgPIIJ(4t8Shh*{>5`@doh(eXxsOL3v{Lr!&!QjMlXMX=IS((eRBD)4@AVCMz zepBzrOXCc|O@$`F#zj%|p|lJO@t+-AZ7@Ns$*6oIW;14ajQ_0Svx+XLGN24C?51jpjm>-d2?p4@vWh8T8fNpWxS`cmpt|7B|9j)Uk(FXWh+9M{Bkl!fZf|+ zv2B#>$_?%W1-4uu)GJ31AG0tzHw2IQ;M=ofd86`>On#W32$2R?upxX@VnXeNa;>3* z8h(ojg(pFnH2#B0+MyO}5we;pvH4Iuo+Z;!+0OmKFvr6A8Xnudk6Y>hE?T4&7^gs? zs8rDfL*eZmN6V+m6rN!O_>d))S2P4Hg3LsVB%GnlOFbJhwH7Dj8nmBfNxq4Nlab4h z)|S#eDQ(fzSuJupx;lSg8%i&KdLC(5d8lVq?(pHt`)JzA6nqs59Mdb{Tk}1Og4A}y z7s8`N>5H@Rm#?oaA#Tl!;2HVehx;GiA6T~?nSbWXc!qiq*}+arM@X8YK5!&KZ3X0^ zgiZM97w_JepE_BfvEBJ-ahGHcdqbT8TLLFlE{>|x!pqVNTBC(^v)pnM5(r!Cc;vWG z9zHzSKUhBi!uR7Yb0m;4)4KPc%x(LyrCPf<`ly8>7RgmiD z4DH?-o`v&4nr<3l7$L_vN9A9aMthP!NGVi={C>>B!Xyt|hur2ZvaT`-pO$kDMRGJE z%PokAmitOrmzHypXA5Cn7&)&t(+RBJk*iMY<3$$E5-H3=yF#=~)hN&yurOdMR1jGI zCAeHZ@kKKmU3hR7Duc@!^9UinWvPdSSOc$=o-EYrc0ALnLekeoqCi%l)NieRTN(tk zo@7Bd)}FlK<3Lr^gamVT8IyLgO!~C?6uzq8y6N^~TaAGaj`ndPWD3c57lvJZ&X~$` zF?WBRW#%^Qrt%((KuoL;-U?dB_wIGtopMAto{T^H{Bx+_;5ASo zLNW!>3KEdJpc4oJm25)KvfccaL$KvUee%fTcXO-jBZ0_{U7|}zcks! zD>n<9!&nqaAVS!w-j?t=k~SbTDl!=OC2_?1{ETOmLJnvfjmEPX@ygIC3_^`>slylc zAxCcu_%5;3lBT{HhpHIyqOc$rmX!z*n$8Q;eId+wZdjyqAkw&UbKN##I7tH)XWpg-*e$QqsWjRfAT9)>R#$mR8h}kMC$_%BvQE^!O7R$4QC07&zDzbcf z9;(5`#A&0YCC6k%hT*JSjd~$ji0U#T)3go!0Yj<8%CG#c4M7>d$prr@lMKjQYr|C% z#?1Wjbx%~Eut&%HdW52{a226-@E5PHU!RSM%CinqwxZb2AjD&r$OJYH@l#DUGe*IQI{_P-9l4kaHXt zj;70JZ*HcG(6-FmYZs*QdA1WM&#)%rX|QYwdI0BUm^st9l^`%Ly)D-;gdwaAs~v8_ z?#|BP!65_3Nh#BN@%kk*UCR5rzrXJ|+ql_;hF@$S5w5~;Q$$-Yq9`i+Yh)e~q}6nC z8vxCMB;7NNJG3Kn+0oVy^3(tNU$d1EzsAUGvFz-|V0g^Xwv0pA$V`(eYuat4kV= znO1Wy*~Tsei#2WyA9i{fsTmWz5<*E;pBN&e{$#IHDvFOxyAg_7ZB~*F~WPyti_`b<#yrg5UWTpSju4i54Apo> z&DLm=#6u<{yR91f;PI1t_YO;a7&z<~Uw%1SX?Px4mX^X|8@k$ru*L#=A z22pt|m9eNXZ|YE0uR0TK943}mibg%uYeN))Q@P>dxBuubh(N&h@reX6IpkXf;mL@3 zn@2@D@`o?$2a4|*!P&{ZOEAPqkPV55(o#8K?Y`x?Has^xNhG2-KL0CJa~YZD!U^7) z*4*(&rgaTPCmK^I5c7(-9b&BHoZj+G*|}fp`4lD;F*c{!7=cDN!VU_zP8xnq&m$F1 z376{k2^MQ3Zh%`+i<`I-S%eWy(~3kciCGAoOq2v^9ZMB0($yrf9Kl_1h?sez2ab59 z2P~T^M|_tfcy&dq%+MoLzJ?VbT|I9P9qyX(Wx}mXtFT5^Yv2pyQ_3|8kzssy)b2%g z5k&A%-A)gRzME+{TSW6^BsTMnd4RY#Y_$Wo(}HBmTgx6pIaz&|>sW)Xul{a^Vg`|l z0H|R5seRrJ94Q3oSRB_1Nc#F^Z%=O$1YSzDc=)CkAqo|(wS(AfT(@c`Xf)gu6pY8g zPFhJiavIY)6&!D7jpo^Gm7@F^9j(*p236DJq-X;%BeIcTlvl-}xxEdEDEX2i*QL|x z93C7vg=inFH%=i4^aJZ%5!V`wFD318}oT>2)?)Er^5-Ikkn1})g zitrwvykpzjoBCzGR_gZEWgRWjfxw;m@BHCk@R}>56?|0)=FAP(%6U7CNF`2sPB1Jg zXPFnMp^2$JN#JON-hJ~=W+;gyBKnlZon1({6!dlqDODlK|g+)csE;nlA z6{assl@;o9Tc`%5yb1$WnyZ-+YAo1m0HBX!SX9GV|}8cOh2`BOJY7Ph)l=+0xx1a-e`X)or8W{3d(j zLPb`B#UY|GiB)Y;L%IYpt8(E4Sc1I}Ex%fBBc1pHrI}N8B|Lk5JzK?Tnr~T*Qf`>0 zeXifKy;i*mt;#=fwQgB19Cfln-C-W~Y5g5YK)T(Y8U?T*-|BNy%;R#-N_xHC(a|9q zFRxZ=Wp{LV*zfn%A^!81FE6jILXt0+P5yDbWX&szcz$6s!H>!A7>;%5}VA=55)2 zK+0H{qd@^?i8Y%dmFk>%lAvm+14%;gso}m6<}4SXFe7q$W+0`OwiZFx6zklfT0M0R zT&0^rDbn3Sv`3M+PiPN%B-4ysQDs^Km<-p7?|`7nKsS z_!0OT4UacVOP;ey5eiZA)z5DYZO!o*yHpJCqIV-seWk zA=hxXYb1>4(Ixi&(e99%t9hgDO{M0u>~?S9x*mb23jfqvH;2iv@T4pgaXEv`3;7%R zY`2Cv>h=1b=Nflt@sugma4>*K=Mo>d)Jk70=2;OC8BB0|?;eDt^5fuyfBo6#v-#Xq z0@;HH4?G3h&b7#LxhT(bdnv~$mAkz`zO{_K^#xr0-LVeE^NBDpS@2!3`3-+bq(X_k zkXV-E(h47t`IW-EmqM$of8KgBV(A>|NSXO8{SGM;O)ehWCBX_u8zD7nB z$xvmd7W(i@zZ}}ocq8Ho9h|QwL{;A-u(QLyrkNoNK zqb%!`BV+R`$%Uc{Ph_3-uo68Ydzl%S=Dd!X!ZYi(Y~QsyfxW-eh1F4RkIf?FhG=>4 z=vx8mcG_j~rCLB^2X)P~Cxc6RGRx!K%tC58>%eXl(T}t1$?|5pI=h-r=b>7xvM{8I z=VC;nl<&7)cm+C@n3m_QQKP=^LkN&kB?7%0!o-?~=42_-Qaa5@RmEXWi#QgL{;l0^ zwXjouTeRZyK_RMcmvzu7&L(h-a$!S_8HJE(EscUs_~PZu-JPAiy*-X5@b=&NyFYpR z?&SH4mk@(Y%Cnw7e_oOY5ylxunov5tx8?gN7gMy-RY)hY1#e?VuZs+v#hK){n#!eJ z)OwAuyM$n+cR4uRQV7ladwV;Bf%w7i|EZjql7IvCp-iXHgvtr~pOBG^^zX&JJ*Ms> zBK44g3Au5~=?Z+2neR`X&fE6>r&(eWY3>$6M;7N=NU9fQnmdDF^k((IaV?{Sst2}A zSh^5R5Sd9p%F4m>+DwoR4sT(Jg|Z6M?IDzXRFD{p?djlkI3G1(VLXK83y2h1BFj2a ztL_mhQJsE5#s{gQb~jd&L_42STbVO8$1~e|j+T~cb5*48_$EU9qby!h|Fx0r*>3N=lAm3U|4eI1_|}u$N!?+{bbD ztFO<`ujke+zVHUcJ{0h1b^4C$kpOvExz(1{YPB?g*!5&_ITOp+*ep3%L98MT*z@jK zJuwz(XJ@C~YLnemEozW8fqDa=bV{mq+@psNeT8@oC-cSAr|-`%*2z~C?(OY%i1@PQ z2X6@R2kY>tTfk_3pmwz&j6h(m_o1{Hw5rj4HvN3?`0;Q!l;Q7_|LlK6!(7W;5&xM) zt1$SusCj5{%L&#i&wW`efx4I}2C>|7Tba{3^E$5`e`VUC<<3}l*vN%k_FAF@g=h<{ z^axdi`g60ZSS#)f-RI8Gy6Fwz10`Td(>w-eCb=r7r;3`FK`kp7#rXybfgZ5(0_Ulk z2Ag^<2`SZTyjJ@pm7Rt>OCKrb7+X!7U4ba`5fJJ0#j+YFRp&ky)vD+*_^_>3F|J%i z8l|=$PFhj;LB0QQ6;8EOw9mxhx!dbPek5fV8x*FqZ7)Vqu6Y!T6na(nSX{zaq*?*<)JP=#A3+PdoXx^T`X*U@;M zE+bT^++Nv~?(Kn(k9A1{-gHi!Ktaj?uWz>@32RpsqY|wYWiAdwwP`&zFjZSYaCCH3 zy8gj6PN%cae)IWgd{g$nF)|XlXG>C(Z&a+_hL&Q%9Jm4Md*MP>q#?6CY=u>)A2sR? z`u+RI$GnBCtJ)u;RlUTrLuJKDAeMLrQsI+W4$(+xAvd8S^h3*;r|GgaeD3$&(0QAf z(pDE9+JQ`p)>qNiYVW$HtxV8_F}sMhphhLAyfh99RP<@ETCrY=6b15>S}j!uMO-yN zUI(l~vp7o)3Gx=(a=6qn}60l#8!HP?5Vr zOstgIQkD5KyN?LDAp_Z8siG|;9yAY?y zg?C#<#a>>RPpuLZLNJW&t!Q>jTA=YLbY+Yd$LgTOxSU3n$8{z1V z#h$^lCF(}JI-3c%7X+TTZMBwGE^UeejT3q;7C_YST+jEtGOi&s$*-97D%7w?2M3)_N1bEHZ}2C7{4bdU$*n6E(q^_~UbdNX6T*}2PCNTw zvK4{`M8ZPe)^&JcQK`!e)=$va6;38+VL{wwn1V%}B>CIJ;CrjdKajl*QMGLKuEc2RbKp@siK>kKbiMUqZ!1&5G_iDZjB-2YO{>Tvqqw0^`{)$ zzI*Q(!o=ahA%~&)e5O@Hq^wz~BB#^oa-|Xs4W^fD`Jg2Y6F>gew>1C3ubzEDX!(_<_5|`mwvXlx>2|e>u@0i^fKd@u-fp@YdHwK zhWjI&O%SRxi!i7OiOb{hf0P?_BqS|-SbKzT6tH5`Fw^8#G$B2n8=6vpSK|1zwMrG4 zo{hqZg>%$FP7Aiprhvs*dDD`k#=JI)ik7JgZpf+HCQy~444fHiU%3b?YkUR|F%h_c zQacKjyH-1s95oFbZNUo2aMe!D!wNPMooF5BoWzyJg=tly3;uKzd!MX2si<^V?jP>@ zuA}-II93B_mXnudn1o5XyiL8+D8xdp#*6tfT7_tYBW|M@LY^Jxb_&G ztG?U|0(i-r^V#LiYCH=e-HS+ESiL%^*LHVz*OLUOsvH!}VhrT1tDTWe2m1$}@3pD! zQ{RHqu}JTr1%4}vqxoV^(5PnFJcoEK8e9vOdWj21rNF@e0&dw?f#eA_~ zaTS}4JA3E~6x<3XzGZp++m?m){Pl9!ANRR|n#K5!_l6OS*eiB)2TB`PdGY~gD% zTQ$BkW~qT$f>+CZLL0dQw){-V2^R(AMqJJ{dp>#!!Pa2}(M zIJ#ObqdYfmmD9@5D-h>5C+CytJT&h{gofjWsS{^*`Aj;t*z0?>j&jUh$5n(5a!=pR zMzcgUr@+5jtDR$7pJGEuiw5^4W9$w?{>SJfS~aEL4N?RfrH1& zogp|vSVyZdj~EAzn{g5ll1jZ(MwY@&e(>PItz1Y_9?rzy|8IYSY6k-Gh!n;uo-TVI z2HJ6=S*ocQaAKv6pUV13DqE&`y{q8_IsrIKakqC|({v;dxxSv^m-EZG?w4g$o4eQu ztRbqhqUDT96MYKJ?6U0v3tkV!ETl!YQ{fEPTRH0_ixNgi@wx|IUM15)O=r}E8A_fL zAH+0OYKJ`F;yTfuWVUWlTUUsT_cXbJ3f_wMfI8Z%{TC=lt|^5Sx|E z>%rl!=Q`@QLv-SBMnUQhW-*w5#c7IM<=D4OEEK1eB_EuH<(H$;NWCaH?P0&4DQc+Q4#cspR$4+H zr!|#e8{jmG`fm7hM+^kqTZrb5A3Z9ab+F(qtnD|I;pgY);-~-gK_OnAY2B9oeIFJ; zE`7%Z>j%WO^|t;Edw)9Ya&PEEw^#RL={z?Bs!B#c@>geZejoQyKH1ji0UZ)W-A`<)M4TB9AC zblI9r!#J}1HbOGzmFtaRqjr$t_blxT!q9A+YDR`zNR&5DyVlhuhfb%0;13e(2Ui_! zw}-;eaqK8g=c}0PJW}HhMPE#>pD!Xbn2A&Kwn7o^n&W!5?F2y!60qv{A7fTrO=X~h zIT(1$Sj=KOOsz$X=$zA&cVW2FfJmB=43uwhIeR<1u#C5h&#@~C6M$iP!y6%AxOG&| zA2*xLmdnLtGA0j8`R55*Qp z6JmzH_}-}9Ejflnh&$LBUW`}f?RGf^$K_=hpI^@>^H3OfN=sd3jNK_K)~J!@6&`+p4g{-tLY%XN1E(d-3Ar^t41mxMX4o z)!D7Mb|}T>q&WEQ-CGV`ER?$a+PP~6S(SEt?IGYgk@fYGG?azPybJ!BvZFE^q*8dwwUP${UsMO3m&PzIkoFPDsaCGY zoNEBcO2Ep|agT%wOijzUAz%?~72E$DuQ$n!BFjg=8)zPp>hl4FM^#S^f<7ja)mh$r z6lrg)2P~vgTNpYMlDOi-mhv*&LV}6lPaSU7v9tjmGNMsul^hbKJ}Tx@La%-FbA#RK z?_ckpwlK+LKP z$c_AZmcF}Mj;6~fBI`wCA}(JlNey6*p7J#onHroS$E)rl-Ab z_weYbv4hAbe{y;PMP>b33cP!R?eq7)|69Z1kjDks=UOed4-Mhdr?dHA{rs!1m)bvE_8C_mnp_oE$hq(v;BqDhE^6Q(?NUic(t=7jMe@7e7zj^b@ z_i%VO?Dx|<vdwY9#NvRk`g;T%zJfzlAbepgzqOwghXtm(nZuOzjZbcNw z7I9S6ciE23uJ`JN>>@FGcJWJ|DTpgffiu!7?-Fnc;v~~|+8uXVTFQ<02aF!)u z$}_k-{xEJnfMmka^Ub;%3`#Jw*;qlAgTOJkufuuf*Rg&HnCt1(nJjI zg2c9}=L@0JqMZXyvNXIfYqz&9KM&tKBw6aW4}t3+?S1RmZL6OOdDGjADceG>q6Fg9 z+11RvGi(~IaoU}3e^`R2HElejMlFUvo?b04mVw%4gU9;Wv#+M){It$u!4^a(15C8e&`ZNu-M@)TYpT*5>TJ~#` znT4q`-iwClsOj>uynwbAOU1Rc^r3>!EVGX^tGAQt0n6{91U=%3$PPy~=}d9QAjO(9 zYxj27bZaze3|IwC2l9@TI_^3~AvbnEYH25oz>ZlWr`aV}CT(mMWVZ&aMnr|zmER!C zBFlo8Ov5UO4M)@mUXV*>=5R?4VExjk5B-7axaobgnu~y7R$}CTA z%;-X1L04_ECgnU7!xX{U8^Zyr>s6#(a;!ByFTvmzm#|E@ClHU6Kx{6T%coDDjz%}7 zn>4EZQDv>6t`ZJgwQGcHfBg6{92PeSK>pi!n>FyaH1^wR} zJeh{k<;~*l`SkR1W?AA6DOJwHSJU=IHCPOKZLQJ9MkFlW5GDC!nO{t@%bPh9TGxpQ z`Z0N0BzpGj>-l^J<;l))2dOid!W(t)y6Wr4u>jJF-QC?zr=tc?NCZ|I>(DS-oo=ad z0tQF6<+;p-S5SNR0@7}>D!so75EA@>K zpHd$G;_Y=Nl*FACowRXy$zp>e^n1PI z!=taCe?3zASw(&1Yro+<3%l>bA!Jn>`$TC95l}DUTyM6RrFWwlt)KrS$qLIXeIQs1 zsSw4W%3~>oJE8~H{X58v?o#vm{ttin!*VpSBn{=?eDTH0SFf~*9^4|kTB~BP4#V$# z^1Y8f{HVOKQ5>Z;C3_7f32*$>uYNUO%(a`Kg)Od3p-7Y>v0A`FRJU(&oxGzy#&l(bu_5XnXym6*OBS5__l|oAh-$NYJ4B+-zxd7j z^Y@!#7JH5k2g5;s(Aq#?);?uEo3dSId0Grjy5oc~t-1BpV~|q=G29Vpq2^6CX*_Jg zJv7#3NB8ax27|Pi{XwXLaR1fUUte5Zsdxy~?dsvK10e|tx1+}kPLnjR!=P-l?M+V-akIB1T20i;T`cjSxyQ9mub{X zBueTlOv$-fj@Q2N#(+g#l}be!44fKtAfKKq&;gq6S(c0f z)%da@U~%wF5Tnn6b;4?%&DF9t!wKx5Z>zZ3c$w5mLXxAyTpy@v9TSqcygH76)1I8H znsRA;n+bVeV6ymMU4CoRkK4wQzw$x3QBO1H*D;#|G1S&=p`S&)9cjhl@TFIeStyQ& z`Ba+;XhzMsuWS{mBQm(ziP^bc7{+Z>9z?w@=SJZh(DDPvwxN_eIylrauU~%ptLy7) z?Y-R|O646N9k<)Z)o$!OWj0uDu2V? zar-0`-uv+3Lp5B&4Se0HLa$DOWaTQp+jfKTu=-+rRzW z$z-BUyLp&vR*9$?NiB2eEJbF-@BaCdj4I+RmKJ-pZiv}9yi1}qS`vnnZUssJ2MuC) z4K$Rd3#|8&@$S@OM4d?khw9(+G~p+>5VXTF6)3z>AQFsQ0v6o0EYWRd4ABsI%Yao1 zSD^}3&#rd>A)41!>eGZN$Ev7S!<;mnCQyNvALj(7-?!_XDY)e2O|of`t9dSu3vca$ zaSli_)9ZT(FAHm^;Nh9$&#a;*7Pi-hox%6Lrc$UOW}&oNW=~=_%B(#92GuNMv@tg~ z)*yy{zyJ8*Bkc+M?2FH@uCB^KJJfx!1|V7q^R6F9jNjGvHLtPxHvOb&TA#9&$sNNc zEycb4j-d+QWtz7DNA70E1<~R0CtI-K3{n zC>K|kzxc&3Dr3{!XsU=k^?(w}prY;m{(tvSD4tOb6NjR6LCZ4d>~wY!YP}M)>8>qQ z$VyPD3IUdRmPs`zvng-V0+uL@A?_Nmu#CVEkj2v4uYN5X1C~^PQ$PCeJ z=B_1=)I;3l;+N;U!{Pno`&x;lUjMS)V~!s(2)?0 zMtedu6Gts3yHSc!_$t@66?Lp8J6UyhT?ij>mC##XR9e7d1U6zvYoRTx4>37l@d(n! z(vkrU(JV7=4Opa2yh3741^C9WnYtx@D!K#v zmk|ti3~P@cJ?eJ4{M5EuC|L|A^Yp8)#*>Lwblf|-cc&a7&+8rc`pAVqQFqcQ$Hohd z*f=?28VwVS?-+Mn($LbzcDL80)Vyzb-d#{95U`Gqk0Eft&4fRY*Npl8{QUZQqBYNVvDBXQzMjxBvD|24YHnfUL$&dn1Lj3|Kh@h+GPi7)->g_i^E6vsybAfz)lg zjs>mbMcJfK+5ZtjMa~Pg;<4#_PnIc}g=1Td!D0|c>dUMlVC8akX)QL&ux<-jRO`9j z25a7UmDf?M?Hy#epoHNnlc>&|LTycJL88yA@mG*lc17pUZa_<|>sCRcS|s!w&(nr- z+pWtg8B7#afhk#>v$DJPUd>L8Tk_H+LV5Ad+o8K~Ym3U^oChwn9;Wxj+W`bcRv1@3>qrpmd{?ixUS9(;m?N$hj+Gm^()A;bi4<9^uc(Avp5qd5!A!?1x zwM{o>M*SX{{Rs1ypZ@a8FTYwWQGUz0o9PaM@`M$%gY7St0gDSFR>-T6_OtpDO_4EI zu#536xc`g#;16n_dMuzxBG0FA9LDEXHwV=NmXPt(@l8tQ47F$62&3mlDq1BvCVwJ) zbi7RK<1l>!kgv7RD+*shLobg*Qa#y}G(%CT3hOxoPGA} z9Z*tg4i2CyO5 z=BnI_5MzMDZ(W}v@%I}PyO_@zh33(ugc)T{kCzUSC^fOn@B$#M+jjr z9p@oFb`QPUcVjegp^Jh`?UZZ2d*$0ze=wT@Vl+>}S(6EKEmeU4v2Gg`x4?F-ddA17 z@rKz&SXq9JP8nLM$Ya)=_<#*L|1z!DkF3;M@lQid>IO-#sMb@r@J`;T0qoEG!HLxK zTg1ls#E8=d4q!1F@7ME`EKLzCdfS@JYaXqzz;<_r^~B`f(NVWbqk%a1^y{yoHstlQ zTC7qs2ma`zkM0t)Sl~De!{}}nq}oSocF@}rx;!sU90FoNf76d+*3PYYpO$LDO?dL; zNw43pM~x2Z&kQs+!supvc6J7Tcz5#d)6afgXg^r>IOtSO=gYpqkX*>LGv9Q3ZMlJ4 zn>z=Ehh0XXD$UnZmK9BvBlnDiDXOD79lKP&pWIQ77CL9pbj&TAiL_2JB}$;qeBSW< zVbpL)K2!<>-;P-+O4^L9VCz%rG_U7k*y}BZ7fRZd*GYxZJk#A0vA{$L++1ZB(q%Td zT3A9II0#E}w)LVCjdsu(Tl;i|n{llziuoH}(H&F+mc6Apu_tfZQDP*8{VESMw5J~z zd=ysT>5v~;=H0ndsKlM7ySuyXcAHfV*lkoBz@46*q4UCEz0BY~LbdqiS6`o;o~qNR zSFc_TheJ5vwjn*HDu~{^dsfBuDJL@D2+@ntjp*OsC{&SfE9R=nR)(jP5my(fTTxyHEU`Q*FbfyHof zd8yVxmzS5=h^ZwPT&^YwPX?%w9|WtKHFQJrVp%Sw75~pHYJ~V^tOeA4DnSB)FW`ZR6|`uk(gr0s78%6tf}MX4I?Mq zY-ed5f)Lf}8Wh9ZlVW(BL#_Rpn+Ae)I&_vc2*NZ{k&-Z*o<}M?3Sv4z&+>+XG-}vv z(X^rfA7n*4tZ_V=*Wnk!aN1Uu)_9stnv|N!5ZrdSb#BY7f0o$<&860!VN_B38{l}N z?(PF=7fuYdZ))Ylzd10h8hT!FT8FLG_q=bk8oA%hl9=TiH3}iWY&Mpa1;lr>Cd&=+^jAE@ijAPOfg)*<8WN7jOHh@JU@Tx9L-@rgsUWVGX0&K~x(!yAtGJ;{|4g z}gX>=TD?Vs4rY{?cu3gUC9Vr&q1U@fO4>+qUnF zEYBGO-3nU7M%G7!u(nm<6uzIGZf`!Hst*SI^5o>?gC|ckWvCzh@CTp&=8LoU@6{eW zORTipt@ySs6{DZZt}{1)m=p6&V+ULXBdU0GKzzDXyA{p6cPi+zZ-ThZ&?dvae|)@0 zoe20t5>hFgF(3qVk z{C2efth?0U6Aw={+2o+AVxa+D*G-j;uvCL<;2XV;Rq-Oqjh!dK z5^oF(pdGB;%gdLp#nQ%_=<~M0i045HdGF|G%PKbc%Cb$t6(q}++YLg%X_P@W zSG7Au^S&%IG{6+pDZTq{g8)nEIfkb$IdMGi*PpGLF&8g#ujj08Vs^FSYh>zN!xvdi z)tM**&v;!RAzn2w`^p|RoU7%LZy=p^qcUQnBm;IEYatJDyfvpt(g+gTslqQsQ{${L zp(D{`R$DdOC|zAV2DN8yIf@%3&l1ac`l!|RjGEK$tr)oMGoqeauYlRGb3 zmU~a)c(uBP9|JL~t||WOPd|NkcB-A*pg$N62FCwSKc$!)@20LB1iFblYT7ix(;5J4 zPzcZGTkb7G(jmv>O8kz212wsV;ATAj>%ac%>2&%{lOqUK2Zx8PI}b+H_p*X}^OR6q z0Eh-+9b~g%7^kOB)lFD1|I!dfZ5r5E+@cF%RVvHa(4MxO=DJL_!1Hgit(97Uv?dp$ zg_gl)N#2l56~DkDnnsH30GOqsF4-)^hWwUX0)?V+c$bus%VEgi5Uy1d2!tHD9TTYPZ_t>p z*Kfeu{eKj%*0Cu#+c$f9b2_w{in@-QJ7gM=tl1XTKyC`Io zaYYpYMS>U`dstN?b$%`zNyQCU;x@4|SZ3hPvMQVi*4hc z4Th|uT7T9K(K2b3N_x^TQO;(`rP|u@KYs|YO)__*QSZOqkH1SrvSzVSDr9>bLx#y@ zY~`p6kce_JZZ=!m+=Y;2K2K=!AZ^}cA|WGItsJNlt`D){!NEbkcn@CNo7Z1`{rMX$ zcs8p=P04E7tJ8C5hNaTt|*Ede2Co{yihY>4T7jDG?QH0)WFx?FjE zEhJR=X>F-zD{5gJU?o(lvRKO?BrUEH57{NfLJS!aN7`^79ErbPOg5aBya$82NLmw(8czCg*zDjS(&zP4&VqysSw`zw{0S5!)xh z5VeA4!^lj1I`evS@RGfP@B6)O58@P+Pc^ePB7;>< zXVknV;qRZnc(K{<=hOeOl$dA3$z|Ha^T3+__|s1TR~t>DI9V;}3|HRY-zPF<_-A0S z*CQ^$V1mvvYbXa@N`2OSJe?uE7>9x&&vs;Zl2R;Yu79)YN4^DYhNC2!r=mm@lrD6@ z5Gor|=j{H&N58YXtwoTRO3qDI#cF*J&OugP1jr2qbC9PnV!|H`~I1Rv8n5-&MfibGC zz-P`SYEi|EaO00Z|NP?lbB#v*Prv`;-`|}Cxg0jwj_EWQRgmf7Np?!M(RoU(52j-f zObp-F*4XtB{yG}DmCATL2LDm{j3laTa$V(JEmVPpv2C|^c6P{W6y6T@K_N^+E~S)n zd3E*O_utRvvsI3&?ZPfz2FViDo$GuR@yoz@;G?UZ0G zSx7k8H6GSu$r`WWXzj|&D~E|m(U)*AbPc9Um=a=nWvZ45vwx6U4=HA=kd3XtJjuyg zMFF_=x}FaVBYab2yfHU`7~7{!hc|71`i)2&%wZb@yQX(QfuU~rB&%n+{G`QdH_X6b z888J{|E~@XObXDik1;m%Dh1|GSeCtRw`8um)oPm#ApC@VyS&X>)0IL8G32nZ*qb+R zz;Au@@dAUl>t--`cY2y6W#Rj>l$vce;8m?LK^>@0MiVV;z1{TerMyl`iYd%TMapfkejNF0zF%Esl$}?9?$TTb z!&FDEVThF>jFRXlX?j>|mEX_t1JSF;7Bvs)2%tEP=PQbg>B3Z{%e=`N!YuRanD4hs z^)L|q1EqLeS@ow>QAuWDYe9IQMrlUvlB(YaS7fk+$vX@W;MHt%h%)T{ijbF#BLvhW z1;XaSjU4W>x{7fzc5d4WAq*c_XA?|Y9z#bHV+K)OOK%{R{5e+D^IFZ?{li3!zJu-D zNj59el-%$j8P=V4&F+***~W2-ML+nvR>E&Z^}t4jE7E*7#Y!B<L_!k96nL!_uPtG_V*$c zq3N}sa%@ie}>G+F2nj@d#t2ITG%ia zgTPNjA(oz=1Z~+8&43KNT z$%*FmfEgX!-u9)RMJW94Mps=&n-hqbt=CP2RI}Lv_ia2LsT9vsdj>Z*H^120(m<6I z?!nNlua=&kon2g9NJzb-;epT|ITiR5gaHExPm=xJJzpZZ;`nJoLFocxQKpw0t}ngp zSxw@N;fq(-S2VoNv$q|&F$!?6Sg&O1M@Z^nn2Vv*CSWoqHjmhzPZA-l@?n?Y5?kQf z2t(`q(LDM>gc;od8R4>6uw>O3llD)t*p=Z!wOwKGSw>k?rQR8fl`?`uQtQE%@HgxS z1QS0S#=$TKe}`q1=C?p;)?MjRxmA&2DMVI+FwmldVFv4x__-_;NRx z%)!ITdctMe4&KfrUxcw7Mz?$Zmr1VcN66M#Sh{z2u+!h(-VT=i$#MKB*$XAMVY~Ld zWp4YiEd#wF%D%$~2&1~)9s!hQ^RQ8`X-05=Z|`O>(4eZZ%;12%==b_0j9&4c_$r{vJL&i4Ym?3+8Wod;9R!tM-C3hiN&MVXroNr26;oAAUGLKZjcv0s+Bb z^jybPt`-Gxy>4$uvW7iPMQ#y{D;JWg2jv4157{ZP z8r7+??Aj#7KE9dM(J2q=vPj_t@QZPQqE zLgQ9P%kESh;e>Gr?qsLcUTO;=cCs{FCW-kXs3+ey>002ovPDHLkV1fr=?$ZDO literal 166238 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 z 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 diff --git a/castle_gates/textures/castle_door_edge_mask.png b/castle_gates/textures/castle_door_edge_mask.png index 59ae96b9fbee434e1cd55a9f672935b7ca3a826a..15fcf12330c5c2a67672c7ffc9c6e817973005de 100644 GIT binary patch delta 8 PcmdnT7(GE{V!Js24tWC} delta 105 zcma#v$2dVHfi20~-G$*l2rk&Wd@=(A180FpWHAE+w=f7ZGR&GI0Tg5}@$_|Nf5;@v zB&Tqco9R7JNH#MhqQp5rH#aq}1juDza4t$sEJ;mKD9TWuK^M1pp2` B9I*fZ diff --git a/castle_gates/textures/castle_door_handle_mask.png b/castle_gates/textures/castle_door_handle_mask.png index 6417aaf6f8dbb89997e01955499aaa520e9c9d33..1200a6ec21e8c7d67cf261eb722bd9e9f796f738 100644 GIT binary patch delta 8 PcmX@a7(YQ}V!Jf}4z&X+ delta 105 zcmaz)#5h4Efi20~-Gu=Remd{22QoMdJR*x37`TN&n2}-D90{Nxdx@v7EBiwxVJ01= wW2NSsfI_mFArU3c`MJ5Nc_m=|&PAz-C8;S2<(VZJ3hti10V#T^>=PC301QqV5&!@I diff --git a/castle_gates/textures/castle_door_jail.png b/castle_gates/textures/castle_door_jail.png index 0d4f7bfd2dfefdaf1554b35d9785bd7bcc2142fc..930cf3bffb994e2ef4150e40e14167104b2e711b 100644 GIT binary patch delta 814 zcmV+}1JV5M2Ga(RGJgz7L_t&-83n=Hf}%JSK+*kUJza7akR&I!6A?s9t)A)sf1kAo z-pAtoY8TBpg_4bG3TmPc?wVYRAr@=UjkLqOgWU;kF{nUZU`xD$FbVOtU6M@W zZJBcDtc=xVy-X&x^O_}ls|gbicm4h(eY{KALMgJl@>*ls)_)v-bg{uZDVPW275W|e zZ%itNdk?z6t>)#IWF;2zoqw)yx#e(WwvHc{OZHhQ56%jGhV#MT{K%sPZD1d`C#OMELN`;d&>YZj z^qK}9E$jo_+bOxAYC<8d-o2oDL-(SIwq>i}Xy9S=CVwG05l?A|$r}@*HDS3Vvp74C zp`bR?F-H~Mjs|VH9R`FbsWk2oPUfX-TC^4_6freUuu5y^BZmzJSsj` zjq}$)_(OHTvO<4jkuvj`;6B2=;?Hc7Pb!%BQ~dMe)4FH7B@^RjWxwb0J~X{=#yOLu z5PjXO^J(_W`QrUz@-(G!u(x&)ZO-degBEYmH_Hy8z$FuG4jdkK53A*EB$#LmK}`_1 s1Sg52MMKKsC5SOTn0PgDEh&h||E={uCxse*lmGw#07*qoM6N<$f)$~c6#xJL delta 841 zcmV-P1GfCr2JQxsGJhvYL_t(|+AWmZy4xxYgy+TDt~gG7i~$J*#K)Z1-hKc3Drqlt zW6y`sKO^9oLuMZBkYW^{qe)48GJ(B2i<96(wgzd2EI_Yi7kD@5Cj#OC%!0c&CZ?P) zrsn9WI|+5|G<4A)Ew#mIJatA6{TL~-O#%}(cfLI(T^>2lK7VIgT)vM%<}rp>8mwnW z8Rmla3{={*y1_^`SSuiD(`k=84`L}~#1%hPwwr*%75iXI{9gdqpTK#CB~!94I*c=# z8&J+#4-{exTz9}$0*^hO%-I;vNK1E|`f|UX+Dh8On?rxzeVw*uN6U{si}jI%M?8-q zI_f2oaFiTE^nV<)b0pSL@G*Ew9(;vQf4QADcrg~U0fMq)kB18)q<7=r*sE-R0lFKy zr0u4B0*obgNE! zLC=1VtA9>;=>Vzl%!UIw20hS-;#KK!#8>DmZ0f?I)5co!M&vzN(0{0uS@DkMikj7> zt2RuHy3pbkg%V{8`vAv(Dv^$@jw?1AhwZ<#bVgfzO7P2R9GHn6UT3Bkr7hBe)B zRG=vnA&%XTvAUo&T09JS6KvMCGM?PvDUiNAUiXm6lQFEn&nApnJQ4i?t@S@A Tuu*9nxO(KH?+_ z0Bj-lW)xyU537o89@03`78G=xyKRF<-x3)I8}}FNY+O;MH|MTckRLJ77UXN>2Una} x@v4f0kJqZm|3R584o`Y-bSkl@6rxdYJ}>GZdLVxpbpQYW00>D%PDHLkV1mY~IJE!( delta 144 zcmV;B0B`@f0lEQ@GJkVPL_t(|+Fgy|4ul{KgZp?oA%f?f3Pj`kzl4RGVC?e!Xt$*R zuv*uP5U76WAqCYs58h1V4iY-FCeOaH5 z`L;V3&7n&7da6J+Py|YmB2Wf4GlhY?rHrgc_HHCsvIqH-%FHtIIZ{5^_#^otf06vs zIQNgbi?>5R$0oeOM!T(cyL#2M^`gEsRc#`T7(XKNyzDDG?~YBL`_ z#g%NJ5Lt{YN3u7KZ<0v*AbV44zoz!sji>hOb_zr2{sBVTIgU%z_n!a&002ovPDHLk FV1k5RU*G@$ delta 211 zcmV;^04)FY0sR4xGJm#7L_t(|+AU7m5`r)g%ipPhPz$A;rHsfSBIEV{rpm+4?k3qy zU~{ReGD@3T=py!WbUmQ=vA>Q>~5_u7J-UkxX-G-3c8+hLc=^8<74K zEWssVSI%}vg*b2VU38Bb0@m^Eemv+;&|m(5gt=Tz*-VwW43+I|^94fMIgSe7dtLwl N002ovPDHLkV1jvtVa)&l diff --git a/castle_gates/textures/castle_portcullis_mask.png b/castle_gates/textures/castle_portcullis_mask.png index ac5d8e2401fafe22b26fd3bb9ba5e2c4dfe8f5ff..8d12f837f84ce8e33e74300be97cd05c04166ee9 100644 GIT binary patch delta 8 PcmX@a7(YQ}V!Jf}4z&X+ delta 105 zcmaz)#5h4Efi20~-G$*l2rk&Wd@=(A180FpWHAE+w=f7ZGR&GI0Tg5}@$_|Nf5;@v zsLxTWuK^M2LK-E B9SZ;e diff --git a/castle_masonry/arrow_slits.lua b/castle_masonry/arrow_slits.lua index 61d10a91..24050691 100644 --- a/castle_masonry/arrow_slits.lua +++ b/castle_masonry/arrow_slits.lua @@ -1,6 +1,18 @@ --- internationalization boilerplate -local MP = minetest.get_modpath(minetest.get_current_modname()) -local S, NS = dofile(MP.."/intllib.lua") + +-- Used for localization, choose either built-in or intllib. + +local MP, S, NS = nil + +if (minetest.get_modpath("intllib") == nil) then + S = minetest.get_translator("castle_masonry") + +else + -- internationalization boilerplate + MP = minetest.get_modpath(minetest.get_current_modname()) + S, NS = dofile(MP.."/intllib.lua") + +end + castle_masonry.register_arrowslit = function(material) local composition_def, burn_time, tile, desc = castle_masonry.get_material_properties(material) diff --git a/castle_masonry/depends.txt b/castle_masonry/depends.txt deleted file mode 100644 index 7c6d7fbe..00000000 --- a/castle_masonry/depends.txt +++ /dev/null @@ -1,7 +0,0 @@ -default -moreblocks? -stairs? -building_blocks? -asphalt? -streets? -intllib? diff --git a/castle_masonry/description.txt b/castle_masonry/description.txt deleted file mode 100644 index 23992264..00000000 --- a/castle_masonry/description.txt +++ /dev/null @@ -1 +0,0 @@ -This is a mod all about creating castles and castle dungeons. Many of the nodes are used for the outer-walls or dungeons. diff --git a/castle_masonry/init.lua b/castle_masonry/init.lua index c0674ae1..600a44fc 100644 --- a/castle_masonry/init.lua +++ b/castle_masonry/init.lua @@ -7,7 +7,20 @@ dofile(MP.."/murder_holes.lua") dofile(MP.."/stone_wall.lua") dofile(MP.."/paving.lua") -local S, NS = dofile(MP.."/intllib.lua") + +-- Used for localization, choose either built-in or intllib. + +local S, NS = nil + +if (minetest.get_modpath("intllib") == nil) then + S = minetest.get_translator("castle_masonry") + +else + -- internationalization boilerplate + S, NS = dofile(MP.."/intllib.lua") + +end + local read_setting = function(name, default) local setting = minetest.settings:get_bool(name) @@ -82,7 +95,7 @@ castle_masonry.get_material_properties = function(material) burn_time = minetest.get_craft_result({method="fuel", width=1, items={ItemStack(material.composition_material)}}).time else composition_def = minetest.registered_nodes[material.craft_material] - burn_time = minetest.get_craft_result({method="fuel", width=1, items={ItemStack(material.craft_materia)}}).time + burn_time = minetest.get_craft_result({method="fuel", width=1, items={ItemStack(material.craft_material)}}).time end local tiles = material.tile diff --git a/castle_masonry/locale/castle_masonry.it.tr b/castle_masonry/locale/castle_masonry.it.tr new file mode 100644 index 00000000..4ade388e --- /dev/null +++ b/castle_masonry/locale/castle_masonry.it.tr @@ -0,0 +1,49 @@ +# textdomain:castle_masonry + +@1 Arrowslit=Feritoia per frecce di @1 +@1 Arrowslit with Cross=Feritoia a croce per frecce di @1 +@1 Arrowslit with Hole=Feritoia a foro per frecce di @1 +@1 Embrasure=Feritoia di @1 +Stonewall=muro di pietra +Cobble=ciottoli +Stonebrick=mattone di pietra +Sandstone Brick=mattone d'arenaria +Desert Stone Brick=mattone di pietra del deserto +Desert Sandstone Brick=mattone d'arenaria del deserto +Silver Sandstone Brick=mattone d'arenaria argentata +Stone=pietra +Sandstone=arenaria +Desert Stone=pietra del deserto +Desert Sandstone=arenaria del deserto +Silver Sandstone=arenaria argentata +Wood=legno +Ice=ghiaccio +Snow=neve +Obsidian Brick=mattone d'ossidiana +@1 Murder Hole=Buca assassina di @1 +@1 Machicolation=Caditoia di @1 +Paving Stone=Pietra pavimentale +Pavement Brick=Mattone pavimentale +Castle Pavement Stair=Scala pavimentale del castello +Castle Pavement Slab=Lastra pavimentale del castello +Roof Slates=Tegole d'ardesia +@1 Pillar Base=Base della colonna di @1 +@1 Half Pillar Base=Mezza base della colonna di @1 +@1 Pillar Top=Capitello di @1 +@1 Half Pillar Top=Mezzo capitello di @1 +@1 Pillar Middle=Fusto della colonna di @1 +@1 Half Pillar Middle=Mezzo fusto della colonna di @1 +@1 Crossbrace=Costolone di @1 +@1 Extended Crossbrace=Costolone esteso di @1 +Castle Wall=Muro del castello +Castle Rubble=Detriti del castello +Castle Corner=Angolo del castello +Stone Wall=Muro di pietra +Rubble=Detriti +Castle Stonewall Stair=Scala del castello in muro di pietra +Castle Stonewall Slab=Lastra del castello in muro di pietra +Castle Rubble Stair=Scala del castello in detriti +Castle Rubble Slab=Lastra del castello in detriti +Dungeon Stone=Pietra del sotterraneo +Dungeon Stone Stair=Scala di pietra del sotterraneo +Dungeon Stone Slab=Lastra di pietra del sotterraneo diff --git a/castle_masonry/locale/es.po b/castle_masonry/locale/es.po index 6c1ebc1e..d7023e88 100644 --- a/castle_masonry/locale/es.po +++ b/castle_masonry/locale/es.po @@ -8,182 +8,203 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2017-02-21 23:41-0700\n" +"POT-Creation-Date: 2019-11-12 13:31+0100\n" "PO-Revision-Date: 2017-04-28 15:23-0400\n" "Last-Translator: Carlos Barraza\n" "Language-Team: Español\n" +"Language: \n" "MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=CHARSET\n" +"Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -#: arrow_slits.lua:12 +#: arrow_slits.lua msgid "@1 Arrowslit" msgstr "Aspillera de @1" -#: arrow_slits.lua:33 +#: arrow_slits.lua msgid "@1 Arrowslit with Cross" msgstr "Aspillera con Crus de @1" -#: arrow_slits.lua:58 +#: arrow_slits.lua msgid "@1 Arrowslit with Hole" msgstr "Aspillera con Agujero de @1" -#: arrow_slits.lua:81 +#: arrow_slits.lua msgid "@1 Embrasure" msgstr "Aféizar de @1 " -#: init.lua:29 +#: init.lua msgid "Stonewall" msgstr "Pared de piedra" -#: init.lua:32 +#: init.lua msgid "Cobble" msgstr "Adoquín" -#: init.lua:35 +#: init.lua msgid "Stonebrick" msgstr "Ladrillo de Piedra" -#: init.lua:38 +#: init.lua msgid "Sandstone Brick" msgstr "Ladrillo de Arenisca" -#: init.lua:41 +#: init.lua msgid "Desert Stone Brick" msgstr "Ladrillo de Piedra del Desierto" -#: init.lua:44 +#: init.lua +#, fuzzy +msgid "Desert Sandstone Brick" +msgstr "Ladrillo de Piedra del Desierto" + +#: init.lua +#, fuzzy +msgid "Silver Sandstone Brick" +msgstr "Ladrillo de Arenisca" + +#: init.lua msgid "Stone" msgstr "Piedra" -#: init.lua:47 +#: init.lua msgid "Sandstone" msgstr "Arenisca" -#: init.lua:50 +#: init.lua msgid "Desert Stone" msgstr "Piedra del Desierto" -#: init.lua:53 +#: init.lua +#, fuzzy +msgid "Desert Sandstone" +msgstr "Piedra del Desierto" + +#: init.lua +#, fuzzy +msgid "Silver Sandstone" +msgstr "Arenisca" + +#: init.lua msgid "Wood" msgstr "Madera" -#: init.lua:56 +#: init.lua msgid "Ice" msgstr "Hielo" -#: init.lua:59 +#: init.lua msgid "Snow" msgstr "Nieve" -#: init.lua:62 +#: init.lua msgid "Obsidian Brick" msgstr "Ladrillo de Obsidiana" -#: murder_holes.lua:14 +#: murder_holes.lua msgid "@1 Murder Hole" msgstr "Agujero de @1" -#: murder_holes.lua:33 +#: murder_holes.lua msgid "@1 Machicolation" msgstr "Matacán de @1" -#: paving.lua:11 +#: paving.lua msgid "Paving Stone" msgstr "Piedra Pavimentada" -#: paving.lua:30 +#: paving.lua msgid "Pavement Brick" msgstr "Ladrillo Pavimentado" -#: paving.lua:40 +#: paving.lua msgid "Castle Pavement Stair" msgstr "Escalera de Castillo Pavimentada" -#: paving.lua:41 +#: paving.lua msgid "Castle Pavement Slab" msgstr "Pavimento de Castillo" -#: paving.lua:49 +#: paving.lua msgid "Roof Slates" msgstr "Pizarras de Techo" -#: pillars.lua:18 +#: pillars.lua msgid "@1 Pillar Base" msgstr "Base de Pilar de @1" -#: pillars.lua:36 +#: pillars.lua msgid "@1 Half Pillar Base" msgstr "Base de Medio Pilar de @1" -#: pillars.lua:54 +#: pillars.lua msgid "@1 Pillar Top" msgstr "Parte Superior de Pilar de @1" -#: pillars.lua:72 +#: pillars.lua msgid "@1 Half Pillar Top" msgstr "Parte Superior de Medio Pilar @1" -#: pillars.lua:90 +#: pillars.lua msgid "@1 Pillar Middle" msgstr "Medio Pilar de @1" -#: pillars.lua:106 +#: pillars.lua msgid "@1 Half Pillar Middle" msgstr "Medio del Medio Pilar de @1" -#: pillars.lua:123 +#: pillars.lua msgid "@1 Crossbrace" msgstr "Viga de @1" -#: pillars.lua:147 +#: pillars.lua msgid "@1 Extended Crossbrace" msgstr "Viga Extendida de @1" -#: stone_wall.lua:11 +#: stone_wall.lua msgid "Castle Wall" msgstr "Pared de Castillo" -#: stone_wall.lua:22 +#: stone_wall.lua msgid "Castle Rubble" msgstr "Escombros de Castillo" -#: stone_wall.lua:57 +#: stone_wall.lua msgid "Castle Corner" msgstr "Esquina de Castillo" -#: stone_wall.lua:78 +#: stone_wall.lua msgid "Stone Wall" msgstr "Pared de Piedra" -#: stone_wall.lua:86 +#: stone_wall.lua msgid "Rubble" msgstr "Escombros" -#: stone_wall.lua:100 +#: stone_wall.lua msgid "Castle Stonewall Stair" msgstr "Escalera de Pared de Castillo" -#: stone_wall.lua:101 +#: stone_wall.lua msgid "Castle Stonewall Slab" msgstr "Losa de Pared de Castillo" -#: stone_wall.lua:108 +#: stone_wall.lua msgid "Castle Rubble Stair" msgstr "Escalera de Escombro de Castillo" -#: stone_wall.lua:109 +#: stone_wall.lua msgid "Castle Rubble Slab" msgstr "Losa de Escombro de Castillo" -#: stone_wall.lua:117 stone_wall.lua:143 +#: stone_wall.lua msgid "Dungeon Stone" msgstr "Piedra de Mazmorra" -#: stone_wall.lua:156 +#: stone_wall.lua msgid "Dungeon Stone Stair" msgstr "Escalera de Piedra de Mazmorra" -#: stone_wall.lua:157 +#: stone_wall.lua msgid "Dungeon Stone Slab" msgstr "Losa de Piedra de Mazmorra" diff --git a/castle_masonry/locale/fr.po b/castle_masonry/locale/fr.po index 5a73d18a..008fdfc6 100644 --- a/castle_masonry/locale/fr.po +++ b/castle_masonry/locale/fr.po @@ -8,182 +8,203 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2017-02-21 23:41-0700\n" +"POT-Creation-Date: 2019-11-12 13:31+0100\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" +"Language: \n" "MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=CHARSET\n" +"Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" -#: arrow_slits.lua:12 +#: arrow_slits.lua msgid "@1 Arrowslit" msgstr "Meurtrière en @1" -#: arrow_slits.lua:33 +#: arrow_slits.lua msgid "@1 Arrowslit with Cross" msgstr "Meurtrière en croix en @1" -#: arrow_slits.lua:58 +#: arrow_slits.lua msgid "@1 Arrowslit with Hole" msgstr "Meurtrière avec trou en @1" -#: arrow_slits.lua:81 +#: arrow_slits.lua msgid "@1 Embrasure" msgstr "Embrasure en @1" -#: init.lua:29 +#: init.lua msgid "Stonewall" msgstr "Pierre brune" -#: init.lua:32 +#: init.lua msgid "Cobble" msgstr "Pavé" -#: init.lua:35 +#: init.lua msgid "Stonebrick" msgstr "Brique de pierre" -#: init.lua:38 +#: init.lua msgid "Sandstone Brick" msgstr "Brique de grès" -#: init.lua:41 +#: init.lua msgid "Desert Stone Brick" msgstr "Brique de pierre du désert" -#: init.lua:44 +#: init.lua +#, fuzzy +msgid "Desert Sandstone Brick" +msgstr "Brique de pierre du désert" + +#: init.lua +#, fuzzy +msgid "Silver Sandstone Brick" +msgstr "Brique de grès" + +#: init.lua msgid "Stone" msgstr "Pierre" -#: init.lua:47 +#: init.lua msgid "Sandstone" msgstr "Grès" -#: init.lua:50 +#: init.lua msgid "Desert Stone" msgstr "Pierre du désert" -#: init.lua:53 +#: init.lua +#, fuzzy +msgid "Desert Sandstone" +msgstr "Pierre du désert" + +#: init.lua +#, fuzzy +msgid "Silver Sandstone" +msgstr "Grès" + +#: init.lua msgid "Wood" msgstr "Bois" -#: init.lua:56 +#: init.lua msgid "Ice" msgstr "Glace" -#: init.lua:59 +#: init.lua msgid "Snow" msgstr "Neige" -#: init.lua:62 +#: init.lua msgid "Obsidian Brick" msgstr "Brique d'obsidienne" -#: murder_holes.lua:14 +#: murder_holes.lua msgid "@1 Murder Hole" msgstr "Trou en @1" -#: murder_holes.lua:33 +#: murder_holes.lua msgid "@1 Machicolation" msgstr "Machicoulis en @1" -#: paving.lua:11 +#: paving.lua msgid "Paving Stone" msgstr "Pierre de pavage" -#: paving.lua:30 +#: paving.lua msgid "Pavement Brick" msgstr "Brique de pavage" -#: paving.lua:40 +#: paving.lua msgid "Castle Pavement Stair" msgstr "Escaliers de chateau pavé" -#: paving.lua:41 +#: paving.lua msgid "Castle Pavement Slab" msgstr "Dalle de chateau pavé" -#: paving.lua:49 +#: paving.lua msgid "Roof Slates" msgstr "Toiture en ardoise" -#: pillars.lua:18 +#: pillars.lua msgid "@1 Pillar Base" msgstr "Base de pilier en @1" -#: pillars.lua:36 +#: pillars.lua msgid "@1 Half Pillar Base" msgstr "Base de demi pilier en @1" -#: pillars.lua:54 +#: pillars.lua msgid "@1 Pillar Top" msgstr "Haut de pilier en @1" -#: pillars.lua:72 +#: pillars.lua msgid "@1 Half Pillar Top" msgstr "Haut de demi pilier en @1" -#: pillars.lua:90 +#: pillars.lua msgid "@1 Pillar Middle" msgstr "Milieu de pilier en @1" -#: pillars.lua:106 +#: pillars.lua msgid "@1 Half Pillar Middle" msgstr "Milieu de demi pilier en @1" -#: pillars.lua:123 +#: pillars.lua msgid "@1 Crossbrace" msgstr "Travers en @1" -#: pillars.lua:147 +#: pillars.lua msgid "@1 Extended Crossbrace" msgstr "Travers entendu en @1" -#: stone_wall.lua:11 +#: stone_wall.lua msgid "Castle Wall" msgstr "Pierre brune" -#: stone_wall.lua:22 +#: stone_wall.lua msgid "Castle Rubble" msgstr "Gravats de chateau" -#: stone_wall.lua:57 +#: stone_wall.lua msgid "Castle Corner" msgstr "Angle de chateau" -#: stone_wall.lua:78 +#: stone_wall.lua msgid "Stone Wall" msgstr "Mur de pierre" -#: stone_wall.lua:86 +#: stone_wall.lua msgid "Rubble" msgstr "Décombre" -#: stone_wall.lua:100 +#: stone_wall.lua msgid "Castle Stonewall Stair" msgstr "Escalier en pierre brune" -#: stone_wall.lua:101 +#: stone_wall.lua msgid "Castle Stonewall Slab" msgstr "Dalle en pierre brune" -#: stone_wall.lua:108 +#: stone_wall.lua msgid "Castle Rubble Stair" msgstr "Escalier en gravats de chateau" -#: stone_wall.lua:109 +#: stone_wall.lua msgid "Castle Rubble Slab" msgstr "Dalle en gravats de chateau" -#: stone_wall.lua:117 stone_wall.lua:143 +#: stone_wall.lua msgid "Dungeon Stone" msgstr "Pierre de dongeon" -#: stone_wall.lua:156 +#: stone_wall.lua msgid "Dungeon Stone Stair" msgstr "Escalier en pierre de dongeon" -#: stone_wall.lua:157 +#: stone_wall.lua msgid "Dungeon Stone Slab" msgstr "Dalle en pierre de dongeon" diff --git a/castle_masonry/locale/it.po b/castle_masonry/locale/it.po index 3b719322..cbbc766b 100644 --- a/castle_masonry/locale/it.po +++ b/castle_masonry/locale/it.po @@ -1,191 +1,207 @@ # ITALIAN LOCALE FILE FOR THE CASTLE MASONRY MODULE # Copyright (C) 2017 Philipbenr And DanDuncombe # This file is distributed under the same license as the CASTLE MASONRY package. -# Hamlet , 2017. +# Hamlet <54187342+h4ml3t@users.noreply.github.com> 2017, 2019. # msgid "" msgstr "" "Project-Id-Version: Castle Masonry\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2017-02-21 23:41-0700\n" -"PO-Revision-Date: 2017-09-10 22:36+0100\n" -"Last-Translator: H4mlet \n" +"POT-Creation-Date: 2019-11-12 12:13+0100\n" +"PO-Revision-Date: 2019-11-12 12:24+0100\n" +"Last-Translator: Hamlet <54187342+h4ml3t@users.noreply.github.com>\n" "Language-Team: \n" +"Language: it\n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=UTF-8\n" "Content-Transfer-Encoding: 8bit\n" "Plural-Forms: nplurals=2; plural=(n != 1);\n" -"Language: it\n" -"X-Generator: Poedit 1.6.10\n" +"X-Generator: Poedit 2.2.1\n" -#: arrow_slits.lua:12 +#: arrow_slits.lua msgid "@1 Arrowslit" msgstr "Feritoia per frecce di @1" -#: arrow_slits.lua:33 +#: arrow_slits.lua msgid "@1 Arrowslit with Cross" msgstr "Feritoia a croce per frecce di @1" -#: arrow_slits.lua:58 +#: arrow_slits.lua msgid "@1 Arrowslit with Hole" msgstr "Feritoia a foro per frecce di @1" -#: arrow_slits.lua:81 +#: arrow_slits.lua msgid "@1 Embrasure" msgstr "Feritoia di @1" -#: init.lua:29 +#: init.lua msgid "Stonewall" msgstr "muro di pietra" -#: init.lua:32 +#: init.lua msgid "Cobble" msgstr "ciottoli" -#: init.lua:35 +#: init.lua msgid "Stonebrick" -msgstr "mattoni di pietra" +msgstr "mattone di pietra" -#: init.lua:38 +#: init.lua msgid "Sandstone Brick" -msgstr "mattoni di arenaria del deserto" +msgstr "mattone d'arenaria del deserto" -#: init.lua:41 +#: init.lua msgid "Desert Stone Brick" -msgstr "mattoni di pietra del deserto" +msgstr "mattone di pietra del deserto" -#: init.lua:44 +#: init.lua +msgid "Desert Sandstone Brick" +msgstr "mattone d'arenaria del deserto" + +#: init.lua +msgid "Silver Sandstone Brick" +msgstr "mattone d'arenaria argentata" + +#: init.lua msgid "Stone" msgstr "pietra" -#: init.lua:47 +#: init.lua msgid "Sandstone" msgstr "arenaria" -#: init.lua:50 +#: init.lua msgid "Desert Stone" msgstr "pietra del deserto" -#: init.lua:53 +#: init.lua +msgid "Desert Sandstone" +msgstr "arenaria del deserto" + +#: init.lua +msgid "Silver Sandstone" +msgstr "arenaria argentata" + +#: init.lua msgid "Wood" msgstr "legno" -#: init.lua:56 +#: init.lua msgid "Ice" msgstr "ghiaccio" -#: init.lua:59 +#: init.lua msgid "Snow" msgstr "neve" -#: init.lua:62 +#: init.lua msgid "Obsidian Brick" -msgstr "mattoni di ossidiana" +msgstr "mattone d'ossidiana" -#: murder_holes.lua:14 +#: murder_holes.lua msgid "@1 Murder Hole" msgstr "Buca assassina di @1" -#: murder_holes.lua:33 +#: murder_holes.lua msgid "@1 Machicolation" msgstr "Caditoia di @1" -#: paving.lua:11 +#: paving.lua msgid "Paving Stone" msgstr "Pietra pavimentale" -#: paving.lua:30 +#: paving.lua msgid "Pavement Brick" -msgstr "Mattoni pavimentali" +msgstr "Mattone pavimentale" -#: paving.lua:40 +#: paving.lua msgid "Castle Pavement Stair" msgstr "Scala pavimentale del castello" -#: paving.lua:41 +#: paving.lua msgid "Castle Pavement Slab" msgstr "Lastra pavimentale del castello" -#: paving.lua:49 +#: paving.lua msgid "Roof Slates" -msgstr "Tegole di ardesia" +msgstr "Tegole d'ardesia" -#: pillars.lua:18 +#: pillars.lua msgid "@1 Pillar Base" msgstr "Base della colonna di @1" -#: pillars.lua:36 +#: pillars.lua msgid "@1 Half Pillar Base" msgstr "Mezza base della colonna di @1" -#: pillars.lua:54 +#: pillars.lua msgid "@1 Pillar Top" msgstr "Capitello di @1" -#: pillars.lua:72 +#: pillars.lua msgid "@1 Half Pillar Top" msgstr "Mezzo capitello di @1" -#: pillars.lua:90 +#: pillars.lua msgid "@1 Pillar Middle" msgstr "Fusto della colonna di @1" -#: pillars.lua:106 +#: pillars.lua msgid "@1 Half Pillar Middle" msgstr "Mezzo fusto della colonna di @1" -#: pillars.lua:123 +#: pillars.lua msgid "@1 Crossbrace" msgstr "Costolone di @1" -#: pillars.lua:147 +#: pillars.lua msgid "@1 Extended Crossbrace" msgstr "Costolone esteso di @1" -#: stone_wall.lua:11 +#: stone_wall.lua msgid "Castle Wall" msgstr "Muro del castello" -#: stone_wall.lua:22 +#: stone_wall.lua msgid "Castle Rubble" msgstr "Detriti del castello" -#: stone_wall.lua:57 +#: stone_wall.lua msgid "Castle Corner" msgstr "Angolo del castello" -#: stone_wall.lua:78 +#: stone_wall.lua msgid "Stone Wall" msgstr "Muro di pietra" -#: stone_wall.lua:86 +#: stone_wall.lua msgid "Rubble" msgstr "Detriti" -#: stone_wall.lua:100 +#: stone_wall.lua msgid "Castle Stonewall Stair" msgstr "Scala del castello in muro di pietra" -#: stone_wall.lua:101 +#: stone_wall.lua msgid "Castle Stonewall Slab" msgstr "Lastra del castello in muro di pietra" -#: stone_wall.lua:108 +#: stone_wall.lua msgid "Castle Rubble Stair" msgstr "Scala del castello in detriti" -#: stone_wall.lua:109 +#: stone_wall.lua msgid "Castle Rubble Slab" msgstr "Lastra del castello in detriti" -#: stone_wall.lua:117 stone_wall.lua:143 +#: stone_wall.lua msgid "Dungeon Stone" msgstr "Pietra del sotterraneo" -#: stone_wall.lua:156 +#: stone_wall.lua msgid "Dungeon Stone Stair" msgstr "Scala di pietra del sotterraneo" -#: stone_wall.lua:157 +#: stone_wall.lua msgid "Dungeon Stone Slab" msgstr "Lastra di pietra del sotterraneo" diff --git a/castle_masonry/locale/template.pot b/castle_masonry/locale/template.pot index 93b2f4ce..cc402876 100644 --- a/castle_masonry/locale/template.pot +++ b/castle_masonry/locale/template.pot @@ -8,182 +8,199 @@ msgid "" msgstr "" "Project-Id-Version: PACKAGE VERSION\n" "Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2017-02-21 23:41-0700\n" +"POT-Creation-Date: 2019-11-12 13:31+0100\n" "PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" "Last-Translator: FULL NAME \n" "Language-Team: LANGUAGE \n" +"Language: \n" "MIME-Version: 1.0\n" "Content-Type: text/plain; charset=CHARSET\n" "Content-Transfer-Encoding: 8bit\n" -#: arrow_slits.lua:12 +#: arrow_slits.lua msgid "@1 Arrowslit" msgstr "" -#: arrow_slits.lua:33 +#: arrow_slits.lua msgid "@1 Arrowslit with Cross" msgstr "" -#: arrow_slits.lua:58 +#: arrow_slits.lua msgid "@1 Arrowslit with Hole" msgstr "" -#: arrow_slits.lua:81 +#: arrow_slits.lua msgid "@1 Embrasure" msgstr "" -#: init.lua:29 +#: init.lua msgid "Stonewall" msgstr "" -#: init.lua:32 +#: init.lua msgid "Cobble" msgstr "" -#: init.lua:35 +#: init.lua msgid "Stonebrick" msgstr "" -#: init.lua:38 +#: init.lua msgid "Sandstone Brick" msgstr "" -#: init.lua:41 +#: init.lua msgid "Desert Stone Brick" msgstr "" -#: init.lua:44 +#: init.lua +msgid "Desert Sandstone Brick" +msgstr "" + +#: init.lua +msgid "Silver Sandstone Brick" +msgstr "" + +#: init.lua msgid "Stone" msgstr "" -#: init.lua:47 +#: init.lua msgid "Sandstone" msgstr "" -#: init.lua:50 +#: init.lua msgid "Desert Stone" msgstr "" -#: init.lua:53 +#: init.lua +msgid "Desert Sandstone" +msgstr "" + +#: init.lua +msgid "Silver Sandstone" +msgstr "" + +#: init.lua msgid "Wood" msgstr "" -#: init.lua:56 +#: init.lua msgid "Ice" msgstr "" -#: init.lua:59 +#: init.lua msgid "Snow" msgstr "" -#: init.lua:62 +#: init.lua msgid "Obsidian Brick" msgstr "" -#: murder_holes.lua:14 +#: murder_holes.lua msgid "@1 Murder Hole" msgstr "" -#: murder_holes.lua:33 +#: murder_holes.lua msgid "@1 Machicolation" msgstr "" -#: paving.lua:11 +#: paving.lua msgid "Paving Stone" msgstr "" -#: paving.lua:30 +#: paving.lua msgid "Pavement Brick" msgstr "" -#: paving.lua:40 +#: paving.lua msgid "Castle Pavement Stair" msgstr "" -#: paving.lua:41 +#: paving.lua msgid "Castle Pavement Slab" msgstr "" -#: paving.lua:49 +#: paving.lua msgid "Roof Slates" msgstr "" -#: pillars.lua:18 +#: pillars.lua msgid "@1 Pillar Base" msgstr "" -#: pillars.lua:36 +#: pillars.lua msgid "@1 Half Pillar Base" msgstr "" -#: pillars.lua:54 +#: pillars.lua msgid "@1 Pillar Top" msgstr "" -#: pillars.lua:72 +#: pillars.lua msgid "@1 Half Pillar Top" msgstr "" -#: pillars.lua:90 +#: pillars.lua msgid "@1 Pillar Middle" msgstr "" -#: pillars.lua:106 +#: pillars.lua msgid "@1 Half Pillar Middle" msgstr "" -#: pillars.lua:123 +#: pillars.lua msgid "@1 Crossbrace" msgstr "" -#: pillars.lua:147 +#: pillars.lua msgid "@1 Extended Crossbrace" msgstr "" -#: stone_wall.lua:11 +#: stone_wall.lua msgid "Castle Wall" msgstr "" -#: stone_wall.lua:22 +#: stone_wall.lua msgid "Castle Rubble" msgstr "" -#: stone_wall.lua:57 +#: stone_wall.lua msgid "Castle Corner" msgstr "" -#: stone_wall.lua:78 +#: stone_wall.lua msgid "Stone Wall" msgstr "" -#: stone_wall.lua:86 +#: stone_wall.lua msgid "Rubble" msgstr "" -#: stone_wall.lua:100 +#: stone_wall.lua msgid "Castle Stonewall Stair" msgstr "" -#: stone_wall.lua:101 +#: stone_wall.lua msgid "Castle Stonewall Slab" msgstr "" -#: stone_wall.lua:108 +#: stone_wall.lua msgid "Castle Rubble Stair" msgstr "" -#: stone_wall.lua:109 +#: stone_wall.lua msgid "Castle Rubble Slab" msgstr "" -#: stone_wall.lua:117 stone_wall.lua:143 +#: stone_wall.lua msgid "Dungeon Stone" msgstr "" -#: stone_wall.lua:156 +#: stone_wall.lua msgid "Dungeon Stone Stair" msgstr "" -#: stone_wall.lua:157 +#: stone_wall.lua msgid "Dungeon Stone Slab" msgstr "" diff --git a/castle_masonry/locale/template.txt b/castle_masonry/locale/template.txt new file mode 100644 index 00000000..2827637e --- /dev/null +++ b/castle_masonry/locale/template.txt @@ -0,0 +1,49 @@ +# textdomain:castle_masonry + +@1 Arrowslit= +@1 Arrowslit with Cross= +@1 Arrowslit with Hole= +@1 Embrasure= +Stonewall= +Cobble= +Stonebrick= +Sandstone Brick= +Desert Stone Brick= +Desert Sandstone Brick= +Silver Sandstone Brick= +Stone= +Sandstone= +Desert Stone= +Desert Sandstone= +Silver Sandstone= +Wood= +Ice= +Snow= +Obsidian Brick= +@1 Murder Hole= +@1 Machicolation= +Paving Stone= +Pavement Brick= +Castle Pavement Stair= +Castle Pavement Slab= +Roof Slates= +@1 Pillar Base= +@1 Half Pillar Base= +@1 Pillar Top= +@1 Half Pillar Top= +@1 Pillar Middle= +@1 Half Pillar Middle= +@1 Crossbrace= +@1 Extended Crossbrace= +Castle Wall= +Castle Rubble= +Castle Corner= +Stone Wall= +Rubble= +Castle Stonewall Stair= +Castle Stonewall Slab= +Castle Rubble Stair= +Castle Rubble Slab= +Dungeon Stone= +Dungeon Stone Stair= +Dungeon Stone Slab= diff --git a/castle_masonry/mod.conf b/castle_masonry/mod.conf index dd444cce..7ae9c986 100644 --- a/castle_masonry/mod.conf +++ b/castle_masonry/mod.conf @@ -1 +1,7 @@ name = castle_masonry +depends = default +optional_depends = moreblocks, stairs, building_blocks, asphalt, streets, intllib +description = """ +This is a mod all about creating castles and castle dungeons. +Many of the nodes are used for the outer-walls or dungeons. +""" \ No newline at end of file diff --git a/castle_masonry/murder_holes.lua b/castle_masonry/murder_holes.lua index 090c3998..cb7bfe65 100644 --- a/castle_masonry/murder_holes.lua +++ b/castle_masonry/murder_holes.lua @@ -1,6 +1,17 @@ --- internationalization boilerplate -local MP = minetest.get_modpath(minetest.get_current_modname()) -local S, NS = dofile(MP.."/intllib.lua") + +-- Used for localization, choose either built-in or intllib. + +local MP, S, NS = nil + +if (minetest.get_modpath("intllib") == nil) then + S = minetest.get_translator("castle_masonry") + +else + -- internationalization boilerplate + MP = minetest.get_modpath(minetest.get_current_modname()) + S, NS = dofile(MP.."/intllib.lua") + +end ------------------------------------------------------------------------------------- diff --git a/castle_masonry/paving.lua b/castle_masonry/paving.lua index a6c5c422..e3cfff6a 100644 --- a/castle_masonry/paving.lua +++ b/castle_masonry/paving.lua @@ -3,9 +3,20 @@ minetest.register_alias("castle:pavement_brick", "castle_masonry:pavement_brick" minetest.register_alias("castle:roofslate", "castle_masonry:roofslate") --- internationalization boilerplate -local MP = minetest.get_modpath(minetest.get_current_modname()) -local S, NS = dofile(MP.."/intllib.lua") +-- Used for localization, choose either built-in or intllib. + +local MP, S, NS = nil + +if (minetest.get_modpath("intllib") == nil) then + S = minetest.get_translator("castle_masonry") + +else + -- internationalization boilerplate + MP = minetest.get_modpath(minetest.get_current_modname()) + S, NS = dofile(MP.."/intllib.lua") + +end + minetest.register_node("castle_masonry:pavement_brick", { description = S("Paving Stone"), diff --git a/castle_masonry/pillars.lua b/castle_masonry/pillars.lua index 082f82e3..13b7c15d 100644 --- a/castle_masonry/pillars.lua +++ b/castle_masonry/pillars.lua @@ -1,6 +1,18 @@ --- internationalization boilerplate -local MP = minetest.get_modpath(minetest.get_current_modname()) -local S, NS = dofile(MP.."/intllib.lua") + +-- Used for localization, choose either built-in or intllib. + +local MP, S, NS = nil + +if (minetest.get_modpath("intllib") == nil) then + S = minetest.get_translator("castle_masonry") + +else + -- internationalization boilerplate + MP = minetest.get_modpath(minetest.get_current_modname()) + S, NS = dofile(MP.."/intllib.lua") + +end + castle_masonry.register_pillar = function(material) local composition_def, burn_time, tile, desc = castle_masonry.get_material_properties(material) diff --git a/castle_masonry/screenshot.png b/castle_masonry/screenshot.png index ff33db06571248812b9a8843f0b1389cb0738eb6..2dd9cd8058207a5c4074ce54b681739151910d15 100644 GIT binary patch literal 287410 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üMRuBA>*a_(o%ZG}qqj@D~RHoUKx? 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

    *(Z)Rr?M_UOL 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

    w% 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�fN;Z4CP7 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 diff --git a/castle_masonry/stone_wall.lua b/castle_masonry/stone_wall.lua index ae598e0d..53ea22e9 100644 --- a/castle_masonry/stone_wall.lua +++ b/castle_masonry/stone_wall.lua @@ -1,6 +1,18 @@ --- internationalization boilerplate -local MP = minetest.get_modpath(minetest.get_current_modname()) -local S, NS = dofile(MP.."/intllib.lua") + +-- Used for localization, choose either built-in or intllib. + +local MP, S, NS = nil + +if (minetest.get_modpath("intllib") == nil) then + S = minetest.get_translator("castle_masonry") + +else + -- internationalization boilerplate + MP = minetest.get_modpath(minetest.get_current_modname()) + S, NS = dofile(MP.."/intllib.lua") + +end + minetest.register_alias("castle:stonewall", "castle_masonry:stonewall") minetest.register_alias("castle:dungeon_stone", "castle_masonry:dungeon_stone") diff --git a/castle_masonry/textures/castle_corner_stonewall2.png b/castle_masonry/textures/castle_corner_stonewall2.png index d9d7d0c72f0fbd9e7602f22d1e2c13d936d4d3d2..8c9d8e9d2a7522e5d127a7f5ae9183a4b0a6e157 100644 GIT binary patch delta 648 zcmV;30(bqY1)v3xB!6c~L_t&-83n;hixo!{0N`_~PFHu|*F01-$~Xgxph#jy2qdfE zkf^&X++~wp*7<8$WgkUQ5kyB<4!DSl$?f~YRKZ{_)eDA?IbE_GeAo)RT&y zpM5Ih=C|K}xq0g-ga}%k8v*3cU)F#9`L~IJj@*|aAZXz9aeviw&fcf3X9OmTL^eqT zNF^n*hE_hdbp-(LKCLdz8t1Bz#kM8{{qUhnSt_bHu{FBhq+A3~ZXOggpwe$+R4D>O z;423gj;pAZ2608mw}HAFxe6ag;pj>?tu_aB{nedk&c1r-rNG;Py9eR8^44fh`0 z%_)Hb%^Dh_tbbz(+%MMwR5*BJjHp=aykE|{ZoSSTnWHzxP|mUmEC7p`5D@^-kVp|J zps5-)mRymDiilQ3@yA<-7GdS1Y25Mm-!zQ_MMO|l5wVu~e#^{z`#S(&Q0eyNy>U(J zkT!u&AHSRraa>pDzS@8E>%*&8FGdbz(784jo_GDT$A7PA6?nr5RL)JBP-NEDMIrjE zD3>lyVj77gFjQF=S&XZx>)Bc`2D37A88~y!I5H|U?=~r`BNuZ|M!b*0krF3H?Ky>{ zDw0cCdcJ;R=k1&Kr?1ac1p!n=6pXR+MNii*Ox4=|`hh0n@9zI_{OuutD<#y;ggLmn zdimmP{(tY{-p|LXYK@@)l3AA91jPg5bZ0DLOF`8CufNDOyA(<7Rhn28alt iDynL%m7*o*{{gI=skAb5wO;@L002ovPDHLkU;%<74mCXh delta 658 zcmV;D0&V@E1*!#*B!6*9L_t(|+9l6BuT@190N}M|)}FohIp-c8R|7(VCKwZqF@TAM zB}UQCg3iXy+W*8au(H6!M34mWBt|cff*Woj+@R;RUo*32W-SZ9fAG=wpI;ku-VN#e zvT2)oQPFS5ugbjn_Pej&|KObvB4}}L29Qr*cR&8{3q?Uk?tk^zA1>>_sha}l%sx$? z5tu9j*d(zsQc@yoXzycNR{-$j)&AnLajptkY->W$lao!#Qc=Z;t3Tem;^=-SmH3MwLkXxgTI zaQ~>^k2k;kIDe-E3bbr!jMBvtc-VCTR5*BJjHp=ayx*-io36_unWHzxP|nf^7JzL` zhzI~^NTi4q&{WMDORh*nMMNv2}J zgd)qfE(+0SMY(uk5z|a0fuYK}$YNYgn}MwbV=yZ-myt8)j5DJ`>rJ1sI&v`&WW@U@ z94T>P)PYk-sv^0Ro#%JoJM;Lj=SP1Ys|o_BiYORk*V}=vzImY5{yU7cn16EX(;L^{ z25_Z>x_? z=9EMWoo;wJV#3KEEnwXcfdiDF0M-Lwt sk;S|@du|Dc{|5}}-McF(T5|pmJTSPY)Kq`C01E&B07*qoM6N<$g767F82|tP diff --git a/castle_masonry/textures/castle_corner_stonewall_tb.png b/castle_masonry/textures/castle_corner_stonewall_tb.png index d72d78d5917fbb36dabe44d133df69004dba39c0..1b0e02d0376fa72196a56f361655034b449871c6 100644 GIT binary patch delta 658 zcmV;D0&V@X1*!#*B!6*9L_t&-83n<+jub}}0ML7HRdrW)&+g8?V6kj0kN|-Q$bf*5 z4+8NGI7S5i1IJEmOP2fz4zL_JU>C%~zGk*(rn~F?@;UhG69 zqYjSMg7?}kMt#0ESTYg0luOQEdL=oYZ*(j9V1jYJt*gNWeE#@H>%vUdM|<7*Wsktx zin&+-KytD%13*)e@wuyLG=ZB@BeFX;WXq^Nm@hZR#(e+g_Es%ADRfBvs85#a>D?Qp zl*Q!u!K~IkH-Am-LhJ-r0&Rk>sn$01#uJv4rP`m>i^+JO_U8?|y+0dl=;{g~>5vwa zk0}*^$@+`6@gas(j8F5n7M#v{g^#{JAOOZtFvbvW?X+u~0000U+}u9eXGk``r56u>SP$yI%gwWU-+y`UeTrGyx?wTsD3&JV`U8oAYoxW3;AGu$V~h;|z|XI)>7UfpRmuLZKmQ&E smr^7mM9c*ci*-TP;(F8s=zRPi8p))*6dTZg01E&B07*qoM6N<$f-FcwqyPW_ delta 667 zcmV;M0%ZNF1+xW^B!7BIL_t(|+9k@nZW~7w0MI)#cV~BYsU;~&77f@5k|KdScdk^ho(ST5EG#hd~f_tJ4*7^RxT#xX4KBb#Y|v`Nm}2J zhO?{^>~sh*UhhU9<6ioPQvm2j+X`NC_GNv<`_WN=e{Q>iF-G9wwB8%CIT`@?{-Rw@ zg^h5v?mw=!vsx4k@a1pMm&-W-41;{}{MXIset7bDe}9yJuMhKfGFazA`1)*GbG+OR zO;zE)H=B!#X$JW8>27dA6igZqIs4$1F}?DPL?7ZrR42leoFL7hwV{-ZqZyPljDFel zBt@z1-9Z(I+d(%RDKXZ1!YQTGDvNGV6o_@7J$M&x6__Dq*ydd62qodK8^Bv*+$4|EH@QUxY>!QdNMX7k%HEmJWhS}@d zrfKS~MHaCoK@3A5k4NL{<dxV1WK7K%c`apMKPPrcz;y|$793mB&AWzOw+)MN#Et#d!^y?+*{WZjZr1lw}-6QC0CI$(n`_9jm7) zyeiT(^Za15-CVqwW?4eWP{QC>5rZJGi6cpv*k%+{Syt+%HjG}L7hTs8+lGy-s4_+` zFI;#J6Ni9lKYxrRMJp=KSVC#C%YDZo5oMH8K@c=m8#)eHg)lHU@sH8tPD-n ztEwuSnzOJi^1^=aqi(x@WLY*C41ZWrY6a*##tuql@856h#=jtBntZ(RRE2c=aJKDr_4;NCsX%O;cTOZTxN1G}yK!NtR?q zV(jFNH@Uw>*nh!L+TVwwtY!tHG$JHgroQ9gfKWmR&-1FHx{d=?VGIOK{9W+yFf~oH zscURmtSsXs;W!TBEz?}BmdPQ-wk1mvOoyiPXPO+4D8>m?rMxKQdA3|G>Y6Ld5+U@u z-&Zwlwb_JW07Ii+KYtj;k*2rYb_cGPiv?p0?t;B<9Di9{!#z&Mj1`hB!<(xrG#Y(9 z9S)(mjqz+gw@n=EcOpRIo3i50hC@L_-oOj?0nas^wu^>m=kG2r2niHLLlVR^j~o}r zG|$(SNwx4@_0du8aYyeJG^L;YSC!m=zM-#Zf)=Me0xscIM!8b#m;#u%;EYZ}F1i|Z&r5LR!s3`!|5nmpVah6(P>pBKm74tx$M z5Xk6nwwv{uRi&co4VcNQ^>P7>0O)4BciU~#vK>N74~JwnoBacKgp9%ugbiB&0000< KMNUMnLSTXsl|z#N diff --git a/castle_masonry/textures/castle_rubble.png b/castle_masonry/textures/castle_rubble.png index fbaa32c067b6492935690e54ce068be10d7bc1e4..47881187dc6cf17de5811406054335fa5988cc89 100644 GIT binary patch delta 532 zcmV+v0_**=1g!*+B!BctL_t&-83n;xZsSG}1<-mnNl~&e9tVSbWkK2h5)1?wWRlPl zMRs-F$~pY!AKya~Oz)Hbe8zUho6Gyu)TIDr&Z@_e(`3JTG%8tFy0|XHuSjCNFE)vh z@Sa1YCX+sp#Qz;}6){#@&5quurrT@W&6F5a%Y|onb?jrX@PBQQwb|E+&+U}IwtkHI zb;euMh2@nHV@X1<0siLzu_)0q>2o{3H`5<$TU?atjC=qrL_}xgkzk`@X5h@Kszo&t zLR@=~Kn3%ynGi=7v(9GMW>*suE+Q%#BM(5niE`=N!fgya-bc{r$y4{sNUH)4}K;6S$ znrPu)kAn~em{lbH9(iiQ0FQw8Wq)lVi^ZigRo!+AL?IlRwnh}RMyeDMcL!#CJG5aT zfVB=2rb4_n**z_)3r~#4Mq;^nRumMt$CfEyiSJRDE{*YFfsC2Cxqm(CzULASQOpzt z*DgmZxqH6NT7Ok{3qXibv$7KZT8C9C@~P2kc@jaUWgjw6f{a{rD5@wB=*phikcjBE zIRKr7&rR0IrX+iW7`z_a=DBC6G7@U>-0|T71Z&2WWLZ!5%#v?YN6x4DG7<`o4R=qE z5UP)Rh0>+NwZM? z`CRuZMQK7!I0)9vOXD>_m8!raKUYVDs_Kd|sYoR-46nD&BP*;1l`7AQo24h1=hSd& cG$sEJX%pylO7Zq*4*&oF07*qoM6N<$f)J(t7ytkO diff --git a/castle_masonry/textures/castle_stonewall.png b/castle_masonry/textures/castle_stonewall.png index b8f823fd39f1933ce4981f5d47f3a3145c060659..9c261894ebe010af2a77b88290aab2d69057d25f 100644 GIT binary patch delta 634 zcmV-=0)_pQ1(OAkB!5~-L_t&-86Ck}ZyYrg0N`_MkLR}8B%5q+h^A0c1fo*g7kI3M z_(A+uUU+F#NGRIwW_D&h9$(I}O~v=&@4vmV%;QX(b<;NWs#2r%G1L8EH(k3u@0J*> zi+4x&=J{5k5Fw*h`m^;2#Yg%y%`Qf*s*A3F4}$O&tOfeQdMN_fry&}!jg z?zJ$E6hlFP*I#Y4Qaj^54f8_j)#LS9UG+`1P#Vl~d$2!$`>2$%pMzRA%7&bU99*cS zXcR64eXB=LgMW(x%k9Blt?K>kVoX;Ttzyo`#|PsSX2*GOOw9MgOeu|)dMyCpVGiq7 z*IItuo$&pSHxdB_d=V*aSIxsh@W1aLub-T^A;InL`0-#ay0(&_etLG<*9s5;@t?um zAD3Ugdp4fzpS$UDy)q$2=9}yDPOA?G(>INpd^C}u5a!yKgqA&^UqG1jnfm!e*7&x(|lfjc(R_jfQmVrX;BKTl)1p|Zq!z>%07*qoM6N<$f-C+u2mk;8 delta 635 zcmV->0)+jO1(XGlB!62;L_t(|+6BSeavL=m0N`KJzmj(CY@E1mGld}x9pI*&X}N(H z=mYgxI~};GImCfD_MWWO>MZen`03+&9pgBM+g8?6tScO~^*J1RecRN#>t^vz8~-qv z_uuW1P;{AaqPR7-u0)XHDo95x{`H5KrIgd`u$8D?&Xo1W2}UK7 zCBUlYqYb_Blz)`{S#Q_kG#l^Jc2i@FSy|sHgCv`ndlN&9hkgzzjXJD21%PgLZOsK| ze;qGq5@~C3=q~`^L)xunx4`LQ0pRCX?cH_l66}w|mxuGFsVfHf_Vvw5AP@qCJof4^ zEWiEudc5dAj?+!MR?hnv?_XRu9KW8`N=lrpS3W?=n}0^ylvkW-8=#aB!(#2Q1V&Pb zXAY`(4aMa_lDk_jw){|K{$dVw5wg zUHJN}&~!qMJ~vQ(xZm!dr*1Zc5aXi_IRW|Q{)NlMg+K`O+5rGQ4MqyQ*dQ70ltD_7 zQ4k~n#2EhRrdkLWQpwra008K7R?~t=G-J8I{y1`ujYL{#EajvuQ87b8C=`hE@qbDJ Vqnrm)mBRo4002ovPDHLkV1klBHu?Yn diff --git a/castle_shields/default_shields.lua b/castle_shields/default_shields.lua index f29a8e53..1c17216c 100644 --- a/castle_shields/default_shields.lua +++ b/castle_shields/default_shields.lua @@ -2,9 +2,21 @@ minetest.register_alias("castle:shield", "castle_shields:shield_1") minetest.register_alias("castle:shield_2", "castle_shields:shield_2") minetest.register_alias("castle:shield_3", "castle_shields:shield_3") --- internationalization boilerplate -local MP = minetest.get_modpath(minetest.get_current_modname()) -local S, NS = dofile(MP.."/intllib.lua") + +-- Used for localization, choose either built-in or intllib. + +local MP, S, NS = nil + +if (minetest.get_modpath("intllib") == nil) then + S = minetest.get_translator("castle_shields") + +else + -- internationalization boilerplate + MP = minetest.get_modpath(minetest.get_current_modname()) + S, NS = dofile(MP.."/intllib.lua") + +end + --The following colors are permitted: -- "black", "blue", "brown", "cyan", "dark_green", "dark_grey", "green", "grey", "magenta", "orange", "pink", "red", "violet", "white", "yellow" @@ -15,4 +27,4 @@ local S, NS = dofile(MP.."/intllib.lua") castle_shields.register_shield("shield_1", S("Mounted Shield"), "red", "blue", "slash") castle_shields.register_shield("shield_2", S("Mounted Shield"), "cyan", "yellow", "chevron") -castle_shields.register_shield("shield_3", S("Mounted Shield"), "grey", "green", "cross") \ No newline at end of file +castle_shields.register_shield("shield_3", S("Mounted Shield"), "grey", "green", "cross") diff --git a/castle_shields/locale/castle_shields.it.tr b/castle_shields/locale/castle_shields.it.tr new file mode 100644 index 00000000..51444904 --- /dev/null +++ b/castle_shields/locale/castle_shields.it.tr @@ -0,0 +1,3 @@ +# textdomain:castle_shields + +Mounted Shield=Scudo appeso diff --git a/castle_shields/locale/template.txt b/castle_shields/locale/template.txt new file mode 100644 index 00000000..24e5751b --- /dev/null +++ b/castle_shields/locale/template.txt @@ -0,0 +1,3 @@ +# textdomain:castle_shields + +Mounted Shield= diff --git a/castle_shields/mod.conf b/castle_shields/mod.conf index 5df74cc7..2e795138 100644 --- a/castle_shields/mod.conf +++ b/castle_shields/mod.conf @@ -1 +1,4 @@ name = castle_shields +description = Adds decorative wall shields +depends = default, dye +optional_depends = intllib diff --git a/castle_shields/screenshot.png b/castle_shields/screenshot.png index b2cfd5fab7cbdb5354120277486b695cb4e4ab30..d34c8e5acaed7f1559bd1a8d151a36cf6e5eae1a 100644 GIT binary patch literal 14135 zcmd6OXH-*L*d`_PB3(d`7D^B#p{c0UPy#`^0#btnfuL|HqS6d4p*N{w07(QzrHKe4 zEr4EnQJP9qic&-(AayqP-kJ5SHGk*FtaEaboMh*m{nqDw-W{UlC1WmjQFb~yIxdt6 z(wdHrJ`FsSSee0@l~>=|=;$;LP)I#nVUd+qj>>1Zoxl89+qgURa%+6oX@}NSaAT1| zuh())(#Q&mz}WJr2^R{-nvC%A%je~1dHQ6aC=^AF9NW&n(W+{Ba)Z~@<6xdVvN6xo zY=6eF>ivv!I4p9jmtzG{`8z` z{>=*O)iW~CeR(U|_zo{LhcK9Q{IpO7EeHQ%K^2x_J5WXg;^@r{# zS9$U|R_pv12=DuX*7=!|Kn$XiCf;w+j-GPlb8O&~wUT(G-MiA;YJyWHrh!8lLt=%6 z70%|V__GL6HFG?o^~~o`6{)~-%=*pM=0YQ^qcJ>S;1mOHGtJ)akpd*vo53YyE<8vm zC;x1HghzpmZzJtC?k`UFI}c)%t@Govv*s5M3g>7JiEVz5`vw-SJ`6eL8aeEhySW~C zWqmcCbV)|d?=d0JdEgY@h0n}m_^H5-m~U4_xrgJsJ!(!Q;qwrD#kR5A-1m4cHZhfS z&d_Uc4FP^wl5BAOX{{3*E?_IxrnEKzpT#XDlahh4;?K>xY?U@-B^@BVl9ipsT>x(3 z2X^S~IQ(?0I(WiKKrMoi$%9OFp+VxD~+>{`O#}|K}Cbq24CntHKNIM#G4erN?~%3rme@ zJ!H|mGY5U7Z!?8ll$C~=!F7TQpB>*WcG!%eK>HE1XfV1lV1r>Q;)guq?&sQohw1FY zeJd%UZeG#elg{nVTT_3JuZs>tZvb_Bqr6ib1$Wd{F)Hq&A~jbKXr*fbug;h31$v*^tB9(W;TGSDLTM4ihg0vh$60 zk-J7=OGA_T^vvlKI%@Iuo<;(R-c0U3Xp$WI9hzSfZJPKI7>-}g<`Qk2_7Qfl68;MD zEdBQHovyL#=P80jn;(s6U-*mqKQ<2vDiAC8R?H9P82cr!0Rb|-u#v60sTpqc{rY0= zWu7Vj_NE6XSKur2$u&;lIF_2x*c&lpKYCV0*Xq~uqF!e~j;-RVKff%kHBpB34#wU{ z)|Sw|%SGB={D3}TIP>&HBw_f+d359En9%4=7dOYM?E|lU-VV$}{K=+=TiUV~N6ZP$)0OcZkNY3GHTvd-ti{fK`crjW zx~I10JePBEzZ%N>lB2aF{v`#@uI48Yo5o8?Ri+3g2CxCi5Tg@&_}^n3I?3)A<7ztV77j%?_Q@^&e``3TdPH0Jrj`OMyMYM3CH)u?l%j!NUw z$sMOa90&2@job$dT@Mc<%@uiAa zOfr;0M~RJJ1v-Xa0WiihHy?Td>HIMD-`ZrxzBqQ_&c(IxML9~a&?K3h!=(r`t7qCR zSta4j_I8if?gZ;Oc&Qq__cK)|Cu<(WF2g+aOyTc#rRpqtrc0)3QvU=v((y`HIdYK6 z%Tjfn7i1&MvGyHD_vJXCTGE52xM!-E3GDfq&di1MF#~*WNKdVmz}sK>{cu<-85(+h z_pHPn8nZqnb=-G$+V^=Q3B^V!beY5k)|v&t{a&dD2@Qud#7*6$F#{d<1M|BoN- zOq1jcO73q4AuKgU5t|){XHC@wcVvNm{ou3ZJ`A$ei!mj*r|9 zMw`M{_UdQaO367|cTkq>FlFnsAt{;77lCvbm{J_izLEPp4#YB^(%S31Vzqeq5{HZV zzi&0!IK_PBDxzNeBPU10xR(_F5tE*r|L#7t{RFA&0$W1t_*47k5H2Rfvp_eh`qh}E z@uybq%32>wJo1m6r<4tv)}#Jj;56T`oa~q~*KjAfHEO(@pvZ=^)?x*Y7=6tLnzkr= z4@ru@mCA^n@R&1qIXv;Axc>xjI+yiY3spY>@&1PIR%v-5!$giZi^HYPfkzyAyjpHKOc#ekhQ}jr_e~x#-%ebe z2j!&|Yo2ynkWj15=s8wFH2j&}Oz3$^zk*gwo?QA+@o>h_1rsbQQIV*#NehQw^j#7U3gwVFT)|_V)>wWBo#6t2~ghp~t?K-4E zdM8flO@|8s?pL)MYL%Sh#NB39;?&F zm0QoRg=>bN6q#!8CT#|Un6;BRYpsq_>FutIuAS>4Io=(Z$G(ep>~7Xt?2gtA`Y~wI zi>B3+a@-W+I0L`xFxvD=oFw^_F5!vq$5#qMF!DYCE~(<#viSWBw5j)7NAPa6(iJ4k zZa!71Vfkx2G3*+%mi2jAr)|tkuS8+0E_yF*TqWJsxqMgo_ z@$|QB$8E=H)veemoV6nW8qfXx1dOc4j=i@fY7w(i68^(l0CY05S~oZWdy62560?Q| zM>2-KS=Xw!zC~3q&}WRNP6uFaLo09pEieEvp;eR2{*hhx@3pD*5Y0;uSW*IE$Lr_D z{Wp}|hP$y-rp2Zue^dHBuFAMk4_I?8?bw@e3b8JlcH}5?l@qv!)2+KR?U4ZgnZ8a0 z^G_T4wv%~m%6KwD#gF6P&76b%G9G!Kj-CO+$|I>8_0Nkm5hMl%y?*t7Y?B)m&-Ra% z2Ib+i=4Zm!ZlC|TQ7Y)Jzyx<|iE5n>IFwzx+kYE)jGpPnueV!!bf-zJOinFKxOr3Q zi%jzY%qMV_t;~CCp;LDwV*iQUZ(ZK==LXSfY9`%&04_?Mi-^gZF9k95&f#4hI)chh zXU<_{(C4QP%tUfV3l=6_^dt1|OAiE^x3trT7>-hY=KH7RRpr$pRIE4d3GU7~kO*^u z%aN{H=RqiPtj*36dQbVA@L_VSvzv^!NleCK!KpHn>O?$-30dRtt8p-PkQr?(@>a+Evht#2PA!gT^}DDp(w}v zKGF_ir)kFr9-6yY1DI{FcoVL2$n=U77Z@!*OZb{W$AbE=>!!;khe7 z->Xt&CIDClzid6!nf7g7Ex6a*m05LuVxFm`w^SuPBx;I*y{2$3eC^K-Ye$Ckp(lT; zNN@OeFJi_^h#<5df9l|cxDc{4`vKKfyF*ytsFl?Bv+R!#y+t&S*iqbz1S~jJ_!*8 z1NBUwE}TFOKWF%e@{WZ7u@BMxt9&!lrzRz)v;O>q2%ucpvyAMl%f0c3i|)(5i!y`V zOb>U%K$f$Tz1QnBPD_Z=*_K2ObW?J2C4)A%x5B zqvV)>=o3O3=-905tUsIzOUk-TF!2^_+Wz567Y0Ity#3Yqg^MIbkUv_1b<%u9L)UH^ z3|GdRcgTZR7c;Xiqrr_WHZ}j=eY5?enITlpqN8)(yycJ{^0Y!=Z2aJ|X6nsfBl}XY zXCTX2{fs;Fg+5I9`l5`LEFu@=6Ol`S3px==S=_HB$+fsh5S*eU$=yGHk6tjYU_hxS zUl;vZn+gcdW#6+X*d0!^g)HFl#>ji#Qb!m`6(-YJ`Jv5y+Yy65fS)4yW1w; z{JodHq1RW`+t9ls^Sxm|X@N@~EtEd-@EaF*iJxC=Q=6OCUrk$aPuz`|bNM)WD~fB! zMCrcyhtOZX6;V@%`#K{>7i)UqXY6Wz45e;9V9dv>XFjY>;|EVMW$8$gaBBV5-6?#h z^6renr|nIhL^)-Rx+RYj1uk_}9O0(0F-oeRDU1f|$g(cmmcMzsTctUjkw@&o8C6}A z(ug)1FZSt0qx*TSBTg^(e@;AlG$`{zJo(@>%gWZ5W&(==&wbTAC#lS`&~GXA9qDW`LTGRku5!FK+!bZ7)M|E*LKCY1Fzs5g|e^jZ%fR;dw(K3+9Q0AS#xJ~^1U5sL(K1fH6 zx<7bOn)7F#Ht>%jh(P0bo_5e`kjYUcZfp_hS=>>casKDsS&6Y}$YkUPUzd%GhsrFH zXX$iQMK6*>kcDOZ?F9Fpy}a=lUL#@m7+$QrQ4Gh7em&3Wqo*Hi$HW`6^_&*T({USH z0p+gwXl)ZMbr6ajvO*W;VN`C!vwv(f zYVkN_3rD;BFIjqj5!Fvz7W5R%xK$+02D~g4#ZFZQukEAFlH<=x`; zPS~;9$j_s6Wd_G{g9s0DkTGd7(3a(R=;JeBn?mYYPqd z->`a?^&&rSkh3wkDavfYS-RGY{q2eTDDnATEHCx1yoMF5_@D}o+f-)Iq_n-*J3o?# zH_U1@SS*BDsph8PvdccJfk{Qi{L2^ND+F1N>}AsOs_3?rBEDhzZ`mG?M{^?=>LWzm zvrWTNQ1NJg)^S^nMql;wU1KUzgf@3cqR7Xn6ZX~9Zp-i}U<=Nc^53aG>E_8eAGB$F zY`L07Hhqm#i4mVhhCNTswbs^cO=ceBnBL;Y)3i+)r`cnuC71%aQdOx_zTaAg=$S!P z$|$pEdDxNhvO?HO{yQ{4UAQU-r^TeFr#Z}^b_+}K$mB>W(0D6paz$X$q$Jf3TBW4O zkSO){1b2I`D5^)AZL((^kzL{WKH{(N{oUN+`#g6=gi$oafGMGgvzAXIIc8B_cZ9gl zKY#)!_TCd8t6lD{{m37&o~>grM$1!B7#srd;z<$7JS#=paDdL^UsEtZ4m|c2g$^3? z0fPV$iA%$re*~#cQ{&ZBc`AQHfC$xQiaS9ikRJM%YS5O9Nfveysgc&87N*t{yivLM}>|QGji- z)W9HBMmmkERF_UwMcEPz7cV_vge!I5&HdD!} z(n-dxkiE(&BiHa>w91oX{NIcCXxWDW^ZWu#IiXou^DUa)wRb)aDV&Qh#@K%=+6EyGAyDIZ!zsqsv zH81INrIJLXr4`5n{hYFFlbk=*v&%e*`abuvPtvRNQCwxLhL5a6UDt%hJ76*b3C85I ze0<@4-U!W6pmX;235kmV9Bt^kwHLXilE%!Y_3tB-ak{kE-n)7?#_ptf8-1$$O(!|z zjxCjxCb0VCQ(85Lp}f2!>gLgYJ4lFz`LHD0Bsvp`99S4(e6`WC==^Ruks)70ua*WQ zyA^n6RQ4)aw_=Z>&~g+~WwPH+t)CezHerqKfX!^E8cDB0(dPqJQ*?S!z9^k%UzBao z0{9vgo|=5A@IIwMxdO4dqdMdE3 zUzffp%cNmV7pt9-hU_?PCZIHW%UUXqmqQwH(+E8>AP+zGoMgo5KHrPy&)gUhzE@1g zfYefg3c4Mq8qTc?qk0Pb;wpRLZK}IiNp=Ghi~>rjW%QtfJ_F(h z>7DoUYF*Fug#WE%?6qWeh%evYRtg|G4;BC1eAOJzQlDxzhHb{xu-1vRS=s9ZY8cp4 zjQA3ze4tOH@ghBZOx?ekeQ@)=obp1CY~V2t;><>wew00iC3re@PfM^!`}MFx;>C zj>h5hm4Tq$C4YRox=TAwmJ-bFvOOlDW@Sdgqv8wvpi)Fak(_iIlEi8yqlX+YX3v+a zToOF8J%bm_DLQ-VA^ zu~UtoLS|eN@ZN^4OY7&rGlO=bUP(%Or`Lk@Y9oEGv(FDCt(x{fat-3m$8IbM`j3U4n zYBfyVp45<}GB$Lw!&{rV8sREe%IG92{(bX2tM#aA%%k?+7%6BKYh5{!^|D^&g;C2v zI9djgSk6I|qQcug1ukn*zr!&u5jVWN^tI5d?lV1>bt0Jkok%Y$ab;|>rzV~vN6>ty+BrC<#q=XzW(`Wbj z#3XfxsLQ8eJ+Ls=e#TwIVL5STFPSt?ZR)4?#%L>2j5)jhs`FU*Y>sdjLHiYHAJQdvo|b2_ERAetR*0fY=RSdQf)dA^=e|g6d)8`{ zq%uICloXS6mF;+$2hAApPgtMitK!{A)N!wfT(w(!QW|8-Zz+mb>j%tq&oEcz9MLw@ z`ptY(t^FJQ4wc#8wr?m>ag<9V#6N0B=nEKkBz}5uGO3`AB&3|f-cRS~Tj0Kib47HMpLtxH0`iLIy(ba4x+w7kBLx-G@1ZGWOWIeGCdTYp@ClbO3Rd!Qyfq?L`~p5bn0K*;!jsDe zY25c;HLds^5+DDq6z9MhSWi$S7C-FZgCyP(hhw7L5O{#IuRDdV+4W1oJ6SZ!IOy%zb1*eb`JPhm6k&!-}C^NIK(*8z(b2x|);Gel1-2U*HzuH^+D|M9ROc*AuCc1kQqbL96BIbMOpeSWw3XUgK-gO3BGob2(DD6Kc5!(n?`4d+inYSc9e zAEW_a%ht0OTjaq^e?%l|U|R7VYJ#(Fkbj7^*#JI%4H~b1v4b&I67UmVLaift;di5g z2qJaHBV%H$1zI&>v$_Nks?w{l-GZB19Slr~TMOl^LNZVvQ8qPnz1vP+w4_hcSS|>8 zxOu%&gXPak(f{R?IJKw7wy^)+NZJc9V(;MvKOBKGxEoP>rY+v$lc`%ait?S-CnG@2 zFG?HYOhp`{{M{p&B2*&`M3T+rmdwO1wD|ap=G%A?>MxCvJhzH$Z3a-|D3Qv~T@IlS z0L_NpdHuq3LC_}x75V0Fnc(}riTCu606MedzsZg;gKty9G6$C8CQBa~Vt(f;7Rbno zey8Fv*$YSF{XI(0SYk{^AqgAxgcLh;u~XPK78jvg5{;tnl#3U%i12LCI#`l#!4hmT zIdDm@mI7B+MJ}Q176q1NMUVURz-P@M!ko()+~TOQdFfy--(#*^*kg=-r_jx;dX^tj z@cGw~$&f)pJ{AgZ3bD}EKQrMzbxl*}u9^lpDsjofUGYb@>P?nCiK&J4v8Y{zrrGrT zOx{{J*X3dh80Ci?jeqX5Gf$ITCif&wHA%kl=-}bgfHDp!#&8@E4B3Rf-t@yke&Q5G ziK2)C`=rYBCE3&Qv!Mjfog=0cLYgrfLihMj+kJwN1G3Rt9a_+J77vt^oS(5Mw?Pf zS$etSS{)+zk!o=#=jiwdE;A)@=@S3EHM!v zN?Sn_AhRum!{xn#x>pjC&Q&4@qbOnhTcP4~27Qg&BGn zoI3EeN_{^7!{Bg4?g-#nMlZ?q)V@@mDLnIr&>5?3c<;3dTJ1Q|JqfpCudEXJb8At6 z_WH(x)$=bGqj|$SHRZ_ak-+_rNDBvPB#dG)49P?lADsY%hx4e_ItC~Lfknj7Tgh-6 z&FS}cUOOS?L4Y@D3^4LZye{bG%;@ZTyb`i(_Jv7@O4V@wSZhCMD0QW z81KuaAy13R?Q*Qim0TA38h@}C?ZTS~K@HNEHxK=bI|-gYfV&K4r{t&HUl$sZ zl1~vm!+$CAS1hO9gtL$yhC+zTr+9-A?g&EOGk8HLpXPB9o~6oDk(6bqJI5!`9jrLwAIi00j~ zPE8GRF6&^IW=L@-w@<@!13nGsD`iV^v8wKAHIG-_=N@`ZD*$RW3h=Fyw5nuhFwWf2 z?YJ(dzc>evQs)^fsW^^;kK)N3|9d-+(Dy{!bgKW4Lz03m3`o0LTqXoVy_7UYMI#}1r8v!zV>aLoBwNkUUH0rUHRl~ zi`P>EQWXL$3U4c?%rx`7Qf>|D%h)zTNVg?6Bsw36R1W8pWMAj?pgEN&n%%2urY95MUFfX@Hv__KI|o(E$cT5 zV$*WTV?Esa06nA3bsGdsZ3z=Z(+DoODkU-9Hz)v?ic%4OL z!42M1D06NC1>t9nwU)Kpj+?mE1l2h}f|Vtit8xu7awtwIqC@Gl>H|z4{?A<@K}=nm zu)bz$1)!68m6FOE?u2p6%=ap#+%~OadU1Pra}zb>zV*iX@28=kHa9gh>>-m%c;_y!$^A(;c5qCTuF@0eP%Wr}ROy9?$f6rwcT8AF1!st=JW{Klu z?W;gF(?eVbTKgHBe^ORfKv}=_@zvXxbT=7k`J->2r}EG)3pNaIwHIY=hV{r)_dsJPd|yTBTfB)>c;`@;;3?y%VZ0O(o>8|uneDM zVK|%hyTDb%_V=GXWBVCxyI0uTd)PE!p&9wto)EyF5?cFW2h&fytjNr`9TC&w9IjUM zceKv>le>|bpM?h(HaWHe_xm1=EYtDt2o^me-Rq-J7=hDZU$Ffw>NOO%#GTwyi3qv7 z`y%5xE9fy?J>bsS?pxdIdqp?(xlZ}`vuDrvrFKLbEkSWBy=Y@v{6h=4lZ4Xjoc9$P$LWY9Ca-^HN$a%>3%z7os|AR=hya{55>%cltyC`I3Agc9%tas zZGp(axnc{kg`KhgV`GBb@g@5I*fdz~BwW&aTx2rL;KMGCSjwCb7!hD%DGn&UgbO+kenV;Ymk1oPl;C+)467=?dRH!61hcg* zBF687vymYhrkCB;0Fv&HVRsLi@SySjoUZb1!H!eEd4H~A?ZB3`WuA(nZ$FQ^qCS~r z9jb_9K1Hr%O=+{#7ZX5n`m>mQtcGr#Y+UUxh`4uqZE2zEbA_5Ya6=OF@r0!X{rjMj zm<`Yjzhu$3fv+JINm3kUJB}UlUPClpp4OYEpa{x=2dx@qquo2 zEKROl0N1NDhcUs!m+|H*C=K_2DWER6KxhhXs6b(9z4057AB-(7r0h1xj9R$LGg0i-&JD`n=aP?BNvxJ)jh9d<==8`W2v_wy;pJ;MUdijdUZEWG%>Ho ze|~y=ejy|zA}6Rrkz6TJ=b(}85J}UDSf&K1Vh`U- zrPiBHyB}U$ICsv11ZtZRH$~2ROAyHJh?MI02KIe!x69n1A!g5ctz!AO!c#2j@^ZWK zv?+bM#?Dn$<|GC*4%y6IX>Q)-!i=*qDJS`zo){l5_A{obWt79nbS0?}z|Qj-)TS1e zxY<$<2pglHjPnH8#X)nm$J*3A+nQbDNW(Bn*XWzo;1{W+{qaZ_dwjNRsQ>==9MCb+ z&|tEXJ?ZrX=L3}~$X|H450#fczUV=Hc|LUrR<=~87R;PrZti7c6Q%E5g$RyqVt`9p z-@!XSY#DO{asCMRw9u;b*uS%92$!6@CDs^qV)Gevm3KW8|vq>S{!GP{-Zf$*F@c>!EuLlUpX3Teosf5l#JP z;_f;a^6GW40fzdGgqK_uPRL2)Ts$gg`>g-x=CSeHYB1;7=Z&iqe?GYGe|XH;+?G(? zi*{!Ygl9pyTUhh0ssw)*X{yHtViLu5BH} zN-(C_xSv4bZr+US-Q3)CW#E;1yGUCa9;1-b$})1_Q?9t@*hFqK^j+9!cdK$eX)r42 zv)rac4mz^DxMr3I?vZ#|-lxm5k#oH*zU8dnjUN7-xO;dJ0LD}7F0@4n531f`*(puR z4UCP)G=C=B>_%tQ_5+FS*w3Fy@?_cD-%h#y*>6$#Sx?aAt9$+X<5d`WKwdhR>@A8- z$7_EVJ$dkC>f0wj38ut-$4Hv!jj%0Jr&WCxbs@_-mkhEv&Z9u&#@mg)^J`v)Oix!t znHBi@FK&6W>*;_i!xLrRmi~mS$&&@W3SzC?;fdOsW0FKr49gJZtM=p0ywR&DbF*vu zdXu$2`5rq1npAnN0;xm4U|OtSTI&?~F2P?wb1j@X+Cfs=7?59Sx|qR(h4X7~hQY9x zd3sc?#$z5tZBQDzdwvJCK1_M^{Fn8VV<6B>iYesHx5*j!fi?c$@rk%Q1f~gWEYnl7 zmYQ;&8p4T?lN|&*kL<1%Dy7EI)a)_{E|PD{erRz^1i-*rGgXvR+#z02sN%`gpZM6; zq;ihqDGdO(oqWZ0!PJzcD2pLiMKrYwPz^$poU+t!ysprDR2ytTx4+scC3`!SKPRT% zah9x(Y+tCU$UzvVZ@&S9-@0+)GKc7agoDLdP;=R1&R(nz%MT-RYp--CSi`1Jv4UZL z@=~p92K@p*e>5OOfQeBlMouSfyjn(rH8q$NG{d3mmax)V9{}@?TB!}sD~+YlyALFYPXlvS?P^sXxuzVZTkJX}%maItba*^e+10J!=t`ie1hq*hOD|J= zXsKm`53eyib2_PuKW)jw#xwe}l}$obFQ><4+scNBj0Bsxz@EP3+1W*-8;7)Z?Z)9DR|U*js7j$ zwt^dXevf5#KoDp{bpK2S#-;JHXP_RQhJ2iIxnl-6(IzzfZJ%W zELSD!n1vjnpC4YwOWNwrB$_O-uPaaeQYJwjw$9~KW~3*bBKNr}Uc9j3m%1ZTccUrQ z*mX~PL}R(2=jGvyXHwsTQi_0DyH~{OLd2$AO71k_PkD0kC?eY48T1R`JfPJvbbk)4 z*Xb~^20gHhGzcrv9nz(9z$q46jLa7jyXe6!wIM4_J~aUeCBQQ3{bv|z#zu(UHdN2E zzYTO~4F%^g_(uyCRVC=pDanh$I{ryn&w1AFj5h8)zt!}^H_GDI*~u{CSstMU((ix~ z4bE#t{#1x@{~3SC7+BmXJ9Zi*{l>jIlBl+1}*5 z0*<(w+vN9O8Ns)}?|$)gW7%H4x&QIzzQ}afy>w8BN#1#{e)U99mkK;7*N~wgf39Vv zC0b0XmG_s;i4!MUhR=RF`Bw1K-q5vQ^wy>(J3m?y>DE?P{Vh*_3OS>wR~X6{DXDzF3j50mDYFb?eMM7!J{nqu9)q3a1#nrx@qYDkN)HJKmTv0 db>|@RVOGv?J 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 diff --git a/castle_shields/textures/castle_shield_black.png b/castle_shields/textures/castle_shield_black.png index cb39341c8500f45719549d535aa109a0c5d67860..42d19a9cfbfdd79107bcd7ea98c5c000d2d8ce7c 100644 GIT binary patch delta 9 QcmbQtbdqs`%EY{-01;gSxBvhE delta 81 zcmX@fIGJgJiaSfOlV=DA5Y%v_bTBY5a29w(7BevLUI$@DCym(^Ktah8*NBqf{Irtt g#G+J&^73-M%)IR4H;607OcRGXrEC&DC34c#00&T4Ftaot?kqFoAWfVH1z;T3S>*fFT;f<#+b2 zd*QYApLfo4pP!d^*f(i?oxrnKlbaL+&R&nHf41n?r_N@+bKz1#Qg=SyZC2F$ZE!K_ z!|jU#`(Lsy*4peoRak>jcXIEE4wichd%bt@KHD_W+~U<79hW&4ypB%KGMEpqwKuKF WOI6_K3*iI0gTd3)&t;ucLK6T#t7O{% delta 363 zcmV-x0hIow0{a4x8Gi-<001BJ|6u?C00eVFNmK|32nc)#WQYI&010qNS#tmY4c7nw z4c7reD4Tcy000?uMObuGZ)S9NVRB^vcXxL#X>MzCV_|S*E^l&Yo9;Xs0002^Nkl;sNW&k08C73dcjWb}0H(*IHWUfy#Voo(-$~0qaJ~96w&=Jj^E{-7*lA#9= z7BV~VFgXas{AZ13NER=vpL+!_3QxRo-e2uv zNB+C=3+(qjQB#-|SCm)Ar+Vx3vbZ7v!M$(l yuAS9X;=A}J@0H#q=|v~iqs6V4cEstw6`!%KQ1|I+qa8r^FnGH9xvXMzCV_|S*E^l&Yo9;Xs0003cNklfVW zNCoSF)!-qDFtNK7Pz5<30!Nc92|_gB8fR3%?tb|ZKDuM)fhih-_GCp=twVAUoqQe;lMH$+-(wk5J~!>`CIb+CNp~jAF5} z-Z9ueyZ^pSZ}6-7eRb#F`lvTb>Qi_t*fZBXLcuqT5fb};JXUWP00000NkvXXu0mjf Dx5cp6 diff --git a/castle_shields/textures/castle_shield_cyan.png b/castle_shields/textures/castle_shield_cyan.png index 4bf2f4de323f717e8e433ef0e5843cd5bc4d1efc..4d948229668140f8a2f8bcc5f60f2f51c14cfedb 100644 GIT binary patch delta 9 QcmX@X^pA0Z%EY`|02JZ`R{#J2 delta 81 zcmeyzc!FtyiaSfOlV=DA5Y%v_bTBY5a29w(7BevLUI$@DCym(^Ktah8*NBqf{Irtt g#G+J&^73-M%)IR4KJkcZ{+UCvYA|1CfJRD=%g{b0w^e1 z;u=vBoS#-wo>-L1P+nfHmzkGcoSayYs+V7sKKq@G6j0FzPZ!4!i{81Dv-4OKd7Ae- zoV!r{^R4XR!p7XWD-_;m#wE#pvRnr zF_Tw;!QAw`+AlW&fz@@=wg-#5-gbMeNPB&Gv6oBJQ@4W2M%y)a_@$Q`$NCp+cK)r% zs`vI{kotS diff --git a/castle_shields/textures/castle_shield_dark_grey.png b/castle_shields/textures/castle_shield_dark_grey.png index 00ff60709e21d93b65c6cea0665fce2413a20acc..6c66550ce8a6323138d4fe11440a67a863e1043a 100644 GIT binary patch delta 153 zcmV;K0A~Nc0;&O!8Gir(0026epuGS90C7n~K~xx5WzSI#f-wjKU<$j5i7`gK|KWa^ zEyNd>J@pG&0k?2>z|8ips>IzXplm@F9?_x+<-{{2J)xX>|MS27WD;(%j0)bx00000NkvXX Hu0mjflUhcK delta 303 zcmZ3*xSwf)WIY=L1B3kM|A|0~rP#?cgaZg_I8r)*e9i)o$YKTt-s>RD=%g{b0w^e1 z;u=vBoS#-wo>-L1P+nfHmzkGcoSayYs+V7sKKq@G6j0F~PZ!4!i{9GFfqaJzIGlYC z`&Rvz7P}!n^Z5luR}alP7Ot}UVwVsi!NW!IWPJ@Yxa%H%Rkz2?o4BIIl}l!ENd^%6BVA5 zXY?E1=4!mE=&WN1esJ4J^GNBTWxbb;Bt9{+F-goSXtczZ_7&98tm?QNtWk z#2iz`98<>}RL2}t$Q)J4997C3R?8e#%p6zE99YgASkD|-&>UIN99hvETGJd_)EryY z99z~LT-F?1*Bo8h9A4TSVBH*G-yC7z9Ae=dW8)lSqM48-1XgcWQ1sY o?_O`I9*v~-S{p2T;#ia(d`4|;DE^fG!~g&Q07*qoM6N<$f=pw0J^%m! delta 372 zcmV-)0gL{!0)zvQ8Gi-<001BJ|6u?C00eVFNmK|32nc)#WQYI&010qNS#tmY4c7nw z4c7reD4Tcy000?uMObuGZ)S9NVRB^vcXxL#X>MzCV_|S*E^l&Yo9;Xs00032NklwiOjfnDGinD4;A*h}?L z?#KmNdk^o#cmkO5K+pid3KR$%$%lyp4Z=<)A#+z|e_{*;hSqHnjmigt4e+gc-kod<;}!~K4uV5mf5{`OCCkw`{~Sd zs7e04?Dt=B`faK>ey=SU?003^se15^O;Z>t1a>AJyP8zJaRySkBx3e8JWMMzCV_|S*E^l&Yo9;Xs0002sNkletP4ZMe1B`ZE*NO;41b^He?v61A%nW7*09b2b zt%dGJRiUbonaE58gB3Ey*boA`8{K`|2k-{WIgct7P*tA*cgHUk0FK#NRxsleedEGuv_rVo%&108mvoCEDcRxCr9c-7)9f&0+~UVl%_QpDUh5(Hb?o zp7A~agdS*fv`qHyMrLl1#)JmxoH=*?)4sGaVQ~u9ZmW?_ka*gY(!N>w35m=+I_&fs lHS>OrnfVc{^11X(0WWk1Lo|7eucrV2002ovPDHLkV1np}i^%{0 diff --git a/castle_shields/textures/castle_shield_magenta.png b/castle_shields/textures/castle_shield_magenta.png index 6b60e17d4bface0ad8f8053d12beeca59db3471c..5f5739f7f1e918dfd518e9f59fd66cb47ab822c6 100644 GIT binary patch delta 281 zcmV+!0p|Xs1E~U#8Gi!+001a04^sdD0Blf9R7I-+N3H=&umMi70Z+36QM3Y5v;tGL z0#vpFR<{CIxB^(X0$I5NS-JvRx&m9f0$scUUAzKby#ijo0${)bV!#4p!UJW)17^en zXT<|(#sg`_18T?vY{>&|%L8%D198m*bI${H(FAza1bx@@Vt;A?004MNL_t&-S6z=W zk^?{t!T|gJ|KT;dBB`QAj5;hkV_U!#*2&D+g7dZOnf->uk4^S3iA5d3&P--v(bJUm zOlBO_VtQ*kNi3JtUVo83j(%7KfWBfWrLsPQ8QU^YUhj3!iHJqpyBk@upl#pljU)uL fcdv(k@Bag|TM}w7N=m8h00000NkvXXu0mjfLnm{{ delta 405 zcmV;G0c!rK0;B_w8Gi-<001BJ|6u?C00eVFNmK|32nc)#WQYI&010qNS#tmY4c7nw z4c7reD4Tcy000?uMObuGZ)S9NVRB^vcXxL#X>MzCV_|S*E^l&Yo9;Xs0003YNkl&DrxJMDXD;j4NyT0 z6D6-rmJI+L1__64!R@}6= z3qkz)ZvdXQEN!c%>8FiJu*ivV4kJ$jL7#-xSoJYTo&N^t;ZcFeoiN7dPf<>iHFEk; zdB04yDQw*S1n}%d5VeK@tADA&B#-vL9_Md!3-SBGUJe8h00000NkvXXu0mjfGA*Yn diff --git a/castle_shields/textures/castle_shield_mask_chevron.png b/castle_shields/textures/castle_shield_mask_chevron.png index 59ffa37ffb1acc3cf949652c41a69ba82d1045a6..8a6a0b2a4acb949b05928c5c7a3dab000a2af82f 100644 GIT binary patch delta 9 Qcmcc5IF)gN%EY`v01{yXn*aa+ delta 81 zcmbQrc%N~CiaSfOlV=DA5Y%v_bTBY5a29w(7BevLUI$@DCym(^Ktah8*NBqf{Irtt g#G+J&^73-M%)IR43&NxBEoGr=Q-G$*l2rk&Wd@=(A180FpWHAE+?{yGnbkdkz0Tg5}@$_|Nf5;@o Opr?|&Ci~$;#TWpcZxh=9 diff --git a/castle_shields/textures/castle_shield_orange.png b/castle_shields/textures/castle_shield_orange.png index 11f4a929cf85fe131349f96889b794feeae145dd..aa08ec31e61ca0e30ddce974bc34ce94abf92d5a 100644 GIT binary patch delta 297 zcmV+^0oMMx1Gxf_8Gi!+001a04^sdD0CG@FR7JKZ2)8H*xhx61FABUc3cfN6zcUNK zGz`Hu48k`J!Z;1XI1R%&4a7PQ#5)efI}XM@4#qtX#y$_nJ`cw~56D0e%0dvzLlDeG z5zR&s%|{Z>M-t9R639VPRTkP<7k}Mc89wpdIRF3vf=NU{ zR2Ugu!NFm~Fc1SVlDkg-{aWIj-vO*RaV$zp9Zz-~m3w+w&+Id{;QHupvVW6Atu5H> zGqbkB(F5z5Y;3_Yb2fJDvA9m1^*D|#g?JqO6E3BEO1W&IaHB$@Gak$0bK3V#MzCV_|S*E^l&Yo9;Xs0003tNkl039+z)_HzudPV=>@n^yy>;E^C~kb~48xB>UAH>me2 zy#-JX-mnidB7s$<`{oBw)CC$s61;`v$CHQ{mWq*ll++D+1GWMbi77)$xWdvHR^xnK z{Ph$7ZyqHURe!-#zr;vYyDMoxZEP>MiBcPQ>IkRezt_r0V_Z!_#_=;M?><; z!0LqcoO@In!@!=myHn@gdmG~3uM^KR=N?s&@JNpy<0Hl#7 U_I--RI{*Lx07*qoM6N<$f}QrePyhe` diff --git a/castle_shields/textures/castle_shield_pink.png b/castle_shields/textures/castle_shield_pink.png index a2b08cc5ec777ded6f304a5fa8a77e769bb5c748..6bf89f48f1f059ea0468bb84ded0ea0207438018 100644 GIT binary patch delta 9 Qcmcb_)WI}CWn$hF01^@d_5c6? delta 81 zcmeBRy2La=#hsS|Iv5xjI14-?iy0VruY)k7lg8`{prB-lYeY$Kep*R+ gVo@qXd3m{BW?pu2a$-TMUVc&f>~}U&6BVBW0BtH5%K!iX diff --git a/castle_shields/textures/castle_shield_red.png b/castle_shields/textures/castle_shield_red.png index 87e8657a25f465ed9d068cfa638a5b851774e8f6..485c49ce7d6aadece63077e399edfa3ea176b281 100644 GIT binary patch delta 303 zcmV+~0nq-c1HS^08Gi!+001a04^sdD0C-SLR7G|M273nwdY_3X2K~j0+2m3k!}53y%v6kqiuy3=ESD43!KFl?@G+4GotK4Vn%PoDL414i26U z4xtYZq7M(G5D=vh5T+0irx6jW5fQBt60#E$wG6o0)H6~h-7#1|KAjZek^ z004qXL_t&-S2d3@f&(!S!UoLV|Nk2gO0gFzDkL(pkF23=OLTl-6*u5!Pd~;Pn+)0fA!mKDCYj|!xy*vb~M?3I=%n^002ovPDHLkV1jgt BZEpYo delta 411 zcmV;M0c8Ha0;&U$8Gi-<001BJ|6u?C00eVFNmK|32nc)#WQYI&010qNS#tmY4c7nw z4c7reD4Tcy000?uMObuGZ)S9NVRB^vcXxL#X>MzCV_|S*E^l&Yo9;Xs0003eNkl9)3aAt88fk zT2=gjM9|9zs{d0$nQu=d2GASOcSyvgq!nP4bRuvj2@HwTrpMNAlj!i#4#2UzC^Mtl z35l+9dqJWqFMnfaW-@ATB}+m!oiCrhZLTr8=DbFg_BC(Hw6oUIo@Xk@K+i3Cl-ps? z#HzAx-&y|)k~V!*g=Wv&mkAN1{W(V9$mF!I7(icgoBh5dnU~vCwNXj09bnUsh8Gi-<001BJ|6u?C00eVFNmK|32nc)#WQYI&010qNS#tmY4c7nw z4c7reD4Tcy000?uMObuGZ)S9NVRB^vcXxL#X>MzCV_|S*E^l&Yo9;Xs0002#Nkl?3+N@4!Y+ejLFAsB ze={FXN*X!_CMzxgRRN88R|RY%I&%TIOI!m}%~%(KeeYai2LD`5K{{L ukzg7R>Ay@P#tuwu4>riNQQiQQasCEm1g*>F^0b2h0000Hv0;>U#8Gir(0026epuGS90CGu0K~xx5WzSI#!!QT~P)y+d_nA~_QdMm` z6G=Oh2uK#|x`p6sE7J+ypV7AvclMzCV_|S*E^l&Yo9;Xs0002cNkl&iJN6n|z0Gs74IV+;U5W+F2Y z5r_!5`wGrEK@uJE4dCwE86~Qa>Oufj?_k!-9nt}+UR}}5aDvDMfUSDJ5|vm%f>eRK zZ*HWa?$kjfHwW7LD=k0;X(tH)c%ElFtMSfgOV+jjT2w>&utWsz`(D;{*7JE1s$sPU z?!M(LKo`ok8a!5?QR7=RJdI~&ejTJ55dogWs(u>f4&iA$|9z$pKu@Y;tkrv^cmeP~ VQ!+4|iG2V7002ovPDHLkV1hw)e*gdg diff --git a/castle_shields/textures/castle_shield_yellow.png b/castle_shields/textures/castle_shield_yellow.png index 033d679e12b9d62d6d26838366bc8d196453a48b..bfc5fa8bc8d4b16f002e07be6f32750c1a9f41e3 100644 GIT binary patch delta 296 zcmV+@0oVSH1GoZ^8Gi!+001a04^sdD0ANr|R7L#m5d7~D{PPk0-VXiW4*lQ`{oxP& z;t&1g5B=p2{pb(<>Ja_x5dO^!{>}{k&kX+24gS&%{?iTq)D8aC4gS^*{?`ru*be^L z4*uE>{@V`z+z$W53;)Lq|H=&i%M9g0Fy~XK~xwSWq*&c4#F@DM18TlP!Q=* zSSbJhYtW$`fTgj66CyEm^poy<4>w>501@SEL(Z76hERy#W-;Tw24*MZx2i>)n1vq| zTs5iU%py;&5xu0Oh$6GJjx?r(LAu#HUUc-1adXfW@Bvw0!1f3E(7-S9roKgXrMtJg uVRd>NR;N#4aUr?jw(e$wq3IXfs{aMo-)~zx+I-Xi0000MzCV_|S*E^l&Yo9;Xs0003CNklQ2m}kloc8}ens3>?2e5+^t+bXn1?Zw7rtgoq41X@r1vuaa#`y$H!2}z? z0EUQN9KdDOfNWr`Sim%xAX9xZ;wZkzaJ!pq^&%KqD6&cDYQ^yw#j1lA`Wj8yL?SkF zsUM?kf(QB<$ssnb8wbrAg$KHXO#>IW5!)O&^=h;*(cbuy(nI$lE z)6`+bp<4b(`s0u)uhE1JZq-_qX*t~plmxUN$p!=?g+xQ2dhh4(NSh`YS!inLe(w4< c`u#iq0zm?*{KS#x$N&HU07*qoM6N<$g0A?a0RR91 diff --git a/castle_tapestries/depends.txt b/castle_tapestries/depends.txt deleted file mode 100644 index fe7e3d95..00000000 --- a/castle_tapestries/depends.txt +++ /dev/null @@ -1,3 +0,0 @@ -default -unifieddyes -intllib? diff --git a/castle_tapestries/description.txt b/castle_tapestries/description.txt deleted file mode 100644 index 29d4bd22..00000000 --- a/castle_tapestries/description.txt +++ /dev/null @@ -1 +0,0 @@ -This is a mod for creating medieval tapestries, as found in castles diff --git a/castle_tapestries/init.lua b/castle_tapestries/init.lua index cd4f7c4b..e6e6a3cb 100644 --- a/castle_tapestries/init.lua +++ b/castle_tapestries/init.lua @@ -1,6 +1,18 @@ --- internationalization boilerplate -local MP = minetest.get_modpath(minetest.get_current_modname()) -local S, NS = dofile(MP.."/intllib.lua") + +-- Used for localization, choose either built-in or intllib. + +local MP, S, NS = nil + +if (minetest.get_modpath("intllib") == nil) then + S = minetest.get_translator("castle_tapestries") + +else + -- internationalization boilerplate + MP = minetest.get_modpath(minetest.get_current_modname()) + S, NS = dofile(MP.."/intllib.lua") + +end + local tapestry = {} diff --git a/castle_tapestries/locale/castle_tapestries.it.tr b/castle_tapestries/locale/castle_tapestries.it.tr new file mode 100644 index 00000000..59f430f1 --- /dev/null +++ b/castle_tapestries/locale/castle_tapestries.it.tr @@ -0,0 +1,6 @@ +# textdomain:castle_tapestries + +Tapestry Top=Cima dell'arazzo +Tapestry=Arazzo +Tapestry (Long)=Arazzo (lungo) +Tapestry (Very Long)=Arazzo (molto lungo) diff --git a/castle_tapestries/locale/template.txt b/castle_tapestries/locale/template.txt new file mode 100644 index 00000000..ce45d5f6 --- /dev/null +++ b/castle_tapestries/locale/template.txt @@ -0,0 +1,6 @@ +# textdomain:castle_tapestries + +Tapestry Top= +Tapestry= +Tapestry (Long)= +Tapestry (Very Long)= diff --git a/castle_tapestries/mod.conf b/castle_tapestries/mod.conf index 6d86a0d6..e2d27288 100644 --- a/castle_tapestries/mod.conf +++ b/castle_tapestries/mod.conf @@ -1 +1,4 @@ name = castle_tapestries +depends = default, unifieddyes +optional_depends = intllib +description = This is a mod for creating medieval tapestries, as found in castles. \ No newline at end of file diff --git a/castle_tapestries/screenshot.png b/castle_tapestries/screenshot.png index 838038e8a62c0e6cdbd614edeeb042b8ce92f8cb..a8c71ac06f967bce256bf873478ab5ffb1fa4367 100644 GIT binary patch literal 26487 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%0Aqz>fF>`kob&@G^_N%T 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 literal 26720 zcmb??WmB8o_jQ5%3>q>qG5`QTlarNH2LOPH?+*(i=zZm??P&1*1u|2Rkp#T` z_xaINp7Oqe*|~)8iwJIVN>T{>us~QgU}8FS{(XteMpM^K!qMK| z(!uThD*zzjVrlATX+h~}<7Q1MBd4Tl!Dfj708j$tB*iqnHZFU-n_1WOC>}PotlEF~ zIFff7W7O$yXIs&ZGK3Ekcm64kwD!x2`i;E54c`BWD{$B0cWi8w ziK2g23qC`9tx4_f_G=H0RN5oGO*pOG?+Y+uz+Kh}rj)n7O!|q_E}89kH9SDlx%oMV z6ExfF1h4niP-E6g?PoHl3T=>7@eW9WWfiA@ehRF9`{Bowm3U@MMO;Iq^U7 z0zPBxMKIV;e=#xbWkB*_B^BH5=}TARy=x3`W6sM{oGEdPl1Ob?$rb8-dQo{DA7cNK zlOV_iQXAoxTSP4eua71T6!>4mM7shy^9bvD-=No?6D+_z@R2*J%mhp35q)3)EM-|= zA2dJU@s#3hMF&*0Cj4(DA5kF+=81)p3se@&$#J#5MSj(4Niw|5^UDJ%(cGZz$En}H zbfP*=-QBfbD@&W+pkF$6e*^|UOaK6zA!-dU2zPV6%#bz=pqFl2FBj$rx%0ztl1N+9 z1}6z8sNKzP%nGh`+AaO0ivvU$-?-i9h^E29`p2Wvwj9UQmSfEl-5LAJh0K=qI4rwb z&wu>_iF9pihmn@KOBe*`_)>E!6kVmIo5agOpCO{?tdOlI2^!~$`4DZA1jOe^s;g~U z`L3QvD#Pl^P6#EZ#Yl)6ue|kiteuDY)dQ5t^@cUrt7*9YemQ<5nvZ8B!+yXL?)>eD zQGs?y4=xY*V`~oZS+QYQ&qRt{K+UMb@IZ=b`GmzJhdLTSM0-ny)|ONnMJaEtBw3Dg zFdfyxxz7n|Sl?Zp;JrDvHF2^x4~)y3_c9_fu|@2nIl<@C0Sbzvgw*`H=*l}(q~GXy zm|2vWzl!`TqjvDX31~%-Knv0s{5;krn zIjFpHCAqdi9zT}5zQLOZGYj+@=?b`-tz*PfMUv#C1CPHDP&K9?hjTRWByVV|i{aH+ zeWf8ne%ll#qX-lqc0Zv7nj<4g#!g9JE!o5;UCQH)=50)s-{m3=Wr&*S|7u^o`mvhl zpHsSWUE9>skD}A&F_wlRcBQ>735xmMv)y6uunWmQsWpcQ9O)pR$<+-B3u_T<%Dr8u z908uq;!cV>==)wa&DIL{G}9)Z+~`VZ9te(%!(kE86M2BnuFo2xdS&SoE%{bc2p&ge zN6`o=u_bAhS=fwsA0p=_#cxDcSn(tS1mrp8xtw(!vg`XCvRZUAFNCtpJ+GC29rdDx z)BGVg@l*k;Sv(l}wka2J9azy3>BGfLuORZPC&&@F`}olo@3S57`&x4Vswc9VvuYX# zzia|A8R1p&(#;aQPVpGnfdVVi-zv1PVpSsX`{&a}audJwOa4Xbnf&mHIF3j<`Kyyd zP2k9aFNW=uYuBUnDB`Gvv$^Y-Fqx5)0`!Dok0PBgl3CHKvO-p}<1h$oU33;7j+99XZ>*(mb z@j=#{7D#tJSYXtkkJ}&Z*JXuYwq7^*MJ_h^&kn`w*=~S1W1u``G~;c$PCid0RIH=*c!F4Yxu+8H88J&fcb6x2c8sSsd_AgA>7~{C1|>j+y@Fm`ZeM* z4*J!G-7LWCwuYdSUaoW#Pl$W?7XZxwpBX^GOp(!dHAk1D@fZ9atRq4)*#6RiB=-qI znkd&GfvF{S*{F65FHdZ1LR%9P8C0SS4?i5T#*ORgfm+RbpyB!Pnqeo(#P0b1;37LZ zU^Fn!uEoibWlru}iIN0Dh}~nAe;Wo)Y1i)I>aY6nDc=`Dbpa8Qm$aqer?_r^R`vQ>9v{63-n~1_j0FfQorup$!N{CW${WOEPu=#ggI56OD z7bVFyE5ARci*(UMQ;{Q}YI}y;JS0*OeNPMuyA!;qcJviACd!2>qkpjP7Ec+kJ(j}B zPC1Cl5bq08;~AdmPuX-?J>HJ0Lo7QPwUXcJ#JSmQv(0ed7H6@e_1y?uoj+=LcpIl>^9q0gB=>XOmdp<3 zAFrnN)kq{MGgJv@$2us0kaU*A>&j$W3C(%R0b%WXo^HnhJhKOZaIIxD5LNbT%D^&UYT^@W<0<=Z2#$UOy|z z1cYF$`Xag_|L;8boBeZDg!%5U6JNIMPHS4i+RbHIP^j?y-1@^yp2WgO)$V<^N(#Rf zV>k9Xpz4XOt&Uj03N`PMEG!ii@((UpsDpvO@%*L&5bnJw;30I|xBsCpO;od`pLKa|ft6|6Gx8; zlQaPu*zGxy3=6i6-1|`lK{j!|KuUttCL;Eoes$j@o&4etxPLV?_jt<>+i?$j$H66M zl^LP7wf&)EE10y4WhODDWJF)u$FXW2F2Zv(Oru{pU{XuohAP{nJdrP3vf|3d5w(y) z_t#vGQ#2x<@sRuws}OQ7f%zGtw|dpYme+-gmAmW+-PoV;H;8_~pVojXeLbQ`@ZN3D z-4uONnpVSh9YKMhIy2`4mpE_%#GLubp#Aeek8sbH57MI7=uY+TYO1S+B@;`d&B&PQ z!e8*W&3a*$^tyAA0)JYH?B&G6(-O4X8s7i;ub`v6cGlJgH=a%dj>LPgsQ>4rNCK&l z7yvouqkn56Pp{Jm(~J=v(_ zSFwVNU2Mb5JU+&ZNcAt*&bYLo4-V+ma5J&-UmK&A5sxG!X(#3i1#x)XKm5Cv4Z$lJ zz>NE49hhV-j6%8~f#9*~!N8;T7-0$@=Td8$qzmBtqLB8QooSar-y#|!Z-Z)hdxJIF zih81lheY4Nx^as9J(tomej|A+S9lu}_LCT@1)2HSnSXhlfEXU=I@WPV!4A&yO;oeQ&)_trZk2Ag(F7y zuOvQR#S7UJt@m@tek!))m|WWvOz)cjQ^GpLNLXS)$;eIBD{`T&Ziz-}Rhx6V;h{-PeqK z=_YTycUXQPQtXE)#(XmD+f4aGqC$Djlf?Zu>P#a-kpqh;?~IyVX{20(L&mY2Y~DuZ z<+EG9LgJj7&g1#D z*86V;LIKmeEpF%*EomQ9q#=gh_P@Nfu`kp@#Diz+7eL8sn<;a5>g!wd=!4REa@@Qd z{R5q6omG8Gu9BOJY&oGC*Zn$@MMp(($PKd~0gn^}9eJEf=klsibx@IjtO0hR6=NWO z^3#d)tzYC;pY%7&T4Z{c46kwg{RPm|KELeMgEEjlub+-KW-o&ll@Ogqp~^3pZx+ z7TpmVE|c}XHe}pjPiA`Igl{6Il0_S}RW&FUQ=P@{k%5kRCV+#q5J<~G{e6SVUWLg& z<@_;}7Ig+Wx$ttH{W&aI&D2>x6n#gJcs40y6UnQH(YQMTfem!i|TEq-Jj3fM2S zeOBwxK_5K^a==y_6Yn#wq1}12Dl6!fntx1TZuhYh!<^!Tuzzd>?s+_~kxXKpsl6t} z&zLU%8nfeP!w^yIYXK+1nsCy|p5_NwHBvYhNE@A6#u~D*@v?GF8GV%remoX0d_>za zBsBT6{P4O(j4LLFiD%GOkgqI?diin|!|`zEXBF0Fns}r_5NlOWS;@kJ=GGL8h_voL zquxKnqg-98u&-1WsokUtA^v8_mXye`vn7?jqT#K#r1nRVw7|;xJ=qwyT0ZC2wFB$ zqUR9XOm^i|!1#L@hA+rm60QKG$2vdwP9@k9o%^{`_{)1@4}?&d99Mg>Ih*`cxI!;@ z^VqW;7n`=!6sxi;e350A#Tm<_{cz$`BcWa_KXuHZ9BeHob<`{%t*Bdd5fOZ03H;JU zhp*-`ol4Jx%+mbF=qSW}yJO>sjVH(%4LrzFPfI_npR8d%$-tOb-o^8SZIo9mH(G&< zNwBaS1yB1O5Q23p`#RZ4Dn6p-JGCjIy=479?pDn2n;!dc=upXGD#Tl@X3Yct7N<%f zPJfnb@9eOxfNETcwtj06s2f4QE-h&0uoHsHwiCtNAEnSAmzItliB!>+om+QtH?4n5 zzr3BHTwlTIY%*nq@E>7{?Zw{-ZcGV%VxOsnJ(TMywOXQPq-wS4QgFR;|MrYH8J}C3 z_*FUD!+3a2c^dwCE6ZKsrI+5nOZw1O2gaEi7n2WmE%3og5|xhHT?=0|q62ACvDYS$ zZ;An{u$np5KqUBPSQBr)V@k1VNnNQrTT7Fu#&^5N4;q&E^QmQt?Xe5q7@=MKoE@WX z&aehm(pfap^~+|Z5P`hL38~A?Dw!CLF%vGy0?x7_`$g4fn#@44{9Eh%@kQ0SSy%8b zL835q$1NG%$P{nUIs?3)F~PJY9Hl-Ju@lb~6YHc1_?VsQG2TV;iTv=B?e$K1WV}dV z1M2}2AVBR!Sjy-^hmFlD-Z$m+5eZN*ycTt~ENNUoE%d5>`x;Ypg&uf`IO?F!wxNFv zo2YU&V%D$90mIHbim z(5>j%^1jCd`wmOESh2Rajexbq$_mm6&fW=S>GkjYCJaUfsC+t$$>eM zm8!OKR#fH42R@~oquMOBZe&xc4^hWRP3dyq0y`m1+8duB&Iht?5%XDY7RI69)iU)1mvQ zyELKpgh@Z5%7XE`RN8|3yKekqFLD`*;#iy(_7o`dy9k+oB@Mm1ftHF*0 zn-GrM9zIg#;biP(j5^^N9*OCYk3J9EDTZm9#&Da{Bl?WfgKN{iqCASwj6`FdEGq9| z-ek@-IpPYjThThh9tj+ikA{;I@UmUC-8t>x*-Jz0sqy<=hhyW166RBOjK~hX|Il#m zXEsZ@=(sb{($gRu_RlQ)O78ukwFz6pE!-LR$D)?TJ21OLjMV;3C>+~0Vo~mxuEQL& z5%4+Ccxn3`bPaFNs!ob7Zd?ZT;!DKyf4ee0O^b?#wwIv+juTM~LUStA4Qn79snM(@ zdD!dS5aeUP;X@)bUMKI)pjyaqBW&LW{t5M|1_=tS%BWkj9IOHMIGRR2vH~wz)u1{l zCU!^9VmijO7D+SCM?3DL7}H2pXZ^}gLn2OHd_e(Px$$-S(rfVTH8aW&+nRYE43w)g zhaY~tQ~5l;3ZO0}!YpHV_VvnDJf<;p>yj}h(+FQ53WT~J*J5S~u#b-~ix2Ey8xFSL z6`B)r8C=p|}T#Ov;MZ@$qp5GxFw`h^^k8s=r zfP=kbL1?K}9d4*W)%nSAUqSed*1bIEnLRXUz1FV1>rsvR4n^E|gOVO|plysc7~g8# z?}XOgFS%LsC%Db?1s_t*J|s}}0))c*_en|`dwdkVUb)bIPJ?jYxx~5arN3~!K~Lrb#|A z&V;a+hp^h#dY%Td#C&YnJ>)w_NtrRvec7~e#Wu6U>Jh;Aw?vvzd6#SvvT-NdblV=A zWsmSxF%n7=j(+)3Q9wC|$z!t&5;;@iZG=RQlj{tlSB1AHCOU&k=1) zT7M5DBMsCzYAF|#g_7t(1?X!LKF^wHOK`8_t^U}^n#f`;LT>Ox2YiY%SWcx%*!zU? z`DgKqo$A3haS{uofE6yGSM8B0;I7!=2 z($n+!fX-t$b{b~x)FFvQB>E$P+GjU<13S#IqjJ5!QGv1{NLnyzmki3ln|A>M@rQbR znfb!Oie+N2T^R9Vg^d;A3PP9}sd6(EuqRlt~qqafPj%&VxJQ`iCTAjDNsB zgqW!lBAii`oYpO&(#5#F3Qoj{Mc9{W4jS)DuvyBmaZp*5POJPj z>g*p|Ra1UB-pPEKMU?a$G+*{PTzJWXOMp7ONE9vhD~4f(9kJt&mVcJlH*F3e zfpRCcMK^HNe@?kpDvWRi=TT^Coo>MTx(wluxAP6PZ$`qsxb%);eFi1_WNmxg557c+ zU>TDY)Ou^CNGI7d$`)Q*An}*d9zM4#XT@W%Rt^mv9j4Ty?xz zndvl0G@v{MBp%t_mwrxKKXg)f(s_z+71s4`^i`>I>Oa)sboN(a#Y2@I z_H7}H;JiSJA7n|=Qe34Z5LZJfh`Fo~FMGJKo##kTBb$cwu3)vfX6*LgXS*?;O!O+( zJ3&JO7J+q`%KEicU3{|}6VehwlomY%|2rwox%)`#B2ufBejJd)7RYPyhCszuQw&NZ zvasn)bs!+xYk3(y~{Xd+YslE(sJv0GJDGGC|zmtbLk< zm}^wEv^u~us}*&sh477d79;D!p0N0Ohg_^XYnhSXEAVC0+VST7@DD!zMX6}Tif{|B z23NUU@WQWNBibjNz~k|c`#3T!NzHf-@do^C%oXI@#v}d1b#}6%N~XQRa6F`F0X*oQ zy2Rd+auC>{0 zG7%!MA{>Lbt2#Vdj!#Ws`V6Jl6Ptx^+s@c@kR%&aypr!^+e1UqHzBUiHMkL9#_URd zmnjg?wcX(-5$a{sV(g}Nif-g$z2trofqK}rMpY-?h4ok(Di0EhE-<1u%ut=daVD{1 zm*UGA(iW2|?ZuH}_gqB73Y?I|%Ay`b$)yqIFj+W==@>|*pQXjDxT=T|&#dnGz|$7( zr_%eyX$u}sU2cUCz!s^=`Zoh_r}{kyjmrH?3z~5UNRQzp78U9L%e>+43s|#@LmgtF zUg-X5=OmCk{~5&Zyumly#6zA)y;PYg#rx_Ztc!>1U<0N+!MeHj8$3U>#Ai&oWH;rx z`Gj8L4xbv^OJ%4xe4lLdwLkRQywPQu>E-EE2lx^FGx7_$n7J{n(mX8WijiwB{I$Z9 zL%H?Tj@vV)cNGOKJ_qUt-mwIDp&qnH;r4HGdT_RbK6~E5+)-a9ml_k~-W>5jW|O{L z0)?UtFdui~oX=kvIvg^Zw%5RaKAMG{#>X ztj%kqR5dtRGR!Hb`F(qLqnpEC%LreT%f^?htDsPPin`{BXwrXF=|14E=gK&xlcS`0 zN}sD!D?dkk{v|xIXD!;c=t0hsmpFx$Kr{+|fqLJa(Fqo1DY;&EW-++S%%Deflk9e4 zr*_le-SG^d{Oy2nRqrmjldMamq3_-><$iXr9vbtd#hoROaT;|qb16}Cd31WdjE4{- zyr=m5I__+P#Cqm&LE47uHRZQA|b@W#dR8UZB9ponhVx!&=A zX79No30|+8hneTIdQ2+jkSS=XGDW$>t$!hSv3)#>)2jNQnsaoNQpU`BK{D2|a5HX8AP}?g zEYqp=vPqU4EsiW^x~4H#+cc)Ruot~`RgDQHAJ1*9h2;7=;ApzN@Z*D8SSpntSFOg0 z^GIJFd()q?4Jst7nBLvM0=XI-6YDOh1K>@u?db|u%an{9Y52K4mgJfy0A&PEVMACZ z_AAPfnVS0}%@52H~ct0X8~|~ycD|;2-%_AnQ5{04dfIhm|i(_W~|C zkA6k^a06pux#nz?X>&t`0d)3~58^N*5(swg=Q^-`O zCsv*Jc+N%ULU*p>sE3S*vC&-{Gqa8n>W9K+D8|{YiG9Glosr;%l zA!#Zcb`j^XvT_elWsPp(CsS941y@H+c(aIxU{^mzmk76?f2$geqQ-L;+ zJL03bmuBYr2zcU6&)&bL&Y`*kFSoQvNw)SrBYYMEUz|OUh0@N8<@>C!%VR@ZW4&Wp z^~!X4Z0^4Yu08QWD*@M-F}_6JJ=h(m3?qXdnd4E*be*!8juJa`Ti%g0_Bu=dyX-9ANXT5XbuEl$jBz?t?G$ zSCF=t$MA>RY^|0YNi)4k|79Qnzu{HRY&@S7@| zFKloKWbLc{JLkp!7OuV*zkMD17Q>mH$VV-0IOfL3=uZ-_bs~M3!i+$R4@cb${mY+B zEtYN@$PAae&16&!?zFY;Z`G=JUe4_pK^{W6_eL;o%IDC4ekNw`$h65w<-){7gnf7F z4J*utRcHHLsr5dFBJNU2@wap%12T2B`;qn4*XxY~*Lvsg)wQZPHPI+*_N((+dirwT zZGH`?>{<*1MZ~YSnJ~sgIz43F`02imlAF6W3&eoidZDbcu7)l{iWT834Sto{*<))i zBb~jG+Id9NjhXE}gL%Zqbc-4F6)iZ43>QrF->2#41L)5 z!KfFmuI@~uZu1_88FQ`BHhYNTp2e|J-s{3_is6j0i-G(eVwvl1SKn8(6d9ok?z|-@ zX4Uoq8<$T5&h4r6hEV!V@wphyY2)MLk?woJ`Jy9*d2jhj8@(fk^e{M-P$m1e{ZyMF z5|AbW#OYb)uOoBk_PbP>M(o3IHKY84LPov8=zHZJymiVt)SZuOaj5CMGCh1l0LMs3 zg`u8$xDPJ|itlIt_C2m7zKKxhmxq;}oHYKvPx}sL_PcGBl?gBzgORQ(Eb1rekZ}1@ zaJr5*-?4aD&p6QX%flSM9KZ60q*-Go^0uJ|wA2<>AY>v(I{gf2%+!=Z9CuMeb4_{@ znaR#k?DMEx*i%pS#?*<1vB zfw(Zq=;+AAXR?yP&ho-mP8pwgII*CG)}NUPWpxsPXV{l!%0g~^AD<^5$j%a@Gt7C? ztv?|CJjhQr?G{Zj#zNZ?y{0=~(sjP=`pw~m-aEC9?YsO+_wBg_@*BY)+kfYYKe^K` z#rg=@#y>yIaa4c~5gKrBv{#IQbnQ*rJO2Xz{cb9F$Z~uUw<|11;yPsu2j#JyP*Kt@ z0KuPUR?xYc1JJ9e@@kqr9&RlhR51EWgvW+1Wj)XqCGkUQ&eUH{gjD0)oi>v|9qV|;hM2t?x$fOzH$ocZP+V-pWxeEDm)Kichjy^HI zz-<+RE0k(`Q@-7J*0lvT;PCaQr0_)`%o}*;XcUsBFMSvgAG98*DQl3+xzj&w@rjN6 zSF!)E%&vFm#&N~44m;9JdJS8cSF$9l;_)n(NyM1-uHU}np8s1jpE3%~L?{c!A!$^J z%@2h~#{o~lub|PQG+L?ElRz=?Uj3zVKF;yqeQVhhec7iw*yoF+ zH;VmUEH)+5Hk<&N?t}2(+t{xwBf4tdEvA%q5V`$w!E1Q@p9Fi2nC4`WQHCJ}kkN&n zN(Z-hT=)&T)X0~E0jzS02F~F%!mnMeT-4lUK|#EEIeL2P8Gj$onK&|W{*;D1K?Rf( zW?I~HBE7{^RK7{__P3cAn---Y6QwT;D}7PS_cdnOviY_(k~psULFcsc8j~myC)pd) z;rO_MI?^Y@!>Q*aNIUSd4+DXuJNRjtGCsuj4d|W`CbOWKBS7?Z*s_UulT5m4OxB4qoC$p&$t zw~i=o58c6y2T4{W^itt}I+gYq%nsG1>3&6r)vauljYRGJtYJaR59v_a!(=B&-X>b3 z&3%qXo(6u_@*Y{BcR5<>93A8U9v~u@QgB z%`?HI8@@a)2zO@l-DHm@GNF}&=^9}paGRX(LC#{A$-Ojr|hSQqQRiB z0i$M7Dk+3-C24ZFWTJj$JAPss$41hj=Sz%Kp5R0Vdu``{3gZbou0^oT-8cSMbYg?; zLt(U(jF^K~g;YLCGgqm73frdyP*XRVJspH6y?ThK3J`cEMFjNJ6Q z2{r%1SDoRYb;k48D?~p}A;=~s9!qQ5cjk&me@P}zQV^l;ssGOF zc*18RAFnL7*VMna5v_sbJjV>N=V|oAf%f4dQ$NB9fiV`Wu@NHcQ-Q*~cllFPa|Dj_ zTrYEfv3w((&Kyq&W2YJG<;OBEc>cD3#WGA)XIifmf0xwkkwG_LO?f?7rIe`l9BU)o zAAL%wWl=#+_V>-<^sbZ8G1Zwl&4pA+Ua+n_!iC(yV=1d3inVh#`aA;%pTwG(n0YqG zSX@0rb;*2J=(6EljjjkkU;^;H;*qX)VZFl#91f32Ci32O$vJB4plzD88}LJ1-R}x4 z(1ri^&%G4p{opi;qP*DWS~57Z(29^;`TveQPY=x{>WO|_Bhn+{FEpt4VlEED9+wAsua zEoxrf#q1r>?b!a+IZKHrF5dt5|b;T=wVrTf(#lR5p){7sM;Ry&j2$!$g= zi`)B{@!z$b&lEp)DI$zv9r5}VMs79C`zc4S9Y5WWK?1ODuvqLH$yOgqXT?uU;4Z{;8 zefxBp0|a5g%;GiN5nHSS?tGy)r@6Q)GF4%<(WBe1+6Do7iu7TQJkcE5Ofv*m+pO0V z11i2v;%)&by|9nSFK*16U{8(ijxPBnVW1CgkSgVS`$ozKwZpBZ#5m(rH6Nt>q7|QS z_ZvR@r+7V4dVm$lExs>J2U6?+CamI-LH2MK8L=p11GDd}I$KiGkDbByjjBb@7H#PSodLm{AnxI|{K?Xil zB^OP{*UD^ArjNYrCu-PuD{*J6Vmr4PIPRzsnSX}g0uLjYF+3{b$YOuBBh7!L z(bQGGAHHgO9i5998{=sau5JeaI~SLLFgS^iR(Ow7Dw>5Y6SB?RtYfRqqNSjR$y&j* zTQIP9zBmx7dqNxkW>ERRsY7RWvJ<;Pmt>4%<=adLkTq;r0VN*0oYP%3&OO3jwGWH}EbJ!YsMR#XeGDA&D9&f#Qav-- zk0w$tGb3ME0KzILiI`%a#8ghy4hJ}E8@f2z=q?an&^Y_GpbZoS_+z-Rdq*EOrDzd8 zs-Qr9O76asiFC&-t!)1ReH6#I%!miDJ7$ztBQ+Yudi#dEFG+U{C$?hr5fuv83Q%mQ5bi^C40@*pB_%4Mu#+BH(3c^dO855M?hl*GD0P^3jJ9Dn)< zf2&V$MEPmLdIdQy_M?tG`@cw|_&hU3E`m$am!fiY`RtIJ@GUV)yws)2utq5lxiDT8 zG}Qf{r_XKzU-L*^H_M|g*i1e>{(l+*Uh8NQVgtEe+t!w7L$$t3<1 z!1!zh=!3tTVBi7HNcHnd;h$D|o&vX`wp0%{h^YB-EzMq#oPAmwysTDS<&iXD)D$Dy zwDRCLE9zBUMG+=BX$x(SfZhCsfJFGGttO#ZggF~RIGB*U;X+2*;KHwW@t-{5?BgOa zEGiy1?szn*`nr-5Wtsr|(NVwUjRo~NE2`k#@C>&Y3LiX%MTlGyU^0Sxnd9NH25ar_ z_^o*E$Y+eTx!xyTIZK0swRF>I0S}1qWHUL<`;B#R$WKgk(L!;2DFuS5yyy7KMlE++ z-!?0%FYVbVtN=SN{)$Em3T!)k4_{MFoo%cJAI>M!I^43UoTv5S!~O%so{q`&;fLF0 z(2+Rm?!Fal@6;9JM!tkliB(v%d~y*9c=vZn57B^1nh-6XwxYUPsEfs#P!iMGawpuO zf8T{W>c4I#4RbAfI&D+uXLq;G+JLqXD6H-LFk9TPPGG&z;s7tq3ITbZ(kaOh zFFr}Zu(BEx?Ly7mj3l4v3AlKz^|@daH*9F1aR1{^*7pc2VoeWhGorTvv)G7yig1zo zY;(~5VJ3m|Me&#or(-K^EOPC0Sc6V4b8Fj&({mJf*rY?-G}#Ob%&{cfp(DKqcxYB) ziG&S4UdR?M+eSo-eu{dQzaUb|SL8+X9K~(aPtf^LWpMWRxiPoo3WWDb zC59v7<4JEx-)z)P`Pm}@XS}Oe17J+*t)LUQ7Zbc)AeyhXDiWqJUTk&9L|$AD(Gv>q zCiYj2^F>A(cRijmABP_xjmLLPZnpVIacayJrZCKL9a^{74cH|zkVe=??|=9)`d@`I z;f7GibA3ljxSYFPg?@s$nToMyz~l+r`*($p6hgzpuvx+U30{5nwLIbs@Jrf(pdEXe zC3sqtX!UgVaIk)qF4a*=x^`^IQ@gljKkWD=;w2|7rI`ny!71wj8v~;vN4&jG!B+Z= zAi39N_M<0QLV9?Fj<51f(2R1mVpdSgbX!`LWL!xU)%Pb)SmQBNI*eX=VaOEr)*-lA zr(|3K>z50E!rUGjiA#a~V9B{Z_W<=YbJyl|%`%m)W!xfk!O3e6Fbb0#WE=gYLlwjfp2bEZ}?A>!h*{!>$ zG!Yl;N1k${$foi8ZzS?~?}hUQO$se|fLQ3n+AyzAVF}DK*>bw_Ei;H}WRz{5pwF>T zFi$u^jVp1DNKP7DzYQn&;VY$Dpja%uZm800~doqAC*b?c01U;*3wGios`_}@mEE5?ySCG~YUenaJ) z&*@_o=XVUD;DSVY+kqo$O$20@8R#{x<4MT|t#(En{WkVnj5_>#7XAX3b8AI|Oo5;j zYPmNc@v{0bbuke1mDHCa@Ar5fon>^-nB0U@M*9g2sy}*?&Tn(HuWbn$^}15$>#F3K zht;rqLtx8>@wn?T&UoXU(1N%&jK2IGR}QH9ycOIY$`pS4YMn8zRdcNyZ)a(aa7u3*e7JpNcShdO2QD-pKJHw9Q}DZ ziRB;rlqV$wD|o+zG84+|xg~BEmX*R&_1#@Z2 z%|I^%g2Xubz`~mRamGN5Jgj-j?OLbmKc=Ai2QS@+zPHK_WGD#sp60})U!odyf?0+y zl}Kwgw2U;Cy1Od$`Go#^S-2yyLE&rm+)vfq&{6xCw_bu`$IaJ+gsgxtsvSa2DnTrI zl#4g{Z}dwnx>^RZBu6#d63?Q3CXZ|xj$A9Tp`r7*KsZgAT>+3A=pdWgT37OfZ9dNg z>k0DvgA?K>nVo|=Cf;`ULcYYD*m9F=2_?T%<`0{a?edZ-S&b8wt`RQ@*|k;?rHMDc zd>4liybgvzmz@{oNTFGvRyv)U&Ne=COGCEwIdNJ-nT9r2hsNj$gNU4+TCt(bzyFE_ zEP(vTX`&8>x*JMVpEJ2jhIPv>bVukyaD)N>b`47ZB>WsTc@eJ_t1MSI*)!d<%UPK& zJ{07Wxs%G73oGW~WGrpJ>>=&9|0uEneM0ny*Zz_F>60YEK|gprz>38bk%fS`O!ps~ zpI;8*PpZEQr7gMTa!ww*f&)EZFfmczK&iDbuj3Hu5}i zgIN;;vV}>6!FW-W3eO=lzdqoeipj~h@Vl8#XCo=s%EIQLOFs{Ml;h|`fow*@iM2dd z+#|NU3^QofR0@(u>>oIks4y*bE!S~-mJo0g&3X@sW^07hDF{C(M!LhFl%_)&WnOYi z7%gTl?52+(*_w^uwR5)bg;^f$KSObt#DtZ2i!cRgSxt1^b+=!|mrzuj0iHLhxoX4P z1%35vjk*x(mqeRUlZORs)X$}*c>_OE!o^B`G`+)&T3j>tUJBoDI2FZ*c&eg%dFYmJ zrxorT$ZOAdUY0WB`_ipj4mcA1i>+iO|+s)0)}7=th&6hn0;g(U-V_O zkGpj?L&Y$^R)kL-k*p z)q-lbn=kEvl%7a^XKPUXohvP&|K=Z90sh*I!S8~4n5jB%$~fja2bkLqXmUk<(4pSD z(z<)C-&f56wzKc%8^00sXGC)sdBed_e(3ZBo+bodqF%B~4zdkmk0b6c zX;jMmyrTFF`@8lpn2b9&l@UGna(!8gp8XP=3@u8`z?MJtg+sz2!sGta+TJ#fy<oxSVG<&bY1v zldF5Ym>lj$KsuBpdnZ=2C@yVAWnd|;C(n{~TJ@QOFlwCUvxiOX}IghX^|aX$^nE9dEP z$4r&xi7Eux+rp+9+gC?`f7GUuOX7~ZRgSTShrBdrYwb2K-UxZyp{6O zJ?uEgnp>qi;`?u@9KsB@zBZE-rD4UlvhV4wLX8VH#EY+)ADuJA=`i6#dP>!k#oISv z9hV)HSMB(YkltQ7Zs+P!gP1@3oX-`f4k@USi@nJB8AVU0IvEXHJMGFFSdeCpel!iv zBUbxma{2qR*SNCd^Y9OBXj((~pFs7ee0V|}AKBD=`42oiDAlc(%`%TulFuYTV$<_E z)G6^3P|VeT=<~lrX%lTBJ#DS~KP&ivzIc=Ka%m`qX-NO|ooItn2?tAZe{}KBH_k4I z;U>BqiuqD;j2gKbcyz%!q#&-iL0f&=3pQoU1HGOJpB1`5(P-g65bun@68KI`7!*f%nqW(_-T2;Iis=>M;-zg)CJ#LQ3 zJF>h>(+@2lZ6jYfDZKt15BhsHu4=8-MLBMT+B*>A@5{n6T=TPNFY$!aOp3l|rHA;g zs+mBo&E6Q7T+YCgfAkCYJ*tgDz@Ixgz|hQ(NJt)X19Xm{V~5?HK7C0u59IHnV%1(P)#=eej)DF;7vI2};>kI@7E7 zg4pIW1_lwampesb6YU9DzQPgQRZ~(&s2w63@6{GgQp(;S1Jdg!8B|M@-Yn+QPadcH zCF0mFC|7cf0Vw?m%>TO?D?NVtHxw61Zm(0%4592cF=>!eP?oGUCPUcnOVFAR+yBi1 zB+2Pe!bAG4$}(T75f(IYo#xC)Q_>q*N6IVW72e&JQMbk+o|KE=tyoMW^oR-tW?r>o zt-7fL0i4h<*X zxqjQXZRDC^?vV|!FF&>#Ieo9ZVD`9Jl!yLbTUQkjRoAr#h8nsAq`N`7bLa*^>F)0C z?gr^bq@)|98>JOt=#(BB0p%Zjzsvt-F6K<^v-Udcc~-p&leI zdzBKYsT{M@4W?f{+rD?|ISC^bE-1I7HOEDnisH~XZ^5t*mc~N5x6IzNmq-Ke>+*I( z=KHUhe_;6H zKYZ7}evjm_(F1toM!MHy2xT2O5t7>9I4yh3QLID@I8%xVW&nCkB^fbt{T1SxwP$sc z{t1eCUn7lYOljp35!9C;qSQHrdg({OH7%8k^mE!Q<&%5X^%?Dx$BEQEuLAmIF6}#X z>as_S%K#%T(eJoVsMl&1h;Uha*hUElhmV{Of2jlfhneo*nK{jxy}oyar3wrkVwF|B zLX%kKfbpp~wz@R?1D&TcT+NI5|N3+XkvaVE`JXh6j2Y5vVIJ5CV1@?wu_v7Z>rt0p$ zKf+cdoPZ~USJ?>X%Tq*PnV-%}l_5F#jooYlm*u4S!3PFhN^nWW(cdIU5)Zz&A3MDV zNtf7^sLl*avXi^$FU&9;aI$vTt?!iXR6 zdeyHsaaP?U&%RE@6hTM>cCt^6HzlSm!ZCJ#&w|Gc)L_hoCgRx}Du-13c=rPp=Zw{* zxQ!PV~W4$7^|~c-<4F+xji^6_X1`%yi_F$jSL!rhV$~c8R9suT z&FwLpOZ3P+ms}J+ryPdFpG0E*ZHwY-hNireXC+0RXB6ZF>V!J)NJtQ)#DeDoSIl;0;2vR97o|e zx00TzYpW?PVqik6R9)iZufJkXE~vo1j&p#oDE4ca-+rad`q1#UZYbWo0WvhEOv$Q-h(M0Z zi4fz#PaYET>;yiorbRx%HIapfSc}V3hN&sJ3n3m_WZyD z2I}GVW@FWqvu2wS9Ec~K^IbYklFg=E<6U-N8qxiiE>T!GnsH^Ws`?U}>YSlB8e)4H zg!&!1s#+3P=qVaZwK99IPKJ9p@oqT=RwQV+i}Z`_!XMSx+lqvMP0KRn#<8RWyOR=D zo=gerkZ5{*^%gC8U>5xHgyO5{Fc7z*i0_P`_{O3|JKo<&g=Q#A!SH=ZZzJ43e^MGA|4^Bj@ry17 zbOR@?5B6(7Y|oE2wuExwEc@!E;Bcl0+6~Q0pu0Nar!V6>l8y;*mN5}w6GjTjqPdXu zl09W-=P`{=pzoq5?)-5^?7bN3(!dnYIAw84LY*oWI!mnQgiBPCm$A^l)?AXyvv)|m zwLaqeni1}JDT?|1n3s+4Yi3}^QXzUv`mBK2gJ{j`@Px0|1k&LzEFC{izi6Q>Y6@sM zgtIXu*s~8j%?Jaj9jsyc^EqcYdHU2KyY&#B}z})orcPv@YWb+XENj7It-&e>!v8s%x0J3TLiWz=d)~9=yd$44RXygC{AeO*$_TGxWzVZe|L= zGT6t8y%z;*{AiQnzp&_tdUL$$AfcB6bd93>V9{~(zK9&2BwmQ|;7HL%61*dCKbi_f zD`sYe^_$87J^}UclhAU)jg$O={noKPJs)g#0KJCg@gk$&=6W4>d9y77Mvr6pM#s(f zXxRd)?t3G9qS6wm#bZ~k<=fnGdONoximQ`(vAOoaAsW zNd$W%5+sfHe=f`#Fzo?GD#Q7SD%Q57#v?_bnd!|BC-C=JvLjF$re3{J$d+o;5-8cxQBaDuRT7`x}BUBPI z=F0|*SmeQ#>KRY$6QdJhvGP%Ph~z}^>GPOeWA0)#Bzr$XRwVGFDQFDCxUv@<5rYn{ zsQhi&G=+ymlW2xjUcK11KOYoV=rb{vO{7A3-okQfxuQ`E(P3vNhk-GOVFXn;$;F!F_TKIVe5b%~iL6H(Qa`+;ahuRUVcEP}$ zgfI zcU6^Od@ut$vJPR*-ikC<6Qi=BVpU9}vxHI{aDFS*;n991=1qVhPDxdFO84biq3uRp z-pg~awZj~EPK^ahX|YG^B{N0ndqUideq#YRlUjDys$PqRnkxbNjACjAT0-1>(FEHf z0T{iKr{rblBp!cApWt<`B%DyvGTT;7cBu_2Ky2!A+MC_AY;z{8Y>E*gF|b)6yMwIM zSnH|rZYlxEaX}VMjTrTs0W zQ&U~Cpb+iBrCfItD!f}5{TO<~=vh%b!KDtR4uG7Akkv&?v(NzU`rD<9Bb*guHpk}J z1g8DM39Lc|_JwfPe7Bvn;nBR2pHOw50IIV$GsOm6O<3YAduY-dS-`Xz480R>s3@rL zBQil*KK$_=^(NV*JSHcMbP4E0XbE{D<{l+{_h;MHdRGR5`>bA>q?uVAADql#sZphX z6wky!`{=^!Z>bNO%#q2ZH`h1dmUDE~V6qQcKlT`cb-ysu54EvNzAgbPH*f!75KjBaVrXjyU1u2G)#jdg{4Sb^FLJD&)TzTOKdf}^m(kQs_cgVd%626 zw)3A#>H{O<*`P!Z_OY?6yWJ%UwynP;%^VlwL;x`-^?6 z@o)^45lA7`j40z+6F!lgfz*8dDL;*D3&w^O-ca&LyoRbm+nxj_bY`K&bWx<_@SlqaPdVdEbj1g{|GRMC)6?`39XMh{OUdpps759#k7oU;F zsa*8kfR86`RJl9SH&-9WUuJoYi-OYM6)2*TT(81ENN2_ix2AF_e=})jB2v?$5|!pP z=M8<%tKeHNhrDQcDy)}%$Ly({ljj^hg))4kU|G;%x&H1KB}7^bK^)-PnPOgzO9S7z zkj5(57+K>Je68Ow@{XXtG?faMX+2vM!QS|2t|uKTMcEtTW;w(yJyuk9KE{dZ$^ob& z+62zclthbd(+(B&p6=Zb^9N*7AUC3KkbMJmq~AlwQVC%LYYY%v$bHotzoX8&B9k>ZV=4~#OHlm3rVoLwJCE&iYCDWZM3g5FPNYx7V>`E9gpv)ucoOgEDHtZ$la6egbNG%7 z)Y)dS(Uz*oQg~sl+a5t&M=({2zf}cGvLZp&ZrR>k zYo%IX*0{S-1`8lCtuey#Gx*ksV*0(963MO!s9;T z-2$oB1inT~kES}kjGl-r&9%RsihNtKEv@OMnY7dqHZgSgXrn6j!`6gy;NmY`p!f@K zKHZRPelstV=e@@Bcce|AK}}@+`SMdW4gRs}%>r?LXHk#|SjAC|hR9=%)U|VT>FL!P zbu^(JP-E5M$y4B2B^+T1Dk^_5wEpVT=91|4pdZua&vxa8xPz~9F42F48@dzB(Z2a* zdIRsj8=|&3kq@{1k#Ww-msk#By+ZBs5f8ThLlx2&-k3?(a9%fnWu*&%QsS)Km~GD& zLUE4*q6zF?`F<2v$e>^d>OvJyw?N&Lxe%2i*I@dX0B2|(Z@=r)ZqwK`;3cew+#wVwMHU0SRV>00)?-=q0qD4nc zNpS+_oSYa>|fi!1CXoC!7DnD8|uc#seUXmgv(0T>98q=V0PTSo;Fgi zl(8^*S>9rWPWx)w*ICcZRBp}k=;ma5AqsEEX_3fvf$Lr>{8OKc#nc%wNxrI_{-(bv zJTZr;Sn};xP?9;KpE6a9tKtsKys3v(d8(gW>DxKoh$!+~El%^08)?MbcdDawD4YfHj0g1!pJ$h-@2CTCXugdZSt@Em-|{J=fL|LNT2;K7HU(3G)+%Kf=#y& zg1>-L^JaA`;)T6ow9_=|IP{js?}w!EwkRe2tf>Ez7A4rClug8+@cEUd!K~vyzdf7+ zWtNIW*-ha6Ky;;@NZG~LOdDzjO^0dP%Orw;E6u%x1f0obGC_Bmkd=`}wt7yCrD8MI z%UtxW^0>>~?4Wbx6(-Apr}t|F(ReS@4EUaC1$Z8if(E+HGRGgri9Alc&0GBEli{9% zxrwHPLMXz}lw&xDoA*U^+H1%YMS*Q}eT4lq+i(8t*U8QRt&Ml^&e1}T&*-amWfH!F z+XQN-`X%F6dsFAy#K9ZSFc{tD8GVJgrt6+w9+S?~hVJ{-f|Y2Rb9>J?q$qoiIvM|) z&GM4v(0{~j4t~QnxbwQ*m{SZW80T7>BkANX<{a#}Z~j}h8@RdQ6YSsqd&3o@hE9mt ze1i{aDq<6C+BE%km$_PA`2=@zWWgA`dL)xjHp4b5cups|UgG~S9O{oaa2D6Ns>_km zbrdD1UMJ_Ko05s*`zxrZu2Ww5fHj~sSB9L8csDmr3ISG4;p9l#GBT`XDkkl^Y(Njli-{XhtCw!`bYjhT_r9}fifyq>%o^&y?8v|xbVBE6A!TU(2R z=k+fEhk^bki9S{t-OtKCC@{!Zh|ZD{iV$wDHLy!i8uSTpH*W{!bzvtB`rJ#aq&vCiG1aPUN=q>rHL` zmJy%N0!ww5zu&{A8DPt1Nt6hn-{+jekq0<0cLWj^%oNQyx#S0R`bdqU>FEh>C600he_*zvVsDk&?s6T}g-K zw72I`RhPkAh|P4MC467Bn=5ZCx3qw9mUNt35G!6vOph8NhxJXtijHdb!YO9{j+iJ-uhg{bhhCUyO(xE&wZF5=iP%XMM8 z%UjBV9}WL$3&M4T(n&imnqhA@3_YcFwDYzY$JkDDabCFNnVrVTV4>t1lGniW`l{|l zWFp+jQ(FeiUU(>c0Sx>BO+ONhL|YR^38&$t*ohXnu^?JDBKgYTzXd>aDco_e#NgIV zgI*34ySEiJa=T58F!yyUFym^HXTU6K`OW#Pb%dkLp?Jssot&^xx@ z3r>D{mHvnnsDgQ?AycBhihmLS{|hrjwJ%`%98YqFxQ&wm#axYXsRCW%Yl`(H@8VfN zF`2@XKO^!1*5<(ks^#IgO^8UBj6Ny$VPv3Y11!V`=1mn!^pwX=))hivW9&^Rj+EfP+KXuoSJ3*S^6cwl~c)k2+?q(hg(u< z380pDT(jb}=M!7706i>JL`=}RJHNZfg8?QktBvwio)7*c15qq|p%`&M6KY%EeRtQ})1h7%N4MjCO3K%M+tgFr^g(<-XJ5qcn9nW6`{57uw$|T`i#6 zFf-syojT!r^)*gvDWIm8B^nvVJ{U0(4Hj=m3x*$ud4w1tpth9mC1TeZp0p|E$sG4k zH(LnbY0|I=>v&#u*i%FpuF@+s-p}1H&ULABd3~$E);R+>>b8K1Xs*TN)sKRbw(}+L z7m{BBZ7+pGg43?$k+8sON>IyNHBi`e{sMy74ygkG=kx#jP)Yzf$BZHU^YsdZi+D~|Y zaCX~3otEA<$4 z2YZaY`8J@?h8RYlLtQ6I&l&kCrz1IjD`o^LifAu>k*_&iOb4`^i7+frL6gY*)~Zg=&8mlmKbbipy}IsvZ@hRVRT7 zFB@kkZ@1PCH8vvWojD}%exm)Q6&7{mG?5-u6^D~4uZ7j`YB)0l2SXeDXe2Be?IjQU zwn~{ok<>NcP6xJ6fmk0y+o6dYRMdq7{4LhwiT4iJ2jgCZzJ(=Uj$PlaPM{F~&mcI- z(YNTsmG+^EHwoi=ry^tzrPLk23O4VSR^FhyY6P$Yd_bHjVu_x}mYG`0$_~hTE5F=F zR*ysmpacMl#k;+ISda%blKdBa$l5_0Au}x=mh-Ike=2YR=|cEi{I662AC&?UEFu=` zPV4ilgHt*@n2pUBk+4zrMU)sayL+XURcV=U5XkGiVoXp@4@!?j_Zs0 zLRaM0H8`kgmor>{I8Vg^@EGc5_c%391M$Adx;E5!F_$7lyBbUJ*LOGy3(*G)xBNm;Em?lrZ{;?aK3b$m|7`SL zHoE$>8Xe6SjKQic6%~D|L8DBQ#>tfR{ajmYH%kwEm4d_@T?ar~&vNLZoI0R^g8GvXc(cK)! zWL&sD)uoZ~Q(DsTv0*<3iH1jvh_3L}AgYfcpHe>+r7gV~(q`*?+~qag#e|bh@J~8( zznRamb>%RRb^W5aK?p0`MU8BykYX-mg@PO{|MGNR$i5mD&X}exQH%0}#Knuxqg%uB)3W_LGPjR%+9fLdr|ZeZPXwr zRz)BGZWT}dT*t~!5m~k|3v1p!F{shI0oeE(M*O`6KDn?ZnZimCK@9A8f#R1l0)W0U zgRBzwkRRMwi9>-uG~SETy-J{8G}a9CEY!!%er8Ikw#R5-xDM>>RL87SCuLp*K*R0} zsgf_Pw*SK8Tp)Cs>T`v&&@z1mc4VRa<$Gf7BIti@CX3{YWaPUp0up!OV6NljxiueV zY)cVFl_!mMUR6t#Dn$cH*^o&`pmefJ;oulI@OalnhWiXG-d3xNRhQrH>oQkO&pS#p{?IkOL zDk*}uS^6`J$*sPU@9j_wio4=4gF9;sI!GSH#HEForr-j{!Yg$m-CCt2H^{&nw5$QvH>{(g?Vm}8LmBr zU`1K&!L^63f5>P)*!e0&Q4jm4dM_ill&nd`6Qt!3^0>hDY6K4E|D%qS41PREhR$Z= z-Wg$vJSK-`^=tpGr&h~6n?;0DY?0*p1I|is@c?fI)!3RyiN-SPfkIPToTE~kRd-oa zTkxHYhJ{M}sltfzqfICqQeP?Sho%|n%%9}?p=CU_u=r*qICV#k9eDrw;x0Idmp{s# zUcatpPKw-@z5QBb)M?-?_0I}1!$i+m?ND-=%gYYvOC0-$yYHpwMxShb%?YH z?z98f`=LwE6}>dk$S=F@gjNnX8}P6zbcpjupEP<)6``f!2&7TEpnCKDp!P+>lx3@| zE7b*TW|sCoD6>_Y#N7m||C7jfg!@AdxakUqdX>)}fcs}ichQo-q(IV6QI3K`UR@i? zN@4Bi5^BcxSZw5aB8>BXl_)pG*JkIX(WHJ*ap-#}+-jH{tconm2!sz#aeM; zVJNcm^x4@Cw-?Z_R@OznUIz+X!oumj#vIsu;XlM_fIu90Ol)zoSh@7~VU(6#b6fI5JS%h|Z%{ZTU<#cDs>;DZ@ZIY`S zy1*}r_A|vMv-#>-*nQ9eX||bgV$H8a zwaUvHEY*8F3%0H#LI5at_7}yz-cq0DdyJre-pq5L$g|>MQ=ZL`EO%0As8^ea5CP%r z>TmKb_OA}+eEKH@Cj(A}50Kcx?suWN(}8S;B1~*Xr-_=whg)^Uk1^$fGmo8~bhcyG z!4KRM6lr2p2ESAlA3|rO0#o)SXae2jR)Q;^cZ({6X9d%)lP|wyNi~HZA3Mn}ym9(c zfi^mA7d#01sPp@y(qFeDE?dLyW-1?*+@PGcx;IXyaEVu@N_q+Y$%j_;PfJ{K`nM75 zqPE^xG}hh&X&+?N#2ThP+#gN$ZshtY*YF(Kd7oBTf|4;C8UDm1+MeWx@-j(0f| z;=Lv&>Ays%23y35l?A=kc= z^C~O(u+4FkPK%vd3x(eL(=BGAvvopsN-bdvp=qN%oY|}eHFI^jmGuktm~(6L@Wa6u z^L&D&?ejmM3pX7aTbT!o|H6FmUC9H$sn^wzh}GBY6KPcE8-2L0Xt5jo+v5Ll!R|U= zQgs}k^Gm`!&{t7U>HLv4etz)IYrD8RV;t^4g!GwF^r?9B`hDeORNDAXp0+{)6{NRIYAG#`FWi`4hjlYWo0Es>1*QYmgh6Ubh zp-29dSe5M>T5ZT_dH&;ZaR?|OM>3N$$S3SHZqE6Ufy{K)SIZ6gNJ<-tDP=7*aPTIq zhABVYah$b&H^}v6dPGaAZSM7ex%p~l&`kV0-Yqa(;gL{c&4Xb-l-so*?CZPgX_&G2 zfjYfDK6W4WrqGk{jG`6$b635#n{7o`*K`oWsQ|T%D%IMlz2OFF8CzZ`C$q}QZs=24UC#bNTLNSSb^%fXsGh;pGf2I>0N&H|m~ocBpU7>;$!fLIu?;GS zZ(V8MB{zoh4&)6;AD|R~DwYTYUojaVTDpDB+dOhmzm~gRn1X&;*|f>5^?sR!(g4gF y2n>`RpmIvARaRUs){~jWk-3=?tKRtgH|Kv1Alt_G-aQro0000c83BYy!3NklTmqAjPo9Q1CneVNiZi5X(yMSj$uQF?*fSlpV6{{k z?Nu43UxB%#Ye^NW)`dLzJskA5bemoclPSIzR|I#Ohx=k^7Q`8v5#n-!&?tMA+iXMax`S)2lAslr~95I_b+T$|U? zVI}UFKf?D9m#t;8AN|a-QCBmM1C^&{U~guV!$dK3V8{)TMy*R!lgH@r+X!L>G~u0v vhVk5pTk9GdgCcIB;VriteXSJXfnACJ56yUL;E~R000000NkvXXu0mjf{vV5E diff --git a/castle_tapestries/textures/castle_tapestry_inv.png b/castle_tapestries/textures/castle_tapestry_inv.png index 99c1b2e4cdf347c5e0c5e80da3dd32a415b09434..74ae24f1ee0fe39b93580b87de12c88b093c8dcd 100644 GIT binary patch delta 2022 zcmVSA8{T|;>0xxNhv{T zTA(ehAP87=1yx!$tdUrR?%2VO6)d}A1qh@{P$a0JB9uzyktS&Z*iM7%#Bq|b#~#n? z&f`AL`IAdTr0zaP<@ZYp1gqbBaBuI4jWZ)3db@Wc)?*l5Y=1@yzU-r@6-eUs?(|H! z>W5|rqZeOl+bhkh>BvoQrR{p_OGiHRPID!C>h76Nfm)gE?u5!*#Gw03Cq5fpTWLaT z>Mh$YZQuLyc*D*9%V{U}UAC@3txUD;wuCA*smV{;6XwRIWtPi~DimO6D-Itqs+{}6gs#(mgDN-v_Q@gD1QFr{n8I_Tqp<3Su zLLf;(XBvvs3LUqrlGQ2)dV01kxnRSpQ}zx0l)vz_)2_MS3pSL=imc<9;}&t`9i3z@ z%aUZS6B;vFZR$N`YDFpuAtYfe5azPRK%ll|Po+_-)ql#=ihR?)1HZ2IpC%r)W$FQ~ zEz4TBoN?%wj6jkkWwIh!mV_`ev0!G;ajhMz4!o@ImT&o-P3z9Mgzi zwq(_Pj$6c$k*TREI<0-JxtVF#z4ccE1!_gIESqc8`a%eusfnp6Ix~AZBzp*DvLc7> z@t8eF&VO0(qD3dXZNXz+)%Z0N5BpWG8W_0f(`L48Dp4y`X|y`EWGcy8No^|W3zdPX zB$;W1PNzgxq_0vL*_G9fn;Kitlg(_oYGh*Olw-1yo}^T*NR}k6&H z)EMh&O?67titM>#%NfZVI%}?|e8$KfpR(bSr+=(_-N)T_+82DsL+O!FBr9^{mUj&- z*m0=m$e~(j^>CmvmvzFSzN&FuD3BF7ZpU?O8WS^F za%kUeyG~hBOT3{|pjMzVHP8uR&)8H}34KGib;4Y2D%;UI=bMr;S%F3^nF<`5$w)fM zvTIKGl-oY$VgKNy4L1z5DwPtoLX}0^c74{7fANgI8;)7ADIp1=Gjzt9T}dcYD}Pcs zXXs7gfqf$*Ki(4qVZ9pRCdsLbmUY-9G7D{A=l4R3$KViuw$1Ir1 z<|=)J)9 z!l8AYq|+HW>4(1Iv^N}BHWjA!95{@T5?O(9%x-kKr$Qq+WzS6yy6v__GojNOc}IoN z8hdUhg#xt#uNkMIP4`;$EsZnA8ng~|Mh+xn6WJ-d2A=kH?+XR80`Ix)iaRPv&%g=C zEeVGXH6|W*=+hqenpLgNSbxHom8cc?WtH#RR7p;1^zGuvvNOKni;{_fZL1b-STvQD zsueh6;t>;BQpqlR%+R{i8kHUU)>P4H~1828-yomQc&z)kD6 zU9#pO7af?%lH|ZhXpbs4Jt^DPmqnybv08zwvS};?X78PSFn=O$3;V7Kk=%t^ zfsi_ve|Hc~AxelNM@J|US)=7RITa_MF_)AI-Q33nqalwzy>*yo2j zt$kS)sQsT_Ogi0cQK#o_WX0Bkp4;{XvApf9fAzl-?ZNLy_NOc7O@zBpyDRCB;`y^K z`WgM1cYP?e{$E<+7xQ!e*8i(`_WHrs;)U*SZu${l@f9CM?XE;UJw7vP-q zXtKN0-THRBkbdB+?ebqHKL)kC)7`g|5?^oHneb!qKQ?Jp!Z{lX@&Et;07*qoM6N<$ Ef&`ZH!~g&Q delta 2048 zcmV+b2>kM8eZU4L5{{ABlT=YCv`{aDA% z7$RTtVOBQHr69glpDRVT{75+*yz**Q-OS$zhaR{ccCzg+9{%L^yZO!7k=4)FtpUJJ zeOh`%N9@&~uEo#9x=Q6yrEuGh>pSOP8?SlLeJ$+912?R;2_W6EAs`KT$dhO6i(sr! zit1R;$6pp>tbgm6C&DdPrulF(C4jd>Oicu}sBhWD=HMMS-4b=fg(T0$dD+pEma)9k zq7NM1%iPfQq%A+RA~n#_m+2n6YD5r3wIa3)z$trDiA-v!qhrUsE7mMI>puYXkrQlTL^h{obkc0eN66Oq}r zFO|z=C$a4`>st;C{g%pqnRwE+!Xql%7F5=)7@3nau);Abt(oA6>L?nRm{HnyN@drQ zq1SY+`?k;8v}(n5kNVYi0er<(=Oq&JmRvaYhJiw%K&^710;Qs^Z~t|#MH3{F25TPHfQxy}0h?kL6kOYpJNPXslAo&Dz#ex$6=Cd3>uC27ceD zSbug|VeFDw-_f(+n#|AnbMH9ozK1>Ho<*fq^G1e-?K$B~z0rG@>$4^jOE&EYjW#OH z=qt=L)K^NS)E#A;QP3l#azu%q^Uj#j(UqE$8<-U&A`S(mo^DeYS^+RC=$nXQQxy`a zs4~%48Fz=gh`<_-=)pw|nsTB&jio+H& z;Y4)HHCLpzb@gR}T9BJ4C4!Ly8}^(vFB5oMdyPq|&{K<|ePcyqg08*|brW!zLSk3t zl5e%Ei1MZeMvRma8U_~JaoQ(s_=v~-qchgr*HcNG?AT&Cp0#7oXB_%h&+EEx&VQm! z;W$0j`c^F46Q&j)@j`rZ*;F=|?mD3^NLidkcosL+wCM5mlrw95d&k{Q&7ZtA)q zkv8%yabU~u2p06+b+v5<$mPy9$%e#%dG~F(Xw7Y(_XD*>g9hrLZB6)NsWs;?@~HhRC3n(@FT9fuwZq7`TkVthKHYN?cU7zzyKHDmQC?rNEQbD0Q?tQW*6!#51?|+7%wr$ZV zbL|1xjoa%n&Ghs|Bdcmbtu}DRk9^ZPZyQ=rhzk3LMsd&{fN?DE*GWf;TyWOD2OhOy z!|c(BN@d_(X=9AB7k5K@qV!GU(6{NlCEu1?F_xn;QX3cw#wHSH?df^WH%!}~PQ}3c zHr%u&6?F8RcFMeHWF$B7xPOsPdD@$nRBB_vw3E}R82B}*@7a_J&d7D`;n0E=-}D8+ zM9+>Tv)0TirVp;^0IZmJ!bBoSC2n|1->P$Rsof?=(nVji?h{i3mYRvCC;)sE|yJ?5HWBgBKDfv7r6J@Aagj;=(Eq1LVsBvPAAIi|GVu#!4g zevpmN26f6!?<#7q!xhZr2_xa6LNUU^s5GJr7oqpyGOXa3|*7mJa3* z%<7|8t~#{sobLUkYEEwzw!H2szx~3$>|Knl`v5Wcs(*jjtJYl*8&IKP$mL(Z{-7>( z{9$(bBo;V*l&HT;8^ z__M{!jWTU}RC#;M!ym_&F1qIDbxZI4pZ&_;2>eR&qQCP~UGar`!>`Ae>%V>Q!Tm4$ z@`w7~2^ol4ajG<^-Y@gz51#zRhy0=Bg!k+9?^HA4hrU)V{8ea!(d?uEF6@TDH}a}H enX~wf_@X;i}UE|Dex0000, 2017. +# + +Pebble=Caillou +Desert Pebble=Caillou du désert +Stalactite=Stalactite diff --git a/cavestuff/locale/template.txt b/cavestuff/locale/template.txt new file mode 100644 index 00000000..8e8d18a3 --- /dev/null +++ b/cavestuff/locale/template.txt @@ -0,0 +1,11 @@ +# textdomain: cavestuff + +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# FIRST AUTHOR , YEAR. +# + +Pebble= +Desert Pebble= +Stalactite= diff --git a/cavestuff/mod.conf b/cavestuff/mod.conf new file mode 100644 index 00000000..b021c9e0 --- /dev/null +++ b/cavestuff/mod.conf @@ -0,0 +1,2 @@ +name = cavestuff +depends = default diff --git a/cavestuff/nodes.lua b/cavestuff/nodes.lua index 1c6bc293..e6ae02ca 100644 --- a/cavestuff/nodes.lua +++ b/cavestuff/nodes.lua @@ -1,5 +1,5 @@ -- support for i18n -local S = plantlife_i18n.gettext +local S = minetest.get_translator("cavestuff") --Rocks diff --git a/cool_trees/birch/init.lua b/cool_trees/birch/init.lua index ca8247dd..a1b31f7c 100644 --- a/cool_trees/birch/init.lua +++ b/cool_trees/birch/init.lua @@ -161,9 +161,6 @@ minetest.register_node("birch:trunk", { paramtype2 = "facedir", on_place = minetest.rotate_node, is_ground_content = false, - --on_rightclick = function(pos, node, player, itemstack, pointed_thing) - --minetest.item_place_node(itemstack, player, pointed_thing, nil) - --end }) -- birch wood diff --git a/cool_trees/cherrytree/init.lua b/cool_trees/cherrytree/init.lua index 3e7b7156..a866c305 100644 --- a/cool_trees/cherrytree/init.lua +++ b/cool_trees/cherrytree/init.lua @@ -125,9 +125,6 @@ minetest.register_node("cherrytree:trunk", { paramtype2 = "facedir", is_ground_content = false, on_place = minetest.rotate_node, - on_rightclick = function(pos, node, player, itemstack, pointed_thing) - --minetest.item_place_node(itemstack, player, pointed_thing, nil) - end }) -- cherrytree wood diff --git a/cool_trees/chestnuttree/textures/chestnuttree_leaves.png b/cool_trees/chestnuttree/textures/chestnuttree_leaves.png index 6225ad978ac5e4d18f856bd8fb664e00e911d3ab..a92468910de601fd5d298039c44340a7aba09342 100644 GIT binary patch delta 2542 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 diff --git a/cool_trees/ebony/init.lua b/cool_trees/ebony/init.lua index 3407d5de..6f86ecd4 100644 --- a/cool_trees/ebony/init.lua +++ b/cool_trees/ebony/init.lua @@ -101,9 +101,6 @@ minetest.register_node("ebony:trunk", { paramtype2 = "facedir", is_ground_content = false, on_place = minetest.rotate_node, - on_rightclick = function(pos, node, player, itemstack, pointed_thing) - --minetest.item_place_node(itemstack, player, pointed_thing, nil) - end }) -- ebony wood diff --git a/cool_trees/jacaranda/init.lua b/cool_trees/jacaranda/init.lua index 073a96b8..a20bad67 100644 --- a/cool_trees/jacaranda/init.lua +++ b/cool_trees/jacaranda/init.lua @@ -99,9 +99,6 @@ minetest.register_node("jacaranda:trunk", { paramtype2 = "facedir", is_ground_content = false, on_place = minetest.rotate_node, - on_rightclick = function(pos, node, player, itemstack, pointed_thing) - --minetest.item_place_node(itemstack, player, pointed_thing, nil) - end }) -- jacaranda wood diff --git a/cool_trees/larch/init.lua b/cool_trees/larch/init.lua index 5ac7af24..78424c2f 100644 --- a/cool_trees/larch/init.lua +++ b/cool_trees/larch/init.lua @@ -100,9 +100,6 @@ minetest.register_node("larch:trunk", { paramtype2 = "facedir", is_ground_content = false, on_place = minetest.rotate_node, - on_rightclick = function(pos, node, player, itemstack, pointed_thing) - minetest.item_place_node(itemstack, player, pointed_thing, nil) - end }) -- larch wood diff --git a/cool_trees/lemontree/init.lua b/cool_trees/lemontree/init.lua index 9b82d7e5..5c4014fd 100644 --- a/cool_trees/lemontree/init.lua +++ b/cool_trees/lemontree/init.lua @@ -124,11 +124,6 @@ minetest.register_node("lemontree:trunk", { paramtype2 = "facedir", is_ground_content = false, on_place = minetest.rotate_node, - on_rightclick = function(pos, node, player, itemstack, pointed_thing) - if minetest.get_modpath("cork") ~= nil then - cork.get_cork(pos, node, player, itemstack, pointed_thing) - end - end, }) -- lemontree wood diff --git a/cool_trees/mahogany/init.lua b/cool_trees/mahogany/init.lua index 1db16a30..b057a419 100644 --- a/cool_trees/mahogany/init.lua +++ b/cool_trees/mahogany/init.lua @@ -102,9 +102,6 @@ minetest.register_node("mahogany:trunk", { paramtype2 = "facedir", is_ground_content = false, on_place = minetest.rotate_node, - on_rightclick = function(pos, node, player, itemstack, pointed_thing) - --minetest.item_place_node(itemstack, player, pointed_thing, nil) - end }) -- mahogany wood diff --git a/cool_trees/palm/init.lua b/cool_trees/palm/init.lua index 35312773..dcf40639 100644 --- a/cool_trees/palm/init.lua +++ b/cool_trees/palm/init.lua @@ -138,7 +138,7 @@ local function grow_new_palm_tree(pos) return end minetest.remove_node(pos) - minetest.place_schematic({x = pos.x - 4, y = pos.y - 1, z = pos.z - 4}, + minetest.place_schematic({x = pos.x - 4, y = pos.y, z = pos.z - 4}, palm.palmtree, "0", nil, false) end diff --git a/cool_trees/pomegranate/init.lua b/cool_trees/pomegranate/init.lua new file mode 100644 index 00000000..4b0918d3 --- /dev/null +++ b/cool_trees/pomegranate/init.lua @@ -0,0 +1,228 @@ +-- +-- Pomegranate +-- + +local modname = "pomegranate" +local modpath = minetest.get_modpath(modname) +local mg_name = minetest.get_mapgen_setting("mg_name") + +-- internationalization boilerplate +local S = minetest.get_translator(minetest.get_current_modname()) + +minetest.register_node("pomegranate:pomegranate", { + description = S("Pomegranate"), + drawtype = "plantlike", + tiles = {"pomegranate.png"}, + inventory_image = "pomegranate.png", + paramtype = "light", + sunlight_propagates = true, + walkable = false, + is_ground_content = false, + selection_box = { + type = "fixed", + 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}, + on_use = minetest.item_eat(2), + sounds = default.node_sound_leaves_defaults(), + + after_place_node = function(pos, placer, itemstack) + minetest.set_node(pos, {name = "pomegranate:pomegranate", param2 = 1}) + end, +}) + +-- pomegranate + +local function grow_new_pomegranate_tree(pos) + if not default.can_grow(pos) then + -- try a bit later again + minetest.get_node_timer(pos):start(math.random(240, 600)) + return + end + minetest.remove_node(pos) + minetest.place_schematic({x = pos.x-1, y = pos.y, z = pos.z-1}, modpath.."/schematics/pomegranate.mts", "0", nil, false) +end + +-- +-- Decoration +-- + +if mg_name ~= "v6" and mg_name ~= "singlenode" then + minetest.register_decoration({ + deco_type = "schematic", + place_on = {"default:dry_dirt"}, + sidelen = 16, + noise_params = { + offset = 0.0005, + scale = 0.00004, + spread = {x = 250, y = 250, z = 250}, + seed = 2, + octaves = 3, + persist = 0.66 + }, + biomes = {"savanna"}, + y_min = 1, + y_max = 80, + schematic = modpath.."/schematics/pomegranate.mts", + flags = "place_center_x, place_center_z, force_placement", + rotation = "random", + }) +end + +-- +-- Nodes +-- + +minetest.register_node("pomegranate:sapling", { + description = S("Pomegranate Tree Sapling"), + drawtype = "plantlike", + visual_scale = 1.0, + tiles = {"pomegranate_sapling.png"}, + inventory_image = "pomegranate_sapling.png", + wield_image = "pomegranate_sapling.png", + paramtype = "light", + sunlight_propagates = true, + walkable = false, + on_timer = grow_new_pomegranate_tree, + selection_box = { + type = "fixed", + 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}, + sounds = default.node_sound_leaves_defaults(), + + on_construct = function(pos) + minetest.get_node_timer(pos):start(math.random(2400,4800)) + end, + + on_place = function(itemstack, placer, pointed_thing) + itemstack = default.sapling_on_place(itemstack, placer, pointed_thing, + "pomegranate:sapling", + -- minp, maxp to be checked, relative to sapling pos + -- minp_relative.y = 1 because sapling pos has been checked + {x = -2, y = 1, z = -2}, + {x = 2, y = 6, z = 2}, + -- maximum interval of interior volume check + 4) + + return itemstack + end, +}) + +minetest.register_node("pomegranate:trunk", { + description = S("Pomegranate Tree Trunk"), + tiles = { + "pomegranate_trunk_top.png", + "pomegranate_trunk_top.png", + "pomegranate_trunk.png" + }, + groups = {tree = 1, choppy = 2, oddly_breakable_by_hand = 1, flammable = 2}, + sounds = default.node_sound_wood_defaults(), + paramtype2 = "facedir", + on_place = minetest.rotate_node, +}) + +-- pomegranate wood +minetest.register_node("pomegranate:wood", { + description = S("Pomegranate Tree Wood"), + tiles = {"pomegranate_wood.png"}, + is_ground_content = false, + groups = {wood = 1, choppy = 2, oddly_breakable_by_hand = 1, flammable = 3}, + sounds = default.node_sound_wood_defaults(), +}) + +-- pomegranate tree leaves +minetest.register_node("pomegranate:leaves", { + description = S("Pomegranate Tree Leaves"), + drawtype = "allfaces_optional", + visual_scale = 1.2, + tiles = {"pomegranate_leaves.png"}, + inventory_image = "pomegranate_leaves.png", + wield_image = "pomegranate_leaves.png", + paramtype = "light", + walkable = true, + waving = 1, + groups = {snappy = 3, leafdecay = 3, leaves = 1, flammable = 2}, + drop = { + max_items = 1, + items = { + {items = {"pomegranate:sapling"}, rarity = 20}, + {items = {"pomegranate:leaves"}} + } + }, + sounds = default.node_sound_leaves_defaults(), + after_place_node = default.after_place_leaves, +}) + +-- +-- Craftitems +-- + +minetest.register_craftitem("pomegranate:section", { + description = S("Pomegranate Section"), + inventory_image = "pomegranate_section.png", + on_use = minetest.item_eat(3), + groups = {flammable = 2, food = 2}, +}) + +-- +-- Recipes +-- + +minetest.register_craft({ + output = "pomegranate:wood 4", + recipe = {{"pomegranate:trunk"}} +}) + +minetest.register_craft({ + type = "fuel", + recipe = "pomegranate:trunk", + burntime = 30, +}) + +minetest.register_craft({ + type = "fuel", + recipe = "pomegranate:wood", + burntime = 7, +}) + +minetest.register_craft({ + output = "pomegranate:section 4", + recipe = {{"pomegranate:pomegranate"}} +}) + +minetest.register_lbm({ + name = "pomegranate:convert_pomegranate_saplings_to_node_timer", + nodenames = {"pomegranate:sapling"}, + action = function(pos) + minetest.get_node_timer(pos):start(math.random(1200, 2400)) + end +}) + +default.register_leafdecay({ + trunks = {"pomegranate:trunk"}, + leaves = {"pomegranate:leaves"}, + radius = 3, +}) + +--Stairs + +if minetest.get_modpath("stairs") ~= nil then + stairs.register_stair_and_slab( + "pomegranate_trunk", + "pomegranate:trunk", + {choppy = 2, oddly_breakable_by_hand = 2, flammable = 2}, + {"pomegranate_wood.png"}, + S("Pomegranate Tree Stair"), + S("Pomegranate Tree Slab"), + default.node_sound_wood_defaults() + ) +end + +if minetest.get_modpath("bonemeal") ~= nil then + bonemeal:add_sapling({ + {"pomegranate:sapling", grow_new_pomegranate_tree, "soil"}, + }) +end diff --git a/cool_trees/pomegranate/locale/pomegranate.es.tr b/cool_trees/pomegranate/locale/pomegranate.es.tr new file mode 100644 index 00000000..16717d1d --- /dev/null +++ b/cool_trees/pomegranate/locale/pomegranate.es.tr @@ -0,0 +1,11 @@ +# textdomain: pomegranate +Pomegranate=Granada +Pomegranate Section=Gajo de granada +Pomegranate Tree Inner Stair=Escalera interior de granado +Pomegranate Tree Leaves=Hojas de granado +Pomegranate Tree Outer Stair=Escalera exterior de granado +Pomegranate Tree Slab=Losa de granado +Pomegranate Tree Stair=Escalera de granado +Pomegranate Tree Sapling=Retoño de granado +Pomegranate Tree Trunk=Madera de granado +Pomegranate Tree Wood=Tablas de granado diff --git a/cool_trees/pomegranate/mod.conf b/cool_trees/pomegranate/mod.conf new file mode 100644 index 00000000..53442e08 --- /dev/null +++ b/cool_trees/pomegranate/mod.conf @@ -0,0 +1,4 @@ +name = pomegranate +description = Pomegranate Tree for Savanha +depends = default +optional_depends = stairs, bonemeal diff --git a/cool_trees/pomegranate/schematics/pomegranate.lua b/cool_trees/pomegranate/schematics/pomegranate.lua new file mode 100644 index 00000000..ee732fbc --- /dev/null +++ b/cool_trees/pomegranate/schematics/pomegranate.lua @@ -0,0 +1,67 @@ +schematic = { + size = {x=3, y=6, z=3}, + yslice_prob = { + {ypos=0, prob=254}, + {ypos=1, prob=254}, + {ypos=2, prob=254}, + {ypos=3, prob=254}, + {ypos=4, prob=254}, + {ypos=5, prob=254}, + }, + data = { + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="pomegranate:leaves", prob=254, param2=1}, + {name="pomegranate:pomegranate", prob=126, param2=1}, + {name="pomegranate:leaves", prob=254, param2=1}, + {name="pomegranate:leaves", prob=254, param2=1}, + {name="pomegranate:leaves", prob=254, param2=1}, + {name="pomegranate:leaves", prob=254, param2=1}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="pomegranate:trunk", prob=254, param2=1}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="pomegranate:trunk", prob=254, param2=1}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="pomegranate:trunk", prob=254, param2=1}, + {name="air", prob=0, param2=0}, + {name="pomegranate:pomegranate", prob=126, param2=1}, + {name="pomegranate:leaves", prob=254, param2=1}, + {name="pomegranate:pomegranate", prob=126, param2=1}, + {name="pomegranate:leaves", prob=254, param2=1}, + {name="pomegranate:leaves", prob=254, param2=1}, + {name="pomegranate:leaves", prob=254, param2=1}, + {name="air", prob=0, param2=0}, + {name="pomegranate:leaves", prob=126, param2=1}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="pomegranate:leaves", prob=254, param2=1}, + {name="pomegranate:pomegranate", prob=254, param2=1}, + {name="pomegranate:leaves", prob=254, param2=1}, + {name="pomegranate:leaves", prob=254, param2=1}, + {name="pomegranate:leaves", prob=254, param2=1}, + {name="pomegranate:leaves", prob=254, param2=1}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + {name="air", prob=0, param2=0}, + }, +} diff --git a/cool_trees/pomegranate/schematics/pomegranate.mts b/cool_trees/pomegranate/schematics/pomegranate.mts new file mode 100644 index 0000000000000000000000000000000000000000..e073aa5bfdfa753d086061f2a9ec40bf9aad4014 GIT binary patch literal 174 zcmeYb3HD`RVPIxpV_>ca0|r(G;gr<0#L}D+tCXV3`1GR0;^KH?2Ij=fA_k#?{M=Na zNM2$|s#Q*EVp(c2gE+Dn5}QE~iDOk#RGODvF{ieNk&8irgE{@1{`_t0#g{1x-3>V= v!8BnRca0}wAUvxq^cAU`)Xy(lp+u_V%dVJ{oN$1lhsVc(r_ta*kDHO=$|Q#%_Y*Q4E4Hs^XENaKdUMc;=bJ~?tHi7a W&l(wzq;NEK86*WVGpN4iQUn0BW;J~P literal 0 HcmV?d00001 diff --git a/cool_trees/pomegranate/textures/pomegranate.png b/cool_trees/pomegranate/textures/pomegranate.png new file mode 100644 index 0000000000000000000000000000000000000000..dd0c3536ebd3bd54b8db4e96e66b45f4262a28c6 GIT binary patch literal 1753 zcmV;~1}6E5P)WFU8GbZ8()Nlj2>E@cM*00uotL_t(o!_}AFi(Xe1 z#(!(?ecrEmXC~t$O%$t*A)+8!gxVmMY8x88sYov@1*5S?k$r!}~pc z_U*6xJNZ7mQvk31<5d8D{_rV(&j9@7(Jwo|4<5MJ&+oN7eg9|t$X&x|NJ$(9Yvmm$o;xiAO@^*ip-Bl)x8jc?t@bVioo}Iz{hZ^o) zA9A!PMGZDK3F}iH{PlD4jsg7i{?B@tU87b<%?UtFfe%cE>@7RaSLfK;l*hmGIQfs~ zxb(^^WCEQSU1~Ue_OG|hk#6?j>4#5yx$tjnXNN>&h!cZgBJ3_5O2-#Iy3J;1oc!3G zuVLJ-L z=^@gGj=^+*U%rG4C-`6uRp@qhS!I7hU{+Zv&Z87lVr$6qatV9P97$zY# zFm&bUy0EoAU@%Ig3Ha&?lo5Eq4dn1);)hSNwzos`>Ure#i`2QZ+PQptUGU_oyFD!n zNnrq_K_E5GFgSwH)xhPMvpZ9k%ZjfYT0<lpfi2zF8J}8FM5070-GtYF%7JZhcq6jZDG}R z6mxJ#1)@L%1`$Rg1PN?xj2KNP3^orj+&+woQ|5c**@AAdBCCTNGiF0_#VQv3}wcq*_>2CCz5Uwj~vV(Fj+gmJDwF zC5oA21aQIJ(P~5yY*lGuz(sH%Yo%x;o0Ie{7#Iu_(UfLwN+=nTh&u!cgcOLDNP_{G zW3HGgF@jmYL<7XZ6heej9W@03mq4k|Ri#tF{q}je!3n?g%V#AoW-QMCowB<}o$q5^ z#%je?`+k+ap(O-F0!F_(HZdRw80dl4MV+iho0VctE?_QXyTxXtF>>wYmsq=NM!kHQ zZZXHIVPNk*tc2C%16I?ISE+`zN(+Ng;we zHRqn*YM2}D-uJURZjO4dza9{3ZZrbLoMKQNiUBA~6TbhK>j#wUHlzEV`i1CZ!t&BZ zmb-g&%LS?x%LUV(0mm^nLJVZQPwqW{&W$92YEG$6(cZF)Im==&8sFYPa`vHnU6u=E zFz){>f~#Y-UuUVklNB?HD%qXlPIdza7Xc4+IA%QqHXQN2mtK9Jh5^ITO_Sf&RQ$p>zUKP+fACd7W9S7x2m^9e+OCq_DCVdMRUP68 z#uJ`+@z3(EoD2T+%}3m3`{;aum(r7$61fys%R(`ylJI5#!!eINe^%brgUOrm;uDX# v&KLM%fp#5vmFX(v>Qs+Ba_*e)ev1DBfQ8kTnkd9K00000NkvXXu0mjf2Sp~P literal 0 HcmV?d00001 diff --git a/cool_trees/pomegranate/textures/pomegranate_leaves.png b/cool_trees/pomegranate/textures/pomegranate_leaves.png new file mode 100644 index 0000000000000000000000000000000000000000..347d2a49be858abfd7d6f69f6765b10120960ec2 GIT binary patch literal 2990 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
    T)&GGQ}xI{@Go7nBrQ$=uv#>t@p4|Mq|W^w}T& zi&#O?D=w}e^pCGk{;(CAUg^9uYUYx!0I*bAYh`8!8e|rZd!yLS)u`$4XtMY9-vp2D z-)WVayOv+Jf+|po2}KC;aaTzmrZVpuPo6x9uFp-c6x7!8o)Pv>h+(%@H!L@gF~&j& zj7cHqGQ)rM{QI?qz{%HDmPDiW(dCRVv(((Nb2WsC6lpSO$KwvMUAwR_yFPt(F!<rzk{n}< z5ke-TfT&bDPUXD^zeSkz+xvT`BSw&627ss(+2!6p^N#VW2OoU!(eLlx-q=6BG#Fjk zxW{ZC8RjGrTBL+Br!YU9W$A2)C<6eDfig+}fEczGndee!I>n`Jx3Ew<9IP}Kh+$() zXZ_RhEWPvK-`&yz#s(&I*RNimK2N6ChFdgEA8Uw4SMj7b91h#P88dB+>2Mk<1^C@Z zQo{j&R?PzdCArp`B1{bjv;Y7Rk7f}!oID~-@JLCalsM^y2onH>O^XqfCZSaVf)+edLQu=G^9ukFjxQLqc{rekl}>vWr3fLy zYyj{)qflS<>zhHfrM1=|0aT1yj1r6x!WavgU}9uhHtQT~tqC<-H7}YDq{t9qmS0|; z&wu&p-)H?}%P$L_@OW}-=NDdO8DlKs2y0+=4gi$kQfb5R0AT;DYfwr7U^oqt_5i@k zS0{tEUt1-VH5!cQPS>>HPQfJ*uh0F)F3gl0N~En=8r#oH|`yR7N%P&EZn&J z;eXhEskpT5S62)(0D!Y+f1QMUed7it7DA|ZzTcQDQevgEKE~KGDaIJ5Jd;TX09K)H zG9;o|7LDE7Drm7(^FRChUwJgsBGXDvuTT8ix?5Zz%oaRpzxw>suaBE`-zwCTX;-T3 z@r!OyTO-UIoV~P7>X;_EcVk&9J>l-o_LgDiER;;Thi-KlN$FKuBANX7`uz0mn_57e z{Jb5Mwbsd`8%;Y$FP}a;?Edy%t5k1JuU_ZpZ$A0rZ+BaTa&sr+(ca-S=EAW|vc1u? z4R+QUeDL0iVR_VW-t4{1xi(>@MhY})&G`qX-A?zKMCV^V`DWZXygENVI69R|-(9cS z&Iu8gXZ#zU8p0#KfO3T z?+%NBH;YnoYi-G(#58F8dSYkO#a7D<$}hhAYBcCOBmn@7aF)(Q8oAZx`bu*)y!_?v zt@`3xJZhU>8I*kV=(B^1(dwL6Y3*2ce$?Lk%a;dp<(zG?D9NbF2q6dn^1k!r`Jq(0 zQI#8uL8ZBqPCKLSvF(iw(;|i&^~OAzjpK|^2A}}pe|+&3Mfm=Wy6qL*+N$N1!`{jN zetJAt$(3?008omlR9Y!e8k7)@X?*hZRo-|0^EV5{#`fg;DC6m9aNQjxnbdKTd7cqi z^z3+l5{WR$-oM>&3v<*8EWZo@moGp2zsEzzHme0cjCsN{&IS7T;e%peOQ`|CFsN&p z01&6?``fE44bRTiFrk7cLMF+eJsX@OO#JGqY5M?xsA;%)q~zf25&%khznu5pwtHdB9g7)^MRAJ$``_O89ZPEs09tF)WLoQYsu9Lq zNR{{PO5U>!mhdb|Ga(g1DB*k(rth$nQkKC2*P4V07t)|aDfO;OGD)@8Tu1;gC_xCl zV*vmu1;q#e&!TiViQefr!ANVJ38^$#2Gv?C4VjP_kc} literal 0 HcmV?d00001 diff --git a/cool_trees/pomegranate/textures/pomegranate_wood.png b/cool_trees/pomegranate/textures/pomegranate_wood.png new file mode 100644 index 0000000000000000000000000000000000000000..ae9287f461b0aea35ba064784ae56ebe9e7a8c19 GIT binary patch literal 3144 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 i;`|ddXO(2x=YIj^m8-&5ekx-C0000R! literal 0 HcmV?d00001 diff --git a/currency/README.md b/currency/README.md index f4471a7e..61a5af8d 100644 --- a/currency/README.md +++ b/currency/README.md @@ -2,3 +2,11 @@ currency ======== Repo for Currency Mod + +# Settings + +Settings with default values: +``` +# After how much idle-time barter table is reset (seconds) +barter.chest.expireafter 15 * 60 +``` diff --git a/currency/barter.lua b/currency/barter.lua index d4763e6e..39d6601a 100644 --- a/currency/barter.lua +++ b/currency/barter.lua @@ -5,6 +5,7 @@ local MP = minetest.get_modpath(minetest.get_current_modname()) local S, NS = dofile(MP.."/intllib.lua") barter.chest = {} +barter.chest.expire_after = tonumber(minetest.settings:get('barter.chest.expireafter')) or 15 * 60 barter.chest.formspec = { main = "size[8,9]".. "list[current_name;pl1;0,0;3,4;]".. @@ -81,6 +82,8 @@ barter.chest.cancel = function(meta) meta:set_string("pl2","") meta:set_int("pl1step",0) meta:set_int("pl2step",0) + meta:set_int("clean",1) + meta:set_int("timer",0) end barter.chest.exchange = function(meta) @@ -90,10 +93,20 @@ barter.chest.exchange = function(meta) meta:set_string("pl2","") meta:set_int("pl1step",0) meta:set_int("pl2step",0) + meta:set_int("clean",1) + meta:set_int("timer",0) +end + +barter.chest.start_timer = function(pos, meta) + meta:set_int("clean",0) + meta:set_int("timer",0) + local node_timer = minetest.get_node_timer(pos) + if node_timer:is_started() then return end + node_timer:start(22) end minetest.register_node("currency:barter", { - drawtype = "nodebox", + drawtype = "nodebox", description = S("Barter Table"), paramtype = "light", paramtype2 = "facedir", @@ -118,13 +131,16 @@ minetest.register_node("currency:barter", { meta:set_string("infotext", S("Barter Table")) meta:set_string("pl1","") meta:set_string("pl2","") + meta:set_int("clean",1) + meta:set_int("timer",0) barter.chest.update_formspec(meta) local inv = meta:get_inventory() - inv:set_size("pl1", 3*4) - inv:set_size("pl2", 3*4) + inv:set_size("pl1", 12) -- 3*4 + inv:set_size("pl2", 12) -- 3*4 end, on_receive_fields = function(pos, formname, fields, sender) local meta = minetest.get_meta(pos) + barter.chest.start_timer(pos, meta) pl_receive_fields = function(n) if fields[n.."_start"] and meta:get_string(n) == "" then meta:set_string(n,sender:get_player_name()) @@ -152,18 +168,39 @@ minetest.register_node("currency:barter", { end, allow_metadata_inventory_move = function(pos, from_list, from_index, to_list, to_index, count, player) local meta = minetest.get_meta(pos) + barter.chest.start_timer(pos, meta) if not barter.chest.check_privilege(from_list,player:get_player_name(),meta) then return 0 end if not barter.chest.check_privilege(to_list,player:get_player_name(),meta) then return 0 end return count end, allow_metadata_inventory_put = function(pos, listname, index, stack, player) local meta = minetest.get_meta(pos) + barter.chest.start_timer(pos, meta) if not barter.chest.check_privilege(listname,player:get_player_name(),meta) then return 0 end return stack:get_count() end, allow_metadata_inventory_take = function(pos, listname, index, stack, player) local meta = minetest.get_meta(pos) + barter.chest.start_timer(pos, meta) if not barter.chest.check_privilege(listname,player:get_player_name(),meta) then return 0 end return stack:get_count() end, + on_timer = function(pos, dtime) + local meta = minetest.get_meta(pos) + if 1 == meta:get_int("clean") then return false end + + local timer = meta:get_int("timer") + timer = timer + dtime + if timer > barter.chest.expire_after then + -- attempt to return items to owners + barter.chest.cancel(meta) + -- also clear out items of offline users + local inv = meta:get_inventory() + inv:set_list("pl1", {}) + inv:set_list("pl2", {}) + return false + end + meta:set_int("timer",timer) + return true + end }) diff --git a/digistuff/touchscreen.lua b/digistuff/touchscreen.lua index 285590b3..6325f28d 100644 --- a/digistuff/touchscreen.lua +++ b/digistuff/touchscreen.lua @@ -253,7 +253,7 @@ digistuff.ts_on_digiline_receive = function (pos, node, channel, msg) data = digistuff.process_command(meta,data,msg) else for _,i in ipairs(msg) do - if i.command then + if type(i) == "table" and i.command then data = digistuff.process_command(meta,data,i) or data end end diff --git a/dryplants/depends.txt b/dryplants/depends.txt deleted file mode 100644 index 39305fb5..00000000 --- a/dryplants/depends.txt +++ /dev/null @@ -1,4 +0,0 @@ -default -biome_lib -plantlife_i18n -farming? diff --git a/dryplants/init.lua b/dryplants/init.lua index 63b2e062..c145ae07 100644 --- a/dryplants/init.lua +++ b/dryplants/init.lua @@ -14,7 +14,7 @@ local mname = "dryplants" abstract_dryplants = {} -- support for i18n -local S = plantlife_i18n.gettext +local S = minetest.get_translator("dryplants") dofile(minetest.get_modpath("dryplants").."/crafting.lua") dofile(minetest.get_modpath("dryplants").."/settings.txt") diff --git a/dryplants/juncus.lua b/dryplants/juncus.lua index 06e39cc5..c945dcfc 100644 --- a/dryplants/juncus.lua +++ b/dryplants/juncus.lua @@ -9,7 +9,7 @@ ----------------------------------------------------------------------------------------------- -- support for i18n -local S = plantlife_i18n.gettext +local S = minetest.get_translator("dryplants") abstract_dryplants.grow_juncus = function(pos) local juncus_type = math.random(2,3) diff --git a/dryplants/locale/dryplants.fr.tr b/dryplants/locale/dryplants.fr.tr new file mode 100644 index 00000000..4172ea84 --- /dev/null +++ b/dryplants/locale/dryplants.fr.tr @@ -0,0 +1,28 @@ +# textdomain: dryplants + +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# fat115 , 2017. +# + +Sickle=Faucille +Cut Grass=Herbe coupée +Hay=Foin +Short Grass=Herbes courtes +Juncus=Joncs +Wet Reed=Bloc de roseau humide +Wet Reed Slab=Dalle en roseau humide +Wet Reed Roof=Toit en roseau humide +Wet Reed Roof Corner=Angle de toit en roseau humide +Wet Reed Roof Corner 2=Angle de toit en roseau humide 2 +Reed=Roseau +Reed Slab=Dalle en roseau +Reed Roof=Toit en roseau +Reed Roof Corner=Angle de toit en roseau +Reed Roof Corner 2=Angle de toit en roseau 2 +Reedmace=Roseau +Reedmace, height: 1=Roseau, 1 de hauteur +Reedmace, height: 2=Roseau, 2 de hauteur +Reedmace, height: 3=Roseau, 3 de hauteur +Reedmace, height: 3 & Spikes=Roseau, 3 de hauteur avec panicules diff --git a/dryplants/locale/template.txt b/dryplants/locale/template.txt new file mode 100644 index 00000000..a95fb53e --- /dev/null +++ b/dryplants/locale/template.txt @@ -0,0 +1,28 @@ +# textdomain: dryplants + +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# FIRST AUTHOR , YEAR. +# + +Sickle= +Cut Grass= +Hay= +Short Grass= +Juncus= +Wet Reed= +Wet Reed Slab= +Wet Reed Roof= +Wet Reed Roof Corner= +Wet Reed Roof Corner 2= +Reed= +Reed Slab= +Reed Roof= +Reed Roof Corner= +Reed Roof Corner 2= +Reedmace= +Reedmace, height: 1= +Reedmace, height: 2= +Reedmace, height: 3= +Reedmace, height: 3 & Spikes= diff --git a/dryplants/mod.conf b/dryplants/mod.conf new file mode 100644 index 00000000..3011ab60 --- /dev/null +++ b/dryplants/mod.conf @@ -0,0 +1,3 @@ +name = dryplants +depends = default, biome_lib +optional_depends = farming diff --git a/dryplants/reed.lua b/dryplants/reed.lua index 6b710666..f80ffa58 100644 --- a/dryplants/reed.lua +++ b/dryplants/reed.lua @@ -6,7 +6,7 @@ -- Dependencies: default ----------------------------------------------------------------------------------------------- -- support for i18n -local S = plantlife_i18n.gettext +local S = minetest.get_translator("dryplants") minetest.register_alias("stairs:stair_wetreed", "dryplants:wetreed_roof") minetest.register_alias("stairs:slab_wetreed", "dryplants:wetreed_slab") diff --git a/dryplants/reedmace.lua b/dryplants/reedmace.lua index f837b1b3..49a10224 100644 --- a/dryplants/reedmace.lua +++ b/dryplants/reedmace.lua @@ -18,7 +18,7 @@ -- The seed hairs were used by some Native American groups as tinder for starting fires -- support for i18n -local S = plantlife_i18n.gettext +local S = minetest.get_translator("dryplants") ----------------------------------------------------------------------------------------------- -- REEDMACE SHAPES diff --git a/extranodes/init.lua b/extranodes/init.lua index e554b631..42c7d679 100644 --- a/extranodes/init.lua +++ b/extranodes/init.lua @@ -142,7 +142,7 @@ local iclipfence_def = { local sclip_tex = { "technic_insulator_clip.png", - { name = "strut.png^steel_strut_overlay.png", color = "white" }, + { name = "strut.png^technic_steel_strut_overlay.png", color = "white" }, { name = "strut.png", color = "white" } } diff --git a/farming/README.md b/farming/README.md index 0dfebbba..128bf762 100644 --- a/farming/README.md +++ b/farming/README.md @@ -13,7 +13,8 @@ This mod works by adding your new plant to the {growing=1} group and numbering t ### Changelog: -- 1.42 - Soil needs water to be present within 3 blocks horizontally and 1 below to make wet soil, Jack 'o Lanterns now check protection, add chocolate block +- 1.43 - Scythe works on use instead of right-click, added seed=1 groups to actual seeds and seed=2 group for plantable food items. +- 1.42 - Soil needs water to be present within 3 blocks horizontally and 1 below to make wet soil, Jack 'o Lanterns now check protection, add chocolate block. - 1.41 - Each crop has it's own spawn rate (can be changed in farming.conf) - 1.40 - Added Mithril Scythe to quick harvest and replant crops on right-click. Added Hoe's for MoreOres with Toolrank support. - 1.39 - Added Rice, Rye and Oats thanks to Ademants Grains mod. Added Jaffa Cake and multigrain bread. diff --git a/farming/crops/beans.lua b/farming/crops/beans.lua index 50172483..c35b2cfb 100644 --- a/farming/crops/beans.lua +++ b/farming/crops/beans.lua @@ -72,7 +72,7 @@ end minetest.register_craftitem("farming:beans", { description = S("Green Beans"), inventory_image = "farming_beans.png", - groups = {food_beans = 1, flammable = 2}, + groups = {seed = 2, food_beans = 1, flammable = 2}, on_use = minetest.item_eat(1), on_place = function(itemstack, placer, pointed_thing) diff --git a/farming/crops/beetroot.lua b/farming/crops/beetroot.lua index e1aa58e5..0a20d883 100644 --- a/farming/crops/beetroot.lua +++ b/farming/crops/beetroot.lua @@ -5,7 +5,7 @@ local S = farming.intllib minetest.register_craftitem("farming:beetroot", { description = S("Beetroot"), inventory_image = "farming_beetroot.png", - groups = {food_beetroot = 1, flammable = 2}, + groups = {seed = 2, food_beetroot = 1, flammable = 2}, on_place = function(itemstack, placer, pointed_thing) return farming.place_seed(itemstack, placer, pointed_thing, "farming:beetroot_1") end, diff --git a/farming/crops/blueberry.lua b/farming/crops/blueberry.lua index 0b35343d..fec0c123 100644 --- a/farming/crops/blueberry.lua +++ b/farming/crops/blueberry.lua @@ -5,7 +5,8 @@ local S = farming.intllib minetest.register_craftitem("farming:blueberries", { description = S("Blueberries"), inventory_image = "farming_blueberries.png", - groups = {food_blueberries = 1, food_blueberry = 1, food_berry = 1, flammable = 2}, + groups = {seed = 2, food_blueberries = 1, food_blueberry = 1, + food_berry = 1, flammable = 2}, on_place = function(itemstack, placer, pointed_thing) return farming.place_seed(itemstack, placer, pointed_thing, "farming:blueberry_1") end, diff --git a/farming/crops/carrot.lua b/farming/crops/carrot.lua index ec3ff8ba..7df88acb 100644 --- a/farming/crops/carrot.lua +++ b/farming/crops/carrot.lua @@ -10,7 +10,7 @@ local S = farming.intllib minetest.register_craftitem("farming:carrot", { description = S("Carrot"), inventory_image = "farming_carrot.png", - groups = {food_carrot = 1, flammable = 2}, + groups = {seed = 2, food_carrot = 1, flammable = 2}, on_place = function(itemstack, placer, pointed_thing) return farming.place_seed(itemstack, placer, pointed_thing, "farming:carrot_1") end, diff --git a/farming/crops/chili.lua b/farming/crops/chili.lua index cade3b21..cdcfa7e7 100644 --- a/farming/crops/chili.lua +++ b/farming/crops/chili.lua @@ -5,7 +5,7 @@ local S = farming.intllib minetest.register_craftitem("farming:chili_pepper", { description = S("Chili Pepper"), inventory_image = "farming_chili_pepper.png", - groups = {food_chili_pepper = 1, flammable = 4}, + groups = {seed = 2, food_chili_pepper = 1, flammable = 4}, on_place = function(itemstack, placer, pointed_thing) return farming.place_seed(itemstack, placer, pointed_thing, "farming:chili_1") end, diff --git a/farming/crops/cocoa.lua b/farming/crops/cocoa.lua index 3f54a895..243814b0 100644 --- a/farming/crops/cocoa.lua +++ b/farming/crops/cocoa.lua @@ -67,7 +67,7 @@ end minetest.register_craftitem("farming:cocoa_beans", { description = S("Cocoa Beans"), inventory_image = "farming_cocoa_beans.png", - groups = {food_cocoa = 1, flammable = 2}, + groups = {seed = 2, food_cocoa = 1, flammable = 2}, on_place = function(itemstack, placer, pointed_thing) return place_cocoa(itemstack, placer, pointed_thing, "farming:cocoa_1") end, diff --git a/farming/crops/coffee.lua b/farming/crops/coffee.lua index 6d2fad8a..2e2ed73d 100644 --- a/farming/crops/coffee.lua +++ b/farming/crops/coffee.lua @@ -5,7 +5,7 @@ local S = farming.intllib minetest.register_craftitem("farming:coffee_beans", { description = S("Coffee Beans"), inventory_image = "farming_coffee_beans.png", - groups = {food_coffee = 1, flammable = 2}, + groups = {seed = 2, food_coffee = 1, flammable = 2}, on_place = function(itemstack, placer, pointed_thing) return farming.place_seed(itemstack, placer, pointed_thing, "farming:coffee_1") end, diff --git a/farming/crops/corn.lua b/farming/crops/corn.lua index 1d3e21a9..eef547a3 100644 --- a/farming/crops/corn.lua +++ b/farming/crops/corn.lua @@ -10,7 +10,7 @@ local S = farming.intllib minetest.register_craftitem("farming:corn", { description = S("Corn"), inventory_image = "farming_corn.png", - groups = {food_corn = 1, flammable = 2}, + groups = {seed = 2, food_corn = 1, flammable = 2}, on_place = function(itemstack, placer, pointed_thing) return farming.place_seed(itemstack, placer, pointed_thing, "farming:corn_1") end, diff --git a/farming/crops/cucumber.lua b/farming/crops/cucumber.lua index b3761bd5..8bd679a0 100644 --- a/farming/crops/cucumber.lua +++ b/farming/crops/cucumber.lua @@ -10,7 +10,7 @@ local S = farming.intllib minetest.register_craftitem("farming:cucumber", { description = S("Cucumber"), inventory_image = "farming_cucumber.png", - groups = {food_cucumber = 1, flammable = 2}, + groups = {seed = 2, food_cucumber = 1, flammable = 2}, on_place = function(itemstack, placer, pointed_thing) return farming.place_seed(itemstack, placer, pointed_thing, "farming:cucumber_1") end, diff --git a/farming/crops/garlic.lua b/farming/crops/garlic.lua index 83884d0e..ee841e5e 100644 --- a/farming/crops/garlic.lua +++ b/farming/crops/garlic.lua @@ -11,7 +11,7 @@ local S = farming.intllib minetest.register_craftitem("farming:garlic_clove", { description = S("Garlic clove"), inventory_image = "crops_garlic_clove.png", - groups = {food_garlic_clove = 1, flammable = 3}, + groups = {seed = 2, food_garlic_clove = 1, flammable = 3}, on_place = function(itemstack, placer, pointed_thing) return farming.place_seed(itemstack, placer, pointed_thing, "farming:garlic_1") end, diff --git a/farming/crops/grapes.lua b/farming/crops/grapes.lua index a41bb885..cc9d8aac 100644 --- a/farming/crops/grapes.lua +++ b/farming/crops/grapes.lua @@ -68,7 +68,7 @@ minetest.register_craftitem("farming:grapes", { description = S("Grapes"), inventory_image = "farming_grapes.png", on_use = minetest.item_eat(2), - groups = {food_grapes = 1, flammable = 3}, + groups = {seed = 2, food_grapes = 1, flammable = 3}, on_place = function(itemstack, placer, pointed_thing) return place_grapes(itemstack, placer, pointed_thing, "farming:grapes_1") diff --git a/farming/crops/melon.lua b/farming/crops/melon.lua index 06056a09..3fda9f6a 100644 --- a/farming/crops/melon.lua +++ b/farming/crops/melon.lua @@ -5,7 +5,7 @@ local S = farming.intllib minetest.register_craftitem("farming:melon_slice", { description = S("Melon Slice"), inventory_image = "farming_melon_slice.png", - groups = {food_melon_slice = 1, flammable = 3}, + groups = {seed = 2, food_melon_slice = 1, flammable = 3}, on_place = function(itemstack, placer, pointed_thing) return farming.place_seed(itemstack, placer, pointed_thing, "farming:melon_1") end, diff --git a/farming/crops/onion.lua b/farming/crops/onion.lua index ae36d0d1..72a425e4 100644 --- a/farming/crops/onion.lua +++ b/farming/crops/onion.lua @@ -11,7 +11,7 @@ local S = farming.intllib minetest.register_craftitem("farming:onion", { description = S("Onion"), inventory_image = "crops_onion.png", - groups = {food_onion = 1, flammable = 3}, + groups = {seed = 2, food_onion = 1, flammable = 3}, on_place = function(itemstack, placer, pointed_thing) return farming.place_seed(itemstack, placer, pointed_thing, "farming:onion_1") end, diff --git a/farming/crops/peas.lua b/farming/crops/peas.lua index e12253bb..ffe21b3a 100644 --- a/farming/crops/peas.lua +++ b/farming/crops/peas.lua @@ -7,7 +7,7 @@ local S = farming.intllib minetest.register_craftitem("farming:pea_pod", { description = S("Pea Pod"), inventory_image = "farming_pea_pod.png", - groups = {food_pea_pod = 1, flammable = 2}, + groups = {seed = 2, food_pea_pod = 1, flammable = 2}, on_place = function(itemstack, placer, pointed_thing) return farming.place_seed(itemstack, placer, pointed_thing, "farming:pea_1") end diff --git a/farming/crops/pepper.lua b/farming/crops/pepper.lua index 19c7b059..6770888c 100644 --- a/farming/crops/pepper.lua +++ b/farming/crops/pepper.lua @@ -11,7 +11,7 @@ local S = farming.intllib minetest.register_craftitem("farming:peppercorn", { description = S("Peppercorn"), inventory_image = "crops_peppercorn.png", - groups = {food_peppercorn = 1, flammable = 3}, + groups = {seed = 1, food_peppercorn = 1, flammable = 3}, on_place = function(itemstack, placer, pointed_thing) return farming.place_seed(itemstack, placer, pointed_thing, "farming:pepper_1") end, diff --git a/farming/crops/pineapple.lua b/farming/crops/pineapple.lua index 62d8216b..5f3e0783 100644 --- a/farming/crops/pineapple.lua +++ b/farming/crops/pineapple.lua @@ -5,6 +5,7 @@ local S = farming.intllib minetest.register_craftitem("farming:pineapple_top", { description = S("Pineapple Top"), inventory_image = "farming_pineapple_top.png", + groups = {seed = 2, flammable = 2}, on_place = function(itemstack, placer, pointed_thing) return farming.place_seed(itemstack, placer, pointed_thing, "farming:pineapple_1") end, diff --git a/farming/crops/potato.lua b/farming/crops/potato.lua index e81cce63..d9f3e140 100644 --- a/farming/crops/potato.lua +++ b/farming/crops/potato.lua @@ -10,7 +10,7 @@ local S = farming.intllib minetest.register_craftitem("farming:potato", { description = S("Potato"), inventory_image = "farming_potato.png", - groups = {food_potato = 1, flammable = 2}, + groups = {seed = 2, food_potato = 1, flammable = 2}, on_place = function(itemstack, placer, pointed_thing) return farming.place_seed(itemstack, placer, pointed_thing, "farming:potato_1") end, diff --git a/farming/crops/pumpkin.lua b/farming/crops/pumpkin.lua index 508c2b22..1e937db7 100644 --- a/farming/crops/pumpkin.lua +++ b/farming/crops/pumpkin.lua @@ -9,7 +9,7 @@ local S = farming.intllib minetest.register_craftitem("farming:pumpkin_slice", { description = S("Pumpkin Slice"), inventory_image = "farming_pumpkin_slice.png", - groups = {food_pumpkin_slice = 1, flammable = 2}, + groups = {seed = 2, food_pumpkin_slice = 1, flammable = 2}, on_place = function(itemstack, placer, pointed_thing) return farming.place_seed(itemstack, placer, pointed_thing, "farming:pumpkin_1") end, diff --git a/farming/crops/raspberry.lua b/farming/crops/raspberry.lua index a72137b0..8c909e4a 100644 --- a/farming/crops/raspberry.lua +++ b/farming/crops/raspberry.lua @@ -5,7 +5,8 @@ local S = farming.intllib minetest.register_craftitem("farming:raspberries", { description = S("Raspberries"), inventory_image = "farming_raspberries.png", - groups = {food_raspberries = 1, food_raspberry = 1, food_berry = 1, flammable = 2}, + groups = {seed = 2, food_raspberries = 1, food_raspberry = 1, + food_berry = 1, flammable = 2}, on_place = function(itemstack, placer, pointed_thing) return farming.place_seed(itemstack, placer, pointed_thing, "farming:raspberry_1") end, diff --git a/farming/crops/rhubarb.lua b/farming/crops/rhubarb.lua index fdcd11b5..dafb7e7b 100644 --- a/farming/crops/rhubarb.lua +++ b/farming/crops/rhubarb.lua @@ -5,7 +5,7 @@ local S = farming.intllib minetest.register_craftitem("farming:rhubarb", { description = S("Rhubarb"), inventory_image = "farming_rhubarb.png", - groups = {food_rhubarb = 1, flammable = 2}, + groups = {seed = 2, food_rhubarb = 1, flammable = 2}, on_place = function(itemstack, placer, pointed_thing) return farming.place_seed(itemstack, placer, pointed_thing, "farming:rhubarb_1") end, diff --git a/farming/crops/tomato.lua b/farming/crops/tomato.lua index 573661dd..c0823281 100644 --- a/farming/crops/tomato.lua +++ b/farming/crops/tomato.lua @@ -10,7 +10,7 @@ local S = farming.intllib minetest.register_craftitem("farming:tomato", { description = S("Tomato"), inventory_image = "farming_tomato.png", - groups = {food_tomato = 1, flammable = 2}, + groups = {seed = 2, food_tomato = 1, flammable = 2}, on_place = function(itemstack, placer, pointed_thing) return farming.place_seed(itemstack, placer, pointed_thing, "farming:tomato_1") end, diff --git a/farming/hoes.lua b/farming/hoes.lua index 27928cf2..5716128b 100644 --- a/farming/hoes.lua +++ b/farming/hoes.lua @@ -343,20 +343,11 @@ farming.add_to_scythe_not_drops = function(item) end minetest.register_tool("farming:scythe_mithril", { - description = S("Mithril Scythe (Right-click crop to harvest and replant)"), + description = S("Mithril Scythe (Use to harvest and replant crops)"), inventory_image = "farming_scythe_mithril.png", - tool_capabilities = { - full_punch_interval = 0.8, - max_drop_level = 2, - groupcaps = { - fleshy = {times = {[2] = 0.65, [3] = 0.25}, uses = 150, maxlevel = 2}, - snappy = {times = {[2] = 0.70, [3] = 0.25}, uses = 150, maxlevel = 2}, - }, - damage_groups = {fleshy = 8}, - }, sound = {breaks = "default_tool_breaks"}, - on_place = function(itemstack, placer, pointed_thing) + on_use = function(itemstack, placer, pointed_thing) if pointed_thing.type ~= "node" then return diff --git a/farming/init.lua b/farming/init.lua index 07697094..0625f0a0 100644 --- a/farming/init.lua +++ b/farming/init.lua @@ -7,7 +7,7 @@ farming = { mod = "redo", - version = "20190728", + version = "20191202", path = minetest.get_modpath("farming"), select = { type = "fixed", @@ -278,7 +278,7 @@ end) -- Just in case a growing type or added node is missed (also catches existing -- nodes added to map before timers were incorporated). minetest.register_abm({ - nodenames = { "group:growing" }, + nodenames = {"group:growing"}, interval = 300, chance = 1, catch_up = false, diff --git a/ferns/crafting.lua b/ferns/crafting.lua index 940da8e5..f32aa69a 100644 --- a/ferns/crafting.lua +++ b/ferns/crafting.lua @@ -1,5 +1,5 @@ -- support for i18n -local S = plantlife_i18n.gettext +local S = minetest.get_translator("ferns") ----------------------------------------------------------------------------------------------- -- Ferns - Crafting 0.0.5 ----------------------------------------------------------------------------------------------- diff --git a/ferns/depends.txt b/ferns/depends.txt deleted file mode 100644 index 6790d9e0..00000000 --- a/ferns/depends.txt +++ /dev/null @@ -1,3 +0,0 @@ -default -biome_lib -plantlife_i18n diff --git a/ferns/fern.lua b/ferns/fern.lua index eff73f97..2c5278f4 100644 --- a/ferns/fern.lua +++ b/ferns/fern.lua @@ -15,7 +15,7 @@ assert(abstract_ferns.config.enable_lady_fern == true) -- support for i18n -local S = plantlife_i18n.gettext +local S = minetest.get_translator("ferns") -- Maintain backward compatibilty -- minetest-0.5: Begin diff --git a/ferns/gianttreefern.lua b/ferns/gianttreefern.lua index 847cea2e..28feb6a8 100644 --- a/ferns/gianttreefern.lua +++ b/ferns/gianttreefern.lua @@ -10,7 +10,7 @@ assert(abstract_ferns.config.enable_giant_treefern == true) -- support for i18n -local S = plantlife_i18n.gettext +local S = minetest.get_translator("ferns") -- lot of code, lot to load abstract_ferns.grow_giant_tree_fern = function(pos) diff --git a/ferns/horsetail.lua b/ferns/horsetail.lua index 2f12b9fa..b41f811d 100644 --- a/ferns/horsetail.lua +++ b/ferns/horsetail.lua @@ -11,7 +11,7 @@ assert(abstract_ferns.config.enable_horsetails == true) -- support for i18n -local S = plantlife_i18n.gettext +local S = minetest.get_translator("ferns") ----------------------------------------------------------------------------------------------- -- HORSETAIL (EQUISETUM) ----------------------------------------------------------------------------------------------- diff --git a/ferns/init.lua b/ferns/init.lua index fb32a8d4..03ce8a90 100644 --- a/ferns/init.lua +++ b/ferns/init.lua @@ -9,7 +9,7 @@ local mname = "ferns" -- former "archaeplantae" abstract_ferns = {} -- support for i18n -local S = plantlife_i18n.gettext +local S = minetest.get_translator("ferns") dofile(minetest.get_modpath("ferns").."/settings.lua") diff --git a/ferns/locale/ferns.fr.tr b/ferns/locale/ferns.fr.tr new file mode 100644 index 00000000..9eb8d74c --- /dev/null +++ b/ferns/locale/ferns.fr.tr @@ -0,0 +1,22 @@ +# textdomain: ferns + +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# fat115 , 2017. +# + +Fiddlehead=Crosse de fougère +Roasted Fiddlehead=Crosse de fougère rôtie +Fern Tuber=Tubercule de fougère +Roasted Fern Tuber=Tubercule de fougère rôti +Lady-fern (Athyrium)=Fougère (Athyrium) +Tree Fern Crown (Dicksonia)=Fougère en couronne (Dicksonia) +Giant Tree Fern Leaves=Feuilles de fougère géante +Giant Tree Fern Leave End=Feuilles de fougère géante (extrémité) +Giant Fern Trunk=Tronc de fougère géante +Giant Tree Fern Sapling=Pousse de fougère géante +Young Horsetail (Equisetum)=Pousse de prêle (Equisetum) +Horsetail (Equisetum)=Prêle (Equisetum) +Fern Trunk (Dicksonia)=Tronc de fougère en couronne (Dicksonia) +Tree Fern Sapling (Dicksonia)=Pousse de fougère en couronne (Dicksonia) diff --git a/ferns/locale/template.txt b/ferns/locale/template.txt new file mode 100644 index 00000000..a824e9c2 --- /dev/null +++ b/ferns/locale/template.txt @@ -0,0 +1,23 @@ +# textdomain: ferns + +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# FIRST AUTHOR , YEAR. +# + + +Fiddlehead= +Roasted Fiddlehead= +Fern Tuber= +Roasted Fern Tuber= +Lady-fern (Athyrium)= +Tree Fern Crown (Dicksonia)= +Giant Tree Fern Leaves= +Giant Tree Fern Leave End= +Giant Fern Trunk= +Giant Tree Fern Sapling= +Young Horsetail (Equisetum)= +Horsetail (Equisetum)= +Fern Trunk (Dicksonia)= +Tree Fern Sapling (Dicksonia)= diff --git a/ferns/mod.conf b/ferns/mod.conf new file mode 100644 index 00000000..fe92bf76 --- /dev/null +++ b/ferns/mod.conf @@ -0,0 +1,2 @@ +name = ferns +depends = default, biome_lib diff --git a/ferns/treefern.lua b/ferns/treefern.lua index f1ae9b7d..7b5aafcf 100644 --- a/ferns/treefern.lua +++ b/ferns/treefern.lua @@ -7,7 +7,7 @@ ----------------------------------------------------------------------------------------------- -- support for i18n -local S = plantlife_i18n.gettext +local S = minetest.get_translator("ferns") assert(abstract_ferns.config.enable_treefern == true) diff --git a/flowers_plus/depends.txt b/flowers_plus/depends.txt deleted file mode 100644 index 0c1af973..00000000 --- a/flowers_plus/depends.txt +++ /dev/null @@ -1,4 +0,0 @@ -biome_lib -plantlife_i18n -farming? -flowers? diff --git a/flowers_plus/init.lua b/flowers_plus/init.lua index 9119d36a..11393ef1 100644 --- a/flowers_plus/init.lua +++ b/flowers_plus/init.lua @@ -1,5 +1,5 @@ -- support for i18n -local S = plantlife_i18n.gettext +local S = minetest.get_translator("flowers_plus") -- This file supplies a few additional plants and some related crafts -- for the plantlife modpack. Last revision: 2013-04-24 @@ -478,4 +478,4 @@ minetest.register_alias("flowers:cotton", "farming:string") minetest.register_alias("flowers:cotton_wad", "farming:string") minetest.register_alias("sunflower:sunflower", "flowers:sunflower") -print(S("[Flowers] Loaded.")) +print("[Flowers] Loaded.") diff --git a/flowers_plus/locale/flowers_plus.de.tr b/flowers_plus/locale/flowers_plus.de.tr new file mode 100644 index 00000000..4eec876c --- /dev/null +++ b/flowers_plus/locale/flowers_plus.de.tr @@ -0,0 +1,13 @@ +# textdomain: flowers_plus + +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# Xanthin, 2017. +# + + + +Waterlily=Seerose +Seaweed=Seetang +Sunflower=Sonnenblume diff --git a/flowers_plus/locale/flowers_plus.es.tr b/flowers_plus/locale/flowers_plus.es.tr new file mode 100644 index 00000000..3e903628 --- /dev/null +++ b/flowers_plus/locale/flowers_plus.es.tr @@ -0,0 +1,12 @@ +# textdomain: flowers_plus + +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# Carlos Barraza , 2017. +# + + +Waterlily=Lirio de agua +Seaweed=Algas marinas +Sunflower=Girasol diff --git a/flowers_plus/locale/flowers_plus.fr.tr b/flowers_plus/locale/flowers_plus.fr.tr new file mode 100644 index 00000000..642b4bac --- /dev/null +++ b/flowers_plus/locale/flowers_plus.fr.tr @@ -0,0 +1,12 @@ +# textdomain: flowers_plus + +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# fat115 , 2017. +# + + +Waterlily=Nénuphar +Seaweed=Algues +Sunflower=Tournesol diff --git a/flowers_plus/locale/flowers_plus.tr.tr b/flowers_plus/locale/flowers_plus.tr.tr new file mode 100644 index 00000000..859025f5 --- /dev/null +++ b/flowers_plus/locale/flowers_plus.tr.tr @@ -0,0 +1,12 @@ +# textdomain: flowers_plus + +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# mahmutelmas06@hotmail.com, 2017. +# + + +Waterlily=Nilüfer +Seaweed=Deniz yosunu +Sunflower=Ayçiçeği diff --git a/flowers_plus/locale/template.txt b/flowers_plus/locale/template.txt new file mode 100644 index 00000000..130ce1e2 --- /dev/null +++ b/flowers_plus/locale/template.txt @@ -0,0 +1,13 @@ +# textdomain: flowers_plus + +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# FIRST AUTHOR , YEAR. +# + + + +Waterlily= +Seaweed= +Sunflower= diff --git a/flowers_plus/mod.conf b/flowers_plus/mod.conf new file mode 100644 index 00000000..a3719e71 --- /dev/null +++ b/flowers_plus/mod.conf @@ -0,0 +1,3 @@ +name = flowers_plus +depends = biome_lib +optional_depends = farming, flowers diff --git a/glooptest/textures/glooptest_chainlink.png b/glooptest/textures/glooptest_chainlink.png deleted file mode 100644 index d7132c328fa4e3c6d9f9da2e33c56a1269224690..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 175 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!61|;P_|4#%`Wu7jMAr*7ZPQ1v;V94QY9i{&9 zvZc)0*;}6|xNERqt(&XhYRDfP{X4YBa9LWUj9~t*-=C*3-cr_Jz0uC-((7|GkYT&y z-RkqV7j`gooGv?)^X~SFxylc+g||-L$HT^XAZ$xJdt ZY;yS)^B@^VH=qj`JYD@<);T3K0RX*6Kz#rJ diff --git a/homedecor_doors_and_gates/init.lua b/homedecor_doors_and_gates/init.lua index 4c28bc9b..1b3ee869 100644 --- a/homedecor_doors_and_gates/init.lua +++ b/homedecor_doors_and_gates/init.lua @@ -620,8 +620,8 @@ minetest.register_craft( { type = "shapeless", output = "doors:homedecor_closet_mahogany 2", recipe = { - "doors:homedecor_closet_oak_a", - "doors:homedecor_closet_oak_a", + "doors:homedecor_closet_oak", + "doors:homedecor_closet_oak", "dye:brown" }, }) @@ -643,7 +643,7 @@ minetest.register_craft( { output = "doors:homedecor_basic_panel", recipe = { { "dye:white", "dye:white", "" }, - { "doors:homedecor_wood_plain_a", "basic_materials:brass_ingot", "" }, + { "doors:homedecor_wood_plain", "basic_materials:brass_ingot", "" }, { "", "", "" }, }, }) diff --git a/junglegrass/mod.conf b/junglegrass/mod.conf new file mode 100644 index 00000000..bb0f56b0 --- /dev/null +++ b/junglegrass/mod.conf @@ -0,0 +1 @@ +name = junglegrass diff --git a/maptools/CHANGELOG.md b/maptools/CHANGELOG.md index 25e56640..3b95df95 100644 --- a/maptools/CHANGELOG.md +++ b/maptools/CHANGELOG.md @@ -7,6 +7,8 @@ and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0. ## [Unreleased] +## [2.0.0] - 2019-11-25 + ### Changed - The minimum supported Minetest version is now 5.0.0. @@ -30,5 +32,6 @@ and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0. - Initial versioned release. -[Unreleased]: https://github.com/minetest-mods/maptools/compare/v1.1.0...HEAD +[Unreleased]: https://github.com/minetest-mods/maptools/compare/v2.0.0...HEAD +[2.0.0]: https://github.com/minetest-mods/maptools/compare/v1.1.0...v2.0.0 [1.1.0]: https://github.com/minetest-mods/maptools/compare/v1.0.0...v1.1.0 diff --git a/maptools/LICENSE.md b/maptools/LICENSE.md index a5a3df96..2a044ae7 100644 --- a/maptools/LICENSE.md +++ b/maptools/LICENSE.md @@ -1,6 +1,6 @@ # zlib license -Copyright © 2012-2019 Hugo Locurcio and contributors +Copyright © 2012-2020 Hugo Locurcio and contributors **This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages arising from the use of this software.** diff --git a/maptools/README.md b/maptools/README.md index 64314bdb..7b3fa017 100644 --- a/maptools/README.md +++ b/maptools/README.md @@ -21,9 +21,7 @@ git clone https://github.com/minetest-mods/maptools.git You can also [download a ZIP archive](https://github.com/minetest-mods/maptools/archive/master.zip) -of Map Tools. If you do so, you will need to extract the archive then rename -the resulting folder from `maptools-master` to `maptools` – this is -**absolutely** required, as the mod won't work otherwise. +of Map Tools. ### Enable the mod @@ -63,13 +61,13 @@ on that line. ## Version compatibility -Map Tools is currently primarily tested with Minetest 5.0.1. +Map Tools is currently primarily tested with Minetest 5.1.0. It may or may not work with newer or older versions. Issues arising in older versions than 5.0.0 will generally not be fixed. ## License -Copyright © 2012-2019 Hugo Locurcio and contributors +Copyright © 2012-2020 Hugo Locurcio and contributors - Map Tools code is licensed under the zlib license, see [`LICENSE.md`](LICENSE.md) for details. diff --git a/maptools/aliases.lua b/maptools/aliases.lua index 13ec59fc..ca3e832c 100644 --- a/maptools/aliases.lua +++ b/maptools/aliases.lua @@ -1,7 +1,7 @@ --[[ Map Tools: alias definitions -Copyright © 2012-2019 Hugo Locurcio and contributors. +Copyright © 2012-2020 Hugo Locurcio and contributors. Licensed under the zlib license. See LICENSE.md for more information. --]] diff --git a/maptools/config.lua b/maptools/config.lua index 466491e2..b980fc35 100644 --- a/maptools/config.lua +++ b/maptools/config.lua @@ -1,7 +1,7 @@ --[[ Map Tools: configuration handling -Copyright © 2012-2019 Hugo Locurcio and contributors. +Copyright © 2012-2020 Hugo Locurcio and contributors. Licensed under the zlib license. See LICENSE.md for more information. --]] diff --git a/maptools/craftitems.lua b/maptools/craftitems.lua index 00f09f27..58127bfa 100644 --- a/maptools/craftitems.lua +++ b/maptools/craftitems.lua @@ -1,7 +1,7 @@ --[[ Map Tools: item definitions -Copyright © 2012-2019 Hugo Locurcio and contributors. +Copyright © 2012-2020 Hugo Locurcio and contributors. Licensed under the zlib license. See LICENSE.md for more information. --]] diff --git a/maptools/default_nodes.lua b/maptools/default_nodes.lua index 15ce9253..8a59a68a 100644 --- a/maptools/default_nodes.lua +++ b/maptools/default_nodes.lua @@ -1,7 +1,7 @@ --[[ Map Tools: unbreakable default nodes -Copyright © 2012-2019 Hugo Locurcio and contributors. +Copyright © 2012-2020 Hugo Locurcio and contributors. Licensed under the zlib license. See LICENSE.md for more information. --]] diff --git a/maptools/init.lua b/maptools/init.lua index 4c969bff..7e053ec8 100644 --- a/maptools/init.lua +++ b/maptools/init.lua @@ -3,7 +3,7 @@ ** Map Tools ** By Calinou. -Copyright © 2012-2019 Hugo Locurcio and contributors. +Copyright © 2012-2020 Hugo Locurcio and contributors. Licensed under the zlib license. See LICENSE.md for more information. ===================================================================== --]] diff --git a/maptools/nodes.lua b/maptools/nodes.lua index 08aa9148..2f9d809f 100644 --- a/maptools/nodes.lua +++ b/maptools/nodes.lua @@ -1,7 +1,7 @@ --[[ Map Tools: node definitions -Copyright © 2012-2019 Hugo Locurcio and contributors. +Copyright © 2012-2020 Hugo Locurcio and contributors. Licensed under the zlib license. See LICENSE.md for more information. --]] diff --git a/maptools/tools.lua b/maptools/tools.lua index 550ab6b5..6fe04565 100644 --- a/maptools/tools.lua +++ b/maptools/tools.lua @@ -1,7 +1,7 @@ --[[ Map Tools: tool definitions -Copyright © 2012-2019 Hugo Locurcio and contributors. +Copyright © 2012-2020 Hugo Locurcio and contributors. Licensed under the zlib license. See LICENSE.md for more information. --]] diff --git a/mesecons/actionqueue.lua b/mesecons/actionqueue.lua index f3479ce5..55080959 100644 --- a/mesecons/actionqueue.lua +++ b/mesecons/actionqueue.lua @@ -1,96 +1,140 @@ -mesecon.queue.actions={} -- contains all ActionQueue actions +--[[ +Mesecons uses something it calls an ActionQueue. -function mesecon.queue:add_function(name, func) - mesecon.queue.funcs[name] = func +The ActionQueue holds functions and actions. +Functions are added on load time with a specified name. +Actions are preserved over server restarts. + +Each action consists of a position, the name of an added function to be called, +the params that should be used in this function call (additionally to the pos), +the time after which it should be executed, an optional overwritecheck and a +priority. + +If time = 0, the action will be executed in the next globalstep, otherwise the +earliest globalstep when it will be executed is the after next globalstep. + +It is guaranteed, that for two actions ac1, ac2 where ac1 ~= ac2, +ac1.time == ac2.time, ac1.priority == ac2.priority and ac1 was added earlier +than ac2, ac1 will be executed before ac2 (but in the same globalstep). + +Note: Do not pass references in params, as they can not be preserved. + +Also note: Some of the guarantees here might be dropped at some time. +]] + + +-- localize for speed +local queue = mesecon.queue + +queue.actions = {} -- contains all ActionQueue actions + +function queue:add_function(name, func) + queue.funcs[name] = func end -- If add_action with twice the same overwritecheck and same position are called, the first one is overwritten -- use overwritecheck nil to never overwrite, but just add the event to the queue -- priority specifies the order actions are executed within one globalstep, highest first -- should be between 0 and 1 -function mesecon.queue:add_action(pos, func, params, time, overwritecheck, priority) +function queue:add_action(pos, func, params, time, overwritecheck, priority) -- Create Action Table: time = time or 0 -- time <= 0 --> execute, time > 0 --> wait time until execution priority = priority or 1 - local action = { pos=mesecon.tablecopy(pos), - func=func, - params=mesecon.tablecopy(params or {}), - time=time, - owcheck=(overwritecheck and mesecon.tablecopy(overwritecheck)) or nil, - priority=priority} + local action = { + pos = mesecon.tablecopy(pos), + func = func, + params = mesecon.tablecopy(params or {}), + time = time, + owcheck = (overwritecheck and mesecon.tablecopy(overwritecheck)) or nil, + priority = priority + } - local toremove = nil - -- Otherwise, add the action to the queue - if overwritecheck then -- check if old action has to be overwritten / removed: - for i, ac in ipairs(mesecon.queue.actions) do - if(vector.equals(pos, ac.pos) - and mesecon.cmpAny(overwritecheck, ac.owcheck)) then - toremove = i + -- check if old action has to be overwritten / removed: + if overwritecheck then + for i, ac in ipairs(queue.actions) do + if vector.equals(pos, ac.pos) + and mesecon.cmpAny(overwritecheck, ac.owcheck) then + -- remove the old action + table.remove(queue.actions, i) break end end end - if (toremove ~= nil) then - table.remove(mesecon.queue.actions, toremove) - end - - table.insert(mesecon.queue.actions, action) + table.insert(queue.actions, action) end -- execute the stored functions on a globalstep -- if however, the pos of a function is not loaded (get_node_or_nil == nil), do NOT execute the function --- this makes sure that resuming mesecons circuits when restarting minetest works fine +-- this makes sure that resuming mesecons circuits when restarting minetest works fine (hm, where do we do this?) -- However, even that does not work in some cases, that's why we delay the time the globalsteps --- start to be execute by 5 seconds -local get_highest_priority = function (actions) - local highestp = -1 - local highesti - for i, ac in ipairs(actions) do - if ac.priority > highestp then - highestp = ac.priority - highesti = i - end - end +-- start to be execute by 4 seconds - return highesti -end +local function globalstep_func(dtime) + local actions = queue.actions + -- split into two categories: + -- actions_now: actions to execute now + -- queue.actions: actions to execute later + local actions_now = {} + queue.actions = {} -local m_time = 0 -local resumetime = mesecon.setting("resumetime", 4) -minetest.register_globalstep(function (dtime) - m_time = m_time + dtime - -- don't even try if server has not been running for XY seconds; resumetime = time to wait - -- after starting the server before processing the ActionQueue, don't set this too low - if (m_time < resumetime) then return end - local actions = mesecon.tablecopy(mesecon.queue.actions) - local actions_now={} - - mesecon.queue.actions = {} - - -- sort actions into two categories: - -- those toexecute now (actions_now) and those to execute later (mesecon.queue.actions) - for i, ac in ipairs(actions) do + for _, ac in ipairs(actions) do if ac.time > 0 then - ac.time = ac.time - dtime -- executed later - table.insert(mesecon.queue.actions, ac) + -- action ac is to be executed later + -- ~> insert into queue.actions + ac.time = ac.time - dtime + table.insert(queue.actions, ac) else + -- action ac is to be executed now + -- ~> insert into actions_now table.insert(actions_now, ac) end end - while(#actions_now > 0) do -- execute highest priorities first, until all are executed - local hp = get_highest_priority(actions_now) - mesecon.queue:execute(actions_now[hp]) - table.remove(actions_now, hp) + -- stable-sort the executed actions after their priority + -- some constructions might depend on the execution order, hence we first + -- execute the actions that had a lower index in actions_now + local old_action_order = {} + for i, ac in ipairs(actions_now) do + old_action_order[ac] = i end -end) + table.sort(actions_now, function(ac1, ac2) + if ac1.priority ~= ac2.priority then + return ac1.priority > ac2.priority + else + return old_action_order[ac1] < old_action_order[ac2] + end + end) -function mesecon.queue:execute(action) + -- execute highest priorities first, until all are executed + for _, ac in ipairs(actions_now) do + queue:execute(ac) + end +end + +-- delay the time the globalsteps start to be execute by 4 seconds +do + local m_time = 0 + local resumetime = mesecon.setting("resumetime", 4) + local globalstep_func_index = #minetest.registered_globalsteps + 1 + + minetest.register_globalstep(function(dtime) + m_time = m_time + dtime + -- don't even try if server has not been running for XY seconds; resumetime = time to wait + -- after starting the server before processing the ActionQueue, don't set this too low + if m_time < resumetime then + return + end + -- replace this globalstep function + minetest.registered_globalsteps[globalstep_func_index] = globalstep_func + end) +end + +function queue:execute(action) -- ignore if action queue function name doesn't exist, -- (e.g. in case the action queue savegame was written by an old mesecons version) - if mesecon.queue.funcs[action.func] then - mesecon.queue.funcs[action.func](action.pos, unpack(action.params)) + if queue.funcs[action.func] then + queue.funcs[action.func](action.pos, unpack(action.params)) end end @@ -98,8 +142,8 @@ end -- Store and read the ActionQueue to / from a file -- so that upcoming actions are remembered when the game -- is restarted -mesecon.queue.actions = mesecon.file2table("mesecon_actionqueue") +queue.actions = mesecon.file2table("mesecon_actionqueue") minetest.register_on_shutdown(function() - mesecon.table2file("mesecon_actionqueue", mesecon.queue.actions) + mesecon.table2file("mesecon_actionqueue", queue.actions) end) diff --git a/mesecons_delayer/init.lua b/mesecons_delayer/init.lua index 94450db8..66665adc 100644 --- a/mesecons_delayer/init.lua +++ b/mesecons_delayer/init.lua @@ -33,19 +33,9 @@ end -- Register the 2 (states) x 4 (delay times) delayers -for i = 1, 4 do -local groups = {} -if i == 1 then - groups = {bendy=2,snappy=1,dig_immediate=2} -else - groups = {bendy=2,snappy=1,dig_immediate=2, not_in_creative_inventory=1} -end +local delaytime = { 0.1, 0.3, 0.5, 1.0 } -local delaytime -if i == 1 then delaytime = 0.1 -elseif i == 2 then delaytime = 0.3 -elseif i == 3 then delaytime = 0.5 -elseif i == 4 then delaytime = 1.0 end +for i = 1, 4 do local boxes = { { -6/16, -8/16, -6/16, 6/16, -7/16, 6/16 }, -- the main slab @@ -61,19 +51,9 @@ local boxes = { { 6/16, -8/16, -1/16, 8/16, -7/16, 1/16 } } -minetest.register_node("mesecons_delayer:delayer_off_"..tostring(i), { - description = "Delayer", +-- Delayer definition defaults +local def = { drawtype = "nodebox", - tiles = { - "mesecons_delayer_off_"..tostring(i)..".png", - "mesecons_delayer_bottom.png", - "mesecons_delayer_ends_off.png", - "mesecons_delayer_ends_off.png", - "mesecons_delayer_sides_off.png", - "mesecons_delayer_sides_off.png" - }, - inventory_image = "mesecons_delayer_off_1.png", - wield_image = "mesecons_delayer_off_1.png", walkable = true, selection_box = { type = "fixed", @@ -83,26 +63,46 @@ minetest.register_node("mesecons_delayer:delayer_off_"..tostring(i), { type = "fixed", fixed = boxes }, - groups = groups, paramtype = "light", paramtype2 = "facedir", sunlight_propagates = true, is_ground_content = false, - drop = 'mesecons_delayer:delayer_off_1', - on_punch = function (pos, node) - if node.name=="mesecons_delayer:delayer_off_1" then - minetest.swap_node(pos, {name = "mesecons_delayer:delayer_off_2", param2=node.param2}) - elseif node.name=="mesecons_delayer:delayer_off_2" then - minetest.swap_node(pos, {name = "mesecons_delayer:delayer_off_3", param2=node.param2}) - elseif node.name=="mesecons_delayer:delayer_off_3" then - minetest.swap_node(pos, {name = "mesecons_delayer:delayer_off_4", param2=node.param2}) - elseif node.name=="mesecons_delayer:delayer_off_4" then - minetest.swap_node(pos, {name = "mesecons_delayer:delayer_off_1", param2=node.param2}) - end - end, - delayer_time = delaytime, - delayer_onstate = "mesecons_delayer:delayer_on_"..tostring(i), + delayer_time = delaytime[i], sounds = default.node_sound_stone_defaults(), + on_blast = mesecon.on_blastnode, + drop = "mesecons_delayer:delayer_off_1", +} + +-- Deactivated delayer definition defaults +local off_groups = {bendy=2,snappy=1,dig_immediate=2} +if i > 1 then + off_groups.not_in_creative_inventory = 1 +end + +local off_state = { + description = "Delayer", + tiles = { + "mesecons_delayer_off_"..tostring(i)..".png", + "mesecons_delayer_bottom.png", + "mesecons_delayer_ends_off.png", + "mesecons_delayer_ends_off.png", + "mesecons_delayer_sides_off.png", + "mesecons_delayer_sides_off.png" + }, + inventory_image = "mesecons_delayer_off_1.png", + wield_image = "mesecons_delayer_off_1.png", + groups = off_groups, + on_punch = function(pos, node, puncher) + if minetest.is_protected(pos, puncher and puncher:get_player_name()) then + return + end + + minetest.swap_node(pos, { + name = "mesecons_delayer:delayer_off_"..tostring(i % 4 + 1), + param2 = node.param2 + }) + end, + delayer_onstate = "mesecons_delayer:delayer_on_"..tostring(i), mesecons = { receptor = { @@ -115,13 +115,15 @@ minetest.register_node("mesecons_delayer:delayer_off_"..tostring(i), { action_on = delayer_activate } }, - on_blast = mesecon.on_blastnode, -}) +} +for k, v in pairs(def) do + off_state[k] = off_state[k] or v +end +minetest.register_node("mesecons_delayer:delayer_off_"..tostring(i), off_state) - -minetest.register_node("mesecons_delayer:delayer_on_"..tostring(i), { +-- Activated delayer definition defaults +local on_state = { description = "You hacker you", - drawtype = "nodebox", tiles = { "mesecons_delayer_on_"..tostring(i)..".png", "mesecons_delayer_bottom.png", @@ -129,36 +131,19 @@ minetest.register_node("mesecons_delayer:delayer_on_"..tostring(i), { "mesecons_delayer_ends_on.png", "mesecons_delayer_sides_on.png", "mesecons_delayer_sides_on.png" - }, - walkable = true, - selection_box = { - type = "fixed", - fixed = { -8/16, -8/16, -8/16, 8/16, -6/16, 8/16 }, - }, - node_box = { - type = "fixed", - fixed = boxes }, groups = {bendy = 2, snappy = 1, dig_immediate = 2, not_in_creative_inventory = 1}, - paramtype = "light", - paramtype2 = "facedir", - sunlight_propagates = true, - is_ground_content = false, - drop = 'mesecons_delayer:delayer_off_1', - on_punch = function (pos, node) - if node.name=="mesecons_delayer:delayer_on_1" then - minetest.swap_node(pos, {name = "mesecons_delayer:delayer_on_2", param2=node.param2}) - elseif node.name=="mesecons_delayer:delayer_on_2" then - minetest.swap_node(pos, {name = "mesecons_delayer:delayer_on_3", param2=node.param2}) - elseif node.name=="mesecons_delayer:delayer_on_3" then - minetest.swap_node(pos, {name = "mesecons_delayer:delayer_on_4", param2=node.param2}) - elseif node.name=="mesecons_delayer:delayer_on_4" then - minetest.swap_node(pos, {name = "mesecons_delayer:delayer_on_1", param2=node.param2}) + on_punch = function(pos, node, puncher) + if minetest.is_protected(pos, puncher and puncher:get_player_name()) then + return end + + minetest.swap_node(pos, { + name = "mesecons_delayer:delayer_on_"..tostring(i % 4 + 1), + param2 = node.param2 + }) end, - delayer_time = delaytime, delayer_offstate = "mesecons_delayer:delayer_off_"..tostring(i), - sounds = default.node_sound_stone_defaults(), mesecons = { receptor = { @@ -171,8 +156,12 @@ minetest.register_node("mesecons_delayer:delayer_on_"..tostring(i), { action_off = delayer_deactivate } }, - on_blast = mesecon.on_blastnode, -}) +} +for k, v in pairs(def) do + on_state[k] = on_state[k] or v +end +minetest.register_node("mesecons_delayer:delayer_on_"..tostring(i), on_state) + end minetest.register_craft({ diff --git a/mesecons_fpga/init.lua b/mesecons_fpga/init.lua index 941b61ad..6ba8f80a 100644 --- a/mesecons_fpga/init.lua +++ b/mesecons_fpga/init.lua @@ -1,10 +1,11 @@ local plg = {} plg.rules = {} +-- per-player formspec positions +plg.open_formspecs = {} local lcore = dofile(minetest.get_modpath(minetest.get_current_modname()) .. "/logic.lua") dofile(minetest.get_modpath(minetest.get_current_modname()) .. "/tool.lua")(plg) - plg.register_nodes = function(template) -- each loop is for one of the 4 IO ports for a = 0, 1 do @@ -93,16 +94,20 @@ plg.register_nodes({ meta:set_string("instr", lcore.serialize(is)) meta:set_int("valid", 0) - meta:set_string("formspec", plg.to_formspec_string(is)) meta:set_string("infotext", "FPGA") end, - on_receive_fields = function(pos, formname, fields, sender) - if fields.program == nil then return end -- we only care when the user clicks "Program" + on_rightclick = function(pos, node, clicker) + if not minetest.is_player(clicker) then + return + end local meta = minetest.get_meta(pos) - local is = plg.from_formspec_fields(fields) + local name = clicker:get_player_name() + -- Erase formspecs of old FPGAs + meta:set_string("formspec", "") - meta:set_string("instr", lcore.serialize(is)) - plg.update_formspec(pos, is) + plg.open_formspecs[name] = pos + local is = lcore.deserialize(meta:get_string("instr")) + minetest.show_formspec(name, "mesecons:fpga", plg.to_formspec_string(is, nil)) end, sounds = default.node_sound_stone_defaults(), mesecons = { @@ -116,6 +121,12 @@ plg.register_nodes({ }, after_dig_node = function(pos, node) mesecon.receptor_off(pos, plg.rules[node.name]) + for name, open_pos in pairs(plg.open_formspecs) do + if vector.equals(pos, open_pos) then + minetest.close_formspec(name, "mesecons:fpga") + plg.open_formspecs[name] = nil + end + end end, on_blast = mesecon.on_blastnode, on_rotate = function(pos, node, user, mode) @@ -153,13 +164,12 @@ plg.register_nodes({ end meta:set_string("instr", lcore.serialize(instr)) - plg.update_formspec(pos, instr) + plg.update_meta(pos, instr) return true end, }) - -plg.to_formspec_string = function(is) +plg.to_formspec_string = function(is, err) local function dropdown_op(x, y, name, val) local s = "dropdown[" .. tostring(x) .. "," .. tostring(y) .. ";" .. "0.75,0.5;" .. name .. ";" -- the height seems to be ignored? @@ -180,26 +190,20 @@ plg.to_formspec_string = function(is) return s .. "]" end local function dropdown_action(x, y, name, val) - local s = "dropdown[" .. tostring(x) .. "," .. tostring(y) .. ";" - .. "1.125,0.5;" .. name .. ";" -- the height seems to be ignored? - s = s .. " , AND, OR, NOT, XOR,NAND, =,XNOR;" - if val == nil then - return s .. "0]" -- actually selects no field at all + local selected = 0 + local titles = { " " } + for i, data in ipairs(lcore.get_operations()) do + titles[i + 1] = data.fs_name + if val == data.gate then + selected = i + 1 + end end - local mapping = { - ["and"] = 1, - ["or"] = 2, - ["not"] = 3, - ["xor"] = 4, - ["nand"] = 5, - ["buf"] = 6, - ["xnor"] = 7, - } - return s .. tostring(1 + mapping[val]) .. "]" + return ("dropdown[%f,%f;1.125,0.5;%s;%s;%i]"):format( + x, y, name, table.concat(titles, ","), selected) end local s = "size[9,9]".. "label[3.4,-0.15;FPGA gate configuration]".. - "button_exit[7,7.5;2,2.5;program;Program]".. + "button[7,7.5;2,2.5;program;Program]".. "box[4.2,0.5;0.03,7;#ffffff]".. "label[0.25,0.25;op. 1]".. "label[1.0,0.25;gate type]".. @@ -225,6 +229,12 @@ plg.to_formspec_string = function(is) y = 1 - 0.25 end end + if err then + local fmsg = minetest.colorize("#ff0000", minetest.formspec_escape(err.msg)) + s = s .. plg.red_box_around(err.i) .. + "label[0.25,8.25;The gate configuration is erroneous in the marked area:]".. + "label[0.25,8.5;" .. fmsg .. "]" + end return s end @@ -239,20 +249,11 @@ plg.from_formspec_fields = function(fields) end end local function read_action(s) - if s == nil or s == " " then - return nil + for i, data in ipairs(lcore.get_operations()) do + if data.fs_name == s then + return data.gate + end end - local mapping = { - ["AND"] = "and", - ["OR"] = "or", - ["NOT"] = "not", - ["XOR"] = "xor", - ["NAND"] = "nand", - ["="] = "buf", - ["XNOR"] = "xnor", - } - s = s:gsub("^%s*", "") -- remove leading spaces - return mapping[s] end local is = {} for i = 1, 14 do @@ -266,12 +267,11 @@ plg.from_formspec_fields = function(fields) return is end -plg.update_formspec = function(pos, is) +plg.update_meta = function(pos, is) if type(is) == "string" then -- serialized string is = lcore.deserialize(is) end local meta = minetest.get_meta(pos) - local form = plg.to_formspec_string(is) local err = lcore.validate(is) if err == nil then @@ -280,17 +280,20 @@ plg.update_formspec = function(pos, is) else meta:set_int("valid", 0) meta:set_string("infotext", "FPGA") - local fmsg = minetest.colorize("#ff0000", minetest.formspec_escape(err.msg)) - form = form .. plg.red_box_around(err.i) .. - "label[0.25,8.25;The gate configuration is erroneous in the marked area:]".. - "label[0.25,8.5;" .. fmsg .. "]" end - meta:set_string("formspec", form) - -- reset ports and run programmed logic plg.setports(pos, false, false, false, false) plg.update(pos) + + -- Refresh open formspecs + local form = plg.to_formspec_string(is, err) + for name, open_pos in pairs(plg.open_formspecs) do + if vector.equals(pos, open_pos) then + minetest.show_formspec(name, "mesecons:fpga", form) + end + end + return err end plg.red_box_around = function(i) @@ -409,6 +412,38 @@ plg.setports = function(pos, A, B, C, D) -- sets states of OUTPUT end end +minetest.register_on_player_receive_fields(function(player, formname, fields) + local player_name = player:get_player_name() + + if formname ~= "mesecons:fpga" or fields.quit then + plg.open_formspecs[player_name] = nil -- potential garbage + return + end + if not fields.program then + return -- we only care when the user clicks "Program" + end + local pos = plg.open_formspecs[player_name] + if minetest.is_protected(pos, player_name) then + minetest.record_protection_violation(pos, player_name) + return + end + + local meta = minetest.get_meta(pos) + local is = plg.from_formspec_fields(fields) + + meta:set_string("instr", lcore.serialize(is)) + local err = plg.update_meta(pos, is) + + if not err then + plg.open_formspecs[player_name] = nil + -- Close on success + minetest.close_formspec(player_name, "mesecons:fpga") + end +end) + +minetest.register_on_leaveplayer(function(player) + plg.open_formspecs[player:get_player_name()] = nil +end) minetest.register_craft({ output = "mesecons_fpga:fpga0000 2", diff --git a/mesecons_fpga/logic.lua b/mesecons_fpga/logic.lua index 3dca1546..106f779a 100644 --- a/mesecons_fpga/logic.lua +++ b/mesecons_fpga/logic.lua @@ -1,5 +1,27 @@ + local lg = {} +local operations = { + -- table index: Index in the formspec dropdown + -- gate: Internal name + -- short: Serialized form, single character + -- fs_name: Display name, padded to 4 characters + -- func: Function that applies the operation + -- unary: Whether this gate only has one input + { gate = "and", short = "&", fs_name = " AND", func = function(a, b) return a and b end }, + { gate = "or", short = "|", fs_name = " OR", func = function(a, b) return a or b end }, + { gate = "not", short = "~", fs_name = " NOT", func = function(a, b) return not b end, unary = true }, + { gate = "xor", short = "^", fs_name = " XOR", func = function(a, b) return a ~= b end }, + { gate = "nand", short = "?", fs_name = "NAND", func = function(a, b) return not (a and b) end }, + { gate = "buf", short = "_", fs_name = " =", func = function(a, b) return b end, unary = true }, + { gate = "xnor", short = "=", fs_name = "XNOR", func = function(a, b) return a == b end }, + { gate = "nor", short = "!", fs_name = " NOR", func = function(a, b) return not (a or b) end }, +} + +lg.get_operations = function() + return operations +end + -- (de)serialize lg.serialize = function(t) local function _op(t) @@ -11,20 +33,14 @@ lg.serialize = function(t) return tostring(t.n) end end - local function _action(s) - if s == nil then - return " " + -- Serialize actions (gates) from eg. "and" to "&" + local function _action(action) + for i, data in ipairs(operations) do + if data.gate == action then + return data.short + end end - local mapping = { - ["and"] = "&", - ["or"] = "|", - ["not"] = "~", - ["xor"] = "^", - ["nand"] = "?", --dunno - ["buf"] = "_", - ["xnor"] = "=", - } - return mapping[s] + return " " end local s = "" @@ -48,18 +64,14 @@ lg.deserialize = function(s) return {type = "reg", n = tonumber(c)} end end - local function _action(c) - local mapping = { - ["&"] = "and", - ["|"] = "or", - ["~"] = "not", - ["^"] = "xor", - ["?"] = "nand", - ["_"] = "buf", - ["="] = "xnor", - [" "] = nil, - } - return mapping[c] + -- Deserialize actions (gates) from eg. "&" to "and" + local function _action(action) + for i, data in ipairs(operations) do + if data.short == action then + return data.gate + end + end + -- nil end local ret = {} @@ -109,16 +121,25 @@ lg.validate_single = function(t, i) return false end local elem = t[i] + + local gate_data + for j, data in ipairs(operations) do + if data.gate == elem.action then + gate_data = data + break + end + end + -- check for completeness - if elem.action == nil then - return {i = i, msg = "Gate type required"} - elseif elem.action == "not" or elem.action == "buf" then + if not gate_data then + return {i = i, msg = "Gate type is required"} + elseif gate_data.unary then if elem.op1 ~= nil or elem.op2 == nil or elem.dst == nil then - return {i = i, msg = "Second operand (only) and destination required"} + return {i = i, msg = "Second operand (only) and destination are required"} end else if elem.op1 == nil or elem.op2 == nil or elem.dst == nil then - return {i = i, msg = "Operands and destination required"} + return {i = i, msg = "Operands and destination are required"} end end -- check whether operands/destination are identical @@ -159,21 +180,12 @@ end -- interpreter lg.interpret = function(t, a, b, c, d) local function _action(s, v1, v2) - if s == "and" then - return v1 and v2 - elseif s == "or" then - return v1 or v2 - elseif s == "not" then - return not v2 - elseif s == "xor" then - return v1 ~= v2 - elseif s == "nand" then - return not (v1 and v2) - elseif s == "buf" then - return v2 - else -- s == "xnor" - return v1 == v2 + for i, data in ipairs(operations) do + if data.gate == s then + return data.func(v1, v2) + end end + return false -- unknown gate end local function _op(t, regs, io_in) if t.type == "reg" then diff --git a/mesecons_fpga/tool.lua b/mesecons_fpga/tool.lua index 26ab49ef..22bfaeaa 100644 --- a/mesecons_fpga/tool.lua +++ b/mesecons_fpga/tool.lua @@ -22,7 +22,7 @@ minetest.register_tool("mesecons_fpga:programmer", { end itemstack:set_metadata(meta:get_string("instr")) minetest.chat_send_player(placer:get_player_name(), "FPGA gate configuration was successfully copied!") - + return itemstack end, on_use = function(itemstack, user, pointed_thing) @@ -34,17 +34,22 @@ minetest.register_tool("mesecons_fpga:programmer", { if minetest.get_node(pos).name:find("mesecons_fpga:fpga") ~= 1 then return itemstack end + local player_name = user:get_player_name() + if minetest.is_protected(pos, player_name) then + minetest.record_protection_violation(pos, player_name) + return itemstack + end local imeta = itemstack:get_metadata() if imeta == "" then - minetest.chat_send_player(user:get_player_name(), "Use shift+right-click to copy a gate configuration first.") + minetest.chat_send_player(player_name, "Use shift+right-click to copy a gate configuration first.") return itemstack end local meta = minetest.get_meta(pos) meta:set_string("instr", imeta) - plg.update_formspec(pos, imeta) - minetest.chat_send_player(user:get_player_name(), "Gate configuration was successfully written to FPGA!") + plg.update_meta(pos, imeta) + minetest.chat_send_player(player_name, "Gate configuration was successfully written to FPGA!") return itemstack end diff --git a/molehills/depends.txt b/molehills/depends.txt deleted file mode 100644 index 239cddcc..00000000 --- a/molehills/depends.txt +++ /dev/null @@ -1,3 +0,0 @@ -default -plantlife_i18n -biome_lib diff --git a/molehills/init.lua b/molehills/init.lua index c3e5a668..2f53f40f 100644 --- a/molehills/init.lua +++ b/molehills/init.lua @@ -11,7 +11,7 @@ abstract_molehills = {} dofile(minetest.get_modpath("molehills").."/molehills_settings.txt") -- support for i18n -local S = plantlife_i18n.gettext +local S = minetest.get_translator("molehills") ----------------------------------------------------------------------------------------------- -- NoDe ----------------------------------------------------------------------------------------------- @@ -76,5 +76,5 @@ biome_lib:register_generate_plant({ ) ----------------------------------------------------------------------------------------------- -print("[Mod] "..title.." ["..version.."] ["..mname.."]"..S("Loaded...")) +print("[Mod] "..title.." ["..version.."] ["..mname.."]".."Loaded...") ----------------------------------------------------------------------------------------------- diff --git a/molehills/locale/molehills.fr.tr b/molehills/locale/molehills.fr.tr new file mode 100644 index 00000000..f3f9aab9 --- /dev/null +++ b/molehills/locale/molehills.fr.tr @@ -0,0 +1,9 @@ +# textdomain: molehills + +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# fat115 , 2017. +# + +Mole Hill=Taupinière diff --git a/molehills/locale/template.txt b/molehills/locale/template.txt new file mode 100644 index 00000000..46fc119e --- /dev/null +++ b/molehills/locale/template.txt @@ -0,0 +1,9 @@ +# textdomain: molehills + +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# FIRST AUTHOR , YEAR. +# + +Mole Hill= diff --git a/molehills/mod.conf b/molehills/mod.conf new file mode 100644 index 00000000..d9296792 --- /dev/null +++ b/molehills/mod.conf @@ -0,0 +1,2 @@ +name = molehills +depends = default, biome_lib diff --git a/moreblocks/CHANGELOG.md b/moreblocks/CHANGELOG.md index 81b65b79..6b5cb52b 100644 --- a/moreblocks/CHANGELOG.md +++ b/moreblocks/CHANGELOG.md @@ -7,6 +7,13 @@ and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0. ## [Unreleased] +### Removed + +- Legacy Stairs+ conversion code. + - It was only required to import worlds last edited before Q3 2013. + +## [2.0.0] - 2019-11-25 + ### Added - Stairs+ nodes for ice. @@ -88,7 +95,8 @@ and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0. - Initial versioned release. -[Unreleased]: https://github.com/minetest-mods/moreblocks/compare/v1.3.0...HEAD +[Unreleased]: https://github.com/minetest-mods/moreblocks/compare/v2.0.0...HEAD +[2.0.0]: https://github.com/minetest-mods/moreblocks/compare/v1.3.0...v2.0.0 [1.3.0]: https://github.com/minetest-mods/moreblocks/compare/v1.2.0...v1.3.0 [1.2.0]: https://github.com/minetest-mods/moreblocks/compare/v1.1.0...v1.2.0 [1.1.0]: https://github.com/minetest-mods/moreblocks/compare/v1.0.0...v1.1.0 diff --git a/moreblocks/LICENSE.md b/moreblocks/LICENSE.md index d7470b47..67f5f7f0 100644 --- a/moreblocks/LICENSE.md +++ b/moreblocks/LICENSE.md @@ -1,6 +1,6 @@ # zlib license -Copyright © 2011-2019 Hugo Locurcio and contributors +Copyright © 2011-2020 Hugo Locurcio and contributors **This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages arising from the use of this software.** diff --git a/moreblocks/README.md b/moreblocks/README.md index b7bd21af..26020b74 100644 --- a/moreblocks/README.md +++ b/moreblocks/README.md @@ -18,9 +18,7 @@ git clone https://github.com/minetest-mods/moreblocks.git You can also [download a ZIP archive](https://github.com/minetest-mods/moreblocks/archive/master.zip) -of More Blocks. If you do so, you will need to extract the archive then rename -the resulting folder from `moreblocks-master` to `moreblocks` – this is -**absolutely** required, as the mod won't work otherwise. +of More Blocks. ### Enable the mod @@ -60,13 +58,13 @@ on that line. ## Version compatibility -More Blocks is currently primarily tested with Minetest 5.0.1. +More Blocks is currently primarily tested with Minetest 5.1.0. It may or may not work with newer or older versions. Issues arising in older versions than 5.0.0 will generally not be fixed. ## License -Copyright © 2011-2019 Hugo Locurcio and contributors +Copyright © 2011-2020 Hugo Locurcio and contributors - More Blocks code is licensed under the zlib license, see [`LICENSE.md`](LICENSE.md) for details. diff --git a/moreblocks/aliases.lua b/moreblocks/aliases.lua index 524876c7..fc4492f4 100644 --- a/moreblocks/aliases.lua +++ b/moreblocks/aliases.lua @@ -1,7 +1,7 @@ --[[ More Blocks: alias definitions -Copyright © 2011-2019 Hugo Locurcio and contributors. +Copyright © 2011-2020 Hugo Locurcio and contributors. Licensed under the zlib license. See LICENSE.md for more information. --]] diff --git a/moreblocks/circular_saw.lua b/moreblocks/circular_saw.lua index 7fd90160..174f344c 100644 --- a/moreblocks/circular_saw.lua +++ b/moreblocks/circular_saw.lua @@ -1,7 +1,7 @@ --[[ More Blocks: circular saw -Copyright © 2011-2019 Hugo Locurcio, Sokomine and contributors. +Copyright © 2011-2020 Hugo Locurcio, Sokomine and contributors. Licensed under the zlib license. See LICENSE.md for more information. --]] diff --git a/moreblocks/config.lua b/moreblocks/config.lua index a855d5c7..34aa8af7 100644 --- a/moreblocks/config.lua +++ b/moreblocks/config.lua @@ -1,7 +1,7 @@ --[[ More Blocks: configuration handling -Copyright © 2011-2019 Hugo Locurcio and contributors. +Copyright © 2011-2020 Hugo Locurcio and contributors. Licensed under the zlib license. See LICENSE.md for more information. --]] diff --git a/moreblocks/crafting.lua b/moreblocks/crafting.lua index 06553911..a1058a98 100644 --- a/moreblocks/crafting.lua +++ b/moreblocks/crafting.lua @@ -1,7 +1,7 @@ --[[ More Blocks: crafting recipes -Copyright © 2011-2019 Hugo Locurcio and contributors. +Copyright © 2011-2020 Hugo Locurcio and contributors. Licensed under the zlib license. See LICENSE.md for more information. --]] diff --git a/moreblocks/init.lua b/moreblocks/init.lua index 2416a038..c3e9b637 100644 --- a/moreblocks/init.lua +++ b/moreblocks/init.lua @@ -3,7 +3,7 @@ ** More Blocks ** By Calinou, with the help of ShadowNinja and VanessaE. -Copyright © 2011-2019 Hugo Locurcio and contributors. +Copyright © 2011-2020 Hugo Locurcio and contributors. Licensed under the zlib license. See LICENSE.md for more information. ===================================================================== --]] diff --git a/moreblocks/locale/de.po b/moreblocks/locale/de.po index 4de81bf6..852133b5 100644 --- a/moreblocks/locale/de.po +++ b/moreblocks/locale/de.po @@ -1,5 +1,5 @@ # German translation for More Blocks. -# Copyright © 2011-2019 Hugo Locurcio and contributors +# Copyright © 2011-2020 Hugo Locurcio and contributors # This file is distributed under the same license as the More Blocks package. # Xanthin, 2014. # CodeXP , 2018. diff --git a/moreblocks/locale/es.po b/moreblocks/locale/es.po index 0c3fd0ea..ad9001c2 100644 --- a/moreblocks/locale/es.po +++ b/moreblocks/locale/es.po @@ -1,5 +1,5 @@ # Spanish translation for More Blocks. -# Copyright © 2011-2019 Hugo Locurcio and contributors +# Copyright © 2011-2020 Hugo Locurcio and contributors # This file is distributed under the same license as the More Blocks package. # kaeza, 2013. # CodeXP , 2018. diff --git a/moreblocks/locale/fr.po b/moreblocks/locale/fr.po index 3752604e..7744da61 100644 --- a/moreblocks/locale/fr.po +++ b/moreblocks/locale/fr.po @@ -1,5 +1,5 @@ # French translation for More Blocks. -# Copyright © 2011-2019 Hugo Locurcio and contributors +# Copyright © 2011-2020 Hugo Locurcio and contributors # This file is distributed under the same license as the More Blocks package. # Hugo Locurcio , 2013-2019. # Jat15, 2013. diff --git a/moreblocks/locale/it.po b/moreblocks/locale/it.po index 04e3c0b5..78749499 100644 --- a/moreblocks/locale/it.po +++ b/moreblocks/locale/it.po @@ -1,5 +1,5 @@ # Italian translation for More Blocks. -# Copyright © 2011-2019 Hugo Locurcio and contributors +# Copyright © 2011-2020 Hugo Locurcio and contributors # This file is distributed under the same license as the More Blocks package. # Emon, 2016. # CodeXP , 2018. diff --git a/moreblocks/locale/pl.po b/moreblocks/locale/pl.po index aedc07b6..a24728ff 100644 --- a/moreblocks/locale/pl.po +++ b/moreblocks/locale/pl.po @@ -1,5 +1,5 @@ # Polish translation for More Blocks. -# Copyright © 2011-2019 Hugo Locurcio and contributors +# Copyright © 2011-2020 Hugo Locurcio and contributors # This file is distributed under the same license as the More Blocks package. # mat9117, 2019 # CodeXP , 2018. diff --git a/moreblocks/locale/template.pot b/moreblocks/locale/template.pot index 929569a2..929dc880 100644 --- a/moreblocks/locale/template.pot +++ b/moreblocks/locale/template.pot @@ -1,5 +1,5 @@ # Template translation for More Blocks. -# Copyright © 2011-2019 Hugo Locurcio and contributors +# Copyright © 2011-2020 Hugo Locurcio and contributors # This file is distributed under the same license as the More Blocks package. # CodeXP , 2018. msgid "" diff --git a/moreblocks/nodes.lua b/moreblocks/nodes.lua index 68edff9e..ab333752 100644 --- a/moreblocks/nodes.lua +++ b/moreblocks/nodes.lua @@ -1,7 +1,7 @@ --[[ More Blocks: node definitions -Copyright © 2011-2019 Hugo Locurcio and contributors. +Copyright © 2011-2020 Hugo Locurcio and contributors. Licensed under the zlib license. See LICENSE.md for more information. --]] diff --git a/moreblocks/ownership.lua b/moreblocks/ownership.lua index 8c8b4f1b..3bd4b633 100644 --- a/moreblocks/ownership.lua +++ b/moreblocks/ownership.lua @@ -1,7 +1,7 @@ --[[ More Blocks: ownership handling -Copyright © 2011-2019 Hugo Locurcio and contributors. +Copyright © 2011-2020 Hugo Locurcio and contributors. Licensed under the zlib license. See LICENSE.md for more information. --]] diff --git a/moreblocks/redefinitions.lua b/moreblocks/redefinitions.lua index b05c2c0e..6cb8ea43 100644 --- a/moreblocks/redefinitions.lua +++ b/moreblocks/redefinitions.lua @@ -1,7 +1,7 @@ --[[ More Blocks: redefinitions of default stuff -Copyright © 2011-2019 Hugo Locurcio and contributors. +Copyright © 2011-2020 Hugo Locurcio and contributors. Licensed under the zlib license. See LICENSE.md for more information. --]] diff --git a/moreblocks/stairsplus/aliases.lua b/moreblocks/stairsplus/aliases.lua deleted file mode 100644 index b005a062..00000000 --- a/moreblocks/stairsplus/aliases.lua +++ /dev/null @@ -1,70 +0,0 @@ ---[[ -More Blocks: alias definitions - -Copyright © 2011-2019 Hugo Locurcio and contributors. -Licensed under the zlib license. See LICENSE.md for more information. ---]] - -local function register_stairsplus_alias(modname, origname, newname) - minetest.register_alias(modname.. ":slab_" ..origname, "moreblocks:slab_" ..newname) - minetest.register_alias(modname.. ":slab_" ..origname.. "_inverted", "moreblocks:slab_" ..newname.. "_inverted") - minetest.register_alias(modname.. ":slab_" ..origname.. "_wall", "moreblocks:slab_" ..newname.. "_wall") - minetest.register_alias(modname.. ":slab_" ..origname.. "_quarter", "moreblocks:slab_" ..newname.. "_quarter") - minetest.register_alias(modname.. ":slab_" ..origname.. "_quarter_inverted", "moreblocks:slab_" ..newname.. "_quarter_inverted") - minetest.register_alias(modname.. ":slab_" ..origname.. "_quarter_wall", "moreblocks:slab_" ..newname.. "_quarter_wall") - minetest.register_alias(modname.. ":slab_" ..origname.. "_three_quarter", "moreblocks:slab_" ..newname.. "_three_quarter") - minetest.register_alias(modname.. ":slab_" ..origname.. "_three_quarter_inverted", "moreblocks:slab_" ..newname.. "_three_quarter_inverted") - minetest.register_alias(modname.. ":slab_" ..origname.. "_three_quarter_wall", "moreblocks:slab_" ..newname.. "_three_quarter_wall") - minetest.register_alias(modname.. ":stair_" ..origname, "moreblocks:stair_" ..newname) - minetest.register_alias(modname.. ":stair_" ..origname.. "_inverted", "moreblocks:stair_" ..newname.. "_inverted") - minetest.register_alias(modname.. ":stair_" ..origname.. "_wall", "moreblocks:stair_" ..newname.. "_wall") - minetest.register_alias(modname.. ":stair_" ..origname.. "_wall_half", "moreblocks:stair_" ..newname.. "_wall_half") - minetest.register_alias(modname.. ":stair_" ..origname.. "_wall_half_inverted", "moreblocks:stair_" ..newname.. "_wall_half_inverted") - minetest.register_alias(modname.. ":stair_" ..origname.. "_half", "moreblocks:stair_" ..newname.. "_half") - minetest.register_alias(modname.. ":stair_" ..origname.. "_half_inverted", "moreblocks:stair_" ..newname.. "_half_inverted") - minetest.register_alias(modname.. ":stair_" ..origname.. "_right_half", "moreblocks:stair_" ..newname.. "_right_half") - minetest.register_alias(modname.. ":stair_" ..origname.. "_right_half_inverted", "moreblocks:stair_" ..newname.. "_right_half_inverted") - minetest.register_alias(modname.. ":stair_" ..origname.. "_wall_half", "moreblocks:stair_" ..newname.. "_wall_half") - minetest.register_alias(modname.. ":stair_" ..origname.. "_wall_half_inverted", "moreblocks:stair_" ..newname.. "_wall_half_inverted") - minetest.register_alias(modname.. ":stair_" ..origname.. "_inner", "moreblocks:stair_" ..newname.. "_inner") - minetest.register_alias(modname.. ":stair_" ..origname.. "_inner_inverted", "moreblocks:stair_" ..newname.. "_inner_inverted") - minetest.register_alias(modname.. ":stair_" ..origname.. "_outer", "moreblocks:stair_" ..newname.. "_outer") - minetest.register_alias(modname.. ":stair_" ..origname.. "_outer_inverted", "moreblocks:stair_" ..newname.. "_outer_inverted") - minetest.register_alias(modname.. ":panel_" ..origname.. "_bottom", "moreblocks:panel_" ..newname.. "_bottom") - minetest.register_alias(modname.. ":panel_" ..origname.. "_top", "moreblocks:panel_" ..newname.. "_top") - minetest.register_alias(modname.. ":panel_" ..origname.. "_vertical", "moreblocks:panel_" ..newname.. "_vertical") - minetest.register_alias(modname.. ":micro_" ..origname.. "_bottom", "moreblocks:micro_" ..newname.. "_bottom") - minetest.register_alias(modname.. ":micro_" ..origname.. "_top", "moreblocks:micro_" ..newname.. "_top") -end - -register_stairsplus_alias("stairsplus", "stone", "stone") -register_stairsplus_alias("stairsplus", "wood", "wood") -register_stairsplus_alias("stairsplus", "pinewood", "pinewood") -register_stairsplus_alias("stairsplus", "cobble", "cobble") -register_stairsplus_alias("stairsplus", "brick", "brick") -register_stairsplus_alias("stairsplus", "sandstone", "sandstone") -register_stairsplus_alias("stairsplus", "glass", "glass") -register_stairsplus_alias("stairsplus", "tree", "tree") -register_stairsplus_alias("stairsplus", "jungletree", "jungletree") -register_stairsplus_alias("stairsplus", "pinetree", "pinetree") -register_stairsplus_alias("stairsplus", "desert_stone", "desert_stone") -register_stairsplus_alias("stairsplus", "steelblock", "steelblock") -register_stairsplus_alias("stairsplus", "mossycobble", "mossycobble") - -register_stairsplus_alias("moreblocks", "coalstone", "coal_stone") -register_stairsplus_alias("moreblocks", "junglewood", "jungle_wood") -register_stairsplus_alias("moreblocks", "circlestonebrick", "circle_stone_bricks") -register_stairsplus_alias("moreblocks", "ironstone", "iron_stone") -register_stairsplus_alias("moreblocks", "coalglass", "coal_glass") -register_stairsplus_alias("moreblocks", "ironglass", "iron_glass") -register_stairsplus_alias("moreblocks", "glowglass", "glow_glass") -register_stairsplus_alias("moreblocks", "superglowglass", "super_glow_glass") -register_stairsplus_alias("moreblocks", "coalchecker", "coal_checker") -register_stairsplus_alias("moreblocks", "ironchecker", "iron_checker") -register_stairsplus_alias("moreblocks", "cactuschecker", "cactus_checker") -register_stairsplus_alias("moreblocks", "ironstonebrick", "iron_stone_bricks") -register_stairsplus_alias("moreblocks", "stonesquare", "stone_tile") -register_stairsplus_alias("moreblocks", "splitstonesquare", "split_stone_tile") -register_stairsplus_alias("moreblocks", "woodtile", "wood_tile") -register_stairsplus_alias("moreblocks", "woodtile_centered", "wood_tile_centered") -register_stairsplus_alias("moreblocks", "woodtile_full", "wood_tile_full") diff --git a/moreblocks/stairsplus/common.lua b/moreblocks/stairsplus/common.lua index d972808c..d42ccfa5 100644 --- a/moreblocks/stairsplus/common.lua +++ b/moreblocks/stairsplus/common.lua @@ -1,7 +1,7 @@ --[[ More Blocks: registrations -Copyright © 2011-2019 Hugo Locurcio and contributors. +Copyright © 2011-2020 Hugo Locurcio and contributors. Licensed under the zlib license. See LICENSE.md for more information. --]] diff --git a/moreblocks/stairsplus/conversion.lua b/moreblocks/stairsplus/conversion.lua deleted file mode 100644 index e73dfb0e..00000000 --- a/moreblocks/stairsplus/conversion.lua +++ /dev/null @@ -1,139 +0,0 @@ ---[[ -More Blocks: conversion - -Copyright © 2011-2019 Hugo Locurcio and contributors. -Licensed under the zlib license. See LICENSE.md for more information. ---]] - --- Function to convert all stairs/slabs/etc nodes from --- inverted, wall, etc to regular + 6d facedir - -local dirs1 = {21, 20, 23, 22, 21} -local dirs2 = {15, 8, 17, 6, 15} -local dirs3 = {14, 11, 16, 5, 14} - -function stairsplus:register_6dfacedir_conversion(modname, material) - --print("Register stairsplus 6d facedir conversion") - --print('ABM for '..modname..' "'..material..'"') - - local objects_list1 = { - modname.. ":slab_" ..material.. "_inverted", - modname.. ":slab_" ..material.. "_quarter_inverted", - modname.. ":slab_" ..material.. "_three_quarter_inverted", - modname.. ":stair_" ..material.. "_inverted", - modname.. ":stair_" ..material.. "_wall", - modname.. ":stair_" ..material.. "_wall_half", - modname.. ":stair_" ..material.. "_wall_half_inverted", - modname.. ":stair_" ..material.. "_half_inverted", - modname.. ":stair_" ..material.. "_right_half_inverted", - modname.. ":panel_" ..material.. "_vertical", - modname.. ":panel_" ..material.. "_top", - } - - local objects_list2 = { - modname.. ":slab_" ..material.. "_wall", - modname.. ":slab_" ..material.. "_quarter_wall", - modname.. ":slab_" ..material.. "_three_quarter_wall", - modname.. ":stair_" ..material.. "_inner_inverted", - modname.. ":stair_" ..material.. "_outer_inverted", - modname.. ":micro_" ..material.. "_top" - } - - for _, object in pairs(objects_list1) do - local flip_upside_down = false - local flip_to_wall = false - - local dest_object = object - - if string.find(dest_object, "_inverted") then - flip_upside_down = true - dest_object = string.gsub(dest_object, "_inverted", "") - end - - if string.find(object, "_top") then - flip_upside_down = true - dest_object = string.gsub(dest_object, "_top", "") - end - - if string.find(dest_object, "_wall") then - flip_to_wall = true - dest_object = string.gsub(dest_object, "_wall", "") - end - - if string.find(dest_object, "_vertical") then - flip_to_wall = true - dest_object = string.gsub(dest_object, "_vertical", "") - end - - if string.find(dest_object, "_half") and not string.find(dest_object, "_right_half") then - dest_object = string.gsub(dest_object, "_half", "_right_half") - elseif string.find(dest_object, "_right_half") then - dest_object = string.gsub(dest_object, "_right_half", "_half") - end - - --print(" +---> convert " ..object) - --print(" | to " ..dest_object) - - minetest.register_abm({ - nodenames = {object}, - interval = 1, - chance = 1, - action = function(pos, node, active_object_count, active_object_count_wider) - local fdir = node.param2 or 0 - local nfdir - - if flip_upside_down and not flip_to_wall then - nfdir = dirs1[fdir + 2] - elseif flip_to_wall and not flip_upside_down then - nfdir = dirs2[fdir + 1] - elseif flip_to_wall and flip_upside_down then - nfdir = dirs3[fdir + 2] - end - minetest.set_node(pos, {name = dest_object, param2 = nfdir}) - end - }) - end - - for _, object in pairs(objects_list2) do - local flip_upside_down = false - local flip_to_wall = false - - local dest_object = object - - if string.find(dest_object, "_inverted") then - flip_upside_down = true - dest_object = string.gsub(dest_object, "_inverted", "") - end - - if string.find(dest_object, "_top") then - flip_upside_down = true - dest_object = string.gsub(dest_object, "_top", "") - end - - if string.find(dest_object, "_wall") then - flip_to_wall = true - dest_object = string.gsub(dest_object, "_wall", "") - end - - --print(" +---> convert " ..object) - --print(" | to " ..dest_object) - - minetest.register_abm({ - nodenames = {object}, - interval = 1, - chance = 1, - action = function(pos, node, active_object_count, active_object_count_wider) - local fdir = node.param2 - local nfdir = 20 - - if flip_upside_down and not flip_to_wall then - nfdir = dirs1[fdir + 1] - elseif flip_to_wall and not flip_upside_down then - nfdir = dirs2[fdir + 2] - - end - minetest.set_node(pos, {name = dest_object, param2 = nfdir}) - end - }) - end -end diff --git a/moreblocks/stairsplus/custom.lua b/moreblocks/stairsplus/custom.lua index 4004c6cb..0b3078f1 100644 --- a/moreblocks/stairsplus/custom.lua +++ b/moreblocks/stairsplus/custom.lua @@ -1,7 +1,7 @@ --[[ More Blocks: microblock definitions -Copyright © 2011-2019 Hugo Locurcio and contributors. +Copyright © 2011-2020 Hugo Locurcio and contributors. Licensed under the zlib license. See LICENSE.md for more information. --]] diff --git a/moreblocks/stairsplus/defs.lua b/moreblocks/stairsplus/defs.lua index a3d2cb18..893ec68a 100644 --- a/moreblocks/stairsplus/defs.lua +++ b/moreblocks/stairsplus/defs.lua @@ -1,7 +1,7 @@ --[[ More Blocks: registrations -Copyright © 2011-2019 Hugo Locurcio and contributors. +Copyright © 2011-2020 Hugo Locurcio and contributors. Licensed under the zlib license. See LICENSE.md for more information. --]] diff --git a/moreblocks/stairsplus/init.lua b/moreblocks/stairsplus/init.lua index 7f1b995c..a1fcdff7 100644 --- a/moreblocks/stairsplus/init.lua +++ b/moreblocks/stairsplus/init.lua @@ -1,7 +1,7 @@ --[[ More Blocks: Stairs+ -Copyright © 2011-2019 Hugo Locurcio and contributors. +Copyright © 2011-2020 Hugo Locurcio and contributors. Licensed under the zlib license. See LICENSE.md for more information. --]] @@ -42,7 +42,6 @@ function stairsplus:register_all(modname, subname, recipeitem, fields) self:register_slope(modname, subname, recipeitem, fields) self:register_panel(modname, subname, recipeitem, fields) self:register_micro(modname, subname, recipeitem, fields) - -- self:register_6dfacedir_conversion(modname, subname) -- Not needed as of Q3 2013, uncomment to fix old maps. end function stairsplus:register_alias_all(modname_old, subname_old, modname_new, subname_new) @@ -71,8 +70,6 @@ local function register_stair_slab_panel_micro(modname, subname, recipeitem, gro }) end --- dofile(modpath.. "/aliases.lua") -- Not needed as of Q2 2013, uncomment to fix old maps. --- dofile(modpath.. "/conversion.lua") -- Not needed as of Q2 2013, uncomment to fix old maps. dofile(modpath .. "/defs.lua") dofile(modpath .. "/recipes.lua") dofile(modpath .. "/common.lua") diff --git a/moreblocks/stairsplus/microblocks.lua b/moreblocks/stairsplus/microblocks.lua index e4776648..d2c9579a 100644 --- a/moreblocks/stairsplus/microblocks.lua +++ b/moreblocks/stairsplus/microblocks.lua @@ -1,7 +1,7 @@ --[[ More Blocks: microblock definitions -Copyright © 2011-2019 Hugo Locurcio and contributors. +Copyright © 2011-2020 Hugo Locurcio and contributors. Licensed under the zlib license. See LICENSE.md for more information. --]] diff --git a/moreblocks/stairsplus/panels.lua b/moreblocks/stairsplus/panels.lua index 095c4c25..ff572c7e 100644 --- a/moreblocks/stairsplus/panels.lua +++ b/moreblocks/stairsplus/panels.lua @@ -1,7 +1,7 @@ --[[ More Blocks: panel definitions -Copyright © 2011-2019 Hugo Locurcio and contributors. +Copyright © 2011-2020 Hugo Locurcio and contributors. Licensed under the zlib license. See LICENSE.md for more information. --]] diff --git a/moreblocks/stairsplus/recipes.lua b/moreblocks/stairsplus/recipes.lua index f4d259c8..c9aaa29a 100644 --- a/moreblocks/stairsplus/recipes.lua +++ b/moreblocks/stairsplus/recipes.lua @@ -1,7 +1,7 @@ --[[ More Blocks: Stairs+ -Copyright © 2011-2019 Hugo Locurcio and contributors. +Copyright © 2011-2020 Hugo Locurcio and contributors. Licensed under the zlib license. See LICENSE.md for more information. --]] diff --git a/moreblocks/stairsplus/registrations.lua b/moreblocks/stairsplus/registrations.lua index 3caab34a..088d903c 100644 --- a/moreblocks/stairsplus/registrations.lua +++ b/moreblocks/stairsplus/registrations.lua @@ -1,7 +1,7 @@ --[[ More Blocks: registrations -Copyright © 2011-2019 Hugo Locurcio and contributors. +Copyright © 2011-2020 Hugo Locurcio and contributors. Licensed under the zlib license. See LICENSE.md for more information. --]] diff --git a/moreblocks/stairsplus/slabs.lua b/moreblocks/stairsplus/slabs.lua index ee9ce895..abccd2a2 100644 --- a/moreblocks/stairsplus/slabs.lua +++ b/moreblocks/stairsplus/slabs.lua @@ -1,7 +1,7 @@ --[[ More Blocks: slab definitions -Copyright © 2011-2019 Hugo Locurcio and contributors. +Copyright © 2011-2020 Hugo Locurcio and contributors. Licensed under the zlib license. See LICENSE.md for more information. --]] diff --git a/moreblocks/stairsplus/slopes.lua b/moreblocks/stairsplus/slopes.lua index 6e516d56..5ab00b00 100644 --- a/moreblocks/stairsplus/slopes.lua +++ b/moreblocks/stairsplus/slopes.lua @@ -1,7 +1,7 @@ --[[ More Blocks: slope definitions -Copyright © 2011-2019 Hugo Locurcio and contributors. +Copyright © 2011-2020 Hugo Locurcio and contributors. Licensed under the zlib license. See LICENSE.md for more information. --]] diff --git a/moreblocks/stairsplus/stairs.lua b/moreblocks/stairsplus/stairs.lua index 8c774985..82770c2d 100644 --- a/moreblocks/stairsplus/stairs.lua +++ b/moreblocks/stairsplus/stairs.lua @@ -1,7 +1,7 @@ --[[ More Blocks: stair definitions -Copyright © 2011-2019 Hugo Locurcio and contributors. +Copyright © 2011-2020 Hugo Locurcio and contributors. Licensed under the zlib license. See LICENSE.md for more information. --]] diff --git a/moreores/.luacheckrc b/moreores/.luacheckrc index fb340e59..32ef698b 100644 --- a/moreores/.luacheckrc +++ b/moreores/.luacheckrc @@ -30,4 +30,5 @@ read_globals = { "frame", "intllib", "mg", + "toolranks", } diff --git a/moreores/CHANGELOG.md b/moreores/CHANGELOG.md index 5b778307..ee88f2df 100644 --- a/moreores/CHANGELOG.md +++ b/moreores/CHANGELOG.md @@ -9,6 +9,18 @@ and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0. ### Added +- More Ores tools now have [`toolranks`](https://github.com/lisacvuk/minetest-toolranks) support. +- Hungarian translation. + +### Changed + +- Migrated translations to the + [Minetest translation file format](https://rubenwardy.com/minetest_modding_book/lua_api.html#translation-file-format). + +## [2.0.0] - 2019-11-25 + +### Added + - More Ores nodes/items/tools can now be placed in item frames from the [`frame`](https://github.com/minetest-mods/frame) mod. - Polish translation. @@ -49,5 +61,6 @@ and this project adheres to [Semantic Versioning](http://semver.org/spec/v2.0.0. - Initial versioned release. -[Unreleased]: https://github.com/minetest-mods/moreores/compare/v1.1.0...HEAD +[Unreleased]: https://github.com/minetest-mods/moreores/compare/v2.0.0...HEAD +[2.0.0]: https://github.com/minetest-mods/moreores/compare/v1.1.0...v2.0.0 [1.1.0]: https://github.com/minetest-mods/moreores/compare/v1.0.0...v1.1.0 diff --git a/moreores/LICENSE.md b/moreores/LICENSE.md index d7470b47..67f5f7f0 100644 --- a/moreores/LICENSE.md +++ b/moreores/LICENSE.md @@ -1,6 +1,6 @@ # zlib license -Copyright © 2011-2019 Hugo Locurcio and contributors +Copyright © 2011-2020 Hugo Locurcio and contributors **This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages arising from the use of this software.** diff --git a/moreores/README.md b/moreores/README.md index 229357b5..3bb1cbae 100644 --- a/moreores/README.md +++ b/moreores/README.md @@ -18,9 +18,7 @@ git clone https://github.com/minetest-mods/moreores.git You can also [download a ZIP archive](https://github.com/minetest-mods/moreores/archive/master.zip) -of More Ores. If you do so, you will need to extract the archive then rename -the resulting folder from `moreores-master` to `moreores` – this is -**absolutely** required, as the mod won't work otherwise. +of More Ores. ### Enable the mod @@ -60,13 +58,13 @@ on that line. ## Version compatibility -More Ores is currently primarily tested with Minetest 5.0.1. +More Ores is currently primarily tested with Minetest 5.1.0. It may or may not work with newer or older versions. Issues arising in older versions than 5.0.0 will generally not be fixed. ## License -Copyright © 2011-2019 Hugo Locurcio and contributors +Copyright © 2011-2020 Hugo Locurcio and contributors - More Ores code is licensed under the zlib license, see [`LICENSE.md`](LICENSE.md) for details. diff --git a/moreores/init.lua b/moreores/init.lua index 33b2a82d..73cf0eaf 100644 --- a/moreores/init.lua +++ b/moreores/init.lua @@ -3,7 +3,7 @@ ** More Ores ** By Calinou, with the help of Nore. -Copyright © 2011-2019 Hugo Locurcio and contributors. +Copyright © 2011-2020 Hugo Locurcio and contributors. Licensed under the zlib license. See LICENSE.md for more information. ===================================================================== --]] @@ -12,9 +12,8 @@ moreores = {} local modpath = minetest.get_modpath("moreores") -local S, NS = dofile(modpath .. "/intllib.lua") +local S = minetest.get_translator("moreores") moreores.S = S -moreores.NS = NS dofile(modpath .. "/_config.txt") @@ -86,7 +85,7 @@ local function add_ore(modname, description, mineral_name, oredef) if oredef.makes.ore then minetest.register_node(modname .. ":mineral_" .. mineral_name, { - description = S("%s Ore"):format(S(description)), + description = S("@1 Ore", S(description)), tiles = {"default_stone.png^" .. modname .. "_mineral_" .. mineral_name .. ".png"}, groups = {cracky = 2}, sounds = default_stone_sounds, @@ -101,7 +100,7 @@ local function add_ore(modname, description, mineral_name, oredef) if oredef.makes.block then local block_item = item_base .. "_block" minetest.register_node(block_item, { - description = S("%s Block"):format(S(description)), + description = S("@1 Block", S(description)), tiles = {img_base .. "_block.png"}, groups = {snappy = 1, bendy = 2, cracky = 1, melty = 2, level = 2}, sounds = default_metal_sounds, @@ -126,7 +125,7 @@ local function add_ore(modname, description, mineral_name, oredef) if oredef.makes.lump then minetest.register_craftitem(lump_item, { - description = S("%s Lump"):format(S(description)), + description = S("@1 Lump", S(description)), inventory_image = img_base .. "_lump.png", }) minetest.register_alias(mineral_name .. "_lump", lump_item) @@ -144,7 +143,7 @@ local function add_ore(modname, description, mineral_name, oredef) if oredef.makes.ingot then minetest.register_craftitem(ingot, { - description = S("%s Ingot"):format(S(description)), + description = S("@1 Ingot", S(description)), inventory_image = img_base .. "_ingot.png", }) minetest.register_alias(mineral_name .. "_ingot", ingot) @@ -187,25 +186,25 @@ local function add_ore(modname, description, mineral_name, oredef) if tool_name == "sword" then tdef.tool_capabilities.full_punch_interval = oredef.full_punch_interval tdef.tool_capabilities.damage_groups = oredef.damage_groups - tdef.description = S("%s Sword"):format(S(description)) + tdef.description = S("@1 Sword", S(description)) end if tool_name == "pick" then tdef.tool_capabilities.full_punch_interval = oredef.full_punch_interval tdef.tool_capabilities.damage_groups = oredef.damage_groups - tdef.description = S("%s Pickaxe"):format(S(description)) + tdef.description = S("@1 Pickaxe", S(description)) end if tool_name == "axe" then tdef.tool_capabilities.full_punch_interval = oredef.full_punch_interval tdef.tool_capabilities.damage_groups = oredef.damage_groups - tdef.description = S("%s Axe"):format(S(description)) + tdef.description = S("@1 Axe", S(description)) end if tool_name == "shovel" then tdef.full_punch_interval = oredef.full_punch_interval tdef.tool_capabilities.damage_groups = oredef.damage_groups - tdef.description = S("%s Shovel"):format(S(description)) + tdef.description = S("@1 Shovel", S(description)) tdef.wield_image = toolimg_base .. tool_name .. ".png^[transformR90" end @@ -213,7 +212,7 @@ local function add_ore(modname, description, mineral_name, oredef) if tool_name == "hoe" and minetest.get_modpath("farming") then tdef.max_uses = tooldef.uses - tdef.description = S("%s Hoe"):format(S(description)) + tdef.description = S("@1 Hoe", S(description)) farming.register_hoe(fulltool_name, tdef) end @@ -232,6 +231,14 @@ local function add_ore(modname, description, mineral_name, oredef) end end + -- Toolranks support + if minetest.get_modpath("toolranks") then + minetest.override_item(fulltool_name, { + original_description = tdef.description, + description = toolranks.create_description(tdef.description, 0, 1), + after_use = toolranks.new_afteruse}) + end + minetest.register_alias(tool_name .. tool_post, fulltool_name) if use_frame then frame.register(fulltool_name) diff --git a/moreores/intllib.lua b/moreores/intllib.lua deleted file mode 100644 index c7af2c2b..00000000 --- a/moreores/intllib.lua +++ /dev/null @@ -1,44 +0,0 @@ --- Fallback functions for when `intllib` is not installed. --- Code released under Unlicense . - --- Get the latest version of this file at: --- https://raw.githubusercontent.com/minetest-mods/intllib/master/lib/intllib.lua - -local function format(str, ...) - local args = { ... } - local function repl(escape, open, num, close) - if escape == "" then - local replacement = tostring(args[tonumber(num)]) - if open == "" then - replacement = replacement..close - end - return replacement - else - return "@"..open..num..close - end - end - return (str:gsub("(@?)@(%(?)(%d+)(%)?)", repl)) -end - -local gettext, ngettext -if minetest.get_modpath("intllib") then - if intllib.make_gettext_pair then - -- New method using gettext. - gettext, ngettext = intllib.make_gettext_pair() - else - -- Old method using text files. - gettext = intllib.Getter() - end -end - --- Fill in missing functions. - -gettext = gettext or function(msgid, ...) - return format(msgid, ...) -end - -ngettext = ngettext or function(msgid, msgid_plural, n, ...) - return format(n==1 and msgid or msgid_plural, ...) -end - -return gettext, ngettext diff --git a/moreores/locale/de.txt b/moreores/locale/de.txt deleted file mode 100644 index 070faf9f..00000000 --- a/moreores/locale/de.txt +++ /dev/null @@ -1,21 +0,0 @@ -# Translation by Xanthin - -[moreores] loaded. = [moreores] geladen. - -%s Ore = %serz -%s Lump = %sklumpen -%s Ingot = %sbarren -%s Block = %sblock -%s Pickaxe = %sspitzhacke -%s Shovel = %sschaufel -%s Axe = %saxt -%s Sword = %sschwert - -Copper = Kupfer -Tin = Zinn -Bronze = Bronze -Silver = Silber -Gold = Gold -Mithril = Mithril - -Copper Rail = Kupferschiene diff --git a/moreores/locale/es.txt b/moreores/locale/es.txt deleted file mode 100644 index 1344a5a6..00000000 --- a/moreores/locale/es.txt +++ /dev/null @@ -1,21 +0,0 @@ -# Translation by kaeza - -[moreores] loaded. = [moreores] cargado. - -%s Ore = Mineral de %s -%s Lump = Pepita de %s -%s Ingot = Lingote de %s -%s Block = Bloque de %s -%s Pickaxe = Pico de %s -%s Shovel = Pala de %s -%s Axe = Hacha de %s -%s Sword = Espada de %s - -Copper = cobre -Tin = estaño -Bronze = bronce -Silver = plata -Gold = oro -Mithril = mitrilo - -Copper Rail = Riel de Cobre diff --git a/moreores/locale/fr.txt b/moreores/locale/fr.txt deleted file mode 100644 index 65687fa4..00000000 --- a/moreores/locale/fr.txt +++ /dev/null @@ -1,21 +0,0 @@ -# Translation by Calinou - -[moreores] loaded. = [moreores] a été chargé. - -%s Ore = Minerai en %s -%s Lump = Roche en %s -%s Ingot = Lingot en %s -%s Block = Bloc en %s -%s Pickaxe = Pioche en %s -%s Shovel = Pelle en %s -%s Axe = Hache en %s -%s Sword = Épée en %s - -Copper = cuivre -Tin = étain -Bronze = bronze -Silver = argent -Gold = or -Mithril = mithril - -Copper Rail = Rail en cuivre diff --git a/moreores/locale/it.txt b/moreores/locale/it.txt deleted file mode 100644 index db1644c1..00000000 --- a/moreores/locale/it.txt +++ /dev/null @@ -1,21 +0,0 @@ -# Translation by Pagliaccio - -[moreores] loaded. = [moreores] caricato. - -%s Ore = Minerale di %s -%s Lump = %s grezzo -%s Ingot = Lingotto di %s -%s Block = Blocco di %s -%s Pickaxe = Piccone di %s -%s Shovel = Badile di %s -%s Axe = Ascia di %s -%s Sword = Spada di %s - -Copper = Rame -Tin = Stagno -Bronze = Bronzo -Silver = Argento -Gold = Oro -Mithril = Mithril - -Copper Rail = Binario di rame diff --git a/moreores/locale/moreores.de.tr b/moreores/locale/moreores.de.tr new file mode 100644 index 00000000..aac97be7 --- /dev/null +++ b/moreores/locale/moreores.de.tr @@ -0,0 +1,22 @@ +# textdomain: moreores + +# Translation by Xanthin + +[moreores] loaded.=[moreores] geladen. + +@1 Ore=@1erz +@1 Lump=@1klumpen +@1 Ingot=@1barren +@1 Block=@1block +@1 Pickaxe=@1spitzhacke +@1 Shovel=@1schaufel +@1 Axe=@1axt +@1 Sword=@1schwert + +Copper=Kupfer +Tin=Zinn +Bronze=Bronze +Silver=Silber +Gold=Gold +Mithril=Mithril +Copper Rail=Kupferschiene diff --git a/moreores/locale/moreores.en.tr b/moreores/locale/moreores.en.tr new file mode 100644 index 00000000..b13188d6 --- /dev/null +++ b/moreores/locale/moreores.en.tr @@ -0,0 +1,21 @@ +# textdomain: moreores + +[moreores] loaded.=[moreores] loaded. + +@1 Ore=@1 Ore +@1 Lump=@1 Lump +@1 Ingot=@1 Ingot +@1 Block=@1 Block +@1 Pickaxe=@1 Pickaxe +@1 Shovel=@1 Shovel +@1 Axe=@1 Axe +@1 Sword=@1 Sword +@1 Hoe=@1 Hoe + +Copper=Copper +Tin=Tin +Bronze=Bronze +Silver=Silver +Gold=Gold +Mithril=Mithril +Copper Rail=Copper Rail diff --git a/moreores/locale/moreores.es.tr b/moreores/locale/moreores.es.tr new file mode 100644 index 00000000..3b709a30 --- /dev/null +++ b/moreores/locale/moreores.es.tr @@ -0,0 +1,22 @@ +# textdomain: moreores + +# Translation by kaeza + +[moreores] loaded.=[moreores] cargado. + +@1 Ore=Mineral de @1 +@1 Lump=Pepita de @1 +@1 Ingot=Lingote de @1 +@1 Block=Bloque de @1 +@1 Pickaxe=Pico de @1 +@1 Shovel=Pala de @1 +@1 Axe=Hacha de @1 +@1 Sword=Espada de @1 + +Copper=cobre +Tin=estaño +Bronze=bronce +Silver=plata +Gold=oro +Mithril=mitrilo +Copper Rail=Riel de Cobre diff --git a/moreores/locale/moreores.fr.tr b/moreores/locale/moreores.fr.tr new file mode 100644 index 00000000..2ac45a8d --- /dev/null +++ b/moreores/locale/moreores.fr.tr @@ -0,0 +1,23 @@ +# textdomain: moreores + +# Translation by Calinou + +[moreores] loaded.=[moreores] a été chargé. + +@1 Ore=Minerai en @1 +@1 Lump=Roche en @1 +@1 Ingot=Lingot en @1 +@1 Block=Bloc en @1 +@1 Pickaxe=Pioche en @1 +@1 Shovel=Pelle en @1 +@1 Axe=Hache en @1 +@1 Sword=Épée en @1 +@1 Hoe=Houe en @1 + +Copper=cuivre +Tin=étain +Bronze=bronze +Silver=argent +Gold=or +Mithril=mithril +Copper Rail=Rail en cuivre diff --git a/moreores/locale/moreores.hu.tr b/moreores/locale/moreores.hu.tr new file mode 100644 index 00000000..820ece78 --- /dev/null +++ b/moreores/locale/moreores.hu.tr @@ -0,0 +1,22 @@ +# textdomain: moreores + +# Translation by An0n3m0us + +[moreores] loaded.=[moreores] betöltve. + +@1 Ore=@1 érc +@1 Lump=@1 rög +@1 Ingot=@1 öntvény +@1 Block=@1 blokk +@1 Pickaxe=@1 csákány +@1 Shovel=@1 ásó +@1 Axe=@1 fejsze +@1 Sword=@1 kard + +Copper=Réz +Tin=Ón +Bronze=Bronz +Silver=Ezüst +Gold=Arany +Mithril=Mithril +Copper Rail=Réz sín diff --git a/moreores/locale/moreores.it.tr b/moreores/locale/moreores.it.tr new file mode 100644 index 00000000..96541f76 --- /dev/null +++ b/moreores/locale/moreores.it.tr @@ -0,0 +1,22 @@ +# textdomain: moreores + +# Translation by Pagliaccio + +[moreores] loaded.=[moreores] caricato. + +@1 Ore=Minerale di @1 +@1 Lump=@1 grezzo +@1 Ingot=Lingotto di @1 +@1 Block=Blocco di @1 +@1 Pickaxe=Piccone di @1 +@1 Shovel=Badile di @1 +@1 Axe=Ascia di @1 +@1 Sword=Spada di @1 + +Copper=Rame +Tin=Stagno +Bronze=Bronzo +Silver=Argento +Gold=Oro +Mithril=Mithril +Copper Rail=Binario di rame diff --git a/moreores/locale/moreores.nl.tr b/moreores/locale/moreores.nl.tr new file mode 100644 index 00000000..e572ff38 --- /dev/null +++ b/moreores/locale/moreores.nl.tr @@ -0,0 +1,19 @@ +# textdomain: moreores + +[moreores] loaded.=[moreores] geladen. + +@1 Ore=@1 Erts +@1 Lump=@1 Klomp +@1 Ingot=@1 Staaf +@1 Block=@1 Blok +@1 Pickaxe=@1 Pikhouweel +@1 Shovel=@1 Schep +@1 Axe=@1 Bijl +@1 Sword=@1 Zwaard + +Copper=Koper +Tin=Tin +Bronze=Brons +Silver=Silver +Gold=Goud +Mithril=Mithril diff --git a/moreores/locale/moreores.pl.tr b/moreores/locale/moreores.pl.tr new file mode 100644 index 00000000..2eb29933 --- /dev/null +++ b/moreores/locale/moreores.pl.tr @@ -0,0 +1,22 @@ +# textdomain: moreores + +# Translation by mat9117 + +[moreores] loaded.=[moreores] załadowano. + +@1 Ore=@1 Ruda +@1 Lump=@1 Bryłka +@1 Ingot=@1 Sztabka +@1 Block=@1 Blok +@1 Pickaxe=@1 Kilof +@1 Shovel=@1 Łopatka +@1 Axe=@1 Siekiera +@1 Sword=@1 Miecz + +Copper=Miedź +Tin=Cyna +Bronze=Brąz +Silver=Srebro +Gold=Złoto +Mithril=Mithril +Copper Rail=Miedziany tor diff --git a/moreores/locale/moreores.pt_br.txt b/moreores/locale/moreores.pt_br.txt new file mode 100644 index 00000000..613209df --- /dev/null +++ b/moreores/locale/moreores.pt_br.txt @@ -0,0 +1,23 @@ +# textdomain: moreores + +# Translation by github.com/caiorrs + +[moreores] loaded.=[moreores] carregado. + +@1 Ore=Minério de @1 +@1 Lump=Pepita de @1 +@1 Ingot=Lingote de @1 +@1 Block=Bloco de @1 +@1 Pickaxe=Picareta de @1 +@1 Shovel=Pá de @1 +@1 Axe=Machado de @1 +@1 Sword=Espada de @1 + +Copper=Cobre +Tin=Estanho +Bronze=Bronze +Silver=Prata +Gold=Ouro +Mithril=Mitrilo + +Copper Rail=Trilho de Cobre diff --git a/moreores/locale/moreores.tr.tr b/moreores/locale/moreores.tr.tr new file mode 100644 index 00000000..e41f8e34 --- /dev/null +++ b/moreores/locale/moreores.tr.tr @@ -0,0 +1,28 @@ +# textdomain: moreores + +# Translation by Mahmutelmas06 +# mahmutelmas06@hotmail.com + +# Türkçe Çeviri +# Turkish translation +# Language 2 letter iso code is "tr" + +[moreores] loaded.=[moreores] yüklendi. + +@1 Ore=@1 madeni +@1 Lump=@1 yığını +@1 Ingot=@1 külçesi +@1 Block=@1 blok +@1 Pickaxe=@1 kazma +@1 Shovel=@1 kürek +@1 Axe=@1 balta +@1 Sword=@1 kılıç + +Copper=Bakır +Tin=Kalay +Bronze=Bronz +Silver=Gümüş +Gold=Altın +Mithril=Mithril + +Copper Rail=Bakır ray diff --git a/moreores/locale/nl.txt b/moreores/locale/nl.txt deleted file mode 100644 index 954045f4..00000000 --- a/moreores/locale/nl.txt +++ /dev/null @@ -1,19 +0,0 @@ -[moreores] loaded. = [moreores] geladen. - -%s Ore = %s Erts -%s Lump = %s Klomp -%s Ingot = %s Staaf -%s Block = %s Blok -%s Pickaxe = %s Pikhouweel -%s Shovel = %s Schep -%s Axe = %s Bijl -%s Sword = %s Zwaard - -Copper = Koper -Tin = Tin -Bronze = Brons -Silver = Silver -Gold = Goud -Mithril = Mithril - -Copper Rail = Koperen Spoor diff --git a/moreores/locale/pl.txt b/moreores/locale/pl.txt deleted file mode 100644 index e6c585ee..00000000 --- a/moreores/locale/pl.txt +++ /dev/null @@ -1,21 +0,0 @@ -# Translation by mat9117 - -[moreores] loaded. = [moreores] załadowano. - -%s Ore = %s Ruda -%s Lump = %s Bryłka -%s Ingot = %s Sztabka -%s Block = %s Blok -%s Pickaxe = %s Kilof -%s Shovel = %s Łopatka -%s Axe = %s Siekiera -%s Sword = %s Miecz - -Copper = Miedź -Tin = Cyna -Bronze = Brąz -Silver = Srebro -Gold = Złoto -Mithril = Mithril - -Copper Rail = Miedziany tor diff --git a/moreores/locale/pt_br.txt b/moreores/locale/pt_br.txt deleted file mode 100644 index ab84eebc..00000000 --- a/moreores/locale/pt_br.txt +++ /dev/null @@ -1,21 +0,0 @@ -# Translation by github.com/caiorrs - -[moreores] loaded. = [moreores] carregado. - -%s Ore = Minério de %s -%s Lump = Pepita de %s -%s Ingot = Lingote de %s -%s Block = Bloco de %s -%s Pickaxe = Picareta de %s -%s Shovel = Pá de %s -%s Axe = Machado de %s -%s Sword = Espada de %s - -Copper = Cobre -Tin = Estanho -Bronze = Bronze -Silver = Prata -Gold = Ouro -Mithril = Mitrilo - -Copper Rail = Trilho de Cobre diff --git a/moreores/locale/tr.txt b/moreores/locale/tr.txt deleted file mode 100644 index 4f20286d..00000000 --- a/moreores/locale/tr.txt +++ /dev/null @@ -1,25 +0,0 @@ -# Translation by Mahmutelmas06 -# mahmutelmas06@hotmail.com -# Türkçe Çeviri -# Turkish translation -# Language 2 letter iso code is "tr" - -[moreores] loaded. = [moreores] yüklendi. - -%s Ore = %s madeni -%s Lump = %s yığını -%s Ingot = %s külçesi -%s Block = %s blok -%s Pickaxe = %s kazma -%s Shovel = %s kürek -%s Axe = %s balta -%s Sword = %s kılıç - -Copper = Bakır -Tin = Kalay -Bronze = Bronz -Silver = Gümüş -Gold = Altın -Mithril = Mithril - -Copper Rail = Bakır ray diff --git a/moreores/mg.lua b/moreores/mg.lua index 988c0925..e7ea5b2c 100644 --- a/moreores/mg.lua +++ b/moreores/mg.lua @@ -1,7 +1,7 @@ --[[ More Ores: `mg` mod support -Copyright © 2011-2019 Hugo Locurcio and contributors. +Copyright © 2011-2020 Hugo Locurcio and contributors. Licensed under the zlib license. See LICENSE.md for more information. --]] diff --git a/moreores/mod.conf b/moreores/mod.conf index 9b71bfb4..d4dc0c24 100644 --- a/moreores/mod.conf +++ b/moreores/mod.conf @@ -1,4 +1,4 @@ name = moreores description = Adds new ore types. depends = default -optional_depends = carts,farming,frame,intllib,mg +optional_depends = carts,farming,frame,mg,toolranks diff --git a/moretrees/crafts.lua b/moretrees/crafts.lua index 9d1fe798..f383b6f7 100644 --- a/moretrees/crafts.lua +++ b/moretrees/crafts.lua @@ -117,10 +117,39 @@ for i in ipairs(moretrees.cutting_tools) do }, replacements = { { "moretrees:coconut", "moretrees:raw_coconut" }, - { tool, tool } } }) end +-- give tool back with wear preserved +minetest.register_on_craft(function(itemstack, player, old_craft_grid, craft_inv) + if (itemstack:get_name() == "moretrees:coconut_milk") then + for i, j in pairs(old_craft_grid) do + -- find tool used to do the craft + local ocg_name = j:get_name() + if ((ocg_name ~= "") and (ocg_name ~= "moretrees:coconut") and (ocg_name ~= "vessels:drinking_glass")) then + -- create a new tool and set wear + local t = ItemStack(ocg_name) + local w = j:get_wear() + -- works if tool used is an axe + local uses = j:get_tool_capabilities().groupcaps.choppy.uses or 0 + if (w == 0 and uses ~= 0) then + -- tool has never been used + -- use tool once + t:set_wear(65535/(9*(uses - 1))) + else + -- set wear back + t:set_wear(w) + -- use tool once + if (uses ~= 0) then + t:add_wear(65535/(9*(uses - 1))) + end + end + -- add to craft inventory + craft_inv:add_item("craft", t) + end + end + end +end) minetest.register_craft({ type = "shapeless", diff --git a/moretrees/mod.conf b/moretrees/mod.conf index b95f3e82..4eef24a1 100644 --- a/moretrees/mod.conf +++ b/moretrees/mod.conf @@ -1 +1,3 @@ name = moretrees +depends = default, biome_lib, vessels +optional_depends = doors stairs, moreblocks, intllib, farming diff --git a/nature_classic/blossom.lua b/nature_classic/blossom.lua index 7accd5e8..6cbb729c 100644 --- a/nature_classic/blossom.lua +++ b/nature_classic/blossom.lua @@ -1,5 +1,5 @@ -- support for i18n -local S = plantlife_i18n.gettext +local S = minetest.get_translator("nature_classic") -- Blossoms and such local function spawn_apple_under(pos) diff --git a/nature_classic/depends.txt b/nature_classic/depends.txt deleted file mode 100644 index ad4030ff..00000000 --- a/nature_classic/depends.txt +++ /dev/null @@ -1,3 +0,0 @@ -default -plantlife_i18n -moretrees? diff --git a/nature_classic/init.lua b/nature_classic/init.lua index 11351757..48a207e1 100644 --- a/nature_classic/init.lua +++ b/nature_classic/init.lua @@ -7,7 +7,7 @@ local current_mod_name = minetest.get_current_modname() nature = {} -- support for i18n -local S = plantlife_i18n.gettext +local S = minetest.get_translator("nature_classic") nature.blossomqueue = {} nature.blossomqueue_max = 1000 diff --git a/nature_classic/locale/nature_classic.fr.tr b/nature_classic/locale/nature_classic.fr.tr new file mode 100644 index 00000000..ffa9c502 --- /dev/null +++ b/nature_classic/locale/nature_classic.fr.tr @@ -0,0 +1,10 @@ +# textdomain: nature_classic + +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# fat115 , 2017. +# + +Apple blossoms=Fleurs de pommier +[Nature Classic] loaded!=[Nature Classic] chargé.! diff --git a/nature_classic/locale/template.txt b/nature_classic/locale/template.txt new file mode 100644 index 00000000..c39a57b2 --- /dev/null +++ b/nature_classic/locale/template.txt @@ -0,0 +1,10 @@ +# textdomain: nature_classic + +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# FIRST AUTHOR , YEAR. +# + +Apple blossoms= +[Nature Classic] loaded!= diff --git a/nature_classic/mod.conf b/nature_classic/mod.conf new file mode 100644 index 00000000..2e6050b5 --- /dev/null +++ b/nature_classic/mod.conf @@ -0,0 +1,3 @@ +name = nature_classic +depends = default +optional_depends = moretrees diff --git a/pipeworks/filter-injector.lua b/pipeworks/filter-injector.lua index 675ea07b..779b69ab 100644 --- a/pipeworks/filter-injector.lua +++ b/pipeworks/filter-injector.lua @@ -53,116 +53,6 @@ local function set_filter_formspec(data, meta) meta:set_string("formspec", formspec) end --- todo SOON: this function has *way too many* parameters -local function grabAndFire(data,slotseq_mode,exmatch_mode,filtmeta,frominv,frominvname,frompos,fromnode,filterfor,fromtube,fromdef,dir,fakePlayer,all,digiline) - local sposes = {} - if not frominvname or not frominv:get_list(frominvname) then return end - for spos,stack in ipairs(frominv:get_list(frominvname)) do - local matches - if filterfor == "" then - matches = stack:get_name() ~= "" - else - local fname = filterfor.name - local fgroup = filterfor.group - local fwear = filterfor.wear - local fmetadata = filterfor.metadata - matches = (not fname -- If there's a name filter, - or stack:get_name() == fname) -- it must match. - - and (not fgroup -- If there's a group filter, - or (type(fgroup) == "string" -- it must be a string - and minetest.get_item_group( -- and it must match. - stack:get_name(), fgroup) ~= 0)) - - and (not fwear -- If there's a wear filter: - or (type(fwear) == "number" -- If it's a number, - and stack:get_wear() == fwear) -- it must match. - or (type(fwear) == "table" -- If it's a table: - and (not fwear[1] -- If there's a lower bound, - or (type(fwear[1]) == "number" -- it must be a number - and fwear[1] <= stack:get_wear())) -- and it must be <= the actual wear. - and (not fwear[2] -- If there's an upper bound - or (type(fwear[2]) == "number" -- it must be a number - and stack:get_wear() < fwear[2])))) -- and it must be > the actual wear. - -- If the wear filter is of any other type, fail. - -- - and (not fmetadata -- If there's a matadata filter, - or (type(fmetadata) == "string" -- it must be a string - and stack:get_metadata() == fmetadata)) -- and it must match. - end - if matches then table.insert(sposes, spos) end - end - if #sposes == 0 then return false end - if slotseq_mode == 1 then - for i = #sposes, 2, -1 do - local j = math.random(i) - local t = sposes[j] - sposes[j] = sposes[i] - sposes[i] = t - end - elseif slotseq_mode == 2 then - local headpos = filtmeta:get_int("slotseq_index") - table.sort(sposes, function (a, b) - if a >= headpos then - if b < headpos then return true end - else - if b >= headpos then return false end - end - return a < b - end) - end - for _, spos in ipairs(sposes) do - local stack = frominv:get_stack(frominvname, spos) - local doRemove = stack:get_count() - if fromtube.can_remove then - doRemove = fromtube.can_remove(frompos, fromnode, stack, dir, frominvname, spos) - elseif fromdef.allow_metadata_inventory_take then - doRemove = fromdef.allow_metadata_inventory_take(frompos, frominvname,spos, stack, fakePlayer) - end - -- stupid lack of continue statements grumble - if doRemove > 0 then - if slotseq_mode == 2 then - local nextpos = spos + 1 - if nextpos > frominv:get_size(frominvname) then - nextpos = 1 - end - filtmeta:set_int("slotseq_index", nextpos) - set_filter_infotext(data, filtmeta) - end - local item - local count - if all then - count = math.min(stack:get_count(), doRemove) - if filterfor.count and (filterfor.count > 1 or digiline) then - if exmatch_mode ~= 0 and filterfor.count > count then - return false -- not enough, fail - else - -- limit quantity to filter amount - count = math.min(filterfor.count, count) - end - end - else - count = 1 - end - if fromtube.remove_items then - -- it could be the entire stack... - item = fromtube.remove_items(frompos, fromnode, stack, dir, count, frominvname, spos) - else - item = stack:take_item(count) - frominv:set_stack(frominvname, spos, stack) - if fromdef.on_metadata_inventory_take then - fromdef.on_metadata_inventory_take(frompos, frominvname, spos, item, fakePlayer) - end - end - local pos = vector.add(frompos, vector.multiply(dir, 1.4)) - local start_pos = vector.add(frompos, dir) - local item1 = pipeworks.tube_inject_item(pos, start_pos, dir, item, fakePlayer:get_player_name()) - return true-- only fire one item, please - end - end - return false -end - local function punch_filter(data, filtpos, filtnode, msg) local filtmeta = minetest.get_meta(filtpos) local filtinv = filtmeta:get_inventory() @@ -178,8 +68,6 @@ local function punch_filter(data, filtpos, filtnode, msg) if not fromdef then return end local fromtube = fromdef.tube local input_special_cases = { - ["technic:mv_furnace"] = "dst", - ["technic:mv_furnace_active"] = "dst", ["technic:mv_electric_furnace"] = "dst", ["technic:mv_electric_furnace_active"] = "dst", ["technic:mv_alloy_furnace"] = "dst", @@ -194,7 +82,13 @@ local function punch_filter(data, filtpos, filtnode, msg) ["technic:mv_grinder_active"] = "dst", ["technic:tool_workshop"] = "src", ["technic:mv_freezer"] = "dst", - ["technic:mv_freezer_active"] = "dst" + ["technic:mv_freezer_active"] = "dst", + ["technic:hv_electric_furnace"] = "dst", + ["technic:hv_electric_furnace_active"] = "dst", + ["technic:hv_compressor"] = "dst", + ["technic:hv_compressor_active"] = "dst", + ["technic:hv_grinder"] = "dst", + ["technic:hv_grinder_active"] = "dst" } -- make sure there's something appropriate to inject the item into @@ -214,7 +108,7 @@ local function punch_filter(data, filtpos, filtnode, msg) if not (fromtube and fromtube.input_inventory) then return end local slotseq_mode - local exact_match + local exmatch_mode local filters = {} if data.digiline then @@ -251,10 +145,10 @@ local function punch_filter(data, filtpos, filtnode, msg) local exmatch = msg.exmatch local t_exmatch = type(exmatch) - if t_exmatch == "number" and exmatch >= 0 and exmatch <= 1 then - exact_match = exmatch + if t_exmatch == "number" and (exmatch == 0 or exmatch == 1) then + exmatch_mode = exmatch elseif t_exmatch == "boolean" then - exact_match = exmatch and 1 or 0 + exmatch_mode = exmatch and 1 or 0 end local slotseq_index = msg.slotseq_index @@ -271,11 +165,11 @@ local function punch_filter(data, filtpos, filtnode, msg) filtmeta:set_int("slotseq_mode", slotseq_mode) end - if exact_match ~= nil then - filtmeta:set_int("exmatch_mode", exact_match) + if exmatch_mode ~= nil then + filtmeta:set_int("exmatch_mode", exmatch_mode) end - if slotseq_mode ~= nil or exact_match ~= nil then + if slotseq_mode ~= nil or exmatch_mode ~= nil then set_filter_formspec(data, filtmeta) end @@ -313,8 +207,8 @@ local function punch_filter(data, filtpos, filtnode, msg) slotseq_mode = filtmeta:get_int("slotseq_mode") end - if exact_match == nil then - exact_match = filtmeta:get_int("exmatch_mode") + if exmatch_mode == nil then + exmatch_mode = filtmeta:get_int("exmatch_mode") end local frominv @@ -328,10 +222,120 @@ local function punch_filter(data, filtpos, filtnode, msg) frominv = frommeta:get_inventory() end if fromtube.before_filter then fromtube.before_filter(frompos) end + + local function grabAndFire(frominvname, filterfor) + local sposes = {} + if not frominvname or not frominv:get_list(frominvname) then return end + for spos,stack in ipairs(frominv:get_list(frominvname)) do + local matches + if filterfor == "" then + matches = stack:get_name() ~= "" + else + local fname = filterfor.name + local fgroup = filterfor.group + local fwear = filterfor.wear + local fmetadata = filterfor.metadata + matches = (not fname -- If there's a name filter, + or stack:get_name() == fname) -- it must match. + + and (not fgroup -- If there's a group filter, + or (type(fgroup) == "string" -- it must be a string + and minetest.get_item_group( -- and it must match. + stack:get_name(), fgroup) ~= 0)) + + and (not fwear -- If there's a wear filter: + or (type(fwear) == "number" -- If it's a number, + and stack:get_wear() == fwear) -- it must match. + or (type(fwear) == "table" -- If it's a table: + and (not fwear[1] -- If there's a lower bound, + or (type(fwear[1]) == "number" -- it must be a number + and fwear[1] <= stack:get_wear())) -- and it must be <= the actual wear. + and (not fwear[2] -- If there's an upper bound + or (type(fwear[2]) == "number" -- it must be a number + and stack:get_wear() < fwear[2])))) -- and it must be > the actual wear. + -- If the wear filter is of any other type, fail. + + and (not fmetadata -- If there's a metadata filter, + or (type(fmetadata) == "string" -- it must be a string + and stack:get_metadata() == fmetadata)) -- and it must match. + end + if matches then table.insert(sposes, spos) end + end + if #sposes == 0 then return false end + if slotseq_mode == 1 then + for i = #sposes, 2, -1 do + local j = math.random(i) + local t = sposes[j] + sposes[j] = sposes[i] + sposes[i] = t + end + elseif slotseq_mode == 2 then + local headpos = filtmeta:get_int("slotseq_index") + table.sort(sposes, function (a, b) + if a >= headpos then + if b < headpos then return true end + else + if b >= headpos then return false end + end + return a < b + end) + end + for _, spos in ipairs(sposes) do + local stack = frominv:get_stack(frominvname, spos) + local doRemove = stack:get_count() + if fromtube.can_remove then + doRemove = fromtube.can_remove(frompos, fromnode, stack, dir, frominvname, spos) + elseif fromdef.allow_metadata_inventory_take then + doRemove = fromdef.allow_metadata_inventory_take(frompos, frominvname,spos, stack, fakePlayer) + end + -- stupid lack of continue statements grumble + if doRemove > 0 then + if slotseq_mode == 2 then + local nextpos = spos + 1 + if nextpos > frominv:get_size(frominvname) then + nextpos = 1 + end + filtmeta:set_int("slotseq_index", nextpos) + set_filter_infotext(data, filtmeta) + end + local item + local count + if data.stackwise then + count = math.min(stack:get_count(), doRemove) + if filterfor.count and (filterfor.count > 1 or data.digiline) then + if exmatch_mode ~= 0 and filterfor.count > count then + return false -- not enough, fail + else + -- limit quantity to filter amount + count = math.min(filterfor.count, count) + end + end + else + count = 1 + end + if fromtube.remove_items then + -- it could be the entire stack... + item = fromtube.remove_items(frompos, fromnode, stack, dir, count, frominvname, spos) + else + item = stack:take_item(count) + frominv:set_stack(frominvname, spos, stack) + if fromdef.on_metadata_inventory_take then + fromdef.on_metadata_inventory_take(frompos, frominvname, spos, item, fakePlayer) + end + end + local pos = vector.add(frompos, vector.multiply(dir, 1.4)) + local start_pos = vector.add(frompos, dir) + local item1 = pipeworks.tube_inject_item(pos, start_pos, dir, item, fakePlayer:get_player_name()) + return true -- only fire one item, please + end + end + return false + end + for _, frominvname in ipairs(type(fromtube.input_inventory) == "table" and fromtube.input_inventory or {fromtube.input_inventory}) do local done = false for _, filterfor in ipairs(filters) do - if grabAndFire(data, slotseq_mode, exact_match, filtmeta, frominv, frominvname, frompos, fromnode, filterfor, fromtube, fromdef, dir, fakePlayer, data.stackwise, data.digiline) then + if grabAndFire(frominvname, filterfor) then done = true break end diff --git a/plantlife_i18n/depends.txt b/plantlife_i18n/depends.txt deleted file mode 100644 index 77e8d97c..00000000 --- a/plantlife_i18n/depends.txt +++ /dev/null @@ -1 +0,0 @@ -intllib? diff --git a/plantlife_i18n/init.lua b/plantlife_i18n/init.lua deleted file mode 100644 index e9990297..00000000 --- a/plantlife_i18n/init.lua +++ /dev/null @@ -1,7 +0,0 @@ - --- This file intentionally left blank. - -plantlife_i18n = { } - -local MP = minetest.get_modpath(minetest.get_current_modname()) -plantlife_i18n.gettext, plantlife_i18n.ngettext = dofile(MP.."/intllib.lua") diff --git a/plantlife_i18n/intllib.lua b/plantlife_i18n/intllib.lua deleted file mode 100644 index 6669d720..00000000 --- a/plantlife_i18n/intllib.lua +++ /dev/null @@ -1,45 +0,0 @@ - --- Fallback functions for when `intllib` is not installed. --- Code released under Unlicense . - --- Get the latest version of this file at: --- https://raw.githubusercontent.com/minetest-mods/intllib/master/lib/intllib.lua - -local function format(str, ...) - local args = { ... } - local function repl(escape, open, num, close) - if escape == "" then - local replacement = tostring(args[tonumber(num)]) - if open == "" then - replacement = replacement..close - end - return replacement - else - return "@"..open..num..close - end - end - return (str:gsub("(@?)@(%(?)(%d+)(%)?)", repl)) -end - -local gettext, ngettext -if minetest.get_modpath("intllib") then - if intllib.make_gettext_pair then - -- New method using gettext. - gettext, ngettext = intllib.make_gettext_pair() - else - -- Old method using text files. - gettext = intllib.Getter() - end -end - --- Fill in missing functions. - -gettext = gettext or function(msgid, ...) - return format(msgid, ...) -end - -ngettext = ngettext or function(msgid, msgid_plural, n, ...) - return format(n==1 and msgid or msgid_plural, ...) -end - -return gettext, ngettext diff --git a/plantlife_i18n/locale/de.po b/plantlife_i18n/locale/de.po deleted file mode 100644 index ff761e4a..00000000 --- a/plantlife_i18n/locale/de.po +++ /dev/null @@ -1,488 +0,0 @@ -# SOME DESCRIPTIVE TITLE. -# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER -# This file is distributed under the same license as the PACKAGE package. -# FIRST AUTHOR , YEAR. -# -msgid "" -msgstr "" -"Project-Id-Version: \n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2017-08-03 11:09+0200\n" -"PO-Revision-Date: 2017-08-03 11:32+0200\n" -"Last-Translator: Xanthin\n" -"Language-Team: \n" -"Language: de\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Generator: Poedit 1.8.12\n" -"Plural-Forms: nplurals=2; plural=(n != 1);\n" - -#: ../bushes/init.lua -msgid "Young Tree 2 (bottom)" -msgstr "" - -#: ../bushes/init.lua -msgid "Bush Branches @1" -msgstr "" - -#: ../bushes/init.lua -msgid "Bush Leaves @1" -msgstr "" - -#: ../bushes_classic/cooking.lua -msgid "Sugar" -msgstr "Zucker" - -#: ../bushes_classic/init.lua -msgid "Basket with Strawberry pies" -msgstr "Korb mit Erdbeertorten" - -#: ../bushes_classic/init.lua -msgid "Cooked Strawberry pie" -msgstr "Erdbeertorte" - -#: ../bushes_classic/init.lua -msgid "Raw Strawberry pie" -msgstr "Rohe Erdbeertorte" - -#: ../bushes_classic/init.lua -msgid "Slice of Strawberry pie" -msgstr "Erdbeertortenstueck" - -#: ../bushes_classic/init.lua -msgid "Strawberry" -msgstr "Erdbeere" - -#: ../bushes_classic/init.lua -msgid "Strawberry Bush" -msgstr "Erdbeerbusch" - -#: ../bushes_classic/init.lua -msgid "Basket with Blackberry pies" -msgstr "Korb mit Brombeertorten" - -#: ../bushes_classic/init.lua -msgid "Blackberry" -msgstr "Brombeere" - -#: ../bushes_classic/init.lua -msgid "Blackberry Bush" -msgstr "Brombeerbusch" - -#: ../bushes_classic/init.lua -msgid "Cooked Blackberry pie" -msgstr "Brombeertorte" - -#: ../bushes_classic/init.lua -msgid "Raw Blackberry pie" -msgstr "Rohe Brombeertorte" - -#: ../bushes_classic/init.lua -msgid "Slice of Blackberry pie" -msgstr "Brombeertortenstueck" - -#: ../bushes_classic/init.lua -msgid "Basket with Blueberry pies" -msgstr "Korb mit Blaubeertorten" - -#: ../bushes_classic/init.lua -msgid "Blueberry" -msgstr "Blaubeere" - -#: ../bushes_classic/init.lua -msgid "Blueberry Bush" -msgstr "Blaubeerbusch" - -#: ../bushes_classic/init.lua -msgid "Cooked Blueberry pie" -msgstr "Blaubeertorte" - -#: ../bushes_classic/init.lua -msgid "Raw Blueberry pie" -msgstr "Rohe Blaubeertorte" - -#: ../bushes_classic/init.lua -msgid "Slice of Blueberry pie" -msgstr "Blaubeertortenstueck" - -#: ../bushes_classic/init.lua -msgid "Basket with Raspberry pies" -msgstr "Korb mit Himbeertorten" - -#: ../bushes_classic/init.lua -msgid "Cooked Raspberry pie" -msgstr "Himbeertorte" - -#: ../bushes_classic/init.lua -msgid "Raspberry" -msgstr "Himbeere" - -#: ../bushes_classic/init.lua -msgid "Raspberry Bush" -msgstr "Himbeerbusch" - -#: ../bushes_classic/init.lua -msgid "Raw Raspberry pie" -msgstr "Rohe Himbeertorte" - -#: ../bushes_classic/init.lua -msgid "Slice of Raspberry pie" -msgstr "Himbeertortenstueck" - -#: ../bushes_classic/init.lua -msgid "Basket with Gooseberry pies" -msgstr "Korb mit Stachelbeertorten" - -#: ../bushes_classic/init.lua -msgid "Cooked Gooseberry pie" -msgstr "Stachelbeertorte" - -#: ../bushes_classic/init.lua -msgid "Gooseberry" -msgstr "Stachelbeere" - -#: ../bushes_classic/init.lua -msgid "Gooseberry Bush" -msgstr "Stachelbeerbusch" - -#: ../bushes_classic/init.lua -msgid "Raw Gooseberry pie" -msgstr "Rohe Stachelbeertorte" - -#: ../bushes_classic/init.lua -msgid "Slice of Gooseberry pie" -msgstr "Stachelbeertortenstueck" - -#: ../bushes_classic/init.lua -msgid "Basket with Mixed Berry pies" -msgstr "Korb mit Beerenmixtorten" - -#: ../bushes_classic/init.lua -msgid "Cooked Mixed Berry pie" -msgstr "Beerenmixtorte" - -#: ../bushes_classic/init.lua -#, fuzzy -msgid "Currently fruitless Bush" -msgstr "zur Zeit fruechteloser" - -#: ../bushes_classic/init.lua -msgid "Mixed Berry" -msgstr "Beerenmix" - -#: ../bushes_classic/init.lua -msgid "Raw Mixed Berry pie" -msgstr "Rohe Beerenmixtorte" - -#: ../bushes_classic/init.lua -msgid "Slice of Mixed Berry pie" -msgstr "Beerenmixtortenstueck" - -#: ../bushes_classic/init.lua -msgid "[Bushes] Loaded." -msgstr "[Bushes] Geladen." - -#: ../bushes_classic/nodes.lua -msgid "Basket" -msgstr "Korb" - -#: ../cavestuff/nodes.lua -msgid "Pebble" -msgstr "" - -#: ../cavestuff/nodes.lua -msgid "Desert Pebble" -msgstr "" - -#: ../cavestuff/nodes.lua -msgid "Stalactite" -msgstr "" - -#: ../dryplants/init.lua -msgid "Sickle" -msgstr "" - -#: ../dryplants/init.lua -msgid "Cut Grass" -msgstr "" - -#: ../dryplants/init.lua -msgid "Hay" -msgstr "" - -#: ../dryplants/init.lua -msgid "Short Grass" -msgstr "" - -#: ../dryplants/juncus.lua -msgid "Juncus" -msgstr "" - -#: ../dryplants/reed.lua -msgid "Wet Reed" -msgstr "" - -#: ../dryplants/reed.lua -msgid "Wet Reed Slab" -msgstr "" - -#: ../dryplants/reed.lua -msgid "Wet Reed Roof" -msgstr "" - -#: ../dryplants/reed.lua -msgid "Wet Reed Roof Corner" -msgstr "" - -#: ../dryplants/reed.lua -msgid "Wet Reed Roof Corner 2" -msgstr "" - -#: ../dryplants/reed.lua -msgid "Reed" -msgstr "" - -#: ../dryplants/reed.lua -msgid "Reed Slab" -msgstr "" - -#: ../dryplants/reed.lua -msgid "Reed Roof" -msgstr "" - -#: ../dryplants/reed.lua -msgid "Reed Roof Corner" -msgstr "" - -#: ../dryplants/reed.lua -msgid "Reed Roof Corner 2" -msgstr "" - -#: ../dryplants/reedmace.lua -msgid "Reedmace" -msgstr "" - -#: ../dryplants/reedmace.lua -msgid "Reedmace, height: 1" -msgstr "" - -#: ../dryplants/reedmace.lua -msgid "Reedmace, height: 2" -msgstr "" - -#: ../dryplants/reedmace.lua -msgid "Reedmace, height: 3" -msgstr "" - -#: ../dryplants/reedmace.lua -msgid "Reedmace, height: 3 & Spikes" -msgstr "" - -#: ../ferns/crafting.lua -msgid "Fiddlehead" -msgstr "" - -#: ../ferns/crafting.lua -msgid "Roasted Fiddlehead" -msgstr "" - -#: ../ferns/crafting.lua -msgid "Fern Tuber" -msgstr "" - -#: ../ferns/crafting.lua -msgid "Roasted Fern Tuber" -msgstr "" - -#: ../ferns/fern.lua -msgid "Lady-fern (Athyrium)" -msgstr "" - -#: ../ferns/gianttreefern.lua ../ferns/treefern.lua -msgid "Tree Fern Crown (Dicksonia)" -msgstr "" - -#: ../ferns/gianttreefern.lua -msgid "Giant Tree Fern Leaves" -msgstr "" - -#: ../ferns/gianttreefern.lua -msgid "Giant Tree Fern Leave End" -msgstr "" - -#: ../ferns/gianttreefern.lua -msgid "Giant Fern Trunk" -msgstr "" - -#: ../ferns/gianttreefern.lua -msgid "Giant Tree Fern Sapling" -msgstr "" - -#: ../ferns/horsetail.lua -msgid "Young Horsetail (Equisetum)" -msgstr "" - -#: ../ferns/horsetail.lua -msgid "Horsetail (Equisetum)" -msgstr "" - -#: ../ferns/treefern.lua -msgid "Fern Trunk (Dicksonia)" -msgstr "" - -#: ../ferns/treefern.lua -msgid "Tree Fern Sapling (Dicksonia)" -msgstr "" - -#: ../flowers_plus/init.lua -msgid "Waterlily" -msgstr "Seerose" - -#: ../flowers_plus/init.lua -msgid "Seaweed" -msgstr "Seetang" - -#: ../flowers_plus/init.lua -msgid "Sunflower" -msgstr "Sonnenblume" - -#: ../flowers_plus/init.lua -msgid "[Flowers] Loaded." -msgstr "[Flowers] Geladen." - -#: ../molehills/init.lua -msgid "Mole Hill" -msgstr "" - -#: ../molehills/init.lua -msgid "Loaded..." -msgstr "" - -#: ../nature_classic/blossom.lua -msgid "Apple blossoms" -msgstr "" - -#: ../nature_classic/init.lua -msgid "[Nature Classic] loaded!" -msgstr "" - -#: ../poisonivy/init.lua -msgid "Poison ivy (seedling)" -msgstr "Giftefeu (Saemling)" - -#: ../poisonivy/init.lua -msgid "Poison ivy (sproutling)" -msgstr "Giftefeu (Sproessling)" - -#: ../poisonivy/init.lua -msgid "Poison ivy (climbing plant)" -msgstr "Giftefeu (Kletterpflanze)" - -#: ../poisonivy/init.lua -msgid "[Poison Ivy] Loaded." -msgstr "[Poison Ivy] Geladen." - -#: ../trunks/nodes.lua -msgid "Twig" -msgstr "" - -#: ../trunks/nodes.lua -msgid "Moss" -msgstr "" - -#: ../trunks/nodes.lua -msgid "Moss with Fungus" -msgstr "" - -#: ../trunks/nodes.lua -msgid "Twigs Block" -msgstr "" - -#: ../trunks/nodes.lua -msgid "Twigs Slab" -msgstr "" - -#: ../trunks/nodes.lua -msgid "Twigs Roof" -msgstr "" - -#: ../trunks/nodes.lua -msgid "Twigs Roof Corner 1" -msgstr "" - -#: ../trunks/nodes.lua -msgid "Twigs Roof Corner 2" -msgstr "" - -#: ../trunks/nodes.lua -msgid "Root" -msgstr "" - -#: ../vines/crafts.lua ../vines/vines.lua -msgid "Vines" -msgstr "" - -#: ../vines/functions.lua -msgid "Matured" -msgstr "" - -#: ../vines/init.lua -msgid "[Vines] Loaded!" -msgstr "" - -#: ../vines/nodes.lua -msgid "Rope" -msgstr "" - -#: ../vines/shear.lua -msgid "Shears" -msgstr "" - -#: ../vines/vines.lua -msgid "Roots" -msgstr "" - -#: ../vines/vines.lua -msgid "Jungle Vines" -msgstr "" - -#: ../vines/vines.lua -msgid "Willow Vines" -msgstr "" - -#: ../woodsoils/nodes.lua -msgid "Forest Soil 1" -msgstr "" - -#: ../woodsoils/nodes.lua -msgid "Forest Soil 2" -msgstr "" - -#: ../woodsoils/nodes.lua -msgid "Forest Soil 3" -msgstr "" - -#: ../woodsoils/nodes.lua -msgid "Forest Soil 4" -msgstr "" - -#: ../youngtrees/init.lua -msgid "Young Bamboo Tree" -msgstr "" - -#: ../youngtrees/init.lua -msgid "Young Tree 2 (middle)" -msgstr "" - -#: ../youngtrees/init.lua -msgid "Young Tree (top)" -msgstr "" - -#: ../youngtrees/init.lua -msgid "Young Tree (middle)" -msgstr "" - -#: ../youngtrees/init.lua -msgid "Young Tree (bottom)" -msgstr "" diff --git a/plantlife_i18n/locale/es.po b/plantlife_i18n/locale/es.po deleted file mode 100644 index 7ff371d5..00000000 --- a/plantlife_i18n/locale/es.po +++ /dev/null @@ -1,488 +0,0 @@ -# SOME DESCRIPTIVE TITLE. -# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER -# This file is distributed under the same license as the PACKAGE package. -# FIRST AUTHOR , YEAR. -# -msgid "" -msgstr "" -"Project-Id-Version: \n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2017-08-03 11:34+0200\n" -"PO-Revision-Date: 2017-08-03 11:41+0200\n" -"Language-Team: \n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Generator: Poedit 1.8.12\n" -"Last-Translator: Carlos Barraza \n" -"Plural-Forms: nplurals=2; plural=(n != 1);\n" -"Language: es\n" - -#: ../bushes/init.lua -msgid "Young Tree 2 (bottom)" -msgstr "" - -#: ../bushes/init.lua -msgid "Bush Branches @1" -msgstr "" - -#: ../bushes/init.lua -msgid "Bush Leaves @1" -msgstr "" - -#: ../bushes_classic/cooking.lua -msgid "Sugar" -msgstr "Azúcar" - -#: ../bushes_classic/init.lua -msgid "Basket with Strawberry pies" -msgstr "Cesta con Pasteles de Frutilla" - -#: ../bushes_classic/init.lua -msgid "Cooked Strawberry pie" -msgstr "Pastel de Frutilla Cocido" - -#: ../bushes_classic/init.lua -msgid "Raw Strawberry pie" -msgstr "Pastel de Frutilla Crudo" - -#: ../bushes_classic/init.lua -msgid "Slice of Strawberry pie" -msgstr "Rebanada de Pastel de Frutilla" - -#: ../bushes_classic/init.lua -msgid "Strawberry" -msgstr "Frutilla" - -#: ../bushes_classic/init.lua -msgid "Strawberry Bush" -msgstr "Arbusto de Frutilla" - -#: ../bushes_classic/init.lua -msgid "Basket with Blackberry pies" -msgstr "Cesta con Pasteles de Mora" - -#: ../bushes_classic/init.lua -msgid "Blackberry" -msgstr "Mora" - -#: ../bushes_classic/init.lua -msgid "Blackberry Bush" -msgstr "Arbusto de Mora" - -#: ../bushes_classic/init.lua -msgid "Cooked Blackberry pie" -msgstr "Pastel de Mora Cocido" - -#: ../bushes_classic/init.lua -msgid "Raw Blackberry pie" -msgstr "Pastel de Mora Crudo" - -#: ../bushes_classic/init.lua -msgid "Slice of Blackberry pie" -msgstr "Rebanada de Pastel de Mora" - -#: ../bushes_classic/init.lua -msgid "Basket with Blueberry pies" -msgstr "Cesta con Pasteles de Arándano" - -#: ../bushes_classic/init.lua -msgid "Blueberry" -msgstr "Arándano" - -#: ../bushes_classic/init.lua -msgid "Blueberry Bush" -msgstr "Arbusto de Arándano" - -#: ../bushes_classic/init.lua -msgid "Cooked Blueberry pie" -msgstr "Pastel de Arándano Cocido" - -#: ../bushes_classic/init.lua -msgid "Raw Blueberry pie" -msgstr "Pastel de Arándano Crudo" - -#: ../bushes_classic/init.lua -msgid "Slice of Blueberry pie" -msgstr "Rebanada de Pastel de Arándano" - -#: ../bushes_classic/init.lua -msgid "Basket with Raspberry pies" -msgstr "Cesta con Pasteles de Frambuesa" - -#: ../bushes_classic/init.lua -msgid "Cooked Raspberry pie" -msgstr "Pastel de Frambuesa Cocido" - -#: ../bushes_classic/init.lua -msgid "Raspberry" -msgstr "Frambuesa" - -#: ../bushes_classic/init.lua -msgid "Raspberry Bush" -msgstr "Arbusto de Frambuesa" - -#: ../bushes_classic/init.lua -msgid "Raw Raspberry pie" -msgstr "Pastel de Frambuesa Crudo" - -#: ../bushes_classic/init.lua -msgid "Slice of Raspberry pie" -msgstr "Rebanada de Pastel de Frambuesa" - -#: ../bushes_classic/init.lua -msgid "Basket with Gooseberry pies" -msgstr "Cesta con Pasteles de Grosella" - -#: ../bushes_classic/init.lua -msgid "Cooked Gooseberry pie" -msgstr "Pastel de Grosella Cocido" - -#: ../bushes_classic/init.lua -msgid "Gooseberry" -msgstr "Grosella" - -#: ../bushes_classic/init.lua -msgid "Gooseberry Bush" -msgstr "Arbusto de Grosella" - -#: ../bushes_classic/init.lua -msgid "Raw Gooseberry pie" -msgstr "Pastel de Grosella Crudo" - -#: ../bushes_classic/init.lua -msgid "Slice of Gooseberry pie" -msgstr "Rebanada de Pastel de Grosella" - -#: ../bushes_classic/init.lua -msgid "Basket with Mixed Berry pies" -msgstr "Cesta con Pasteles de Mezcla de Baya" - -#: ../bushes_classic/init.lua -msgid "Cooked Mixed Berry pie" -msgstr "Pastel de Mezcla de Bayas Cocido" - -#: ../bushes_classic/init.lua -#, fuzzy -msgid "Currently fruitless Bush" -msgstr "Arbusto actualmente infructuoso" - -#: ../bushes_classic/init.lua -msgid "Mixed Berry" -msgstr "Mezcla de Baya" - -#: ../bushes_classic/init.lua -msgid "Raw Mixed Berry pie" -msgstr "Pastel de Mezcla de Bayas Cruda" - -#: ../bushes_classic/init.lua -msgid "Slice of Mixed Berry pie" -msgstr "Rebanada de Pastel de Mezcla de Bayas" - -#: ../bushes_classic/init.lua -msgid "[Bushes] Loaded." -msgstr "[Bushes] Cargado." - -#: ../bushes_classic/nodes.lua -msgid "Basket" -msgstr "Cesta" - -#: ../cavestuff/nodes.lua -msgid "Pebble" -msgstr "" - -#: ../cavestuff/nodes.lua -msgid "Desert Pebble" -msgstr "" - -#: ../cavestuff/nodes.lua -msgid "Stalactite" -msgstr "" - -#: ../dryplants/init.lua -msgid "Sickle" -msgstr "" - -#: ../dryplants/init.lua -msgid "Cut Grass" -msgstr "" - -#: ../dryplants/init.lua -msgid "Hay" -msgstr "" - -#: ../dryplants/init.lua -msgid "Short Grass" -msgstr "" - -#: ../dryplants/juncus.lua -msgid "Juncus" -msgstr "" - -#: ../dryplants/reed.lua -msgid "Wet Reed" -msgstr "" - -#: ../dryplants/reed.lua -msgid "Wet Reed Slab" -msgstr "" - -#: ../dryplants/reed.lua -msgid "Wet Reed Roof" -msgstr "" - -#: ../dryplants/reed.lua -msgid "Wet Reed Roof Corner" -msgstr "" - -#: ../dryplants/reed.lua -msgid "Wet Reed Roof Corner 2" -msgstr "" - -#: ../dryplants/reed.lua -msgid "Reed" -msgstr "" - -#: ../dryplants/reed.lua -msgid "Reed Slab" -msgstr "" - -#: ../dryplants/reed.lua -msgid "Reed Roof" -msgstr "" - -#: ../dryplants/reed.lua -msgid "Reed Roof Corner" -msgstr "" - -#: ../dryplants/reed.lua -msgid "Reed Roof Corner 2" -msgstr "" - -#: ../dryplants/reedmace.lua -msgid "Reedmace" -msgstr "" - -#: ../dryplants/reedmace.lua -msgid "Reedmace, height: 1" -msgstr "" - -#: ../dryplants/reedmace.lua -msgid "Reedmace, height: 2" -msgstr "" - -#: ../dryplants/reedmace.lua -msgid "Reedmace, height: 3" -msgstr "" - -#: ../dryplants/reedmace.lua -msgid "Reedmace, height: 3 & Spikes" -msgstr "" - -#: ../ferns/crafting.lua -msgid "Fiddlehead" -msgstr "" - -#: ../ferns/crafting.lua -msgid "Roasted Fiddlehead" -msgstr "" - -#: ../ferns/crafting.lua -msgid "Fern Tuber" -msgstr "" - -#: ../ferns/crafting.lua -msgid "Roasted Fern Tuber" -msgstr "" - -#: ../ferns/fern.lua -msgid "Lady-fern (Athyrium)" -msgstr "" - -#: ../ferns/gianttreefern.lua ../ferns/treefern.lua -msgid "Tree Fern Crown (Dicksonia)" -msgstr "" - -#: ../ferns/gianttreefern.lua -msgid "Giant Tree Fern Leaves" -msgstr "" - -#: ../ferns/gianttreefern.lua -msgid "Giant Tree Fern Leave End" -msgstr "" - -#: ../ferns/gianttreefern.lua -msgid "Giant Fern Trunk" -msgstr "" - -#: ../ferns/gianttreefern.lua -msgid "Giant Tree Fern Sapling" -msgstr "" - -#: ../ferns/horsetail.lua -msgid "Young Horsetail (Equisetum)" -msgstr "" - -#: ../ferns/horsetail.lua -msgid "Horsetail (Equisetum)" -msgstr "" - -#: ../ferns/treefern.lua -msgid "Fern Trunk (Dicksonia)" -msgstr "" - -#: ../ferns/treefern.lua -msgid "Tree Fern Sapling (Dicksonia)" -msgstr "" - -#: ../flowers_plus/init.lua -msgid "Waterlily" -msgstr "Lirio de agua" - -#: ../flowers_plus/init.lua -msgid "Seaweed" -msgstr "Algas marinas" - -#: ../flowers_plus/init.lua -msgid "Sunflower" -msgstr "Girasol" - -#: ../flowers_plus/init.lua -msgid "[Flowers] Loaded." -msgstr "[Flowers] Cargado." - -#: ../molehills/init.lua -msgid "Mole Hill" -msgstr "" - -#: ../molehills/init.lua -msgid "Loaded..." -msgstr "" - -#: ../nature_classic/blossom.lua -msgid "Apple blossoms" -msgstr "" - -#: ../nature_classic/init.lua -msgid "[Nature Classic] loaded!" -msgstr "" - -#: ../poisonivy/init.lua -msgid "Poison ivy (seedling)" -msgstr "Hiedra venenosa (retoño)" - -#: ../poisonivy/init.lua -msgid "Poison ivy (sproutling)" -msgstr "Hiedra venenosa (brotes)" - -#: ../poisonivy/init.lua -msgid "Poison ivy (climbing plant)" -msgstr "Hiedra venenosa (planta trepadora)" - -#: ../poisonivy/init.lua -msgid "[Poison Ivy] Loaded." -msgstr "[Poison Ivy] Cargado." - -#: ../trunks/nodes.lua -msgid "Twig" -msgstr "" - -#: ../trunks/nodes.lua -msgid "Moss" -msgstr "" - -#: ../trunks/nodes.lua -msgid "Moss with Fungus" -msgstr "" - -#: ../trunks/nodes.lua -msgid "Twigs Block" -msgstr "" - -#: ../trunks/nodes.lua -msgid "Twigs Slab" -msgstr "" - -#: ../trunks/nodes.lua -msgid "Twigs Roof" -msgstr "" - -#: ../trunks/nodes.lua -msgid "Twigs Roof Corner 1" -msgstr "" - -#: ../trunks/nodes.lua -msgid "Twigs Roof Corner 2" -msgstr "" - -#: ../trunks/nodes.lua -msgid "Root" -msgstr "" - -#: ../vines/crafts.lua ../vines/vines.lua -msgid "Vines" -msgstr "" - -#: ../vines/functions.lua -msgid "Matured" -msgstr "" - -#: ../vines/init.lua -msgid "[Vines] Loaded!" -msgstr "" - -#: ../vines/nodes.lua -msgid "Rope" -msgstr "" - -#: ../vines/shear.lua -msgid "Shears" -msgstr "" - -#: ../vines/vines.lua -msgid "Roots" -msgstr "" - -#: ../vines/vines.lua -msgid "Jungle Vines" -msgstr "" - -#: ../vines/vines.lua -msgid "Willow Vines" -msgstr "" - -#: ../woodsoils/nodes.lua -msgid "Forest Soil 1" -msgstr "" - -#: ../woodsoils/nodes.lua -msgid "Forest Soil 2" -msgstr "" - -#: ../woodsoils/nodes.lua -msgid "Forest Soil 3" -msgstr "" - -#: ../woodsoils/nodes.lua -msgid "Forest Soil 4" -msgstr "" - -#: ../youngtrees/init.lua -msgid "Young Bamboo Tree" -msgstr "" - -#: ../youngtrees/init.lua -msgid "Young Tree 2 (middle)" -msgstr "" - -#: ../youngtrees/init.lua -msgid "Young Tree (top)" -msgstr "" - -#: ../youngtrees/init.lua -msgid "Young Tree (middle)" -msgstr "" - -#: ../youngtrees/init.lua -msgid "Young Tree (bottom)" -msgstr "" diff --git a/plantlife_i18n/locale/fr.po b/plantlife_i18n/locale/fr.po deleted file mode 100644 index d5734b38..00000000 --- a/plantlife_i18n/locale/fr.po +++ /dev/null @@ -1,487 +0,0 @@ -# SOME DESCRIPTIVE TITLE. -# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER -# This file is distributed under the same license as the PACKAGE package. -# FIRST AUTHOR , YEAR. -# -msgid "" -msgstr "" -"Project-Id-Version: \n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2017-08-03 11:09+0200\n" -"PO-Revision-Date: 2017-08-03 11:18+0200\n" -"Last-Translator: fat115 \n" -"Language-Team: \n" -"Language: fr\n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Generator: Poedit 1.8.12\n" -"Plural-Forms: nplurals=2; plural=(n > 1);\n" - -#: ../bushes/init.lua -msgid "Young Tree 2 (bottom)" -msgstr "Arbuste 2 (bas)" - -#: ../bushes/init.lua -msgid "Bush Branches @1" -msgstr "Branches de buisson @1" - -#: ../bushes/init.lua -msgid "Bush Leaves @1" -msgstr "Feuilles de buisson @1" - -#: ../bushes_classic/cooking.lua -msgid "Sugar" -msgstr "Sucre" - -#: ../bushes_classic/init.lua -msgid "Basket with Strawberry pies" -msgstr "Panier de tartes aux fraises" - -#: ../bushes_classic/init.lua -msgid "Cooked Strawberry pie" -msgstr "Tarte aux fraises (cuite)" - -#: ../bushes_classic/init.lua -msgid "Raw Strawberry pie" -msgstr "Tarte aux fraises (crue)" - -#: ../bushes_classic/init.lua -msgid "Slice of Strawberry pie" -msgstr "Part de tarte aux fraises" - -#: ../bushes_classic/init.lua -msgid "Strawberry" -msgstr "Fraises" - -#: ../bushes_classic/init.lua -msgid "Strawberry Bush" -msgstr "Buisson de fraises" - -#: ../bushes_classic/init.lua -msgid "Basket with Blackberry pies" -msgstr "Panier de tartes aux fraises" - -#: ../bushes_classic/init.lua -msgid "Blackberry" -msgstr "Mûres" - -#: ../bushes_classic/init.lua -msgid "Blackberry Bush" -msgstr "Buisson de mûres" - -#: ../bushes_classic/init.lua -msgid "Cooked Blackberry pie" -msgstr "Tarte aux mûres (cuite)" - -#: ../bushes_classic/init.lua -msgid "Raw Blackberry pie" -msgstr "Tarte aux mûres (crue)" - -#: ../bushes_classic/init.lua -msgid "Slice of Blackberry pie" -msgstr "Part de tarte aux mûres" - -#: ../bushes_classic/init.lua -msgid "Basket with Blueberry pies" -msgstr "Panier de tartes aux mûres" - -#: ../bushes_classic/init.lua -msgid "Blueberry" -msgstr "Myrtilles" - -#: ../bushes_classic/init.lua -msgid "Blueberry Bush" -msgstr "Buisson de myrtilles" - -#: ../bushes_classic/init.lua -msgid "Cooked Blueberry pie" -msgstr "Tarte aux myrtilles (cuite)" - -#: ../bushes_classic/init.lua -msgid "Raw Blueberry pie" -msgstr "Tarte aux myrtilles (crue)" - -#: ../bushes_classic/init.lua -msgid "Slice of Blueberry pie" -msgstr "Part de tarte aux myrtilles" - -#: ../bushes_classic/init.lua -msgid "Basket with Raspberry pies" -msgstr "Panier de tartes aux framboises" - -#: ../bushes_classic/init.lua -msgid "Cooked Raspberry pie" -msgstr "Tarte aux framboises (cuite)" - -#: ../bushes_classic/init.lua -msgid "Raspberry" -msgstr "Framboises" - -#: ../bushes_classic/init.lua -msgid "Raspberry Bush" -msgstr "Buisson de framboises" - -#: ../bushes_classic/init.lua -msgid "Raw Raspberry pie" -msgstr "Tarte aux framboises (crue)" - -#: ../bushes_classic/init.lua -msgid "Slice of Raspberry pie" -msgstr "Part de tarts aux framboises" - -#: ../bushes_classic/init.lua -msgid "Basket with Gooseberry pies" -msgstr "Panier de tartes aux groseilles" - -#: ../bushes_classic/init.lua -msgid "Cooked Gooseberry pie" -msgstr "Tarte aux groseilles (cuite)" - -#: ../bushes_classic/init.lua -msgid "Gooseberry" -msgstr "Groseilles" - -#: ../bushes_classic/init.lua -msgid "Gooseberry Bush" -msgstr "Buisson de groseilles" - -#: ../bushes_classic/init.lua -msgid "Raw Gooseberry pie" -msgstr "Tarte aux groseilles (crue)" - -#: ../bushes_classic/init.lua -msgid "Slice of Gooseberry pie" -msgstr "Part de tarte aux groseilles" - -#: ../bushes_classic/init.lua -msgid "Basket with Mixed Berry pies" -msgstr "Panier de tartes aux fruits rouges" - -#: ../bushes_classic/init.lua -msgid "Cooked Mixed Berry pie" -msgstr "Tarte aux fruits rouges (cuite)" - -#: ../bushes_classic/init.lua -msgid "Currently fruitless Bush" -msgstr "Buisson sans fruits pour l'instant" - -#: ../bushes_classic/init.lua -msgid "Mixed Berry" -msgstr "Fruits rouges" - -#: ../bushes_classic/init.lua -msgid "Raw Mixed Berry pie" -msgstr "Tarte aux fruits rouges (crue)" - -#: ../bushes_classic/init.lua -msgid "Slice of Mixed Berry pie" -msgstr "Part de tarte aux fruits rouges" - -#: ../bushes_classic/init.lua -msgid "[Bushes] Loaded." -msgstr "[Bushes] chargé." - -#: ../bushes_classic/nodes.lua -msgid "Basket" -msgstr "Panier" - -#: ../cavestuff/nodes.lua -msgid "Pebble" -msgstr "Caillou" - -#: ../cavestuff/nodes.lua -msgid "Desert Pebble" -msgstr "Caillou du désert" - -#: ../cavestuff/nodes.lua -msgid "Stalactite" -msgstr "Stalactite" - -#: ../dryplants/init.lua -msgid "Sickle" -msgstr "Faucille" - -#: ../dryplants/init.lua -msgid "Cut Grass" -msgstr "Herbe coupée" - -#: ../dryplants/init.lua -msgid "Hay" -msgstr "Foin" - -#: ../dryplants/init.lua -msgid "Short Grass" -msgstr "Herbes courtes" - -#: ../dryplants/juncus.lua -msgid "Juncus" -msgstr "Joncs" - -#: ../dryplants/reed.lua -msgid "Wet Reed" -msgstr "Bloc de roseau humide" - -#: ../dryplants/reed.lua -msgid "Wet Reed Slab" -msgstr "Dalle en roseau humide" - -#: ../dryplants/reed.lua -msgid "Wet Reed Roof" -msgstr "Toit en roseau humide" - -#: ../dryplants/reed.lua -msgid "Wet Reed Roof Corner" -msgstr "Angle de toit en roseau humide" - -#: ../dryplants/reed.lua -msgid "Wet Reed Roof Corner 2" -msgstr "Angle de toit en roseau humide 2" - -#: ../dryplants/reed.lua -msgid "Reed" -msgstr "Roseau" - -#: ../dryplants/reed.lua -msgid "Reed Slab" -msgstr "Dalle en roseau" - -#: ../dryplants/reed.lua -msgid "Reed Roof" -msgstr "Toit en roseau" - -#: ../dryplants/reed.lua -msgid "Reed Roof Corner" -msgstr "Angle de toit en roseau" - -#: ../dryplants/reed.lua -msgid "Reed Roof Corner 2" -msgstr "Angle de toit en roseau 2" - -#: ../dryplants/reedmace.lua -msgid "Reedmace" -msgstr "Roseau" - -#: ../dryplants/reedmace.lua -msgid "Reedmace, height: 1" -msgstr "Roseau, 1 de hauteur" - -#: ../dryplants/reedmace.lua -msgid "Reedmace, height: 2" -msgstr "Roseau, 2 de hauteur" - -#: ../dryplants/reedmace.lua -msgid "Reedmace, height: 3" -msgstr "Roseau, 3 de hauteur" - -#: ../dryplants/reedmace.lua -msgid "Reedmace, height: 3 & Spikes" -msgstr "Roseau, 3 de hauteur avec panicules" - -#: ../ferns/crafting.lua -msgid "Fiddlehead" -msgstr "Crosse de fougère" - -#: ../ferns/crafting.lua -msgid "Roasted Fiddlehead" -msgstr "Crosse de fougère rôtie" - -#: ../ferns/crafting.lua -msgid "Fern Tuber" -msgstr "Tubercule de fougère" - -#: ../ferns/crafting.lua -msgid "Roasted Fern Tuber" -msgstr "Tubercule de fougère rôti" - -#: ../ferns/fern.lua -msgid "Lady-fern (Athyrium)" -msgstr "Fougère (Athyrium)" - -#: ../ferns/gianttreefern.lua ../ferns/treefern.lua -msgid "Tree Fern Crown (Dicksonia)" -msgstr "Fougère en couronne (Dicksonia)" - -#: ../ferns/gianttreefern.lua -msgid "Giant Tree Fern Leaves" -msgstr "Feuilles de fougère géante" - -#: ../ferns/gianttreefern.lua -msgid "Giant Tree Fern Leave End" -msgstr "Feuilles de fougère géante (extrémité)" - -#: ../ferns/gianttreefern.lua -msgid "Giant Fern Trunk" -msgstr "Tronc de fougère géante" - -#: ../ferns/gianttreefern.lua -msgid "Giant Tree Fern Sapling" -msgstr "Pousse de fougère géante" - -#: ../ferns/horsetail.lua -msgid "Young Horsetail (Equisetum)" -msgstr "Pousse de prêle (Equisetum)" - -#: ../ferns/horsetail.lua -msgid "Horsetail (Equisetum)" -msgstr "Prêle (Equisetum)" - -#: ../ferns/treefern.lua -msgid "Fern Trunk (Dicksonia)" -msgstr "Tronc de fougère en couronne (Dicksonia)" - -#: ../ferns/treefern.lua -msgid "Tree Fern Sapling (Dicksonia)" -msgstr "Pousse de fougère en couronne (Dicksonia)" - -#: ../flowers_plus/init.lua -msgid "Waterlily" -msgstr "Nénuphar" - -#: ../flowers_plus/init.lua -msgid "Seaweed" -msgstr "Algues" - -#: ../flowers_plus/init.lua -msgid "Sunflower" -msgstr "Tournesol" - -#: ../flowers_plus/init.lua -msgid "[Flowers] Loaded." -msgstr "[Flowers] chargé." - -#: ../molehills/init.lua -msgid "Mole Hill" -msgstr "Taupinière" - -#: ../molehills/init.lua -msgid "Loaded..." -msgstr "chargé." - -#: ../nature_classic/blossom.lua -msgid "Apple blossoms" -msgstr "Fleurs de pommier" - -#: ../nature_classic/init.lua -msgid "[Nature Classic] loaded!" -msgstr "[Nature Classic] chargé.!" - -#: ../poisonivy/init.lua -msgid "Poison ivy (seedling)" -msgstr "Sumac vénéneux (semis)" - -#: ../poisonivy/init.lua -msgid "Poison ivy (sproutling)" -msgstr "Sumac vénéneux (pousse)" - -#: ../poisonivy/init.lua -msgid "Poison ivy (climbing plant)" -msgstr "Sumac vénéneux (grimpant)" - -#: ../poisonivy/init.lua -msgid "[Poison Ivy] Loaded." -msgstr "[Poison Ivy] chargé." - -#: ../trunks/nodes.lua -msgid "Twig" -msgstr "Brindille" - -#: ../trunks/nodes.lua -msgid "Moss" -msgstr "Mousse" - -#: ../trunks/nodes.lua -msgid "Moss with Fungus" -msgstr "Mousse et champignons" - -#: ../trunks/nodes.lua -msgid "Twigs Block" -msgstr "Bloc de brindilles" - -#: ../trunks/nodes.lua -msgid "Twigs Slab" -msgstr "Dalle en brindilles" - -#: ../trunks/nodes.lua -msgid "Twigs Roof" -msgstr "Toit de brindilles" - -#: ../trunks/nodes.lua -msgid "Twigs Roof Corner 1" -msgstr "Angle de toit de brindilles 1" - -#: ../trunks/nodes.lua -msgid "Twigs Roof Corner 2" -msgstr "Angle de toit de brindilles 2" - -#: ../trunks/nodes.lua -msgid "Root" -msgstr "(racine)" - -#: ../vines/crafts.lua ../vines/vines.lua -msgid "Vines" -msgstr "Plantes grimpantes" - -#: ../vines/functions.lua -msgid "Matured" -msgstr "Extrémité de" - -#: ../vines/init.lua -msgid "[Vines] Loaded!" -msgstr "[Vines] chargé." - -#: ../vines/nodes.lua -msgid "Rope" -msgstr "Corde" - -#: ../vines/shear.lua -msgid "Shears" -msgstr "Cisailles" - -#: ../vines/vines.lua -msgid "Roots" -msgstr "Racines" - -#: ../vines/vines.lua -msgid "Jungle Vines" -msgstr "Lianes" - -#: ../vines/vines.lua -msgid "Willow Vines" -msgstr "Lianes de saule" - -#: ../woodsoils/nodes.lua -msgid "Forest Soil 1" -msgstr "Humus forestier 1" - -#: ../woodsoils/nodes.lua -msgid "Forest Soil 2" -msgstr "Humus forestier 2" - -#: ../woodsoils/nodes.lua -msgid "Forest Soil 3" -msgstr "Humus forestier 3" - -#: ../woodsoils/nodes.lua -msgid "Forest Soil 4" -msgstr "Humus forestier 4" - -#: ../youngtrees/init.lua -msgid "Young Bamboo Tree" -msgstr "Bambou jeune" - -#: ../youngtrees/init.lua -msgid "Young Tree 2 (middle)" -msgstr "Arbuste 2 (milieu)" - -#: ../youngtrees/init.lua -msgid "Young Tree (top)" -msgstr "Arbuste (haut)" - -#: ../youngtrees/init.lua -msgid "Young Tree (middle)" -msgstr "Arbuste (milieu)" - -#: ../youngtrees/init.lua -msgid "Young Tree (bottom)" -msgstr "Arbuste (bas)" diff --git a/plantlife_i18n/locale/pt.po b/plantlife_i18n/locale/pt.po deleted file mode 100644 index 3ef8e22f..00000000 --- a/plantlife_i18n/locale/pt.po +++ /dev/null @@ -1,487 +0,0 @@ -# SOME DESCRIPTIVE TITLE. -# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER -# This file is distributed under the same license as the PACKAGE package. -# FIRST AUTHOR , YEAR. -# -msgid "" -msgstr "" -"Project-Id-Version: \n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2017-08-03 14:07+0200\n" -"PO-Revision-Date: 2017-08-03 14:08+0200\n" -"Language-Team: \n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Generator: Poedit 1.8.12\n" -"Last-Translator: fat115 \n" -"Plural-Forms: nplurals=2; plural=(n != 1);\n" -"Language: pt\n" - -#: ../bushes/init.lua -msgid "Young Tree 2 (bottom)" -msgstr "" - -#: ../bushes/init.lua -msgid "Bush Branches @1" -msgstr "" - -#: ../bushes/init.lua -msgid "Bush Leaves @1" -msgstr "" - -#: ../bushes_classic/cooking.lua -msgid "Sugar" -msgstr "" - -#: ../bushes_classic/init.lua -msgid "Basket with Strawberry pies" -msgstr "" - -#: ../bushes_classic/init.lua -msgid "Cooked Strawberry pie" -msgstr "" - -#: ../bushes_classic/init.lua -msgid "Raw Strawberry pie" -msgstr "" - -#: ../bushes_classic/init.lua -msgid "Slice of Strawberry pie" -msgstr "" - -#: ../bushes_classic/init.lua -msgid "Strawberry" -msgstr "" - -#: ../bushes_classic/init.lua -msgid "Strawberry Bush" -msgstr "" - -#: ../bushes_classic/init.lua -msgid "Basket with Blackberry pies" -msgstr "" - -#: ../bushes_classic/init.lua -msgid "Blackberry" -msgstr "" - -#: ../bushes_classic/init.lua -msgid "Blackberry Bush" -msgstr "" - -#: ../bushes_classic/init.lua -msgid "Cooked Blackberry pie" -msgstr "" - -#: ../bushes_classic/init.lua -msgid "Raw Blackberry pie" -msgstr "" - -#: ../bushes_classic/init.lua -msgid "Slice of Blackberry pie" -msgstr "" - -#: ../bushes_classic/init.lua -msgid "Basket with Blueberry pies" -msgstr "" - -#: ../bushes_classic/init.lua -msgid "Blueberry" -msgstr "" - -#: ../bushes_classic/init.lua -msgid "Blueberry Bush" -msgstr "" - -#: ../bushes_classic/init.lua -msgid "Cooked Blueberry pie" -msgstr "" - -#: ../bushes_classic/init.lua -msgid "Raw Blueberry pie" -msgstr "" - -#: ../bushes_classic/init.lua -msgid "Slice of Blueberry pie" -msgstr "" - -#: ../bushes_classic/init.lua -msgid "Basket with Raspberry pies" -msgstr "" - -#: ../bushes_classic/init.lua -msgid "Cooked Raspberry pie" -msgstr "" - -#: ../bushes_classic/init.lua -msgid "Raspberry" -msgstr "" - -#: ../bushes_classic/init.lua -msgid "Raspberry Bush" -msgstr "" - -#: ../bushes_classic/init.lua -msgid "Raw Raspberry pie" -msgstr "" - -#: ../bushes_classic/init.lua -msgid "Slice of Raspberry pie" -msgstr "" - -#: ../bushes_classic/init.lua -msgid "Basket with Gooseberry pies" -msgstr "" - -#: ../bushes_classic/init.lua -msgid "Cooked Gooseberry pie" -msgstr "" - -#: ../bushes_classic/init.lua -msgid "Gooseberry" -msgstr "" - -#: ../bushes_classic/init.lua -msgid "Gooseberry Bush" -msgstr "" - -#: ../bushes_classic/init.lua -msgid "Raw Gooseberry pie" -msgstr "" - -#: ../bushes_classic/init.lua -msgid "Slice of Gooseberry pie" -msgstr "" - -#: ../bushes_classic/init.lua -msgid "Basket with Mixed Berry pies" -msgstr "" - -#: ../bushes_classic/init.lua -msgid "Cooked Mixed Berry pie" -msgstr "" - -#: ../bushes_classic/init.lua -msgid "Currently fruitless Bush" -msgstr "" - -#: ../bushes_classic/init.lua -msgid "Mixed Berry" -msgstr "" - -#: ../bushes_classic/init.lua -msgid "Raw Mixed Berry pie" -msgstr "" - -#: ../bushes_classic/init.lua -msgid "Slice of Mixed Berry pie" -msgstr "" - -#: ../bushes_classic/init.lua -msgid "[Bushes] Loaded." -msgstr "" - -#: ../bushes_classic/nodes.lua -msgid "Basket" -msgstr "" - -#: ../cavestuff/nodes.lua -msgid "Pebble" -msgstr "" - -#: ../cavestuff/nodes.lua -msgid "Desert Pebble" -msgstr "" - -#: ../cavestuff/nodes.lua -msgid "Stalactite" -msgstr "" - -#: ../dryplants/init.lua -msgid "Sickle" -msgstr "" - -#: ../dryplants/init.lua -msgid "Cut Grass" -msgstr "" - -#: ../dryplants/init.lua -msgid "Hay" -msgstr "" - -#: ../dryplants/init.lua -msgid "Short Grass" -msgstr "" - -#: ../dryplants/juncus.lua -msgid "Juncus" -msgstr "" - -#: ../dryplants/reed.lua -msgid "Wet Reed" -msgstr "" - -#: ../dryplants/reed.lua -msgid "Wet Reed Slab" -msgstr "" - -#: ../dryplants/reed.lua -msgid "Wet Reed Roof" -msgstr "" - -#: ../dryplants/reed.lua -msgid "Wet Reed Roof Corner" -msgstr "" - -#: ../dryplants/reed.lua -msgid "Wet Reed Roof Corner 2" -msgstr "" - -#: ../dryplants/reed.lua -msgid "Reed" -msgstr "" - -#: ../dryplants/reed.lua -msgid "Reed Slab" -msgstr "" - -#: ../dryplants/reed.lua -msgid "Reed Roof" -msgstr "" - -#: ../dryplants/reed.lua -msgid "Reed Roof Corner" -msgstr "" - -#: ../dryplants/reed.lua -msgid "Reed Roof Corner 2" -msgstr "" - -#: ../dryplants/reedmace.lua -msgid "Reedmace" -msgstr "" - -#: ../dryplants/reedmace.lua -msgid "Reedmace, height: 1" -msgstr "" - -#: ../dryplants/reedmace.lua -msgid "Reedmace, height: 2" -msgstr "" - -#: ../dryplants/reedmace.lua -msgid "Reedmace, height: 3" -msgstr "" - -#: ../dryplants/reedmace.lua -msgid "Reedmace, height: 3 & Spikes" -msgstr "" - -#: ../ferns/crafting.lua -msgid "Fiddlehead" -msgstr "" - -#: ../ferns/crafting.lua -msgid "Roasted Fiddlehead" -msgstr "" - -#: ../ferns/crafting.lua -msgid "Fern Tuber" -msgstr "" - -#: ../ferns/crafting.lua -msgid "Roasted Fern Tuber" -msgstr "" - -#: ../ferns/fern.lua -msgid "Lady-fern (Athyrium)" -msgstr "" - -#: ../ferns/gianttreefern.lua ../ferns/treefern.lua -msgid "Tree Fern Crown (Dicksonia)" -msgstr "" - -#: ../ferns/gianttreefern.lua -msgid "Giant Tree Fern Leaves" -msgstr "" - -#: ../ferns/gianttreefern.lua -msgid "Giant Tree Fern Leave End" -msgstr "" - -#: ../ferns/gianttreefern.lua -msgid "Giant Fern Trunk" -msgstr "" - -#: ../ferns/gianttreefern.lua -msgid "Giant Tree Fern Sapling" -msgstr "" - -#: ../ferns/horsetail.lua -msgid "Young Horsetail (Equisetum)" -msgstr "" - -#: ../ferns/horsetail.lua -msgid "Horsetail (Equisetum)" -msgstr "" - -#: ../ferns/treefern.lua -msgid "Fern Trunk (Dicksonia)" -msgstr "" - -#: ../ferns/treefern.lua -msgid "Tree Fern Sapling (Dicksonia)" -msgstr "" - -#: ../flowers_plus/init.lua -msgid "Waterlily" -msgstr "" - -#: ../flowers_plus/init.lua -msgid "Seaweed" -msgstr "" - -#: ../flowers_plus/init.lua -msgid "Sunflower" -msgstr "" - -#: ../flowers_plus/init.lua -msgid "[Flowers] Loaded." -msgstr "" - -#: ../molehills/init.lua -msgid "Mole Hill" -msgstr "" - -#: ../molehills/init.lua -msgid "Loaded..." -msgstr "" - -#: ../nature_classic/blossom.lua -msgid "Apple blossoms" -msgstr "" - -#: ../nature_classic/init.lua -msgid "[Nature Classic] loaded!" -msgstr "" - -#: ../poisonivy/init.lua -msgid "Poison ivy (seedling)" -msgstr "Hera venenosa (plantilha)" - -#: ../poisonivy/init.lua -msgid "Poison ivy (sproutling)" -msgstr "Hera venenosa (brotando)" - -#: ../poisonivy/init.lua -msgid "Poison ivy (climbing plant)" -msgstr "Hera venenosa (planta trepadeira)" - -#: ../poisonivy/init.lua -msgid "[Poison Ivy] Loaded." -msgstr "[Poison Ivy] Carregado" - -#: ../trunks/nodes.lua -msgid "Twig" -msgstr "" - -#: ../trunks/nodes.lua -msgid "Moss" -msgstr "" - -#: ../trunks/nodes.lua -msgid "Moss with Fungus" -msgstr "" - -#: ../trunks/nodes.lua -msgid "Twigs Block" -msgstr "" - -#: ../trunks/nodes.lua -msgid "Twigs Slab" -msgstr "" - -#: ../trunks/nodes.lua -msgid "Twigs Roof" -msgstr "" - -#: ../trunks/nodes.lua -msgid "Twigs Roof Corner 1" -msgstr "" - -#: ../trunks/nodes.lua -msgid "Twigs Roof Corner 2" -msgstr "" - -#: ../trunks/nodes.lua -msgid "Root" -msgstr "" - -#: ../vines/crafts.lua ../vines/vines.lua -msgid "Vines" -msgstr "" - -#: ../vines/functions.lua -msgid "Matured" -msgstr "" - -#: ../vines/init.lua -msgid "[Vines] Loaded!" -msgstr "" - -#: ../vines/nodes.lua -msgid "Rope" -msgstr "" - -#: ../vines/shear.lua -msgid "Shears" -msgstr "" - -#: ../vines/vines.lua -msgid "Roots" -msgstr "" - -#: ../vines/vines.lua -msgid "Jungle Vines" -msgstr "" - -#: ../vines/vines.lua -msgid "Willow Vines" -msgstr "" - -#: ../woodsoils/nodes.lua -msgid "Forest Soil 1" -msgstr "" - -#: ../woodsoils/nodes.lua -msgid "Forest Soil 2" -msgstr "" - -#: ../woodsoils/nodes.lua -msgid "Forest Soil 3" -msgstr "" - -#: ../woodsoils/nodes.lua -msgid "Forest Soil 4" -msgstr "" - -#: ../youngtrees/init.lua -msgid "Young Bamboo Tree" -msgstr "" - -#: ../youngtrees/init.lua -msgid "Young Tree 2 (middle)" -msgstr "" - -#: ../youngtrees/init.lua -msgid "Young Tree (top)" -msgstr "" - -#: ../youngtrees/init.lua -msgid "Young Tree (middle)" -msgstr "" - -#: ../youngtrees/init.lua -msgid "Young Tree (bottom)" -msgstr "" diff --git a/plantlife_i18n/locale/template.pot b/plantlife_i18n/locale/template.pot deleted file mode 100644 index ef7027c5..00000000 --- a/plantlife_i18n/locale/template.pot +++ /dev/null @@ -1,486 +0,0 @@ -# SOME DESCRIPTIVE TITLE. -# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER -# This file is distributed under the same license as the PACKAGE package. -# FIRST AUTHOR , YEAR. -# -#, fuzzy -msgid "" -msgstr "" -"Project-Id-Version: PACKAGE VERSION\n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2017-08-03 11:09+0200\n" -"PO-Revision-Date: YEAR-MO-DA HO:MI+ZONE\n" -"Last-Translator: FULL NAME \n" -"Language-Team: LANGUAGE \n" -"Language: \n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=CHARSET\n" -"Content-Transfer-Encoding: 8bit\n" - -#: ../bushes/init.lua -msgid "Young Tree 2 (bottom)" -msgstr "" - -#: ../bushes/init.lua -msgid "Bush Branches @1" -msgstr "" - -#: ../bushes/init.lua -msgid "Bush Leaves @1" -msgstr "" - -#: ../bushes_classic/cooking.lua -msgid "Sugar" -msgstr "" - -#: ../bushes_classic/init.lua -msgid "Basket with Strawberry pies" -msgstr "" - -#: ../bushes_classic/init.lua -msgid "Cooked Strawberry pie" -msgstr "" - -#: ../bushes_classic/init.lua -msgid "Raw Strawberry pie" -msgstr "" - -#: ../bushes_classic/init.lua -msgid "Slice of Strawberry pie" -msgstr "" - -#: ../bushes_classic/init.lua -msgid "Strawberry" -msgstr "" - -#: ../bushes_classic/init.lua -msgid "Strawberry Bush" -msgstr "" - -#: ../bushes_classic/init.lua -msgid "Basket with Blackberry pies" -msgstr "" - -#: ../bushes_classic/init.lua -msgid "Blackberry" -msgstr "" - -#: ../bushes_classic/init.lua -msgid "Blackberry Bush" -msgstr "" - -#: ../bushes_classic/init.lua -msgid "Cooked Blackberry pie" -msgstr "" - -#: ../bushes_classic/init.lua -msgid "Raw Blackberry pie" -msgstr "" - -#: ../bushes_classic/init.lua -msgid "Slice of Blackberry pie" -msgstr "" - -#: ../bushes_classic/init.lua -msgid "Basket with Blueberry pies" -msgstr "" - -#: ../bushes_classic/init.lua -msgid "Blueberry" -msgstr "" - -#: ../bushes_classic/init.lua -msgid "Blueberry Bush" -msgstr "" - -#: ../bushes_classic/init.lua -msgid "Cooked Blueberry pie" -msgstr "" - -#: ../bushes_classic/init.lua -msgid "Raw Blueberry pie" -msgstr "" - -#: ../bushes_classic/init.lua -msgid "Slice of Blueberry pie" -msgstr "" - -#: ../bushes_classic/init.lua -msgid "Basket with Raspberry pies" -msgstr "" - -#: ../bushes_classic/init.lua -msgid "Cooked Raspberry pie" -msgstr "" - -#: ../bushes_classic/init.lua -msgid "Raspberry" -msgstr "" - -#: ../bushes_classic/init.lua -msgid "Raspberry Bush" -msgstr "" - -#: ../bushes_classic/init.lua -msgid "Raw Raspberry pie" -msgstr "" - -#: ../bushes_classic/init.lua -msgid "Slice of Raspberry pie" -msgstr "" - -#: ../bushes_classic/init.lua -msgid "Basket with Gooseberry pies" -msgstr "" - -#: ../bushes_classic/init.lua -msgid "Cooked Gooseberry pie" -msgstr "" - -#: ../bushes_classic/init.lua -msgid "Gooseberry" -msgstr "" - -#: ../bushes_classic/init.lua -msgid "Gooseberry Bush" -msgstr "" - -#: ../bushes_classic/init.lua -msgid "Raw Gooseberry pie" -msgstr "" - -#: ../bushes_classic/init.lua -msgid "Slice of Gooseberry pie" -msgstr "" - -#: ../bushes_classic/init.lua -msgid "Basket with Mixed Berry pies" -msgstr "" - -#: ../bushes_classic/init.lua -msgid "Cooked Mixed Berry pie" -msgstr "" - -#: ../bushes_classic/init.lua -msgid "Currently fruitless Bush" -msgstr "" - -#: ../bushes_classic/init.lua -msgid "Mixed Berry" -msgstr "" - -#: ../bushes_classic/init.lua -msgid "Raw Mixed Berry pie" -msgstr "" - -#: ../bushes_classic/init.lua -msgid "Slice of Mixed Berry pie" -msgstr "" - -#: ../bushes_classic/init.lua -msgid "[Bushes] Loaded." -msgstr "" - -#: ../bushes_classic/nodes.lua -msgid "Basket" -msgstr "" - -#: ../cavestuff/nodes.lua -msgid "Pebble" -msgstr "" - -#: ../cavestuff/nodes.lua -msgid "Desert Pebble" -msgstr "" - -#: ../cavestuff/nodes.lua -msgid "Stalactite" -msgstr "" - -#: ../dryplants/init.lua -msgid "Sickle" -msgstr "" - -#: ../dryplants/init.lua -msgid "Cut Grass" -msgstr "" - -#: ../dryplants/init.lua -msgid "Hay" -msgstr "" - -#: ../dryplants/init.lua -msgid "Short Grass" -msgstr "" - -#: ../dryplants/juncus.lua -msgid "Juncus" -msgstr "" - -#: ../dryplants/reed.lua -msgid "Wet Reed" -msgstr "" - -#: ../dryplants/reed.lua -msgid "Wet Reed Slab" -msgstr "" - -#: ../dryplants/reed.lua -msgid "Wet Reed Roof" -msgstr "" - -#: ../dryplants/reed.lua -msgid "Wet Reed Roof Corner" -msgstr "" - -#: ../dryplants/reed.lua -msgid "Wet Reed Roof Corner 2" -msgstr "" - -#: ../dryplants/reed.lua -msgid "Reed" -msgstr "" - -#: ../dryplants/reed.lua -msgid "Reed Slab" -msgstr "" - -#: ../dryplants/reed.lua -msgid "Reed Roof" -msgstr "" - -#: ../dryplants/reed.lua -msgid "Reed Roof Corner" -msgstr "" - -#: ../dryplants/reed.lua -msgid "Reed Roof Corner 2" -msgstr "" - -#: ../dryplants/reedmace.lua -msgid "Reedmace" -msgstr "" - -#: ../dryplants/reedmace.lua -msgid "Reedmace, height: 1" -msgstr "" - -#: ../dryplants/reedmace.lua -msgid "Reedmace, height: 2" -msgstr "" - -#: ../dryplants/reedmace.lua -msgid "Reedmace, height: 3" -msgstr "" - -#: ../dryplants/reedmace.lua -msgid "Reedmace, height: 3 & Spikes" -msgstr "" - -#: ../ferns/crafting.lua -msgid "Fiddlehead" -msgstr "" - -#: ../ferns/crafting.lua -msgid "Roasted Fiddlehead" -msgstr "" - -#: ../ferns/crafting.lua -msgid "Fern Tuber" -msgstr "" - -#: ../ferns/crafting.lua -msgid "Roasted Fern Tuber" -msgstr "" - -#: ../ferns/fern.lua -msgid "Lady-fern (Athyrium)" -msgstr "" - -#: ../ferns/gianttreefern.lua ../ferns/treefern.lua -msgid "Tree Fern Crown (Dicksonia)" -msgstr "" - -#: ../ferns/gianttreefern.lua -msgid "Giant Tree Fern Leaves" -msgstr "" - -#: ../ferns/gianttreefern.lua -msgid "Giant Tree Fern Leave End" -msgstr "" - -#: ../ferns/gianttreefern.lua -msgid "Giant Fern Trunk" -msgstr "" - -#: ../ferns/gianttreefern.lua -msgid "Giant Tree Fern Sapling" -msgstr "" - -#: ../ferns/horsetail.lua -msgid "Young Horsetail (Equisetum)" -msgstr "" - -#: ../ferns/horsetail.lua -msgid "Horsetail (Equisetum)" -msgstr "" - -#: ../ferns/treefern.lua -msgid "Fern Trunk (Dicksonia)" -msgstr "" - -#: ../ferns/treefern.lua -msgid "Tree Fern Sapling (Dicksonia)" -msgstr "" - -#: ../flowers_plus/init.lua -msgid "Waterlily" -msgstr "" - -#: ../flowers_plus/init.lua -msgid "Seaweed" -msgstr "" - -#: ../flowers_plus/init.lua -msgid "Sunflower" -msgstr "" - -#: ../flowers_plus/init.lua -msgid "[Flowers] Loaded." -msgstr "" - -#: ../molehills/init.lua -msgid "Mole Hill" -msgstr "" - -#: ../molehills/init.lua -msgid "Loaded..." -msgstr "" - -#: ../nature_classic/blossom.lua -msgid "Apple blossoms" -msgstr "" - -#: ../nature_classic/init.lua -msgid "[Nature Classic] loaded!" -msgstr "" - -#: ../poisonivy/init.lua -msgid "Poison ivy (seedling)" -msgstr "" - -#: ../poisonivy/init.lua -msgid "Poison ivy (sproutling)" -msgstr "" - -#: ../poisonivy/init.lua -msgid "Poison ivy (climbing plant)" -msgstr "" - -#: ../poisonivy/init.lua -msgid "[Poison Ivy] Loaded." -msgstr "" - -#: ../trunks/nodes.lua -msgid "Twig" -msgstr "" - -#: ../trunks/nodes.lua -msgid "Moss" -msgstr "" - -#: ../trunks/nodes.lua -msgid "Moss with Fungus" -msgstr "" - -#: ../trunks/nodes.lua -msgid "Twigs Block" -msgstr "" - -#: ../trunks/nodes.lua -msgid "Twigs Slab" -msgstr "" - -#: ../trunks/nodes.lua -msgid "Twigs Roof" -msgstr "" - -#: ../trunks/nodes.lua -msgid "Twigs Roof Corner 1" -msgstr "" - -#: ../trunks/nodes.lua -msgid "Twigs Roof Corner 2" -msgstr "" - -#: ../trunks/nodes.lua -msgid "Root" -msgstr "" - -#: ../vines/crafts.lua ../vines/vines.lua -msgid "Vines" -msgstr "" - -#: ../vines/functions.lua -msgid "Matured" -msgstr "" - -#: ../vines/init.lua -msgid "[Vines] Loaded!" -msgstr "" - -#: ../vines/nodes.lua -msgid "Rope" -msgstr "" - -#: ../vines/shear.lua -msgid "Shears" -msgstr "" - -#: ../vines/vines.lua -msgid "Roots" -msgstr "" - -#: ../vines/vines.lua -msgid "Jungle Vines" -msgstr "" - -#: ../vines/vines.lua -msgid "Willow Vines" -msgstr "" - -#: ../woodsoils/nodes.lua -msgid "Forest Soil 1" -msgstr "" - -#: ../woodsoils/nodes.lua -msgid "Forest Soil 2" -msgstr "" - -#: ../woodsoils/nodes.lua -msgid "Forest Soil 3" -msgstr "" - -#: ../woodsoils/nodes.lua -msgid "Forest Soil 4" -msgstr "" - -#: ../youngtrees/init.lua -msgid "Young Bamboo Tree" -msgstr "" - -#: ../youngtrees/init.lua -msgid "Young Tree 2 (middle)" -msgstr "" - -#: ../youngtrees/init.lua -msgid "Young Tree (top)" -msgstr "" - -#: ../youngtrees/init.lua -msgid "Young Tree (middle)" -msgstr "" - -#: ../youngtrees/init.lua -msgid "Young Tree (bottom)" -msgstr "" diff --git a/plantlife_i18n/locale/tr.po b/plantlife_i18n/locale/tr.po deleted file mode 100644 index db4a919d..00000000 --- a/plantlife_i18n/locale/tr.po +++ /dev/null @@ -1,489 +0,0 @@ -# SOME DESCRIPTIVE TITLE. -# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER -# This file is distributed under the same license as the PACKAGE package. -# FIRST AUTHOR , YEAR. -# -msgid "" -msgstr "" -"Project-Id-Version: \n" -"Report-Msgid-Bugs-To: \n" -"POT-Creation-Date: 2017-08-03 11:43+0200\n" -"PO-Revision-Date: 2017-08-03 11:51+0200\n" -"Language-Team: \n" -"MIME-Version: 1.0\n" -"Content-Type: text/plain; charset=UTF-8\n" -"Content-Transfer-Encoding: 8bit\n" -"X-Generator: Poedit 1.8.12\n" -"Last-Translator: mahmutelmas06@hotmail.com\n" -"Plural-Forms: nplurals=2; plural=(n != 1);\n" -"Language: tr\n" - -#: ../bushes/init.lua -msgid "Young Tree 2 (bottom)" -msgstr "" - -#: ../bushes/init.lua -msgid "Bush Branches @1" -msgstr "" - -#: ../bushes/init.lua -msgid "Bush Leaves @1" -msgstr "" - -#: ../bushes_classic/cooking.lua -msgid "Sugar" -msgstr "Şeker" - -#: ../bushes_classic/init.lua -msgid "Basket with Strawberry pies" -msgstr "Çilekli pasta sepeti" - -#: ../bushes_classic/init.lua -msgid "Cooked Strawberry pie" -msgstr "Pişmiş çilekli pasta " - -#: ../bushes_classic/init.lua -msgid "Raw Strawberry pie" -msgstr "Çilekli çiğ pasta" - -#: ../bushes_classic/init.lua -msgid "Slice of Strawberry pie" -msgstr "Çilekli pasta dilimi" - -#: ../bushes_classic/init.lua -msgid "Strawberry" -msgstr "Çilek" - -#: ../bushes_classic/init.lua -msgid "Strawberry Bush" -msgstr "Çilek fidanı" - -#: ../bushes_classic/init.lua -msgid "Basket with Blackberry pies" -msgstr "Böğürtlenli pasta sepeti" - -#: ../bushes_classic/init.lua -msgid "Blackberry" -msgstr "Böğürtlen" - -#: ../bushes_classic/init.lua -msgid "Blackberry Bush" -msgstr "Böğürtlen fidanı" - -#: ../bushes_classic/init.lua -msgid "Cooked Blackberry pie" -msgstr "Pişmiş böğürtlenli pasta" - -#: ../bushes_classic/init.lua -msgid "Raw Blackberry pie" -msgstr "Böğürtlenli çiğ pasta" - -#: ../bushes_classic/init.lua -msgid "Slice of Blackberry pie" -msgstr "Böğürtlenli pasta dilimi" - -#: ../bushes_classic/init.lua -msgid "Basket with Blueberry pies" -msgstr "Yaban mersini pastalı sepet" - -#: ../bushes_classic/init.lua -msgid "Blueberry" -msgstr "Yaban mersini" - -#: ../bushes_classic/init.lua -msgid "Blueberry Bush" -msgstr "Yaban mersini fidanı" - -#: ../bushes_classic/init.lua -msgid "Cooked Blueberry pie" -msgstr "Pişmiş yaban mersinli pasta" - -#: ../bushes_classic/init.lua -msgid "Raw Blueberry pie" -msgstr "Yaban mersinli çiğ pasta" - -#: ../bushes_classic/init.lua -msgid "Slice of Blueberry pie" -msgstr "Yaban mersinli pasta dilimi" - -#: ../bushes_classic/init.lua -msgid "Basket with Raspberry pies" -msgstr "Ahududulu pasta sepeti" - -#: ../bushes_classic/init.lua -msgid "Cooked Raspberry pie" -msgstr "Pişmiş ahududulu pasta" - -#: ../bushes_classic/init.lua -msgid "Raspberry" -msgstr "Ahududu" - -#: ../bushes_classic/init.lua -msgid "Raspberry Bush" -msgstr "Ahududu fidanı" - -#: ../bushes_classic/init.lua -msgid "Raw Raspberry pie" -msgstr "Ahududulu çiğ pasta" - -#: ../bushes_classic/init.lua -msgid "Slice of Raspberry pie" -msgstr "Ahududulu pasta dilimi" - -#: ../bushes_classic/init.lua -msgid "Basket with Gooseberry pies" -msgstr "Bektaşi üzümlü pasta sepeti" - -#: ../bushes_classic/init.lua -msgid "Cooked Gooseberry pie" -msgstr "Pişmiş bektaşi üzümlü pasta" - -#: ../bushes_classic/init.lua -msgid "Gooseberry" -msgstr "Bektaşi üzümü" - -#: ../bushes_classic/init.lua -msgid "Gooseberry Bush" -msgstr "Bektaşi üzümü fidanı" - -#: ../bushes_classic/init.lua -msgid "Raw Gooseberry pie" -msgstr "Bektaşi üzümlü çiğ pasta" - -#: ../bushes_classic/init.lua -msgid "Slice of Gooseberry pie" -msgstr "Bektaşi üzümlü pasta dilimi" - -#: ../bushes_classic/init.lua -msgid "Basket with Mixed Berry pies" -msgstr "Dutlu pasta sepeti" - -#: ../bushes_classic/init.lua -msgid "Cooked Mixed Berry pie" -msgstr "Pişmiş dutlu pasta" - -#: ../bushes_classic/init.lua -#, fuzzy -msgid "Currently fruitless Bush" -msgstr "Fidanı şu anda meyvesiz" - -#: ../bushes_classic/init.lua -msgid "Mixed Berry" -msgstr "Dut" - -#: ../bushes_classic/init.lua -msgid "Raw Mixed Berry pie" -msgstr "Dutlu çiğ pasta" - -#: ../bushes_classic/init.lua -msgid "Slice of Mixed Berry pie" -msgstr "Dutlu pasta dilimi" - -#: ../bushes_classic/init.lua -msgid "[Bushes] Loaded." -msgstr "[Bushes] yüklendi." - -#: ../bushes_classic/nodes.lua -msgid "Basket" -msgstr "Sepet" - -#: ../cavestuff/nodes.lua -msgid "Pebble" -msgstr "" - -#: ../cavestuff/nodes.lua -msgid "Desert Pebble" -msgstr "" - -#: ../cavestuff/nodes.lua -msgid "Stalactite" -msgstr "" - -#: ../dryplants/init.lua -msgid "Sickle" -msgstr "" - -#: ../dryplants/init.lua -msgid "Cut Grass" -msgstr "" - -#: ../dryplants/init.lua -msgid "Hay" -msgstr "" - -#: ../dryplants/init.lua -msgid "Short Grass" -msgstr "" - -#: ../dryplants/juncus.lua -msgid "Juncus" -msgstr "" - -#: ../dryplants/reed.lua -msgid "Wet Reed" -msgstr "" - -#: ../dryplants/reed.lua -msgid "Wet Reed Slab" -msgstr "" - -#: ../dryplants/reed.lua -msgid "Wet Reed Roof" -msgstr "" - -#: ../dryplants/reed.lua -msgid "Wet Reed Roof Corner" -msgstr "" - -#: ../dryplants/reed.lua -msgid "Wet Reed Roof Corner 2" -msgstr "" - -#: ../dryplants/reed.lua -msgid "Reed" -msgstr "" - -#: ../dryplants/reed.lua -msgid "Reed Slab" -msgstr "" - -#: ../dryplants/reed.lua -msgid "Reed Roof" -msgstr "" - -#: ../dryplants/reed.lua -msgid "Reed Roof Corner" -msgstr "" - -#: ../dryplants/reed.lua -msgid "Reed Roof Corner 2" -msgstr "" - -#: ../dryplants/reedmace.lua -msgid "Reedmace" -msgstr "" - -#: ../dryplants/reedmace.lua -msgid "Reedmace, height: 1" -msgstr "" - -#: ../dryplants/reedmace.lua -msgid "Reedmace, height: 2" -msgstr "" - -#: ../dryplants/reedmace.lua -msgid "Reedmace, height: 3" -msgstr "" - -#: ../dryplants/reedmace.lua -msgid "Reedmace, height: 3 & Spikes" -msgstr "" - -#: ../ferns/crafting.lua -msgid "Fiddlehead" -msgstr "" - -#: ../ferns/crafting.lua -msgid "Roasted Fiddlehead" -msgstr "" - -#: ../ferns/crafting.lua -msgid "Fern Tuber" -msgstr "" - -#: ../ferns/crafting.lua -msgid "Roasted Fern Tuber" -msgstr "" - -#: ../ferns/fern.lua -msgid "Lady-fern (Athyrium)" -msgstr "" - -#: ../ferns/gianttreefern.lua ../ferns/treefern.lua -msgid "Tree Fern Crown (Dicksonia)" -msgstr "" - -#: ../ferns/gianttreefern.lua -msgid "Giant Tree Fern Leaves" -msgstr "" - -#: ../ferns/gianttreefern.lua -msgid "Giant Tree Fern Leave End" -msgstr "" - -#: ../ferns/gianttreefern.lua -msgid "Giant Fern Trunk" -msgstr "" - -#: ../ferns/gianttreefern.lua -msgid "Giant Tree Fern Sapling" -msgstr "" - -#: ../ferns/horsetail.lua -msgid "Young Horsetail (Equisetum)" -msgstr "" - -#: ../ferns/horsetail.lua -msgid "Horsetail (Equisetum)" -msgstr "" - -#: ../ferns/treefern.lua -msgid "Fern Trunk (Dicksonia)" -msgstr "" - -#: ../ferns/treefern.lua -msgid "Tree Fern Sapling (Dicksonia)" -msgstr "" - -#: ../flowers_plus/init.lua -msgid "Waterlily" -msgstr "Nilüfer" - -#: ../flowers_plus/init.lua -msgid "Seaweed" -msgstr "Deniz yosunu" - -#: ../flowers_plus/init.lua -#, fuzzy -msgid "Sunflower" -msgstr "Ayçiçeği" - -#: ../flowers_plus/init.lua -msgid "[Flowers] Loaded." -msgstr "[Flowers] yüklendi." - -#: ../molehills/init.lua -msgid "Mole Hill" -msgstr "" - -#: ../molehills/init.lua -msgid "Loaded..." -msgstr "" - -#: ../nature_classic/blossom.lua -msgid "Apple blossoms" -msgstr "" - -#: ../nature_classic/init.lua -msgid "[Nature Classic] loaded!" -msgstr "" - -#: ../poisonivy/init.lua -msgid "Poison ivy (seedling)" -msgstr "Sarmaşık (Fidan)" - -#: ../poisonivy/init.lua -msgid "Poison ivy (sproutling)" -msgstr "Sarmaşık (Filiz)" - -#: ../poisonivy/init.lua -msgid "Poison ivy (climbing plant)" -msgstr "Sarmaşık (Dolanan)" - -#: ../poisonivy/init.lua -msgid "[Poison Ivy] Loaded." -msgstr "[Poison Ivy] yüklendi." - -#: ../trunks/nodes.lua -msgid "Twig" -msgstr "" - -#: ../trunks/nodes.lua -msgid "Moss" -msgstr "" - -#: ../trunks/nodes.lua -msgid "Moss with Fungus" -msgstr "" - -#: ../trunks/nodes.lua -msgid "Twigs Block" -msgstr "" - -#: ../trunks/nodes.lua -msgid "Twigs Slab" -msgstr "" - -#: ../trunks/nodes.lua -msgid "Twigs Roof" -msgstr "" - -#: ../trunks/nodes.lua -msgid "Twigs Roof Corner 1" -msgstr "" - -#: ../trunks/nodes.lua -msgid "Twigs Roof Corner 2" -msgstr "" - -#: ../trunks/nodes.lua -msgid "Root" -msgstr "" - -#: ../vines/crafts.lua ../vines/vines.lua -msgid "Vines" -msgstr "" - -#: ../vines/functions.lua -msgid "Matured" -msgstr "" - -#: ../vines/init.lua -msgid "[Vines] Loaded!" -msgstr "" - -#: ../vines/nodes.lua -msgid "Rope" -msgstr "" - -#: ../vines/shear.lua -msgid "Shears" -msgstr "" - -#: ../vines/vines.lua -msgid "Roots" -msgstr "" - -#: ../vines/vines.lua -msgid "Jungle Vines" -msgstr "" - -#: ../vines/vines.lua -msgid "Willow Vines" -msgstr "" - -#: ../woodsoils/nodes.lua -msgid "Forest Soil 1" -msgstr "" - -#: ../woodsoils/nodes.lua -msgid "Forest Soil 2" -msgstr "" - -#: ../woodsoils/nodes.lua -msgid "Forest Soil 3" -msgstr "" - -#: ../woodsoils/nodes.lua -msgid "Forest Soil 4" -msgstr "" - -#: ../youngtrees/init.lua -msgid "Young Bamboo Tree" -msgstr "" - -#: ../youngtrees/init.lua -msgid "Young Tree 2 (middle)" -msgstr "" - -#: ../youngtrees/init.lua -msgid "Young Tree (top)" -msgstr "" - -#: ../youngtrees/init.lua -msgid "Young Tree (middle)" -msgstr "" - -#: ../youngtrees/init.lua -msgid "Young Tree (bottom)" -msgstr "" diff --git a/plantlife_i18n/tools/updatepo.sh b/plantlife_i18n/tools/updatepo.sh deleted file mode 100755 index 52de9908..00000000 --- a/plantlife_i18n/tools/updatepo.sh +++ /dev/null @@ -1,24 +0,0 @@ -#! /bin/bash - -# To create a new translation: -# msginit --locale=ll_CC -o locale/ll_CC.po -i locale/template.pot - -cd "$(dirname "${BASH_SOURCE[0]}")/.."; - -# Extract translatable strings. -xgettext --from-code=UTF-8 \ - --language=Lua \ - --sort-by-file \ - --keyword=S \ - --keyword=NS:1,2 \ - --keyword=N_ \ - --add-comments='Translators:' \ - --add-location=file \ - -o locale/template.pot \ - $(find .. -name '*.lua') - -# Update translations. -find locale -name '*.po' | while read -r file; do - echo $file - msgmerge --update $file locale/template.pot; -done diff --git a/poisonivy/depends.txt b/poisonivy/depends.txt deleted file mode 100644 index 803e7c84..00000000 --- a/poisonivy/depends.txt +++ /dev/null @@ -1,2 +0,0 @@ -biome_lib -plantlife_i18n diff --git a/poisonivy/init.lua b/poisonivy/init.lua index af82b0ca..ae302a5a 100644 --- a/poisonivy/init.lua +++ b/poisonivy/init.lua @@ -2,7 +2,7 @@ -- Last revision: 2013-01-24 -- support for i18n -local S = plantlife_i18n.gettext +local S = minetest.get_translator("poisonivy") local SPAWN_DELAY = 1000 local SPAWN_CHANCE = 200 @@ -101,4 +101,4 @@ biome_lib:grow_plants({ ground_nodes = {"default:dirt_with_grass"} }) -print(S("[Poison Ivy] Loaded.")) +print("[Poison Ivy] Loaded.") diff --git a/poisonivy/locale/poisonivy.de.tr b/poisonivy/locale/poisonivy.de.tr new file mode 100644 index 00000000..85b9f131 --- /dev/null +++ b/poisonivy/locale/poisonivy.de.tr @@ -0,0 +1,12 @@ +# textdomain: poisonivy + +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# Xanthin, 2017. +# + +Poison ivy (seedling)=Giftefeu (Saemling) +Poison ivy (sproutling)=Giftefeu (Sproessling) +Poison ivy (climbing plant)=Giftefeu (Kletterpflanze) +[Poison Ivy] Loaded.=[Poison Ivy] Geladen. diff --git a/poisonivy/locale/poisonivy.es.tr b/poisonivy/locale/poisonivy.es.tr new file mode 100644 index 00000000..19aaa3fd --- /dev/null +++ b/poisonivy/locale/poisonivy.es.tr @@ -0,0 +1,12 @@ +# textdomain: poisonivy + +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# Carlos Barraza , 2017. +# + +Poison ivy (seedling)=Hiedra venenosa (retoño) +Poison ivy (sproutling)=Hiedra venenosa (brotes) +Poison ivy (climbing plant)=Hiedra venenosa (planta trepadora) +[Poison Ivy] Loaded.=[Poison Ivy] Cargado. diff --git a/poisonivy/locale/poisonivy.fr.tr b/poisonivy/locale/poisonivy.fr.tr new file mode 100644 index 00000000..1436b0de --- /dev/null +++ b/poisonivy/locale/poisonivy.fr.tr @@ -0,0 +1,12 @@ +# textdomain: poisonivy + +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# fat115 , 2017. +# + +Poison ivy (seedling)=Sumac vénéneux (semis) +Poison ivy (sproutling)=Sumac vénéneux (pousse) +Poison ivy (climbing plant)=Sumac vénéneux (grimpant) +[Poison Ivy] Loaded.=[Poison Ivy] chargé. diff --git a/poisonivy/locale/poisonivy.pt.tr b/poisonivy/locale/poisonivy.pt.tr new file mode 100644 index 00000000..5b6ab87b --- /dev/null +++ b/poisonivy/locale/poisonivy.pt.tr @@ -0,0 +1,12 @@ +# textdomain: poisonivy + +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# fat115 , 2017. +# + +Poison ivy (seedling)=Hera venenosa (plantilha) +Poison ivy (sproutling)=Hera venenosa (brotando) +Poison ivy (climbing plant)=Hera venenosa (planta trepadeira) +[Poison Ivy] Loaded.=[Poison Ivy] Carregado diff --git a/poisonivy/locale/pt_BR.txt b/poisonivy/locale/poisonivy.pt_BR.tr similarity index 89% rename from poisonivy/locale/pt_BR.txt rename to poisonivy/locale/poisonivy.pt_BR.tr index 9f61092e..185ddc9c 100644 --- a/poisonivy/locale/pt_BR.txt +++ b/poisonivy/locale/poisonivy.pt_BR.tr @@ -1,5 +1,6 @@ +# textdomain: poisonivy + Poison ivy (seedling) = Hera venenosa (plantilha) Poison ivy (sproutling) = Hera venenosa (brotando) Poison ivy (climbing plant) = Hera venenosa (planta trepadeira) - [Poison Ivy] Loaded. =[Poison Ivy] Carregado diff --git a/poisonivy/locale/poisonivy.template.trt b/poisonivy/locale/poisonivy.template.trt new file mode 100644 index 00000000..512efec0 --- /dev/null +++ b/poisonivy/locale/poisonivy.template.trt @@ -0,0 +1,12 @@ +# textdomain: poisonivy + +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# FIRST AUTHOR , YEAR. +# + +Poison ivy (seedling)= +Poison ivy (sproutling)= +Poison ivy (climbing plant)= +[Poison Ivy] Loaded.= diff --git a/poisonivy/locale/poisonivy.tr.tr b/poisonivy/locale/poisonivy.tr.tr new file mode 100644 index 00000000..ecbb2794 --- /dev/null +++ b/poisonivy/locale/poisonivy.tr.tr @@ -0,0 +1,12 @@ +# textdomain: poisonivy + +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# mahmutelmas06@hotmail.com, 2017. +# + +Poison ivy (seedling)=Sarmaşık (Fidan) +Poison ivy (sproutling)=Sarmaşık (Filiz) +Poison ivy (climbing plant)=Sarmaşık (Dolanan) +[Poison Ivy] Loaded.=[Poison Ivy] yüklendi. diff --git a/poisonivy/mod.conf b/poisonivy/mod.conf new file mode 100644 index 00000000..7819d1e8 --- /dev/null +++ b/poisonivy/mod.conf @@ -0,0 +1,2 @@ +name = poisonivy +depends = biome_lib diff --git a/technic/README.md b/technic/README.md index e5adf319..835b4422 100644 --- a/technic/README.md +++ b/technic/README.md @@ -21,6 +21,9 @@ celeron55 (Perttu Ahola) modified by Zefram (CC BY-SA 3.0): sdzen (Elise Staudter) (CC BY-SA 3.0): * most of the older 16x16 textures +leftshift (CC BY-SA 3.0): + * technic_river_water_can.png + RealBadAngel: (WTFPL) * Everything else. @@ -32,4 +35,4 @@ veikk0 (Veikko Mäkelä) (CC BY-SA 4.0): * technic_hv_nuclear_reactor_siren_danger_loop.ogg * Derived from "Nuclear alarm.wav" by Freesound.org user rene___ from . Originally licensed under CC0 1.0 -CC BY-SA 4.0: \ No newline at end of file +CC BY-SA 4.0: diff --git a/technic/doc/api.md b/technic/doc/api.md index 178ab0aa..8ae6963f 100644 --- a/technic/doc/api.md +++ b/technic/doc/api.md @@ -64,6 +64,10 @@ Registration functions ### Specific machines * `technic.register_solar_array(data)` * data is a table +* `technic.can_insert_unique_stack(pos, node, stack, direction)` +* `technic.insert_object_unique_stack(pos, node, stack, direction)` + * Functions for the parameters `can_insert` and `insert_object` to avoid + filling multiple inventory slots with same type of item. Used itemdef fields ------------------- diff --git a/technic/machines/other/injector.lua b/technic/machines/other/injector.lua index c98be59e..193d0516 100644 --- a/technic/machines/other/injector.lua +++ b/technic/machines/other/injector.lua @@ -95,7 +95,7 @@ minetest.register_node("technic:injector", { if meta:get_int("splitstacks") == 1 then stack = stack:peek_item(1) end - return meta:get_inventory():room_for_item("main", stack) + return inv:room_for_item("main", stack) end, insert_object = function(pos, node, stack, direction) return minetest.get_meta(pos):get_inventory():add_item("main", stack) diff --git a/technic/machines/register/alloy_furnace.lua b/technic/machines/register/alloy_furnace.lua index 879e528b..1e3796d2 100644 --- a/technic/machines/register/alloy_furnace.lua +++ b/technic/machines/register/alloy_furnace.lua @@ -1,10 +1,50 @@ local S = technic.getter +function technic.insert_object_unique_stack(pos, node, incoming_stack, direction) + local meta = minetest.get_meta(pos) + local inv = meta:get_inventory() + local incoming_name = incoming_stack:get_name() + local stack_index = nil + for inv_index, inv_stack in pairs(inv:get_list("src")) do + if inv_stack:get_name() == incoming_name then + stack_index = inv_index + break + end + end + if stack_index == nil then + return inv:add_item("src", incoming_stack) + end + local present_stack = inv:get_stack("src", stack_index) + local leftover = present_stack:add_item(incoming_stack) + inv:set_stack("src", stack_index, present_stack) + return leftover +end + +function technic.can_insert_unique_stack(pos, node, incoming_stack, direction) + local meta = minetest.get_meta(pos) + local inv = meta:get_inventory() + local incoming_name = incoming_stack:get_name() + if meta:get_int("splitstacks") == 0 then + -- avoid looping second time with inv:contains_item("src", incoming_stack) + for _, inv_stack in pairs(inv:get_list("src")) do + if inv_stack:get_name() == incoming_name then + return inv_stack:item_fits(incoming_stack) + end + end + end + + return technic.default_can_insert(pos, node, incoming_stack, direction) +end + function technic.register_alloy_furnace(data) data.typename = "alloy" data.machine_name = "alloy_furnace" data.machine_desc = S("%s Alloy Furnace") + + data.insert_object = technic.insert_object_unique_stack + data.can_insert = technic.can_insert_unique_stack + technic.register_base_machine(data) end diff --git a/technic/machines/register/battery_box.lua b/technic/machines/register/battery_box.lua index 4f1f76e1..bf4d96a5 100644 --- a/technic/machines/register/battery_box.lua +++ b/technic/machines/register/battery_box.lua @@ -452,7 +452,7 @@ function technic.discharge_tools(meta, batt_charge, charge_step, max_charge) if inv:is_empty("dst") then return batt_charge, false end - srcstack = inv:get_stack("dst", 1) + local srcstack = inv:get_stack("dst", 1) local toolname = srcstack:get_name() if technic.power_tools[toolname] == nil then return batt_charge, false diff --git a/technic/machines/register/extractor_recipes.lua b/technic/machines/register/extractor_recipes.lua index 54baa61b..ba43df50 100644 --- a/technic/machines/register/extractor_recipes.lua +++ b/technic/machines/register/extractor_recipes.lua @@ -15,6 +15,7 @@ if minetest.get_modpath("dye") then -- register recipes with the same crafting ratios as `dye` provides local dye_recipes = { {"technic:coal_dust", "dye:black 2"}, + {"default:blueberries", "dye:violet 2"}, {"default:grass_1", "dye:green 1"}, {"default:dry_shrub", "dye:brown 1"}, {"default:junglegrass", "dye:green 2"}, diff --git a/technic/machines/register/machine_base.lua b/technic/machines/register/machine_base.lua index 15fb8ea0..2965ba50 100644 --- a/technic/machines/register/machine_base.lua +++ b/technic/machines/register/machine_base.lua @@ -4,22 +4,26 @@ local S = technic.getter local fs_helpers = pipeworks.fs_helpers local tube_entry = "^pipeworks_tube_connection_metallic.png" -local tube = { - insert_object = function(pos, node, stack, direction) - local meta = minetest.get_meta(pos) - local inv = meta:get_inventory() - return inv:add_item("src", stack) - end, - can_insert = function(pos, node, stack, direction) - local meta = minetest.get_meta(pos) - local inv = meta:get_inventory() - if meta:get_int("splitstacks") == 1 then - stack = stack:peek_item(1) - end - return inv:room_for_item("src", stack) - end, - connect_sides = {left = 1, right = 1, back = 1, top = 1, bottom = 1}, -} +function technic.default_can_insert(pos, node, stack, direction) + local meta = minetest.get_meta(pos) + local inv = meta:get_inventory() + if meta:get_int("splitstacks") == 1 then + stack = stack:peek_item(1) + end + return inv:room_for_item("src", stack) +end + +function technic.new_default_tube() + return { + insert_object = function(pos, node, stack, direction) + local meta = minetest.get_meta(pos) + local inv = meta:get_inventory() + return inv:add_item("src", stack) + end, + can_insert = technic.default_can_insert, + connect_sides = {left = 1, right = 1, back = 1, top = 1, bottom = 1}, + } +end local connect_default = {"bottom", "back", "left", "right"} @@ -64,6 +68,14 @@ function technic.register_base_machine(data) "listring[current_player;main]" end + local tube = technic.new_default_tube() + if data.can_insert then + tube.can_insert = data.can_insert + end + if data.insert_object then + tube.insert_object = data.insert_object + end + local run = function(pos, node) local meta = minetest.get_meta(pos) local inv = meta:get_inventory() @@ -144,6 +156,7 @@ function technic.register_base_machine(data) if ltier == "lv" then tentry = "" end + minetest.register_node("technic:"..ltier.."_"..machine_name, { description = machine_desc:format(tier), tiles = { diff --git a/technic/radiation.lua b/technic/radiation.lua index dd476c5b..e4ed5c5a 100644 --- a/technic/radiation.lua +++ b/technic/radiation.lua @@ -294,6 +294,8 @@ local function calculate_damage_multiplier(object) end if ag.radiation then return 0.01 * ag.radiation + elseif armor_enabled then + return 0 end if ag.fleshy then return math.sqrt(0.01 * ag.fleshy) diff --git a/technic/textures/technic_river_water_can.png b/technic/textures/technic_river_water_can.png new file mode 100644 index 0000000000000000000000000000000000000000..d4fd888a0c9020f6fb07cbf9eaa6a683fe0edf3d GIT binary patch literal 346 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!63?wyl`GbMfgaDrq*H9pXf#LuE|Gw$6T2?&% z>C*ZRe2$S)&QX$n36c^jERyM|QmV`fP4#-Vf_iqm23AalPQsQcCbo&%P7#vM5fVU^ zE|Fp`QIf6^Vy=-Qt}(K1;X-b4GVXEG?(x!INitr^GTy1OK50NC=bJ3)nzopr08mJ5rT_o{ literal 0 HcmV?d00001 diff --git a/technic/tools/cans.lua b/technic/tools/cans.lua index f12ec93e..369259e9 100644 --- a/technic/tools/cans.lua +++ b/technic/tools/cans.lua @@ -112,3 +112,21 @@ minetest.register_craft({ {'technic:zinc_ingot', 'technic:stainless_steel_ingot', 'technic:zinc_ingot'}, } }) + +technic.register_can({ + can_name = 'technic:river_water_can', + can_description = S("River Water Can"), + can_inventory_image = "technic_river_water_can.png", + can_capacity = 16, + liquid_source_name = "default:river_water_source", + liquid_flowing_name = "default:river_water_flowing", +}) + +minetest.register_craft({ + output = 'technic:river_water_can 1', + recipe = { + {'technic:zinc_ingot', 'technic:rubber', 'technic:zinc_ingot'}, + {'default:steel_ingot', '', 'default:steel_ingot'}, + {'technic:zinc_ingot', 'default:steel_ingot', 'technic:zinc_ingot'}, + } +}) diff --git a/technic_cnc/cnc.lua b/technic_cnc/cnc.lua index 0e23f5a0..1116aee8 100644 --- a/technic_cnc/cnc.lua +++ b/technic_cnc/cnc.lua @@ -59,7 +59,7 @@ else if minetest.is_protected(pos, player:get_player_name()) then return 0 end - return stack:get_count() + return count end can_dig = function(pos, player) diff --git a/teleport_request/.luacheckrc b/teleport_request/.luacheckrc new file mode 100644 index 00000000..390d987a --- /dev/null +++ b/teleport_request/.luacheckrc @@ -0,0 +1,20 @@ +unused_args = false +allow_defined_top = true +max_line_length = 999 + +globals = { + "tp" +} + +read_globals = { + string = {fields = {"split", "trim"}}, + table = {fields = {"copy", "getn"}}, + + "minetest", "core", + "vector", "ItemStack", + "dump", "dump2", + + "chat2", "gamehub", + "intllib", "areas", + +} \ No newline at end of file diff --git a/teleport_request/README.md b/teleport_request/README.md index 2042c6d2..300d08b4 100644 --- a/teleport_request/README.md +++ b/teleport_request/README.md @@ -1,21 +1,29 @@ # Teleport Request -A mod that allows players to send a teleport request. -**(See "How to use" below for more information.)** -## Privileges: +[![](https://github.com/ChaosWormz/teleport-request/workflows/Check%20&%20Release/badge.svg)](https://github.com/ChaosWormz/teleport-request/actions) +[![License](https://img.shields.io/badge/license-LGPLv2.1%2B-blue.svg)](https://www.gnu.org/licenses/old-licenses/lgpl-2.1.en.html) + +Allows players to request from another player to be teleported to them. + +## Privileges Each command needs a privilege. These are the following privileges: -- **tp** is requiered in order to use all commands. -- **tp_tpc** is requiered in order to use `/tpc` -- **tp_tpc** is requiered in order to use `/tpe` -- **tp_tpc** is requiered in order to use `/tpj` -- **interact** is also requiered to use all commands. -**tp_admin** overrides everything: e.g. you can teleport to players even when they haven't decided to accept, or not. You can also teleport him/her to you (this happens only when `enable_immediate_teleport` is enabled on `config.lua`). +- `tp` is required in order to use all commands. +- `tp_tpc` is required in order to use `/tpc`. +- `tp_tpc` is required in order to use `/tpe`. +- `tp_tpc` is required in order to use `/tpj`. +- `interact` is required to use all commands. +- `tp_admin` gives more control to admins: + - Admins can teleport to players even when they haven't decided to accept, or not. + - Admins can teleport players to him/her, if the `enable_immediate_teleport` setting is enabled. + - Admins can teleport to protected coordinates. + Players can also teleport to coordinates, however, if the area is protected, the teleport will be denied. -## How to use: -Each command does a function. "**Example Usage**" is an example of how to use the command. -Note there must be 2 players in order to make the commands to work: a player must send a request to another player (**see https://wiki.minetest.net/Server or see https://wiki.minetest.net/Setting_up_a_server for more information**). -There are two methods of sending a request: +## How to use +Each command does a function. "**Example usage**" is an example of how to use the command. +Note there must be 2 players in order to make the commands to work: a player must send a request to another player. + +There are two ways of sending a request: 1. A request which teleports you to the specified player (command `/tpr `). 2. A request which teleports the specified player to you (command `/tphr `). @@ -25,62 +33,68 @@ These are the following commands available in-game: ``` /tpr [playername] ``` - **Name:** Teleport Request - **Description:** Requests permission to teleport to another player, where [playername] is their exact name. -- **Required Privileges:** `interact, tp` -- **Example Usage:** */tpr RobbieF* - requests permission from RobbieF to teleport to them. -- **Notes:** Usernames are case-sensitive. If you have "tp_admin" privilege, you will immediately teleport to the specificed player (does not apply if `enable_immediate_teleport` setting is disabled, enabled by default). +- **Required privileges:** `interact, tp` +- **Example usage:** `/tpr RobbieF` requests permission from RobbieF to teleport to them. +- **Notes:** Usernames are case-sensitive. If you have the `tp_admin` privilege, you will immediately teleport to the specificed player (does not apply if `enable_immediate_teleport` setting is disabled, enabled by default). ``` /tphr [playername] ``` - **Name:** Teleport Here Request - **Description:** Request permission to teleport another player to you. -- **Required Privileges:** `interact, tp` -- **Example Usage:** /tphr RobbieF - requests RobbieF to teleport to you. -- **Notes:** Usernames are case-sensitive. If you have "tp_admin" privilege, RobbieF will teleport to you immediately (does not apply if `enable_immediate_teleport` setting is disabled, enabled by default). +- **Required privileges:** `interact, tp` +- **Example usage:** `/tphr RobbieF` requests RobbieF to teleport to you. +- **Notes:** Usernames are case-sensitive. If you have the `tp_admin` privilege, RobbieF will teleport to you immediately (does not apply if `enable_immediate_teleport` setting is disabled, enabled by default). ``` /tpc [x,y,z] ``` - **Name:** Teleport to Coordinates - **Description:** Teleport to coordinates. -- **Required Privileges:** `interact, tp_tpc, tp` -- **Notes:** Honors area protection: if the area is protected, it must be owned by you in order to teleport to it, or you must have "areas" privilege in order to teleport to those coordinates (this works only when [areas](https://github.com/minetest-mods/areas) is installed). +- **Required privileges:** `interact, tp_tpc, tp` +- **Notes:** Honors area protection. If the area is protected, it must be owned by you in order to teleport to it, or you must have the `areas` privilege in order to teleport to those coordinates. ``` /tpj [axis] [distance] ``` - **Name:** Teleport Jump - **Description:** Teleport a specified distance along a single specified axis. -- **Required Privilege:** `interact", tp, tp_tpc` -- **Available Options for *axis*:** x, y, z -- **Example Usage:** '/tpj y 10' - teleport 10 nodes into the air. +- **Required privilege:** `interact", tp, tp_tpc` +- **Available options for *axis*:** x, y, z +- **Example usage:** `/tpj y 10` teleport 10 nodes into the air. ``` /tpe ``` - **Name:** Teleport Evade - **Description:** In a sticky situation? Evade your enemy by teleporting to several nearby coordinates in random pattern. There's no knowing where you'll end up. -- **Required Privileges:** `interact, tp_tpc, tp` -- **Example Usage:** '/tpe' - teleports you to a random number of random coordinates in an evasive pattern. +- **Required privileges:** `interact, tp_tpc, tp` +- **Example usage:** `/tpe` teleports you to a random number of random coordinates in an evasive pattern. ``` /tpy ``` - **Description:** Accept a user's request to teleport to you or teleport you to them. +- **Required privileges:** `interact, tp` ``` /tpn ``` - **Description:** Deny a user's request to teleport to you or teleport you to them. +- **Required privileges:** `interact, tp` -## Dependencies -There are no dependencies. -However, optional dependencies are: +## Optional dependencies - [areas](https://github.com/minetest-mods/areas) - [intllib](https://github.com/minetest-mods/intllib) -- [beerchat](https://github.com/pandorabox-io/beerchat) +- [beerchat](https://github.com/minetest-beerchat/beerchat) - [chat2](https://github.com/minetest-mods/chat2) +- [gamehub](https://github.com/shivajiva101/minetest-gamehub) ## Requirements -This mod requieres MT/MTG 5.0.0+ to run. +This mod requires MT 5.0.0+ to run. Older versions not supported. -## Bugfixes & suggestions +## Issues, suggestions, features & bugfixes Report bugs or suggest ideas by [creating an issue](https://github.com/ChaosWormz/teleport-request/issues/new). If you know how to fix an issue, or want something to be added, consider opening a [pull request](https://github.com/ChaosWormz/teleport-request/compare). ## License -[LGPL-2.1](https://github.com/ChaosWormz/teleport-request/blob/master/LICENSE.md) for everything. +Copyright (C) 2014-2020 ChaosWormz and contributors. + +Teleport Request code is licensed under LGPLv2.1+, see [`LICENSE.md`](LICENSE.md). +[`tpr_warp.ogg`](sounds/tpr_warp.ogg) is licensed under [CC BY-SA 4.0 International](https://creativecommons.org/licenses/by-sa/4.0/). + +## Contributors +List of contributors (in no particular order): -## Contributors: - [RobbieF](https://minetest.tv) | [GitHub](https://github.com/Cat5TV) - [DonBatman](https://github.com/donbatman) - [NathanS21](http://nathansalapat.com/) | [GitHub](https://github.com/NathanSalapat) @@ -92,8 +106,6 @@ If you know how to fix an issue, or want something to be added, consider opening - [Billy-S](https://github.com/Billy-S) - Traxie21, the original creator of this mod (however, he/she does not have a GitHub account anymore). -All those who contributed to the original mod (please see `init.lua`). - ## Configuring the mod Open your `minetest.conf` located in your Minetest directory. Set the values of the settings you'd like to. @@ -109,19 +121,19 @@ You can also go to your Minetest, Settings tab, All settings, Mods, and you'll f Or another way to do it, is changing the values in `settingtypes.txt`. ## Installation -- Unzip the archive, rename the folder to tpr and -place it in ..minetest/mods/ +- Unzip the archive, rename the folder to `tpr` and +place it in .. minetest/mods/ - GNU/Linux: If you use a system-wide installation place it in ~/.minetest/mods/. - If you only want this to be used in a single world, place - the folder in ..worldmods/ in your world directory. + the folder in .. worldmods/ in your world directory. -For further information or help, see: +For further information or help, see: https://wiki.minetest.net/Installing_Mods -## TODO: +## TODO - Make it so if a player attempts to teleport to coordinates within a protected area owned by another player, and that player is online, the owner receives a request to allow or deny the user from teleporting to their area. - Add limitations to /tpc which only allow a user to teleport X number of blocks. Prevents users from teleporting to the edge of the world. - Assess value in changing all tpr-based chat commands to one global command such as /tp to reduce the chance of confusion between tps_admin and the original mod (and also make it so people don't have to remember so many commands). @@ -129,4 +141,4 @@ https://wiki.minetest.net/Installing_Mods - Rewrite to place all chat commands into one single command much like how /teleport works. - Make evade respect land: no teleporting inside land, but instead make sure player is standing on surface or in water. -If you think something else should be added to this list, [submit an issue](https://github.com/ChaosWormz/teleport-request/issues/new). +If you think something else should be added to this list, [submit an issue](https://github.com/ChaosWormz/teleport-request/issues/new). \ No newline at end of file diff --git a/teleport_request/commands.lua b/teleport_request/commands.lua new file mode 100644 index 00000000..e222442a --- /dev/null +++ b/teleport_request/commands.lua @@ -0,0 +1,68 @@ +--[[ +Commands +Copyright (C) 2014-2020 ChaosWormz and contributors + +This library 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 library 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. + +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 +--]] + +-- Support for intllib +local S = tp.intllib + +minetest.register_chatcommand("tpr", { + description = S("Request teleport to another player"), + params = S(" | leave playername empty to see help message"), + privs = {interact = true, tp = true}, + func = tp.tpr_send +}) + +minetest.register_chatcommand("tphr", { + description = S("Request player to teleport to you"), + params = S(" | leave playername empty to see help message"), + privs = {interact = true, tp = true}, + func = tp.tphr_send +}) + +minetest.register_chatcommand("tpc", { + description = S("Teleport to coordinates"), + params = S(" | leave coordinates empty to see help message"), + privs = {interact = true, tp_tpc = true, tp = true}, + func = tp.tpc_send +}) + +minetest.register_chatcommand("tpj", { + description = S("Teleport to relative position"), + params = S(" | leave empty to see help message"), + privs = {interact = true, tp_tpc = true, tp = true}, + func = tp.tpj +}) + +minetest.register_chatcommand("tpe", { + description = S("Evade Enemy"), + privs = {interact = true, tp_tpc = true, tp = true}, + func = tp.tpe +}) + +minetest.register_chatcommand("tpy", { + description = S("Accept teleport requests from another player"), + privs = {interact = true, tp = true}, + func = tp.tpr_accept +}) + +minetest.register_chatcommand("tpn", { + description = S("Deny teleport requests from another player"), + privs = {interact = true, tp = true}, + func = tp.tpr_deny +}) diff --git a/teleport_request/config.lua b/teleport_request/config.lua index 7bf3e602..d81463ce 100644 --- a/teleport_request/config.lua +++ b/teleport_request/config.lua @@ -1,7 +1,6 @@ --[[ Configuration - -Copyright (C) 2015-2019 ChaosWormz +Copyright (C) 2014-2020 ChaosWormz and contributors This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public @@ -19,10 +18,6 @@ Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA --]] --- Load support for intllib. -local MP = minetest.get_modpath(minetest.get_current_modname()) -local S, NS = dofile(MP.."/intllib.lua") - -- Timeout delay and mod version. tp.timeout_delay = tonumber(minetest.settings:get("tp.timeout_delay")) or 60 tp.version = "1.5" @@ -30,8 +25,6 @@ tp.version = "1.5" -- Enable teleporting immediately to the specified player for those with "tp_admin" privilege. tp.enable_immediate_teleport = minetest.settings:get_bool("tp.enable_immediate_teleport") -local chatmsg, source, target, name2, target_coords, pos - -- Set the values of the positions of your places, players will be able to teleport to them (no matter if it is protected, or not). -- You must activate "enable_tpp_command" in order to make this to work. tp.available_places = { @@ -41,22 +34,3 @@ tp.available_places = { -- Enable tpp command tp.enable_tpp_command = minetest.settings:get_bool("tp.enable_tpp_command") - --- Register privileges -minetest.register_privilege("tp", { - description = S("Let players teleport to other players (request will be sent)"), - give_to_singleplayer = false, - give_to_admin = true, -}) - -minetest.register_privilege("tp_admin", { - description = S("Gives full admin-access to a player."), - give_to_singleplayer = false, - give_to_admin = true, -}) - -minetest.register_privilege("tp_tpc", { - description = S("Allow player to teleport to coordinates (if allowed by area protection)"), - give_to_singleplayer = false, - give_to_admin = true, -}) diff --git a/teleport_request/functions.lua b/teleport_request/functions.lua new file mode 100644 index 00000000..738d1551 --- /dev/null +++ b/teleport_request/functions.lua @@ -0,0 +1,608 @@ +--[[ +Functions +Copyright (C) 2014-2020 ChaosWormz and contributors + +This library 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 library 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. + +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 +--]] + +-- Support for intllib +local S = tp.intllib + +-- Placeholders +local chatmsg, source, target, name2, target_coords + +local map_size = 30912 +function tp.can_teleport(to) + return to.x < map_size and to.x > -map_size and to.y < map_size and to.y > -map_size and to.z < map_size and to.z > -map_size +end + +-- Teleport player to a player (used in "/tpr" and in "/tphr" command). +function tp.tpr_teleport_player() + target_coords = source:get_pos() + local target_sound = target:get_pos() + target:set_pos(tp.find_free_position_near(target_coords)) + minetest.sound_play("tpr_warp", {pos = target_coords, gain = 0.5, max_hear_distance = 10}) + minetest.sound_play("tpr_warp", {pos = target_sound, gain = 0.5, max_hear_distance = 10}) + --tp.parti2(target_coords) +end + +-- TPC & TPJ +function tp.tpc_teleport_player(player) + local pname = minetest.get_player_by_name(player) + minetest.sound_play("tpr_warp", {pos = pname:get_pos(), gain = 0.5, max_hear_distance = 10}) + pname:set_pos(tp.find_free_position_near(target_coords)) + minetest.sound_play("tpr_warp", {pos = target_coords, gain = 0.5, max_hear_distance = 10}) + --tp.parti2(target_coords) +end + +-- TPP +function tp.tpp_teleport_player(player, pos) + local pname = minetest.get_player_by_name(player) + minetest.sound_play("tpr_warp", {pos = pname:get_pos(), gain = 0.5, max_hear_distance = 10}) + pname:set_pos(tp.find_free_position_near(pos)) + minetest.sound_play("tpr_warp", {pos = pos, gain = 0.5, max_hear_distance = 10}) + --tp.parti2(target_coords) +end + +function tp.find_free_position_near(pos) + local tries = { + {x=1,y=0,z=0}, + {x=-1,y=0,z=0}, + {x=0,y=0,z=1}, + {x=0,y=0,z=-1}, + } + for _,d in pairs(tries) do + local p = vector.add(pos, d) + local def = minetest.registered_nodes[minetest.get_node(p).name] + if def and not def.walkable then + return p, true + end + end + return pos, false +end + +function tp.parti(pos) + minetest.add_particlespawner(50, 0.4, + {x=pos.x + 0.5, y=pos.y, z=pos.z + 0.5}, {x=pos.x - 0.5, y=pos.y, z=pos.z - 0.5}, + {x=0, y=5, z=0}, {x=0, y=0, z=0}, + {x=0, y=5, z=0}, {x=0, y=0, z=0}, + 3, 5, + 3, 5, + false, + "tps_portal_parti.png") +end + +function tp.parti2(pos) + minetest.add_particlespawner(50, 0.4, + {x=pos.x + 0.5, y=pos.y + 10, z=pos.z + 0.5}, {x=pos.x - 0.5, y=pos.y, z=pos.z - 0.5}, + {x=0, y=-5, z=0}, {x=0, y=0, z=0}, + {x=0, y=-5, z=0}, {x=0, y=0, z=0}, + 3, 5, + 3, 5, + false, + "tps_portal_parti.png") +end + +-- Teleport Request System +function tp.tpr_send(sender, receiver) + -- Compatibility with beerchat + if minetest.get_modpath("beerchat") and not minetest.check_player_privs(sender, {tp_admin = true}) then + if receiver == "" then + minetest.chat_send_player(sender, S("Usage: /tpr ")) + if minetest.get_modpath("chat2") then + chat2.send_message(minetest.get_player_by_name(sender), S("Usage: /tpr "), 0xFFFFFF) + end + return + end + + if not minetest.get_player_by_name(receiver) then + minetest.chat_send_player(sender, S("There is no player by that name. Keep in mind this is case-sensitive, and the player must be online")) + if minetest.get_modpath("chat2") then + chat2.send_message(minetest.get_player_by_name(sender), S("There is no player by that name. Keep in mind this is case-sensitive, and the player must be online"), 0xFFFFFF) + end + return + end + + local player_receiver = minetest.get_player_by_name(receiver) + if player_receiver:get_meta():get_string("beerchat:muted:" .. sender) == "true" then + minetest.chat_send_player(sender, S("You are not allowed to send requests because you're muted.")) + if minetest.get_modpath("chat2") then + chat2.send_message(minetest.get_player_by_name(sender), S("You are not allowed to send requests because you're muted."), 0xFFFFFF) + end + return + end + end + + if minetest.check_player_privs(sender, {tp_admin = true}) and tp.enable_immediate_teleport then + if receiver == "" then + minetest.chat_send_player(sender, S("Usage: /tpr ")) + if minetest.get_modpath("chat2") then + chat2.send_message(minetest.get_player_by_name(sender), S("Usage: /tpr "), 0xFFFFFF) + end + return + end + + if not minetest.get_player_by_name(receiver) then + minetest.chat_send_player(sender, S("There is no player by that name. Keep in mind this is case-sensitive, and the player must be online")) + if minetest.get_modpath("chat2") then + chat2.send_message(minetest.get_player_by_name(sender), S("There is no player by that name. Keep in mind this is case-sensitive, and the player must be online"), 0xFFFFFF) + end + return + end + + tp.tpr_list[receiver] = sender + tp.tpr_accept(receiver) + minetest.chat_send_player(sender, S("You are teleporting to @1.", receiver)) + if minetest.get_modpath("chat2") then + chat2.send_message(minetest.get_player_by_name(sender), S("You are teleporting to @1.", receiver), 0xFFFFFF) + end + return + end + + if receiver == "" then + minetest.chat_send_player(sender, S("Usage: /tpr ")) + if minetest.get_modpath("chat2") then + chat2.send_message(minetest.get_player_by_name(sender), S("Usage: /tpr "), 0xFFFFFF) + end + return + end + + if not minetest.get_player_by_name(receiver) then + minetest.chat_send_player(sender, S("There is no player by that name. Keep in mind this is case-sensitive, and the player must be online")) + if minetest.get_modpath("chat2") then + chat2.send_message(minetest.get_player_by_name(sender), S("There is no player by that name. Keep in mind this is case-sensitive, and the player must be online"), 0xFFFFFF) + end + return + end + + if minetest.get_modpath("gamehub") then -- Compatibility with gamehub (UNTESTED) + if gamehub.players[receiver] then + minetest.chat_send_player(sender, S("Teleport request denied, player is in the gamehub!")) + if minetest.get_modpath("chat2") then + chat2.send_message(minetest.get_player_by_name(sender), S("Teleport request denied, player is in the gamehub!"), 0xFFFFFF) + end + return + end + end + + if minetest.get_modpath("chat2") then + chat2.send_message(minetest.get_player_by_name(receiver), S("@1 is requesting to teleport to you. /tpy to accept", sender), 0xFFFFFF) + chat2.send_message(minetest.get_player_by_name(sender), S("Teleport request sent! It will timeout in @1 seconds", tp.timeout_delay), 0xFFFFFF) + end + + minetest.chat_send_player(receiver, S("@1 is requesting to teleport to you. /tpy to accept", sender)) + minetest.chat_send_player(sender, S("Teleport request sent! It will timeout in @1 seconds", tp.timeout_delay)) + + -- Write name values to list and clear old values. + tp.tpr_list[receiver] = sender + + -- Teleport timeout delay + minetest.after(tp.timeout_delay, function(name) + if tp.tpr_list[name] then + tp.tpr_list[name] = nil + minetest.chat_send_player(sender, S("Request timed-out.")) + minetest.chat_send_player(receiver, S("Request timed-out.")) + + if minetest.get_modpath("chat2") then + chat2.send_message(minetest.get_player_by_name(sender), S("Request timed-out."), 0xFFFFFF) + chat2.send_message(minetest.get_player_by_name(receiver), S("Request timed-out."), 0xFFFFFF) + end + return + end + end, receiver) +end + +function tp.tphr_send(sender, receiver) + -- Compatibility with beerchat + if minetest.get_modpath("beerchat") and not minetest.check_player_privs(sender, {tp_admin = true}) then + if not minetest.get_player_by_name(receiver) then + minetest.chat_send_player(sender, S("There is no player by that name. Keep in mind this is case-sensitive, and the player must be online")) + if minetest.get_modpath("chat2") then + chat2.send_message(minetest.get_player_by_name(sender), S("There is no player by that name. Keep in mind this is case-sensitive, and the player must be online"), 0xFFFFFF) + end + return + end + + local player_receiver = minetest.get_player_by_name(receiver) + if player_receiver:get_meta():get_string("beerchat:muted:" .. sender) == "true" then + minetest.chat_send_player(sender, S("You are not allowed to send requests because you're muted.")) + if minetest.get_modpath("chat2") then + chat2.send_message(minetest.get_player_by_name(sender), S("You are not allowed to send requests because you're muted."), 0xFFFFFF) + end + return + end + end + + if minetest.check_player_privs(sender, {tp_admin = true}) and tp.enable_immediate_teleport then + if receiver == "" then + minetest.chat_send_player(sender, S("Usage: /tphr ")) + if minetest.get_modpath("chat2") then + chat2.send_message(minetest.get_player_by_name(sender), S("Usage. /tphr "), 0xFFFFFF) + end + return + end + + if not minetest.get_player_by_name(receiver) then + minetest.chat_send_player(sender, S("There is no player by that name. Keep in mind this is case-sensitive, and the player must be online")) + if minetest.get_modpath("chat2") then + chat2.send_message(minetest.get_player_by_name(sender), S("There is no player by that name. Keep in mind this is case-sensitive, and the player must be online"), 0xFFFFFF) + end + return + end + + tp.tphr_list[receiver] = sender + tp.tpr_accept(receiver) + minetest.chat_send_player(sender, S("@1 is teleporting to you.", receiver)) + if minetest.get_modpath("chat2") then + chat2.send_message(minetest.get_player_by_name(sender), S("@1 is teleporting to you.", receiver), 0xFFFFFF) + end + return + end + + if receiver == "" then + minetest.chat_send_player(sender, S("Usage: /tphr ")) + if minetest.get_modpath("chat2") then + chat2.send_message(minetest.get_player_by_name(sender), S("Usage. /tphr "), 0xFFFFFF) + end + return + end + + if not minetest.get_player_by_name(receiver) then + minetest.chat_send_player(sender, S("There is no player by that name. Keep in mind this is case-sensitive, and the player must be online")) + if minetest.get_modpath("chat2") then + chat2.send_message(minetest.get_player_by_name(sender), S("There is no player by that name. Keep in mind this is case-sensitive, and the player must be online"), 0xFFFFFF) + end + return + end + + if minetest.get_modpath("gamehub") then -- Compatibility with gamehub (UNTESTED) + if gamehub.players[receiver] then + minetest.chat_send_player(sender, S("Teleport request denied, player is in the gamehub!")) + if minetest.get_modpath("chat2") then + chat2.send_message(minetest.get_player_by_name(sender), S("Teleport request denied, player is in the gamehub!"), 0xFFFFFF) + end + return + end + end + + if minetest.get_modpath("chat2") then + chat2.send_message(minetest.get_player_by_name(receiver), S("@1 is requesting that you teleport to them. /tpy to accept; /tpn to deny", sender), 0xFFFFFF) + chat2.send_message(minetest.get_player_by_name(sender), S("Teleport request sent! It will timeout in @1 seconds", tp.timeout_delay), 0xFFFFFF) + end + + minetest.chat_send_player(receiver, S("@1 is requesting that you teleport to them. /tpy to accept; /tpn to deny", sender)) + minetest.chat_send_player(sender, S("Teleport request sent! It will timeout in @1 seconds", tp.timeout_delay)) + + -- Write name values to list and clear old values. + tp.tphr_list[receiver] = sender + + -- Teleport timeout delay + minetest.after(tp.timeout_delay, function(name) + if tp.tphr_list[name] then + tp.tphr_list[name] = nil + minetest.chat_send_player(sender, S("Request timed-out.")) + minetest.chat_send_player(receiver, S("Request timed-out.")) + + if minetest.get_modpath("chat2") then + chat2.send_message(minetest.get_player_by_name(sender), S("Request timed-out"), 0xFFFFFF) + chat2.send_message(minetest.get_player_by_name(receiver), S("Request timed-out"), 0xFFFFFF) + end + return + end + end, receiver) +end + +function tp.tpc_send(player, coordinates) + + local posx,posy,posz = string.match(coordinates, "^(-?%d+), (-?%d+), (-?%d+)$") + local pname = minetest.get_player_by_name(player) + + if posx ~= nil or posy ~= nil or posz ~= nil then + posx = tonumber(posx) + 0.0 + posy = tonumber(posy) + 0.0 + posz = tonumber(posz) + 0.0 + end + + if posx==nil or posy==nil or posz==nil or string.len(posx) > 6 or string.len(posy) > 6 or string.len(posz) > 6 then + minetest.chat_send_player(player, S("Usage: /tpc ")) + if minetest.get_modpath("chat2") then + chat2.send_message(minetest.get_player_by_name(player), S("Usage: /tpc "), 0xFFFFFF) + end + return nil + end + + target_coords = {x=posx, y=posy, z=posz} + + if tp.can_teleport(target_coords) == false then + minetest.chat_send_player(player, S("You cannot teleport to a location outside the map!")) + if minetest.get_modpath("chat2") then + chat2.send_message(minetest.get_player_by_name(player), S("You cannot teleport to a location outside the map!"), 0xFFFFFF) + end + return nil + end + + -- If the area is protected, reject the user's request to teleport to these coordinates + -- In future release we'll actually query the player who owns the area, if they're online, and ask for their permission. + -- Admin user (priv "tp_admin") overrides all protection + if minetest.check_player_privs(pname, {tp_admin = true}) then + tp.tpc_teleport_player(player) + minetest.chat_send_player(player, S("Teleporting to: @1, @2, @3", posx, posy, posz)) + if minetest.get_modpath("chat2") then + chat2.send_message(minetest.get_player_by_name(player), S("Teleporting to: @1, @2, @3", posx, posy, posz), 0xFFFFFF) + end + else + if minetest.check_player_privs(pname, {tp_tpc = true}) then + local protected = minetest.is_protected(target_coords, player) + if protected then + minetest.record_protection_violation(target_coords, player) + return + end + + if minetest.get_modpath("areas") then + if not areas:canInteract(target_coords, player) then + local owners = areas:getNodeOwners(target_coords) + minetest.chat_send_player(player, S("Error: @1 is protected by @2.", minetest.pos_to_string(target_coords), table.concat(owners, ", "))) + if minetest.get_modpath("chat2") then + chat2.send_message(minetest.get_player_by_name(player), S("Error: @1 is protected by @2.", minetest.pos_to_string(target_coords), table.concat(owners, ", ")), 0xFFFFFF) + end + return + end + end + + tp.tpc_teleport_player(player) + minetest.chat_send_player(player, S("Teleporting to: @1, @2, @3", posx, posy, posz)) + if minetest.get_modpath("chat2") then + chat2.send_message(minetest.get_player_by_name(player), S("Teleporting to: @1, @2, @3", posx, posy, posz), 0xFFFFFF) + end + else + minetest.chat_send_player(player, S("Error: You do not have permission to teleport to those coordinates.")) + if minetest.get_modpath("chat2") then + chat2.send_message(minetest.get_player_by_name(player), S("Error: You do not have permission to teleport to those coordinates."), 0xFFFFFF) + end + return + end + end +end + +function tp.tpr_deny(name) + if tp.tpr_list[name] then + name2 = tp.tpr_list[name] + minetest.chat_send_player(name2, S("Teleport request denied.")) + minetest.chat_send_player(name, S("You denied the request @1 sent you.", name2)) + if minetest.get_modpath("chat2") then + chat2.send_message(minetest.get_player_by_name(name2), S("Teleport request denied."), 0xFFFFFF) + chat2.send_message(minetest.get_player_by_name(name), S("You denied the request @1 sent you.", name2), 0xFFFFFF) + end + tp.tpr_list[name] = nil + + elseif tp.tphr_list[name] then + name2 = tp.tphr_list[name] + minetest.chat_send_player(name2, S("Teleport request denied.")) + minetest.chat_send_player(name, S("You denied the request @1 sent you.", name2)) + if minetest.get_modpath("chat2") then + chat2.send_message(minetest.get_player_by_name(name2), S("Teleport request denied."), 0xFFFFFF) + chat2.send_message(minetest.get_player_by_name(name), S("You denied the request @1 sent you.", name2), 0xFFFFFF) + end + tp.tphr_list[name] = nil + + else + minetest.chat_send_player(name, S("Usage: /tpn allows you to deny teleport requests sent to you by other players.")) + if minetest.get_modpath("chat2") then + chat2.send_message(minetest.get_player_by_name(name), S("Usage: /tpn allows you to deny teleport requests sent to you by other players."), 0xFFFFFF) + end + return + end +end + +-- Teleport Accept Systems +function tp.tpr_accept(name) + + -- Check to prevent constant teleporting. + if not tp.tpr_list[name] and not tp.tphr_list[name] then + minetest.chat_send_player(name, S("Usage: /tpy allows you to accept teleport requests sent to you by other players")) + if minetest.get_modpath("chat2") then + chat2.send_message(minetest.get_player_by_name(name), S("Usage: /tpy allows you to accept teleport requests sent to you by other players"), 0xFFFFFF) + end + return + end + + if tp.tpr_list[name] then + name2 = tp.tpr_list[name] + source = minetest.get_player_by_name(name) + target = minetest.get_player_by_name(name2) + chatmsg = S("@1 is teleporting to you.", name2) + tp.tpr_list[name] = nil + + elseif tp.tphr_list[name] then + name2 = tp.tphr_list[name] + source = minetest.get_player_by_name(name2) + target = minetest.get_player_by_name(name) + chatmsg = S("You are teleporting to @1.", name2) + tp.tphr_list[name] = nil + else + return + end + + -- Could happen if either player disconnects (or timeout); if so just abort + if not source + or not target then + minetest.chat_send_player(name, S("@1 doesn't exist, or just disconnected/left (by timeout).", name2)) + if minetest.get_modpath("chat2") then + chat2.send_message(minetest.get_player_by_name(name), S("@1 doesn't exist, or just disconnected/left (by timeout).", name2), 0xFFFFFF) + end + return + end + + tp.tpr_teleport_player() + + minetest.chat_send_player(name, chatmsg) + if minetest.get_modpath("chat2") then + chat2.send_message(minetest.get_player_by_name(name), chatmsg, 0xFFFFFF) + end + + if minetest.check_player_privs(name2, {tp_admin = true}) == false then + minetest.chat_send_player(name2, S("Request Accepted!")) + if minetest.get_modpath("chat2") then + chat2.send_message(minetest.get_player_by_name(name2), S("Request Accepted!"), 0xFFFFFF) + end + + else + if tp.enable_immediate_teleport then return end + + minetest.chat_send_player(name2, S("Request Accepted!")) + if minetest.get_modpath("chat2") then + chat2.send_message(minetest.get_player_by_name(name2), S("Request Accepted!"), 0xFFFFFF) + end + return + end +end + +-- Teleport Jump - Relative Position Teleportation by number of nodes +function tp.tpj(player, param) + + if param == "" then + minetest.chat_send_player(player, S("Usage: ")) + if minetest.get_modpath("chat2") then + chat2.send_message(minetest.get_player_by_name(player), S("Usage: "), 0xFFFFFF) + end + return false + end + + local args = param:split(" ") -- look into this. Can it crash if the player does not have two parameters? + if #args < 2 then + minetest.chat_send_player(player, S("Usage: ")) + if minetest.get_modpath("chat2") then + chat2.send_message(minetest.get_player_by_name(player), S("Usage: "), 0xFFFFFF) + end + return false + end + + if not tonumber(args[2]) then + if minetest.get_modpath("chat2") then + chat2.send_message(minetest.get_player_by_name(player), S("Not a number!"), 0xFFFFFF) + end + return false, S("Not a number!") + end + + -- Initially generate the target coords from the player's current position (since it's relative) and then perform the math. + target_coords = minetest.get_player_by_name(player):get_pos() + if args[1] == "x" then + target_coords["x"] = target_coords["x"] + tonumber(args[2]) + elseif args[1] == "y" then + target_coords["y"] = target_coords["y"] + tonumber(args[2]) + elseif args[1] == "z" then + target_coords["z"] = target_coords["z"] + tonumber(args[2]) + else + minetest.chat_send_player(player, S("Not a valid axis. Valid options are X, Y or Z")) + if minetest.get_modpath("chat2") then + chat2.send_message(minetest.get_player_by_name(player), S("Not a valid axis. Valid options are X, Y or Z"), 0xFFFFFF) + end + return + end + + if tp.can_teleport(target_coords) == false then + minetest.chat_send_player(player, S("You cannot teleport to a location outside the map!")) + if minetest.get_modpath("chat2") then + chat2.send_message(minetest.get_player_by_name(player), S("You cannot teleport to a location outside the map!"), 0xFFFFFF) + end + return + end + tp.tpc_teleport_player(player) +end + +-- Evade +function tp.tpe(player) + if minetest.get_modpath("chat2") then + chat2.send_message(minetest.get_player_by_name(player), S("EVADE!"), 0xFFFFFF) + end + minetest.chat_send_player(player, S("EVADE!")) + local mindistance = 15 + local maxdistance = 50 + local times = math.random(6,20) -- how many times to jump - minimum,maximum + local negatives = { '-','' } -- either it's this way or that way: the difference between -10 and 10 + local options = { 'x', 'y', 'z' } + local isnegative = '' + local distance = 0 + local axis = '' + local iteration = 0 + for i = 1,times do + -- do this every 1 second + minetest.after(iteration, + function() + isnegative = negatives[math.random(2)] -- choose randomly whether this is this way or that + distance = isnegative .. math.random(mindistance,maxdistance) -- the distance to jump + axis = options[math.random(3)] + local command = axis .. " " .. distance + tp.tpj(player, command) + end + ) + iteration = iteration + 0.5 + end +end + +-- Teleport To Place (TPP) system. +if tp.enable_tpp_command then + + function tp.tpp(player, param) + + -- Show the available places to the player (taken from shivajiva101's POI mod, thanks!). + if param == "" then + local places = {} + if not tp.available_places then tp.available_places = {} end + for key, value in pairs(tp.available_places) do + if minetest.get_modpath("chat2") then + chat2.send_message(minetest.get_player_by_name(player), key, 0xFFFFFF) + end + table.insert(places, key) + end + if #places == 0 then + if minetest.get_modpath("chat2") then + chat2.send_message(minetest.get_player_by_name(player), S("There are no places yet."), 0xFFFFFF) + end + return true, S("There are no places yet.") + end + if minetest.get_modpath("chat2") then + chat2.send_message(minetest.get_player_by_name(player), S("Usage: /tpp "), 0xFFFFFF) + end + table.insert(places, S("Usage: /tpp ")) + return true, table.concat(places, "\n") + + -- Teleport player to the specified place (taken from shivajiva101's POI mod, thanks!). + elseif tp.available_places[param] then + local pos = {x = tp.available_places[param].x, y = tp.available_places[param].y, z = tp.available_places[param].z} + tp.tpp_teleport_player(player, pos) + minetest.chat_send_player(player, S("Teleporting to @1.", param)) + if minetest.get_modpath("chat2") then + chat2.send_message(minetest.get_player_by_name(player), S("Teleporting to @1.", param), 0xFFFFFF) + end + + -- Check if the place exists. + elseif not tp.available_places[param] then + minetest.chat_send_player(player, S("There is no place by that name. Keep in mind this is case-sensitive.")) + if minetest.get_modpath("chat2") then + chat2.send_message(minetest.get_player_by_name(player), S("There is no place by that name. Keep in mind this is case-sensitive."), 0xFFFFFF) + end + return + end + end + + minetest.register_chatcommand("tpp", { + description = S("Teleport to a place (i.e., spawn, shop)."), + params = S(" | leave empty to see available places"), + privs = {}, + func = tp.tpp + }) +end diff --git a/teleport_request/init.lua b/teleport_request/init.lua index 0fbd7afa..ffdbfee7 100644 --- a/teleport_request/init.lua +++ b/teleport_request/init.lua @@ -1,5 +1,6 @@ --[[ -Copyright (C) 2015-2019 ChaosWormz +Allows players to request from another player to be teleported to them, and do much more. +Copyright (C) 2014-2020 ChaosWormz and contributors This library is free software; you can redistribute it and/or modify it under the terms of the GNU Lesser General Public @@ -22,109 +23,18 @@ Originally made by Traxie21 and released with the WTFPL license. Forum link: https://forum.minetest.net/viewtopic.php?id=4457 Updates by Zeno, Panquesito7 and ChaosWormz. -License: LGPL-2.1 for everything. - -Optional dependencies: areas, intllib -New release by RobbieF under new mod: tps_teleport - http://blog.minetest.tv/teleport-request/ +License: LGPLv2.1+ for code, CC BY-SA 4.0 for sounds. --]] -tp = {} - -- Load support for intllib. local MP = minetest.get_modpath(minetest.get_current_modname()) -local S, NS = dofile(MP.."/intllib.lua") +local S = dofile(MP.."/intllib.lua") --- Load configuration. -dofile(MP.."/config.lua") - -tp.tpr_list = {} -tp.tphr_list = {} - -local map_size = 30912 -function tp.can_teleport(to) - return to.x < map_size and to.x > -map_size and to.y < map_size and to.y > -map_size and to.z < map_size and to.z > -map_size -end - --- Teleport player to a player (used in "/tpr" and in "/tphr" command). -function tp.tpr_teleport_player() - local target_coords = source:get_pos() - local target_sound = target:get_pos() - target:set_pos(tp.find_free_position_near(target_coords)) - minetest.sound_play("whoosh", {pos = target_coords, gain = 0.5, max_hear_distance = 10}) - minetest.sound_play("whoosh", {pos = target_sound, gain = 0.5, max_hear_distance = 10}) - --tp.parti2(target_coords) -end - --- TPC & TPJ -function tp.tpc_teleport_player(player) - local pname = minetest.get_player_by_name(player) - minetest.sound_play("whoosh", {pos = pname:get_pos(), gain = 0.5, max_hear_distance = 10}) - pname:set_pos(tp.find_free_position_near(target_coords)) - minetest.sound_play("whoosh", {pos = target_coords, gain = 0.5, max_hear_distance = 10}) - --tp.parti2(target_coords) -end - --- TPP -function tp.tpp_teleport_player(player) - local pname = minetest.get_player_by_name(player) - minetest.sound_play("whoosh", {pos = pname:get_pos(), gain = 0.5, max_hear_distance = 10}) - pname:set_pos(tp.find_free_position_near(pos)) - minetest.sound_play("whoosh", {pos = pos, gain = 0.5, max_hear_distance = 10}) - --tp.parti2(target_coords) -end - -function tp.find_free_position_near(pos) - local tries = { - {x=1,y=0,z=0}, - {x=-1,y=0,z=0}, - {x=0,y=0,z=1}, - {x=0,y=0,z=-1}, - } - for _,d in pairs(tries) do - local p = vector.add(pos, d) - if not minetest.registered_nodes[minetest.get_node(p).name].walkable then - return p, true - end - end - return pos, false -end - -function tp.parti(pos) - minetest.add_particlespawner(50, 0.4, - {x=pos.x + 0.5, y=pos.y, z=pos.z + 0.5}, {x=pos.x - 0.5, y=pos.y, z=pos.z - 0.5}, - {x=0, y=5, z=0}, {x=0, y=0, z=0}, - {x=0, y=5, z=0}, {x=0, y=0, z=0}, - 3, 5, - 3, 5, - false, - "tps_portal_parti.png") -end - -function tp.parti2(pos) - minetest.add_particlespawner(50, 0.4, - {x=pos.x + 0.5, y=pos.y + 10, z=pos.z + 0.5}, {x=pos.x - 0.5, y=pos.y, z=pos.z - 0.5}, - {x=0, y=-5, z=0}, {x=0, y=0, z=0}, - {x=0, y=-5, z=0}, {x=0, y=0, z=0}, - 3, 5, - 3, 5, - false, - "tps_portal_parti.png") -end - --- Teleport Request System -function tp.clear_tpr_list(name) - if tp.tpr_list[name] then - tp.tpr_list[name] = nil - return - end -end - -function tp.clear_tphr_list(name) - if tp.tphr_list[name] then - tp.tphr_list[name] = nil - return - end -end +tp = { + intllib = S, + tpr_list = {}, + tphr_list = {} +} -- Clear requests when the player leaves minetest.register_on_leaveplayer(function(name) @@ -132,469 +42,17 @@ minetest.register_on_leaveplayer(function(name) tp.tpr_list[name] = nil return end - + if tp.tphr_list[name] then tp.tphr_list[name] = nil return end end) -function tp.tpr_send(sender, receiver) - -- Compatibility with beerchat (UNTESTED) - if minetest.get_modpath("beerchat") and not minetest.check_player_privs(sender, {tp_admin = true}) then - if minetest.get_player_by_name(sender):get_attribute("beerchat:muted:" .. sender) then - minetest.chat_send_player(sender, S("You are not allowed to send requests because you're muted.")) - if minetest.get_modpath("chat2") then - chat2.send_message(minetest.get_player_by_name(sender), S("You are not allowed to send requests because you're muted."), 0xFFFFFF) - end - return - end - end - if minetest.check_player_privs(sender, {tp_admin = true}) and tp.enable_immediate_teleport then - if receiver == "" then - minetest.chat_send_player(sender, S("Usage: /tpr ")) - if minetest.get_modpath("chat2") then - chat2.send_message(minetest.get_player_by_name(sender), S("Usage: /tpr "), 0xFFFFFF) - end - return - end - if not minetest.get_player_by_name(receiver) then - minetest.chat_send_player(sender, S("There is no player by that name. Keep in mind this is case-sensitive, and the player must be online")) - if minetest.get_modpath("chat2") then - chat2.send_message(minetest.get_player_by_name(sender), S("There is no player by that name. Keep in mind this is case-sensitive, and the player must be online"), 0xFFFFFF) - end - return - end - tp.tpr_list[receiver] = sender - tp.tpr_accept(receiver) - minetest.chat_send_player(sender, S("You are teleporting to @1.", receiver)) - if minetest.get_modpath("chat2") then - chat2.send_message(minetest.get_player_by_name(sender), S("You are teleporting to @1.", receiver), 0xFFFFFF) - end - return - end - - if receiver == "" then - minetest.chat_send_player(sender, S("Usage: /tpr ")) - if minetest.get_modpath("chat2") then - chat2.send_message(minetest.get_player_by_name(sender), S("Usage: /tpr "), 0xFFFFFF) - end - return - end - - if not minetest.get_player_by_name(receiver) then - minetest.chat_send_player(sender, S("There is no player by that name. Keep in mind this is case-sensitive, and the player must be online")) - if minetest.get_modpath("chat2") then - chat2.send_message(minetest.get_player_by_name(sender), S("There is no player by that name. Keep in mind this is case-sensitive, and the player must be online"), 0xFFFFFF) - end - return - end - if minetest.get_modpath("chat2") then - chat2.send_message(minetest.get_player_by_name(receiver), S("@1 is requesting to teleport to you. /tpy to accept", sender), 0xFFFFFF) - chat2.send_message(minetest.get_player_by_name(sender), S("Teleport request sent! It will timeout in @1 seconds", tp.timeout_delay), 0xFFFFFF) - end - minetest.chat_send_player(receiver, S("@1 is requesting to teleport to you. /tpy to accept", sender)) - minetest.chat_send_player(sender, S("Teleport request sent! It will timeout in @1 seconds", tp.timeout_delay)) - -- Write name values to list and clear old values. - tp.tpr_list[receiver] = sender - -- Teleport timeout delay - minetest.after(tp.timeout_delay, function(name) - if tp.tpr_list[name] then - tp.tpr_list[name] = nil - minetest.chat_send_player(sender, S("Request timed-out.")) - minetest.chat_send_player(receiver, S("Request timed-out.")) - if minetest.get_modpath("chat2") then - chat2.send_message(minetest.get_player_by_name(sender), S("Request timed-out."), 0xFFFFFF) - chat2.send_message(minetest.get_player_by_name(receiver), S("Request timed-out."), 0xFFFFFF) - end - return - end - end, receiver) -end - -function tp.tphr_send(sender, receiver) - -- Compatibility with beerchat (UNTESTED) - if minetest.get_modpath("beerchat") and not minetest.check_player_privs(sender, {tp_admin = true}) then - if minetest.get_player_by_name(sender):get_attribute("beerchat:muted:" .. sender) then - minetest.chat_send_player(sender, S("You are not allowed to send requests because you're muted.")) - if minetest.get_modpath("chat2") then - chat2.send_message(minetest.get_player_by_name(sender), S("You are not allowed to send requests because you're muted."), 0xFFFFFF) - end - return - end - end - if minetest.check_player_privs(sender, {tp_admin = true}) and tp.enable_immediate_teleport then - if receiver == "" then - minetest.chat_send_player(sender, S("Usage: /tphr ")) - if minetest.get_modpath("chat2") then - chat2.send_message(minetest.get_player_by_name(sender), S("Usage. /tphr "), 0xFFFFFF) - end - return - end - if not minetest.get_player_by_name(receiver) then - minetest.chat_send_player(sender, S("There is no player by that name. Keep in mind this is case-sensitive, and the player must be online")) - if minetest.get_modpath("chat2") then - chat2.send_message(minetest.get_player_by_name(sender), S("There is no player by that name. Keep in mind this is case-sensitive, and the player must be online"), 0xFFFFFF) - end - return - end - tp.tphr_list[receiver] = sender - tp.tpr_accept(receiver) - minetest.chat_send_player(sender, S("@1 is teleporting to you.", receiver)) - if minetest.get_modpath("chat2") then - chat2.send_message(minetest.get_player_by_name(sender), S("@1 is teleporting to you.", receiver), 0xFFFFFF) - end - return - end - if receiver == "" then - minetest.chat_send_player(sender, S("Usage: /tphr ")) - if minetest.get_modpath("chat2") then - chat2.send_message(minetest.get_player_by_name(sender), S("Usage. /tphr "), 0xFFFFFF) - end - return - end - - if not minetest.get_player_by_name(receiver) then - minetest.chat_send_player(sender, S("There is no player by that name. Keep in mind this is case-sensitive, and the player must be online")) - if minetest.get_modpath("chat2") then - chat2.send_message(minetest.get_player_by_name(sender), S("There is no player by that name. Keep in mind this is case-sensitive, and the player must be online"), 0xFFFFFF) - end - return - end - if minetest.get_modpath("chat2") then - chat2.send_message(minetest.get_player_by_name(receiver), S("@1 is requesting that you teleport to them. /tpy to accept; /tpn to deny", sender), 0xFFFFFF) - chat2.send_message(minetest.get_player_by_name(sender), S("Teleport request sent! It will timeout in @1 seconds", tp.timeout_delay), 0xFFFFFF) - end - minetest.chat_send_player(receiver, S("@1 is requesting that you teleport to them. /tpy to accept; /tpn to deny", sender)) - minetest.chat_send_player(sender, S("Teleport request sent! It will timeout in @1 seconds", tp.timeout_delay)) - -- Write name values to list and clear old values. - tp.tphr_list[receiver] = sender - -- Teleport timeout delay - minetest.after(tp.timeout_delay, function(name) - if tp.tphr_list[name] then - tp.tphr_list[name] = nil - minetest.chat_send_player(sender, S("Request timed-out.")) - minetest.chat_send_player(receiver, S("Request timed-out.")) - if minetest.get_modpath("chat2") then - chat2.send_message(minetest.get_player_by_name(sender), S("Request timed-out"), 0xFFFFFF) - chat2.send_message(minetest.get_player_by_name(receiver), S("Request timed-out"), 0xFFFFFF) - end - return - end - end, receiver) -end - -function tp.tpc_send(player, coordinates) - - local posx,posy,posz = string.match(coordinates, "^(-?%d+), (-?%d+), (-?%d+)$") - local pname = minetest.get_player_by_name(player) - - if posx ~= nil or posy ~= nil or posz ~= nil then - posx = tonumber(posx) + 0.0 - posy = tonumber(posy) + 0.0 - posz = tonumber(posz) + 0.0 - end - - if posx==nil or posy==nil or posz==nil or string.len(posx) > 6 or string.len(posy) > 6 or string.len(posz) > 6 then - minetest.chat_send_player(player, S("Usage: /tpc ")) - if minetest.get_modpath("chat2") then - chat2.send_message(minetest.get_player_by_name(player), S("Usage: /tpc "), 0xFFFFFF) - end - return nil - end - - target_coords = {x=posx, y=posy, z=posz} - - if tp.can_teleport(target_coords) == false then - minetest.chat_send_player(player, S("You cannot teleport to a location outside the map!")) - if minetest.get_modpath("chat2") then - chat2.send_message(minetest.get_player_by_name(player), S("You cannot teleport to a location outside the map!"), 0xFFFFFF) - end - return nil - end - - -- If the area is protected, reject the user's request to teleport to these coordinates - -- In future release we'll actually query the player who owns the area, if they're online, and ask for their permission. - -- Admin user (priv "tp_admin") overrides all protection - if minetest.check_player_privs(pname, {tp_admin = true}) then - tp.tpc_teleport_player(player) - minetest.chat_send_player(player, S("Teleporting to: @1, @2, @3", posx, posy, posz)) - if minetest.get_modpath("chat2") then - chat2.send_message(minetest.get_player_by_name(player), S("Teleporting to: @1, @2, @3", posx, posy, posz), 0xFFFFFF) - end - else - if minetest.check_player_privs(pname, {tp_tpc = true}) then - local protected = minetest.is_protected(target_coords,pname) - if protected and minetest.get_modpath("areas") then - if not areas:canInteract(target_coords, player) then - local owners = areas:getNodeOwners(target_coords) - minetest.chat_send_player(player, S("Error: @1 is protected by @2.", minetest.pos_to_string(target_coords), table.concat(owners, ", "))) - if minetest.get_modpath("chat2") then - chat2.send_message(minetest.get_player_by_name(player), S("Error: @1 is protected by @2.", minetest.pos_to_string(target_coords), table.concat(owners, ", ")), 0xFFFFFF) - end - return - end - end - tp.tpc_teleport_player(player) - minetest.chat_send_player(player, S("Teleporting to: @1, @2, @3", posx, posy, posz)) - if minetest.get_modpath("chat2") then - chat2.send_message(minetest.get_player_by_name(player), S("Teleporting to: @1, @2, @3", posx, posy, posz), 0xFFFFFF) - end - else - minetest.chat_send_player(player, S("Error: You do not have permission to teleport to those coordinates.")) - if minetest.get_modpath("chat2") then - chat2.send_message(minetest.get_player_by_name(player), S("Error: You do not have permission to teleport to those coordinates."), 0xFFFFFF) - end - return - end - end -end - -function tp.tpr_deny(name) - if tp.tpr_list[name] then - name2 = tp.tpr_list[name] - minetest.chat_send_player(name2, S("Teleport request denied.")) - minetest.chat_send_player(name, S("You denied the request @1 sent you.", name2)) - if minetest.get_modpath("chat2") then - chat2.send_message(minetest.get_player_by_name(name2), S("Teleport request denied."), 0xFFFFFF) - chat2.send_message(minetest.get_player_by_name(name), S("You denied the request @1 sent you.", name2), 0xFFFFFF) - end - tp.tpr_list[name] = nil - elseif tp.tphr_list[name] then - name2 = tp.tphr_list[name] - minetest.chat_send_player(name2, S("Teleport request denied.")) - minetest.chat_send_player(name, S("You denied the request @1 sent you.", name2)) - if minetest.get_modpath("chat2") then - chat2.send_message(minetest.get_player_by_name(name2), S("Teleport request denied."), 0xFFFFFF) - chat2.send_message(minetest.get_player_by_name(name), S("You denied the request @1 sent you.", name2), 0xFFFFFF) - end - tp.tphr_list[name] = nil - else - minetest.chat_send_player(name, S("Usage: /tpn allows you to deny teleport requests sent to you by other players.")) - if minetest.get_modpath("chat2") then - chat2.send_message(minetest.get_player_by_name(name), S("Usage: /tpn allows you to deny teleport requests sent to you by other players."), 0xFFFFFF) - end - return - end -end - --- Teleport Accept Systems -function tp.tpr_accept(name, param) - -- Check to prevent constant teleporting. - if not tp.tpr_list[name] and not tp.tphr_list[name] then - minetest.chat_send_player(name, S("Usage: /tpy allows you to accept teleport requests sent to you by other players")) - if minetest.get_modpath("chat2") then - chat2.send_message(minetest.get_player_by_name(name), S("Usage: /tpy allows you to accept teleport requests sent to you by other players"), 0xFFFFFF) - end - return - end - - if tp.tpr_list[name] then - name2 = tp.tpr_list[name] - source = minetest.get_player_by_name(name) - target = minetest.get_player_by_name(name2) - chatmsg = S("@1 is teleporting to you.", name2) - tp.tpr_list[name] = nil - elseif tp.tphr_list[name] then - name2 = tp.tphr_list[name] - source = minetest.get_player_by_name(name2) - target = minetest.get_player_by_name(name) - chatmsg = S("You are teleporting to @1.", name2) - tp.tphr_list[name] = nil - else - return - end - - -- Could happen if either player disconnects (or timeout); if so just abort - if not source - or not target then - minetest.chat_send_player(name, S("@1 doesn't exist, or just disconnected/left (by timeout).", name2)) - return - end - tp.tpr_teleport_player() - minetest.chat_send_player(name2, S("Request Accepted!")) - minetest.chat_send_player(name, chatmsg) - if minetest.get_modpath("chat2") then - chat2.send_message(minetest.get_player_by_name(name2), S("Request Accepted!"), 0xFFFFFF) - chat2.send_message(minetest.get_player_by_name(name), chatmsg, 0xFFFFFF) - end -end - --- Teleport Jump - Relative Position Teleportation by number of nodes -function tp.tpj(player, param) - local pname = minetest.get_player_by_name(player) - - if param == "" then - minetest.chat_send_player(player, S("Usage: ")) - if minetest.get_modpath("chat2") then - chat2.send_message(minetest.get_player_by_name(player), S("Usage: "), 0xFFFFFF) - end - return false - end - - local args = param:split(" ") -- look into this. Can it crash if the player does not have two parameters? - if #args < 2 then - minetest.chat_send_player(player, S("Usage: ")) - if minetest.get_modpath("chat2") then - chat2.send_message(minetest.get_player_by_name(player), S("Usage: "), 0xFFFFFF) - end - return false - end - - if not tonumber(args[2]) then - return false, S("Not a number!") - end - - -- Initially generate the target coords from the player's current position (since it's relative) and then perform the math. - target_coords = minetest.get_player_by_name(player):get_pos() - if args[1] == "x" then - target_coords["x"] = target_coords["x"] + tonumber(args[2]) - elseif args[1] == "y" then - target_coords["y"] = target_coords["y"] + tonumber(args[2]) - elseif args[1] == "z" then - target_coords["z"] = target_coords["z"] + tonumber(args[2]) - else - minetest.chat_send_player(player, S("Not a valid axis. Valid options are X, Y or Z")) - if minetest.get_modpath("chat2") then - chat2.send_message(minetest.get_player_by_name(player), S("Not a valid axis. Valid options are X, Y or Z"), 0xFFFFFF) - end - return - end - if tp.can_teleport(target_coords) == false then - minetest.chat_send_player(player, S("You cannot teleport to a location outside the map!")) - if minetest.get_modpath("chat2") then - chat2.send_message(minetest.get_player_by_name(player), S("You cannot teleport to a location outside the map!"), 0xFFFFFF) - end - return - end - tp.tpc_teleport_player(player) -end - --- Evade -function tp.tpe(player) - if minetest.get_modpath("chat2") then - chat2.send_message(minetest.get_player_by_name(player), S("EVADE!"), 0xFFFFFF) - end - minetest.chat_send_player(player, S("EVADE!")) - local mindistance = 15 - local maxdistance = 50 - local times = math.random(6,20) -- how many times to jump - minimum,maximum - local negatives = { '-','' } -- either it's this way or that way: the difference between -10 and 10 - local options = { 'x', 'y', 'z' } - local isnegative = '' - local distance = 0 - local axis = '' - local iteration = 0 - for i = 1,times do - -- do this every 1 second - minetest.after(iteration, - function() - isnegative = negatives[math.random(2)] -- choose randomly whether this is this way or that - distance = isnegative .. math.random(mindistance,maxdistance) -- the distance to jump - axis = options[math.random(3)] - local command = axis .. " " .. distance - tp.tpj(player, command) - end - ) - iteration = iteration + 0.5 - end -end - --- Register chatcommands -if tp.enable_tpp_command then - minetest.register_chatcommand("tpp", { - description = S("Teleport to a place (i.e., spawn, shop)."), - params = S(" | leave empty to see available places"), - privs = {}, - func = function(player, param) - local pname = minetest.get_player_by_name(player) - - -- Show the available places to the player (taken from shivajiva101's POI mod, thanks!). - if param == "" then - local places = {} - if not tp.available_places then tp.available_places = {} end - for key, value in pairs(tp.available_places) do - if minetest.get_modpath("chat2") then - chat2.send_message(minetest.get_player_by_name(player), key, 0xFFFFFF) - end - table.insert(places, key) - end - if #places == 0 then - if minetest.get_modpath("chat2") then - chat2.send_message(minetest.get_player_by_name(player), S("There are no places yet."), 0xFFFFFF) - end - return true, S("There are no places yet.") - end - if minetest.get_modpath("chat2") then - chat2.send_message(minetest.get_player_by_name(player), S("Usage: /tpp "), 0xFFFFFF) - end - table.insert(places, S("Usage: /tpp ")) - return true, table.concat(places, "\n") - -- Teleport player to the specified place (taken from shivajiva101's POI mod, thanks!). - elseif tp.available_places[param] then - pos = {x = tp.available_places[param].x, y = tp.available_places[param].y, z = tp.available_places[param].z} - tp.tpp_teleport_player(player) - minetest.chat_send_player(player, S("Teleporting to @1.", param)) - if minetest.get_modpath("chat2") then - chat2.send_message(minetest.get_player_by_name(player), S("Teleporting to @1.", param), 0xFFFFFF) - end - -- Check if the place exists. - elseif not tp.available_places[param] then - minetest.chat_send_player(player, S("There is no place by that name. Keep in mind this is case-sensitive.")) - if minetest.get_modpath("chat2") then - chat2.send_message(minetest.get_player_by_name(player), S("There is no place by that name. Keep in mind this is case-sensitive."), 0xFFFFFF) - end - return - end - end, - }) -end - -minetest.register_chatcommand("tpr", { - description = S("Request teleport to another player"), - params = S(" | leave playername empty to see help message"), - privs = {interact = true, tp = true}, - func = tp.tpr_send -}) - -minetest.register_chatcommand("tphr", { - description = S("Request player to teleport to you"), - params = S(" | leave playername empty to see help message"), - privs = {interact = true, tp = true}, - func = tp.tphr_send -}) - -minetest.register_chatcommand("tpc", { - description = S("Teleport to coordinates"), - params = S(" | leave coordinates empty to see help message"), - privs = {interact = true, tp_tpc = true, tp = true}, - func = tp.tpc_send -}) - -minetest.register_chatcommand("tpj", { - description = S("Teleport to relative position"), - params = S(" | leave empty to see help message"), - privs = {interact = true, tp_tpc = true, tp = true}, - func = tp.tpj -}) - -minetest.register_chatcommand("tpe", { - description = S("Evade Enemy"), - privs = {interact = true, tp_tpc = true, tp = true}, - func = tp.tpe -}) - -minetest.register_chatcommand("tpy", { - description = S("Accept teleport requests from another player"), - privs = {interact = true, tp = true}, - func = tp.tpr_accept -}) - -minetest.register_chatcommand("tpn", { - description = S("Deny teleport requests from another player"), - privs = {interact = true, tp = true}, - func = tp.tpr_deny -}) +dofile(MP.."/privileges.lua") +dofile(MP.."/config.lua") +dofile(MP.."/functions.lua") +dofile(MP.."/commands.lua") -- Log if minetest.settings:get_bool("log_mods") then diff --git a/teleport_request/locale/es.po b/teleport_request/locale/es.po index af580f89..cd452a70 100644 --- a/teleport_request/locale/es.po +++ b/teleport_request/locale/es.po @@ -1,7 +1,7 @@ # Spanish translation for Teleport Request. -# Copyright (C) 2015-2019 ChaosWormz and contributors. +# Copyright (C) 2014-2020 ChaosWormz and contributors. # This file is distributed under under the same license as the Teleport Request package. -# Panquesito7, 2019. +# David Leal , 2019. msgid "" msgstr "" @@ -9,7 +9,7 @@ msgstr "" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2019-07-12 5:07+0200\n" "PO-Revision-Date: \n" -"Last-Translator: FULL NAME \n" +"Last-Translator: David Leal \n" "Language-Team: \n" "Language: es\n" "MIME-Version: 1.0\n" @@ -40,6 +40,10 @@ msgstr "Uso: /tpr " msgid "There is no player by that name. Keep in mind this is case-sensitive, and the player must be online" msgstr "No hay jugador con ese nombre. Tenga en cuenta que esto es caso-sensitivo, y el jugador debe de estar én linea." +#: init.lua +msgid "Teleport request denied, player is in the gamehub!" +msgstr "Solicitud denegada, ¡el jugador esta en el centro de juegos!" + #: init.lua msgid "You are teleporting to @1." msgstr "Te estas teletransportando a @1." diff --git a/teleport_request/locale/template.pot b/teleport_request/locale/template.pot index 71dd5dfd..eba900d5 100644 --- a/teleport_request/locale/template.pot +++ b/teleport_request/locale/template.pot @@ -1,7 +1,7 @@ # Template translation for Teleport Request. -# Copyright (C) 2015-2019 ChaosWormz and contributors. +# Copyright (C) 2014-2020 ChaosWormz and contributors. # This file is distributed under under the same license as the Teleport Request package. -# Panquesito7, 2019. +# David Leal , 2019. msgid "" msgstr "" @@ -9,7 +9,7 @@ msgstr "" "Report-Msgid-Bugs-To: \n" "POT-Creation-Date: 2019-07-12 5:07+0200\n" "PO-Revision-Date: \n" -"Last-Translator: FULL NAME \n" +"Last-Translator: David Leal \n" "Language-Team: \n" "Language: \n" "MIME-Version: 1.0\n" @@ -40,6 +40,10 @@ msgstr "" msgid "There is no player by that name. Keep in mind this is case sensitive, and the player must be online" msgstr "" +#: init.lua +msgid "Teleport request denied, player is in the gamehub!" +msgstr "" + #: init.lua msgid "You are teleporting to @1." msgstr "" diff --git a/teleport_request/mod.conf b/teleport_request/mod.conf index 0ed6a1db..b03155bc 100644 --- a/teleport_request/mod.conf +++ b/teleport_request/mod.conf @@ -1,3 +1,3 @@ name = tpr -optional_depends = areas, intllib, beerchat, chat2 +optional_depends = areas, intllib, beerchat, chat2, gamehub description = Allows players to send a request to other players to teleport to them, and do much more. diff --git a/teleport_request/privileges.lua b/teleport_request/privileges.lua new file mode 100644 index 00000000..b01f32c3 --- /dev/null +++ b/teleport_request/privileges.lua @@ -0,0 +1,40 @@ +--[[ +Configuration +Copyright (C) 2014-2020 ChaosWormz and contributors + +This library 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 library 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. + +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 +--]] + +-- Support for intllib +local S = tp.intllib + +minetest.register_privilege("tp", { + description = S("Let players teleport to other players (request will be sent)"), + give_to_singleplayer = false, + give_to_admin = true, +}) + +minetest.register_privilege("tp_admin", { + description = S("Gives full admin-access to a player."), + give_to_singleplayer = false, + give_to_admin = true, +}) + +minetest.register_privilege("tp_tpc", { + description = S("Allow player to teleport to coordinates (if allowed by area protection)"), + give_to_singleplayer = false, + give_to_admin = true, +}) diff --git a/teleport_request/sounds/LICENSE.txt b/teleport_request/sounds/LICENSE.txt new file mode 100644 index 00000000..8d9eaaa6 --- /dev/null +++ b/teleport_request/sounds/LICENSE.txt @@ -0,0 +1,20 @@ +Attribution-ShareAlike 4.0 International (CC BY-SA 4.0) +Copyright (C) 2020 David Leal (halfpacho@gmail.com) & ChaosWormz + +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. + +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. + +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://creativecommons.org/licenses/by-sa/4.0/ diff --git a/teleport_request/sounds/tpr_warp.ogg b/teleport_request/sounds/tpr_warp.ogg new file mode 100644 index 0000000000000000000000000000000000000000..6199bd83f1447531755053418cbe485af3f9b7fc GIT binary patch literal 30788 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 literal 0 HcmV?d00001 diff --git a/teleport_request/sounds/whoosh.ogg b/teleport_request/sounds/whoosh.ogg deleted file mode 100644 index 99ea7cd1a2e7235e982bd21ac5c32db9ee07827b..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 25717 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 E1D?x?G5`Po diff --git a/trunks/depends.txt b/trunks/depends.txt deleted file mode 100644 index dd4373be..00000000 --- a/trunks/depends.txt +++ /dev/null @@ -1,7 +0,0 @@ -default -biome_lib -plantlife_i18n -bushes? -ferns? -moretrees? -trees? diff --git a/trunks/init.lua b/trunks/init.lua index 727e4849..a82f7e3f 100644 --- a/trunks/init.lua +++ b/trunks/init.lua @@ -8,7 +8,7 @@ local mname = "trunks" abstract_trunks = {} -- support for i18n -local S = plantlife_i18n.gettext +local S = minetest.get_translator("trunks") dofile(minetest.get_modpath("trunks").."/trunks_settings.txt") dofile(minetest.get_modpath("trunks").."/generating.lua") diff --git a/trunks/locale/template.txt b/trunks/locale/template.txt new file mode 100644 index 00000000..50cbff1f --- /dev/null +++ b/trunks/locale/template.txt @@ -0,0 +1,17 @@ +# textdomain: trunks + +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# FIRST AUTHOR , YEAR. +# + +Twig= +Moss= +Moss with Fungus= +Twigs Block= +Twigs Slab= +Twigs Roof= +Twigs Roof Corner 1= +Twigs Roof Corner 2= +@1 Root= diff --git a/trunks/locale/trunks.fr.tr b/trunks/locale/trunks.fr.tr new file mode 100644 index 00000000..4ef33922 --- /dev/null +++ b/trunks/locale/trunks.fr.tr @@ -0,0 +1,17 @@ +# textdomain: trunks + +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# fat115 , 2017. +# + +Twig=Brindille +Moss=Mousse +Moss with Fungus=Mousse et champignons +Twigs Block=Bloc de brindilles +Twigs Slab=Dalle en brindilles +Twigs Roof=Toit de brindilles +Twigs Roof Corner 1=Angle de toit de brindilles 1 +Twigs Roof Corner 2=Angle de toit de brindilles 2 +@1 Root=Racine de @1 diff --git a/trunks/mod.conf b/trunks/mod.conf new file mode 100644 index 00000000..1829758e --- /dev/null +++ b/trunks/mod.conf @@ -0,0 +1,3 @@ +name = trunks +depends = default, biome_lib +optional_depends = bushes, ferns, moretrees, trees diff --git a/trunks/nodes.lua b/trunks/nodes.lua index b5bafa9f..c8199b68 100644 --- a/trunks/nodes.lua +++ b/trunks/nodes.lua @@ -1,6 +1,6 @@ -- Code by Mossmanikin & Neuromancer -- support for i18n -local S = plantlife_i18n.gettext +local S = minetest.get_translator("trunks") ----------------------------------------------------------------------------------------------- -- TWiGS ----------------------------------------------------------------------------------------------- @@ -334,7 +334,7 @@ for i in pairs(TRuNKS) do local des = node.description minetest.register_node("trunks:"..TRuNK.."root", { - description = des.." "..S("Root"), + description = S("@1 Root", des), paramtype = "light", paramtype2 = "facedir", tiles = { diff --git a/unified_inventory/locale/unified_inventory.it.tr b/unified_inventory/locale/unified_inventory.it.tr new file mode 100644 index 00000000..1bf76601 --- /dev/null +++ b/unified_inventory/locale/unified_inventory.it.tr @@ -0,0 +1,79 @@ +# textdomain: unified_inventory +Crafting=Assemblaggio +Mixing=Unione +Cooking=Cottura +Digging=Scavo +Bags=Borse +Bag @1=Borsa @1 +Small Bag=Borsa piccola +Medium Bag=Borsa media +Large Bag=Borsa grande + and = e +First page=Prima pagina +Back three pages=Indietro di tre pagine +Back one page=Indietro di una pagina +Forward one page=Avanti di una pagina +Forward three pages=Avanti di tre pagine +Last page=Ultima pagina +Search=Cerca +Reset search and display everything=Azzera la ricerca e mostra tutto +No matching items=Nessun oggetto corrispondente +No matches.=Nessuna corrispondenza. +Page=Pagina +@1 of @2=@1 di @2 +Filter=Filtro +Can use the creative inventory=Può usare l'inventario creativo +Crafting Grid=Griglia di assemblaggio +Crafting Guide=Guida di assemblaggio +Set home position=Imposta la residenza +Home position set to: @1=Residenza impostata su: @1 +You don't have the "home" privilege!=Non hai il privilegio "home"! +Go home=Torna a casa +Set time to day=Imposta l'orario sul giorno +Time of day set to 6am=Orario impostato sulle 6am +You don't have the settime privilege!=Non hai il privilegio "time"! +Set time to night=Imposta l'orario sulla notte +Time of day set to 9pm=Orario impostato sulle 9am +Clear inventory=Ripulisci l'inventario +Inventory cleared!=Inventario ripulito! +Trash:=Butta: +Refill:=Riempi: +Any item belonging to the @1 group=Qualunque oggetto appartenente al gruppo @1 +Any item belonging to the groups @1=Qualunque oggetto appartenente ai gruppi @1 +Recipe @1 of @2=Ricetta @1 di @2 +Usage @1 of @2=Uso @1 di @2 +No recipes=Nessuna ricetta +No usages=Nessun utilizzo +Result=Risultato +Ingredient=Ingrediente +Show next recipe=Mostra la prossima ricetta +Show next usage=Mostra il prossimo utilizzo +Show previous recipe=Mostra la ricetta precedente +Show previous usage=Mostra l'utilizzo precedente +Give me:=Dammi: +To craft grid:=Alla griglia di assemblaggio: +All=Tutto +White=Bianco +Yellow=Giallo +Red=Rosso +Green=Verde +Blue=Blu +Waypoints=Tappe +Select Waypoint #@1=Seleziona tappa n°@1 +Waypoint @1=Tappa @1 +Set waypoint to current location=Imposta tappa alla posizione attuale +invisible=invisibile +visible=visibile +Make waypoint @1=Crea tappa @1 +Disable=Disabilita +Enable=Abilita +@1 display of waypoint coordinates=@1 la visualizzazione delle coordinate della tappa +Change color of waypoint display=Modifica il colore della visualizzazione della tappa +Edit waypoint name=Modifica il nome della tappa +Waypoint active=Tappa attiva +Waypoint inactive=Tappa inattiva +Finish editing=Termina la modifica +World position=Posizione del mondo +Name=Nome +HUD text color=Colore del testo del visore +Forces Unified Inventory to be displayed in Full mode if Lite mode is configured globally=Forza la visualizzazione di Unified Inventory in modalità completa se è configurata globalmente la visualizzazione semplice diff --git a/unified_inventory/locale/unified_inventory.zh_CN.tr b/unified_inventory/locale/unified_inventory.zh_CN.tr new file mode 100644 index 00000000..524ad671 --- /dev/null +++ b/unified_inventory/locale/unified_inventory.zh_CN.tr @@ -0,0 +1,78 @@ +# textdomain: unified_inventory +# traslation by: IFRFSX(BingFengFSX) +#Email: IFRFSX@Protonmail.com + +Crafting=合成 +Mixing=混合 +Cooking=烹饪 +Digging=挖出 +Bags=背包 +Bag @1=背包@1 +Small Bag=小背包 +Medium Bag=中背包 +Large Bag=大背包 + and = 和 +First page=第一页 +Back three pages=后退三页 +Back one page=后退一页 +Forward one page=前进一页 +Forward three pages=前进三页 +Last page=最后一页 +Search=搜索 +No matching items=没有匹配物品 +No matches.=没有匹配 +Page=页面 +@1 of @2=第@1页,共@2页 +Filter=过滤器 +Can use the creative inventory=可以使用创造背包 +Crafting Grid=合成表 +Crafting Guide=合成指南 +Set home position=设置家的位置 +Home position set to: @1=家的位置设置到: @1 +You don't have the "home" privilege!=你没有“home”权限! +Go home=回家 +Set time to day=设置时间到白天 +Time of day set to 6am=时间设置到早晨6点 +You don't have the settime privilege!=你没有“settime”权限! +Set time to night=设置时间到晚上 +Time of day set to 9pm=时间设置到晚上9点 + +Inventory cleared!=清空背包 +Clear inventory=清空背包 + +Trash:=丢弃: +Refill:=填满: +Recipe @1 of @2=第@1配方,共@2个 +Usage @1 of @2=第@1用法,共@2个 +No recipes=没有配方 +No usages=没有用法 +Result=结果 +Ingredient=原料 +Give me:=给予: +To craft grid:=填充物品到合成表 +All=全部 +White=白 +Yellow=黄 +Red=红 +Green=绿 +Blue=蓝 +Waypoints=航路点 +Select Waypoint #@1=查询航路点 #@1 +Waypoint @1=航路点 @1 +Set waypoint to current location=将航路点设置到当前位置 +invisible=不可见的 +visible=可见的 +Make waypoint @1=设置航路点 @1 +@1 display of waypoint coordinates=显示航路点@1坐标 +Change color of waypoint display=改变航路点显示的颜色 +Edit waypoint name=编辑航路点名称 +Waypoint active=航路点已激活 +Waypoint inactive=航路点未激活 +Finish editing=完成编辑 +World position=世界位置 +Name=名称 +HUD text color=HUD文本颜色 + +#new + +Reset search and display everything=重置搜索并显示所有物品 diff --git a/unified_inventory/locale/unified_inventory.zh_TW.tr b/unified_inventory/locale/unified_inventory.zh_TW.tr new file mode 100644 index 00000000..fa81bbc2 --- /dev/null +++ b/unified_inventory/locale/unified_inventory.zh_TW.tr @@ -0,0 +1,78 @@ +# textdomain: unified_inventory +# traslation by: IFRFSX(BingFengFSX) +#Email: IFRFSX@Protonmail.com + +Crafting=合成 +Mixing=混合 +Cooking=烹飪 +Digging=挖出 +Bags=揹包 +Bag @1=揹包@1 +Small Bag=小揹包 +Medium Bag=中揹包 +Large Bag=大揹包 + and = 和 +First page=第一頁 +Back three pages=後退三頁 +Back one page=後退一頁 +Forward one page=前進一頁 +Forward three pages=前進三頁 +Last page=最後一頁 +Search=搜索 +No matching items=沒有匹配物品 +No matches.=沒有匹配 +Page=頁面 +@1 of @2=第@1頁,共@2頁 +Filter=過濾器 +Can use the creative inventory=可以使用創造揹包 +Crafting Grid=合成表 +Crafting Guide=合成指南 +Set home position=設置家的位置 +Home position set to: @1=家的位置設置到: @1 +You don't have the "home" privilege!=你沒有“home”權限! +Go home=回家 +Set time to day=設置時間到白天 +Time of day set to 6am=時間設置到早晨6點 +You don't have the settime privilege!=你沒有“settime”權限! +Set time to night=設置時間到晚上 +Time of day set to 9pm=時間設置到晚上9點 + +Inventory cleared!=清空揹包 +Clear inventory=清空揹包 + +Trash:=丟棄: +Refill:=填滿: +Recipe @1 of @2=第@1配方,共@2個 +Usage @1 of @2=第@1用法,共@2個 +No recipes=沒有配方 +No usages=沒有用法 +Result=結果 +Ingredient=原料 +Give me:=給予: +To craft grid:=填充物品到合成表 +All=全部 +White=白 +Yellow=黃 +Red=紅 +Green=綠 +Blue=藍 +Waypoints=航路點 +Select Waypoint #@1=查詢航路點 #@1 +Waypoint @1=航路點 @1 +Set waypoint to current location=將航路點設置到當前位置 +invisible=不可見的 +visible=可見的 +Make waypoint @1=設置航路點 @1 +@1 display of waypoint coordinates=顯示航路點@1座標 +Change color of waypoint display=改變航路點顯示的顏色 +Edit waypoint name=編輯航路點名稱 +Waypoint active=航路點已激活 +Waypoint inactive=航路點未激活 +Finish editing=完成編輯 +World position=世界位置 +Name=名稱 +HUD text color=HUD文本顏色 + +#new + +Reset search and display everything=重置搜索並顯示所有物品 diff --git a/unifieddyes/depends.txt b/unifieddyes/depends.txt deleted file mode 100644 index b08c42c4..00000000 --- a/unifieddyes/depends.txt +++ /dev/null @@ -1,4 +0,0 @@ -default -dye -intllib? - diff --git a/unifieddyes/description.txt b/unifieddyes/description.txt deleted file mode 100644 index ef5380e5..00000000 --- a/unifieddyes/description.txt +++ /dev/null @@ -1 +0,0 @@ -Unified Dyes expands the standard dye set from 15 to 90 colors. diff --git a/unifieddyes/init.lua b/unifieddyes/init.lua index 490d00d4..e8f388e0 100644 --- a/unifieddyes/init.lua +++ b/unifieddyes/init.lua @@ -33,13 +33,7 @@ unifieddyes = {} local creative_mode = minetest.settings:get_bool("creative_mode") --- Boilerplate to support localized strings if intllib mod is installed. -local S -if minetest.get_modpath("intllib") then - S = intllib.Getter() -else - S = function(s) return s end -end +local S = minetest.get_translator("unifieddyes") -- the names of the various colors here came from http://www.procato.com/rgb+index/ @@ -963,7 +957,7 @@ function unifieddyes.show_airbrush_form(player) local nodepalette = "extended" local showall = unifieddyes.player_showall[player_name] - t[1] = "size[14.5,8.5]label[7,-0.3;Select a color:]" + t[1] = "size[14.5,8.5]label[7,-0.3;"..S("Select a color:").."]" local selindic = "unifieddyes_select_overlay.png^unifieddyes_question.png]" local last_right_click = unifieddyes.player_last_right_clicked[player_name] @@ -972,7 +966,7 @@ function unifieddyes.show_airbrush_form(player) if last_right_click.def.palette == "unifieddyes_palette_colorwallmounted.png" then nodepalette = "wallmounted" elseif last_right_click.def.palette == "unifieddyes_palette_extended.png" then - t[#t+1] = "label[0.5,8.25;(Right-clicked a node that supports all 256 colors, showing them all)]" + t[#t+1] = "label[0.5,8.25;"..S("(Right-clicked a node that supports all 256 colors, showing them all)").."]" showall = true elseif last_right_click.def.palette ~= "unifieddyes_palette_extended.png" and last_right_click.def.palette ~= "unifieddyes_palette_colorwallmounted.png" @@ -986,7 +980,7 @@ function unifieddyes.show_airbrush_form(player) or not last_right_click.def.groups.ud_param2_colorable or not last_right_click.def.palette or not string.find(last_right_click.def.palette, "unifieddyes_palette_") then - t[#t+1] = "label[0.5,8.25;(Right-clicked a node not supported by the Airbrush, showing all colors)]" + t[#t+1] = "label[0.5,8.25;"..S("(Right-clicked a node not supported by the Airbrush, showing all colors)").."]" end local explist = last_right_click.def.explist @@ -1083,7 +1077,7 @@ function unifieddyes.show_airbrush_form(player) t[#t+1] = color_button_size t[#t+1] = "unifieddyes_onhand_overlay.png]label[10.7," t[#t+1] = (vps*5.51+vs) - t[#t+1] = ";Dyes]" + t[#t+1] = ";"..S("Dyes").."]" t[#t+1] = "label[10.7," t[#t+1] = (vps*5.67+vs) t[#t+1] = ";on hand]" @@ -1098,7 +1092,7 @@ function unifieddyes.show_airbrush_form(player) if painting_with then t[#t+1] = "label[10.7," t[#t+1] = (vps*4.90+vs) - t[#t+1] = ";Your selection:]" + t[#t+1] = ";"..S("Your selection:").."]" t[#t+1] = "label[10.7," t[#t+1] = (vps*5.07+vs) t[#t+1] = ";" @@ -1111,19 +1105,19 @@ function unifieddyes.show_airbrush_form(player) else t[#t+1] = "label[10.7," t[#t+1] = (vps*5.07+vs) - t[#t+1] = ";Your selection]" + t[#t+1] = ";"..S("Your selection").."]" end - t[#t+1] = "button_exit[10.5,8;2,1;cancel;Cancel]button_exit[12.5,8;2,1;accept;Accept]" + t[#t+1] = "button_exit[10.5,8;2,1;cancel;"..S("Cancel").."]button_exit[12.5,8;2,1;accept;"..S("Accept").."]" if last_right_click and last_right_click.def and nodepalette ~= "extended" then if showall then - t[#t+1] = "button[0,8;2,1;show_avail;Show Available]" - t[#t+1] = "label[2,8.25;(Currently showing all 256 colors)]" + t[#t+1] = "button[0,8;2,1;show_avail;"..S("Show Available").."]" + t[#t+1] = "label[2,8.25;"..S("(Currently showing all 256 colors)").."]" else - t[#t+1] = "button[0,8;2,1;show_all;Show All Colors]" - t[#t+1] = "label[2,8.25;(Currently only showing what the right-clicked node can use)]" + t[#t+1] = "button[0,8;2,1;show_all;"..S("Show All Colors").."]" + t[#t+1] = "label[2,8.25;"..S("(Currently only showing what the right-clicked node can use)").."]" end end diff --git a/unifieddyes/locale/de.txt b/unifieddyes/locale/de.txt deleted file mode 100644 index 01d6da4e..00000000 --- a/unifieddyes/locale/de.txt +++ /dev/null @@ -1,74 +0,0 @@ -# Translation by Xanthin - -Lime Dye = Gelbgruener Farbstoff (Gelbgruen) -Aqua Dye = Aqua Farbstoff -Sky-blue Dye = Himmelblauer Farbstoff -Red-violet Dye = Rotvioletter Farbstoff -Light Grey Dye = Hellgrauer Farbstoff - -Dark Red Dye (low saturation) = Dunkelroter Farbstoff (geringe Saettigung) -Dark Orange Dye (low saturation) = Dunkeloranger Farbstoff (geringe Saettigung) -Dark Yellow Dye (low saturation) = Dunkelgelber Farbstoff (geringe Saettigung) -Dark Lime Dye (low saturation) = Gelbgruenerlime Farbstoff (geringe Saettigung) -Dark Green Dye (low saturation) = Dunkelgruener Farbstoff (geringe Saettigung) -Dark Aqua Dye (low saturation) = Dunkelaqua Farbstoff (geringe Saettigung) -Dark Cyan Dye (low saturation) = Dunkeltuerkiser Farbstoff (geringe Saettigung) -Dark Sky-blue Dye (low saturation) = Dunkelhimmelblauer Farbstoff (geringe Saettigung) -Dark Blue Dye (low saturation) = Dunkelblauer Farbstoff (geringe Saettigung) -Dark Violet Dye (low saturation) = Dunkelvioletter Farbstoff (geringe Saettigung) -Dark Magenta Dye (low saturation) = Dunkelmagenta Farbstoff (geringe Saettigung) -Dark Red-violet Dye (low saturation) = Dunkelrotvioletter Farbstoff (geringe Saettigung) - -Dark Red Dye = Dunkelroter Farbstoff -Dark Orange Dye = Dunkeloranger Farbstoff -Dark Yellow Dye = Dunkelgelber Farbstoff -Dark Lime Dye = Dunkelgelbgruener Farbstoff -Dark Green Dye = Dunkelgruener Farbstoff -Dark Aqua Dye = Dunkelaqua Farbstoff -Dark Cyan Dye = Dunkeltuerkiser Farbstoff -Dark Sky-blue Dye = Dunkelhimmelblauer Farbstoff -Dark Blue Dye = Dunkelblauer Farbstoff -Dark Violet Dye = Dunkelvioletter Farbstoff -Dark Magenta Dye = Dunkelmagenta Farbstoff -Dark Red-violet Dye = Dunkelrotvioletter Farbstoff - -Medium Red Dye (low saturation) = Mittelroter Farbstoff (geringe Saettigung) -Medium Orange Dye (low saturation) = Mitteloranger Farbstoff (geringe Saettigung) -Medium Yellow Dye (low saturation) = Mittelgelber Farbstoff (geringe Saettigung) -Medium Lime Dye (low saturation) = Mittelgelbgruener Farbstoff (geringe Saettigung) -Medium Green Dye (low saturation) = Mittelgruener Farbstoff (geringe Saettigung) -Medium Aqua Dye (low saturation) = Mittelaqua Farbstoff (geringe Saettigung) -Medium Cyan Dye (low saturation) = Mitteltuerkiser Farbstoff (geringe Saettigung) -Medium Sky-blue Dye (low saturation) = Mittelhimmelblauer Farbstoff (geringe Saettigung) -Medium Blue Dye (low saturation) = Mittelblauer Farbstoff (geringe Saettigung) -Medium Violet Dye (low saturation) = Mittelvioletter Farbstoff (geringe Saettigung) -Medium Magenta Dye (low saturation) = Mittelmagenta Farbstoff (geringe Saettigung) -Medium Red-violet Dye (low saturation) = Mittelrotvioletter Farbstoff (geringe Saettigung) - -Medium Red Dye = Mittelroter Farbstoff -Medium Orange Dye = Mitteloranger Farbstoff -Medium Yellow Dye = Mittelgelber Farbstoff -Medium Lime Dye = Mittelgelbgruener Farbstoff -Medium Green Dye = Mittelgruener Farbstoff -Medium Aqua Dye = Mittelaqua Farbstoff -Medium Cyan Dye = Mitteltuerkiser Farbstoff -Medium Sky-blue = Mittelhimmelblauer Farbstoff -Medium Blue Dye = Mittelblauer Farbstoff -Medium Violet Dye = Mittelvioletter Farbstoff -Medium Magenta Dye = Mittelmagenta Farbstoff -Medium Red-violet Dye = Mittelrotvioletter Farbstoff - -Red Dye (low saturation) = Roter Farbstoff (geringe Saettigung) -Orange Dye (low saturation) = Oranger Farbstoff (geringe Saettigung) -Yellow Dye (low saturation) = Gelber Farbstoff (geringe Saettigung) -Lime Dye (low saturation) = Gelbgruener Farbstoff (geringe Saettigung) -Green Dye (low saturation) = Gruener Farbstoff (geringe Saettigung) -Aqua Dye (low saturation) = Aqua Farbstoff (geringe Saettigung) -Cyan Dye (low saturation) = Tuerkiser Farbstoff (geringe Saettigung) -Sky-blue Dye (low saturation) = Himmelblauer Farbstoff (geringe Saettigung) -Blue Dye (low saturation) = Blauer Farbstoff (geringe Saettigung) -Violet Dye (low saturation) = Violetter Farbstoff (geringe Saettigung) -Magenta Dye (low saturation) = Magenta Farbstoff (geringe Saettigung) lila -Red-violet Dye (low saturation) = Rotvioletter Farbstoff (geringe Saettigung) - -[UnifiedDyes] Loaded! = [UnifiedDyes] geladen! diff --git a/unifieddyes/locale/es.txt b/unifieddyes/locale/es.txt deleted file mode 100644 index 7b46b48c..00000000 --- a/unifieddyes/locale/es.txt +++ /dev/null @@ -1,87 +0,0 @@ -# Traducido por Carlos Barraza - -Lime Dye = Colorante Lima -Aqua Dye = Colorante Agua -Sky-blue Dye = Colorante Azul Cielo -Red-violet Dye = Colorante Rojo Violeta -Light Grey Dye = Colorante Gris Claro - -Dark Red Dye (low saturation) = Colorante Rojo Oscuro (baja saturación) -Dark Orange Dye (low saturation) = Colorante Naranja Oscuro (baja saturación) -Dark Yellow Dye (low saturation) = Colorante Amarillo Oscuro (baja saturación) -Dark Lime Dye (low saturation) = Colorante Lima Oscuro (baja saturación) -Dark Green Dye (low saturation) = Colorante Verde Oscuro (baja saturación) -Dark Aqua Dye (low saturation) = Colorante Agua Oscuro (baja saturación) -Dark Cyan Dye (low saturation) = Colorante Cian Oscuro (baja saturación) -Dark Sky-blue Dye (low saturation) = Colorante Azul Cielo Oscuro (baja saturación) -Dark Blue Dye (low saturation) = Colorante Azul Oscuro (baja saturación) -Dark Violet Dye (low saturation) = Colorante Violeta Oscuro (baja saturación) -Dark Magenta Dye (low saturation) = Colorante Magenta Oscuro (baja saturación) -Dark Red-violet Dye (low saturation) = Colorante Rojo Violeta Oscuro (baja saturación) - -Dark Red Dye = Colorante Rojo Oscuro -Dark Orange Dye = Colorante Naranja Oscuro -Dark Yellow Dye = Colorante Amarillo Oscuro -Dark Lime Dye = Colorante Lima Oscuro -Dark Green Dye = Colorante Verde Oscuro -Dark Aqua Dye = Colorante Agua Oscuro -Dark Cyan Dye = Colorante Cian Oscuro -Dark Sky-blue Dye = Colorante Azul Cielo Oscuro -Dark Blue Dye = Colorante Azul Oscuro -Dark Violet Dye = Colorante Violeta Oscuro -Dark Magenta Dye = Colorante Magenta Oscuro -Dark Red-violet Dye = Colorante Rojo Violeta Oscuro - -Medium Red Dye (low saturation) = Colorante Rojo Claro (baja saturación) -Medium Orange Dye (low saturation) = Colorante Naranja Claro (baja saturación) -Medium Yellow Dye (low saturation) = Colorante Amarillo Claro (baja saturación) -Medium Lime Dye (low saturation) = Colorante Lima Claro (baja saturación) -Medium Green Dye (low saturation) = Colorante Verde Claro (baja saturación) -Medium Aqua Dye (low saturation) = Colorante Agua Claro (baja saturación) -Medium Cyan Dye (low saturation) = Colorante Cian Claro (baja saturación) -Medium Sky-blue Dye (low saturation) = Colorante Azul Cielo Claro (baja saturación) -Medium Blue Dye (low saturation) = Colorante Azul Claro (baja saturación) -Medium Violet Dye (low saturation) = Colorante Violeta Claro (baja saturación) -Medium Magenta Dye (low saturation) = Colorante Magenta Claro (baja saturación) -Medium Red-violet Dye (low saturation) = Colorante Rojo Violeta Claro (baja saturación) - -Medium Red Dye = Colorante Rojo Claro -Medium Orange Dye = Colorante Naranja Claro -Medium Yellow Dye = Colorante Amarillo Claro -Medium Lime Dye = Colorante Lima Claro -Medium Green Dye = Colorante Verde Claro -Medium Aqua Dye = Colorante Agua Claro -Medium Cyan Dye = Colorante Cian Claro -Medium Sky-blue = Colorante Azul Cielo Claro -Medium Blue Dye = Colorante Azul Claro -Medium Violet Dye = Colorante Violeta Claro -Medium Magenta Dye = Colorante Magenta Claro -Medium Red-violet Dye = Colorante Rojo Violeta Claro - -Red Dye (low saturation) = Colorante Rojo (baja saturación) -Orange Dye (low saturation) = Colorante Naranja (baja saturación) -Yellow Dye (low saturation) = Colorante Amarillo (baja saturación) -Lime Dye (low saturation) = Colorante Lima (baja saturación) -Green Dye (low saturation) = Colorante Verde (baja saturación) -Aqua Dye (low saturation) = Colorante Agua (baja saturación) -Cyan Dye (low saturation) = Colorante Cian (baja saturación) -Sky-blue Dye (low saturation) = Colorante Azul Cielo (baja saturación) -Blue Dye (low saturation) = Colorante Azul (baja saturación) -Violet Dye (low saturation) = Colorante Violeta (baja saturación) -Magenta Dye (low saturation) = Colorante Magenta (baja saturación) -Red-violet Dye (low saturation) = Colorante Rojo Violeta (baja saturación) - -Red Dye = Colorante Rojo -Orange Dye = Colorante Naranja -Yellow Dye = Colorante Amarillo -Lime Dye = Colorante Lima -Green Dye = Colorante Verde -Aqua Dye = Colorante Agua -Cyan Dye = Colorante Cian -Sky-blue Dye = Colorante Azul Cielo -Blue Dye = Colorante Azul -Violet Dye = Colorante Violeta -Magenta Dye = Colorante Magenta -Red-violet Dye = Colorante Rojo Violeta - -[UnifiedDyes] Loaded! = [ColorantesUnificados] Cargado. diff --git a/unifieddyes/locale/fr.txt b/unifieddyes/locale/fr.txt deleted file mode 100644 index f8e48e20..00000000 --- a/unifieddyes/locale/fr.txt +++ /dev/null @@ -1,87 +0,0 @@ -# Template - -Lime Dye = Teinture citron-vert -Aqua Dye = Teinture aqua -Sky-blue Dye = Teinture bleu ciel -Red-violet Dye = Teinture rouge-violet -Light Grey Dye = Teinture gris clair - -Dark Red Dye (low saturation) = Teinture rouge foncé (basse saturation) -Dark Orange Dye (low saturation) = Teinture orange foncé (basse saturation) -Dark Yellow Dye (low saturation) = Teinture jaune foncé (basse saturation) -Dark Lime Dye (low saturation) = Teinture citron-vert foncé (basse saturation) -Dark Green Dye (low saturation) = Teinture vert foncé (basse saturation) -Dark Aqua Dye (low saturation) = Teinture aqua foncé (basse saturation) -Dark Cyan Dye (low saturation) = Teinture cyan foncé (basse saturation) -Dark Sky-blue Dye (low saturation) = Teinture bleu ciel foncé (basse saturation) -Dark Blue Dye (low saturation) = Teinture bleu foncé (basse saturation) -Dark Violet Dye (low saturation) = Teinture violet foncé (basse saturation) -Dark Magenta Dye (low saturation) = Teinture magenta foncé (basse saturation) -Dark Red-violet Dye (low saturation) = Teinture rouge-violet foncé (basse saturation) - -Dark Red Dye = Teinture rouge foncé -Dark Orange Dye = Teinture orange foncé -Dark Yellow Dye = Teinture jaune foncé -Dark Lime Dye = Teinture citron-vert foncé -Dark Green Dye = Teinture vert foncé -Dark Aqua Dye = Teinture aqua foncé -Dark Cyan Dye = Teinture cyan foncé -Dark Sky-blue Dye = Teinture bleu ciel foncé -Dark Blue Dye = Teinture bleu foncé -Dark Violet Dye = Teinture violet foncé -Dark Magenta Dye = Teinture magenta foncé -Dark Red-violet Dye = Teinture rouge-violet foncé - -Medium Red Dye (low saturation) = Teinture rouge moyen (basse saturation) -Medium Orange Dye (low saturation) = Teinture orange moyen (basse saturation) -Medium Yellow Dye (low saturation) = Teinture jaune moyen (basse saturation) -Medium Lime Dye (low saturation) = Teinture citron-vert moyen (basse saturation) -Medium Green Dye (low saturation) = Teinture vert moyen (basse saturation) -Medium Aqua Dye (low saturation) = Teinture aqua moyen (basse saturation) -Medium Cyan Dye (low saturation) = Teinture cyan moyen (basse saturation) -Medium Sky-blue Dye (low saturation) = Teinture bleu ciel moyen (basse saturation) -Medium Blue Dye (low saturation) = Teinture bleu moyen (basse saturation) -Medium Violet Dye (low saturation) = Teinture violet moyen (basse saturation) -Medium Magenta Dye (low saturation) = Teinture magenta moyen (basse saturation) -Medium Red-violet Dye (low saturation) = Teinture rouge-violet moyen (basse saturation) - -Medium Red Dye = Teinture rouge moyen -Medium Orange Dye = Teinture orange moyen -Medium Yellow Dye = Teinture jaune moyen -Medium Lime Dye = Teinture citron-vert moyen -Medium Green Dye = Teinture vert moyen -Medium Aqua Dye = Teinture aqua moyen -Medium Cyan Dye = Teinture cyan moyen -Medium Sky-blue = Teinture bleu ciel moyen -Medium Blue Dye = Teinture bleu moyen -Medium Violet Dye = Teinture violet moyen -Medium Magenta Dye = Teinture magenta moyen -Medium Red-violet Dye = Teinture rouge-violet moyen - -Red Dye (low saturation) = Teinture rouge (basse saturation) -Orange Dye (low saturation) = Teinture orange (basse saturation) -Yellow Dye (low saturation) = Teinture jaune (basse saturation) -Lime Dye (low saturation) = Teinture citron-vert (basse saturation) -Green Dye (low saturation) = Teinture vert (basse saturation) -Aqua Dye (low saturation) = Teinture aqua (basse saturation) -Cyan Dye (low saturation) = Teinture cyan (basse saturation) -Sky-blue Dye (low saturation) = Teinture bleu ciel (basse saturation) -Blue Dye (low saturation) = Teinture bleu (basse saturation) -Violet Dye (low saturation) = Teinture violet (basse saturation) -Magenta Dye (low saturation) = Teinture magenta (basse saturation) -Red-violet Dye (low saturation) = Teinture rouge-violet (basse saturation) - -Red Dye = Teinture rouge -Orange Dye = Teinture orange -Yellow Dye = Teinture jaune -Lime Dye = Teinture citron-vert -Green Dye = Teinture vert -Aqua Dye = Teinture aqua -Cyan Dye = Teinture cyan -Sky-blue Dye = Teinture bleu ciel -Blue Dye = Teinture bleu -Violet Dye = Teinture violet -Magenta Dye = Teinture magenta -Red-violet Dye = Teinture rouge-violet - -[UnifiedDyes] Loaded! = [UnifiedDyes] chargé ! diff --git a/unifieddyes/locale/ms.txt b/unifieddyes/locale/ms.txt deleted file mode 100644 index 9ecf80e5..00000000 --- a/unifieddyes/locale/ms.txt +++ /dev/null @@ -1,87 +0,0 @@ -# Malay translation by MuhdNurHidayat - -Lime Dye = Pewarna Hijau Pucuk Pisang -Aqua Dye = Pewarna Akuamarin -Sky-blue Dye = Pewarna Biru Langit -Red-violet Dye = Pewarna Merah Lembayung -Light Grey Dye = Pewarna Kelabu Muda - -Dark Red Dye (low saturation) = Pewarna Merah Tua (penepuan rendah) -Dark Orange Dye (low saturation) = Pewarna Jingga Tua (penepuan rendah) -Dark Yellow Dye (low saturation) = Pewarna Kuning Tua (penepuan rendah) -Dark Lime Dye (low saturation) = Pewarna Hijau Pucuk Pisang Tua (penepuan rendah) -Dark Green Dye (low saturation) = Pewarna Hijau Tua (penepuan rendah) -Dark Aqua Dye (low saturation) = Pewarna Akuamarin Tua (penepuan rendah) -Dark Cyan Dye (low saturation) = Pewarna Sian Tua (penepuan rendah) -Dark Sky-blue Dye (low saturation) = Pewarna Biru Langit Tua (penepuan rendah) -Dark Blue Dye (low saturation) = Pewarna Biru Tua (penepuan rendah) -Dark Violet Dye (low saturation) = Pewarna Lembayung Tua (penepuan rendah) -Dark Magenta Dye (low saturation) = Pewarna Magenta Tua (penepuan rendah) -Dark Red-violet Dye (low saturation) = Pewarna Merah Lembayung Tua (penepuan rendah) - -Dark Red Dye = Pewarna Merah Tua -Dark Orange Dye = Pewarna Jingga Tua -Dark Yellow Dye = Pewarna Kuning Tua -Dark Lime Dye = Pewarna Hijau Pucuk Pisang Tua -Dark Green Dye = Pewarna Hijau Tua -Dark Aqua Dye = Pewarna Akuamarin Tua -Dark Cyan Dye = Pewarna Sian Tua -Dark Sky-blue Dye = Pewarna Biru Langit Tua -Dark Blue Dye = Pewarna Biru Tua -Dark Violet Dye = Pewarna Lembayung Tua -Dark Magenta Dye = Pewarna Magenta Tua -Dark Red-violet Dye = Pewarna Merah Lembayung Tua - -Medium Red Dye (low saturation) = Pewarna Merah Sederhana (penepuan rendah) -Medium Orange Dye (low saturation) = Pewarna Jingga Sederhana (penepuan rendah) -Medium Yellow Dye (low saturation) = Pewarna Kuning Sederhana (penepuan rendah) -Medium Lime Dye (low saturation) = Pewarna Hijau Pucuk Pisang Sederhana (penepuan rendah) -Medium Green Dye (low saturation) = Pewarna Hijau Sederhana (penepuan rendah) -Medium Aqua Dye (low saturation) = Pewarna Akuamarin Sederhana (penepuan rendah) -Medium Cyan Dye (low saturation) = Pewarna Sian Sederhana (penepuan rendah) -Medium Sky-blue Dye (low saturation) = Pewarna Biru Langit Sederhana (penepuan rendah) -Medium Blue Dye (low saturation) = Pewarna Biru Sederhana (penepuan rendah) -Medium Violet Dye (low saturation) = Pewarna Lembayung Sederhana (penepuan rendah) -Medium Magenta Dye (low saturation) = Pewarna Magenta Sederhana (penepuan rendah) -Medium Red-violet Dye (low saturation) = Pewarna Merah Lembayung Sederhana (penepuan rendah) - -Medium Red Dye = Pewarna Merah Sederhana -Medium Orange Dye = Pewarna Jingga Sederhana -Medium Yellow Dye = Pewarna Kuning Sederhana -Medium Lime Dye = Pewarna Hijau Pucuk Pisang Sederhana -Medium Green Dye = Pewarna Hijau Sederhana -Medium Aqua Dye = Pewarna Akuamarin Sederhana -Medium Cyan Dye = Pewarna Sian Sederhana -Medium Sky-blue = Pewarna Biru Langit Sederhana -Medium Blue Dye = Pewarna Biru Sederhana -Medium Violet Dye = Pewarna Lembayung Sederhana -Medium Magenta Dye = Pewarna Magenta Sederhana -Medium Red-violet Dye = Pewarna Merah Lembayung Sederhana - -Red Dye (low saturation) = Pewarna Merah (penepuan rendah) -Orange Dye (low saturation) = Pewarna Jingga (penepuan rendah) -Yellow Dye (low saturation) = Pewarna Kuning (penepuan rendah) -Lime Dye (low saturation) = Pewarna Hijau Pucuk Pisang (penepuan rendah) -Green Dye (low saturation) = Pewarna Hijau (penepuan rendah) -Aqua Dye (low saturation) = Pewarna Akuamarin (penepuan rendah) -Cyan Dye (low saturation) = Pewarna Sian (penepuan rendah) -Sky-blue Dye (low saturation) = Pewarna Biru Langit (penepuan rendah) -Blue Dye (low saturation) = Pewarna Biru (penepuan rendah) -Violet Dye (low saturation) = Pewarna Lembayung (penepuan rendah) -Magenta Dye (low saturation) = Pewarna Magenta (penepuan rendah) -Red-violet Dye (low saturation) = Pewarna Merah Lembayung(penepuan rendah) - -Red Dye = Pewarna Merah -Orange Dye = Pewarna Jingga -Yellow Dye = Pewarna Kuning -Lime Dye = Pewarna Hijau Pucuk Pisang -Green Dye = Pewarna Hijau -Aqua Dye = Pewarna Akuamarin -Cyan Dye = Pewarna Sian -Sky-blue Dye = Pewarna Biru Langit -Blue Dye = Pewarna Biru -Violet Dye = Pewarna Lembayung -Magenta Dye = Pewarna Magenta -Red-violet Dye = Pewarna Merah Lembayung - -[UnifiedDyes] Loaded! = [UnifiedDyes] Telah Dimuatkan! diff --git a/unifieddyes/locale/pt.txt b/unifieddyes/locale/pt.txt deleted file mode 100644 index def35718..00000000 --- a/unifieddyes/locale/pt.txt +++ /dev/null @@ -1,85 +0,0 @@ -Lime Dye = Corante Lima -Aqua Dye = Corante Água -Sky-blue Dye = Corante Azul-Céu -Red-violet Dye = Corante Vermelho-Violeta -Light Grey Dye = Corante Cinza Claro - -Dark Red Dye (low saturation) = Corante Vermelho Escuro (baixa saturação) -Dark Orange Dye (low saturation) = Corante Laranja Escuro (baixa saturação) -Dark Yellow Dye (low saturation) = Corante Amarelo Escuro (baixa saturação) -Dark Lime Dye (low saturation) = Corante Lima Escuro (baixa saturação) -Dark Green Dye (low saturation) = Corante Verde Escuro (baixa saturação) -Dark Aqua Dye (low saturation) = Corante Água Escuro (baixa saturação) -Dark Cyan Dye (low saturation) = Corante Ciano Escuro (baixa saturação) -Dark Sky-blue Dye (low saturation) = Corante Azul-Céu Escuro (baixa saturação) -Dark Blue Dye (low saturation) = Corante Azul Escuro (baixa saturação) -Dark Violet Dye (low saturation) = Corante Violeta Escuro (baixa saturação) -Dark Magenta Dye (low saturation) = Corante Magenta Escuro (baixa saturação) -Dark Red-violet Dye (low saturation) = Corante Vermelho-Violeta Escuro (baixa saturação) - -Dark Red Dye = Corante Vermelho Escuro -Dark Orange Dye = Corante Laranja Escuro -Dark Yellow Dye = Corante Amarelo Escuro -Dark Lime Dye = Corante Lima Escuro -Dark Green Dye = Corante Verde Escuro -Dark Aqua Dye = Corante Água Escuro -Dark Cyan Dye = Corante Ciano Escuro -Dark Sky-blue Dye = Corante Azul-Céu Escuro -Dark Blue Dye = Corante Azul Escuro -Dark Violet Dye = Corante Violeta Escuro -Dark Magenta Dye = Corante Magenta Escuro -Dark Red-violet Dye = Corante Vermelho-Violeta Escuro - -Medium Red Dye (low saturation) = Corante Vermelho Médio (baixa saturação) -Medium Orange Dye (low saturation) = Corante Laranja Médio (baixa saturação) -Medium Yellow Dye (low saturation) = Corante Amarelo Médio (baixa saturação) -Medium Lime Dye (low saturation) = Corante Lima Médio (baixa saturação) -Medium Green Dye (low saturation) = Corante Verde Médio (baixa saturação) -Medium Aqua Dye (low saturation) = Corante Água Médio (baixa saturação) -Medium Cyan Dye (low saturation) = Corante Ciano Médio (baixa saturação) -Medium Sky-blue Dye (low saturation) = Corante Azul-Céu Médio (baixa saturação) -Medium Blue Dye (low saturation) = Corante Azul Médio (baixa saturação) -Medium Violet Dye (low saturation) = Corante Violeta Médio (baixa saturação) -Medium Magenta Dye (low saturation) = Corante Magenta Médio (baixa saturação) -Medium Red-violet Dye (low saturation) = Corante Vermelho-Violeta Médio (baixa saturação) - -Medium Red Dye = Corante Vermelho Médio -Medium Orange Dye = Corante Laranja Médio -Medium Yellow Dye = Corante Amarelo Médio -Medium Lime Dye = Corante Lima Médio -Medium Green Dye = Corante Verde Médio -Medium Aqua Dye = Corante Água Médio -Medium Cyan Dye = Corante Ciano Médio -Medium Sky-blue = Corante Azul-Céu Médio -Medium Blue Dye = Corante Azul Médio -Medium Violet Dye = Corante Violeta Médio -Medium Magenta Dye = Corante Magenta Médio -Medium Red-violet Dye = Corante Vermelho-Violeta Médio - -Red Dye (low saturation) = Corante Vermelho (baixa saturação) -Orange Dye (low saturation) = Corante Laranja (baixa saturação) -Yellow Dye (low saturation) = Corante Amarelo (baixa saturação) -Lime Dye (low saturation) = Corante Lima (baixa saturação) -Green Dye (low saturation) = Corante Vermelho (baixa saturação) -Aqua Dye (low saturation) = Corante Água (baixa saturação) -Cyan Dye (low saturation) = Corante Ciano (baixa saturação) -Sky-blue Dye (low saturation) = Corante Azul-Céu (baixa saturação) -Blue Dye (low saturation) = Corante Azul (baixa saturação) -Violet Dye (low saturation) = Corante Violeta (baixa saturação) -Magenta Dye (low saturation) = Corante Magenta (baixa saturação) -Red-violet Dye (low saturation) = Corante Vermelho-Violeta (baixa saturação) - -Red Dye = Corante Vermelho -Orange Dye = Corante Laranja -Yellow Dye = Corante Amarelo -Lime Dye = Corante Lima -Green Dye = Corante Verde -Aqua Dye = Corante Água -Cyan Dye = Corano Ciano -Sky-blue Dye = Corante Azul-Céu -Blue Dye = Corante Azul -Violet Dye = Corante Violeta -Magenta Dye = Corante Magenta -Red-violet Dye = Corante Vermelho-Violeta - -[UnifiedDyes] Loaded! = [UnifiedDyes] Carregado! diff --git a/unifieddyes/locale/ru.txt b/unifieddyes/locale/ru.txt deleted file mode 100644 index 41172083..00000000 --- a/unifieddyes/locale/ru.txt +++ /dev/null @@ -1,74 +0,0 @@ -# Translation by @drakes_journey - -Lime Dye = Лаймовая краска -Aqua Dye = Аквамариновая краска -Sky-blue Dye = Голубая краска -Red-violet Dye = Красно-фиолетовая краска -Light Grey Dye = Светло-серая краска - -Dark Red Dye (low saturation) = Темная красная краска (низкая насыщенность) -Dark Orange Dye (low saturation) = Темная оранжевая краска (низкая насыщенность) -Dark Yellow Dye (low saturation) = Темная желтая краска (низкая насыщенность) -Dark Lime Dye (low saturation) = Темная лаймовая краска (низкая насыщенность) -Dark Green Dye (low saturation) = Темная зеленая краска (низкая насыщенность) -Dark Aqua Dye (low saturation) = Темная аквамариновая краска (низкая насыщенность) -Dark Cyan Dye (low saturation) = Темная бирюзовая краска (низкая насыщенность) -Dark Sky-blue Dye (low saturation) = Темная голубая краска (низкая насыщенность) -Dark Blue Dye (low saturation) = Темная синяя краска (низкая насыщенность) -Dark Violet Dye (low saturation) = Темная фиолетовая краска (низкая насыщенность) -Dark Magenta Dye (low saturation) = Темная пурпурная краска (низкая насыщенность) -Dark Red-violet Dye (low saturation) = Темная краснофиолетовая краска (низкая насыщенность) - -Dark Red Dye = Темная красная краска -Dark Orange Dye = Темная оранжевая краска -Dark Yellow Dye = Темная желтая краска -Dark Lime Dye = Темная зеленая краска -Dark Green Dye = Темная зеленая краска -Dark Aqua Dye = Темная аквамариновая краска -Dark Cyan Dye = Темная бирюзовая краска -Dark Sky-blue Dye = Темная голубая краска -Dark Blue Dye = Темная синяя краска -Dark Violet Dye = Темная фиолетовая краска -Dark Magenta Dye = Темная пурпурная краска -Dark Red-violet Dye = Темная красно-фиолетовая краска - -Medium Red Dye (low saturation) = Средне-красная краска (низкая насыщенность) -Medium Orange Dye (low saturation) = Средне-оранжевая краска (низкая насыщенность) -Medium Yellow Dye (low saturation) = Средне-желтая краска (низкая насыщенность) -Medium Lime Dye (low saturation) = Средне-зеленая краска (низкая насыщенность) -Medium Green Dye (low saturation) = Средне-зеленая краска (низкая насыщенность) -Medium Aqua Dye (low saturation) = Средне-аквамариновая краска (низкая насыщенность) -Medium Cyan Dye (low saturation) = Средне-бирюзовая краска (низкая насыщенность) -Medium Sky-blue Dye (low saturation) = Средне-голубая краска (низкая насыщенность) -Medium Blue Dye (low saturation) = Средне-синяя краска (низкая насыщенность) -Medium Violet Dye (low saturation) = Средне-фиолетовая краска (низкая насыщенность) -Medium Magenta Dye (low saturation) = Средне-пурпурная краска (низкая насыщенность) -Medium Red-violet Dye (low saturation) = Средне-краснофиолетовая краска (низкая насыщенность) - -Medium Red Dye = Средне-красная краска -Medium Orange Dye = Средне-оранжевая краска -Medium Yellow Dye = Средне-желтая краска -Medium Lime Dye = Средне-лаймовая краска -Medium Green Dye = Средне-зеленая краска -Medium Aqua Dye = Средне-аквамариновая краска -Medium Cyan Dye = Средне-бирюзовая краска -Medium Sky-blue = Средне-голубая краска -Medium Blue Dye = Средне-синяя краска -Medium Violet Dye = Средне-фиолетовая краска -Medium Magenta Dye = Средне-пурпурная краска -Medium Red-violet Dye = Средне-краснофиолетовая краска - -Red Dye (low saturation) = Красная краска (низкая насыщенность) -Orange Dye (low saturation) = Оранжевая краска (низкая насыщенность) -Yellow Dye (low saturation) = Желтая краска (низкая насыщенность) -Lime Dye (low saturation) = Лаймовая краска (низкая насыщенность) -Green Dye (low saturation) = Зеленая краска (низкая насыщенность) -Aqua Dye (low saturation) = Аквамариновая краска (низкая насыщенность) -Cyan Dye (low saturation) = Бирюзовая краска (низкая насыщенность) -Sky-blue Dye (low saturation) = Голубая краска (низкая насыщенность) -Blue Dye (low saturation) = Синяя краска (низкая насыщенность) -Violet Dye (low saturation) = Фиолетовая краска (низкая насыщенность) -Magenta Dye (low saturation) = Пурпурная краска (низкая насыщенность) -Red-violet Dye (low saturation) = Краснофиолетовая краска (низкая насыщенность) - -[UnifiedDyes] Loaded! = [UnifiedDyes] загружен! diff --git a/unifieddyes/locale/template.txt b/unifieddyes/locale/template.txt index 126bef81..d7931162 100644 --- a/unifieddyes/locale/template.txt +++ b/unifieddyes/locale/template.txt @@ -1,87 +1,104 @@ +# textdomain: unifieddyes + # Template -Lime Dye = -Aqua Dye = -Sky-blue Dye = -Red-violet Dye = -Light Grey Dye = +Lime Dye= +Aqua Dye= +Sky-blue Dye= +Red-violet Dye= +Light Grey Dye= -Dark Red Dye (low saturation) = -Dark Orange Dye (low saturation) = -Dark Yellow Dye (low saturation) = -Dark Lime Dye (low saturation) = -Dark Green Dye (low saturation) = -Dark Aqua Dye (low saturation) = -Dark Cyan Dye (low saturation) = -Dark Sky-blue Dye (low saturation) = -Dark Blue Dye (low saturation) = -Dark Violet Dye (low saturation) = -Dark Magenta Dye (low saturation) = -Dark Red-violet Dye (low saturation) = +Dark Red Dye (low saturation)= +Dark Orange Dye (low saturation)= +Dark Yellow Dye (low saturation)= +Dark Lime Dye (low saturation)= +Dark Green Dye (low saturation)= +Dark Aqua Dye (low saturation)= +Dark Cyan Dye (low saturation)= +Dark Sky-blue Dye (low saturation)= +Dark Blue Dye (low saturation)= +Dark Violet Dye (low saturation)= +Dark Magenta Dye (low saturation)= +Dark Red-violet Dye (low saturation)= -Dark Red Dye = -Dark Orange Dye = -Dark Yellow Dye = -Dark Lime Dye = -Dark Green Dye = -Dark Aqua Dye = -Dark Cyan Dye = -Dark Sky-blue Dye = -Dark Blue Dye = -Dark Violet Dye = -Dark Magenta Dye = -Dark Red-violet Dye = +Dark Red Dye= +Dark Orange Dye= +Dark Yellow Dye= +Dark Lime Dye= +Dark Green Dye= +Dark Aqua Dye= +Dark Cyan Dye= +Dark Sky-blue Dye= +Dark Blue Dye= +Dark Violet Dye= +Dark Magenta Dye= +Dark Red-violet Dye= -Medium Red Dye (low saturation) = -Medium Orange Dye (low saturation) = -Medium Yellow Dye (low saturation) = -Medium Lime Dye (low saturation) = -Medium Green Dye (low saturation) = -Medium Aqua Dye (low saturation) = -Medium Cyan Dye (low saturation) = -Medium Sky-blue Dye (low saturation) = -Medium Blue Dye (low saturation) = -Medium Violet Dye (low saturation) = -Medium Magenta Dye (low saturation) = -Medium Red-violet Dye (low saturation) = +Medium Red Dye (low saturation)= +Medium Orange Dye (low saturation)= +Medium Yellow Dye (low saturation)= +Medium Lime Dye (low saturation)= +Medium Green Dye (low saturation)= +Medium Aqua Dye (low saturation)= +Medium Cyan Dye (low saturation)= +Medium Sky-blue Dye (low saturation)= +Medium Blue Dye (low saturation)= +Medium Violet Dye (low saturation)= +Medium Magenta Dye (low saturation)= +Medium Red-violet Dye (low saturation)= -Medium Red Dye = -Medium Orange Dye = -Medium Yellow Dye = -Medium Lime Dye = -Medium Green Dye = -Medium Aqua Dye = -Medium Cyan Dye = -Medium Sky-blue = -Medium Blue Dye = -Medium Violet Dye = -Medium Magenta Dye = -Medium Red-violet Dye = +Medium Red Dye= +Medium Orange Dye= +Medium Yellow Dye= +Medium Lime Dye= +Medium Green Dye= +Medium Aqua Dye= +Medium Cyan Dye= +Medium Sky-blue= +Medium Blue Dye= +Medium Violet Dye= +Medium Magenta Dye= +Medium Red-violet Dye= -Red Dye (low saturation) = -Orange Dye (low saturation) = -Yellow Dye (low saturation) = -Lime Dye (low saturation) = -Green Dye (low saturation) = -Aqua Dye (low saturation) = -Cyan Dye (low saturation) = -Sky-blue Dye (low saturation) = -Blue Dye (low saturation) = -Violet Dye (low saturation) = -Magenta Dye (low saturation) = -Red-violet Dye (low saturation) = +Red Dye (low saturation)= +Orange Dye (low saturation)= +Yellow Dye (low saturation)= +Lime Dye (low saturation)= +Green Dye (low saturation)= +Aqua Dye (low saturation)= +Cyan Dye (low saturation)= +Sky-blue Dye (low saturation)= +Blue Dye (low saturation)= +Violet Dye (low saturation)= +Magenta Dye (low saturation)= +Red-violet Dye (low saturation)= -Red Dye = -Orange Dye = -Yellow Dye = -Lime Dye = -Green Dye = -Aqua Dye = -Cyan Dye = -Sky-blue Dye = -Blue Dye = -Violet Dye = -Magenta Dye = -Red-violet Dye = +Red Dye= +Orange Dye= +Yellow Dye= +Lime Dye= +Green Dye= +Aqua Dye= +Cyan Dye= +Sky-blue Dye= +Blue Dye= +Violet Dye= +Magenta Dye= +Red-violet Dye= -[UnifiedDyes] Loaded! = +[UnifiedDyes] Loaded!= + +Dye Airbrush= + +Select a color:= +(Right-clicked a node that supports all 256 colors, showing them all)= +(Right-clicked a node not supported by the Airbrush, showing all colors)= +Dyes= +Your selection= +Your selection:= +Cancel= +Accept= +Show Available= +(Currently showing all 256 colors)= +Show All Colors= +(Currently only showing what the right-clicked node can use)= diff --git a/unifieddyes/locale/tr.txt b/unifieddyes/locale/tr.txt deleted file mode 100644 index 6109389c..00000000 --- a/unifieddyes/locale/tr.txt +++ /dev/null @@ -1,88 +0,0 @@ -# TUrkish translation -# Mahmutelmas06@hotmail.com - -Lime Dye = Limon Yeşili Boya -Aqua Dye = Deniz mavisi Boya -Sky-blue Dye = Gök-Mavi Boya -Red-violet Dye = Kırmızılı Boya -Light Grey Dye = Açık Grey Boya - -Dark Red Dye (low saturation) = Koyu Kırmızı Boya (düşük doygunluk) -Dark Orange Dye (low saturation) = Koyu Turuncu Boya (düşük doygunluk) -Dark Yellow Dye (low saturation) = Koyu Sarı Boya (düşük doygunluk) -Dark Lime Dye (low saturation) = Koyu Limon Yeşili Boya (düşük doygunluk) -Dark Green Dye (low saturation) = Koyu Yeşil Boya (düşük doygunluk) -Dark Aqua Dye (low saturation) = Koyu Deniz mavisi boya (düşük doygunluk) -Dark Cyan Dye (low saturation) = Koyu Cam göbeği Boya (düşük doygunluk) -Dark Sky-blue Dye (low saturation) = Koyu Gök-Mavi Boya (düşük doygunluk) -Dark Blue Dye (low saturation) = Koyu Mavi Boya (düşük doygunluk) -Dark Violet Dye (low saturation) = Koyu mor Boya (düşük doygunluk) -Dark Magenta Dye (low saturation) = Koyu Kızılımsı Mor Boya (düşük doygunluk) -Dark Red-violet Dye (low saturation) = Koyu Kırmızılı Boya (düşük doygunluk) - -Dark Red Dye = Koyu Kırmızı Boya -Dark Orange Dye = Koyu Turuncu Boya -Dark Yellow Dye = Koyu Sarı Boya -Dark Lime Dye = Koyu Limon Yeşili Boya -Dark Green Dye = Koyu Yeşil Boya -Dark Aqua Dye = Koyu Deniz mavisi Boya -Dark Cyan Dye = Koyu Cam göbeği Boya -Dark Sky-blue Dye = Koyu Gök-Mavi Boya -Dark Blue Dye = Koyu Mavi Boya -Dark Violet Dye = Koyu mor Boya -Dark Magenta Dye = Koyu Kızılımsı Mor Boya -Dark Red-violet Dye = Koyu Kırmızılı Boya - -Medium Red Dye (low saturation) = Kırmızı Boya (düşük doygunluk) -Medium Orange Dye (low saturation) = Turuncu Boya (düşük doygunluk) -Medium Yellow Dye (low saturation) = Sarı Boya (düşük doygunluk) -Medium Lime Dye (low saturation) = Limon Yeşili Boya (düşük doygunluk) -Medium Green Dye (low saturation) = Yeşil Boya (düşük doygunluk) -Medium Aqua Dye (low saturation) = Deniz mavisi Boya (düşük doygunluk) -Medium Cyan Dye (low saturation) = Cam göbeği Boya (düşük doygunluk) -Medium Sky-blue Dye (low saturation) = Gök-Mavi Boya (düşük doygunluk) -Medium Blue Dye (low saturation) = Mavi Boya (düşük doygunluk) -Medium Violet Dye (low saturation) = Koyu mor Boya (düşük doygunluk) -Medium Magenta Dye (low saturation) = Kızılımsı Mor Boya (düşük doygunluk) -Medium Red-violet Dye (low saturation) = Kırmızılı Boya (düşük doygunluk) - -Medium Red Dye = Kırmızı Boya -Medium Orange Dye = Turuncu Boya -Medium Yellow Dye = Sarı Boya -Medium Lime Dye = Limon Yeşili Boya -Medium Green Dye = Yeşil Boya -Medium Aqua Dye = Deniz mavisi Boya -Medium Cyan Dye = Cam göbeği Boya -Medium Sky-blue = Gök-Mavi -Medium Blue Dye = Mavi Boya -Medium Violet Dye = Koyu mor Boya -Medium Magenta Dye = Kızılımsı Mor Boya -Medium Red-violet Dye = Kırmızılı Boya - -Red Dye (low saturation) = Kırmızı Boya (düşük doygunluk) -Orange Dye (low saturation) = Turuncu Boya (düşük doygunluk) -Yellow Dye (low saturation) = Sarı Boya (düşük doygunluk) -Lime Dye (low saturation) = Limon Yeşili Boya (düşük doygunluk) -Green Dye (low saturation) = Yeşil Boya (düşük doygunluk) -Aqua Dye (low saturation) = Deniz mavisi Boya (düşük doygunluk) -Cyan Dye (low saturation) = Cam göbeği Boya (düşük doygunluk) -Sky-blue Dye (low saturation) = Gök-Mavi Boya (düşük doygunluk) -Blue Dye (low saturation) = Mavi Boya (düşük doygunluk) -Violet Dye (low saturation) = Koyu mor Boya (düşük doygunluk) -Magenta Dye (low saturation) = Kızılımsı Mor Boya (düşük doygunluk) -Red-violet Dye (low saturation) = Kırmızılı Boya (düşük doygunluk) - -Red Dye = Kırmızı Boya -Orange Dye = Turuncu Boya -Yellow Dye = Sarı Boya -Lime Dye = Limon Yeşili Boya -Green Dye = Yeşil Boya -Aqua Dye = Deniz mavisi Boya -Cyan Dye = Cam göbeği Boya -Sky-blue Dye = Gök-Mavi Boya -Blue Dye = Mavi Boya -Violet Dye = Koyu mor Boya -Magenta Dye = Kızılımsı Mor Boya -Red-violet Dye = Kırmızılı Boya - -[UnifiedDyes] Loaded! = [UnifiedBoyas] yüklendi! diff --git a/unifieddyes/locale/unifieddyes.de.tr b/unifieddyes/locale/unifieddyes.de.tr new file mode 100644 index 00000000..1b6eaabd --- /dev/null +++ b/unifieddyes/locale/unifieddyes.de.tr @@ -0,0 +1,76 @@ +# textdomain: unifieddyes + +# Translation by Xanthin + +Lime Dye=Gelbgruener Farbstoff (Gelbgruen) +Aqua Dye=Aqua Farbstoff +Sky-blue Dye=Himmelblauer Farbstoff +Red-violet Dye=Rotvioletter Farbstoff +Light Grey Dye=Hellgrauer Farbstoff + +Dark Red Dye (low saturation)=Dunkelroter Farbstoff (geringe Saettigung) +Dark Orange Dye (low saturation)=Dunkeloranger Farbstoff (geringe Saettigung) +Dark Yellow Dye (low saturation)=Dunkelgelber Farbstoff (geringe Saettigung) +Dark Lime Dye (low saturation)=Gelbgruenerlime Farbstoff (geringe Saettigung) +Dark Green Dye (low saturation)=Dunkelgruener Farbstoff (geringe Saettigung) +Dark Aqua Dye (low saturation)=Dunkelaqua Farbstoff (geringe Saettigung) +Dark Cyan Dye (low saturation)=Dunkeltuerkiser Farbstoff (geringe Saettigung) +Dark Sky-blue Dye (low saturation)=Dunkelhimmelblauer Farbstoff (geringe Saettigung) +Dark Blue Dye (low saturation)=Dunkelblauer Farbstoff (geringe Saettigung) +Dark Violet Dye (low saturation)=Dunkelvioletter Farbstoff (geringe Saettigung) +Dark Magenta Dye (low saturation)=Dunkelmagenta Farbstoff (geringe Saettigung) +Dark Red-violet Dye (low saturation)=Dunkelrotvioletter Farbstoff (geringe Saettigung) + +Dark Red Dye=Dunkelroter Farbstoff +Dark Orange Dye=Dunkeloranger Farbstoff +Dark Yellow Dye=Dunkelgelber Farbstoff +Dark Lime Dye=Dunkelgelbgruener Farbstoff +Dark Green Dye=Dunkelgruener Farbstoff +Dark Aqua Dye=Dunkelaqua Farbstoff +Dark Cyan Dye=Dunkeltuerkiser Farbstoff +Dark Sky-blue Dye=Dunkelhimmelblauer Farbstoff +Dark Blue Dye=Dunkelblauer Farbstoff +Dark Violet Dye=Dunkelvioletter Farbstoff +Dark Magenta Dye=Dunkelmagenta Farbstoff +Dark Red-violet Dye=Dunkelrotvioletter Farbstoff + +Medium Red Dye (low saturation)=Mittelroter Farbstoff (geringe Saettigung) +Medium Orange Dye (low saturation)=Mitteloranger Farbstoff (geringe Saettigung) +Medium Yellow Dye (low saturation)=Mittelgelber Farbstoff (geringe Saettigung) +Medium Lime Dye (low saturation)=Mittelgelbgruener Farbstoff (geringe Saettigung) +Medium Green Dye (low saturation)=Mittelgruener Farbstoff (geringe Saettigung) +Medium Aqua Dye (low saturation)=Mittelaqua Farbstoff (geringe Saettigung) +Medium Cyan Dye (low saturation)=Mitteltuerkiser Farbstoff (geringe Saettigung) +Medium Sky-blue Dye (low saturation)=Mittelhimmelblauer Farbstoff (geringe Saettigung) +Medium Blue Dye (low saturation)=Mittelblauer Farbstoff (geringe Saettigung) +Medium Violet Dye (low saturation)=Mittelvioletter Farbstoff (geringe Saettigung) +Medium Magenta Dye (low saturation)=Mittelmagenta Farbstoff (geringe Saettigung) +Medium Red-violet Dye (low saturation)=Mittelrotvioletter Farbstoff (geringe Saettigung) + +Medium Red Dye=Mittelroter Farbstoff +Medium Orange Dye=Mitteloranger Farbstoff +Medium Yellow Dye=Mittelgelber Farbstoff +Medium Lime Dye=Mittelgelbgruener Farbstoff +Medium Green Dye=Mittelgruener Farbstoff +Medium Aqua Dye=Mittelaqua Farbstoff +Medium Cyan Dye=Mitteltuerkiser Farbstoff +Medium Sky-blue=Mittelhimmelblauer Farbstoff +Medium Blue Dye=Mittelblauer Farbstoff +Medium Violet Dye=Mittelvioletter Farbstoff +Medium Magenta Dye=Mittelmagenta Farbstoff +Medium Red-violet Dye=Mittelrotvioletter Farbstoff + +Red Dye (low saturation)=Roter Farbstoff (geringe Saettigung) +Orange Dye (low saturation)=Oranger Farbstoff (geringe Saettigung) +Yellow Dye (low saturation)=Gelber Farbstoff (geringe Saettigung) +Lime Dye (low saturation)=Gelbgruener Farbstoff (geringe Saettigung) +Green Dye (low saturation)=Gruener Farbstoff (geringe Saettigung) +Aqua Dye (low saturation)=Aqua Farbstoff (geringe Saettigung) +Cyan Dye (low saturation)=Tuerkiser Farbstoff (geringe Saettigung) +Sky-blue Dye (low saturation)=Himmelblauer Farbstoff (geringe Saettigung) +Blue Dye (low saturation)=Blauer Farbstoff (geringe Saettigung) +Violet Dye (low saturation)=Violetter Farbstoff (geringe Saettigung) +Magenta Dye (low saturation)=Magenta Farbstoff (geringe Saettigung) lila +Red-violet Dye (low saturation)=Rotvioletter Farbstoff (geringe Saettigung) + +[UnifiedDyes] Loaded!=[UnifiedDyes] geladen! diff --git a/unifieddyes/locale/unifieddyes.es.tr b/unifieddyes/locale/unifieddyes.es.tr new file mode 100644 index 00000000..05a474c0 --- /dev/null +++ b/unifieddyes/locale/unifieddyes.es.tr @@ -0,0 +1,89 @@ +# textdomain: unifieddyes + +# Traducido por Carlos Barraza + +Lime Dye=Colorante Lima +Aqua Dye=Colorante Agua +Sky-blue Dye=Colorante Azul Cielo +Red-violet Dye=Colorante Rojo Violeta +Light Grey Dye=Colorante Gris Claro + +Dark Red Dye (low saturation)=Colorante Rojo Oscuro (baja saturación) +Dark Orange Dye (low saturation)=Colorante Naranja Oscuro (baja saturación) +Dark Yellow Dye (low saturation)=Colorante Amarillo Oscuro (baja saturación) +Dark Lime Dye (low saturation)=Colorante Lima Oscuro (baja saturación) +Dark Green Dye (low saturation)=Colorante Verde Oscuro (baja saturación) +Dark Aqua Dye (low saturation)=Colorante Agua Oscuro (baja saturación) +Dark Cyan Dye (low saturation)=Colorante Cian Oscuro (baja saturación) +Dark Sky-blue Dye (low saturation)=Colorante Azul Cielo Oscuro (baja saturación) +Dark Blue Dye (low saturation)=Colorante Azul Oscuro (baja saturación) +Dark Violet Dye (low saturation)=Colorante Violeta Oscuro (baja saturación) +Dark Magenta Dye (low saturation)=Colorante Magenta Oscuro (baja saturación) +Dark Red-violet Dye (low saturation)=Colorante Rojo Violeta Oscuro (baja saturación) + +Dark Red Dye=Colorante Rojo Oscuro +Dark Orange Dye=Colorante Naranja Oscuro +Dark Yellow Dye=Colorante Amarillo Oscuro +Dark Lime Dye=Colorante Lima Oscuro +Dark Green Dye=Colorante Verde Oscuro +Dark Aqua Dye=Colorante Agua Oscuro +Dark Cyan Dye=Colorante Cian Oscuro +Dark Sky-blue Dye=Colorante Azul Cielo Oscuro +Dark Blue Dye=Colorante Azul Oscuro +Dark Violet Dye=Colorante Violeta Oscuro +Dark Magenta Dye=Colorante Magenta Oscuro +Dark Red-violet Dye=Colorante Rojo Violeta Oscuro + +Medium Red Dye (low saturation)=Colorante Rojo Claro (baja saturación) +Medium Orange Dye (low saturation)=Colorante Naranja Claro (baja saturación) +Medium Yellow Dye (low saturation)=Colorante Amarillo Claro (baja saturación) +Medium Lime Dye (low saturation)=Colorante Lima Claro (baja saturación) +Medium Green Dye (low saturation)=Colorante Verde Claro (baja saturación) +Medium Aqua Dye (low saturation)=Colorante Agua Claro (baja saturación) +Medium Cyan Dye (low saturation)=Colorante Cian Claro (baja saturación) +Medium Sky-blue Dye (low saturation)=Colorante Azul Cielo Claro (baja saturación) +Medium Blue Dye (low saturation)=Colorante Azul Claro (baja saturación) +Medium Violet Dye (low saturation)=Colorante Violeta Claro (baja saturación) +Medium Magenta Dye (low saturation)=Colorante Magenta Claro (baja saturación) +Medium Red-violet Dye (low saturation)=Colorante Rojo Violeta Claro (baja saturación) + +Medium Red Dye=Colorante Rojo Claro +Medium Orange Dye=Colorante Naranja Claro +Medium Yellow Dye=Colorante Amarillo Claro +Medium Lime Dye=Colorante Lima Claro +Medium Green Dye=Colorante Verde Claro +Medium Aqua Dye=Colorante Agua Claro +Medium Cyan Dye=Colorante Cian Claro +Medium Sky-blue=Colorante Azul Cielo Claro +Medium Blue Dye=Colorante Azul Claro +Medium Violet Dye=Colorante Violeta Claro +Medium Magenta Dye=Colorante Magenta Claro +Medium Red-violet Dye=Colorante Rojo Violeta Claro + +Red Dye (low saturation)=Colorante Rojo (baja saturación) +Orange Dye (low saturation)=Colorante Naranja (baja saturación) +Yellow Dye (low saturation)=Colorante Amarillo (baja saturación) +Lime Dye (low saturation)=Colorante Lima (baja saturación) +Green Dye (low saturation)=Colorante Verde (baja saturación) +Aqua Dye (low saturation)=Colorante Agua (baja saturación) +Cyan Dye (low saturation)=Colorante Cian (baja saturación) +Sky-blue Dye (low saturation)=Colorante Azul Cielo (baja saturación) +Blue Dye (low saturation)=Colorante Azul (baja saturación) +Violet Dye (low saturation)=Colorante Violeta (baja saturación) +Magenta Dye (low saturation)=Colorante Magenta (baja saturación) +Red-violet Dye (low saturation)=Colorante Rojo Violeta (baja saturación) + +Red Dye=Colorante Rojo +Orange Dye=Colorante Naranja +Yellow Dye=Colorante Amarillo +Lime Dye=Colorante Lima +Green Dye=Colorante Verde +Aqua Dye=Colorante Agua +Cyan Dye=Colorante Cian +Sky-blue Dye=Colorante Azul Cielo +Blue Dye=Colorante Azul +Violet Dye=Colorante Violeta +Magenta Dye=Colorante Magenta +Red-violet Dye=Colorante Rojo Violeta + +[UnifiedDyes] Loaded!=[ColorantesUnificados] Cargado. diff --git a/unifieddyes/locale/unifieddyes.fr.tr b/unifieddyes/locale/unifieddyes.fr.tr new file mode 100644 index 00000000..24c839ce --- /dev/null +++ b/unifieddyes/locale/unifieddyes.fr.tr @@ -0,0 +1,104 @@ +# textdomain: unifieddyes + +# Template + +Lime Dye=Teinture citron-vert +Aqua Dye=Teinture aqua +Sky-blue Dye=Teinture bleu ciel +Red-violet Dye=Teinture rouge-violet +Light Grey Dye=Teinture gris clair + +Dark Red Dye (low saturation)=Teinture rouge foncé (basse saturation) +Dark Orange Dye (low saturation)=Teinture orange foncé (basse saturation) +Dark Yellow Dye (low saturation)=Teinture jaune foncé (basse saturation) +Dark Lime Dye (low saturation)=Teinture citron-vert foncé (basse saturation) +Dark Green Dye (low saturation)=Teinture vert foncé (basse saturation) +Dark Aqua Dye (low saturation)=Teinture aqua foncé (basse saturation) +Dark Cyan Dye (low saturation)=Teinture cyan foncé (basse saturation) +Dark Sky-blue Dye (low saturation)=Teinture bleu ciel foncé (basse saturation) +Dark Blue Dye (low saturation)=Teinture bleu foncé (basse saturation) +Dark Violet Dye (low saturation)=Teinture violet foncé (basse saturation) +Dark Magenta Dye (low saturation)=Teinture magenta foncé (basse saturation) +Dark Red-violet Dye (low saturation)=Teinture rouge-violet foncé (basse saturation) + +Dark Red Dye=Teinture rouge foncé +Dark Orange Dye=Teinture orange foncé +Dark Yellow Dye=Teinture jaune foncé +Dark Lime Dye=Teinture citron-vert foncé +Dark Green Dye=Teinture vert foncé +Dark Aqua Dye=Teinture aqua foncé +Dark Cyan Dye=Teinture cyan foncé +Dark Sky-blue Dye=Teinture bleu ciel foncé +Dark Blue Dye=Teinture bleu foncé +Dark Violet Dye=Teinture violet foncé +Dark Magenta Dye=Teinture magenta foncé +Dark Red-violet Dye=Teinture rouge-violet foncé + +Medium Red Dye (low saturation)=Teinture rouge moyen (basse saturation) +Medium Orange Dye (low saturation)=Teinture orange moyen (basse saturation) +Medium Yellow Dye (low saturation)=Teinture jaune moyen (basse saturation) +Medium Lime Dye (low saturation)=Teinture citron-vert moyen (basse saturation) +Medium Green Dye (low saturation)=Teinture vert moyen (basse saturation) +Medium Aqua Dye (low saturation)=Teinture aqua moyen (basse saturation) +Medium Cyan Dye (low saturation)=Teinture cyan moyen (basse saturation) +Medium Sky-blue Dye (low saturation)=Teinture bleu ciel moyen (basse saturation) +Medium Blue Dye (low saturation)=Teinture bleu moyen (basse saturation) +Medium Violet Dye (low saturation)=Teinture violet moyen (basse saturation) +Medium Magenta Dye (low saturation)=Teinture magenta moyen (basse saturation) +Medium Red-violet Dye (low saturation)=Teinture rouge-violet moyen (basse saturation) + +Medium Red Dye=Teinture rouge moyen +Medium Orange Dye=Teinture orange moyen +Medium Yellow Dye=Teinture jaune moyen +Medium Lime Dye=Teinture citron-vert moyen +Medium Green Dye=Teinture vert moyen +Medium Aqua Dye=Teinture aqua moyen +Medium Cyan Dye=Teinture cyan moyen +Medium Sky-blue=Teinture bleu ciel moyen +Medium Blue Dye=Teinture bleu moyen +Medium Violet Dye=Teinture violet moyen +Medium Magenta Dye=Teinture magenta moyen +Medium Red-violet Dye=Teinture rouge-violet moyen + +Red Dye (low saturation)=Teinture rouge (basse saturation) +Orange Dye (low saturation)=Teinture orange (basse saturation) +Yellow Dye (low saturation)=Teinture jaune (basse saturation) +Lime Dye (low saturation)=Teinture citron-vert (basse saturation) +Green Dye (low saturation)=Teinture vert (basse saturation) +Aqua Dye (low saturation)=Teinture aqua (basse saturation) +Cyan Dye (low saturation)=Teinture cyan (basse saturation) +Sky-blue Dye (low saturation)=Teinture bleu ciel (basse saturation) +Blue Dye (low saturation)=Teinture bleu (basse saturation) +Violet Dye (low saturation)=Teinture violet (basse saturation) +Magenta Dye (low saturation)=Teinture magenta (basse saturation) +Red-violet Dye (low saturation)=Teinture rouge-violet (basse saturation) + +Red Dye=Teinture rouge +Orange Dye=Teinture orange +Yellow Dye=Teinture jaune +Lime Dye=Teinture citron-vert +Green Dye=Teinture vert +Aqua Dye=Teinture aqua +Cyan Dye=Teinture cyan +Sky-blue Dye=Teinture bleu ciel +Blue Dye=Teinture bleu +Violet Dye=Teinture violet +Magenta Dye=Teinture magenta +Red-violet Dye=Teinture rouge-violet + +[UnifiedDyes] Loaded!=[UnifiedDyes] chargé ! + +Dye Airbrush=Aérographe à colorants + +Select a color:=Choisissez une couleur +(Right-clicked a node that supports all 256 colors, showing them all)=(Le bloc supporte toutes les 256 couleurs, affichage de toutes celles-ci) +(Right-clicked a node not supported by the Airbrush, showing all colors)=(Le bloc n’est pas supporté par l’aérographe, affichage de toutes les couleurs) +Dyes=Teintures +Your selection=Votre sélection +Your selection:=Votre sélection : +Cancel=Annuler +Accept=Valider +Show Available=Voir dispo. +(Currently showing all 256 colors)=(Actuellement en train d’afficher toutes les 256 couleurs) +Show All Colors=Voir toutes +(Currently only showing what the right-clicked node can use)=(Actuellement en train d’afficher uniquement ce que le bloc peut utiliser) diff --git a/unifieddyes/locale/unifieddyes.ms.tr b/unifieddyes/locale/unifieddyes.ms.tr new file mode 100644 index 00000000..120e43c3 --- /dev/null +++ b/unifieddyes/locale/unifieddyes.ms.tr @@ -0,0 +1,89 @@ +# textdomain: unifieddyes + +# Malay translation by MuhdNurHidayat + +Lime Dye=Pewarna Hijau Pucuk Pisang +Aqua Dye=Pewarna Akuamarin +Sky-blue Dye=Pewarna Biru Langit +Red-violet Dye=Pewarna Merah Lembayung +Light Grey Dye=Pewarna Kelabu Muda + +Dark Red Dye (low saturation)=Pewarna Merah Tua (penepuan rendah) +Dark Orange Dye (low saturation)=Pewarna Jingga Tua (penepuan rendah) +Dark Yellow Dye (low saturation)=Pewarna Kuning Tua (penepuan rendah) +Dark Lime Dye (low saturation)=Pewarna Hijau Pucuk Pisang Tua (penepuan rendah) +Dark Green Dye (low saturation)=Pewarna Hijau Tua (penepuan rendah) +Dark Aqua Dye (low saturation)=Pewarna Akuamarin Tua (penepuan rendah) +Dark Cyan Dye (low saturation)=Pewarna Sian Tua (penepuan rendah) +Dark Sky-blue Dye (low saturation)=Pewarna Biru Langit Tua (penepuan rendah) +Dark Blue Dye (low saturation)=Pewarna Biru Tua (penepuan rendah) +Dark Violet Dye (low saturation)=Pewarna Lembayung Tua (penepuan rendah) +Dark Magenta Dye (low saturation)=Pewarna Magenta Tua (penepuan rendah) +Dark Red-violet Dye (low saturation)=Pewarna Merah Lembayung Tua (penepuan rendah) + +Dark Red Dye=Pewarna Merah Tua +Dark Orange Dye=Pewarna Jingga Tua +Dark Yellow Dye=Pewarna Kuning Tua +Dark Lime Dye=Pewarna Hijau Pucuk Pisang Tua +Dark Green Dye=Pewarna Hijau Tua +Dark Aqua Dye=Pewarna Akuamarin Tua +Dark Cyan Dye=Pewarna Sian Tua +Dark Sky-blue Dye=Pewarna Biru Langit Tua +Dark Blue Dye=Pewarna Biru Tua +Dark Violet Dye=Pewarna Lembayung Tua +Dark Magenta Dye=Pewarna Magenta Tua +Dark Red-violet Dye=Pewarna Merah Lembayung Tua + +Medium Red Dye (low saturation)=Pewarna Merah Sederhana (penepuan rendah) +Medium Orange Dye (low saturation)=Pewarna Jingga Sederhana (penepuan rendah) +Medium Yellow Dye (low saturation)=Pewarna Kuning Sederhana (penepuan rendah) +Medium Lime Dye (low saturation)=Pewarna Hijau Pucuk Pisang Sederhana (penepuan rendah) +Medium Green Dye (low saturation)=Pewarna Hijau Sederhana (penepuan rendah) +Medium Aqua Dye (low saturation)=Pewarna Akuamarin Sederhana (penepuan rendah) +Medium Cyan Dye (low saturation)=Pewarna Sian Sederhana (penepuan rendah) +Medium Sky-blue Dye (low saturation)=Pewarna Biru Langit Sederhana (penepuan rendah) +Medium Blue Dye (low saturation)=Pewarna Biru Sederhana (penepuan rendah) +Medium Violet Dye (low saturation)=Pewarna Lembayung Sederhana (penepuan rendah) +Medium Magenta Dye (low saturation)=Pewarna Magenta Sederhana (penepuan rendah) +Medium Red-violet Dye (low saturation)=Pewarna Merah Lembayung Sederhana (penepuan rendah) + +Medium Red Dye=Pewarna Merah Sederhana +Medium Orange Dye=Pewarna Jingga Sederhana +Medium Yellow Dye=Pewarna Kuning Sederhana +Medium Lime Dye=Pewarna Hijau Pucuk Pisang Sederhana +Medium Green Dye=Pewarna Hijau Sederhana +Medium Aqua Dye=Pewarna Akuamarin Sederhana +Medium Cyan Dye=Pewarna Sian Sederhana +Medium Sky-blue=Pewarna Biru Langit Sederhana +Medium Blue Dye=Pewarna Biru Sederhana +Medium Violet Dye=Pewarna Lembayung Sederhana +Medium Magenta Dye=Pewarna Magenta Sederhana +Medium Red-violet Dye=Pewarna Merah Lembayung Sederhana + +Red Dye (low saturation)=Pewarna Merah (penepuan rendah) +Orange Dye (low saturation)=Pewarna Jingga (penepuan rendah) +Yellow Dye (low saturation)=Pewarna Kuning (penepuan rendah) +Lime Dye (low saturation)=Pewarna Hijau Pucuk Pisang (penepuan rendah) +Green Dye (low saturation)=Pewarna Hijau (penepuan rendah) +Aqua Dye (low saturation)=Pewarna Akuamarin (penepuan rendah) +Cyan Dye (low saturation)=Pewarna Sian (penepuan rendah) +Sky-blue Dye (low saturation)=Pewarna Biru Langit (penepuan rendah) +Blue Dye (low saturation)=Pewarna Biru (penepuan rendah) +Violet Dye (low saturation)=Pewarna Lembayung (penepuan rendah) +Magenta Dye (low saturation)=Pewarna Magenta (penepuan rendah) +Red-violet Dye (low saturation)=Pewarna Merah Lembayung(penepuan rendah) + +Red Dye=Pewarna Merah +Orange Dye=Pewarna Jingga +Yellow Dye=Pewarna Kuning +Lime Dye=Pewarna Hijau Pucuk Pisang +Green Dye=Pewarna Hijau +Aqua Dye=Pewarna Akuamarin +Cyan Dye=Pewarna Sian +Sky-blue Dye=Pewarna Biru Langit +Blue Dye=Pewarna Biru +Violet Dye=Pewarna Lembayung +Magenta Dye=Pewarna Magenta +Red-violet Dye=Pewarna Merah Lembayung + +[UnifiedDyes] Loaded!=[UnifiedDyes] Telah Dimuatkan! diff --git a/unifieddyes/locale/unifieddyes.pt.tr b/unifieddyes/locale/unifieddyes.pt.tr new file mode 100644 index 00000000..f4616671 --- /dev/null +++ b/unifieddyes/locale/unifieddyes.pt.tr @@ -0,0 +1,87 @@ +# textdomain: unifieddyes + +Lime Dye=Corante Lima +Aqua Dye=Corante Água +Sky-blue Dye=Corante Azul-Céu +Red-violet Dye=Corante Vermelho-Violeta +Light Grey Dye=Corante Cinza Claro + +Dark Red Dye (low saturation)=Corante Vermelho Escuro (baixa saturação) +Dark Orange Dye (low saturation)=Corante Laranja Escuro (baixa saturação) +Dark Yellow Dye (low saturation)=Corante Amarelo Escuro (baixa saturação) +Dark Lime Dye (low saturation)=Corante Lima Escuro (baixa saturação) +Dark Green Dye (low saturation)=Corante Verde Escuro (baixa saturação) +Dark Aqua Dye (low saturation)=Corante Água Escuro (baixa saturação) +Dark Cyan Dye (low saturation)=Corante Ciano Escuro (baixa saturação) +Dark Sky-blue Dye (low saturation)=Corante Azul-Céu Escuro (baixa saturação) +Dark Blue Dye (low saturation)=Corante Azul Escuro (baixa saturação) +Dark Violet Dye (low saturation)=Corante Violeta Escuro (baixa saturação) +Dark Magenta Dye (low saturation)=Corante Magenta Escuro (baixa saturação) +Dark Red-violet Dye (low saturation)=Corante Vermelho-Violeta Escuro (baixa saturação) + +Dark Red Dye=Corante Vermelho Escuro +Dark Orange Dye=Corante Laranja Escuro +Dark Yellow Dye=Corante Amarelo Escuro +Dark Lime Dye=Corante Lima Escuro +Dark Green Dye=Corante Verde Escuro +Dark Aqua Dye=Corante Água Escuro +Dark Cyan Dye=Corante Ciano Escuro +Dark Sky-blue Dye=Corante Azul-Céu Escuro +Dark Blue Dye=Corante Azul Escuro +Dark Violet Dye=Corante Violeta Escuro +Dark Magenta Dye=Corante Magenta Escuro +Dark Red-violet Dye=Corante Vermelho-Violeta Escuro + +Medium Red Dye (low saturation)=Corante Vermelho Médio (baixa saturação) +Medium Orange Dye (low saturation)=Corante Laranja Médio (baixa saturação) +Medium Yellow Dye (low saturation)=Corante Amarelo Médio (baixa saturação) +Medium Lime Dye (low saturation)=Corante Lima Médio (baixa saturação) +Medium Green Dye (low saturation)=Corante Verde Médio (baixa saturação) +Medium Aqua Dye (low saturation)=Corante Água Médio (baixa saturação) +Medium Cyan Dye (low saturation)=Corante Ciano Médio (baixa saturação) +Medium Sky-blue Dye (low saturation)=Corante Azul-Céu Médio (baixa saturação) +Medium Blue Dye (low saturation)=Corante Azul Médio (baixa saturação) +Medium Violet Dye (low saturation)=Corante Violeta Médio (baixa saturação) +Medium Magenta Dye (low saturation)=Corante Magenta Médio (baixa saturação) +Medium Red-violet Dye (low saturation)=Corante Vermelho-Violeta Médio (baixa saturação) + +Medium Red Dye=Corante Vermelho Médio +Medium Orange Dye=Corante Laranja Médio +Medium Yellow Dye=Corante Amarelo Médio +Medium Lime Dye=Corante Lima Médio +Medium Green Dye=Corante Verde Médio +Medium Aqua Dye=Corante Água Médio +Medium Cyan Dye=Corante Ciano Médio +Medium Sky-blue=Corante Azul-Céu Médio +Medium Blue Dye=Corante Azul Médio +Medium Violet Dye=Corante Violeta Médio +Medium Magenta Dye=Corante Magenta Médio +Medium Red-violet Dye=Corante Vermelho-Violeta Médio + +Red Dye (low saturation)=Corante Vermelho (baixa saturação) +Orange Dye (low saturation)=Corante Laranja (baixa saturação) +Yellow Dye (low saturation)=Corante Amarelo (baixa saturação) +Lime Dye (low saturation)=Corante Lima (baixa saturação) +Green Dye (low saturation)=Corante Vermelho (baixa saturação) +Aqua Dye (low saturation)=Corante Água (baixa saturação) +Cyan Dye (low saturation)=Corante Ciano (baixa saturação) +Sky-blue Dye (low saturation)=Corante Azul-Céu (baixa saturação) +Blue Dye (low saturation)=Corante Azul (baixa saturação) +Violet Dye (low saturation)=Corante Violeta (baixa saturação) +Magenta Dye (low saturation)=Corante Magenta (baixa saturação) +Red-violet Dye (low saturation)=Corante Vermelho-Violeta (baixa saturação) + +Red Dye=Corante Vermelho +Orange Dye=Corante Laranja +Yellow Dye=Corante Amarelo +Lime Dye=Corante Lima +Green Dye=Corante Verde +Aqua Dye=Corante Água +Cyan Dye=Corano Ciano +Sky-blue Dye=Corante Azul-Céu +Blue Dye=Corante Azul +Violet Dye=Corante Violeta +Magenta Dye=Corante Magenta +Red-violet Dye=Corante Vermelho-Violeta + +[UnifiedDyes] Loaded!=[UnifiedDyes] Carregado! diff --git a/unifieddyes/locale/unifieddyes.ru.tr b/unifieddyes/locale/unifieddyes.ru.tr new file mode 100644 index 00000000..0aec3ff6 --- /dev/null +++ b/unifieddyes/locale/unifieddyes.ru.tr @@ -0,0 +1,76 @@ +# textdomain: unifieddyes + +# Translation by @drakes_journey + +Lime Dye=Лаймовая краска +Aqua Dye=Аквамариновая краска +Sky-blue Dye=Голубая краска +Red-violet Dye=Красно-фиолетовая краска +Light Grey Dye=Светло-серая краска + +Dark Red Dye (low saturation)=Темная красная краска (низкая насыщенность) +Dark Orange Dye (low saturation)=Темная оранжевая краска (низкая насыщенность) +Dark Yellow Dye (low saturation)=Темная желтая краска (низкая насыщенность) +Dark Lime Dye (low saturation)=Темная лаймовая краска (низкая насыщенность) +Dark Green Dye (low saturation)=Темная зеленая краска (низкая насыщенность) +Dark Aqua Dye (low saturation)=Темная аквамариновая краска (низкая насыщенность) +Dark Cyan Dye (low saturation)=Темная бирюзовая краска (низкая насыщенность) +Dark Sky-blue Dye (low saturation)=Темная голубая краска (низкая насыщенность) +Dark Blue Dye (low saturation)=Темная синяя краска (низкая насыщенность) +Dark Violet Dye (low saturation)=Темная фиолетовая краска (низкая насыщенность) +Dark Magenta Dye (low saturation)=Темная пурпурная краска (низкая насыщенность) +Dark Red-violet Dye (low saturation)=Темная краснофиолетовая краска (низкая насыщенность) + +Dark Red Dye=Темная красная краска +Dark Orange Dye=Темная оранжевая краска +Dark Yellow Dye=Темная желтая краска +Dark Lime Dye=Темная зеленая краска +Dark Green Dye=Темная зеленая краска +Dark Aqua Dye=Темная аквамариновая краска +Dark Cyan Dye=Темная бирюзовая краска +Dark Sky-blue Dye=Темная голубая краска +Dark Blue Dye=Темная синяя краска +Dark Violet Dye=Темная фиолетовая краска +Dark Magenta Dye=Темная пурпурная краска +Dark Red-violet Dye=Темная красно-фиолетовая краска + +Medium Red Dye (low saturation)=Средне-красная краска (низкая насыщенность) +Medium Orange Dye (low saturation)=Средне-оранжевая краска (низкая насыщенность) +Medium Yellow Dye (low saturation)=Средне-желтая краска (низкая насыщенность) +Medium Lime Dye (low saturation)=Средне-зеленая краска (низкая насыщенность) +Medium Green Dye (low saturation)=Средне-зеленая краска (низкая насыщенность) +Medium Aqua Dye (low saturation)=Средне-аквамариновая краска (низкая насыщенность) +Medium Cyan Dye (low saturation)=Средне-бирюзовая краска (низкая насыщенность) +Medium Sky-blue Dye (low saturation)=Средне-голубая краска (низкая насыщенность) +Medium Blue Dye (low saturation)=Средне-синяя краска (низкая насыщенность) +Medium Violet Dye (low saturation)=Средне-фиолетовая краска (низкая насыщенность) +Medium Magenta Dye (low saturation)=Средне-пурпурная краска (низкая насыщенность) +Medium Red-violet Dye (low saturation)=Средне-краснофиолетовая краска (низкая насыщенность) + +Medium Red Dye=Средне-красная краска +Medium Orange Dye=Средне-оранжевая краска +Medium Yellow Dye=Средне-желтая краска +Medium Lime Dye=Средне-лаймовая краска +Medium Green Dye=Средне-зеленая краска +Medium Aqua Dye=Средне-аквамариновая краска +Medium Cyan Dye=Средне-бирюзовая краска +Medium Sky-blue=Средне-голубая краска +Medium Blue Dye=Средне-синяя краска +Medium Violet Dye=Средне-фиолетовая краска +Medium Magenta Dye=Средне-пурпурная краска +Medium Red-violet Dye=Средне-краснофиолетовая краска + +Red Dye (low saturation)=Красная краска (низкая насыщенность) +Orange Dye (low saturation)=Оранжевая краска (низкая насыщенность) +Yellow Dye (low saturation)=Желтая краска (низкая насыщенность) +Lime Dye (low saturation)=Лаймовая краска (низкая насыщенность) +Green Dye (low saturation)=Зеленая краска (низкая насыщенность) +Aqua Dye (low saturation)=Аквамариновая краска (низкая насыщенность) +Cyan Dye (low saturation)=Бирюзовая краска (низкая насыщенность) +Sky-blue Dye (low saturation)=Голубая краска (низкая насыщенность) +Blue Dye (low saturation)=Синяя краска (низкая насыщенность) +Violet Dye (low saturation)=Фиолетовая краска (низкая насыщенность) +Magenta Dye (low saturation)=Пурпурная краска (низкая насыщенность) +Red-violet Dye (low saturation)=Краснофиолетовая краска (низкая насыщенность) + +[UnifiedDyes] Loaded!=[UnifiedDyes] загружен! diff --git a/unifieddyes/locale/unifieddyes.tr.tr b/unifieddyes/locale/unifieddyes.tr.tr new file mode 100644 index 00000000..a3ecfd38 --- /dev/null +++ b/unifieddyes/locale/unifieddyes.tr.tr @@ -0,0 +1,90 @@ +# textdomain: unifieddyes + +# TUrkish translation +# Mahmutelmas06@hotmail.com + +Lime Dye=Limon Yeşili Boya +Aqua Dye=Deniz mavisi Boya +Sky-blue Dye=Gök-Mavi Boya +Red-violet Dye=Kırmızılı Boya +Light Grey Dye=Açık Grey Boya + +Dark Red Dye (low saturation)=Koyu Kırmızı Boya (düşük doygunluk) +Dark Orange Dye (low saturation)=Koyu Turuncu Boya (düşük doygunluk) +Dark Yellow Dye (low saturation)=Koyu Sarı Boya (düşük doygunluk) +Dark Lime Dye (low saturation)=Koyu Limon Yeşili Boya (düşük doygunluk) +Dark Green Dye (low saturation)=Koyu Yeşil Boya (düşük doygunluk) +Dark Aqua Dye (low saturation)=Koyu Deniz mavisi boya (düşük doygunluk) +Dark Cyan Dye (low saturation)=Koyu Cam göbeği Boya (düşük doygunluk) +Dark Sky-blue Dye (low saturation)=Koyu Gök-Mavi Boya (düşük doygunluk) +Dark Blue Dye (low saturation)=Koyu Mavi Boya (düşük doygunluk) +Dark Violet Dye (low saturation)=Koyu mor Boya (düşük doygunluk) +Dark Magenta Dye (low saturation)=Koyu Kızılımsı Mor Boya (düşük doygunluk) +Dark Red-violet Dye (low saturation)=Koyu Kırmızılı Boya (düşük doygunluk) + +Dark Red Dye=Koyu Kırmızı Boya +Dark Orange Dye=Koyu Turuncu Boya +Dark Yellow Dye=Koyu Sarı Boya +Dark Lime Dye=Koyu Limon Yeşili Boya +Dark Green Dye=Koyu Yeşil Boya +Dark Aqua Dye=Koyu Deniz mavisi Boya +Dark Cyan Dye=Koyu Cam göbeği Boya +Dark Sky-blue Dye=Koyu Gök-Mavi Boya +Dark Blue Dye=Koyu Mavi Boya +Dark Violet Dye=Koyu mor Boya +Dark Magenta Dye=Koyu Kızılımsı Mor Boya +Dark Red-violet Dye=Koyu Kırmızılı Boya + +Medium Red Dye (low saturation)=Kırmızı Boya (düşük doygunluk) +Medium Orange Dye (low saturation)=Turuncu Boya (düşük doygunluk) +Medium Yellow Dye (low saturation)=Sarı Boya (düşük doygunluk) +Medium Lime Dye (low saturation)=Limon Yeşili Boya (düşük doygunluk) +Medium Green Dye (low saturation)=Yeşil Boya (düşük doygunluk) +Medium Aqua Dye (low saturation)=Deniz mavisi Boya (düşük doygunluk) +Medium Cyan Dye (low saturation)=Cam göbeği Boya (düşük doygunluk) +Medium Sky-blue Dye (low saturation)=Gök-Mavi Boya (düşük doygunluk) +Medium Blue Dye (low saturation)=Mavi Boya (düşük doygunluk) +Medium Violet Dye (low saturation)=Koyu mor Boya (düşük doygunluk) +Medium Magenta Dye (low saturation)=Kızılımsı Mor Boya (düşük doygunluk) +Medium Red-violet Dye (low saturation)=Kırmızılı Boya (düşük doygunluk) + +Medium Red Dye=Kırmızı Boya +Medium Orange Dye=Turuncu Boya +Medium Yellow Dye=Sarı Boya +Medium Lime Dye=Limon Yeşili Boya +Medium Green Dye=Yeşil Boya +Medium Aqua Dye=Deniz mavisi Boya +Medium Cyan Dye=Cam göbeği Boya +Medium Sky-blue=Gök-Mavi +Medium Blue Dye=Mavi Boya +Medium Violet Dye=Koyu mor Boya +Medium Magenta Dye=Kızılımsı Mor Boya +Medium Red-violet Dye=Kırmızılı Boya + +Red Dye (low saturation)=Kırmızı Boya (düşük doygunluk) +Orange Dye (low saturation)=Turuncu Boya (düşük doygunluk) +Yellow Dye (low saturation)=Sarı Boya (düşük doygunluk) +Lime Dye (low saturation)=Limon Yeşili Boya (düşük doygunluk) +Green Dye (low saturation)=Yeşil Boya (düşük doygunluk) +Aqua Dye (low saturation)=Deniz mavisi Boya (düşük doygunluk) +Cyan Dye (low saturation)=Cam göbeği Boya (düşük doygunluk) +Sky-blue Dye (low saturation)=Gök-Mavi Boya (düşük doygunluk) +Blue Dye (low saturation)=Mavi Boya (düşük doygunluk) +Violet Dye (low saturation)=Koyu mor Boya (düşük doygunluk) +Magenta Dye (low saturation)=Kızılımsı Mor Boya (düşük doygunluk) +Red-violet Dye (low saturation)=Kırmızılı Boya (düşük doygunluk) + +Red Dye=Kırmızı Boya +Orange Dye=Turuncu Boya +Yellow Dye=Sarı Boya +Lime Dye=Limon Yeşili Boya +Green Dye=Yeşil Boya +Aqua Dye=Deniz mavisi Boya +Cyan Dye=Cam göbeği Boya +Sky-blue Dye=Gök-Mavi Boya +Blue Dye=Mavi Boya +Violet Dye=Koyu mor Boya +Magenta Dye=Kızılımsı Mor Boya +Red-violet Dye=Kırmızılı Boya + +[UnifiedDyes] Loaded!=[UnifiedBoyas] yüklendi! diff --git a/unifieddyes/mod.conf b/unifieddyes/mod.conf index 861cb265..22b5a3ff 100644 --- a/unifieddyes/mod.conf +++ b/unifieddyes/mod.conf @@ -1 +1,3 @@ name = unifieddyes +description = Unified Dyes expands the standard dye set from 15 to 90 colors. +depends = default, dye, basic_materials diff --git a/vines/depends.txt b/vines/depends.txt deleted file mode 100644 index eef2e6ce..00000000 --- a/vines/depends.txt +++ /dev/null @@ -1,4 +0,0 @@ -default -biome_lib -plantlife_i18n -moretrees? diff --git a/vines/description.txt b/vines/description.txt deleted file mode 100644 index 3664f432..00000000 --- a/vines/description.txt +++ /dev/null @@ -1 +0,0 @@ -Adds climbable vines that are spawned on trees. diff --git a/vines/init.lua b/vines/init.lua index acf56f6a..cfb9833a 100644 --- a/vines/init.lua +++ b/vines/init.lua @@ -6,7 +6,7 @@ vines = { local enable_roots = minetest.settings:get_bool("vines_enable_roots") -- support for i18n -local S = plantlife_i18n.gettext +local S = minetest.get_translator("vines") -- ITEMS @@ -410,4 +410,4 @@ vines.register_vine( 'willow', }) -print(S("[Vines] Loaded!")) +print("[Vines] Loaded!") diff --git a/vines/locale/template.txt b/vines/locale/template.txt new file mode 100644 index 00000000..c8c1a019 --- /dev/null +++ b/vines/locale/template.txt @@ -0,0 +1,14 @@ +# textdomain: vines + +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# FIRST AUTHOR , YEAR. +# +Vines= +Matured= +Rope= +Shears= +Roots= +Jungle Vines= +Willow Vines= diff --git a/vines/locale/vines.fr.tr b/vines/locale/vines.fr.tr new file mode 100644 index 00000000..56100710 --- /dev/null +++ b/vines/locale/vines.fr.tr @@ -0,0 +1,15 @@ +# textdomain: vines + +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# fat115 , 2017. +# + +Vines=Plantes grimpantes +Matured=Extrémité de +Rope=Corde +Shears=Cisailles +Roots=Racines +Jungle Vines=Lianes +Willow Vines=Lianes de saule diff --git a/vines/mod.conf b/vines/mod.conf index 39ea365f..494b2dd7 100644 --- a/vines/mod.conf +++ b/vines/mod.conf @@ -1,2 +1,4 @@ - name = vines +description = Adds climbable vines that are spawned on trees. +depends = default, biome_lib +optional_depends = moretrees diff --git a/woodsoils/depends.txt b/woodsoils/depends.txt deleted file mode 100644 index 961719e1..00000000 --- a/woodsoils/depends.txt +++ /dev/null @@ -1,8 +0,0 @@ -default -biome_lib -plantlife_i18n -bushes? -ferns? -moretrees? -trees? -trunks? diff --git a/woodsoils/init.lua b/woodsoils/init.lua index ad30642e..5d658378 100644 --- a/woodsoils/init.lua +++ b/woodsoils/init.lua @@ -7,7 +7,7 @@ local mname = "woodsoils" -- former "forestsoils" abstract_woodsoils = {} -- support for i18n -local S = plantlife_i18n.gettext +local S = minetest.get_translator("woodsoils") dofile(minetest.get_modpath("woodsoils").."/nodes.lua") dofile(minetest.get_modpath("woodsoils").."/generating.lua") diff --git a/woodsoils/locale/template.txt b/woodsoils/locale/template.txt new file mode 100644 index 00000000..9c40b2a9 --- /dev/null +++ b/woodsoils/locale/template.txt @@ -0,0 +1,12 @@ +# textdomain: woodsoils + +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# FIRST AUTHOR , YEAR. +# + +Forest Soil 1= +Forest Soil 2= +Forest Soil 3= +Forest Soil 4= diff --git a/woodsoils/locale/woodsoils.fr.tr b/woodsoils/locale/woodsoils.fr.tr new file mode 100644 index 00000000..3ef6a2ce --- /dev/null +++ b/woodsoils/locale/woodsoils.fr.tr @@ -0,0 +1,12 @@ +# textdomain: woodsoils + +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# fat115 , 2017. +# + +Forest Soil 1=Humus forestier 1 +Forest Soil 2=Humus forestier 2 +Forest Soil 3=Humus forestier 3 +Forest Soil 4=Humus forestier 4 diff --git a/woodsoils/mod.conf b/woodsoils/mod.conf new file mode 100644 index 00000000..9338a160 --- /dev/null +++ b/woodsoils/mod.conf @@ -0,0 +1,3 @@ +name = woodsoils +depends = default, biome_lib +optional_depends = bushes, ferns, moretrees, trees, trunks diff --git a/woodsoils/nodes.lua b/woodsoils/nodes.lua index b2365640..6ece7e08 100644 --- a/woodsoils/nodes.lua +++ b/woodsoils/nodes.lua @@ -1,5 +1,5 @@ -- support for i18n -local S = plantlife_i18n.gettext +local S = minetest.get_translator("woodsoils") -- nodes diff --git a/worldedit/manipulations.lua b/worldedit/manipulations.lua index 01fb99a3..3bad0ddc 100644 --- a/worldedit/manipulations.lua +++ b/worldedit/manipulations.lua @@ -301,7 +301,7 @@ function worldedit.move(pos1, pos2, axis, amount) nuke_area({x=0, y=0, z=0}, leftover) else local top = {x=0, y=0, z=0} -- offset of the leftover slice from pos1 - top[axis] = dim[axis] - 1 + top[axis] = dim[axis] - math.abs(amount) nuke_area(top, leftover) end end diff --git a/worldedit/serialization.lua b/worldedit/serialization.lua index ae300f8f..c3793b24 100644 --- a/worldedit/serialization.lua +++ b/worldedit/serialization.lua @@ -114,16 +114,44 @@ function worldedit.serialize(pos1, pos2) return LATEST_SERIALIZATION_HEADER .. result, count end - ---- Loads the schematic in `value` into a node list in the latest format. -- Contains code based on [table.save/table.load](http://lua-users.org/wiki/SaveTableToFile) -- by ChillCode, available under the MIT license. +local function deserialize_workaround(content) + local nodes + if not jit then + nodes = minetest.deserialize(content, true) + else + -- XXX: This is a filthy hack that works surprisingly well + -- in LuaJIT, `minetest.deserialize` will fail due to the register limit + nodes = {} + content = content:gsub("^%s*return%s*{", "", 1):gsub("}%s*$", "", 1) -- remove the starting and ending values to leave only the node data + -- remove string contents strings while preserving their length + local escaped = content:gsub("\\\\", "@@"):gsub("\\\"", "@@"):gsub("(\"[^\"]*\")", function(s) return string.rep("@", #s) end) + local startpos, startpos1 = 1, 1 + local endpos + while true do -- go through each individual node entry (except the last) + startpos, endpos = escaped:find("},%s*{", startpos) + if not startpos then + break + end + local current = content:sub(startpos1, startpos) + local entry = minetest.deserialize("return " .. current, true) + table.insert(nodes, entry) + startpos, startpos1 = endpos, endpos + end + local entry = minetest.deserialize("return " .. content:sub(startpos1), true) -- process the last entry + table.insert(nodes, entry) + end + return nodes +end + +--- Loads the schematic in `value` into a node list in the latest format. -- @return A node list in the latest format, or nil on failure. local function load_schematic(value) local version, header, content = worldedit.read_header(value) local nodes = {} if version == 1 or version == 2 then -- Original flat table format - local tables = minetest.deserialize(content) + local tables = minetest.deserialize(content, true) if not tables then return nil end -- Transform the node table into an array of nodes @@ -161,28 +189,7 @@ local function load_schematic(value) }) end elseif version == 4 or version == 5 then -- Nested table format - if not jit then - -- This is broken for larger tables in the current version of LuaJIT - nodes = minetest.deserialize(content) - else - -- XXX: This is a filthy hack that works surprisingly well - in LuaJIT, `minetest.deserialize` will fail due to the register limit - nodes = {} - content = content:gsub("return%s*{", "", 1):gsub("}%s*$", "", 1) -- remove the starting and ending values to leave only the node data - local escaped = content:gsub("\\\\", "@@"):gsub("\\\"", "@@"):gsub("(\"[^\"]*\")", function(s) return string.rep("@", #s) end) - local startpos, startpos1, endpos = 1, 1 - while true do -- go through each individual node entry (except the last) - startpos, endpos = escaped:find("},%s*{", startpos) - if not startpos then - break - end - local current = content:sub(startpos1, startpos) - local entry = minetest.deserialize("return " .. current) - table.insert(nodes, entry) - startpos, startpos1 = endpos, endpos - end - local entry = minetest.deserialize("return " .. content:sub(startpos1)) -- process the last entry - table.insert(nodes, entry) - end + nodes = deserialize_workaround(content) else return nil end diff --git a/worldedit_commands/cuboid.lua b/worldedit_commands/cuboid.lua index 88f02608..d12ace8f 100644 --- a/worldedit_commands/cuboid.lua +++ b/worldedit_commands/cuboid.lua @@ -1,28 +1,22 @@ -minetest.register_chatcommand("/outset", { +worldedit.register_command("outset", { params = "[h|v] ", - description = "outset the selection", + description = "Outset the selected region.", privs = {worldedit=true}, - func = function(name, param) + require_pos = 2, + parse = function(param) local find, _, dir, amount = param:find("(%a*)%s*([+-]?%d+)") - if find == nil then - return false, "invalid usage: " .. param + return false end - - local pos1 = worldedit.pos1[name] - local pos2 = worldedit.pos2[name] - - if pos1 == nil or pos2 == nil then - return false, - "Undefined region. Region must be defined beforehand." - end - + local hv_test = dir:find("[^hv]+") - if hv_test ~= nil then return false, "Invalid direction." end - + + return true, dir, tonumber(amount) + end, + func = function(name, dir, amount) if dir == "" or dir == "hv" or dir == "vh" then assert(worldedit.cuboid_volumetric_expand(name, amount)) elseif dir == "h" then @@ -36,39 +30,32 @@ minetest.register_chatcommand("/outset", { else return false, "Invalid number of arguments" end - + worldedit.marker_update(name) return true, "Region outset by " .. amount .. " blocks" end, - } -) +}) -minetest.register_chatcommand("/inset", { +worldedit.register_command("inset", { params = "[h|v] ", - description = "inset the selection", + description = "Inset the selected region.", privs = {worldedit=true}, - func = function(name, param) + require_pos = 2, + parse = function(param) local find, _, dir, amount = param:find("(%a*)%s*([+-]?%d+)") - if find == nil then - return false, "invalid usage: " .. param + return false end - - local pos1 = worldedit.pos1[name] - local pos2 = worldedit.pos2[name] - - if pos1 == nil or pos2 == nil then - return false, - "Undefined region. Region must be defined beforehand." - end - + local hv_test = dir:find("[^hv]+") - if hv_test ~= nil then return false, "Invalid direction." end - + + return true, dir, tonumber(amount) + end, + func = function(name, dir, amount) if dir == "" or dir == "vh" or dir == "hv" then assert(worldedit.cuboid_volumetric_expand(name, -amount)) elseif dir == "h" then @@ -82,34 +69,27 @@ minetest.register_chatcommand("/inset", { else return false, "Invalid number of arguments" end - + worldedit.marker_update(name) return true, "Region inset by " .. amount .. " blocks" end, - } -) +}) -minetest.register_chatcommand("/shift", { +worldedit.register_command("shift", { params = "[x|y|z|?|up|down|left|right|front|back] [+|-]", description = "Moves the selection region. Does not move contents.", privs = {worldedit=true}, - func = function(name, param) - local pos1 = worldedit.pos1[name] - local pos2 = worldedit.pos2[name] + require_pos = 2, + parse = function(param) local find, _, direction, amount = param:find("([%?%l]+)%s*([+-]?%d+)") - if find == nil then - worldedit.player_notify(name, "invalid usage: " .. param) - return + return false end - - if pos1 == nil or pos2 == nil then - worldedit.player_notify(name, - "Undefined region. Region must be defined beforehand.") - return - end - + + return true, direction, tonumber(amount) + end, + func = function(name, direction, amount) local axis, dir if direction == "x" or direction == "y" or direction == "z" then axis, dir = direction, 1 @@ -118,123 +98,112 @@ minetest.register_chatcommand("/shift", { else axis, dir = worldedit.translate_direction(name, direction) end - + if axis == nil or dir == nil then return false, "Invalid if looking straight up or down" end - + assert(worldedit.cuboid_shift(name, axis, amount * dir)) worldedit.marker_update(name) - + return true, "Region shifted by " .. amount .. " nodes" end, - } -) +}) -minetest.register_chatcommand("/expand", { +worldedit.register_command("expand", { params = "[+|-] [reverse-amount]", description = "expand the selection in one or two directions at once", privs = {worldedit=true}, - func = function(name, param) - local find, _, sign, direction, amount, - rev_amount = param:find("([+-]?)([%?%l]+)%s*(%d+)%s*(%d*)") - - if find == nil then - worldedit.player_notify(name, "invalid use: " .. param) - return - end - - if worldedit.pos1[name] == nil or worldedit.pos2[name] == nil then - worldedit.player_notify(name, - "Undefined region. Region must be defined beforehand.") - return - end - - local absolute = direction:find("[xyz?]") - local dir, axis - - if rev_amount == "" then - rev_amount = 0 - end - - if absolute == nil then - axis, dir = worldedit.translate_direction(name, direction) - - if axis == nil or dir == nil then - return false, "Invalid if looking straight up or down" + require_pos = 2, + parse = function(param) + local find, _, sign, direction, amount, + rev_amount = param:find("([+-]?)([%?%l]+)%s*(%d+)%s*(%d*)") + if find == nil then + return false end - else - if direction == "?" then - axis, dir = worldedit.player_axis(name) + + if rev_amount == "" then + rev_amount = "0" + end + + return true, sign, direction, tonumber(amount), tonumber(rev_amount) + end, + func = function(name, sign, direction, amount, rev_amount) + local absolute = direction:find("[xyz?]") + local dir, axis + + if absolute == nil then + axis, dir = worldedit.translate_direction(name, direction) + + if axis == nil or dir == nil then + return false, "Invalid if looking straight up or down" + end else - axis = direction - dir = 1 + if direction == "?" then + axis, dir = worldedit.player_axis(name) + else + axis = direction + dir = 1 + end end - end - - if sign == "-" then - dir = -dir - end - - worldedit.cuboid_linear_expand(name, axis, dir, amount) - worldedit.cuboid_linear_expand(name, axis, -dir, rev_amount) - worldedit.marker_update(name) - return true, "Region expanded by " .. (amount + rev_amount) .. " nodes" - end, - } -) + + if sign == "-" then + dir = -dir + end + + worldedit.cuboid_linear_expand(name, axis, dir, amount) + worldedit.cuboid_linear_expand(name, axis, -dir, rev_amount) + worldedit.marker_update(name) + return true, "Region expanded by " .. (amount + rev_amount) .. " nodes" + end, +}) -minetest.register_chatcommand("/contract", { +worldedit.register_command("contract", { params = "[+|-] [reverse-amount]", description = "contract the selection in one or two directions at once", privs = {worldedit=true}, - func = function(name, param) - local find, _, sign, direction, amount, - rev_amount = param:find("([+-]?)([%?%l]+)%s*(%d+)%s*(%d*)") - - if find == nil then - worldedit.player_notify(name, "invalid use: " .. param) - return - end - - if worldedit.pos1[name] == nil or worldedit.pos2[name] == nil then - worldedit.player_notify(name, - "Undefined region. Region must be defined beforehand.") - return - end - - local absolute = direction:find("[xyz?]") - local dir, axis - - if rev_amount == "" then - rev_amount = 0 - end - - if absolute == nil then - axis, dir = worldedit.translate_direction(name, direction) - - if axis == nil or dir == nil then - return false, "Invalid if looking straight up or down" + require_pos = 2, + parse = function(param) + local find, _, sign, direction, amount, + rev_amount = param:find("([+-]?)([%?%l]+)%s*(%d+)%s*(%d*)") + if find == nil then + return false end - else - if direction == "?" then - axis, dir = worldedit.player_axis(name) + + if rev_amount == "" then + rev_amount = "0" + end + + return true, sign, direction, tonumber(amount), tonumber(rev_amount) + end, + func = function(name, sign, direction, amount, rev_amount) + local absolute = direction:find("[xyz?]") + local dir, axis + + if absolute == nil then + axis, dir = worldedit.translate_direction(name, direction) + + if axis == nil or dir == nil then + return false, "Invalid if looking straight up or down" + end else - axis = direction - dir = 1 + if direction == "?" then + axis, dir = worldedit.player_axis(name) + else + axis = direction + dir = 1 + end end - end - - if sign == "-" then - dir = -dir - end - - worldedit.cuboid_linear_expand(name, axis, dir, -amount) - worldedit.cuboid_linear_expand(name, axis, -dir, -rev_amount) - worldedit.marker_update(name) - return true, "Region contracted by " .. (amount + rev_amount) .. " nodes" - end, - } -) + + if sign == "-" then + dir = -dir + end + + worldedit.cuboid_linear_expand(name, axis, dir, -amount) + worldedit.cuboid_linear_expand(name, axis, -dir, -rev_amount) + worldedit.marker_update(name) + return true, "Region contracted by " .. (amount + rev_amount) .. " nodes" + end, +}) diff --git a/worldedit_commands/init.lua b/worldedit_commands/init.lua index 4e067daa..0ca4cfa0 100644 --- a/worldedit_commands/init.lua +++ b/worldedit_commands/init.lua @@ -1,40 +1,125 @@ minetest.register_privilege("worldedit", "Can use WorldEdit commands") -worldedit.set_pos = {} -worldedit.inspect = {} - worldedit.pos1 = {} worldedit.pos2 = {} -if minetest.place_schematic then - worldedit.prob_pos = {} - worldedit.prob_list = {} + +worldedit.set_pos = {} +worldedit.inspect = {} +worldedit.prob_pos = {} +worldedit.prob_list = {} + + + +local safe_region, reset_pending = dofile(minetest.get_modpath("worldedit_commands") .. "/safe.lua") + +function worldedit.player_notify(name, message) + minetest.chat_send_player(name, "WorldEdit -!- " .. message, false) end +worldedit.registered_commands = {} + +local function chatcommand_handler(cmd_name, name, param) + local def = assert(worldedit.registered_commands[cmd_name]) + + if def.require_pos == 2 then + local pos1, pos2 = worldedit.pos1[name], worldedit.pos2[name] + if pos1 == nil or pos2 == nil then + worldedit.player_notify(name, "no region selected") + return + end + elseif def.require_pos == 1 then + local pos1 = worldedit.pos1[name] + if pos1 == nil then + worldedit.player_notify(name, "no position 1 selected") + return + end + end + + local parsed = {def.parse(param)} + local success = table.remove(parsed, 1) + if not success then + worldedit.player_notify(name, parsed[1] or "invalid usage") + return + end + + if def.nodes_needed then + local count = def.nodes_needed(name, unpack(parsed)) + safe_region(name, count, function() + local success, msg = def.func(name, unpack(parsed)) + if msg then + minetest.chat_send_player(name, msg) + end + end) + else + -- no "safe region" check + local success, msg = def.func(name, unpack(parsed)) + if msg then + minetest.chat_send_player(name, msg) + end + end +end + +-- Registers a chatcommand for WorldEdit +-- name = "about" -- Name of the chat command (without any /) +-- def = { +-- privs = {}, -- Privileges needed +-- params = "", -- Human readable parameter list (optional) +-- -- setting params = "" will automatically provide a parse() if not given +-- description = "", -- Description +-- require_pos = 0, -- Number of positions required to be set (optional) +-- parse = function(param) +-- return true, foo, bar, ... +-- -- or +-- return false +-- -- or +-- return false, "error message" +-- end, +-- nodes_needed = function(name, foo, bar, ...), -- (optional) +-- return n +-- end, +-- func = function(name, foo, bar, ...) +-- return success, "message" +-- end, +-- } +function worldedit.register_command(name, def) + local def = table.copy(def) + assert(name and #name > 0) + assert(def.privs) + def.require_pos = def.require_pos or 0 + assert(def.require_pos >= 0 and def.require_pos < 3) + if def.params == "" and not def.parse then + def.parse = function(param) return true end + else + assert(def.parse) + end + assert(def.nodes_needed == nil or type(def.nodes_needed) == "function") + assert(def.func) + + -- for development + --[[if def.require_pos == 2 and not def.nodes_needed then + minetest.log("warning", "//" .. name .. " might be missing nodes_needed") + end--]] + + minetest.register_chatcommand("/" .. name, { + privs = def.privs, + params = def.params, + description = def.description, + func = function(player_name, param) + return chatcommand_handler(name, player_name, param) + end, + }) + worldedit.registered_commands[name] = def +end + + + dofile(minetest.get_modpath("worldedit_commands") .. "/cuboid.lua") dofile(minetest.get_modpath("worldedit_commands") .. "/mark.lua") dofile(minetest.get_modpath("worldedit_commands") .. "/wand.lua") -local safe_region, check_region, reset_pending = dofile(minetest.get_modpath("worldedit_commands") .. "/safe.lua") -local function get_position(name) --position 1 retrieval function for when not using `safe_region` - local pos1 = worldedit.pos1[name] - if pos1 == nil then - worldedit.player_notify(name, "no position 1 selected") - end - return pos1 -end --- normalize_nodename wrapper for convenience purposes -local function get_node(name, nodename) - local node = worldedit.normalize_nodename(nodename) - if not node then - worldedit.player_notify(name, "invalid node name: " .. nodename) - return nil - end - return node -end - -function worldedit.player_notify(name, message) - minetest.chat_send_player(name, "WorldEdit -!- " .. message, false) +local function check_region(name) + return worldedit.volume(worldedit.pos1[name], worldedit.pos2[name]) end -- https://github.com/minetest/minetest/blob/53dd7819277c53954d1298dfffa5287c306db8d0/src/util/string.cpp#L777 @@ -77,18 +162,18 @@ worldedit.normalize_nodename = function(nodename) if minetest.registered_nodes[fullname] or fullname == "air" then -- full name return fullname end + nodename = nodename:lower() for key, value in pairs(minetest.registered_nodes) do if string_endswith(key, ":" .. nodename) then -- matches name (w/o mod part) return key end end - nodename = nodename:lower() -- lowercase both for case insensitive comparison for key, value in pairs(minetest.registered_nodes) do local desc = strip_translation_escapes(value.description):lower() if desc == nodename then -- matches description return key end - if string_endswith(desc, " block") and desc == nodename.." block" then + if desc == nodename .. " block" then -- fuzzy description match (e.g. "Steel" == "Steel Block") return key end @@ -125,25 +210,26 @@ local function check_filename(name) end -minetest.register_chatcommand("/about", { +worldedit.register_command("about", { + privs = {}, params = "", description = "Get information about the WorldEdit mod", - func = function(name, param) - worldedit.player_notify(name, "WorldEdit " .. worldedit.version_string .. " is available on this server. Type /help to get a list of commands, or get more information at https://github.com/Uberi/Minetest-WorldEdit/") + func = function(name) + worldedit.player_notify(name, "WorldEdit " .. worldedit.version_string .. " is available on this server. Type //help to get a list of commands, or get more information at https://github.com/Uberi/Minetest-WorldEdit") end, }) -- mostly copied from builtin/chatcommands.lua with minor modifications -minetest.register_chatcommand("/help", { +worldedit.register_command("help", { privs = {}, params = "[all/]", description = "Get help for WorldEdit commands", + parse = function(param) + return true, param + end, func = function(name, param) - local function is_we_command(cmd) - return cmd:sub(0, 1) == "/" - end local function format_help_line(cmd, def) - local msg = minetest.colorize("#00ffff", "/"..cmd) + local msg = minetest.colorize("#00ffff", "//"..cmd) if def.params and def.params ~= "" then msg = msg .. " " .. def.params end @@ -159,9 +245,9 @@ minetest.register_chatcommand("/help", { if param == "" then local msg = "" local cmds = {} - for cmd, def in pairs(minetest.chatcommands) do - if is_we_command(cmd) and minetest.check_player_privs(name, def.privs) then - cmds[#cmds + 1] = cmd:sub(2) -- strip the / + for cmd, def in pairs(worldedit.registered_commands) do + if minetest.check_player_privs(name, def.privs) then + cmds[#cmds + 1] = cmd end end table.sort(cmds) @@ -170,34 +256,45 @@ minetest.register_chatcommand("/help", { .. " or '//help all' to list everything." elseif param == "all" then local cmds = {} - for cmd, def in pairs(minetest.chatcommands) do - if is_we_command(cmd) and minetest.check_player_privs(name, def.privs) then + for cmd, def in pairs(worldedit.registered_commands) do + if minetest.check_player_privs(name, def.privs) then cmds[#cmds + 1] = format_help_line(cmd, def) end end table.sort(cmds) return true, "Available commands:\n"..table.concat(cmds, "\n") else - return minetest.chatcommands["help"].func(name, "/" .. param) + local def = worldedit.registered_commands[param] + if not def then + return false, "Command not available: " .. param + else + return true, format_help_line(param, def) + end end end, }) -minetest.register_chatcommand("/inspect", { - params = "on/off/1/0/true/false/yes/no/enable/disable/", +worldedit.register_command("inspect", { + params = "[on/off/1/0/true/false/yes/no/enable/disable]", description = "Enable or disable node inspection", privs = {worldedit=true}, - func = function(name, param) + parse = function(param) if param == "on" or param == "1" or param == "true" or param == "yes" or param == "enable" or param == "" then + return true, true + elseif param == "off" or param == "0" or param == "false" or param == "no" or param == "disable" then + return true, false + end + return false + end, + func = function(name, enable) + if enable then worldedit.inspect[name] = true local axis, sign = worldedit.player_axis(name) worldedit.player_notify(name, string.format("inspector: inspection enabled for %s, currently facing the %s axis", name, axis .. (sign > 0 and "+" or "-"))) - elseif param == "off" or param == "0" or param == "false" or param == "no" or param == "disable" then + else worldedit.inspect[name] = nil worldedit.player_notify(name, "inspector: inspection disabled") - else - worldedit.player_notify(name, "invalid usage: " .. param) end end, }) @@ -228,11 +325,11 @@ minetest.register_on_punchnode(function(pos, node, puncher) end end) -minetest.register_chatcommand("/reset", { +worldedit.register_command("reset", { params = "", description = "Reset the region so that it is empty", privs = {worldedit=true}, - func = function(name, param) + func = function(name) worldedit.pos1[name] = nil worldedit.pos2[name] = nil worldedit.mark_pos1(name) @@ -244,22 +341,22 @@ minetest.register_chatcommand("/reset", { end, }) -minetest.register_chatcommand("/mark", { +worldedit.register_command("mark", { params = "", description = "Show markers at the region positions", privs = {worldedit=true}, - func = function(name, param) + func = function(name) worldedit.mark_pos1(name) worldedit.mark_pos2(name) worldedit.player_notify(name, "region marked") end, }) -minetest.register_chatcommand("/unmark", { +worldedit.register_command("unmark", { params = "", description = "Hide markers if currently shown", privs = {worldedit=true}, - func = function(name, param) + func = function(name) local pos1, pos2 = worldedit.pos1[name], worldedit.pos2[name] worldedit.pos1[name] = nil worldedit.pos2[name] = nil @@ -271,11 +368,11 @@ minetest.register_chatcommand("/unmark", { end, }) -minetest.register_chatcommand("/pos1", { +worldedit.register_command("pos1", { params = "", description = "Set WorldEdit region position 1 to the player's location", privs = {worldedit=true}, - func = function(name, param) + func = function(name) local pos = minetest.get_player_by_name(name):get_pos() pos.x, pos.y, pos.z = math.floor(pos.x + 0.5), math.floor(pos.y + 0.5), math.floor(pos.z + 0.5) worldedit.pos1[name] = pos @@ -284,11 +381,11 @@ minetest.register_chatcommand("/pos1", { end, }) -minetest.register_chatcommand("/pos2", { +worldedit.register_command("pos2", { params = "", description = "Set WorldEdit region position 2 to the player's location", privs = {worldedit=true}, - func = function(name, param) + func = function(name) local pos = minetest.get_player_by_name(name):get_pos() pos.x, pos.y, pos.z = math.floor(pos.x + 0.5), math.floor(pos.y + 0.5), math.floor(pos.z + 0.5) worldedit.pos2[name] = pos @@ -297,10 +394,16 @@ minetest.register_chatcommand("/pos2", { end, }) -minetest.register_chatcommand("/p", { +worldedit.register_command("p", { params = "set/set1/set2/get", description = "Set WorldEdit region, WorldEdit position 1, or WorldEdit position 2 by punching nodes, or display the current WorldEdit region", privs = {worldedit=true}, + parse = function(param) + if param == "set" or param == "set1" or param == "set2" or param == "get" then + return true, param + end + return false, "unknown subcommand: " .. param + end, func = function(name, param) if param == "set" then --set both WorldEdit positions worldedit.set_pos[name] = "pos1" @@ -322,23 +425,22 @@ minetest.register_chatcommand("/p", { else worldedit.player_notify(name, "position 2 not set") end - else - worldedit.player_notify(name, "unknown subcommand: " .. param) end end, }) -minetest.register_chatcommand("/fixedpos", { +worldedit.register_command("fixedpos", { params = "set1/set2 x y z", description = "Set a WorldEdit region position to the position at (, , )", privs = {worldedit=true}, - func = function(name, param) + parse = function(param) local found, _, flag, x, y, z = param:find("^(set[12])%s+([+-]?%d+)%s+([+-]?%d+)%s+([+-]?%d+)$") if found == nil then - worldedit.player_notify(name, "invalid usage: " .. param) - return + return false end - local pos = {x=tonumber(x), y=tonumber(y), z=tonumber(z)} + return true, flag, {x=tonumber(x), y=tonumber(y), z=tonumber(z)} + end, + func = function(name, flag, pos) if flag == "set1" then worldedit.pos1[name] = pos worldedit.mark_pos1(name) @@ -376,16 +478,13 @@ minetest.register_on_punchnode(function(pos, node, puncher) end end) -minetest.register_chatcommand("/volume", { +worldedit.register_command("volume", { params = "", description = "Display the volume of the current WorldEdit region", privs = {worldedit=true}, - func = function(name, param) + require_pos = 2, + func = function(name) local pos1, pos2 = worldedit.pos1[name], worldedit.pos2[name] - if pos1 == nil or pos2 == nil then - worldedit.player_notify(name, "no region selected") - return nil - end local volume = worldedit.volume(pos1, pos2) local abs = math.abs @@ -396,11 +495,13 @@ minetest.register_chatcommand("/volume", { end, }) -minetest.register_chatcommand("/deleteblocks", { +worldedit.register_command("deleteblocks", { params = "", description = "remove all MapBlocks (16x16x16) containing the selected area from the map", privs = {worldedit=true}, - func = safe_region(function(name, param) + require_pos = 2, + nodes_needed = check_region, + func = function(name) local pos1, pos2 = worldedit.pos1[name], worldedit.pos2[name] local success = minetest.delete_area(pos1, pos2) if success then @@ -408,46 +509,55 @@ minetest.register_chatcommand("/deleteblocks", { else worldedit.player_notify(name, "There was an error during deletion of the area.") end - end), + end, }) -minetest.register_chatcommand("/set", { +worldedit.register_command("set", { params = "", description = "Set the current WorldEdit region to ", privs = {worldedit=true}, - func = safe_region(function(name, param) - local node = get_node(name, param) - if not node then return end - + require_pos = 2, + parse = function(param) + local node = worldedit.normalize_nodename(param) + if not node then + return false, "invalid node name: " .. param + end + return true, node + end, + nodes_needed = check_region, + func = function(name, node) local count = worldedit.set(worldedit.pos1[name], worldedit.pos2[name], node) worldedit.player_notify(name, count .. " nodes set") - end, check_region), + end, }) -minetest.register_chatcommand("/param2", { +worldedit.register_command("param2", { params = "", description = "Set param2 of all nodes in the current WorldEdit region to ", privs = {worldedit=true}, - func = safe_region(function(name, param) + require_pos = 2, + parse = function(param) local param2 = tonumber(param) if not param2 then - worldedit.player_notify(name, "Invalid or missing param2 argument") - return + return false, "Invalid or missing param2 argument" elseif param2 < 0 or param2 > 255 then - worldedit.player_notify(name, "Param2 is out of range (must be between 0 and 255 inclusive)!") - return + return false, "Param2 is out of range (must be between 0 and 255 inclusive!)" end - + return true, param2 + end, + nodes_needed = check_region, + func = function(name, param2) local count = worldedit.set_param2(worldedit.pos1[name], worldedit.pos2[name], param2) worldedit.player_notify(name, count .. " nodes altered") - end, check_region), + end, }) -minetest.register_chatcommand("/mix", { +worldedit.register_command("mix", { params = " [] [ []] ...", description = "Fill the current WorldEdit region with a random mix of , ...", privs = {worldedit=true}, - func = safe_region(function(name, param) + require_pos = 2, + parse = function(param) local nodes = {} for nodename in param:gmatch("[^%s]+") do if tonumber(nodename) ~= nil and #nodes > 0 then @@ -456,187 +566,194 @@ minetest.register_chatcommand("/mix", { nodes[#nodes + 1] = last_node end else - local node = get_node(name, nodename) - if not node then return end + local node = worldedit.normalize_nodename(nodename) + if not node then + return false, "invalid node name: " .. nodename + end nodes[#nodes + 1] = node end end - + return true, nodes + end, + nodes_needed = check_region, + func = function(name, nodes) local pos1, pos2 = worldedit.pos1[name], worldedit.pos2[name] local count = worldedit.set(pos1, pos2, nodes) worldedit.player_notify(name, count .. " nodes set") - end, check_region), + end, }) -local check_replace = function(name, param) +local check_replace = function(param) local found, _, searchnode, replacenode = param:find("^([^%s]+)%s+(.+)$") if found == nil then - worldedit.player_notify(name, "invalid usage: " .. param) - return nil + return false end local newsearchnode = worldedit.normalize_nodename(searchnode) if not newsearchnode then - worldedit.player_notify(name, "invalid search node name: " .. searchnode) - return nil + return false, "invalid search node name: " .. searchnode end local newreplacenode = worldedit.normalize_nodename(replacenode) if not newreplacenode then - worldedit.player_notify(name, "invalid replace node name: " .. replacenode) - return nil + return false, "invalid replace node name: " .. replacenode end - return check_region(name, param) + return true, newsearchnode, newreplacenode end -minetest.register_chatcommand("/replace", { +worldedit.register_command("replace", { params = " ", description = "Replace all instances of with in the current WorldEdit region", privs = {worldedit=true}, - func = safe_region(function(name, param) - local found, _, search_node, replace_node = param:find("^([^%s]+)%s+(.+)$") - local norm_search_node = worldedit.normalize_nodename(search_node) - local norm_replace_node = worldedit.normalize_nodename(replace_node) + require_pos = 2, + parse = check_replace, + nodes_needed = check_region, + func = function(name, search_node, replace_node) local count = worldedit.replace(worldedit.pos1[name], worldedit.pos2[name], - norm_search_node, norm_replace_node) + search_node, replace_node) worldedit.player_notify(name, count .. " nodes replaced") - end, check_replace), + end, }) -minetest.register_chatcommand("/replaceinverse", { +worldedit.register_command("replaceinverse", { params = " ", description = "Replace all nodes other than with in the current WorldEdit region", privs = {worldedit=true}, - func = safe_region(function(name, param) - local found, _, search_node, replace_node = param:find("^([^%s]+)%s+(.+)$") - local norm_search_node = worldedit.normalize_nodename(search_node) - local norm_replace_node = worldedit.normalize_nodename(replace_node) + require_pos = 2, + parse = check_replace, + nodes_needed = check_region, + func = function(name, search_node, replace_node) local count = worldedit.replace(worldedit.pos1[name], worldedit.pos2[name], - norm_search_node, norm_replace_node, true) + search_node, replace_node, true) worldedit.player_notify(name, count .. " nodes replaced") - end, check_replace), + end, }) -local check_cube = function(name, param) - if worldedit.pos1[name] == nil then - worldedit.player_notify(name, "no position 1 selected") - return nil - end +local check_cube = function(param) local found, _, w, h, l, nodename = param:find("^(%d+)%s+(%d+)%s+(%d+)%s+(.+)$") if found == nil then - worldedit.player_notify(name, "invalid usage: " .. param) - return nil + return false end - local node = get_node(name, nodename) - if not node then return nil end - return tonumber(w) * tonumber(h) * tonumber(l) + local node = worldedit.normalize_nodename(nodename) + if not node then + return false, "invalid node name: " .. nodename + end + return true, tonumber(w), tonumber(h), tonumber(l), node end -minetest.register_chatcommand("/hollowcube", { +worldedit.register_command("hollowcube", { params = " ", description = "Add a hollow cube with its ground level centered at WorldEdit position 1 with dimensions x x , composed of .", privs = {worldedit=true}, - func = safe_region(function(name, param) - local found, _, w, h, l, nodename = param:find("^(%d+)%s+(%d+)%s+(%d+)%s+(.+)$") - local node = get_node(name, nodename) - local count = worldedit.cube(worldedit.pos1[name], tonumber(w), tonumber(h), tonumber(l), node, true) + require_pos = 1, + parse = check_cube, + nodes_needed = function(name, w, h, l, node) + return w * h * l + end, + func = function(name, w, h, l, node) + local count = worldedit.cube(worldedit.pos1[name], w, h, l, node, true) worldedit.player_notify(name, count .. " nodes added") - end, check_cube), + end, }) -minetest.register_chatcommand("/cube", { +worldedit.register_command("cube", { params = " ", description = "Add a cube with its ground level centered at WorldEdit position 1 with dimensions x x , composed of .", privs = {worldedit=true}, - func = safe_region(function(name, param) - local found, _, w, h, l, nodename = param:find("^(%d+)%s+(%d+)%s+(%d+)%s+(.+)$") - local node = get_node(name, nodename) - local count = worldedit.cube(worldedit.pos1[name], tonumber(w), tonumber(h), tonumber(l), node) + require_pos = 1, + parse = check_cube, + nodes_needed = function(name, w, h, l, node) + return w * h * l + end, + func = function(name, w, h, l, node) + local count = worldedit.cube(worldedit.pos1[name], w, h, l, node) worldedit.player_notify(name, count .. " nodes added") - end, check_cube), + end, }) -local check_sphere = function(name, param) - if worldedit.pos1[name] == nil then - worldedit.player_notify(name, "no position 1 selected") - return nil - end +local check_sphere = function(param) local found, _, radius, nodename = param:find("^(%d+)%s+(.+)$") if found == nil then - worldedit.player_notify(name, "invalid usage: " .. param) - return nil + return false end - local node = get_node(name, nodename) - if not node then return nil end - return math.ceil((4 * math.pi * (tonumber(radius) ^ 3)) / 3) --volume of sphere + local node = worldedit.normalize_nodename(nodename) + if not node then + return false, "invalid node name: " .. nodename + end + return true, tonumber(radius), node end -minetest.register_chatcommand("/hollowsphere", { +worldedit.register_command("hollowsphere", { params = " ", description = "Add hollow sphere centered at WorldEdit position 1 with radius , composed of ", privs = {worldedit=true}, - func = safe_region(function(name, param) - local found, _, radius, nodename = param:find("^(%d+)%s+(.+)$") - local node = get_node(name, nodename) - local count = worldedit.sphere(worldedit.pos1[name], tonumber(radius), node, true) + require_pos = 1, + parse = check_sphere, + nodes_needed = function(name, radius, node) + return math.ceil((4 * math.pi * (radius ^ 3)) / 3) --volume of sphere + end, + func = function(name, radius, node) + local count = worldedit.sphere(worldedit.pos1[name], radius, node, true) worldedit.player_notify(name, count .. " nodes added") - end, check_sphere), + end, }) -minetest.register_chatcommand("/sphere", { +worldedit.register_command("sphere", { params = " ", description = "Add sphere centered at WorldEdit position 1 with radius , composed of ", privs = {worldedit=true}, - func = safe_region(function(name, param) - local found, _, radius, nodename = param:find("^(%d+)%s+(.+)$") - local node = get_node(name, nodename) - local count = worldedit.sphere(worldedit.pos1[name], tonumber(radius), node) + require_pos = 1, + parse = check_sphere, + nodes_needed = function(name, radius, node) + return math.ceil((4 * math.pi * (radius ^ 3)) / 3) --volume of sphere + end, + func = function(name, radius, node) + local count = worldedit.sphere(worldedit.pos1[name], radius, node) worldedit.player_notify(name, count .. " nodes added") - end, check_sphere), + end, }) -local check_dome = function(name, param) - if worldedit.pos1[name] == nil then - worldedit.player_notify(name, "no position 1 selected") - return nil - end +local check_dome = function(param) local found, _, radius, nodename = param:find("^(%d+)%s+(.+)$") if found == nil then - worldedit.player_notify(name, "invalid usage: " .. param) - return nil + return false end - local node = get_node(name, nodename) - if not node then return nil end - return math.ceil((2 * math.pi * (tonumber(radius) ^ 3)) / 3) --volume of dome + local node = worldedit.normalize_nodename(nodename) + if not node then + return false, "invalid node name: " .. nodename + end + return true, tonumber(radius), node end -minetest.register_chatcommand("/hollowdome", { +worldedit.register_command("hollowdome", { params = " ", description = "Add hollow dome centered at WorldEdit position 1 with radius , composed of ", privs = {worldedit=true}, - func = safe_region(function(name, param) - local found, _, radius, nodename = param:find("^(%d+)%s+(.+)$") - local node = get_node(name, nodename) - local count = worldedit.dome(worldedit.pos1[name], tonumber(radius), node, true) + require_pos = 1, + parse = check_dome, + nodes_needed = function(name, radius, node) + return math.ceil((2 * math.pi * (radius ^ 3)) / 3) --volume of dome + end, + func = function(name, radius, node) + local count = worldedit.dome(worldedit.pos1[name], radius, node, true) worldedit.player_notify(name, count .. " nodes added") - end, check_dome), + end, }) -minetest.register_chatcommand("/dome", { +worldedit.register_command("dome", { params = " ", description = "Add dome centered at WorldEdit position 1 with radius , composed of ", privs = {worldedit=true}, - func = safe_region(function(name, param) - local found, _, radius, nodename = param:find("^(%d+)%s+(.+)$") - local node = get_node(name, nodename) - local count = worldedit.dome(worldedit.pos1[name], tonumber(radius), node) + require_pos = 1, + parse = check_dome, + nodes_needed = function(name, radius, node) + return math.ceil((2 * math.pi * (radius ^ 3)) / 3) --volume of dome + end, + func = function(name, radius, node) + local count = worldedit.dome(worldedit.pos1[name], radius, node) worldedit.player_notify(name, count .. " nodes added") - end, check_dome), + end, }) -local check_cylinder = function(name, param) - if worldedit.pos1[name] == nil then - worldedit.player_notify(name, "no position 1 selected") - return nil - end +local check_cylinder = function(param) -- two radii local found, _, axis, length, radius1, radius2, nodename = param:find("^([xyz%?])%s+([+-]?%d+)%s+(%d+)%s+(%d+)%s+(.+)$") if found == nil then @@ -645,152 +762,150 @@ local check_cylinder = function(name, param) radius2 = radius1 end if found == nil then - worldedit.player_notify(name, "invalid usage: " .. param) - return nil + return false end - local node = get_node(name, nodename) - if not node then return nil end - local radius = math.max(tonumber(radius1), tonumber(radius2)) - return math.ceil(math.pi * (radius ^ 2) * tonumber(length)) + local node = worldedit.normalize_nodename(nodename) + if not node then + return false, "invalid node name: " .. nodename + end + return true, axis, tonumber(length), tonumber(radius1), tonumber(radius2), node end -minetest.register_chatcommand("/hollowcylinder", { +worldedit.register_command("hollowcylinder", { params = "x/y/z/? [radius2] ", description = "Add hollow cylinder at WorldEdit position 1 along the x/y/z/? axis with length , base radius (and top radius [radius2]), composed of ", privs = {worldedit=true}, - func = safe_region(function(name, param) - -- two radii - local found, _, axis, length, radius1, radius2, nodename = param:find("^([xyz%?])%s+([+-]?%d+)%s+(%d+)%s+(%d+)%s+(.+)$") - if found == nil then - -- single radius - found, _, axis, length, radius1, nodename = param:find("^([xyz%?])%s+([+-]?%d+)%s+(%d+)%s+(.+)$") - radius2 = radius1 - end - length = tonumber(length) + require_pos = 1, + parse = check_cylinder, + nodes_needed = function(name, axis, length, radius1, radius2, node) + local radius = math.max(radius1, radius2) + return math.ceil(math.pi * (radius ^ 2) * length) + end, + func = function(name, axis, length, radius1, radius2, node) if axis == "?" then local sign axis, sign = worldedit.player_axis(name) length = length * sign end - local node = get_node(name, nodename) - local count = worldedit.cylinder(worldedit.pos1[name], axis, length, tonumber(radius1), tonumber(radius2), node, true) + local count = worldedit.cylinder(worldedit.pos1[name], axis, length, radius1, radius2, node, true) worldedit.player_notify(name, count .. " nodes added") - end, check_cylinder), + end, }) -minetest.register_chatcommand("/cylinder", { +worldedit.register_command("cylinder", { params = "x/y/z/? [radius2] ", description = "Add cylinder at WorldEdit position 1 along the x/y/z/? axis with length , base radius (and top radius [radius2]), composed of ", privs = {worldedit=true}, - func = safe_region(function(name, param) - -- two radii - local found, _, axis, length, radius1, radius2, nodename = param:find("^([xyz%?])%s+([+-]?%d+)%s+(%d+)%s+(%d+)%s+(.+)$") - if found == nil then - -- single radius - found, _, axis, length, radius1, nodename = param:find("^([xyz%?])%s+([+-]?%d+)%s+(%d+)%s+(.+)$") - radius2 = radius1 - end - length = tonumber(length) + require_pos = 1, + parse = check_cylinder, + nodes_needed = function(name, axis, length, radius1, radius2, node) + local radius = math.max(radius1, radius2) + return math.ceil(math.pi * (radius ^ 2) * length) + end, + func = function(name, axis, length, radius1, radius2, node) if axis == "?" then local sign axis, sign = worldedit.player_axis(name) length = length * sign end - local node = get_node(name, nodename) - local count = worldedit.cylinder(worldedit.pos1[name], axis, length, tonumber(radius1), tonumber(radius2), node) + local count = worldedit.cylinder(worldedit.pos1[name], axis, length, radius1, radius2, node) worldedit.player_notify(name, count .. " nodes added") - end, check_cylinder), + end, }) -local check_pyramid = function(name, param) - if worldedit.pos1[name] == nil then - worldedit.player_notify(name, "no position 1 selected") - return nil - end +local check_pyramid = function(param) local found, _, axis, height, nodename = param:find("^([xyz%?])%s+([+-]?%d+)%s+(.+)$") if found == nil then - worldedit.player_notify(name, "invalid usage: " .. param) - return nil + return false end - local node = get_node(name, nodename) - if not node then return nil end - height = tonumber(height) - return math.ceil(((height * 2 + 1) ^ 2) * height / 3) + local node = worldedit.normalize_nodename(nodename) + if not node then + return false, "invalid node name: " .. nodename + end + return true, axis, tonumber(height), node end -minetest.register_chatcommand("/hollowpyramid", { +worldedit.register_command("hollowpyramid", { params = "x/y/z/? ", description = "Add hollow pyramid centered at WorldEdit position 1 along the x/y/z/? axis with height , composed of ", privs = {worldedit=true}, - func = safe_region(function(name, param) - local found, _, axis, height, nodename = param:find("^([xyz%?])%s+([+-]?%d+)%s+(.+)$") - height = tonumber(height) + require_pos = 1, + parse = check_pyramid, + nodes_needed = function(name, axis, height, node) + return math.ceil(((height * 2 + 1) ^ 2) * height / 3) + end, + func = function(name, axis, height, node) if axis == "?" then local sign axis, sign = worldedit.player_axis(name) height = height * sign end - local node = get_node(name, nodename) local count = worldedit.pyramid(worldedit.pos1[name], axis, height, node, true) worldedit.player_notify(name, count .. " nodes added") - end, check_pyramid), + end, }) -minetest.register_chatcommand("/pyramid", { +worldedit.register_command("pyramid", { params = "x/y/z/? ", description = "Add pyramid centered at WorldEdit position 1 along the x/y/z/? axis with height , composed of ", privs = {worldedit=true}, - func = safe_region(function(name, param) - local found, _, axis, height, nodename = param:find("^([xyz%?])%s+([+-]?%d+)%s+(.+)$") - height = tonumber(height) + require_pos = 1, + parse = check_pyramid, + nodes_needed = function(name, axis, height, node) + return math.ceil(((height * 2 + 1) ^ 2) * height / 3) + end, + func = function(name, axis, height, node) if axis == "?" then local sign axis, sign = worldedit.player_axis(name) height = height * sign end - local node = get_node(name, nodename) local count = worldedit.pyramid(worldedit.pos1[name], axis, height, node) worldedit.player_notify(name, count .. " nodes added") - end, check_pyramid), + end, }) -minetest.register_chatcommand("/spiral", { +worldedit.register_command("spiral", { params = " ", description = "Add spiral centered at WorldEdit position 1 with side length , height , space between walls , composed of ", privs = {worldedit=true}, - func = safe_region(function(name, param) - local found, _, length, height, space, nodename = param:find("^(%d+)%s+(%d+)%s+(%d+)%s+(.+)$") - local node = get_node(name, nodename) - local count = worldedit.spiral(worldedit.pos1[name], tonumber(length), tonumber(height), tonumber(space), node) - worldedit.player_notify(name, count .. " nodes added") - end, - function(name, param) - if worldedit.pos1[name] == nil then - worldedit.player_notify(name, "no position 1 selected") - return nil - end + require_pos = 1, + parse = function(param) local found, _, length, height, space, nodename = param:find("^(%d+)%s+(%d+)%s+(%d+)%s+(.+)$") if found == nil then - worldedit.player_notify(name, "invalid usage: " .. param) - return nil + return false end - local node = get_node(name, nodename) - if not node then return nil end - return 1 -- TODO: return an useful value - end), + local node = worldedit.normalize_nodename(nodename) + if not node then + return false, "invalid node name: " .. nodename + end + return true, tonumber(length), tonumber(height), tonumber(space), node + end, + nodes_needed = function(name, length, height, space, node) + return (length + space) * height -- TODO: this is not the upper bound + end, + func = function(name, length, height, space, node) + local count = worldedit.spiral(worldedit.pos1[name], length, height, space, node) + worldedit.player_notify(name, count .. " nodes added") + end, }) -minetest.register_chatcommand("/copy", { +worldedit.register_command("copy", { params = "x/y/z/? ", description = "Copy the current WorldEdit region along the x/y/z/? axis by nodes", privs = {worldedit=true}, - func = safe_region(function(name, param) + require_pos = 2, + parse = function(param) local found, _, axis, amount = param:find("^([xyz%?])%s+([+-]?%d+)$") if found == nil then - worldedit.player_notify(name, "invalid usage: " .. param) - return + return false end - amount = tonumber(amount) + return true, axis, tonumber(amount) + end, + nodes_needed = function(name, axis, amount) + return check_region(name) * 2 + end, + func = function(name, axis, amount) if axis == "?" then local sign axis, sign = worldedit.player_axis(name) @@ -800,30 +915,31 @@ minetest.register_chatcommand("/copy", { local count = worldedit.copy(worldedit.pos1[name], worldedit.pos2[name], axis, amount) worldedit.player_notify(name, count .. " nodes copied") end, - function(name, param) - local volume = check_region(name, param) - return volume and volume * 2 or volume - end), }) -minetest.register_chatcommand("/move", { +worldedit.register_command("move", { params = "x/y/z/? ", description = "Move the current WorldEdit region along the x/y/z/? axis by nodes", privs = {worldedit=true}, - func = safe_region(function(name, param) - local pos1, pos2 = worldedit.pos1[name], worldedit.pos2[name] + require_pos = 2, + parse = function(param) local found, _, axis, amount = param:find("^([xyz%?])%s+([+-]?%d+)$") if found == nil then - worldedit.player_notify(name, "invalid usage: " .. param) - return + return false end - amount = tonumber(amount) + return true, axis, tonumber(amount) + end, + nodes_needed = function(name, axis, amount) + return check_region(name) * 2 + end, + func = function(name, axis, amount) if axis == "?" then local sign axis, sign = worldedit.player_axis(name) amount = amount * sign end + local pos1, pos2 = worldedit.pos1[name], worldedit.pos2[name] local count = worldedit.move(pos1, pos2, axis, amount) pos1[axis] = pos1[axis] + amount @@ -831,16 +947,25 @@ minetest.register_chatcommand("/move", { worldedit.mark_pos1(name) worldedit.mark_pos2(name) worldedit.player_notify(name, count .. " nodes moved") - end, check_region), + end, }) -minetest.register_chatcommand("/stack", { +worldedit.register_command("stack", { params = "x/y/z/? ", description = "Stack the current WorldEdit region along the x/y/z/? axis times", privs = {worldedit=true}, - func = safe_region(function(name, param) + require_pos = 2, + parse = function(param) local found, _, axis, repetitions = param:find("^([xyz%?])%s+([+-]?%d+)$") - repetitions = tonumber(repetitions) + if found == nil then + return false + end + return true, axis, tonumber(repetitions) + end, + nodes_needed = function(name, axis, repetitions) + return check_region(name) * math.abs(repetitions) + end, + func = function(name, axis, repetitions) if axis == "?" then local sign axis, sign = worldedit.player_axis(name) @@ -853,66 +978,59 @@ minetest.register_chatcommand("/stack", { worldedit.player_notify(name, count .. " nodes stacked") end) end, - function(name, param) - local found, _, axis, repetitions = param:find("^([xyz%?])%s+([+-]?%d+)$") - if found == nil then - worldedit.player_notify(name, "invalid usage: " .. param) - return - end - - local count = check_region(name, param) - if count then return tonumber(repetitions) * count end - return nil - end), }) -minetest.register_chatcommand("/stack2", { +worldedit.register_command("stack2", { params = " ", description = "Stack the current WorldEdit region times by offset , , ", privs = {worldedit=true}, - func = safe_region(function(name, param) + require_pos = 2, + parse = function(param) local repetitions, incs = param:match("(%d+)%s*(.+)") if repetitions == nil then - return + return false, "invalid count: " .. param end - repetitions = tonumber(repetitions) - local x, y, z = incs:match("([+-]?%d+) ([+-]?%d+) ([+-]?%d+)") if x == nil then - worldedit.player_notify(name, "invalid increments: " .. param) - return + return false, "invalid increments: " .. param end - x, y, z = tonumber(x), tonumber(y), tonumber(z) + return true, tonumber(repetitions), {x=tonumber(x), y=tonumber(y), z=tonumber(z)} + end, + nodes_needed = function(name, repetitions, offset) + return check_region(name) * repetitions + end, + func = function(name, repetitions, offset) local pos1, pos2 = worldedit.pos1[name], worldedit.pos2[name] local count = worldedit.volume(pos1, pos2) * repetitions - worldedit.stack2(pos1, pos2, {x=x, y=y, z=z}, repetitions, function() + worldedit.stack2(pos1, pos2, offset, repetitions, function() worldedit.player_notify(name, count .. " nodes stacked") end) end, - function(name, param) - local repetitions, incs = param:match("(%d+)%s*(.+)") - if repetitions == nil then - worldedit.player_notify(name, "invalid count: " .. param) - return - end - repetitions = tonumber(repetitions) - - local count = check_region(name, param) - if count then return repetitions * count end - return nil - end), }) -minetest.register_chatcommand("/stretch", { +worldedit.register_command("stretch", { params = " ", description = "Scale the current WorldEdit positions and region by a factor of , , along the X, Y, and Z axes, repectively, with position 1 as the origin", privs = {worldedit=true}, - func = safe_region(function(name, param) - local pos1, pos2 = worldedit.pos1[name], worldedit.pos2[name] + require_pos = 2, + parse = function(param) local found, _, stretchx, stretchy, stretchz = param:find("^(%d+)%s+(%d+)%s+(%d+)$") + if found == nil then + return false + end stretchx, stretchy, stretchz = tonumber(stretchx), tonumber(stretchy), tonumber(stretchz) + if stretchx == 0 or stretchy == 0 or stretchz == 0 then + return false, "invalid scaling factors: " .. param + end + return true, stretchx, stretchy, stretchz + end, + nodes_needed = function(name, stretchx, stretchy, stretchz) + return check_region(name) * stretchx * stretchy * stretchz + end, + func = function(name, stretchx, stretchy, stretchz) + local pos1, pos2 = worldedit.pos1[name], worldedit.pos2[name] local count, pos1, pos2 = worldedit.stretch(pos1, pos2, stretchx, stretchy, stretchz) --reset markers to scaled positions @@ -923,32 +1041,25 @@ minetest.register_chatcommand("/stretch", { worldedit.player_notify(name, count .. " nodes stretched") end, - function(name, param) - local found, _, stretchx, stretchy, stretchz = param:find("^(%d+)%s+(%d+)%s+(%d+)$") - if found == nil then - worldedit.player_notify(name, "invalid usage: " .. param) - return nil - end - stretchx, stretchy, stretchz = tonumber(stretchx), tonumber(stretchy), tonumber(stretchz) - if stretchx == 0 or stretchy == 0 or stretchz == 0 then - worldedit.player_notify(name, "invalid scaling factors: " .. param) - return nil - end - local count = check_region(name, param) - if count then - return stretchx * stretchy * stretchz * count - end - return nil - end), }) -minetest.register_chatcommand("/transpose", { +worldedit.register_command("transpose", { params = "x/y/z/? x/y/z/?", description = "Transpose the current WorldEdit region along the x/y/z/? and x/y/z/? axes", privs = {worldedit=true}, - func = safe_region(function(name, param) - local pos1, pos2 = worldedit.pos1[name], worldedit.pos2[name] + require_pos = 2, + parse = function(param) local found, _, axis1, axis2 = param:find("^([xyz%?])%s+([xyz%?])$") + if found == nil then + return false + elseif axis1 == axis2 then + return false, "invalid usage: axes must be different" + end + return true, axis1, axis2 + end, + nodes_needed = check_region, + func = function(name, axis1, axis2) + local pos1, pos2 = worldedit.pos1[name], worldedit.pos2[name] if axis1 == "?" then axis1 = worldedit.player_axis(name) end if axis2 == "?" then axis2 = worldedit.player_axis(name) end local count, pos1, pos2 = worldedit.transpose(pos1, pos2, axis1, axis2) @@ -961,45 +1072,46 @@ minetest.register_chatcommand("/transpose", { worldedit.player_notify(name, count .. " nodes transposed") end, - function(name, param) - local found, _, axis1, axis2 = param:find("^([xyz%?])%s+([xyz%?])$") - if found == nil then - worldedit.player_notify(name, "invalid usage: " .. param) - return nil - end - if axis1 == axis2 then - worldedit.player_notify(name, "invalid usage: axes must be different") - return nil - end - return check_region(name, param) - end), }) -minetest.register_chatcommand("/flip", { +worldedit.register_command("flip", { params = "x/y/z/?", description = "Flip the current WorldEdit region along the x/y/z/? axis", privs = {worldedit=true}, - func = safe_region(function(name, param) + require_pos = 2, + parse = function(param) + if param ~= "x" and param ~= "y" and param ~= "z" and param ~= "?" then + return false + end + return true, param + end, + nodes_needed = check_region, + func = function(name, param) if param == "?" then param = worldedit.player_axis(name) end local count = worldedit.flip(worldedit.pos1[name], worldedit.pos2[name], param) worldedit.player_notify(name, count .. " nodes flipped") end, - function(name, param) - if param ~= "x" and param ~= "y" and param ~= "z" and param ~= "?" then - worldedit.player_notify(name, "invalid usage: " .. param) - return nil - end - return check_region(name, param) - end), }) -minetest.register_chatcommand("/rotate", { +worldedit.register_command("rotate", { params = " ", description = "Rotate the current WorldEdit region around the axis by angle (90 degree increment)", privs = {worldedit=true}, - func = safe_region(function(name, param) - local pos1, pos2 = worldedit.pos1[name], worldedit.pos2[name] + require_pos = 2, + parse = function(param) local found, _, axis, angle = param:find("^([xyz%?])%s+([+-]?%d+)$") + if found == nil then + return false + end + angle = tonumber(angle) + if angle % 90 ~= 0 or angle % 360 == 0 then + return false, "invalid usage: angle must be multiple of 90" + end + return true, axis, angle + end, + nodes_needed = check_region, + func = function(name, axis, angle) + local pos1, pos2 = worldedit.pos1[name], worldedit.pos2[name] if axis == "?" then axis = worldedit.player_axis(name) end local count, pos1, pos2 = worldedit.rotate(pos1, pos2, axis, angle) @@ -1011,58 +1123,50 @@ minetest.register_chatcommand("/rotate", { worldedit.player_notify(name, count .. " nodes rotated") end, - function(name, param) - local found, _, axis, angle = param:find("^([xyz%?])%s+([+-]?%d+)$") - if found == nil then - worldedit.player_notify(name, "invalid usage: " .. param) - return nil - end - if angle % 90 ~= 0 or angle % 360 == 0 then - worldedit.player_notify(name, "invalid usage: angle must be multiple of 90") - return nil - end - return check_region(name, param) - end), }) -minetest.register_chatcommand("/orient", { +worldedit.register_command("orient", { params = "", description = "Rotate oriented nodes in the current WorldEdit region around the Y axis by angle (90 degree increment)", privs = {worldedit=true}, - func = safe_region(function(name, param) + require_pos = 2, + parse = function(param) local found, _, angle = param:find("^([+-]?%d+)$") + if found == nil then + return false + end + angle = tonumber(angle) + if angle % 90 ~= 0 then + return false, "invalid usage: angle must be multiple of 90" + end + return true, angle + end, + nodes_needed = check_region, + func = function(name, angle) local count = worldedit.orient(worldedit.pos1[name], worldedit.pos2[name], angle) worldedit.player_notify(name, count .. " nodes oriented") end, - function(name, param) - local found, _, angle = param:find("^([+-]?%d+)$") - if found == nil then - worldedit.player_notify(name, "invalid usage: " .. param) - return nil - end - if angle % 90 ~= 0 then - worldedit.player_notify(name, "invalid usage: angle must be multiple of 90") - return nil - end - return check_region(name, param) - end), }) -minetest.register_chatcommand("/fixlight", { +worldedit.register_command("fixlight", { params = "", description = "Fix the lighting in the current WorldEdit region", privs = {worldedit=true}, - func = safe_region(function(name, param) + require_pos = 2, + nodes_needed = check_region, + func = function(name) local count = worldedit.fixlight(worldedit.pos1[name], worldedit.pos2[name]) worldedit.player_notify(name, count .. " nodes updated") - end), + end, }) -minetest.register_chatcommand("/drain", { +worldedit.register_command("drain", { params = "", description = "Remove any fluid node within the current WorldEdit region", privs = {worldedit=true}, - func = safe_region(function(name, param) + require_pos = 2, + nodes_needed = check_region, + func = function(name) -- TODO: make an API function for this local count = 0 local pos1, pos2 = worldedit.sort_pos(worldedit.pos1[name], worldedit.pos2[name]) @@ -1079,49 +1183,69 @@ minetest.register_chatcommand("/drain", { end end worldedit.player_notify(name, count .. " nodes updated") - end), + end, }) -minetest.register_chatcommand("/hide", { +worldedit.register_command("hide", { params = "", description = "Hide all nodes in the current WorldEdit region non-destructively", privs = {worldedit=true}, - func = safe_region(function(name, param) + require_pos = 2, + nodes_needed = check_region, + func = function(name) local count = worldedit.hide(worldedit.pos1[name], worldedit.pos2[name]) worldedit.player_notify(name, count .. " nodes hidden") - end), + end, }) -minetest.register_chatcommand("/suppress", { +worldedit.register_command("suppress", { params = "", description = "Suppress all in the current WorldEdit region non-destructively", privs = {worldedit=true}, - func = safe_region(function(name, param) - local node = get_node(name, param) + require_pos = 2, + parse = function(param) + local node = worldedit.normalize_nodename(param) + if not node then + return false, "invalid node name: " .. param + end + return true, node + end, + nodes_needed = check_region, + func = function(name, node) local count = worldedit.suppress(worldedit.pos1[name], worldedit.pos2[name], node) worldedit.player_notify(name, count .. " nodes suppressed") - end, check_region), + end, }) -minetest.register_chatcommand("/highlight", { +worldedit.register_command("highlight", { params = "", description = "Highlight in the current WorldEdit region by hiding everything else non-destructively", privs = {worldedit=true}, - func = safe_region(function(name, param) - local node = get_node(name, param) + require_pos = 2, + parse = function(param) + local node = worldedit.normalize_nodename(param) + if not node then + return false, "invalid node name: " .. param + end + return true, node + end, + nodes_needed = check_region, + func = function(name, node) local count = worldedit.highlight(worldedit.pos1[name], worldedit.pos2[name], node) worldedit.player_notify(name, count .. " nodes highlighted") - end, check_region), + end, }) -minetest.register_chatcommand("/restore", { +worldedit.register_command("restore", { params = "", description = "Restores nodes hidden with WorldEdit in the current WorldEdit region", privs = {worldedit=true}, - func = safe_region(function(name, param) + require_pos = 2, + nodes_needed = check_region, + func = function(name) local count = worldedit.restore(worldedit.pos1[name], worldedit.pos2[name]) worldedit.player_notify(name, count .. " nodes restored") - end), + end, }) local function detect_misaligned_schematic(name, pos1, pos2) @@ -1141,19 +1265,22 @@ local function detect_misaligned_schematic(name, pos1, pos2) end end -minetest.register_chatcommand("/save", { +worldedit.register_command("save", { params = "", description = "Save the current WorldEdit region to \"(world folder)/schems/.we\"", privs = {worldedit=true}, - func = safe_region(function(name, param) + require_pos = 2, + parse = function(param) if param == "" then - worldedit.player_notify(name, "invalid usage: " .. param) - return + return false end if not check_filename(param) then - worldedit.player_notify(name, "Disallowed file name: " .. param) - return + return false, "Disallowed file name: " .. param end + return true, param + end, + nodes_needed = check_region, + func = function(name, param) local result, count = worldedit.serialize(worldedit.pos1[name], worldedit.pos2[name]) detect_misaligned_schematic(name, worldedit.pos1[name], worldedit.pos2[name]) @@ -1173,25 +1300,25 @@ minetest.register_chatcommand("/save", { file:close() worldedit.player_notify(name, count .. " nodes saved") - end), + end, }) -minetest.register_chatcommand("/allocate", { +worldedit.register_command("allocate", { params = "", description = "Set the region defined by nodes from \"(world folder)/schems/.we\" as the current WorldEdit region", privs = {worldedit=true}, - func = function(name, param) - local pos = get_position(name) - if pos == nil then return end - + require_pos = 1, + parse = function(param) if param == "" then - worldedit.player_notify(name, "invalid usage: " .. param) - return + return false end if not check_filename(param) then - worldedit.player_notify(name, "Disallowed file name: " .. param) - return + return false, "Disallowed file name: " .. param end + return true, param + end, + func = function(name, param) + local pos = worldedit.pos1[name] local filename = minetest.get_worldpath() .. "/schems/" .. param .. ".we" local file, err = io.open(filename, "rb") @@ -1226,13 +1353,22 @@ minetest.register_chatcommand("/allocate", { end, }) -minetest.register_chatcommand("/load", { +worldedit.register_command("load", { params = "", description = "Load nodes from \"(world folder)/schems/[.we[m]]\" with position 1 of the current WorldEdit region as the origin", privs = {worldedit=true}, + require_pos = 1, + parse = function(param) + if param == "" then + return false + end + if not check_filename(param) then + return false, "Disallowed file name: " .. param + end + return true, param + end, func = function(name, param) - local pos = get_position(name) - if pos == nil then return end + local pos = worldedit.pos1[name] if param == "" then worldedit.player_notify(name, "invalid usage: " .. param) @@ -1278,10 +1414,13 @@ minetest.register_chatcommand("/load", { end, }) -minetest.register_chatcommand("/lua", { +worldedit.register_command("lua", { params = "", description = "Executes as a Lua chunk in the global namespace", privs = {worldedit=true, server=true}, + parse = function(param) + return true, param + end, func = function(name, param) local err = worldedit.lua(param) if err then @@ -1294,11 +1433,16 @@ minetest.register_chatcommand("/lua", { end, }) -minetest.register_chatcommand("/luatransform", { +worldedit.register_command("luatransform", { params = "", description = "Executes as a Lua chunk in the global namespace with the variable pos available, for each node in the current WorldEdit region", privs = {worldedit=true, server=true}, - func = safe_region(function(name, param) + require_pos = 2, + parse = function(param) + return true, param + end, + nodes_needed = check_region, + func = function(name, param) local err = worldedit.luatransform(worldedit.pos1[name], worldedit.pos2[name], param) if err then worldedit.player_notify(name, "code error: " .. err, false) @@ -1307,24 +1451,26 @@ minetest.register_chatcommand("/luatransform", { worldedit.player_notify(name, "code successfully executed", false) minetest.log("action", name.." executed luatransform "..param) end - end), + end, }) -minetest.register_chatcommand("/mtschemcreate", { +worldedit.register_command("mtschemcreate", { params = "", description = "Save the current WorldEdit region using the Minetest ".. "Schematic format to \"(world folder)/schems/.mts\"", privs = {worldedit=true}, - func = safe_region(function(name, param) - if param == nil then - worldedit.player_notify(name, "No filename specified") - return + require_pos = 2, + parse = function(param) + if param == "" then + return false end if not check_filename(param) then - worldedit.player_notify(name, "Disallowed file name: " .. param) - return + return false, "Disallowed file name: " .. param end - + return true, param + end, + nodes_needed = check_region, + func = function(name, param) local path = minetest.get_worldpath() .. "/schems" -- Create directory if it does not already exist minetest.mkdir(path) @@ -1334,45 +1480,51 @@ minetest.register_chatcommand("/mtschemcreate", { worldedit.pos2[name], worldedit.prob_list[name], filename) if ret == nil then - worldedit.player_notify(name, "Failed to create Minetest schematic", false) + worldedit.player_notify(name, "Failed to create Minetest schematic") else - worldedit.player_notify(name, "Saved Minetest schematic to " .. param, false) + worldedit.player_notify(name, "Saved Minetest schematic to " .. param) end worldedit.prob_list[name] = {} - end), + end, }) -minetest.register_chatcommand("/mtschemplace", { +worldedit.register_command("mtschemplace", { params = "", description = "Load nodes from \"(world folder)/schems/.mts\" with position 1 of the current WorldEdit region as the origin", privs = {worldedit=true}, - func = function(name, param) + require_pos = 1, + parse = function(param) if param == "" then - worldedit.player_notify(name, "no filename specified") - return + return false end if not check_filename(param) then - worldedit.player_notify(name, "Disallowed file name: " .. param) - return + return false, "Disallowed file name: " .. param end - - local pos = get_position(name) - if pos == nil then return end + return true, param + end, + func = function(name, param) + local pos = worldedit.pos1[name] local path = minetest.get_worldpath() .. "/schems/" .. param .. ".mts" if minetest.place_schematic(pos, path) == nil then - worldedit.player_notify(name, "failed to place Minetest schematic", false) + worldedit.player_notify(name, "failed to place Minetest schematic") else worldedit.player_notify(name, "placed Minetest schematic " .. param .. - " at " .. minetest.pos_to_string(pos), false) + " at " .. minetest.pos_to_string(pos)) end end, }) -minetest.register_chatcommand("/mtschemprob", { +worldedit.register_command("mtschemprob", { params = "start/finish/get", description = "Begins node probability entry for Minetest schematics, gets the nodes that have probabilities set, or ends node probability entry", privs = {worldedit=true}, + parse = function(param) + if param ~= "start" and param ~= "finish" and param ~= "get" then + return false, "unknown subcommand: " .. param + end + return true, param + end, func = function(name, param) if param == "start" then --start probability setting worldedit.set_pos[name] = "prob" @@ -1393,8 +1545,6 @@ minetest.register_chatcommand("/mtschemprob", { end worldedit.player_notify(name, "currently set node probabilities:") worldedit.player_notify(name, text) - else - worldedit.player_notify(name, "unknown subcommand: " .. param) end end, }) @@ -1408,12 +1558,14 @@ minetest.register_on_player_receive_fields(function(player, formname, fields) end end) -minetest.register_chatcommand("/clearobjects", { +worldedit.register_command("clearobjects", { params = "", description = "Clears all objects within the WorldEdit region", privs = {worldedit=true}, - func = safe_region(function(name, param) + require_pos = 2, + nodes_needed = check_region, + func = function(name) local count = worldedit.clear_objects(worldedit.pos1[name], worldedit.pos2[name]) worldedit.player_notify(name, count .. " objects cleared") - end), + end, }) diff --git a/worldedit_commands/safe.lua b/worldedit_commands/safe.lua index 0bd30d76..8ce737b5 100644 --- a/worldedit_commands/safe.lua +++ b/worldedit_commands/safe.lua @@ -1,53 +1,33 @@ local safe_region_callback = {} -local safe_region_param = {} - -worldedit._override_safe_regions = false -- internal use ONLY! - -local function check_region(name, param) - local pos1, pos2 = worldedit.pos1[name], worldedit.pos2[name] --obtain positions - if pos1 == nil or pos2 == nil then - worldedit.player_notify(name, "no region selected") - return nil - end - return worldedit.volume(pos1, pos2) -end +--`count` is the number of nodes that would possibly be modified --`callback` is a callback to run when the user confirms ---`nodes_needed` is a function accepting `param`, `pos1`, and `pos2` to calculate the number of nodes needed -local function safe_region(callback, nodes_needed) - --default node volume calculation - nodes_needed = nodes_needed or check_region - - return function(name, param) - --check if the operation applies to a safe number of nodes - local count = nodes_needed(name, param) - if count == nil then return end --invalid command - if worldedit._override_safe_regions or count < 10000 then - return callback(name, param) - end - - --save callback to call later - safe_region_callback[name], safe_region_param[name] = callback, param - worldedit.player_notify(name, "WARNING: this operation could affect up to " .. count .. " nodes; type //y to continue or //n to cancel") +local function safe_region(name, count, callback) + if count < 10000 then + return callback() end + + --save callback to call later + safe_region_callback[name] = callback + worldedit.player_notify(name, "WARNING: this operation could affect up to " .. count .. " nodes; type //y to continue or //n to cancel") end local function reset_pending(name) - safe_region_callback[name], safe_region_param[name] = nil, nil + safe_region_callback[name] = nil end minetest.register_chatcommand("/y", { params = "", description = "Confirm a pending operation", func = function(name) - local callback, param = safe_region_callback[name], safe_region_param[name] + local callback = safe_region_callback[name] if not callback then worldedit.player_notify(name, "no operation pending") return end reset_pending(name) - callback(name, param) + callback(name) end, }) @@ -65,4 +45,4 @@ minetest.register_chatcommand("/n", { }) -return safe_region, check_region, reset_pending +return safe_region, reset_pending diff --git a/worldedit_commands/wand.lua b/worldedit_commands/wand.lua index fccc8636..faa77ff5 100644 --- a/worldedit_commands/wand.lua +++ b/worldedit_commands/wand.lua @@ -15,7 +15,7 @@ minetest.register_tool(":worldedit:wand", { liquids_pointable = true, -- ground with only water on can be selected as well on_use = function(itemstack, placer, pointed_thing) - if placer == nil or pointed_thing == nil then return itemstack end + if placer == nil or pointed_thing == nil then return end local name = placer:get_player_name() if pointed_thing.type == "node" then -- set and mark pos1 @@ -25,7 +25,7 @@ minetest.register_tool(":worldedit:wand", { local now = minetest.get_us_time() if now - (punched_air_time[name] or 0) < 1000 * 1000 then -- reset markers - minetest.registered_chatcommands["/reset"].func(name, "") + worldedit.registered_commands["reset"].func(name) end punched_air_time[name] = now elseif pointed_thing.type == "object" then @@ -36,23 +36,29 @@ minetest.register_tool(":worldedit:wand", { worldedit.mark_pos1(name) end end - return itemstack -- nothing consumed, nothing changed end, on_place = function(itemstack, placer, pointed_thing) - if placer == nil or pointed_thing == nil then return itemstack end + if placer == nil or (pointed_thing or {}).type ~= "node" then + return itemstack + end local name = placer:get_player_name() - if pointed_thing.type == "node" then - -- set and mark pos2 - worldedit.pos2[name] = above_or_under(placer, pointed_thing) + -- set and mark pos2 + worldedit.pos2[name] = above_or_under(placer, pointed_thing) + worldedit.mark_pos2(name) + return itemstack -- nothing consumed, nothing changed + end, + + on_secondary_use = function(itemstack, user, pointed_thing) + if user == nil or (pointed_thing or {}).type ~= "object" then + return itemstack + end + local name = user:get_player_name() + local entity = pointed_thing.ref:get_luaentity() + if entity and entity.name == "worldedit:pos1" then + -- set pos2 = pos1 + worldedit.pos2[name] = worldedit.pos1[name] worldedit.mark_pos2(name) - elseif pointed_thing.type == "object" then - local entity = pointed_thing.ref:get_luaentity() - if entity and entity.name == "worldedit:pos1" then - -- set pos2 = pos1 - worldedit.pos2[name] = worldedit.pos1[name] - worldedit.mark_pos2(name) - end end return itemstack -- nothing consumed, nothing changed end, diff --git a/worldedit_gui/functionality.lua b/worldedit_gui/functionality.lua index 7c9d5879..1efed10e 100644 --- a/worldedit_gui/functionality.lua +++ b/worldedit_gui/functionality.lua @@ -52,8 +52,8 @@ end -- display node (or unknown_node image otherwise) at specified pos in formspec local formspec_node = function(pos, nodename) - if nodename then - local ndef = minetest.registered_nodes[nodename] or {} + local ndef = nodename and minetest.registered_nodes[nodename] + if nodename and ndef then return string.format("item_image[%s;1,1;%s]", pos, nodename) .. string.format("tooltip[%s;1,1;%s]", pos, minetest.formspec_escape(ndef.description)) else @@ -63,7 +63,7 @@ end -- two further priv helpers local function we_privs(command) - return minetest.chatcommands["/" .. command].privs + return worldedit.registered_commands[command].privs end local function combine_we_privs(list) @@ -74,6 +74,64 @@ local function combine_we_privs(list) return combine_privs(unpack(args)) end +-- functions that handle value changing & page reshowing (without submitting) +local function copy_changes(name, fields, def) + for field, into in pairs(def) do + if into ~= true and fields[field] then + local value = tostring(fields[field]) + if into == gui_axis1 or into == gui_axis2 then + into[name] = axis_indices[value] + elseif into == gui_angle then + into[name] = angle_indices[value] + else + into[name] = value + end + end + end +end + +local function handle_changes(name, identifier, fields, def) + local any = false + for field, into in pairs(def) do + if fields.key_enter_field == field then + any = true + end + -- first condition: buttons (value not saved) + -- others: dropdowns which will be sent when their value changes + if into == true or into == gui_axis1 or into == gui_axis2 or into == gui_angle then + if fields[field] then + any = true + end + end + end + if not any then + return false + end + + any = false + for field, into in pairs(def) do + if into ~= true and fields[field] then + local value = tostring(fields[field]) + if into == gui_axis1 or into == gui_axis2 then + into[name] = axis_indices[value] + elseif into == gui_angle then + into[name] = angle_indices[value] + else + into[name] = value + end + + if into == gui_nodename1 or into == gui_nodename2 then + any = true + end + end + end + -- Only nodename fields change based on the value, so only re-show the page if necessary + if any then + worldedit.show_page(name, identifier) + end + return true +end + worldedit.register_gui_function("worldedit_gui_about", { name = "About", privs = {interact=true}, @@ -186,13 +244,15 @@ worldedit.register_gui_function("worldedit_gui_set", { }) worldedit.register_gui_handler("worldedit_gui_set", function(name, fields) - local ret = false - if fields.worldedit_gui_set_search or fields.key_enter_field == "worldedit_gui_set_node" then - gui_nodename1[name] = tostring(fields.worldedit_gui_set_node) - worldedit.show_page(name, "worldedit_gui_set") - ret = true -- fallthrough - end + local cg = { + worldedit_gui_set_search = true, + worldedit_gui_set_node = gui_nodename1, + } + local ret = handle_changes(name, "worldedit_gui_set", fields, cg) if fields.worldedit_gui_set_submit then + copy_changes(name, fields, cg) + worldedit.show_page(name, "worldedit_gui_set") + local n = worldedit.normalize_nodename(gui_nodename1[name]) if n then minetest.chatcommands["/set"].func(name, n) @@ -223,16 +283,17 @@ worldedit.register_gui_function("worldedit_gui_replace", { }) worldedit.register_gui_handler("worldedit_gui_replace", function(name, fields) - local ret = false - if fields.worldedit_gui_replace_search_search or fields.worldedit_gui_replace_replace_search - or table.indexof({"worldedit_gui_replace_search", "worldedit_gui_replace_replace"}, fields.key_enter_field) ~= -1 then - gui_nodename1[name] = tostring(fields.worldedit_gui_replace_search) - gui_nodename2[name] = tostring(fields.worldedit_gui_replace_replace) + local cg = { + worldedit_gui_replace_search_search = true, + worldedit_gui_replace_replace_search = true, + worldedit_gui_replace_search = gui_nodename1, + worldedit_gui_replace_replace = gui_nodename2, + } + local ret = handle_changes(name, "worldedit_gui_replace", fields, cg) + if fields.worldedit_gui_replace_submit or fields.worldedit_gui_replace_submit_inverse then + copy_changes(name, fields, cg) worldedit.show_page(name, "worldedit_gui_replace") - ret = true -- fallthrough - end - if fields.worldedit_gui_replace_submit or fields.worldedit_gui_replace_submit_inverse then local submit = "replace" if fields.worldedit_gui_replace_submit_inverse then submit = "replaceinverse" @@ -255,9 +316,11 @@ worldedit.register_gui_function("worldedit_gui_sphere_dome", { local nodename = worldedit.normalize_nodename(node) return "size[6.5,5]" .. worldedit.get_formspec_header("worldedit_gui_sphere_dome") .. string.format("field[0.5,1.5;4,0.8;worldedit_gui_sphere_dome_node;Name;%s]", minetest.formspec_escape(node)) .. + "field_close_on_enter[worldedit_gui_sphere_dome_node;false]" .. "button[4,1.18;1.5,0.8;worldedit_gui_sphere_dome_search;Search]" .. formspec_node("5.5,1.1", nodename) .. string.format("field[0.5,2.5;4,0.8;worldedit_gui_sphere_dome_radius;Radius;%s]", minetest.formspec_escape(radius)) .. + "field_close_on_enter[worldedit_gui_sphere_dome_radius;false]" .. "button_exit[0,3.5;3,0.8;worldedit_gui_sphere_dome_submit_hollow;Hollow Sphere]" .. "button_exit[3.5,3.5;3,0.8;worldedit_gui_sphere_dome_submit_solid;Solid Sphere]" .. "button_exit[0,4.5;3,0.8;worldedit_gui_sphere_dome_submit_hollow_dome;Hollow Dome]" .. @@ -266,32 +329,32 @@ worldedit.register_gui_function("worldedit_gui_sphere_dome", { }) worldedit.register_gui_handler("worldedit_gui_sphere_dome", function(name, fields) - if fields.worldedit_gui_sphere_dome_search - or fields.worldedit_gui_sphere_dome_submit_hollow or fields.worldedit_gui_sphere_dome_submit_solid + local cg = { + worldedit_gui_sphere_dome_search = true, + worldedit_gui_sphere_dome_node = gui_nodename1, + worldedit_gui_sphere_dome_radius = gui_distance2, + } + local ret = handle_changes(name, "worldedit_gui_sphere_dome", fields, cg) + if fields.worldedit_gui_sphere_dome_submit_hollow or fields.worldedit_gui_sphere_dome_submit_solid or fields.worldedit_gui_sphere_dome_submit_hollow_dome or fields.worldedit_gui_sphere_dome_submit_solid_dome then - gui_nodename1[name] = tostring(fields.worldedit_gui_sphere_dome_node) - gui_distance2[name] = tostring(fields.worldedit_gui_sphere_dome_radius) + copy_changes(name, fields, cg) worldedit.show_page(name, "worldedit_gui_sphere_dome") - local submit = nil - if fields.worldedit_gui_sphere_dome_submit_hollow then - submit = "hollowsphere" - elseif fields.worldedit_gui_sphere_dome_submit_solid then + local submit = "hollowsphere" + if fields.worldedit_gui_sphere_dome_submit_solid then submit = "sphere" elseif fields.worldedit_gui_sphere_dome_submit_hollow_dome then submit = "hollowdome" elseif fields.worldedit_gui_sphere_dome_submit_solid_dome then submit = "dome" end - if submit then - local n = worldedit.normalize_nodename(gui_nodename1[name]) - if n then - minetest.chatcommands["/"..submit].func(name, string.format("%s %s", gui_distance2[name], n)) - end + local n = worldedit.normalize_nodename(gui_nodename1[name]) + if n then + minetest.chatcommands["/"..submit].func(name, string.format("%s %s", gui_distance2[name], n)) end return true end - return false + return ret end) worldedit.register_gui_function("worldedit_gui_cylinder", { @@ -303,12 +366,16 @@ worldedit.register_gui_function("worldedit_gui_cylinder", { local nodename = worldedit.normalize_nodename(node) return "size[6.5,6]" .. worldedit.get_formspec_header("worldedit_gui_cylinder") .. string.format("field[0.5,1.5;4,0.8;worldedit_gui_cylinder_node;Name;%s]", minetest.formspec_escape(node)) .. + "field_close_on_enter[worldedit_gui_cylinder_node;false]" .. "button[4,1.18;1.5,0.8;worldedit_gui_cylinder_search;Search]" .. formspec_node("5.5,1.1", nodename) .. string.format("field[0.5,2.5;4,0.8;worldedit_gui_cylinder_length;Length;%s]", minetest.formspec_escape(length)) .. string.format("dropdown[4,2.18;2.5;worldedit_gui_cylinder_axis;X axis,Y axis,Z axis,Look direction;%d]", axis) .. string.format("field[0.5,3.5;2,0.8;worldedit_gui_cylinder_radius1;Base Radius;%s]", minetest.formspec_escape(radius1)) .. string.format("field[2.5,3.5;2,0.8;worldedit_gui_cylinder_radius2;Top Radius;%s]", minetest.formspec_escape(radius2)) .. + "field_close_on_enter[worldedit_gui_cylinder_length;false]" .. + "field_close_on_enter[worldedit_gui_cylinder_radius1;false]" .. + "field_close_on_enter[worldedit_gui_cylinder_radius2;false]" .. "label[0.25,4;Equal base and top radius creates a cylinder,\n".. "zero top radius creates a cone.\nConsult documentation for more information.]".. "button_exit[0,5.5;3,0.8;worldedit_gui_cylinder_submit_hollow;Hollow Cylinder]" .. @@ -317,36 +384,31 @@ worldedit.register_gui_function("worldedit_gui_cylinder", { }) worldedit.register_gui_handler("worldedit_gui_cylinder", function(name, fields) - if fields.worldedit_gui_cylinder_search - or fields.worldedit_gui_cylinder_submit_hollow or fields.worldedit_gui_cylinder_submit_solid then - gui_nodename1[name] = tostring(fields.worldedit_gui_cylinder_node) - gui_axis1[name] = axis_indices[fields.worldedit_gui_cylinder_axis] - gui_distance1[name] = tostring(fields.worldedit_gui_cylinder_length) - gui_distance2[name] = tostring(fields.worldedit_gui_cylinder_radius1) - gui_distance3[name] = tostring(fields.worldedit_gui_cylinder_radius2) + local cg = { + worldedit_gui_cylinder_search = true, + worldedit_gui_cylinder_node = gui_nodename1, + worldedit_gui_cylinder_axis = gui_axis1, + worldedit_gui_cylinder_length = gui_distance1, + worldedit_gui_cylinder_radius1 = gui_distance2, + worldedit_gui_cylinder_radius2 = gui_distance3, + } + local ret = handle_changes(name, "worldedit_gui_cylinder", fields, cg) + if fields.worldedit_gui_cylinder_submit_hollow or fields.worldedit_gui_cylinder_submit_solid then + copy_changes(name, fields, cg) worldedit.show_page(name, "worldedit_gui_cylinder") - local submit = nil - if fields.worldedit_gui_cylinder_submit_hollow then - submit = "hollowcylinder" - elseif fields.worldedit_gui_cylinder_submit_solid then + local submit = "hollowcylinder" + if fields.worldedit_gui_cylinder_submit_solid then submit = "cylinder" end - if submit then - local n = worldedit.normalize_nodename(gui_nodename1[name]) - if n then - local args = string.format("%s %s %s %s %s", axis_values[gui_axis1[name]], gui_distance1[name], gui_distance2[name], gui_distance3[name], n) - minetest.chatcommands["/"..submit].func(name, args) - end + local n = worldedit.normalize_nodename(gui_nodename1[name]) + if n then + local args = string.format("%s %s %s %s %s", axis_values[gui_axis1[name]], gui_distance1[name], gui_distance2[name], gui_distance3[name], n) + minetest.chatcommands["/"..submit].func(name, args) end return true end - if fields.worldedit_gui_cylinder_axis then - gui_axis1[name] = axis_indices[fields.worldedit_gui_cylinder_axis] - worldedit.show_page(name, "worldedit_gui_cylinder") - return true - end - return false + return ret end) worldedit.register_gui_function("worldedit_gui_pyramid", { @@ -357,42 +419,40 @@ worldedit.register_gui_function("worldedit_gui_pyramid", { local nodename = worldedit.normalize_nodename(node) return "size[6.5,4]" .. worldedit.get_formspec_header("worldedit_gui_pyramid") .. string.format("field[0.5,1.5;4,0.8;worldedit_gui_pyramid_node;Name;%s]", minetest.formspec_escape(node)) .. + "field_close_on_enter[worldedit_gui_pyramid_node;false]" .. "button[4,1.18;1.5,0.8;worldedit_gui_pyramid_search;Search]" .. formspec_node("5.5,1.1", nodename) .. string.format("field[0.5,2.5;4,0.8;worldedit_gui_pyramid_length;Length;%s]", minetest.formspec_escape(length)) .. string.format("dropdown[4,2.18;2.5;worldedit_gui_pyramid_axis;X axis,Y axis,Z axis,Look direction;%d]", axis) .. + "field_close_on_enter[worldedit_gui_pyramid_length;false]" .. "button_exit[0,3.5;3,0.8;worldedit_gui_pyramid_submit_hollow;Hollow Pyramid]" .. "button_exit[3.5,3.5;3,0.8;worldedit_gui_pyramid_submit_solid;Solid Pyramid]" end, }) worldedit.register_gui_handler("worldedit_gui_pyramid", function(name, fields) - if fields.worldedit_gui_pyramid_search or fields.worldedit_gui_pyramid_submit_solid or fields.worldedit_gui_pyramid_submit_hollow or fields.worldedit_gui_pyramid_axis then - gui_nodename1[name] = tostring(fields.worldedit_gui_pyramid_node) - gui_axis1[name] = axis_indices[fields.worldedit_gui_pyramid_axis] - gui_distance1[name] = tostring(fields.worldedit_gui_pyramid_length) + local cg = { + worldedit_gui_pyramid_search = true, + worldedit_gui_pyramid_node = gui_nodename1, + worldedit_gui_pyramid_axis = gui_axis1, + worldedit_gui_pyramid_length = gui_distance1, + } + local ret = handle_changes(name, "worldedit_gui_pyramid", fields, cg) + if fields.worldedit_gui_pyramid_submit_solid or fields.worldedit_gui_pyramid_submit_hollow then + copy_changes(name, fields, cg) worldedit.show_page(name, "worldedit_gui_pyramid") - local submit = nil - if fields.worldedit_gui_pyramid_submit_solid then - submit = "pyramid" - elseif fields.worldedit_gui_pyramid_submit_hollow then + local submit = "pyramid" + if fields.worldedit_gui_pyramid_submit_hollow then submit = "hollowpyramid" end - if submit then - local n = worldedit.normalize_nodename(gui_nodename1[name]) - if n then - minetest.chatcommands["/"..submit].func(name, string.format("%s %s %s", axis_values[gui_axis1[name]], gui_distance1[name], n)) - end + local n = worldedit.normalize_nodename(gui_nodename1[name]) + if n then + minetest.chatcommands["/"..submit].func(name, string.format("%s %s %s", axis_values[gui_axis1[name]], gui_distance1[name], n)) end return true end - if fields.worldedit_gui_pyramid_axis then - gui_axis1[name] = axis_indices[fields.worldedit_gui_pyramid_axis] - worldedit.show_page(name, "worldedit_gui_pyramid") - return true - end - return false + return ret end) worldedit.register_gui_function("worldedit_gui_spiral", { @@ -403,31 +463,39 @@ worldedit.register_gui_function("worldedit_gui_spiral", { local nodename = worldedit.normalize_nodename(node) return "size[6.5,6]" .. worldedit.get_formspec_header("worldedit_gui_spiral") .. string.format("field[0.5,1.5;4,0.8;worldedit_gui_spiral_node;Name;%s]", minetest.formspec_escape(node)) .. + "field_close_on_enter[worldedit_gui_spiral_node;false]" .. "button[4,1.18;1.5,0.8;worldedit_gui_spiral_search;Search]" .. formspec_node("5.5,1.1", nodename) .. string.format("field[0.5,2.5;4,0.8;worldedit_gui_spiral_length;Side Length;%s]", minetest.formspec_escape(length)) .. string.format("field[0.5,3.5;4,0.8;worldedit_gui_spiral_height;Height;%s]", minetest.formspec_escape(height)) .. string.format("field[0.5,4.5;4,0.8;worldedit_gui_spiral_space;Wall Spacing;%s]", minetest.formspec_escape(space)) .. + "field_close_on_enter[worldedit_gui_spiral_length;false]" .. + "field_close_on_enter[worldedit_gui_spiral_height;false]" .. + "field_close_on_enter[worldedit_gui_spiral_space;false]" .. "button_exit[0,5.5;3,0.8;worldedit_gui_spiral_submit;Spiral]" end, }) worldedit.register_gui_handler("worldedit_gui_spiral", function(name, fields) - if fields.worldedit_gui_spiral_search or fields.worldedit_gui_spiral_submit then - gui_nodename1[name] = fields.worldedit_gui_spiral_node - gui_distance1[name] = tostring(fields.worldedit_gui_spiral_length) - gui_distance2[name] = tostring(fields.worldedit_gui_spiral_height) - gui_distance3[name] = tostring(fields.worldedit_gui_spiral_space) + local cg = { + worldedit_gui_spiral_search = true, + worldedit_gui_spiral_node = gui_nodename1, + worldedit_gui_spiral_length = gui_distance1, + worldedit_gui_spiral_height = gui_distance2, + worldedit_gui_spiral_space = gui_distance3, + } + local ret = handle_changes(name, "worldedit_gui_spiral", fields, cg) + if fields.worldedit_gui_spiral_submit then + copy_changes(name, fields, cg) worldedit.show_page(name, "worldedit_gui_spiral") - if fields.worldedit_gui_spiral_submit then - local n = worldedit.normalize_nodename(gui_nodename1[name]) - if n then - minetest.chatcommands["/spiral"].func(name, string.format("%s %s %s %s", gui_distance1[name], gui_distance2[name], gui_distance3[name], n)) - end + + local n = worldedit.normalize_nodename(gui_nodename1[name]) + if n then + minetest.chatcommands["/spiral"].func(name, string.format("%s %s %s %s", gui_distance1[name], gui_distance2[name], gui_distance3[name], n)) end return true end - return false + return ret end) worldedit.register_gui_function("worldedit_gui_copy_move", { @@ -439,29 +507,30 @@ worldedit.register_gui_function("worldedit_gui_copy_move", { return "size[6.5,3]" .. worldedit.get_formspec_header("worldedit_gui_copy_move") .. string.format("field[0.5,1.5;4,0.8;worldedit_gui_copy_move_amount;Amount;%s]", minetest.formspec_escape(amount)) .. string.format("dropdown[4,1.18;2.5;worldedit_gui_copy_move_axis;X axis,Y axis,Z axis,Look direction;%d]", axis) .. + "field_close_on_enter[worldedit_gui_copy_move_amount;false]" .. "button_exit[0,2.5;3,0.8;worldedit_gui_copy_move_copy;Copy Region]" .. "button_exit[3.5,2.5;3,0.8;worldedit_gui_copy_move_move;Move Region]" end, }) worldedit.register_gui_handler("worldedit_gui_copy_move", function(name, fields) + local cg = { + worldedit_gui_copy_move_amount = gui_distance1, + worldedit_gui_copy_move_axis = gui_axis1, + } + local ret = handle_changes(name, "worldedit_gui_spiral", fields, cg) if fields.worldedit_gui_copy_move_copy or fields.worldedit_gui_copy_move_move then - gui_axis1[name] = axis_indices[fields.worldedit_gui_copy_move_axis] or 4 - gui_distance1[name] = tostring(fields.worldedit_gui_copy_move_amount) + copy_changes(name, fields, cg) worldedit.show_page(name, "worldedit_gui_copy_move") - if fields.worldedit_gui_copy_move_copy then - minetest.chatcommands["/copy"].func(name, string.format("%s %s", axis_values[gui_axis1[name]], gui_distance1[name])) - else --fields.worldedit_gui_copy_move_move - minetest.chatcommands["/move"].func(name, string.format("%s %s", axis_values[gui_axis1[name]], gui_distance1[name])) + + local submit = "copy" + if fields.worldedit_gui_copy_move_move then + submit = "move" end + minetest.chatcommands["/"..submit].func(name, string.format("%s %s", axis_values[gui_axis1[name]], gui_distance1[name])) return true end - if fields.worldedit_gui_copy_move_axis then - gui_axis1[name] = axis_indices[fields.worldedit_gui_copy_move_axis] or 4 - worldedit.show_page(name, "worldedit_gui_copy_move") - return true - end - return false + return ret end) worldedit.register_gui_function("worldedit_gui_stack", { @@ -472,24 +541,25 @@ worldedit.register_gui_function("worldedit_gui_stack", { return "size[6.5,3]" .. worldedit.get_formspec_header("worldedit_gui_stack") .. string.format("field[0.5,1.5;4,0.8;worldedit_gui_stack_count;Count;%s]", minetest.formspec_escape(count)) .. string.format("dropdown[4,1.18;2.5;worldedit_gui_stack_axis;X axis,Y axis,Z axis,Look direction;%d]", axis) .. + "field_close_on_enter[worldedit_gui_stack_count;false]" .. "button_exit[0,2.5;3,0.8;worldedit_gui_stack_submit;Stack]" end, }) worldedit.register_gui_handler("worldedit_gui_stack", function(name, fields) + local cg = { + worldedit_gui_stack_axis = gui_axis1, + worldedit_gui_stack_count = gui_count1, + } + local ret = handle_changes(name, "worldedit_gui_stack", fields, cg) if fields.worldedit_gui_stack_submit then - gui_axis1[name] = axis_indices[fields.worldedit_gui_stack_axis] - gui_count1[name] = tostring(fields.worldedit_gui_stack_count) + copy_changes(name, fields, cg) worldedit.show_page(name, "worldedit_gui_stack") + minetest.chatcommands["/stack"].func(name, string.format("%s %s", axis_values[gui_axis1[name]], gui_count1[name])) return true end - if fields.worldedit_gui_stack_axis then - gui_axis1[name] = axis_indices[fields.worldedit_gui_stack_axis] - worldedit.show_page(name, "worldedit_gui_stack") - return true - end - return false + return ret end) worldedit.register_gui_function("worldedit_gui_stretch", { @@ -501,20 +571,28 @@ worldedit.register_gui_function("worldedit_gui_stretch", { string.format("field[0.5,1.5;4,0.8;worldedit_gui_stretch_x;Stretch X;%s]", minetest.formspec_escape(stretchx)) .. string.format("field[0.5,2.5;4,0.8;worldedit_gui_stretch_y;Stretch Y;%s]", minetest.formspec_escape(stretchy)) .. string.format("field[0.5,3.5;4,0.8;worldedit_gui_stretch_z;Stretch Z;%s]", minetest.formspec_escape(stretchz)) .. + "field_close_on_enter[worldedit_gui_stretch_x;false]" .. + "field_close_on_enter[worldedit_gui_stretch_y;false]" .. + "field_close_on_enter[worldedit_gui_stretch_z;false]" .. "button_exit[0,4.5;3,0.8;worldedit_gui_stretch_submit;Stretch]" end, }) worldedit.register_gui_handler("worldedit_gui_stretch", function(name, fields) + local cg = { + worldedit_gui_stretch_x = gui_count1, + worldedit_gui_stretch_y = gui_count2, + worldedit_gui_stretch_z = gui_count3, + } + local ret = handle_changes(name, "worldedit_gui_stretch", fields, cg) if fields.worldedit_gui_stretch_submit then - gui_count1[name] = tostring(fields.worldedit_gui_stretch_x) - gui_count2[name] = tostring(fields.worldedit_gui_stretch_y) - gui_count3[name] = tostring(fields.worldedit_gui_stretch_z) + copy_changes(name, fields, cg) worldedit.show_page(name, "worldedit_gui_stretch") + minetest.chatcommands["/stretch"].func(name, string.format("%s %s %s", gui_count1[name], gui_count2[name], gui_count3[name])) return true end - return false + return ret end) worldedit.register_gui_function("worldedit_gui_transpose", { @@ -530,23 +608,18 @@ worldedit.register_gui_function("worldedit_gui_transpose", { }) worldedit.register_gui_handler("worldedit_gui_transpose", function(name, fields) + local cg = { + worldedit_gui_transpose_axis1 = gui_axis1, + worldedit_gui_transpose_axis2 = gui_axis2, + } + local ret = handle_changes(name, "worldedit_gui_transpose", fields, cg) if fields.worldedit_gui_transpose_submit then - gui_axis1[name] = axis_indices[fields.worldedit_gui_transpose_axis1] - worldedit.show_page(name, "worldedit_gui_transpose") + copy_changes(name, fields, cg) + minetest.chatcommands["/transpose"].func(name, string.format("%s %s", axis_values[gui_axis1[name]], axis_values[gui_axis2[name]])) return true end - if fields.worldedit_gui_transpose_axis1 then - gui_axis1[name] = axis_indices[fields.worldedit_gui_transpose_axis1] - worldedit.show_page(name, "worldedit_gui_transpose") - return true - end - if fields.worldedit_gui_transpose_axis2 then - gui_axis2[name] = axis_indices[fields.worldedit_gui_transpose_axis2] - worldedit.show_page(name, "worldedit_gui_transpose") - return true - end - return false + return ret end) worldedit.register_gui_function("worldedit_gui_flip", { @@ -561,18 +634,18 @@ worldedit.register_gui_function("worldedit_gui_flip", { }) worldedit.register_gui_handler("worldedit_gui_flip", function(name, fields) + local cg = { + worldedit_gui_flip_axis = gui_axis1 + } + local ret = handle_changes(name, "worldedit_gui_flip", fields, cg) if fields.worldedit_gui_flip_submit then - gui_axis1[name] = axis_indices[fields.worldedit_gui_flip_axis] + copy_changes(name, fields, cg) worldedit.show_page(name, "worldedit_gui_flip") + minetest.chatcommands["/flip"].func(name, axis_values[gui_axis1[name]]) return true end - if fields.worldedit_gui_flip_axis then - gui_axis1[name] = axis_indices[fields.worldedit_gui_flip_axis] - worldedit.show_page(name, "worldedit_gui_flip") - return true - end - return false + return ret end) worldedit.register_gui_function("worldedit_gui_rotate", { @@ -588,24 +661,19 @@ worldedit.register_gui_function("worldedit_gui_rotate", { }) worldedit.register_gui_handler("worldedit_gui_rotate", function(name, fields) + local cg = { + worldedit_gui_rotate_axis = gui_axis1, + worldedit_gui_rotate_angle = gui_angle, + } + local ret = handle_changes(name, "worldedit_gui_rotate", fields, cg) if fields.worldedit_gui_rotate_submit then - gui_axis1[name] = axis_indices[fields.worldedit_gui_rotate_axis] - gui_angle[name] = angle_indices[fields.worldedit_gui_rotate_angle] + copy_changes(name, fields, cg) worldedit.show_page(name, "worldedit_gui_rotate") + minetest.chatcommands["/rotate"].func(name, string.format("%s %s", axis_values[gui_axis1[name]], angle_values[gui_angle[name]])) return true end - if fields.worldedit_gui_rotate_axis then - gui_axis1[name] = axis_indices[fields.worldedit_gui_rotate_axis] - worldedit.show_page(name, "worldedit_gui_rotate") - return true - end - if fields.worldedit_gui_rotate_angle then - gui_angle[name] = angle_indices[fields.worldedit_gui_rotate_angle] - worldedit.show_page(name, "worldedit_gui_rotate") - return true - end - return false + return ret end) worldedit.register_gui_function("worldedit_gui_orient", { @@ -620,18 +688,18 @@ worldedit.register_gui_function("worldedit_gui_orient", { }) worldedit.register_gui_handler("worldedit_gui_orient", function(name, fields) + local cg = { + worldedit_gui_orient_angle = gui_angle, + } + local ret = handle_changes(name, "worldedit_gui_orient", fields, cg) if fields.worldedit_gui_orient_submit then - gui_angle[name] = angle_indices[fields.worldedit_gui_orient_angle] + copy_changes(name, fields, cg) worldedit.show_page(name, "worldedit_gui_orient") + minetest.chatcommands["/orient"].func(name, tostring(angle_values[gui_angle[name]])) return true end - if fields.worldedit_gui_orient_angle then - gui_angle[name] = angle_indices[fields.worldedit_gui_orient_angle] - worldedit.show_page(name, "worldedit_gui_orient") - return true - end - return false + return ret end) worldedit.register_gui_function("worldedit_gui_fixlight", { @@ -658,6 +726,7 @@ worldedit.register_gui_function("worldedit_gui_suppress", { local nodename = worldedit.normalize_nodename(node) return "size[6.5,3]" .. worldedit.get_formspec_header("worldedit_gui_suppress") .. string.format("field[0.5,1.5;4,0.8;worldedit_gui_suppress_node;Name;%s]", minetest.formspec_escape(node)) .. + "field_close_on_enter[worldedit_gui_suppress_node;false]" .. "button[4,1.18;1.5,0.8;worldedit_gui_suppress_search;Search]" .. formspec_node("5.5,1.1", nodename) .. "button_exit[0,2.5;3,0.8;worldedit_gui_suppress_submit;Suppress Nodes]" @@ -665,18 +734,22 @@ worldedit.register_gui_function("worldedit_gui_suppress", { }) worldedit.register_gui_handler("worldedit_gui_suppress", function(name, fields) - if fields.worldedit_gui_suppress_search or fields.worldedit_gui_suppress_submit then - gui_nodename1[name] = tostring(fields.worldedit_gui_suppress_node) + local cg = { + worldedit_gui_suppress_search = true, + worldedit_gui_suppress_node = gui_nodename1, + } + local ret = handle_changes(name, "worldedit_gui_suppress", fields, cg) + if fields.worldedit_gui_suppress_submit then + copy_changes(name, fields, cg) worldedit.show_page(name, "worldedit_gui_suppress") - if fields.worldedit_gui_suppress_submit then - local n = worldedit.normalize_nodename(gui_nodename1[name]) - if n then - minetest.chatcommands["/suppress"].func(name, n) - end + + local n = worldedit.normalize_nodename(gui_nodename1[name]) + if n then + minetest.chatcommands["/suppress"].func(name, n) end return true end - return false + return ret end) worldedit.register_gui_function("worldedit_gui_highlight", { @@ -687,6 +760,7 @@ worldedit.register_gui_function("worldedit_gui_highlight", { local nodename = worldedit.normalize_nodename(node) return "size[6.5,3]" .. worldedit.get_formspec_header("worldedit_gui_highlight") .. string.format("field[0.5,1.5;4,0.8;worldedit_gui_highlight_node;Name;%s]", minetest.formspec_escape(node)) .. + "field_close_on_enter[worldedit_gui_highlight_node;false]" .. "button[4,1.18;1.5,0.8;worldedit_gui_highlight_search;Search]" .. formspec_node("5.5,1.1", nodename) .. "button_exit[0,2.5;3,0.8;worldedit_gui_highlight_submit;Highlight Nodes]" @@ -694,18 +768,22 @@ worldedit.register_gui_function("worldedit_gui_highlight", { }) worldedit.register_gui_handler("worldedit_gui_highlight", function(name, fields) - if fields.worldedit_gui_highlight_search or fields.worldedit_gui_highlight_submit then - gui_nodename1[name] = tostring(fields.worldedit_gui_highlight_node) + local cg = { + worldedit_gui_highlight_search = true, + worldedit_gui_highlight_node = gui_nodename1, + } + local ret = handle_changes(name, "worldedit_gui_highlight", fields, cg) + if fields.worldedit_gui_highlight_submit then + copy_changes(name, fields, cg) worldedit.show_page(name, "worldedit_gui_highlight") - if fields.worldedit_gui_highlight_submit then - local n = worldedit.normalize_nodename(gui_nodename1[name]) - if n then - minetest.chatcommands["/highlight"].func(name, n) - end + + local n = worldedit.normalize_nodename(gui_nodename1[name]) + if n then + minetest.chatcommands["/highlight"].func(name, n) end return true end - return false + return ret end) worldedit.register_gui_function("worldedit_gui_restore", { @@ -723,6 +801,7 @@ worldedit.register_gui_function("worldedit_gui_save_load", { local filename = gui_filename[name] return "size[6,4]" .. worldedit.get_formspec_header("worldedit_gui_save_load") .. string.format("field[0.5,1.5;4,0.8;worldedit_gui_save_filename;Filename;%s]", minetest.formspec_escape(filename)) .. + "field_close_on_enter[worldedit_gui_save_filename;false]" .. "button_exit[0,2.5;3,0.8;worldedit_gui_save_load_submit_save;Save]" .. "button_exit[3,2.5;3,0.8;worldedit_gui_save_load_submit_allocate;Allocate]" .. "button_exit[0,3.5;3,0.8;worldedit_gui_save_load_submit_load;Load]" @@ -733,6 +812,7 @@ worldedit.register_gui_handler("worldedit_gui_save_load", function(name, fields) if fields.worldedit_gui_save_load_submit_save or fields.worldedit_gui_save_load_submit_allocate or fields.worldedit_gui_save_load_submit_load then gui_filename[name] = tostring(fields.worldedit_gui_save_filename) worldedit.show_page(name, "worldedit_gui_save_load") + if fields.worldedit_gui_save_load_submit_save then minetest.chatcommands["/save"].func(name, gui_filename[name]) elseif fields.worldedit_gui_save_load_submit_allocate then @@ -746,7 +826,7 @@ worldedit.register_gui_handler("worldedit_gui_save_load", function(name, fields) end) worldedit.register_gui_function("worldedit_gui_cube", { - name = "Cuboid", -- technically the command is misnamed, I know... + name = "Cube", privs = combine_we_privs({"hollowcube", "cube"}), get_formspec = function(name) local width, height, length = gui_distance1[name], gui_distance2[name], gui_distance3[name] @@ -754,41 +834,45 @@ worldedit.register_gui_function("worldedit_gui_cube", { local nodename = worldedit.normalize_nodename(node) return "size[6.5,4]" .. worldedit.get_formspec_header("worldedit_gui_cube") .. string.format("field[0.5,1.5;4,0.8;worldedit_gui_cube_node;Name;%s]", minetest.formspec_escape(node)) .. + "field_close_on_enter[worldedit_gui_cube_node;false]" .. "button[4,1.18;1.5,0.8;worldedit_gui_cube_search;Search]" .. formspec_node("5.5,1.1", nodename) .. string.format("field[0.5,2.5;1,0.8;worldedit_gui_cube_width;Width;%s]", minetest.formspec_escape(width)) .. string.format("field[1.5,2.5;1,0.8;worldedit_gui_cube_height;Height;%s]", minetest.formspec_escape(height)) .. string.format("field[2.5,2.5;1,0.8;worldedit_gui_cube_length;Length;%s]", minetest.formspec_escape(length)) .. + "field_close_on_enter[worldedit_gui_cube_width;false]" .. + "field_close_on_enter[worldedit_gui_cube_height;false]" .. + "field_close_on_enter[worldedit_gui_cube_length;false]" .. "button_exit[0,3.5;3,0.8;worldedit_gui_cube_submit_hollow;Hollow Cuboid]" .. "button_exit[3.5,3.5;3,0.8;worldedit_gui_cube_submit_solid;Solid Cuboid]" end, }) worldedit.register_gui_handler("worldedit_gui_cube", function(name, fields) - if fields.worldedit_gui_cube_search - or fields.worldedit_gui_cube_submit_hollow or fields.worldedit_gui_cube_submit_solid then - gui_nodename1[name] = tostring(fields.worldedit_gui_cube_node) - gui_distance1[name] = tostring(fields.worldedit_gui_cube_width) - gui_distance2[name] = tostring(fields.worldedit_gui_cube_height) - gui_distance3[name] = tostring(fields.worldedit_gui_cube_length) + local cg = { + worldedit_gui_cube_search = true, + worldedit_gui_cube_node = gui_nodename1, + worldedit_gui_cube_width = gui_distance1, + worldedit_gui_cube_height = gui_distance2, + worldedit_gui_cube_length = gui_distance3, + } + local ret = handle_changes(name, "worldedit_gui_cube", fields, cg) + if fields.worldedit_gui_cube_submit_hollow or fields.worldedit_gui_cube_submit_solid then + copy_changes(name, fields, cg) worldedit.show_page(name, "worldedit_gui_cube") - local submit = nil - if fields.worldedit_gui_cube_submit_hollow then - submit = "hollowcube" - elseif fields.worldedit_gui_cube_submit_solid then + local submit = "hollowcube" + if fields.worldedit_gui_cube_submit_solid then submit = "cube" end - if submit then - local n = worldedit.normalize_nodename(gui_nodename1[name]) - if n then - local args = string.format("%s %s %s %s", gui_distance1[name], gui_distance2[name], gui_distance3[name], n) - minetest.chatcommands["/"..submit].func(name, args) - end + local n = worldedit.normalize_nodename(gui_nodename1[name]) + if n then + local args = string.format("%s %s %s %s", gui_distance1[name], gui_distance2[name], gui_distance3[name], n) + minetest.chatcommands["/"..submit].func(name, args) end return true end - return false + return ret end) worldedit.register_gui_function("worldedit_gui_clearobjects", { diff --git a/worldedit_shortcommands/init.lua b/worldedit_shortcommands/init.lua index da02b752..5f755cc0 100644 --- a/worldedit_shortcommands/init.lua +++ b/worldedit_shortcommands/init.lua @@ -1,52 +1,52 @@ --provides shorter names for the commands in `worldedit_commands` ---returns true if command could not be aliased, false otherwise -worldedit.alias_chatcommand = function(alias, original_command) - if not minetest.chatcommands[original_command] then - minetest.log("error", "worldedit_shortcommands: original command " .. original_command .. " does not exist") - return true +worldedit.alias_command = function(alias, original) + if not worldedit.registered_commands[original] then + minetest.log("error", "worldedit_shortcommands: original " .. original .. " does not exist") + return end - if minetest.chatcommands[alias] then + if minetest.chatcommands["/" .. alias] then minetest.log("error", "worldedit_shortcommands: alias " .. alias .. " already exists") - return true + return end - minetest.register_chatcommand(alias, minetest.chatcommands[original_command]) - return false + + minetest.register_chatcommand("/" .. alias, minetest.chatcommands["/" .. original]) + worldedit.registered_commands[alias] = worldedit.registered_commands[original] end -worldedit.alias_chatcommand("/i", "/inspect") -worldedit.alias_chatcommand("/rst", "/reset") -worldedit.alias_chatcommand("/mk", "/mark") -worldedit.alias_chatcommand("/umk", "/unmark") -worldedit.alias_chatcommand("/1", "/pos1") -worldedit.alias_chatcommand("/2", "/pos2") -worldedit.alias_chatcommand("/fp", "/fixedpos") -worldedit.alias_chatcommand("/v", "/volume") -worldedit.alias_chatcommand("/s", "/set") -worldedit.alias_chatcommand("/r", "/replace") -worldedit.alias_chatcommand("/ri", "/replaceinverse") -worldedit.alias_chatcommand("/hcube", "/hollowcube") -worldedit.alias_chatcommand("/hspr", "/hollowsphere") -worldedit.alias_chatcommand("/spr", "/sphere") -worldedit.alias_chatcommand("/hdo", "/hollowdome") -worldedit.alias_chatcommand("/do", "/dome") -worldedit.alias_chatcommand("/hcyl", "/hollowcylinder") -worldedit.alias_chatcommand("/cyl", "/cylinder") -worldedit.alias_chatcommand("/hpyr", "/hollowpyramid") -worldedit.alias_chatcommand("/pyr", "/pyramid") -worldedit.alias_chatcommand("/spl", "/spiral") -worldedit.alias_chatcommand("/m", "/move") -worldedit.alias_chatcommand("/c", "/copy") -worldedit.alias_chatcommand("/stk", "/stack") -worldedit.alias_chatcommand("/sch", "/stretch") -worldedit.alias_chatcommand("/tps", "/transpose") -worldedit.alias_chatcommand("/fl", "/flip") -worldedit.alias_chatcommand("/rot", "/rotate") -worldedit.alias_chatcommand("/ort", "/orient") -worldedit.alias_chatcommand("/hi", "/hide") -worldedit.alias_chatcommand("/sup", "/suppress") -worldedit.alias_chatcommand("/hlt", "/highlight") -worldedit.alias_chatcommand("/rsr", "/restore") -worldedit.alias_chatcommand("/l", "/lua") -worldedit.alias_chatcommand("/lt", "/luatransform") -worldedit.alias_chatcommand("/clro", "/clearobjects") +worldedit.alias_command("i", "inspect") +worldedit.alias_command("rst", "reset") +worldedit.alias_command("mk", "mark") +worldedit.alias_command("umk", "unmark") +worldedit.alias_command("1", "pos1") +worldedit.alias_command("2", "pos2") +worldedit.alias_command("fp", "fixedpos") +worldedit.alias_command("v", "volume") +worldedit.alias_command("s", "set") +worldedit.alias_command("r", "replace") +worldedit.alias_command("ri", "replaceinverse") +worldedit.alias_command("hcube", "hollowcube") +worldedit.alias_command("hspr", "hollowsphere") +worldedit.alias_command("spr", "sphere") +worldedit.alias_command("hdo", "hollowdome") +worldedit.alias_command("do", "dome") +worldedit.alias_command("hcyl", "hollowcylinder") +worldedit.alias_command("cyl", "cylinder") +worldedit.alias_command("hpyr", "hollowpyramid") +worldedit.alias_command("pyr", "pyramid") +worldedit.alias_command("spl", "spiral") +worldedit.alias_command("m", "move") +worldedit.alias_command("c", "copy") +worldedit.alias_command("stk", "stack") +worldedit.alias_command("sch", "stretch") +worldedit.alias_command("tps", "transpose") +worldedit.alias_command("fl", "flip") +worldedit.alias_command("rot", "rotate") +worldedit.alias_command("ort", "orient") +worldedit.alias_command("hi", "hide") +worldedit.alias_command("sup", "suppress") +worldedit.alias_command("hlt", "highlight") +worldedit.alias_command("rsr", "restore") +worldedit.alias_command("l", "lua") +worldedit.alias_command("lt", "luatransform") +worldedit.alias_command("clro", "clearobjects") diff --git a/xban2/init.lua b/xban2/init.lua index 68a35085..09385bd5 100644 --- a/xban2/init.lua +++ b/xban2/init.lua @@ -40,6 +40,14 @@ local function parse_time(t) --> secs return secs end +local function concat_keys(t, sep) + local keys = {} + for k, _ in pairs(t) do + keys[#keys + 1] = k + end + return table.concat(keys, sep) +end + function xban.find_entry(player, create) --> entry, index for index, e in ipairs(db) do for name in pairs(e.names) do @@ -111,7 +119,7 @@ function xban.ban_player(player, source, expires, reason) --> bool, err end ACTION("%s bans %s until %s for reason: %s", source, player, date, reason) - ACTION("Banned Names/IPs: %s", table.concat(e.names, ", ")) + ACTION("Banned Names/IPs: %s", concat_keys(e.names, ", ")) return true end @@ -131,7 +139,7 @@ function xban.unban_player(player, source) --> bool, err e.expires = nil e.time = nil ACTION("%s unbans %s", source, player) - ACTION("Unbanned Names/IPs: %s", table.concat(e.names, ", ")) + ACTION("Unbanned Names/IPs: %s", concat_keys(e.names, ", ")) return true end diff --git a/youngtrees/depends.txt b/youngtrees/depends.txt deleted file mode 100644 index d48236a4..00000000 --- a/youngtrees/depends.txt +++ /dev/null @@ -1,3 +0,0 @@ -default -biome_lib -plantlife_i18n diff --git a/youngtrees/init.lua b/youngtrees/init.lua index ae4f9e61..50d11ff1 100644 --- a/youngtrees/init.lua +++ b/youngtrees/init.lua @@ -1,5 +1,5 @@ -- support for i18n -local S = plantlife_i18n.gettext +local S = minetest.get_translator("youngtrees") abstract_youngtrees = {} diff --git a/youngtrees/locale/template.txt b/youngtrees/locale/template.txt new file mode 100644 index 00000000..745f6b8f --- /dev/null +++ b/youngtrees/locale/template.txt @@ -0,0 +1,13 @@ +# textdomain: youngtrees + +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# FIRST AUTHOR , YEAR. +# + +Young Bamboo Tree= +Young Tree 2 (middle)= +Young Tree (top)= +Young Tree (middle)= +Young Tree (bottom)= diff --git a/youngtrees/locale/youngtrees.fr.tr b/youngtrees/locale/youngtrees.fr.tr new file mode 100644 index 00000000..42de95be --- /dev/null +++ b/youngtrees/locale/youngtrees.fr.tr @@ -0,0 +1,13 @@ +# textdomain: youngtrees + +# SOME DESCRIPTIVE TITLE. +# Copyright (C) YEAR THE PACKAGE'S COPYRIGHT HOLDER +# This file is distributed under the same license as the PACKAGE package. +# fat115 , 2017. +# + +Young Bamboo Tree=Bambou jeune +Young Tree 2 (middle)=Arbuste 2 (milieu) +Young Tree (top)=Arbuste (haut) +Young Tree (middle)=Arbuste (milieu) +Young Tree (bottom)=Arbuste (bas) diff --git a/youngtrees/mod.conf b/youngtrees/mod.conf new file mode 100644 index 00000000..7de39280 --- /dev/null +++ b/youngtrees/mod.conf @@ -0,0 +1,2 @@ +name = youngtrees +depends = default, biome_lib