From 2259be43a25957fdfe47fefebd0b0f26fd879ae7 Mon Sep 17 00:00:00 2001 From: a-bad-dev <244852891+a-bad-dev@users.noreply.github.com> Date: Tue, 9 Dec 2025 03:17:00 -0400 Subject: [PATCH] Dehardcode map * Dehardcode maps (currently not working) maps need work and proper configs * Fix bugs i'm terrible at lua * Add proper maps and configs * Fix some bugs the game at least loads now, though it crashes when you run /start * Fix more bugs The map starts now though you don't get teleported to it. * Teleport the player to the map spawn on start * Fix lots of bugs It mostly works now * Add butterflies mod * Another bugfix * Add fireflies mod * Add vessels mod (dependency for fireflies) * Add a sprint mod * Add a spawnpoint no more falling into the void * Update TODO.txt * Fix the barriers being offset by 2 Also add more dependency mods --- TODO.txt | 13 +- mods/butterflies/README.txt | 14 + mods/butterflies/init.lua | 121 ++ mods/butterflies/license.txt | 58 + mods/butterflies/locale/butterflies.bg.tr | 4 + mods/butterflies/locale/butterflies.da.tr | 4 + mods/butterflies/locale/butterflies.de.tr | 4 + mods/butterflies/locale/butterflies.eo.tr | 4 + mods/butterflies/locale/butterflies.es.tr | 4 + mods/butterflies/locale/butterflies.eu.tr | 4 + mods/butterflies/locale/butterflies.fr.tr | 4 + mods/butterflies/locale/butterflies.hu.tr | 4 + mods/butterflies/locale/butterflies.id.tr | 4 + mods/butterflies/locale/butterflies.it.tr | 4 + mods/butterflies/locale/butterflies.ja.tr | 4 + mods/butterflies/locale/butterflies.jbo.tr | 4 + mods/butterflies/locale/butterflies.lv.tr | 4 + mods/butterflies/locale/butterflies.ms.tr | 4 + mods/butterflies/locale/butterflies.pl.tr | 4 + mods/butterflies/locale/butterflies.pt_BR.tr | 4 + mods/butterflies/locale/butterflies.ru.tr | 4 + mods/butterflies/locale/butterflies.sk.tr | 4 + mods/butterflies/locale/butterflies.sv.tr | 4 + mods/butterflies/locale/butterflies.uk.tr | 4 + mods/butterflies/locale/butterflies.zh_CN.tr | 4 + mods/butterflies/locale/butterflies.zh_TW.tr | 4 + mods/butterflies/locale/template.txt | 4 + mods/butterflies/mod.conf | 3 + .../textures/butterflies_butterfly_red.png | Bin 0 -> 110 bytes .../butterflies_butterfly_red_animated.png | Bin 0 -> 125 bytes .../textures/butterflies_butterfly_violet.png | Bin 0 -> 110 bytes .../butterflies_butterfly_violet_animated.png | Bin 0 -> 125 bytes .../textures/butterflies_butterfly_white.png | Bin 0 -> 110 bytes .../butterflies_butterfly_white_animated.png | Bin 0 -> 125 bytes mods/dye/README.txt | 13 + mods/dye/init.lua | 127 ++ mods/dye/license.txt | 60 + mods/dye/locale/dye.bg.tr | 16 + mods/dye/locale/dye.da.tr | 16 + mods/dye/locale/dye.de.tr | 16 + mods/dye/locale/dye.eo.tr | 16 + mods/dye/locale/dye.es.tr | 16 + mods/dye/locale/dye.eu.tr | 16 + mods/dye/locale/dye.fr.tr | 16 + mods/dye/locale/dye.hu.tr | 16 + mods/dye/locale/dye.id.tr | 16 + mods/dye/locale/dye.it.tr | 16 + mods/dye/locale/dye.ja.tr | 16 + mods/dye/locale/dye.jbo.tr | 16 + mods/dye/locale/dye.lv.tr | 16 + mods/dye/locale/dye.ms.tr | 16 + mods/dye/locale/dye.pl.tr | 16 + mods/dye/locale/dye.pt_BR.tr | 16 + mods/dye/locale/dye.ru.tr | 16 + mods/dye/locale/dye.sk.tr | 16 + mods/dye/locale/dye.sv.tr | 16 + mods/dye/locale/dye.uk.tr | 16 + mods/dye/locale/dye.zh_CN.tr | 16 + mods/dye/locale/dye.zh_TW.tr | 16 + mods/dye/locale/template.txt | 16 + mods/dye/mod.conf | 2 + mods/dye/textures/dye_black.png | Bin 0 -> 169 bytes mods/dye/textures/dye_blue.png | Bin 0 -> 161 bytes mods/dye/textures/dye_brown.png | Bin 0 -> 164 bytes mods/dye/textures/dye_cyan.png | Bin 0 -> 166 bytes mods/dye/textures/dye_dark_green.png | Bin 0 -> 168 bytes mods/dye/textures/dye_dark_grey.png | Bin 0 -> 169 bytes mods/dye/textures/dye_green.png | Bin 0 -> 168 bytes mods/dye/textures/dye_grey.png | Bin 0 -> 169 bytes mods/dye/textures/dye_magenta.png | Bin 0 -> 169 bytes mods/dye/textures/dye_orange.png | Bin 0 -> 169 bytes mods/dye/textures/dye_pink.png | Bin 0 -> 169 bytes mods/dye/textures/dye_red.png | Bin 0 -> 169 bytes mods/dye/textures/dye_violet.png | Bin 0 -> 169 bytes mods/dye/textures/dye_white.png | Bin 0 -> 170 bytes mods/dye/textures/dye_yellow.png | Bin 0 -> 169 bytes mods/farming/README.txt | 43 + mods/farming/api.lua | 406 +++++++ mods/farming/hoes.lua | 54 + mods/farming/init.lua | 171 +++ mods/farming/license.txt | 95 ++ mods/farming/locale/farming.bg.tr | 28 + mods/farming/locale/farming.da.tr | 28 + mods/farming/locale/farming.de.tr | 28 + mods/farming/locale/farming.eo.tr | 28 + mods/farming/locale/farming.es.tr | 34 + mods/farming/locale/farming.eu.tr | 34 + mods/farming/locale/farming.fr.tr | 34 + mods/farming/locale/farming.hu.tr | 28 + mods/farming/locale/farming.id.tr | 28 + mods/farming/locale/farming.it.tr | 34 + mods/farming/locale/farming.ja.tr | 28 + mods/farming/locale/farming.jbo.tr | 28 + mods/farming/locale/farming.lv.tr | 28 + mods/farming/locale/farming.ms.tr | 34 + mods/farming/locale/farming.pl.tr | 28 + mods/farming/locale/farming.pt.tr | 28 + mods/farming/locale/farming.pt_BR.tr | 28 + mods/farming/locale/farming.ru.tr | 28 + mods/farming/locale/farming.sk.tr | 28 + mods/farming/locale/farming.sv.tr | 28 + mods/farming/locale/farming.uk.tr | 28 + mods/farming/locale/farming.zh_CN.tr | 34 + mods/farming/locale/farming.zh_TW.tr | 34 + mods/farming/locale/template.txt | 28 + mods/farming/mod.conf | 4 + mods/farming/nodes.lua | 282 +++++ mods/farming/textures/farming_bread.png | Bin 0 -> 388 bytes mods/farming/textures/farming_cotton.png | Bin 0 -> 316 bytes mods/farming/textures/farming_cotton_1.png | Bin 0 -> 110 bytes mods/farming/textures/farming_cotton_2.png | Bin 0 -> 120 bytes mods/farming/textures/farming_cotton_3.png | Bin 0 -> 144 bytes mods/farming/textures/farming_cotton_4.png | Bin 0 -> 150 bytes mods/farming/textures/farming_cotton_5.png | Bin 0 -> 158 bytes mods/farming/textures/farming_cotton_6.png | Bin 0 -> 164 bytes mods/farming/textures/farming_cotton_7.png | Bin 0 -> 163 bytes mods/farming/textures/farming_cotton_8.png | Bin 0 -> 192 bytes mods/farming/textures/farming_cotton_seed.png | Bin 0 -> 150 bytes mods/farming/textures/farming_cotton_wild.png | Bin 0 -> 223 bytes .../textures/farming_desert_sand_soil.png | Bin 0 -> 467 bytes .../textures/farming_desert_sand_soil_wet.png | Bin 0 -> 351 bytes .../farming_desert_sand_soil_wet_side.png | Bin 0 -> 272 bytes mods/farming/textures/farming_flour.png | Bin 0 -> 159 bytes mods/farming/textures/farming_soil.png | Bin 0 -> 703 bytes mods/farming/textures/farming_soil_wet.png | Bin 0 -> 676 bytes .../textures/farming_soil_wet_side.png | Bin 0 -> 96 bytes mods/farming/textures/farming_straw.png | Bin 0 -> 887 bytes mods/farming/textures/farming_string.png | Bin 0 -> 166 bytes .../textures/farming_tool_bronzehoe.png | Bin 0 -> 212 bytes .../textures/farming_tool_diamondhoe.png | Bin 0 -> 183 bytes .../farming/textures/farming_tool_mesehoe.png | Bin 0 -> 181 bytes .../textures/farming_tool_steelhoe.png | Bin 0 -> 181 bytes .../textures/farming_tool_stonehoe.png | Bin 0 -> 185 bytes .../farming/textures/farming_tool_woodhoe.png | Bin 0 -> 171 bytes mods/farming/textures/farming_wheat.png | Bin 0 -> 240 bytes mods/farming/textures/farming_wheat_1.png | Bin 0 -> 120 bytes mods/farming/textures/farming_wheat_2.png | Bin 0 -> 142 bytes mods/farming/textures/farming_wheat_3.png | Bin 0 -> 171 bytes mods/farming/textures/farming_wheat_4.png | Bin 0 -> 188 bytes mods/farming/textures/farming_wheat_5.png | Bin 0 -> 217 bytes mods/farming/textures/farming_wheat_6.png | Bin 0 -> 234 bytes mods/farming/textures/farming_wheat_7.png | Bin 0 -> 252 bytes mods/farming/textures/farming_wheat_8.png | Bin 0 -> 310 bytes mods/farming/textures/farming_wheat_seed.png | Bin 0 -> 141 bytes mods/fireflies/README.txt | 22 + mods/fireflies/init.lua | 259 ++++ mods/fireflies/license.txt | 58 + mods/fireflies/locale/fireflies.bg.tr | 5 + mods/fireflies/locale/fireflies.da.tr | 5 + mods/fireflies/locale/fireflies.de.tr | 5 + mods/fireflies/locale/fireflies.eo.tr | 5 + mods/fireflies/locale/fireflies.es.tr | 5 + mods/fireflies/locale/fireflies.eu.tr | 5 + mods/fireflies/locale/fireflies.fr.tr | 5 + mods/fireflies/locale/fireflies.hu.tr | 5 + mods/fireflies/locale/fireflies.id.tr | 5 + mods/fireflies/locale/fireflies.it.tr | 5 + mods/fireflies/locale/fireflies.ja.tr | 5 + mods/fireflies/locale/fireflies.jbo.tr | 5 + mods/fireflies/locale/fireflies.lv.tr | 5 + mods/fireflies/locale/fireflies.ms.tr | 5 + mods/fireflies/locale/fireflies.pl.tr | 5 + mods/fireflies/locale/fireflies.pt_BR.tr | 5 + mods/fireflies/locale/fireflies.ru.tr | 5 + mods/fireflies/locale/fireflies.sk.tr | 5 + mods/fireflies/locale/fireflies.sv.tr | 5 + mods/fireflies/locale/fireflies.uk.tr | 5 + mods/fireflies/locale/fireflies.zh_CN.tr | 5 + mods/fireflies/locale/fireflies.zh_TW.tr | 5 + mods/fireflies/locale/template.txt | 5 + mods/fireflies/mod.conf | 3 + mods/fireflies/textures/fireflies_bottle.png | Bin 0 -> 172 bytes .../textures/fireflies_bottle_animated.png | Bin 0 -> 203 bytes mods/fireflies/textures/fireflies_bugnet.png | Bin 0 -> 192 bytes mods/fireflies/textures/fireflies_firefly.png | Bin 0 -> 113 bytes .../textures/fireflies_firefly_animated.png | Bin 0 -> 121 bytes mods/main/init.lua | 49 +- mods/main/schematics/map1.mts | Bin 3999 -> 0 bytes mods/main/schems/spawn.mts | Bin 0 -> 424 bytes mods/maps/init.lua | 25 + mods/maps/maps/forest/map.lua | 13 + mods/maps/maps/forest/map.mts | Bin 0 -> 85000 bytes mods/maps/maps/pine/map.lua | 13 + mods/maps/maps/pine/map.mts | Bin 0 -> 40789 bytes mods/maps/maps/savanna/map.lua | 13 + mods/maps/maps/savanna/map.mts | Bin 0 -> 201258 bytes mods/maps/mod.conf | 3 + mods/sprint/COPYING | 121 ++ mods/sprint/README.md | 62 + mods/sprint/depends.txt | 1 + mods/sprint/esprint.lua | 125 ++ mods/sprint/init.lua | 34 + mods/sprint/textures/sprint_particle.png | Bin 0 -> 791 bytes mods/sprint/textures/sprint_stamina_bar.png | Bin 0 -> 80 bytes mods/sprint/textures/sprint_stamina_icon.png | Bin 0 -> 148 bytes mods/sprint/wsprint.lua | 135 +++ mods/stairs/README.txt | 27 + mods/stairs/init.lua | 1073 +++++++++++++++++ mods/stairs/license.txt | 16 + mods/stairs/locale/stairs.bg.tr | 145 +++ mods/stairs/locale/stairs.da.tr | 145 +++ mods/stairs/locale/stairs.de.tr | 145 +++ mods/stairs/locale/stairs.eo.tr | 145 +++ mods/stairs/locale/stairs.es.tr | 145 +++ mods/stairs/locale/stairs.eu.tr | 145 +++ mods/stairs/locale/stairs.fr.tr | 145 +++ mods/stairs/locale/stairs.hu.tr | 145 +++ mods/stairs/locale/stairs.id.tr | 145 +++ mods/stairs/locale/stairs.it.tr | 145 +++ mods/stairs/locale/stairs.ja.tr | 145 +++ mods/stairs/locale/stairs.jbo.tr | 145 +++ mods/stairs/locale/stairs.lv.tr | 145 +++ mods/stairs/locale/stairs.ms.tr | 145 +++ mods/stairs/locale/stairs.pl.tr | 145 +++ mods/stairs/locale/stairs.pt_BR.tr | 145 +++ mods/stairs/locale/stairs.ru.tr | 145 +++ mods/stairs/locale/stairs.sk.tr | 145 +++ mods/stairs/locale/stairs.sv.tr | 145 +++ mods/stairs/locale/stairs.uk.tr | 145 +++ mods/stairs/locale/stairs.zh_CN.tr | 153 +++ mods/stairs/locale/stairs.zh_TW.tr | 153 +++ mods/stairs/locale/template.txt | 145 +++ mods/stairs/mod.conf | 3 + .../textures/stairs_glass_outer_stairside.png | Bin 0 -> 255 bytes mods/stairs/textures/stairs_glass_split.png | Bin 0 -> 249 bytes .../textures/stairs_glass_stairside.png | Bin 0 -> 249 bytes .../stairs_obsidian_glass_outer_stairside.png | Bin 0 -> 141 bytes .../textures/stairs_obsidian_glass_split.png | Bin 0 -> 129 bytes .../stairs_obsidian_glass_stairside.png | Bin 0 -> 142 bytes mods/vessels/README.txt | 22 + mods/vessels/init.lua | 233 ++++ mods/vessels/license.txt | 52 + mods/vessels/locale/template.txt | 8 + mods/vessels/locale/vessels.bg.tr | 8 + mods/vessels/locale/vessels.da.tr | 8 + mods/vessels/locale/vessels.de.tr | 8 + mods/vessels/locale/vessels.eo.tr | 8 + mods/vessels/locale/vessels.es.tr | 8 + mods/vessels/locale/vessels.eu.tr | 8 + mods/vessels/locale/vessels.fr.tr | 8 + mods/vessels/locale/vessels.hu.tr | 8 + mods/vessels/locale/vessels.id.tr | 8 + mods/vessels/locale/vessels.it.tr | 8 + mods/vessels/locale/vessels.ja.tr | 8 + mods/vessels/locale/vessels.jbo.tr | 8 + mods/vessels/locale/vessels.lv.tr | 8 + mods/vessels/locale/vessels.ms.tr | 8 + mods/vessels/locale/vessels.pl.tr | 8 + mods/vessels/locale/vessels.pt_BR.tr | 8 + mods/vessels/locale/vessels.ru.tr | 8 + mods/vessels/locale/vessels.sk.tr | 8 + mods/vessels/locale/vessels.sv.tr | 8 + mods/vessels/locale/vessels.uk.tr | 8 + mods/vessels/locale/vessels.zh_CN.tr | 8 + mods/vessels/locale/vessels.zh_TW.tr | 8 + mods/vessels/mod.conf | 4 + .../textures/vessels_drinking_glass.png | Bin 0 -> 194 bytes .../textures/vessels_drinking_glass_inv.png | Bin 0 -> 156 bytes .../vessels/textures/vessels_glass_bottle.png | Bin 0 -> 176 bytes .../textures/vessels_glass_fragments.png | Bin 0 -> 494 bytes mods/vessels/textures/vessels_shelf.png | Bin 0 -> 354 bytes mods/vessels/textures/vessels_shelf_slot.png | Bin 0 -> 130 bytes .../vessels/textures/vessels_steel_bottle.png | Bin 0 -> 196 bytes mods/wool/README.txt | 16 + mods/wool/init.lua | 54 + mods/wool/license.txt | 60 + mods/wool/locale/template.txt | 16 + mods/wool/locale/wool.bg.tr | 16 + mods/wool/locale/wool.da.tr | 16 + mods/wool/locale/wool.de.tr | 16 + mods/wool/locale/wool.eo.tr | 16 + mods/wool/locale/wool.es.tr | 16 + mods/wool/locale/wool.eu.tr | 16 + mods/wool/locale/wool.fr.tr | 16 + mods/wool/locale/wool.hu.tr | 16 + mods/wool/locale/wool.id.tr | 16 + mods/wool/locale/wool.it.tr | 16 + mods/wool/locale/wool.ja.tr | 16 + mods/wool/locale/wool.jbo.tr | 16 + mods/wool/locale/wool.lv.tr | 16 + mods/wool/locale/wool.ms.tr | 16 + mods/wool/locale/wool.pl.tr | 16 + mods/wool/locale/wool.pt.tr | 16 + mods/wool/locale/wool.pt_BR.tr | 16 + mods/wool/locale/wool.ru.tr | 16 + mods/wool/locale/wool.sk.tr | 16 + mods/wool/locale/wool.sv.tr | 16 + mods/wool/locale/wool.uk.tr | 16 + mods/wool/locale/wool.zh_CN.tr | 16 + mods/wool/locale/wool.zh_TW.tr | 16 + mods/wool/mod.conf | 3 + mods/wool/textures/wool_black.png | Bin 0 -> 209 bytes mods/wool/textures/wool_blue.png | Bin 0 -> 264 bytes mods/wool/textures/wool_brown.png | Bin 0 -> 267 bytes mods/wool/textures/wool_cyan.png | Bin 0 -> 302 bytes mods/wool/textures/wool_dark_green.png | Bin 0 -> 254 bytes mods/wool/textures/wool_dark_grey.png | Bin 0 -> 260 bytes mods/wool/textures/wool_green.png | Bin 0 -> 304 bytes mods/wool/textures/wool_grey.png | Bin 0 -> 248 bytes mods/wool/textures/wool_magenta.png | Bin 0 -> 296 bytes mods/wool/textures/wool_orange.png | Bin 0 -> 284 bytes mods/wool/textures/wool_pink.png | Bin 0 -> 218 bytes mods/wool/textures/wool_red.png | Bin 0 -> 288 bytes mods/wool/textures/wool_violet.png | Bin 0 -> 244 bytes mods/wool/textures/wool_white.png | Bin 0 -> 243 bytes mods/wool/textures/wool_yellow.png | Bin 0 -> 255 bytes 306 files changed, 9142 insertions(+), 31 deletions(-) create mode 100644 mods/butterflies/README.txt create mode 100644 mods/butterflies/init.lua create mode 100644 mods/butterflies/license.txt create mode 100644 mods/butterflies/locale/butterflies.bg.tr create mode 100644 mods/butterflies/locale/butterflies.da.tr create mode 100644 mods/butterflies/locale/butterflies.de.tr create mode 100644 mods/butterflies/locale/butterflies.eo.tr create mode 100644 mods/butterflies/locale/butterflies.es.tr create mode 100644 mods/butterflies/locale/butterflies.eu.tr create mode 100644 mods/butterflies/locale/butterflies.fr.tr create mode 100644 mods/butterflies/locale/butterflies.hu.tr create mode 100644 mods/butterflies/locale/butterflies.id.tr create mode 100644 mods/butterflies/locale/butterflies.it.tr create mode 100644 mods/butterflies/locale/butterflies.ja.tr create mode 100644 mods/butterflies/locale/butterflies.jbo.tr create mode 100644 mods/butterflies/locale/butterflies.lv.tr create mode 100644 mods/butterflies/locale/butterflies.ms.tr create mode 100644 mods/butterflies/locale/butterflies.pl.tr create mode 100644 mods/butterflies/locale/butterflies.pt_BR.tr create mode 100644 mods/butterflies/locale/butterflies.ru.tr create mode 100644 mods/butterflies/locale/butterflies.sk.tr create mode 100644 mods/butterflies/locale/butterflies.sv.tr create mode 100644 mods/butterflies/locale/butterflies.uk.tr create mode 100644 mods/butterflies/locale/butterflies.zh_CN.tr create mode 100644 mods/butterflies/locale/butterflies.zh_TW.tr create mode 100644 mods/butterflies/locale/template.txt create mode 100644 mods/butterflies/mod.conf create mode 100644 mods/butterflies/textures/butterflies_butterfly_red.png create mode 100644 mods/butterflies/textures/butterflies_butterfly_red_animated.png create mode 100644 mods/butterflies/textures/butterflies_butterfly_violet.png create mode 100644 mods/butterflies/textures/butterflies_butterfly_violet_animated.png create mode 100644 mods/butterflies/textures/butterflies_butterfly_white.png create mode 100644 mods/butterflies/textures/butterflies_butterfly_white_animated.png create mode 100644 mods/dye/README.txt create mode 100644 mods/dye/init.lua create mode 100644 mods/dye/license.txt create mode 100644 mods/dye/locale/dye.bg.tr create mode 100644 mods/dye/locale/dye.da.tr create mode 100644 mods/dye/locale/dye.de.tr create mode 100644 mods/dye/locale/dye.eo.tr create mode 100644 mods/dye/locale/dye.es.tr create mode 100644 mods/dye/locale/dye.eu.tr create mode 100644 mods/dye/locale/dye.fr.tr create mode 100644 mods/dye/locale/dye.hu.tr create mode 100644 mods/dye/locale/dye.id.tr create mode 100644 mods/dye/locale/dye.it.tr create mode 100644 mods/dye/locale/dye.ja.tr create mode 100644 mods/dye/locale/dye.jbo.tr create mode 100644 mods/dye/locale/dye.lv.tr create mode 100644 mods/dye/locale/dye.ms.tr create mode 100644 mods/dye/locale/dye.pl.tr create mode 100644 mods/dye/locale/dye.pt_BR.tr create mode 100644 mods/dye/locale/dye.ru.tr create mode 100644 mods/dye/locale/dye.sk.tr create mode 100644 mods/dye/locale/dye.sv.tr create mode 100644 mods/dye/locale/dye.uk.tr create mode 100644 mods/dye/locale/dye.zh_CN.tr create mode 100644 mods/dye/locale/dye.zh_TW.tr create mode 100644 mods/dye/locale/template.txt create mode 100644 mods/dye/mod.conf create mode 100644 mods/dye/textures/dye_black.png create mode 100644 mods/dye/textures/dye_blue.png create mode 100644 mods/dye/textures/dye_brown.png create mode 100644 mods/dye/textures/dye_cyan.png create mode 100644 mods/dye/textures/dye_dark_green.png create mode 100644 mods/dye/textures/dye_dark_grey.png create mode 100644 mods/dye/textures/dye_green.png create mode 100644 mods/dye/textures/dye_grey.png create mode 100644 mods/dye/textures/dye_magenta.png create mode 100644 mods/dye/textures/dye_orange.png create mode 100644 mods/dye/textures/dye_pink.png create mode 100644 mods/dye/textures/dye_red.png create mode 100644 mods/dye/textures/dye_violet.png create mode 100644 mods/dye/textures/dye_white.png create mode 100644 mods/dye/textures/dye_yellow.png create mode 100644 mods/farming/README.txt create mode 100644 mods/farming/api.lua create mode 100644 mods/farming/hoes.lua create mode 100644 mods/farming/init.lua create mode 100644 mods/farming/license.txt create mode 100644 mods/farming/locale/farming.bg.tr create mode 100644 mods/farming/locale/farming.da.tr create mode 100644 mods/farming/locale/farming.de.tr create mode 100644 mods/farming/locale/farming.eo.tr create mode 100644 mods/farming/locale/farming.es.tr create mode 100644 mods/farming/locale/farming.eu.tr create mode 100644 mods/farming/locale/farming.fr.tr create mode 100644 mods/farming/locale/farming.hu.tr create mode 100644 mods/farming/locale/farming.id.tr create mode 100644 mods/farming/locale/farming.it.tr create mode 100644 mods/farming/locale/farming.ja.tr create mode 100644 mods/farming/locale/farming.jbo.tr create mode 100644 mods/farming/locale/farming.lv.tr create mode 100644 mods/farming/locale/farming.ms.tr create mode 100644 mods/farming/locale/farming.pl.tr create mode 100644 mods/farming/locale/farming.pt.tr create mode 100644 mods/farming/locale/farming.pt_BR.tr create mode 100644 mods/farming/locale/farming.ru.tr create mode 100644 mods/farming/locale/farming.sk.tr create mode 100644 mods/farming/locale/farming.sv.tr create mode 100644 mods/farming/locale/farming.uk.tr create mode 100644 mods/farming/locale/farming.zh_CN.tr create mode 100644 mods/farming/locale/farming.zh_TW.tr create mode 100644 mods/farming/locale/template.txt create mode 100644 mods/farming/mod.conf create mode 100644 mods/farming/nodes.lua create mode 100644 mods/farming/textures/farming_bread.png create mode 100644 mods/farming/textures/farming_cotton.png create mode 100644 mods/farming/textures/farming_cotton_1.png create mode 100644 mods/farming/textures/farming_cotton_2.png create mode 100644 mods/farming/textures/farming_cotton_3.png create mode 100644 mods/farming/textures/farming_cotton_4.png create mode 100644 mods/farming/textures/farming_cotton_5.png create mode 100644 mods/farming/textures/farming_cotton_6.png create mode 100644 mods/farming/textures/farming_cotton_7.png create mode 100644 mods/farming/textures/farming_cotton_8.png create mode 100644 mods/farming/textures/farming_cotton_seed.png create mode 100644 mods/farming/textures/farming_cotton_wild.png create mode 100644 mods/farming/textures/farming_desert_sand_soil.png create mode 100644 mods/farming/textures/farming_desert_sand_soil_wet.png create mode 100644 mods/farming/textures/farming_desert_sand_soil_wet_side.png create mode 100644 mods/farming/textures/farming_flour.png create mode 100644 mods/farming/textures/farming_soil.png create mode 100644 mods/farming/textures/farming_soil_wet.png create mode 100644 mods/farming/textures/farming_soil_wet_side.png create mode 100644 mods/farming/textures/farming_straw.png create mode 100644 mods/farming/textures/farming_string.png create mode 100644 mods/farming/textures/farming_tool_bronzehoe.png create mode 100644 mods/farming/textures/farming_tool_diamondhoe.png create mode 100644 mods/farming/textures/farming_tool_mesehoe.png create mode 100644 mods/farming/textures/farming_tool_steelhoe.png create mode 100644 mods/farming/textures/farming_tool_stonehoe.png create mode 100644 mods/farming/textures/farming_tool_woodhoe.png create mode 100644 mods/farming/textures/farming_wheat.png create mode 100644 mods/farming/textures/farming_wheat_1.png create mode 100644 mods/farming/textures/farming_wheat_2.png create mode 100644 mods/farming/textures/farming_wheat_3.png create mode 100644 mods/farming/textures/farming_wheat_4.png create mode 100644 mods/farming/textures/farming_wheat_5.png create mode 100644 mods/farming/textures/farming_wheat_6.png create mode 100644 mods/farming/textures/farming_wheat_7.png create mode 100644 mods/farming/textures/farming_wheat_8.png create mode 100644 mods/farming/textures/farming_wheat_seed.png create mode 100644 mods/fireflies/README.txt create mode 100644 mods/fireflies/init.lua create mode 100644 mods/fireflies/license.txt create mode 100644 mods/fireflies/locale/fireflies.bg.tr create mode 100644 mods/fireflies/locale/fireflies.da.tr create mode 100644 mods/fireflies/locale/fireflies.de.tr create mode 100644 mods/fireflies/locale/fireflies.eo.tr create mode 100644 mods/fireflies/locale/fireflies.es.tr create mode 100644 mods/fireflies/locale/fireflies.eu.tr create mode 100644 mods/fireflies/locale/fireflies.fr.tr create mode 100644 mods/fireflies/locale/fireflies.hu.tr create mode 100644 mods/fireflies/locale/fireflies.id.tr create mode 100644 mods/fireflies/locale/fireflies.it.tr create mode 100644 mods/fireflies/locale/fireflies.ja.tr create mode 100644 mods/fireflies/locale/fireflies.jbo.tr create mode 100644 mods/fireflies/locale/fireflies.lv.tr create mode 100644 mods/fireflies/locale/fireflies.ms.tr create mode 100644 mods/fireflies/locale/fireflies.pl.tr create mode 100644 mods/fireflies/locale/fireflies.pt_BR.tr create mode 100644 mods/fireflies/locale/fireflies.ru.tr create mode 100644 mods/fireflies/locale/fireflies.sk.tr create mode 100644 mods/fireflies/locale/fireflies.sv.tr create mode 100644 mods/fireflies/locale/fireflies.uk.tr create mode 100644 mods/fireflies/locale/fireflies.zh_CN.tr create mode 100644 mods/fireflies/locale/fireflies.zh_TW.tr create mode 100644 mods/fireflies/locale/template.txt create mode 100644 mods/fireflies/mod.conf create mode 100644 mods/fireflies/textures/fireflies_bottle.png create mode 100644 mods/fireflies/textures/fireflies_bottle_animated.png create mode 100644 mods/fireflies/textures/fireflies_bugnet.png create mode 100644 mods/fireflies/textures/fireflies_firefly.png create mode 100644 mods/fireflies/textures/fireflies_firefly_animated.png delete mode 100644 mods/main/schematics/map1.mts create mode 100644 mods/main/schems/spawn.mts create mode 100644 mods/maps/init.lua create mode 100644 mods/maps/maps/forest/map.lua create mode 100644 mods/maps/maps/forest/map.mts create mode 100644 mods/maps/maps/pine/map.lua create mode 100644 mods/maps/maps/pine/map.mts create mode 100644 mods/maps/maps/savanna/map.lua create mode 100644 mods/maps/maps/savanna/map.mts create mode 100644 mods/maps/mod.conf create mode 100644 mods/sprint/COPYING create mode 100644 mods/sprint/README.md create mode 100644 mods/sprint/depends.txt create mode 100644 mods/sprint/esprint.lua create mode 100644 mods/sprint/init.lua create mode 100644 mods/sprint/textures/sprint_particle.png create mode 100644 mods/sprint/textures/sprint_stamina_bar.png create mode 100644 mods/sprint/textures/sprint_stamina_icon.png create mode 100644 mods/sprint/wsprint.lua create mode 100644 mods/stairs/README.txt create mode 100644 mods/stairs/init.lua create mode 100644 mods/stairs/license.txt create mode 100644 mods/stairs/locale/stairs.bg.tr create mode 100644 mods/stairs/locale/stairs.da.tr create mode 100644 mods/stairs/locale/stairs.de.tr create mode 100644 mods/stairs/locale/stairs.eo.tr create mode 100644 mods/stairs/locale/stairs.es.tr create mode 100644 mods/stairs/locale/stairs.eu.tr create mode 100644 mods/stairs/locale/stairs.fr.tr create mode 100644 mods/stairs/locale/stairs.hu.tr create mode 100644 mods/stairs/locale/stairs.id.tr create mode 100644 mods/stairs/locale/stairs.it.tr create mode 100644 mods/stairs/locale/stairs.ja.tr create mode 100644 mods/stairs/locale/stairs.jbo.tr create mode 100644 mods/stairs/locale/stairs.lv.tr create mode 100644 mods/stairs/locale/stairs.ms.tr create mode 100644 mods/stairs/locale/stairs.pl.tr create mode 100644 mods/stairs/locale/stairs.pt_BR.tr create mode 100644 mods/stairs/locale/stairs.ru.tr create mode 100644 mods/stairs/locale/stairs.sk.tr create mode 100644 mods/stairs/locale/stairs.sv.tr create mode 100644 mods/stairs/locale/stairs.uk.tr create mode 100644 mods/stairs/locale/stairs.zh_CN.tr create mode 100644 mods/stairs/locale/stairs.zh_TW.tr create mode 100644 mods/stairs/locale/template.txt create mode 100644 mods/stairs/mod.conf create mode 100644 mods/stairs/textures/stairs_glass_outer_stairside.png create mode 100644 mods/stairs/textures/stairs_glass_split.png create mode 100644 mods/stairs/textures/stairs_glass_stairside.png create mode 100644 mods/stairs/textures/stairs_obsidian_glass_outer_stairside.png create mode 100644 mods/stairs/textures/stairs_obsidian_glass_split.png create mode 100644 mods/stairs/textures/stairs_obsidian_glass_stairside.png create mode 100644 mods/vessels/README.txt create mode 100644 mods/vessels/init.lua create mode 100644 mods/vessels/license.txt create mode 100644 mods/vessels/locale/template.txt create mode 100644 mods/vessels/locale/vessels.bg.tr create mode 100644 mods/vessels/locale/vessels.da.tr create mode 100644 mods/vessels/locale/vessels.de.tr create mode 100644 mods/vessels/locale/vessels.eo.tr create mode 100644 mods/vessels/locale/vessels.es.tr create mode 100644 mods/vessels/locale/vessels.eu.tr create mode 100644 mods/vessels/locale/vessels.fr.tr create mode 100644 mods/vessels/locale/vessels.hu.tr create mode 100644 mods/vessels/locale/vessels.id.tr create mode 100644 mods/vessels/locale/vessels.it.tr create mode 100644 mods/vessels/locale/vessels.ja.tr create mode 100644 mods/vessels/locale/vessels.jbo.tr create mode 100644 mods/vessels/locale/vessels.lv.tr create mode 100644 mods/vessels/locale/vessels.ms.tr create mode 100644 mods/vessels/locale/vessels.pl.tr create mode 100644 mods/vessels/locale/vessels.pt_BR.tr create mode 100644 mods/vessels/locale/vessels.ru.tr create mode 100644 mods/vessels/locale/vessels.sk.tr create mode 100644 mods/vessels/locale/vessels.sv.tr create mode 100644 mods/vessels/locale/vessels.uk.tr create mode 100644 mods/vessels/locale/vessels.zh_CN.tr create mode 100644 mods/vessels/locale/vessels.zh_TW.tr create mode 100644 mods/vessels/mod.conf create mode 100644 mods/vessels/textures/vessels_drinking_glass.png create mode 100644 mods/vessels/textures/vessels_drinking_glass_inv.png create mode 100644 mods/vessels/textures/vessels_glass_bottle.png create mode 100644 mods/vessels/textures/vessels_glass_fragments.png create mode 100644 mods/vessels/textures/vessels_shelf.png create mode 100644 mods/vessels/textures/vessels_shelf_slot.png create mode 100644 mods/vessels/textures/vessels_steel_bottle.png create mode 100644 mods/wool/README.txt create mode 100644 mods/wool/init.lua create mode 100644 mods/wool/license.txt create mode 100644 mods/wool/locale/template.txt create mode 100644 mods/wool/locale/wool.bg.tr create mode 100644 mods/wool/locale/wool.da.tr create mode 100644 mods/wool/locale/wool.de.tr create mode 100644 mods/wool/locale/wool.eo.tr create mode 100644 mods/wool/locale/wool.es.tr create mode 100644 mods/wool/locale/wool.eu.tr create mode 100644 mods/wool/locale/wool.fr.tr create mode 100644 mods/wool/locale/wool.hu.tr create mode 100644 mods/wool/locale/wool.id.tr create mode 100644 mods/wool/locale/wool.it.tr create mode 100644 mods/wool/locale/wool.ja.tr create mode 100644 mods/wool/locale/wool.jbo.tr create mode 100644 mods/wool/locale/wool.lv.tr create mode 100644 mods/wool/locale/wool.ms.tr create mode 100644 mods/wool/locale/wool.pl.tr create mode 100644 mods/wool/locale/wool.pt.tr create mode 100644 mods/wool/locale/wool.pt_BR.tr create mode 100644 mods/wool/locale/wool.ru.tr create mode 100644 mods/wool/locale/wool.sk.tr create mode 100644 mods/wool/locale/wool.sv.tr create mode 100644 mods/wool/locale/wool.uk.tr create mode 100644 mods/wool/locale/wool.zh_CN.tr create mode 100644 mods/wool/locale/wool.zh_TW.tr create mode 100644 mods/wool/mod.conf create mode 100644 mods/wool/textures/wool_black.png create mode 100644 mods/wool/textures/wool_blue.png create mode 100644 mods/wool/textures/wool_brown.png create mode 100644 mods/wool/textures/wool_cyan.png create mode 100644 mods/wool/textures/wool_dark_green.png create mode 100644 mods/wool/textures/wool_dark_grey.png create mode 100644 mods/wool/textures/wool_green.png create mode 100644 mods/wool/textures/wool_grey.png create mode 100644 mods/wool/textures/wool_magenta.png create mode 100644 mods/wool/textures/wool_orange.png create mode 100644 mods/wool/textures/wool_pink.png create mode 100644 mods/wool/textures/wool_red.png create mode 100644 mods/wool/textures/wool_violet.png create mode 100644 mods/wool/textures/wool_white.png create mode 100644 mods/wool/textures/wool_yellow.png diff --git a/TODO.txt b/TODO.txt index 8584eab..2285b73 100644 --- a/TODO.txt +++ b/TODO.txt @@ -1,18 +1,13 @@ Lines starting with "!" are high priority TODO: -!- Non-hardcoded maps - WIP, see the 'wip' branch -- More maps - GUIs to do everything -- Inventory -!- Put privilege restrictions on chatcommands -!- Fix the alive_players variable not working right +!- Inventory - A bigger and better map, ideally with hills, few trees, no caves, some rivers, big villages here and there, and 500x500 size - Random loot spawning in chests in predefined places (inside houses) !- Add a proper licence and give credit to the creators of the mods used -- Make guns zoom in with a crosshair while rightclick is held +!- Make guns zoom in with a crosshair while rightclick is held - Header, screenshot, and icon - Polish the game -- Rewrite the main mod from scratch (less than 100 lines, should be easy) -- A scoring system with leaderboards -!- Don't override every node's groups, instead just add `fall_damage_add_percent = -100` +- Rewrite the main mod from scratch with higher code standards +- A scoring system with leaderboards \ No newline at end of file diff --git a/mods/butterflies/README.txt b/mods/butterflies/README.txt new file mode 100644 index 0000000..a7f52a0 --- /dev/null +++ b/mods/butterflies/README.txt @@ -0,0 +1,14 @@ +Minetest Game mod: Butterflies +============================== +Adds butterflies to the world on mapgen, which can be caught in a net if the +fireflies mod is also enabled. + +Authors of source code +---------------------- +Shara RedCat (MIT) + +Authors of media (textures) +--------------------------- +Shara RedCat (CC BY-SA 3.0): + butterflies_butterfly_*.png + butterflies_butterfly_*_animated.png \ No newline at end of file diff --git a/mods/butterflies/init.lua b/mods/butterflies/init.lua new file mode 100644 index 0000000..ad3c79f --- /dev/null +++ b/mods/butterflies/init.lua @@ -0,0 +1,121 @@ +-- butterflies/init.lua + +-- Load support for MT game translation. +local S = minetest.get_translator("butterflies") + +-- Legacy compatibility, when pointabilities don't exist, pointable is set to true. +local pointable_compat = not minetest.features.item_specific_pointabilities + +-- register butterflies +local butter_list = { + {"white", S("White Butterfly")}, + {"red", S("Red Butterfly")}, + {"violet", S("Violet Butterfly")} +} + +for i in ipairs (butter_list) do + local name = butter_list[i][1] + local desc = butter_list[i][2] + + minetest.register_node("butterflies:butterfly_"..name, { + description = desc, + drawtype = "plantlike", + tiles = {{ + name = "butterflies_butterfly_"..name.."_animated.png", + animation = { + type = "vertical_frames", + aspect_w = 16, + aspect_h = 16, + length = 3 + }, + }}, + inventory_image = "butterflies_butterfly_"..name..".png", + wield_image = "butterflies_butterfly_"..name..".png", + waving = 1, + paramtype = "light", + sunlight_propagates = true, + buildable_to = true, + walkable = false, + pointable = pointable_compat, + groups = {catchable = 1}, + selection_box = { + type = "fixed", + fixed = {-0.1, -0.1, -0.1, 0.1, 0.1, 0.1}, + }, + floodable = true, + on_construct = function(pos) + minetest.get_node_timer(pos):start(1) + end, + on_timer = function(pos, elapsed) + if minetest.get_node_light(pos) < 11 then + minetest.set_node(pos, {name = "butterflies:hidden_butterfly_"..name}) + end + minetest.get_node_timer(pos):start(30) + end + }) + + minetest.register_node("butterflies:hidden_butterfly_"..name, { + drawtype = "airlike", + inventory_image = "butterflies_butterfly_"..name..".png^default_invisible_node_overlay.png", + wield_image = "butterflies_butterfly_"..name..".png^default_invisible_node_overlay.png", + paramtype = "light", + sunlight_propagates = true, + walkable = false, + pointable = false, + diggable = false, + drop = "", + groups = {not_in_creative_inventory = 1}, + floodable = true, + on_construct = function(pos) + minetest.get_node_timer(pos):start(1) + end, + on_timer = function(pos, elapsed) + if minetest.get_node_light(pos) >= 11 then + minetest.set_node(pos, {name = "butterflies:butterfly_"..name}) + end + minetest.get_node_timer(pos):start(30) + end + }) +end + +-- register decoration +minetest.register_decoration({ + name = "butterflies:butterfly", + deco_type = "simple", + place_on = {"default:dirt_with_grass"}, + place_offset_y = 2, + sidelen = 80, + fill_ratio = 0.005, + biomes = {"grassland", "deciduous_forest"}, + y_max = 31000, + y_min = 1, + decoration = { + "butterflies:butterfly_white", + "butterflies:butterfly_red", + "butterflies:butterfly_violet" + }, + spawn_by = "group:flower", + num_spawn_by = 1 +}) + +-- get decoration ID +local butterflies = minetest.get_decoration_id("butterflies:butterfly") +minetest.set_gen_notify({decoration = true}, {butterflies}) + +-- start nodetimers +minetest.register_on_generated(function(minp, maxp, blockseed) + local gennotify = minetest.get_mapgen_object("gennotify") + local poslist = {} + + for _, pos in ipairs(gennotify["decoration#"..butterflies] or {}) do + local deco_pos = {x = pos.x, y = pos.y + 3, z = pos.z} + table.insert(poslist, deco_pos) + end + + if #poslist ~= 0 then + for i = 1, #poslist do + local pos = poslist[i] + minetest.get_node_timer(pos):start(1) + end + end +end) diff --git a/mods/butterflies/license.txt b/mods/butterflies/license.txt new file mode 100644 index 0000000..eebdad6 --- /dev/null +++ b/mods/butterflies/license.txt @@ -0,0 +1,58 @@ +License of source code +---------------------- + +The MIT License (MIT) +Copyright (c) 2018 Shara RedCat + +Permission is hereby granted, free of charge, to any person obtaining a copy of this +software and associated documentation files (the "Software"), to deal in the Software +without restriction, including without limitation the rights to use, copy, modify, merge, +publish, distribute, sublicense, and/or sell copies of the Software, and to permit +persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or +substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, +INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR +PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE +FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR +OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER +DEALINGS IN THE SOFTWARE. + +For more details: +https://opensource.org/licenses/MIT + +Licenses of media (textures) +---------------------------- + +Attribution-ShareAlike 3.0 Unported (CC BY-SA 3.0) +Copyright (C) 2018 Shara RedCat + +You are free to: +Share — copy and redistribute the material in any medium or format. +Adapt — remix, transform, and build upon the material for any purpose, even commercially. +The licensor cannot revoke these freedoms as long as you follow the license terms. + +Under the following terms: + +Attribution — You must give appropriate credit, provide a link to the license, and +indicate if changes were made. You may do so in any reasonable manner, but not in any way +that suggests the licensor endorses you or your use. + +ShareAlike — If you remix, transform, or build upon the material, you must distribute +your contributions under the same license as the original. + +No additional restrictions — You may not apply legal terms or technological measures that +legally restrict others from doing anything the license permits. + +Notices: + +You do not have to comply with the license for elements of the material in the public +domain or where your use is permitted by an applicable exception or limitation. +No warranties are given. The license may not give you all of the permissions necessary +for your intended use. For example, other rights such as publicity, privacy, or moral +rights may limit how you use the material. + +For more details: +http://creativecommons.org/licenses/by-sa/3.0/ \ No newline at end of file diff --git a/mods/butterflies/locale/butterflies.bg.tr b/mods/butterflies/locale/butterflies.bg.tr new file mode 100644 index 0000000..07efd82 --- /dev/null +++ b/mods/butterflies/locale/butterflies.bg.tr @@ -0,0 +1,4 @@ +# textdomain: butterflies +White Butterfly=Бяла пеперуда +Red Butterfly=Червена пеперуда +Violet Butterfly=Лилава пеперуда diff --git a/mods/butterflies/locale/butterflies.da.tr b/mods/butterflies/locale/butterflies.da.tr new file mode 100644 index 0000000..f6e8339 --- /dev/null +++ b/mods/butterflies/locale/butterflies.da.tr @@ -0,0 +1,4 @@ +# textdomain: butterflies +White Butterfly=Hvid sommerfugl +Red Butterfly=Rød sommerfugl +Violet Butterfly=Violet sommerfugl diff --git a/mods/butterflies/locale/butterflies.de.tr b/mods/butterflies/locale/butterflies.de.tr new file mode 100644 index 0000000..2f1b982 --- /dev/null +++ b/mods/butterflies/locale/butterflies.de.tr @@ -0,0 +1,4 @@ +# textdomain: butterflies +White Butterfly=Weißer Schmetterling +Red Butterfly=Roter Schmetterling +Violet Butterfly=Violetter Schmetterling diff --git a/mods/butterflies/locale/butterflies.eo.tr b/mods/butterflies/locale/butterflies.eo.tr new file mode 100644 index 0000000..be09eb7 --- /dev/null +++ b/mods/butterflies/locale/butterflies.eo.tr @@ -0,0 +1,4 @@ +# textdomain: butterflies +White Butterfly=Blanka papilio +Red Butterfly=Ruĝa papilio +Violet Butterfly=Violkolora papilio diff --git a/mods/butterflies/locale/butterflies.es.tr b/mods/butterflies/locale/butterflies.es.tr new file mode 100644 index 0000000..59a28eb --- /dev/null +++ b/mods/butterflies/locale/butterflies.es.tr @@ -0,0 +1,4 @@ +# textdomain: butterflies +White Butterfly=Mariposa blanca +Red Butterfly=Mariposa roja +Violet Butterfly=Mariposa violeta diff --git a/mods/butterflies/locale/butterflies.eu.tr b/mods/butterflies/locale/butterflies.eu.tr new file mode 100644 index 0000000..8b89d08 --- /dev/null +++ b/mods/butterflies/locale/butterflies.eu.tr @@ -0,0 +1,4 @@ +# textdomain: butterflies +White Butterfly=Tximeleta zuria +Red Butterfly=Tximeleta gorria +Violet Butterfly=Tximeleta morea diff --git a/mods/butterflies/locale/butterflies.fr.tr b/mods/butterflies/locale/butterflies.fr.tr new file mode 100644 index 0000000..8f5c094 --- /dev/null +++ b/mods/butterflies/locale/butterflies.fr.tr @@ -0,0 +1,4 @@ +# textdomain: butterflies +White Butterfly=Papillon blanc +Red Butterfly=Papillon rouge +Violet Butterfly=Papillon violet diff --git a/mods/butterflies/locale/butterflies.hu.tr b/mods/butterflies/locale/butterflies.hu.tr new file mode 100644 index 0000000..d30165e --- /dev/null +++ b/mods/butterflies/locale/butterflies.hu.tr @@ -0,0 +1,4 @@ +# textdomain: butterflies +White Butterfly=Fehér pillangó +Red Butterfly=Vörös pillangó +Violet Butterfly=Lila pillangó diff --git a/mods/butterflies/locale/butterflies.id.tr b/mods/butterflies/locale/butterflies.id.tr new file mode 100644 index 0000000..d4429a6 --- /dev/null +++ b/mods/butterflies/locale/butterflies.id.tr @@ -0,0 +1,4 @@ +# textdomain: butterflies +White Butterfly=Kupu-Kupu Putih +Red Butterfly=Kupu-Kupu Merah +Violet Butterfly=Kupu-Kupu Ungu diff --git a/mods/butterflies/locale/butterflies.it.tr b/mods/butterflies/locale/butterflies.it.tr new file mode 100644 index 0000000..ec65da6 --- /dev/null +++ b/mods/butterflies/locale/butterflies.it.tr @@ -0,0 +1,4 @@ +# textdomain: butterflies +White Butterfly=Farfalla bianca +Red Butterfly=Farfalla rossa +Violet Butterfly=Farfalla viola diff --git a/mods/butterflies/locale/butterflies.ja.tr b/mods/butterflies/locale/butterflies.ja.tr new file mode 100644 index 0000000..5a22d6b --- /dev/null +++ b/mods/butterflies/locale/butterflies.ja.tr @@ -0,0 +1,4 @@ +# textdomain: butterflies +White Butterfly=白色の蝶 +Red Butterfly=赤色の蝶 +Violet Butterfly=紫色の蝶 diff --git a/mods/butterflies/locale/butterflies.jbo.tr b/mods/butterflies/locale/butterflies.jbo.tr new file mode 100644 index 0000000..f003e00 --- /dev/null +++ b/mods/butterflies/locale/butterflies.jbo.tr @@ -0,0 +1,4 @@ +# textdomain: butterflies +White Butterfly=lo blabi toldi +Red Butterfly=lo xunre toldi +Violet Butterfly=lo zirpu toldi diff --git a/mods/butterflies/locale/butterflies.lv.tr b/mods/butterflies/locale/butterflies.lv.tr new file mode 100644 index 0000000..d17eb6c --- /dev/null +++ b/mods/butterflies/locale/butterflies.lv.tr @@ -0,0 +1,4 @@ +# textdomain: butterflies +White Butterfly=Balts taurenis +Red Butterfly=Sarkans taurenis +Violet Butterfly=Violets taurenis diff --git a/mods/butterflies/locale/butterflies.ms.tr b/mods/butterflies/locale/butterflies.ms.tr new file mode 100644 index 0000000..b8bde85 --- /dev/null +++ b/mods/butterflies/locale/butterflies.ms.tr @@ -0,0 +1,4 @@ +# textdomain: butterflies +White Butterfly=Rama-Rama Putih +Red Butterfly=Rama-Rama Merah +Violet Butterfly=Rama-Rama Ungu diff --git a/mods/butterflies/locale/butterflies.pl.tr b/mods/butterflies/locale/butterflies.pl.tr new file mode 100644 index 0000000..577f0b8 --- /dev/null +++ b/mods/butterflies/locale/butterflies.pl.tr @@ -0,0 +1,4 @@ +# textdomain: butterflies +White Butterfly=Biały motyl +Red Butterfly=Czerwony motyl +Violet Butterfly=Fioletowy motyl diff --git a/mods/butterflies/locale/butterflies.pt_BR.tr b/mods/butterflies/locale/butterflies.pt_BR.tr new file mode 100644 index 0000000..af3539e --- /dev/null +++ b/mods/butterflies/locale/butterflies.pt_BR.tr @@ -0,0 +1,4 @@ +# textdomain: butterflies +White Butterfly=Borboleta Branca +Red Butterfly=Borboleta Vermelha +Violet Butterfly=Borboleta Violeta diff --git a/mods/butterflies/locale/butterflies.ru.tr b/mods/butterflies/locale/butterflies.ru.tr new file mode 100644 index 0000000..6881f1c --- /dev/null +++ b/mods/butterflies/locale/butterflies.ru.tr @@ -0,0 +1,4 @@ +# textdomain: butterflies +White Butterfly=Белая бабочка +Red Butterfly=Красная бабочка +Violet Butterfly=Фиолетовая бабочка diff --git a/mods/butterflies/locale/butterflies.sk.tr b/mods/butterflies/locale/butterflies.sk.tr new file mode 100644 index 0000000..c3086e7 --- /dev/null +++ b/mods/butterflies/locale/butterflies.sk.tr @@ -0,0 +1,4 @@ +# textdomain: butterflies +White Butterfly=Biely motýlik +Red Butterfly=Červený motýlik +Violet Butterfly=Fialový motýlik diff --git a/mods/butterflies/locale/butterflies.sv.tr b/mods/butterflies/locale/butterflies.sv.tr new file mode 100644 index 0000000..77bfb34 --- /dev/null +++ b/mods/butterflies/locale/butterflies.sv.tr @@ -0,0 +1,4 @@ +# textdomain: butterflies +White Butterfly=Vit fjäril +Red Butterfly=Röd fjäril +Violet Butterfly=Violett fjäril diff --git a/mods/butterflies/locale/butterflies.uk.tr b/mods/butterflies/locale/butterflies.uk.tr new file mode 100644 index 0000000..8779b00 --- /dev/null +++ b/mods/butterflies/locale/butterflies.uk.tr @@ -0,0 +1,4 @@ +# textdomain: butterflies +White Butterfly=Білий метелик +Red Butterfly=Червоний метелик +Violet Butterfly=Фіолетовий метелик diff --git a/mods/butterflies/locale/butterflies.zh_CN.tr b/mods/butterflies/locale/butterflies.zh_CN.tr new file mode 100644 index 0000000..24e0bd1 --- /dev/null +++ b/mods/butterflies/locale/butterflies.zh_CN.tr @@ -0,0 +1,4 @@ +# textdomain: butterflies +White Butterfly=白蝴蝶 +Red Butterfly=红蝴蝶 +Violet Butterfly=紫蝴蝶 diff --git a/mods/butterflies/locale/butterflies.zh_TW.tr b/mods/butterflies/locale/butterflies.zh_TW.tr new file mode 100644 index 0000000..8d927c1 --- /dev/null +++ b/mods/butterflies/locale/butterflies.zh_TW.tr @@ -0,0 +1,4 @@ +# textdomain: butterflies +White Butterfly=白蝴蝶 +Red Butterfly=紅蝴蝶 +Violet Butterfly=紫蝴蝶 diff --git a/mods/butterflies/locale/template.txt b/mods/butterflies/locale/template.txt new file mode 100644 index 0000000..d89503a --- /dev/null +++ b/mods/butterflies/locale/template.txt @@ -0,0 +1,4 @@ +# textdomain: butterflies +White Butterfly= +Red Butterfly= +Violet Butterfly= diff --git a/mods/butterflies/mod.conf b/mods/butterflies/mod.conf new file mode 100644 index 0000000..1c66497 --- /dev/null +++ b/mods/butterflies/mod.conf @@ -0,0 +1,3 @@ +name = butterflies +description = Minetest Game mod: Butterflies +depends = default, flowers diff --git a/mods/butterflies/textures/butterflies_butterfly_red.png b/mods/butterflies/textures/butterflies_butterfly_red.png new file mode 100644 index 0000000000000000000000000000000000000000..8edfc3659c113f648b8efa5771c2731110e254c3 GIT binary patch literal 110 zcmeAS@N?(olHy`uVBq!ia0y~yU=RRdCT0c(hNQXTpBNYzI0Jk_Tp1V`t_KG%;neyU z9j?s4z`$4%FlNNw|p e&}O9r48b>;dCRnNJQx@l7(8A5T-G@yGywq2p&$JK literal 0 HcmV?d00001 diff --git a/mods/butterflies/textures/butterflies_butterfly_violet.png b/mods/butterflies/textures/butterflies_butterfly_violet.png new file mode 100644 index 0000000000000000000000000000000000000000..8b8c29ddf0edf7a2267a5ffb622b8bfe409962a7 GIT binary patch literal 110 zcmeAS@N?(olHy`uVBq!ia0y~yU=RRdCT0c(hNQXTpBNYzI0Jk_Tp1V`+H`isF-%!w zq9)0}z`$4%FlNNw|p e&}O9r48b>;dCRnNJQx@l7(8A5T-G@yGywpa^B+?H literal 0 HcmV?d00001 diff --git a/mods/butterflies/textures/butterflies_butterfly_white.png b/mods/butterflies/textures/butterflies_butterfly_white.png new file mode 100644 index 0000000000000000000000000000000000000000..db4eaec81fd2e2c958f22a6623f316a331f95bfc GIT binary patch literal 110 zcmeAS@N?(olHy`uVBq!ia0y~yU=RRdCT0c(hNQXTpBNYzI0Jk_Tp1V`{{R1f=gytb zz0oHb7#J8!g8YIR9G=}sV_;wq_H=O!;kcfxz-C~@z`2YqX$ljA>~V%8lDfAyGB7YO Nc)I$ztaD0e0sxxu9Q*(P literal 0 HcmV?d00001 diff --git a/mods/butterflies/textures/butterflies_butterfly_white_animated.png b/mods/butterflies/textures/butterflies_butterfly_white_animated.png new file mode 100644 index 0000000000000000000000000000000000000000..e7cada39a9bc439eb7501472c4ccc843cef1b096 GIT binary patch literal 125 zcmeAS@N?(olHy`uVBq!ia0y~yU=UznU}#`sW?*2b|IN6Ofq{WDz$e6&fq~)w|NoEg zUjD3ibqfOn17k^$UoeBivm0p)3=B%1E{-7@=aUr}Bpg|UnWr`~cVsB|o)0M3JW|_y eBD7iQ07LK%X5KQb91jKt1_n=8KbLh*2~7Y6*d!1D literal 0 HcmV?d00001 diff --git a/mods/dye/README.txt b/mods/dye/README.txt new file mode 100644 index 0000000..4b922fa --- /dev/null +++ b/mods/dye/README.txt @@ -0,0 +1,13 @@ +Minetest Game mod: dye +====================== +See license.txt for license information. +See init.lua for documentation. + +Authors of source code +---------------------- +Originally by Perttu Ahola (celeron55) (MIT) +Various Minetest Game developers and contributors (MIT) + +Authors of media (textures) +--------------------------- +Perttu Ahola (celeron55) (CC BY-SA 3.0) diff --git a/mods/dye/init.lua b/mods/dye/init.lua new file mode 100644 index 0000000..f0affe8 --- /dev/null +++ b/mods/dye/init.lua @@ -0,0 +1,127 @@ +-- dye/init.lua + +dye = {} + +-- Load support for MT game translation. +local S = minetest.get_translator("dye") + +-- Make dye names and descriptions available globally + +dye.dyes = { + {"white", "White"}, + {"grey", "Grey"}, + {"dark_grey", "Dark Grey"}, + {"black", "Black"}, + {"violet", "Violet"}, + {"blue", "Blue"}, + {"cyan", "Cyan"}, + {"dark_green", "Dark Green"}, + {"green", "Green"}, + {"yellow", "Yellow"}, + {"brown", "Brown"}, + {"orange", "Orange"}, + {"red", "Red"}, + {"magenta", "Magenta"}, + {"pink", "Pink"}, +} + +-- Define items + +for _, row in ipairs(dye.dyes) do + local name = row[1] + local description = row[2] + local groups = {dye = 1} + groups["color_" .. name] = 1 + + minetest.register_craftitem("dye:" .. name, { + inventory_image = "dye_" .. name .. ".png", + description = S(description .. " Dye"), + groups = groups + }) + + minetest.register_craft({ + output = "dye:" .. name .. " 4", + recipe = { + {"group:flower,color_" .. name} + }, + }) +end + +-- Manually add coal -> black dye + +minetest.register_craft({ + output = "dye:black 4", + recipe = { + {"group:coal"} + }, +}) + +-- Manually add blueberries->violet dye + +minetest.register_craft({ + output = "dye:violet 2", + recipe = { + {"default:blueberries"} + }, +}) + +-- Mix recipes + +local dye_recipes = { + -- src1, src2, dst + -- RYB mixes + {"red", "blue", "violet"}, -- "purple" + {"yellow", "red", "orange"}, + {"yellow", "blue", "green"}, + -- RYB complementary mixes + {"yellow", "violet", "dark_grey"}, + {"blue", "orange", "dark_grey"}, + -- CMY mixes - approximation + {"cyan", "yellow", "green"}, + {"cyan", "magenta", "blue"}, + {"yellow", "magenta", "red"}, + -- other mixes that result in a color we have + {"red", "green", "brown"}, + {"magenta", "blue", "violet"}, + {"green", "blue", "cyan"}, + {"pink", "violet", "magenta"}, + -- mixes with black + {"white", "black", "grey"}, + {"grey", "black", "dark_grey"}, + {"green", "black", "dark_green"}, + {"orange", "black", "brown"}, + -- mixes with white + {"white", "red", "pink"}, + {"white", "dark_grey", "grey"}, + {"white", "dark_green", "green"}, +} + +for _, mix in pairs(dye_recipes) do + minetest.register_craft({ + type = "shapeless", + output = "dye:" .. mix[3] .. " 2", + recipe = {"dye:" .. mix[1], "dye:" .. mix[2]}, + }) +end + +-- Dummy calls to S() to allow translation scripts to detect the strings. +-- To update this run: +-- for _,e in ipairs(dye.dyes) do print(("S(%q)"):format(e[2].." Dye")) end + +--[[ +S("White Dye") +S("Grey Dye") +S("Dark Grey Dye") +S("Black Dye") +S("Violet Dye") +S("Blue Dye") +S("Cyan Dye") +S("Dark Green Dye") +S("Green Dye") +S("Yellow Dye") +S("Brown Dye") +S("Orange Dye") +S("Red Dye") +S("Magenta Dye") +S("Pink Dye") +--]] diff --git a/mods/dye/license.txt b/mods/dye/license.txt new file mode 100644 index 0000000..340820c --- /dev/null +++ b/mods/dye/license.txt @@ -0,0 +1,60 @@ +License of source code +---------------------- + +The MIT License (MIT) +Copyright (C) 2012-2016 Perttu Ahola (celeron55) +Copyright (C) 2012-2016 Various Minetest Game developers and contributors + +Permission is hereby granted, free of charge, to any person obtaining a copy of this +software and associated documentation files (the "Software"), to deal in the Software +without restriction, including without limitation the rights to use, copy, modify, merge, +publish, distribute, sublicense, and/or sell copies of the Software, and to permit +persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or +substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, +INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR +PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE +FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR +OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER +DEALINGS IN THE SOFTWARE. + +For more details: +https://opensource.org/licenses/MIT + + +Licenses of media (textures) +---------------------------- + +Attribution-ShareAlike 3.0 Unported (CC BY-SA 3.0) +Copyright (C) 2012-2016 Perttu Ahola (celeron55) + +You are free to: +Share — copy and redistribute the material in any medium or format. +Adapt — remix, transform, and build upon the material for any purpose, even commercially. +The licensor cannot revoke these freedoms as long as you follow the license terms. + +Under the following terms: + +Attribution — You must give appropriate credit, provide a link to the license, and +indicate if changes were made. You may do so in any reasonable manner, but not in any way +that suggests the licensor endorses you or your use. + +ShareAlike — If you remix, transform, or build upon the material, you must distribute +your contributions under the same license as the original. + +No additional restrictions — You may not apply legal terms or technological measures that +legally restrict others from doing anything the license permits. + +Notices: + +You do not have to comply with the license for elements of the material in the public +domain or where your use is permitted by an applicable exception or limitation. +No warranties are given. The license may not give you all of the permissions necessary +for your intended use. For example, other rights such as publicity, privacy, or moral +rights may limit how you use the material. + +For more details: +http://creativecommons.org/licenses/by-sa/3.0/ diff --git a/mods/dye/locale/dye.bg.tr b/mods/dye/locale/dye.bg.tr new file mode 100644 index 0000000..e82ae35 --- /dev/null +++ b/mods/dye/locale/dye.bg.tr @@ -0,0 +1,16 @@ +# textdomain: dye +White Dye=Бяло багрило +Grey Dye=Сиво багрило +Dark Grey Dye=Тъмносиво багрило +Black Dye=Черно багрило +Violet Dye=Лилаво багрило +Blue Dye=Синьо багрило +Cyan Dye=Синьо-зелено багрило +Dark Green Dye=Масленозелено багрило +Green Dye=Зелено багрило +Yellow Dye=Жълто багрило +Brown Dye=Кафяво багрило +Orange Dye=Оранжево багрило +Red Dye=Червено багрило +Magenta Dye=Пурпурно багрило +Pink Dye=Розово багрило diff --git a/mods/dye/locale/dye.da.tr b/mods/dye/locale/dye.da.tr new file mode 100644 index 0000000..7a495dc --- /dev/null +++ b/mods/dye/locale/dye.da.tr @@ -0,0 +1,16 @@ +# textdomain: dye +White Dye=Hvid farve +Grey Dye=Grå farve +Dark Grey Dye=Mørkegrå farve +Black Dye=Sort farve +Violet Dye=Violet farve +Blue Dye=Blå farve +Cyan Dye=Cyan farve +Dark Green Dye=Mørkegrøn farve +Green Dye=Grøn farve +Yellow Dye=Gul farve +Brown Dye=Brun farve +Orange Dye=Orange farve +Red Dye=Rød farve +Magenta Dye=Magenta farve +Pink Dye=Lyserød farve diff --git a/mods/dye/locale/dye.de.tr b/mods/dye/locale/dye.de.tr new file mode 100644 index 0000000..f73fb57 --- /dev/null +++ b/mods/dye/locale/dye.de.tr @@ -0,0 +1,16 @@ +# textdomain: dye +White Dye=Weißer Farbstoff +Grey Dye=Grauer Farbstoff +Dark Grey Dye=Dunkelgrauer Farbstoff +Black Dye=Schwarzer Farbstoff +Violet Dye=Violetter Farbstoff +Blue Dye=Blauer Farbstoff +Cyan Dye=Türkiser Farbstoff +Dark Green Dye=Dunkelgrüner Farbstoff +Green Dye=Grüner Farbstoff +Yellow Dye=Gelber Farbstoff +Brown Dye=Brauner Farbstoff +Orange Dye=Orange Farbstoff +Red Dye=Roter Farbstoff +Magenta Dye=Magenta Farbstoff +Pink Dye=Rosa Farbstoff diff --git a/mods/dye/locale/dye.eo.tr b/mods/dye/locale/dye.eo.tr new file mode 100644 index 0000000..ee37abb --- /dev/null +++ b/mods/dye/locale/dye.eo.tr @@ -0,0 +1,16 @@ +# textdomain: dye +White Dye=Blanka tinkturo +Grey Dye=Griza tinkturo +Dark Grey Dye=Malhela griza tinkturo +Black Dye=Nigra tinkturo +Violet Dye=Violkolora tinkturo +Blue Dye=Blua tinkturo +Cyan Dye=Bluverda tinkturo +Dark Green Dye=Malhela verda tinkturo +Green Dye=Verda tinkturo +Yellow Dye=Flava tinkturo +Brown Dye=Bruna tinkturo +Orange Dye=Oranĝkolora tinkturo +Red Dye=Ruĝa tinkturo +Magenta Dye=Fiksina tinkturo +Pink Dye=Rozkolora tinkturo diff --git a/mods/dye/locale/dye.es.tr b/mods/dye/locale/dye.es.tr new file mode 100644 index 0000000..bd04ef4 --- /dev/null +++ b/mods/dye/locale/dye.es.tr @@ -0,0 +1,16 @@ +# textdomain: dye +White Dye=Tinte blanco +Grey Dye=Tinte gris +Dark Grey Dye=Tinte gris oscuro +Black Dye=Tinte negro +Violet Dye=Tinte violeta +Blue Dye=Tinte azul +Cyan Dye=Tinte cián +Dark Green Dye=Tinte verde oscuro +Green Dye=Tinte verde +Yellow Dye=Tinte amarillo +Brown Dye=Tinte marrón +Orange Dye=Tinte naranja +Red Dye=Tinte rojo +Magenta Dye=Tinte magenta +Pink Dye=Tinte rosa diff --git a/mods/dye/locale/dye.eu.tr b/mods/dye/locale/dye.eu.tr new file mode 100644 index 0000000..0890695 --- /dev/null +++ b/mods/dye/locale/dye.eu.tr @@ -0,0 +1,16 @@ +# textdomain: dye +White Dye=Tindagai zuria +Grey Dye=Tindagai grisa +Dark Grey Dye=Tindagai gris iluna +Black Dye=Tindagai beltza +Violet Dye=Tindagai morea +Blue Dye=Tindagai urdina +Cyan Dye=Tindaketa ziana +Dark Green Dye=Tindagai berde iluna +Green Dye=Tindagai berdea +Yellow Dye=Tindagai horia +Brown Dye=Tindaketa marroia +Orange Dye=Tindagai laranja +Red Dye=Tindagai gorria +Magenta Dye=Tindagai magenta +Pink Dye=Tindagai arrosa diff --git a/mods/dye/locale/dye.fr.tr b/mods/dye/locale/dye.fr.tr new file mode 100644 index 0000000..390fa07 --- /dev/null +++ b/mods/dye/locale/dye.fr.tr @@ -0,0 +1,16 @@ +# textdomain: dye +White Dye=Colorant blanc +Grey Dye=Colorant gris +Dark Grey Dye=Colorant gris foncé +Black Dye=Colorant noir +Violet Dye=Colorant violet +Blue Dye=Colorant bleu +Cyan Dye=Colorant cyan +Dark Green Dye=Colorant vert foncé +Green Dye=Colorant vert +Yellow Dye=Colorant jaune +Brown Dye=Colorant marron +Orange Dye=Colorant orange +Red Dye=Colorant rouge +Magenta Dye=Colorant magenta +Pink Dye=Colorant rose diff --git a/mods/dye/locale/dye.hu.tr b/mods/dye/locale/dye.hu.tr new file mode 100644 index 0000000..823a139 --- /dev/null +++ b/mods/dye/locale/dye.hu.tr @@ -0,0 +1,16 @@ +# textdomain: dye +White Dye=Fehér festék +Grey Dye=Szürke festék +Dark Grey Dye=Sötétszürke festék +Black Dye=Fekete festék +Violet Dye=Lila festék +Blue Dye=Kék festék +Cyan Dye=Cián festék +Dark Green Dye=Sötétzöld festék +Green Dye=Zöld festék +Yellow Dye=Sárga festék +Brown Dye=Barna festék +Orange Dye=Narancs festék +Red Dye=Piros festék +Magenta Dye=Bíbor festék +Pink Dye=Rózsaszín festék diff --git a/mods/dye/locale/dye.id.tr b/mods/dye/locale/dye.id.tr new file mode 100644 index 0000000..d587107 --- /dev/null +++ b/mods/dye/locale/dye.id.tr @@ -0,0 +1,16 @@ +# textdomain: dye +White Dye=Pewarna Putih +Grey Dye=Pewarna Abu +Dark Grey Dye=Pewarna Abu Tua +Black Dye=Pewarna Hitam +Violet Dye=Pewarna Ungu +Blue Dye=Pewarna Biru +Cyan Dye=Pewarna Sian +Dark Green Dye=Pewarna Hijau Tua +Green Dye=Pewarna Hijau +Yellow Dye=Pewarna Kuning +Brown Dye=Pewarna Cokelat +Orange Dye=Pewarna Oranye +Red Dye=Pewarna Merah +Magenta Dye=Pewarna Magenta +Pink Dye=Pewarna Merah Muda diff --git a/mods/dye/locale/dye.it.tr b/mods/dye/locale/dye.it.tr new file mode 100644 index 0000000..9deb385 --- /dev/null +++ b/mods/dye/locale/dye.it.tr @@ -0,0 +1,16 @@ +# textdomain: dye +White Dye=Tintura bianca +Grey Dye=Tintura grigia +Dark Grey Dye=Tintura grigia scura +Black Dye=Tintura nera +Violet Dye=Tintura viola +Blue Dye=Tintura blu +Cyan Dye=Tintura ciano +Dark Green Dye=Tintura verde scura +Green Dye=Tintura verde +Yellow Dye=Tintura gialla +Brown Dye=Tintura marrone +Orange Dye=Tintura arancione +Red Dye=Tintura rossa +Magenta Dye=Tintura magenta +Pink Dye=Tintura rosa diff --git a/mods/dye/locale/dye.ja.tr b/mods/dye/locale/dye.ja.tr new file mode 100644 index 0000000..d7ae306 --- /dev/null +++ b/mods/dye/locale/dye.ja.tr @@ -0,0 +1,16 @@ +# textdomain: dye +White Dye=白色の染料 +Grey Dye=灰色の染料 +Dark Grey Dye=濃灰色の染料 +Black Dye=黒色の染料 +Violet Dye=紫色の染料 +Blue Dye=青色の染料 +Cyan Dye=青緑色の染料 +Dark Green Dye=濃緑色の染料 +Green Dye=緑色の染料 +Yellow Dye=黄色の染料 +Brown Dye=茶色の染料 +Orange Dye=橙色の染料 +Red Dye=赤色の染料 +Magenta Dye=赤紫色の染料 +Pink Dye=桃色の染料 diff --git a/mods/dye/locale/dye.jbo.tr b/mods/dye/locale/dye.jbo.tr new file mode 100644 index 0000000..39ec7ab --- /dev/null +++ b/mods/dye/locale/dye.jbo.tr @@ -0,0 +1,16 @@ +# textdomain: dye +White Dye=lo blabi xinmo +Grey Dye=lo grusi xinmo +Dark Grey Dye=lo xekri grusi xinmo +Black Dye=lo xekri xinmo +Violet Dye=lo zirpu xinmo +Blue Dye=lo blanu xinmo +Cyan Dye=lo cicna xinmo +Dark Green Dye=lo xekri crino xinmo +Green Dye=lo crino xinmo +Yellow Dye=lo pelxu xinmo +Brown Dye=lo bunre xinmo +Orange Dye=lo narju xinmo +Red Dye=lo xunre xinmo +Magenta Dye=lo nukni xinmo +Pink Dye=lo xunblabi xinmo diff --git a/mods/dye/locale/dye.lv.tr b/mods/dye/locale/dye.lv.tr new file mode 100644 index 0000000..048a087 --- /dev/null +++ b/mods/dye/locale/dye.lv.tr @@ -0,0 +1,16 @@ +# textdomain: dye +White Dye=Baltā krāsa +Grey Dye=Pelēkā krāsa +Dark Grey Dye=Tumšpelēkā krāsa +Black Dye=Melnā krāsa +Violet Dye=Violetā krāsa +Blue Dye=Zilā krāsa +Cyan Dye=Ciāna krāsa +Dark Green Dye=Tumšzaļā krāsa +Green Dye=Zaļā krāsa +Yellow Dye=Dzeltenā krāsa +Brown Dye=Brūnā krāsa +Orange Dye=Oranžā krāsa +Red Dye=Sarkanā krāsa +Magenta Dye=Fuksīna krāsa +Pink Dye=Rozā krāsa diff --git a/mods/dye/locale/dye.ms.tr b/mods/dye/locale/dye.ms.tr new file mode 100644 index 0000000..a4256c7 --- /dev/null +++ b/mods/dye/locale/dye.ms.tr @@ -0,0 +1,16 @@ +# textdomain: dye +White Dye=Pewarna Putih +Grey Dye=Pewarna Kelabu +Dark Grey Dye=Pewarna Kelabu Tua +Black Dye=Pewarna Hitam +Violet Dye=Pewarna Ungu +Blue Dye=Pewarna Biru +Cyan Dye=Pewarna Biru Kehijauan +Dark Green Dye=Pewarna Hijau Tua +Green Dye=Pewarna Hijau +Yellow Dye=Pewarna Kuning +Brown Dye=Pewarna Perang +Orange Dye=Pewarna Jingga +Red Dye=Pewarna Merah +Magenta Dye=Pewarna Magenta +Pink Dye=Pewarna Merah Jambu diff --git a/mods/dye/locale/dye.pl.tr b/mods/dye/locale/dye.pl.tr new file mode 100644 index 0000000..a4bfa64 --- /dev/null +++ b/mods/dye/locale/dye.pl.tr @@ -0,0 +1,16 @@ +# textdomain: dye +White Dye=Biały barwnik +Grey Dye=Szary barwnik +Dark Grey Dye=Ciemnoszary barwnik +Black Dye=Czarny barwnik +Violet Dye=Fioletowy barwnik +Blue Dye=Niebieski barwnik +Cyan Dye=Cyjanowy barwnik +Dark Green Dye=Ciemnozielony barwnik +Green Dye=Zielony barwnik +Yellow Dye=Żółty barwnik +Brown Dye=Brązowy barwnik +Orange Dye=Pomarańczowy barwnik +Red Dye=Czerwony barwnik +Magenta Dye=Karmazynowy barwnik +Pink Dye=Różowy barwnik diff --git a/mods/dye/locale/dye.pt_BR.tr b/mods/dye/locale/dye.pt_BR.tr new file mode 100644 index 0000000..29e98da --- /dev/null +++ b/mods/dye/locale/dye.pt_BR.tr @@ -0,0 +1,16 @@ +# textdomain: dye +White Dye=Tinta Branca +Grey Dye=Tinta Cinza +Dark Grey Dye=Tinta Cinza-escuro +Black Dye=Tinta Preta +Violet Dye=Tinta Violeta +Blue Dye=Tinta Azul +Cyan Dye=Tinta Ciano +Dark Green Dye=Tinta Verde-escuro +Green Dye=Tinta Verde +Yellow Dye=Tinta Amarela +Brown Dye=Tinta Marrom +Orange Dye=Tinta Laranja +Red Dye=Tinta Vermelha +Magenta Dye=Tinta Magenta +Pink Dye=Tinta Rosa diff --git a/mods/dye/locale/dye.ru.tr b/mods/dye/locale/dye.ru.tr new file mode 100644 index 0000000..eff51f9 --- /dev/null +++ b/mods/dye/locale/dye.ru.tr @@ -0,0 +1,16 @@ +# textdomain: dye +White Dye=Белый краситель +Grey Dye=Серый краситель +Dark Grey Dye=Тёмно-серый краситель +Black Dye=Черный краситель +Violet Dye=Фиолетовый краситель +Blue Dye=Синий краситель +Cyan Dye=Бирюзовый краситель +Dark Green Dye=Тёмно-зелёный краситель +Green Dye=Зелёный краситель +Yellow Dye=Жёлтый краситель +Brown Dye=Коричневый краситель +Orange Dye=Оранжевый краситель +Red Dye=Красный краситель +Magenta Dye=Сиреневый краситель +Pink Dye=Розовый краситель diff --git a/mods/dye/locale/dye.sk.tr b/mods/dye/locale/dye.sk.tr new file mode 100644 index 0000000..625804c --- /dev/null +++ b/mods/dye/locale/dye.sk.tr @@ -0,0 +1,16 @@ +# textdomain: dye +White Dye=Biele farbivo +Grey Dye=Šedé farbivo +Dark Grey Dye=Tmavo šedé farbivo +Black Dye=Čierne farbivo +Violet Dye=Fialové farbivo +Blue Dye=Modré farbivo +Cyan Dye=Tyrkysové farbivo +Dark Green Dye=Tmavozelené farbivo +Green Dye=Zelené farbivo +Yellow Dye=Žlté farbivo +Brown Dye=Hnedé farbivo +Orange Dye=Oranžové farbivo +Red Dye=Červené farbivo +Magenta Dye=Purpurové farbivo +Pink Dye=Ružové farbivo diff --git a/mods/dye/locale/dye.sv.tr b/mods/dye/locale/dye.sv.tr new file mode 100644 index 0000000..ecde443 --- /dev/null +++ b/mods/dye/locale/dye.sv.tr @@ -0,0 +1,16 @@ +# textdomain: dye +White Dye=Vit färg +Grey Dye=Grå färg +Dark Grey Dye=Mörkgrå färg +Black Dye=Svart färg +Violet Dye=Violett färg +Blue Dye=Blå färg +Cyan Dye=Cyan färg +Dark Green Dye=Mörkgrön färg +Green Dye=Grön färg +Yellow Dye=Gul färg +Brown Dye=Brun färg +Orange Dye=Orange färg +Red Dye=Röd färg +Magenta Dye=Magenta färg +Pink Dye=Rosa färg diff --git a/mods/dye/locale/dye.uk.tr b/mods/dye/locale/dye.uk.tr new file mode 100644 index 0000000..7bf0f45 --- /dev/null +++ b/mods/dye/locale/dye.uk.tr @@ -0,0 +1,16 @@ +# textdomain: dye +White Dye=Білий барвник +Grey Dye=Сірий барвник +Dark Grey Dye=Темно-сірий барвник +Black Dye=Чорний барвник +Violet Dye=Фіолетовий барвник +Blue Dye=Синій барвник +Cyan Dye=Синьо-зелений барвник +Dark Green Dye=Темно-зелений барвник +Green Dye=Зелений барвник +Yellow Dye=Жовтий барвник +Brown Dye=Коричневий барвник +Orange Dye=Помаранчевий барвник +Red Dye=Червоний барвник +Magenta Dye=Пурпурний барвник +Pink Dye=Рожевий барвник diff --git a/mods/dye/locale/dye.zh_CN.tr b/mods/dye/locale/dye.zh_CN.tr new file mode 100644 index 0000000..11bf9cb --- /dev/null +++ b/mods/dye/locale/dye.zh_CN.tr @@ -0,0 +1,16 @@ +# textdomain: dye +White Dye=白色染料 +Grey Dye=灰色染料 +Dark Grey Dye=暗灰染料 +Black Dye=黑色染料 +Violet Dye=紫色染料 +Blue Dye=蓝色染料 +Cyan Dye=青色染料 +Dark Green Dye=暗绿染料 +Green Dye=绿色染料 +Yellow Dye=黄色染料 +Brown Dye=棕色染料 +Orange Dye=橙色染料 +Red Dye=红色染料 +Magenta Dye=品红染料 +Pink Dye=粉红染料 diff --git a/mods/dye/locale/dye.zh_TW.tr b/mods/dye/locale/dye.zh_TW.tr new file mode 100644 index 0000000..b84d07e --- /dev/null +++ b/mods/dye/locale/dye.zh_TW.tr @@ -0,0 +1,16 @@ +# textdomain: dye +White Dye=白色染料 +Grey Dye=灰色染料 +Dark Grey Dye=暗灰染料 +Black Dye=黑色染料 +Violet Dye=紫色染料 +Blue Dye=藍色染料 +Cyan Dye=青色染料 +Dark Green Dye=暗綠染料 +Green Dye=綠色染料 +Yellow Dye=黃色染料 +Brown Dye=棕色染料 +Orange Dye=橙色染料 +Red Dye=紅色染料 +Magenta Dye=品紅染料 +Pink Dye=粉紅染料 diff --git a/mods/dye/locale/template.txt b/mods/dye/locale/template.txt new file mode 100644 index 0000000..c20bab5 --- /dev/null +++ b/mods/dye/locale/template.txt @@ -0,0 +1,16 @@ +# textdomain: dye +White Dye= +Grey Dye= +Dark Grey Dye= +Black Dye= +Violet Dye= +Blue Dye= +Cyan Dye= +Dark Green Dye= +Green Dye= +Yellow Dye= +Brown Dye= +Orange Dye= +Red Dye= +Magenta Dye= +Pink Dye= diff --git a/mods/dye/mod.conf b/mods/dye/mod.conf new file mode 100644 index 0000000..32bb816 --- /dev/null +++ b/mods/dye/mod.conf @@ -0,0 +1,2 @@ +name = dye +description = Minetest Game mod: dye diff --git a/mods/dye/textures/dye_black.png b/mods/dye/textures/dye_black.png new file mode 100644 index 0000000000000000000000000000000000000000..1055b6c22a683977c0842fcd201e13e733a41f11 GIT binary patch literal 169 zcmeAS@N?(olHy`uVBq!ia0y~yU=RRd4mJh`2Kmqb6B!s73OrpLLn;`PCHfQ!^f(rO z_Pmf2!*)o(jOp;x4~!*83(ERfnK>StvK%(^^*#Il(xpoYJeP7bSq)iEsjZQ0OJqyT zI>u6P_QbZsKRBj8_{QaT_Qj)s>5s1ZToB+9e{iWqjc@tHElE-?9Kv%o3{CjF7#Ip9 Xt9E3tf7rvoz`)??>gTe~DWM4f#tS>F literal 0 HcmV?d00001 diff --git a/mods/dye/textures/dye_blue.png b/mods/dye/textures/dye_blue.png new file mode 100644 index 0000000000000000000000000000000000000000..d1377c6b514455257d1466cab3b403bcbd174d42 GIT binary patch literal 161 zcmeAS@N?(olHy`uVBq!ia0y~yU=RRd4mJh`2Kmqb6B!s7GCW-zLn;{W_8;VI2;g!4 zFB5yXTlTQ6&F|D580k-agDpC(Ba%$l^O}mQzlMTX+`P-F=`i>G+h|BEOvXla58sY5U5+ Pz`)??>gTe~DWM4f+d)0} literal 0 HcmV?d00001 diff --git a/mods/dye/textures/dye_brown.png b/mods/dye/textures/dye_brown.png new file mode 100644 index 0000000000000000000000000000000000000000..77d475cdfccb7caae035ab8802e27a161dfb55ab GIT binary patch literal 164 zcmeAS@N?(olHy`uVBq!ia0y~yU=RRd4mJh`2Kmqb6B!s7vOQfKLn;{W_8;VI2;gzH zZqKf`Xn5!F=Gzvl{{=9q3cL=~vH8WjC*X1a=DD4}^Pc`>sL-BS&bnmU8*heZYkgiu zEob?3L+8-$>73nb*0_c;MHy}TFRGq>&RhQJHW&SZNzd+FHFcd=VIBA9(w)8A>$SL< T4t-}}U|{fc^>bP0l+XkKVStvRvM_viQI8lIP8a9-Ehn91)P1y&;XIO`_>S zkFFVdQ&MBb@0Jv~Cr2qf` literal 0 HcmV?d00001 diff --git a/mods/dye/textures/dye_dark_green.png b/mods/dye/textures/dye_dark_green.png new file mode 100644 index 0000000000000000000000000000000000000000..9606ccf4561bd576c31a4e4a47a09adf161ffb98 GIT binary patch literal 168 zcmeAS@N?(olHy`uVBq!ia0y~yU=RRd4mJh`2Kmqb6B!s7@;zM~Ln;`PCHfQ!^f(rO z_Pmf2!*)o(jOp;x4~!*83(ERfnK>StvK%&ho7MJz(LVv6OF5dXhAgMl)<`xkY*R3K z%*Jt+<91?Ai+4da>+-ac!WG^hGu3i9+PDicokZO)ctjcUDz$X_O_7jdS7l%jU)*?T UO2vOg1_lNOPgg&ebxsLQ0EDhKivR!s literal 0 HcmV?d00001 diff --git a/mods/dye/textures/dye_dark_grey.png b/mods/dye/textures/dye_dark_grey.png new file mode 100644 index 0000000000000000000000000000000000000000..060737baa7e723c88c3e2444b43f63766397089a GIT binary patch literal 169 zcmeAS@N?(olHy`uVBq!ia0y~yU=RRd4mJh`2Kmqb6B!s73OrpLLn;`PCHfQ!^f(rO z_Pmf2!*)o(jOp;x4~!*83(ERfnK>StvK%(^_doyN%gZZ)=TeR)t0BuNwKbA$iEN2k z$5;x^p4fKy2gmdW-?;qFzIYTc{n1sQ3j#di4=%N+@hzXYB}vMKLwK%+p$VTC1B36} X_MG0$Q{5OC7#KWV{an^LB{Ts5LvcDh literal 0 HcmV?d00001 diff --git a/mods/dye/textures/dye_green.png b/mods/dye/textures/dye_green.png new file mode 100644 index 0000000000000000000000000000000000000000..0d99ee1c112676370725369996e5038d75de7608 GIT binary patch literal 168 zcmeAS@N?(olHy`uVBq!ia0y~yU=RRd4mJh`2Kmqb6B!s7@;zM~Ln;`PCHfQ!^f(rO z_Pmf2!*)o(jOp;x4~!*83(ERfnK>StvK-#_<+{=Tz1y7)JT@;CIU=AjdqWyan^e<< z9%%&=<(&49f_ewviq4sJ@#sRmqswP*P?XR+u#_`Y#!)%*s7Z%_npI#@hRhTO2Kfye WtPa%9y3D}9z~JfX=d#Wzp$Pz7gF1Tv literal 0 HcmV?d00001 diff --git a/mods/dye/textures/dye_grey.png b/mods/dye/textures/dye_grey.png new file mode 100644 index 0000000000000000000000000000000000000000..5efb02807a4d22540539c7b7350326775ebd0672 GIT binary patch literal 169 zcmeAS@N?(olHy`uVBq!ia0y~yU=RRd4mJh`2Kmqb6B!s73OrpLLn;`PCHfQ!^f(rO z_Pmf2!*)o(jOp;x4~!*83(ERfnK>StvK-!KS^Vrze`hCS@`N;R%?`x?v&6FoJjNWs z#%c}OZrfy!x$j`v9$t{;Cf>eFWPMswTfz>8>1rm07QIVEFDp3Bc;V8yurPp$A)0rm V-kBT8p$rTR44$rjF6*2UngGF>I7R>f literal 0 HcmV?d00001 diff --git a/mods/dye/textures/dye_magenta.png b/mods/dye/textures/dye_magenta.png new file mode 100644 index 0000000000000000000000000000000000000000..c84df62c13b117d784e4c6930356b9091b361580 GIT binary patch literal 169 zcmeAS@N?(olHy`uVBq!ia0y~yU=RRd4mJh`2Kmqb6B!s73OrpLLn;`PCHfQ!^f(rO z_Pmf2!*)o(jOp;x4~!*83(ERfnK>StvK-zft<(EI+-O&mp~vQ>B1Z%?W^YK7Xp?MN zDJguwRQWdFW968p+u9bUi@Tj;yTXkfoeg3dyoG03%yGNal_{X;Q?lsD1q%&Eh8zCN WpX^K9^o@amfx*+&&t;ucLK6VkKRKNM literal 0 HcmV?d00001 diff --git a/mods/dye/textures/dye_orange.png b/mods/dye/textures/dye_orange.png new file mode 100644 index 0000000000000000000000000000000000000000..08449073e0964096518326a303ed0fa35f429d7c GIT binary patch literal 169 zcmeAS@N?(olHy`uVBq!ia0y~yU=RRd4mJh`2Kmqb6B!s73OrpLLn;`PCHfQ!^f(rO z_Pmf2!*)o(jOp;x4~!*83(ERfnK>StvK-#V&KdN7`>Ku2h8~-jiX0Kpn7tuQqD``8 zrKIoyQ{~%ykCkJZZfjeZF79@Y?Fu(`bT)`-@D`qBF~{vvSEhiXPsySq7c4Xw8N^tY W9%8f3`pv+=z~JfX=d#Wzp$P!Z#y6w@ literal 0 HcmV?d00001 diff --git a/mods/dye/textures/dye_pink.png b/mods/dye/textures/dye_pink.png new file mode 100644 index 0000000000000000000000000000000000000000..c3dec22a56d2f9e602b45f33009eebd0f6b670cf GIT binary patch literal 169 zcmeAS@N?(olHy`uVBq!ia0y~yU=RRd4mJh`2Kmqb6B!s73OrpLLn;`PCHfQ!^f(rO z_Pmf2!*)o(jOp;x4~!*83(ERfnK>StvK-#_-+TJM|M4L##}v*^3leZn$T>7iP$G%L z$vCg!LeB=-W9~axwucvFxrw*$5?PGhVoKE-VaSVu+mi WNayb?`3(#V3=E#GelF{r5}E*e1v^Rr literal 0 HcmV?d00001 diff --git a/mods/dye/textures/dye_red.png b/mods/dye/textures/dye_red.png new file mode 100644 index 0000000000000000000000000000000000000000..14eafbf46b9d42926f3a06e9a7874b31202bdc01 GIT binary patch literal 169 zcmeAS@N?(olHy`uVBq!ia0y~yU=RRd4mJh`2Kmqb6B!s73OrpLLn;`PCHfQ!^f(rO z_Pmf2!*)o(jOp;x4~!*83(ERfnK>StvK-zvSxD%AcVy&2i6u9KxRN-g_(mA>9OgN6 zrHAvutckhp9|iRez7?G_>*CRcdPi5!T%ahScVH=}uZ*8^=24Rl0X3_@qzsuU3=Fem Xdbjj$%=2SlU|{fc^>bP0l+XkKTzEP- literal 0 HcmV?d00001 diff --git a/mods/dye/textures/dye_violet.png b/mods/dye/textures/dye_violet.png new file mode 100644 index 0000000000000000000000000000000000000000..600cbb4452dbb5e6dc39f47bbd5474ca39fa89f4 GIT binary patch literal 169 zcmeAS@N?(olHy`uVBq!ia0y~yU=RRd4mJh`2Kmqb6B!s73OrpLLn;`PCHfQ!^f(rO z_Pmf2!*)o(jOp;x4~!*83(ERfnK>StvK%(!-`4j3+L@OLJeP7bSq)iEsjZQ0OJqyT zI>u6P_QbZsKRBj8_{QaT_Qj)s>5s1ZToB+9e{iWqjc@tHElE-?9Kv%o3{CjF7#MQ) X_kBCRUu_)&0|SGntDnm{r-UW|+BH1j literal 0 HcmV?d00001 diff --git a/mods/dye/textures/dye_white.png b/mods/dye/textures/dye_white.png new file mode 100644 index 0000000000000000000000000000000000000000..2a840a41d9a599efeedf91ba2537d782de9264ef GIT binary patch literal 170 zcmeAS@N?(olHy`uVBq!ia0y~yU=RRd4mJh`2Kmqb6B!s73O!vMLn;`PCHfQ!^f(rO z_Pmf2!*)o(jOp;x4~!*83(ERfnK>StvK-!4{{G(I`x}$lC7Mm5y&QQOH*sdSCC+f1 zG0TuK#(2|P1G_`2JN7mO8}G8Xvb4ff*o5UU>kgBJorg13*3MuPJmjM8#nam?#K7QI X@#9zSyv}q61_lOCS3j3^P6StvK-!Kf1l<5fBPf6#}v*^3leZ%kaK8OqC}d& zvNRut>peNvJ^clodFvls>CxjW)r>pK!h5iQQO`HyQGt}F_A= 3 +end + +farming.grow_plant = function(pos, elapsed) + local node = minetest.get_node(pos) + local name = node.name + local def = minetest.registered_nodes[name] + + if not def.next_plant then + -- disable timer for fully grown plant + return + end + + -- grow seed + if minetest.get_item_group(node.name, "seed") and def.fertility then + local soil_node = minetest.get_node_or_nil({x = pos.x, y = pos.y - 1, z = pos.z}) + if not soil_node then + tick_again(pos) + return + end + -- omitted is a check for light, we assume seeds can germinate in the dark. + for _, v in pairs(def.fertility) do + if minetest.get_item_group(soil_node.name, v) ~= 0 then + local placenode = {name = def.next_plant} + if def.place_param2 then + placenode.param2 = def.place_param2 + end + minetest.swap_node(pos, placenode) + if minetest.registered_nodes[def.next_plant].next_plant then + tick(pos) + return + end + end + end + + return + end + + if not (def.can_grow or farming.can_grow)(pos) then + tick_again(pos) + return + end + + -- check light + local light = minetest.get_node_light(pos) + if not light or light < def.minlight or light > def.maxlight then + tick_again(pos) + return + end + + -- grow + local placenode = {name = def.next_plant} + if def.place_param2 then + placenode.param2 = def.place_param2 + end + minetest.swap_node(pos, placenode) + + -- new timer needed? + if minetest.registered_nodes[def.next_plant].next_plant then + tick(pos) + end + return +end + +-- Register plants +farming.register_plant = function(name, def) + local mname = name:split(":")[1] + local pname = name:split(":")[2] + + -- Check def table + if not def.description then + def.description = S("Seed") + end + if not def.harvest_description then + def.harvest_description = pname:gsub("^%l", string.upper) + end + if not def.inventory_image then + def.inventory_image = "unknown_item.png" + end + if not def.steps then + return nil + end + if not def.minlight then + def.minlight = 1 + end + if not def.maxlight then + def.maxlight = 14 + end + if not def.fertility then + def.fertility = {} + end + + farming.registered_plants[pname] = def + + -- Register seed + local lbm_nodes = {mname .. ":seed_" .. pname} + local g = {seed = 1, snappy = 3, attached_node = 1, flammable = 2} + for k, v in pairs(def.fertility) do + g[v] = 1 + end + minetest.register_node(":" .. mname .. ":seed_" .. pname, { + description = def.description, + tiles = {def.inventory_image}, + inventory_image = def.inventory_image, + wield_image = def.inventory_image, + drawtype = "signlike", + groups = g, + paramtype = "light", + paramtype2 = "wallmounted", + place_param2 = def.place_param2 or nil, -- this isn't actually used for placement + walkable = false, + sunlight_propagates = true, + selection_box = { + type = "fixed", + fixed = {-0.5, -0.5, -0.5, 0.5, -5/16, 0.5}, + }, + fertility = def.fertility, + sounds = default.node_sound_dirt_defaults({ + dig = {name = "", gain = 0}, + dug = {name = "default_grass_footstep", gain = 0.2}, + place = {name = "default_place_node", gain = 0.25}, + }), + + on_place = function(itemstack, placer, pointed_thing) + local under = pointed_thing.under + local node = minetest.get_node(under) + local udef = minetest.registered_nodes[node.name] + if udef and udef.on_rightclick and + not (placer and placer:is_player() and + placer:get_player_control().sneak) then + return udef.on_rightclick(under, node, placer, itemstack, + pointed_thing) or itemstack + end + + return farming.place_seed(itemstack, placer, pointed_thing, mname .. ":seed_" .. pname) + end, + next_plant = mname .. ":" .. pname .. "_1", + on_timer = farming.grow_plant, + minlight = def.minlight, + maxlight = def.maxlight, + }) + + -- Register harvest + minetest.register_craftitem(":" .. mname .. ":" .. pname, { + description = def.harvest_description, + inventory_image = mname .. "_" .. pname .. ".png", + groups = def.groups or {flammable = 2}, + }) + + -- Register growing steps + for i = 1, def.steps do + local base_rarity = 1 + if def.steps ~= 1 then + base_rarity = 8 - (i - 1) * 7 / (def.steps - 1) + end + local drop = { + items = { + {items = {mname .. ":" .. pname}, rarity = base_rarity}, + {items = {mname .. ":" .. pname}, rarity = base_rarity * 2}, + {items = {mname .. ":seed_" .. pname}, rarity = base_rarity}, + {items = {mname .. ":seed_" .. pname}, rarity = base_rarity * 2}, + } + } + local nodegroups = {snappy = 3, flammable = 2, plant = 1, not_in_creative_inventory = 1, attached_node = 1} + nodegroups[pname] = i + + local next_plant = nil + + if i < def.steps then + next_plant = mname .. ":" .. pname .. "_" .. (i + 1) + lbm_nodes[#lbm_nodes + 1] = mname .. ":" .. pname .. "_" .. i + end + + minetest.register_node(":" .. mname .. ":" .. pname .. "_" .. i, { + drawtype = "plantlike", + waving = 1, + tiles = {mname .. "_" .. pname .. "_" .. i .. ".png"}, + paramtype = "light", + paramtype2 = def.paramtype2 or nil, + place_param2 = def.place_param2 or nil, + walkable = false, + buildable_to = true, + drop = drop, + selection_box = { + type = "fixed", + fixed = {-0.5, -0.5, -0.5, 0.5, -5/16, 0.5}, + }, + groups = nodegroups, + sounds = default.node_sound_leaves_defaults(), + next_plant = next_plant, + on_timer = farming.grow_plant, + minlight = def.minlight, + maxlight = def.maxlight, + }) + end + + -- replacement LBM for pre-nodetimer plants + minetest.register_lbm({ + name = ":" .. mname .. ":start_nodetimer_" .. pname, + nodenames = lbm_nodes, + action = function(pos, node) + tick_again(pos) + end, + }) + + -- Return + local r = { + seed = mname .. ":seed_" .. pname, + harvest = mname .. ":" .. pname + } + return r +end diff --git a/mods/farming/hoes.lua b/mods/farming/hoes.lua new file mode 100644 index 0000000..d005f6d --- /dev/null +++ b/mods/farming/hoes.lua @@ -0,0 +1,54 @@ +-- farming/hoes.lua + +-- support for MT game translation. +local S = farming.get_translator + +farming.register_hoe(":farming:hoe_wood", { + description = S("Wooden Hoe"), + inventory_image = "farming_tool_woodhoe.png", + max_uses = 30, + material = "group:wood", + groups = {hoe = 1, flammable = 2}, +}) + +farming.register_hoe(":farming:hoe_stone", { + description = S("Stone Hoe"), + inventory_image = "farming_tool_stonehoe.png", + max_uses = 90, + material = "group:stone", + groups = {hoe = 1} +}) + +farming.register_hoe(":farming:hoe_steel", { + description = S("Steel Hoe"), + inventory_image = "farming_tool_steelhoe.png", + max_uses = 500, + material = "default:steel_ingot", + groups = {hoe = 1} +}) + +-- The following are deprecated by removing the 'material' field to prevent +-- crafting and removing from creative inventory, to cause them to eventually +-- disappear from worlds. The registrations should be removed in a future +-- release. + +farming.register_hoe(":farming:hoe_bronze", { + description = S("Bronze Hoe"), + inventory_image = "farming_tool_bronzehoe.png", + max_uses = 220, + groups = {hoe = 1, not_in_creative_inventory = 1}, +}) + +farming.register_hoe(":farming:hoe_mese", { + description = S("Mese Hoe"), + inventory_image = "farming_tool_mesehoe.png", + max_uses = 350, + groups = {hoe = 1, not_in_creative_inventory = 1}, +}) + +farming.register_hoe(":farming:hoe_diamond", { + description = S("Diamond Hoe"), + inventory_image = "farming_tool_diamondhoe.png", + max_uses = 500, + groups = {hoe = 1, not_in_creative_inventory = 1}, +}) diff --git a/mods/farming/init.lua b/mods/farming/init.lua new file mode 100644 index 0000000..d328cb4 --- /dev/null +++ b/mods/farming/init.lua @@ -0,0 +1,171 @@ +-- farming/init.lua + +-- Load support for MT game translation. +local S = minetest.get_translator("farming") + +-- Global farming namespace + +farming = {} +farming.path = minetest.get_modpath("farming") +farming.get_translator = S + +-- Load files + +dofile(farming.path .. "/api.lua") +dofile(farming.path .. "/nodes.lua") +dofile(farming.path .. "/hoes.lua") + + +-- Wheat + +farming.register_plant("farming:wheat", { + description = S("Wheat Seed"), + harvest_description = S("Wheat"), + paramtype2 = "meshoptions", + inventory_image = "farming_wheat_seed.png", + steps = 8, + minlight = 13, + maxlight = default.LIGHT_MAX, + fertility = {"grassland"}, + groups = {food_wheat = 1, flammable = 4}, + place_param2 = 3, +}) + +minetest.register_craftitem("farming:flour", { + description = S("Flour"), + inventory_image = "farming_flour.png", + groups = {food_flour = 1, flammable = 1}, +}) + +minetest.register_craftitem("farming:bread", { + description = S("Bread"), + inventory_image = "farming_bread.png", + on_use = minetest.item_eat(5), + groups = {food_bread = 1, flammable = 2}, +}) + +minetest.register_craft({ + type = "shapeless", + output = "farming:flour", + recipe = {"farming:wheat", "farming:wheat", "farming:wheat", "farming:wheat"} +}) + +minetest.register_craft({ + type = "cooking", + cooktime = 15, + output = "farming:bread", + recipe = "farming:flour" +}) + + +-- Cotton + +farming.register_plant("farming:cotton", { + description = S("Cotton Seed"), + harvest_description = S("Cotton"), + inventory_image = "farming_cotton_seed.png", + steps = 8, + minlight = 13, + maxlight = default.LIGHT_MAX, + fertility = {"grassland", "desert"}, + groups = {flammable = 4}, +}) + +minetest.register_decoration({ + name = "farming:cotton_wild", + deco_type = "simple", + place_on = {"default:dry_dirt_with_dry_grass"}, + sidelen = 16, + noise_params = { + offset = -0.1, + scale = 0.1, + spread = {x = 50, y = 50, z = 50}, + seed = 4242, + octaves = 3, + persist = 0.7 + }, + biomes = {"savanna"}, + y_max = 31000, + y_min = 1, + decoration = "farming:cotton_wild", +}) + +minetest.register_craftitem("farming:string", { + description = S("String"), + inventory_image = "farming_string.png", + groups = {flammable = 2}, +}) + +minetest.register_craft({ + output = "wool:white", + recipe = { + {"farming:cotton", "farming:cotton"}, + {"farming:cotton", "farming:cotton"}, + } +}) + +minetest.register_craft({ + output = "farming:string 2", + recipe = { + {"farming:cotton"}, + {"farming:cotton"}, + } +}) + + +-- Straw + +minetest.register_craft({ + output = "farming:straw 3", + recipe = { + {"farming:wheat", "farming:wheat", "farming:wheat"}, + {"farming:wheat", "farming:wheat", "farming:wheat"}, + {"farming:wheat", "farming:wheat", "farming:wheat"}, + } +}) + +minetest.register_craft({ + output = "farming:wheat 3", + recipe = { + {"farming:straw"}, + } +}) + + +-- Fuels + +minetest.register_craft({ + type = "fuel", + recipe = "farming:wheat", + burntime = 1, +}) + +minetest.register_craft({ + type = "fuel", + recipe = "farming:cotton", + burntime = 1, +}) + +minetest.register_craft({ + type = "fuel", + recipe = "farming:string", + burntime = 1, +}) + +minetest.register_craft({ + type = "fuel", + recipe = "farming:hoe_wood", + burntime = 5, +}) + + +-- Register farming items as dungeon loot + +if minetest.global_exists("dungeon_loot") then + dungeon_loot.register({ + {name = "farming:string", chance = 0.5, count = {1, 8}}, + {name = "farming:wheat", chance = 0.5, count = {2, 5}}, + {name = "farming:seed_cotton", chance = 0.4, count = {1, 4}, + types = {"normal"}}, + }) +end diff --git a/mods/farming/license.txt b/mods/farming/license.txt new file mode 100644 index 0000000..a90d808 --- /dev/null +++ b/mods/farming/license.txt @@ -0,0 +1,95 @@ +License of source code +---------------------- + +The MIT License (MIT) +Copyright (C) 2012-2016 PilzAdam +Copyright (C) 2014-2016 webdesigner97 +Copyright (C) 2012-2016 Various Minetest Game developers and contributors + +Permission is hereby granted, free of charge, to any person obtaining a copy of this +software and associated documentation files (the "Software"), to deal in the Software +without restriction, including without limitation the rights to use, copy, modify, merge, +publish, distribute, sublicense, and/or sell copies of the Software, and to permit +persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or +substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, +INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR +PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE +FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR +OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER +DEALINGS IN THE SOFTWARE. + +For more details: +https://opensource.org/licenses/MIT + + +License of media (textures) +--------------------------- + +Attribution 3.0 Unported (CC BY 3.0) +Copyright (C) 2012-2016 PilzAdam +Copyright (C) 2014-2016 BlockMen +Copyright (C) 2015-2016 MasterGollum +Copyright (C) 2015-2016 Gambit + +You are free to: +Share — copy and redistribute the material in any medium or format. +Adapt — remix, transform, and build upon the material for any purpose, even commercially. +The licensor cannot revoke these freedoms as long as you follow the license terms. + +Under the following terms: + +Attribution — You must give appropriate credit, provide a link to the license, and +indicate if changes were made. You may do so in any reasonable manner, but not in any way +that suggests the licensor endorses you or your use. + +No additional restrictions — You may not apply legal terms or technological measures that +legally restrict others from doing anything the license permits. + +Notices: + +You do not have to comply with the license for elements of the material in the public +domain or where your use is permitted by an applicable exception or limitation. +No warranties are given. The license may not give you all of the permissions necessary +for your intended use. For example, other rights such as publicity, privacy, or moral +rights may limit how you use the material. + +For more details: +http://creativecommons.org/licenses/by/3.0/ + +----------------------- + +Attribution-ShareAlike 3.0 Unported (CC BY-SA 3.0) +Copyright (C) 2017 Napiophelios +Copyright (C) 2020 Extex101 + +You are free to: +Share — copy and redistribute the material in any medium or format. +Adapt — remix, transform, and build upon the material for any purpose, even commercially. +The licensor cannot revoke these freedoms as long as you follow the license terms. + +Under the following terms: + +Attribution — You must give appropriate credit, provide a link to the license, and +indicate if changes were made. You may do so in any reasonable manner, but not in any way +that suggests the licensor endorses you or your use. + +ShareAlike — If you remix, transform, or build upon the material, you must distribute +your contributions under the same license as the original. + +No additional restrictions — You may not apply legal terms or technological measures that +legally restrict others from doing anything the license permits. + +Notices: + +You do not have to comply with the license for elements of the material in the public +domain or where your use is permitted by an applicable exception or limitation. +No warranties are given. The license may not give you all of the permissions necessary +for your intended use. For example, other rights such as publicity, privacy, or moral +rights may limit how you use the material. + +For more details: +http://creativecommons.org/licenses/by-sa/3.0/ diff --git a/mods/farming/locale/farming.bg.tr b/mods/farming/locale/farming.bg.tr new file mode 100644 index 0000000..c46033e --- /dev/null +++ b/mods/farming/locale/farming.bg.tr @@ -0,0 +1,28 @@ +# textdomain: farming +Hoe=Мотика +Seed=Семе +Wooden Hoe=Дървена мотика +Stone Hoe=Каменна мотика +Steel Hoe=Стоманена мотика +Bronze Hoe=Бронзова мотика +Mese Hoe=Мотика от кристала мезе +Diamond Hoe=Диамантена мотика +Wheat Seed=Пшеничено семе +Wheat=Пшеница +Flour=Брашно +Bread=Хляб +Cotton Seed=Памучено семе +Cotton=Памук +String=Връв +Soil=Почва +Wet Soil=Влажна почва +Savanna Soil=Почва от саваната +Wet Savanna Soil=Влажна почва от саваната +Desert Sand Soil=Пустинна пясъчна почва +Wet Desert Sand Soil=Влажна пустинна пясъчна почва +Straw=Слама +Straw Stair=Сламено стълбище +Inner Straw Stair=Вътрешно сламено стълбище +Outer Straw Stair=Външно сламено стълбище +Straw Slab=Сламена плоча +Wild Cotton=Див памук diff --git a/mods/farming/locale/farming.da.tr b/mods/farming/locale/farming.da.tr new file mode 100644 index 0000000..c3ef65d --- /dev/null +++ b/mods/farming/locale/farming.da.tr @@ -0,0 +1,28 @@ +# textdomain: farming +Hoe=Hakke +Seed=Sæd +Wooden Hoe=Træhakke +Stone Hoe=Stenhakke +Steel Hoe=Stålhakke +Bronze Hoe=Bronzehakke +Mese Hoe=Mesehakke +Diamond Hoe=Diamandhakke +Wheat Seed=Hvedekorn +Wheat=Hvede +Flour=Mel +Bread=Brød +Cotton Seed=Bomuldsfrå +Cotton=Bomuld +String=Streng +Soil=Muld +Wet Soil=Våd muld +Savanna Soil=Savannejord +Wet Savanna Soil=Våd savannejord +Desert Sand Soil=Ørkensandsjord +Wet Desert Sand Soil=Våd ørkensandsjord +Straw=Halm +Straw Stair=Halmtrappe +Inner Straw Stair=Indre halmtrappe +Outer Straw Stair=Ydre halmtrappe +Straw Slab=Halmplade +Wild Cotton=Vild bomuld diff --git a/mods/farming/locale/farming.de.tr b/mods/farming/locale/farming.de.tr new file mode 100644 index 0000000..b16748d --- /dev/null +++ b/mods/farming/locale/farming.de.tr @@ -0,0 +1,28 @@ +# textdomain: farming +Hoe=Hacke +Seed=Samen +Wooden Hoe=Holzhacke +Stone Hoe=Steinhacke +Steel Hoe=Stahlhacke +Bronze Hoe=Bronzehacke +Mese Hoe=Mesehacke +Diamond Hoe=Diamanthacke +Wheat Seed=Weizensamen +Wheat=Weizen +Flour=Mehl +Bread=Brot +Cotton Seed=Baumwollsamen +Cotton=Baumwolle +String=Faden +Soil=Ackerboden +Wet Soil=Nasser Ackerboden +Savanna Soil=Savannenackerboden +Wet Savanna Soil=Nasser Savannenackerboden +Desert Sand Soil=Wüstensandackerboden +Wet Desert Sand Soil=Nasser Wüstensandackerboden +Straw=Stroh +Straw Stair=Strohtreppe +Inner Straw Stair=Innere Strohtreppe +Outer Straw Stair=Äußere Strohtreppe +Straw Slab=Strohplatte +Wild Cotton=Wilde Baumwolle diff --git a/mods/farming/locale/farming.eo.tr b/mods/farming/locale/farming.eo.tr new file mode 100644 index 0000000..887ef00 --- /dev/null +++ b/mods/farming/locale/farming.eo.tr @@ -0,0 +1,28 @@ +# textdomain: farming +Hoe=Sarkilo +Seed=Semo +Wooden Hoe=Ligna sarkilo +Stone Hoe=Ŝtona sarkilo +Steel Hoe=Ŝtala sarkilo +Bronze Hoe=Bronza sarkilo +Mese Hoe=Mesea sarkilo +Diamond Hoe=Diamanta sarkilo +Wheat Seed=Tritika semo +Wheat=Tritiko +Flour=Faruno +Bread=Pano +Cotton Seed=Katuna semo +Cotton=Katuno +String=Ŝnuro +Soil=Tero +Wet Soil=Malseka tero +Savanna Soil=Savana tero +Wet Savanna Soil=Malseka savana tero +Desert Sand Soil=Dezerta sablo tero +Wet Desert Sand Soil=Malseka dezerta sablo tero +Straw=Pajlo +Straw Stair=Pajla ŝtupo +Inner Straw Stair=Interna pajla ŝtupo +Outer Straw Stair=Ekstera pajla ŝtupo +Straw Slab=Pajla plato +Wild Cotton=Sovaĝa kotonujo diff --git a/mods/farming/locale/farming.es.tr b/mods/farming/locale/farming.es.tr new file mode 100644 index 0000000..b17a452 --- /dev/null +++ b/mods/farming/locale/farming.es.tr @@ -0,0 +1,34 @@ +# textdomain: farming +Hoe= +Seed= +Wooden Hoe=Azada de madera +Stone Hoe=Azada de piedra +Steel Hoe=Azada de acero +Bronze Hoe=Azada de bronce +Mese Hoe=Azada de mese +Diamond Hoe=Azada de diamante +Wheat Seed=Semilla de trigo +Wheat=Trigo +Flour=Harina +Bread=Pan +Cotton Seed=Semilla de algodón +Cotton=Algodón +String=Hilo +Soil=Tierra de cultivo +Wet Soil=Tierra de cultivo humeda +Savanna Soil= +Wet Savanna Soil= +Desert Sand Soil=Tierra de cultivo de arena de desierto +Wet Desert Sand Soil=Tierra de cultivo de arena de desierto humeda +Straw=Paja +Straw Stair=Escalera de paja +Inner Straw Stair=Escalera de paja interior +Outer Straw Stair=Escalera de paja exterior +Straw Slab=Losa de paja +Wild Cotton=Algodón silvestre + + +##### not used anymore ##### + +Dry Soil=Tierra de cultivo seca +Wet Dry Soil=Tierra de cultivo seca-humeda diff --git a/mods/farming/locale/farming.eu.tr b/mods/farming/locale/farming.eu.tr new file mode 100644 index 0000000..be160a5 --- /dev/null +++ b/mods/farming/locale/farming.eu.tr @@ -0,0 +1,34 @@ +# textdomain: farming +Hoe=Aitzurra +Seed=Hazia +Wooden Hoe=Zurezko aitzurra +Stone Hoe=Harrizko aitzurra +Steel Hoe=Altzairuzko aitzurra +Bronze Hoe=Brontzezko aitzurra +Mese Hoe=Hileko aitzurra +Diamond Hoe=Diamantezko aitzurra +Wheat Seed=Gari-hazia +Wheat=Garia +Flour=Irina +Bread=Ogia +Cotton Seed=Kotoi-hazia +Cotton=Kotoia +String=Haria +Soil=Laborantza-lurra +Wet Soil=Labore-lur ketsua +Savanna Soil=Sabanako lurra +Wet Savanna Soil=Sabanako lur hezea +Desert Sand Soil=Basamortuko harea lantzeko lurra +Wet Desert Sand Soil=Basamortuko harea lantzeko lur hezea +Straw=Lastoa +Straw Stair=Lastozko eskailera +Inner Straw Stair=Barruko lastozko eskailera +Outer Straw Stair=Kanpoko lastozko eskailera +Straw Slab=Lastozko lauza +Wild Cotton=Basa-kotoia + + +##### not used anymore ##### + +Dry Soil=Labore lehorreko lurra +Wet Dry Soil=Lehor-ke laborantzako lurra diff --git a/mods/farming/locale/farming.fr.tr b/mods/farming/locale/farming.fr.tr new file mode 100644 index 0000000..826949e --- /dev/null +++ b/mods/farming/locale/farming.fr.tr @@ -0,0 +1,34 @@ +# textdomain: farming +Hoe=Houe +Seed=Grain +Wooden Hoe=Houe en bois +Stone Hoe=Houe en pierre +Steel Hoe=Houe en acier +Bronze Hoe=Houe en bronze +Mese Hoe=Houe en Mese +Diamond Hoe=Houe en diamant +Wheat Seed=Grain de blé +Wheat=Blé +Flour=Farine +Bread=Pain +Cotton Seed=Graine de coton +Cotton=Coton +String=Ficelle +Soil=Sol +Wet Soil=Sol humide +Savanna Soil=Sol de la savanne +Wet Savanna Soil=Sol de la savanne humide +Desert Sand Soil=Sol de sable du désert +Wet Desert Sand Soil=Sol de sable du désert humide +Straw=Paille +Straw Stair=Escalier de paille +Inner Straw Stair=Escalier intérieur en paille +Outer Straw Stair=Escalier extérieur en paille +Straw Slab=Dalle de paille +Wild Cotton=Coton sauvage + + +##### not used anymore ##### + +Dry Soil=Sol sec +Wet Dry Soil=Sol sec et humide diff --git a/mods/farming/locale/farming.hu.tr b/mods/farming/locale/farming.hu.tr new file mode 100644 index 0000000..28b9335 --- /dev/null +++ b/mods/farming/locale/farming.hu.tr @@ -0,0 +1,28 @@ +# textdomain: farming +Hoe=Kapa +Seed=Mag +Wooden Hoe=Fa kapa +Stone Hoe=Kő kapa +Steel Hoe=Acél kapa +Bronze Hoe=Bronz kapa +Mese Hoe=Mese kapa +Diamond Hoe=Gyémánt kapa +Wheat Seed=Búzamag +Wheat=Búza +Flour=Liszt +Bread=Kenyér +Cotton Seed=Gyapotmag +Cotton=Gyapot +String=Szál +Soil=Talaj +Wet Soil=Nedves talaj +Savanna Soil=Szavanna talaj +Wet Savanna Soil=Nedves szavanna talaj +Desert Sand Soil=Sivatagi homok talaj +Wet Desert Sand Soil=Nedves sivatagi homok talaj +Straw=Szalma +Straw Stair=Szalma lépcső +Inner Straw Stair=Belső szalma lépcső +Outer Straw Stair=Külső szalma lépcső +Straw Slab=Szalma lap +Wild Cotton=Vad gyapot diff --git a/mods/farming/locale/farming.id.tr b/mods/farming/locale/farming.id.tr new file mode 100644 index 0000000..7b27680 --- /dev/null +++ b/mods/farming/locale/farming.id.tr @@ -0,0 +1,28 @@ +# textdomain: farming +Hoe=Cangkul +Seed=Benih +Wooden Hoe=Cangkul Kayu +Stone Hoe=Cangkul Batu +Steel Hoe=Cangkul Baja +Bronze Hoe=Cangkul Perunggu +Mese Hoe=Cangkul Mese +Diamond Hoe=Cangkul Berlian +Wheat Seed=Benih Gandum +Wheat=Gandum +Flour=Tepung +Bread=Roti +Cotton Seed=Benih Kapas +Cotton=Kapas +String=Benang +Soil=Tanah Tanam +Wet Soil=Tanah Tanam Basah +Savanna Soil=Tanah Tanam Sabana +Wet Savanna Soil=Tanah Tanam Sabana Basah +Desert Sand Soil=Pasir Tanam Gurun +Wet Desert Sand Soil=Pasir Tanam Gurun Basah +Straw=Jerami +Straw Stair=Tangga Jerami +Inner Straw Stair=Tangga Jerami Dalam +Outer Straw Stair=Tangga Jerami Luar +Straw Slab=Lempengan Jerami +Wild Cotton=Kapas Liar diff --git a/mods/farming/locale/farming.it.tr b/mods/farming/locale/farming.it.tr new file mode 100644 index 0000000..aeb9c0a --- /dev/null +++ b/mods/farming/locale/farming.it.tr @@ -0,0 +1,34 @@ +# textdomain: farming +Hoe= +Seed= +Wooden Hoe=Zappa di legno +Stone Hoe=Zappa di pietra +Steel Hoe=Zappa d'acciaio +Bronze Hoe=Zappa di bronzo +Mese Hoe=Zappa di mese +Diamond Hoe=Zappa di diamante +Wheat Seed=Seme di grano +Wheat=Grano +Flour=Farina +Bread=Pane +Cotton Seed=Seme di cotone +Cotton=Cotone +String=Filo +Soil=Terreno +Wet Soil=Terreno bagnato +Savanna Soil= +Wet Savanna Soil= +Desert Sand Soil=Terreno di sabbia del deserto +Wet Desert Sand Soil=Terreno bagnato di sabbia del deserto +Straw=Paglia +Straw Stair=Scala di paglia +Inner Straw Stair=Scala di paglia interna +Outer Straw Stair=Scala di paglia esterna +Straw Slab=Lastra di paglia +Wild Cotton= + + +##### not used anymore ##### + +Dry Soil=Terreno asciutto +Wet Dry Soil=Terreno asciutto bagnato diff --git a/mods/farming/locale/farming.ja.tr b/mods/farming/locale/farming.ja.tr new file mode 100644 index 0000000..887d839 --- /dev/null +++ b/mods/farming/locale/farming.ja.tr @@ -0,0 +1,28 @@ +# textdomain: farming +Hoe=クワ +Seed=種 +Wooden Hoe=木製のクワ +Stone Hoe=石のクワ +Steel Hoe=鉄のクワ +Bronze Hoe=青銅のクワ +Mese Hoe=メセのクワ +Diamond Hoe=ダイヤモンドのクワ +Wheat Seed=小麦の種 +Wheat=小麦 +Flour=小麦粉 +Bread=パン +Cotton Seed=綿の種 +Cotton=綿 +String=糸 +Soil=土壌 +Wet Soil=湿った土壌 +Savanna Soil=サバンナの土壌 +Wet Savanna Soil=湿ったサバンナの土壌 +Desert Sand Soil=砂漠の砂の土壌 +Wet Desert Sand Soil=湿った砂漠の砂の土壌 +Straw=ワラ +Straw Stair=ワラの階段 +Inner Straw Stair=ワラの凹階段 +Outer Straw Stair=ワラの凸階段 +Straw Slab=ワラの厚板 +Wild Cotton=天然綿 diff --git a/mods/farming/locale/farming.jbo.tr b/mods/farming/locale/farming.jbo.tr new file mode 100644 index 0000000..51bb9db --- /dev/null +++ b/mods/farming/locale/farming.jbo.tr @@ -0,0 +1,28 @@ +# textdomain: farming +Hoe=lo te plixa +Seed=lo tsiju +Wooden Hoe=lo mudri te plixa +Stone Hoe=lo rokci te plixa +Steel Hoe=lo gasta te plixa +Bronze Hoe=lo ransu te plixa +Mese Hoe=lo za'e kunrmese te plixa +Diamond Hoe=lo tabjme te plixa +Wheat Seed=lo tsiju be lo maxri +Wheat=lo maxri +Flour=lo grupu'o +Bread=lo nanba +Cotton Seed=lo tsiju be lo mapni +Cotton=lo mapni +String=lo skori +Soil=lo ferti dertu +Wet Soil=lo cilmo ke ferti dertu +Savanna Soil=lo ferti ke sudytu'a dertu +Wet Savanna Soil=lo cilmo ke ferti ke sudytu'a dertu +Desert Sand Soil=lo ferti ke cantu'a canre +Wet Desert Sand Soil=lo cilmo ke ferti ke cantu'a canre +Straw=lo sudysrasu +Straw Stair=lo sudysrasu serti +Inner Straw Stair=lo zo'i sudysrasu serti +Outer Straw Stair=lo ze'o sudysrasu serti +Straw Slab=lo sudysrasu ke xadba bliku +Wild Cotton=lo cilce ke mapni spati diff --git a/mods/farming/locale/farming.lv.tr b/mods/farming/locale/farming.lv.tr new file mode 100644 index 0000000..b1f9546 --- /dev/null +++ b/mods/farming/locale/farming.lv.tr @@ -0,0 +1,28 @@ +# textdomain: farming +Hoe=Kaplis +Seed=Sēklas +Wooden Hoe=Koka kaplis +Stone Hoe=Akmens kaplis +Steel Hoe=Tērauda kaplis +Bronze Hoe=Bronzas kaplis +Mese Hoe=Mēzes kaplis +Diamond Hoe=Dimanta kaplis +Wheat Seed=Kviešu sēkla +Wheat=Kvieši +Flour=Milti +Bread=Maize +Cotton Seed=Kokvilnas sēklas +Cotton=Kokvilna +String=Stiegra +Soil=Augsne +Wet Soil=Slapja augsne +Savanna Soil=Savannas augsne +Wet Savanna Soil=Slapja savannas augsne +Desert Sand Soil=Tuksneša smilts augsne +Wet Desert Sand Soil=Slapja tuksneša smilts augsne +Straw=Salmi +Straw Stair=Salmu pakāpiens +Inner Straw Stair=Iekšējais salmu pakāpiens +Outer Straw Stair=Ārējais salmu pakāpiens +Straw Slab=Salmu plātne +Wild Cotton=Savvaļas kokvilna diff --git a/mods/farming/locale/farming.ms.tr b/mods/farming/locale/farming.ms.tr new file mode 100644 index 0000000..5b8315b --- /dev/null +++ b/mods/farming/locale/farming.ms.tr @@ -0,0 +1,34 @@ +# textdomain: farming +Hoe=Cangkul +Seed=Benih +Wooden Hoe=Cangkul Kayu +Stone Hoe=Cangkul Batu +Steel Hoe=Cangkul Keluli +Bronze Hoe=Cangkul Gangsa +Mese Hoe=Cangkul Mese +Diamond Hoe=Cangkul Intan +Wheat Seed=Benih Gandum +Wheat=Gandum +Flour=Tepung +Bread=Roti +Cotton Seed=Benih Kapas +Cotton=Kapas +String=Benang +Soil=Tanih +Wet Soil=Tanih Lembap +Savanna Soil=Tanih Savana +Wet Savanna Soil=Tanih Savana Lembap +Desert Sand Soil=Tanih Pasir Gurun +Wet Desert Sand Soil=Tanih Pasir Gurun Lembap +Straw=Jerami +Straw Stair=Tangga Jerami +Inner Straw Stair=Tangga Jerami Dalaman +Outer Straw Stair=Tangga Jerami Luaran +Straw Slab=Papak Jerami +Wild Cotton=Kapuk + + +##### not used anymore ##### + +Dry Soil=Tanih Kering +Wet Dry Soil=Tanih Kering Lembap diff --git a/mods/farming/locale/farming.pl.tr b/mods/farming/locale/farming.pl.tr new file mode 100644 index 0000000..ffde3b7 --- /dev/null +++ b/mods/farming/locale/farming.pl.tr @@ -0,0 +1,28 @@ +# textdomain: farming +Hoe=Motyka +Seed=Nasiona +Wooden Hoe=Drewniana motyka +Stone Hoe=Kamienna motyka +Steel Hoe=Stalowa motyka +Bronze Hoe=Brązowa motyka +Mese Hoe=Mesowa motyka +Diamond Hoe=Diamentowa motyka +Wheat Seed=Nasiona pszenicy +Wheat=Pszenica +Flour=Mąka +Bread=Chleb +Cotton Seed=Nasiona bawełny +Cotton=Bawełna +String=Nić +Soil=Gleba +Wet Soil=Mokra gleba +Savanna Soil=Sawannowa gleba +Wet Savanna Soil=Mokra sawannowa gleba +Desert Sand Soil=Pustynno-piaszczysta gleba +Wet Desert Sand Soil=Mokra pustynno-piaszczysta gleba +Straw=Słoma +Straw Stair=Słomiane schody +Inner Straw Stair=Wewnętrzne słomiane schody +Outer Straw Stair=Zewnętrzne słomiane schody +Straw Slab=Słomiany półblok +Wild Cotton=Dzika bawełna diff --git a/mods/farming/locale/farming.pt.tr b/mods/farming/locale/farming.pt.tr new file mode 100644 index 0000000..fb0a83c --- /dev/null +++ b/mods/farming/locale/farming.pt.tr @@ -0,0 +1,28 @@ +# textdomain: farming +Hoe=Enxada +Seed=Semente +Wooden Hoe=Enxada de Madeira +Stone Hoe=Enxada de Pedra +Steel Hoe=Enxada de Aço +Bronze Hoe=Enxada de Bronze +Mese Hoe=Enxada de Mese +Diamond Hoe=Enxada de Diamante +Wheat Seed=Semente de Trigo +Wheat=Trigo +Flour=Farinha +Bread=Pão +Cotton Seed=Semente de Algodão +Cotton=Algodão +String=Fio +Soil=Solo +Wet Soil=Solo Molhado +Savanna Soil=Solo da Savana +Wet Savanna Soil=Solo da Savana Molhado +Desert Sand Soil=Solo Arenoso do Deserto +Wet Desert Sand Soil=Solo Arenoso do Deserto Molhado +Straw=Palha +Straw Stair=Escada de Palha +Inner Straw Stair=Escada de Palha Externa +Outer Straw Stair=Escada de Palha Interna +Straw Slab=Laje de Palha +Wild Cotton=Algodão Selvagem diff --git a/mods/farming/locale/farming.pt_BR.tr b/mods/farming/locale/farming.pt_BR.tr new file mode 100644 index 0000000..fb0a83c --- /dev/null +++ b/mods/farming/locale/farming.pt_BR.tr @@ -0,0 +1,28 @@ +# textdomain: farming +Hoe=Enxada +Seed=Semente +Wooden Hoe=Enxada de Madeira +Stone Hoe=Enxada de Pedra +Steel Hoe=Enxada de Aço +Bronze Hoe=Enxada de Bronze +Mese Hoe=Enxada de Mese +Diamond Hoe=Enxada de Diamante +Wheat Seed=Semente de Trigo +Wheat=Trigo +Flour=Farinha +Bread=Pão +Cotton Seed=Semente de Algodão +Cotton=Algodão +String=Fio +Soil=Solo +Wet Soil=Solo Molhado +Savanna Soil=Solo da Savana +Wet Savanna Soil=Solo da Savana Molhado +Desert Sand Soil=Solo Arenoso do Deserto +Wet Desert Sand Soil=Solo Arenoso do Deserto Molhado +Straw=Palha +Straw Stair=Escada de Palha +Inner Straw Stair=Escada de Palha Externa +Outer Straw Stair=Escada de Palha Interna +Straw Slab=Laje de Palha +Wild Cotton=Algodão Selvagem diff --git a/mods/farming/locale/farming.ru.tr b/mods/farming/locale/farming.ru.tr new file mode 100644 index 0000000..8ec25f7 --- /dev/null +++ b/mods/farming/locale/farming.ru.tr @@ -0,0 +1,28 @@ +# textdomain: farming +Hoe=Мотыга +Seed=Семена +Wooden Hoe=Деревянная мотыга +Stone Hoe=Каменная мотыга +Steel Hoe=Стальная мотыга +Bronze Hoe=Бронзовая мотыга +Mese Hoe=Мезовая мотыга +Diamond Hoe=Алмазная мотыга +Wheat Seed=Семена пшеницы +Wheat=Пшеница +Flour=Мука +Bread=Хлеб +Cotton Seed=Семена хлопчатника +Cotton=Хлопок +String=Нить +Soil=Почва +Wet Soil=Влажная почва +Savanna Soil=Саванная почва +Wet Savanna Soil=Влажная саванная почва +Desert Sand Soil=Пустынная песчаная почва +Wet Desert Sand Soil=Влажная пустынная песчаная почва +Straw=Солома +Straw Stair=Соломенные ступени +Inner Straw Stair=Внутренние соломенные ступени +Outer Straw Stair=Внешние соломенные ступени +Straw Slab=Соломенная плита +Wild Cotton=Дикий хлопчатник diff --git a/mods/farming/locale/farming.sk.tr b/mods/farming/locale/farming.sk.tr new file mode 100644 index 0000000..2caa4b5 --- /dev/null +++ b/mods/farming/locale/farming.sk.tr @@ -0,0 +1,28 @@ +# textdomain: farming +Hoe=Motyka +Seed=Semienko +Wooden Hoe=Drevená motyka +Stone Hoe=Kamenná motyka +Steel Hoe=Oceľová motyka +Bronze Hoe=Bronzová motyka +Mese Hoe=Mese motyka +Diamond Hoe=Diamantová motyka +Wheat Seed=Pšeničné semienko +Wheat=Pšenica +Flour=Múka +Bread=Chlieb +Cotton Seed=Bavlnené semienko +Cotton=Bavlna +String=Šňúra +Soil=Zemina +Wet Soil=Mokrá zemina +Savanna Soil=Zemina zo savany +Wet Savanna Soil=Morká zemina zo savany +Desert Sand Soil=Zemina s púšte +Wet Desert Sand Soil=Mokrá zemina s púšte +Straw=Slama +Straw Stair=Slamenné schody +Inner Straw Stair=Vnútorné slamenné schodisko +Outer Straw Stair=Vonkajšie slamenné schodisko +Straw Slab=Slamenná doska +Wild Cotton=Divoká bavlna diff --git a/mods/farming/locale/farming.sv.tr b/mods/farming/locale/farming.sv.tr new file mode 100644 index 0000000..e6c9e68 --- /dev/null +++ b/mods/farming/locale/farming.sv.tr @@ -0,0 +1,28 @@ +# textdomain: farming +Hoe=Kratta +Seed=Frö +Wooden Hoe=Träkratta +Stone Hoe=Stenkratta +Steel Hoe=Stålkratta +Bronze Hoe=Bronskratta +Mese Hoe=Mesekratta +Diamond Hoe=Diamantkratta +Wheat Seed=Vetefrö +Wheat=Vete +Flour=Mjöl +Bread=Bröd +Cotton Seed=Bomullfrö +Cotton=Bomull +String=Snöre +Soil=Odlinngsmark +Wet Soil=Våt Odlingsmark +Savanna Soil=Savannodlingsmark +Wet Savanna Soil=Våt savannodlingsmark +Desert Sand Soil=Ökensandsodlingsmark +Wet Desert Sand Soil=Våt ökensandsodlingsmark +Straw=Halm +Straw Stair=Halmtrappa +Inner Straw Stair=Inre halmtrappa +Outer Straw Stair=Yttre halmtrappa +Straw Slab=Halmplatta +Wild Cotton= diff --git a/mods/farming/locale/farming.uk.tr b/mods/farming/locale/farming.uk.tr new file mode 100644 index 0000000..75e7dea --- /dev/null +++ b/mods/farming/locale/farming.uk.tr @@ -0,0 +1,28 @@ +# textdomain: farming +Hoe=Мотика +Seed=Насіння +Wooden Hoe=Дерев'яна мотика +Stone Hoe=Кам'яна мотика +Steel Hoe=Сталева мотика +Bronze Hoe=Бронзова мотика +Mese Hoe=Месе-мотика +Diamond Hoe=Діамантова мотика +Wheat Seed=Насіння пшениці +Wheat=Пшениця +Flour=Борошно +Bread=Хліб +Cotton Seed=Насіння бавовнику +Cotton=Бавовна +String=Нитка +Soil=Ґрунт +Wet Soil=Вологий ґрунт +Savanna Soil=Саванний ґрунт +Wet Savanna Soil=Вологий саванний ґрунт +Desert Sand Soil=Пустельний піщаний ґрунт +Wet Desert Sand Soil=Вологий пустельний піщаний ґрунт +Straw=Солома +Straw Stair=Солом'яна сходинка +Inner Straw Stair=Кутова солом'яна сходинка (внутрішній кут) +Outer Straw Stair=Кутова солом'яна сходинка (зовнішній кут) +Straw Slab=Солом'яна плита +Wild Cotton=Дикий бавовник diff --git a/mods/farming/locale/farming.zh_CN.tr b/mods/farming/locale/farming.zh_CN.tr new file mode 100644 index 0000000..33ad9be --- /dev/null +++ b/mods/farming/locale/farming.zh_CN.tr @@ -0,0 +1,34 @@ +# textdomain: farming +Hoe=锄头 +Seed=种子 +Wooden Hoe=木锄头 +Stone Hoe=石锄头 +Steel Hoe=铁锄头 +Bronze Hoe=青铜锄头 +Mese Hoe=黄石锄头 +Diamond Hoe=钻石锄头 +Wheat Seed=小麦种子 +Wheat=小麦 +Flour=面粉 +Bread=面包 +Cotton Seed=棉花种子 +Cotton=棉 +String=线 +Soil=土 +Wet Soil=湿土 +Savanna Soil=草原土 +Wet Savanna Soil=湿草原土 +Desert Sand Soil=沙漠沙土 +Wet Desert Sand Soil=湿沙漠沙土 +Straw=稻草 +Straw Stair=稻草台阶 +Inner Straw Stair=稻草内楼梯 +Outer Straw Stair=稻草外楼梯 +Straw Slab=稻草板 +Wild Cotton=野棉花 + + +##### not used anymore ##### + +Dry Soil=干土 +Wet Dry Soil=湿干土 diff --git a/mods/farming/locale/farming.zh_TW.tr b/mods/farming/locale/farming.zh_TW.tr new file mode 100644 index 0000000..36037af --- /dev/null +++ b/mods/farming/locale/farming.zh_TW.tr @@ -0,0 +1,34 @@ +# textdomain: farming +Hoe=鋤頭 +Seed=種子 +Wooden Hoe=木鋤頭 +Stone Hoe=石鋤頭 +Steel Hoe=鐵鋤頭 +Bronze Hoe=青銅鋤頭 +Mese Hoe=黃石鋤頭 +Diamond Hoe=鑽石鋤頭 +Wheat Seed=小麥種子 +Wheat=小麥 +Flour=麵粉 +Bread=麵包 +Cotton Seed=棉花種子 +Cotton=棉 +String=線 +Soil=土 +Wet Soil=溼土 +Savanna Soil=草原土 +Wet Savanna Soil=溼草原土 +Desert Sand Soil=沙漠沙土 +Wet Desert Sand Soil=溼沙漠沙土 +Straw=稻草 +Straw Stair=稻草臺階 +Inner Straw Stair=稻草內樓梯 +Outer Straw Stair=稻草外樓梯 +Straw Slab=稻草板 +Wild Cotton=野生棉花 + + +##### not used anymore ##### + +Dry Soil=乾土 +Wet Dry Soil=溼乾土 diff --git a/mods/farming/locale/template.txt b/mods/farming/locale/template.txt new file mode 100644 index 0000000..af92347 --- /dev/null +++ b/mods/farming/locale/template.txt @@ -0,0 +1,28 @@ +# textdomain: farming +Hoe= +Seed= +Wooden Hoe= +Stone Hoe= +Steel Hoe= +Bronze Hoe= +Mese Hoe= +Diamond Hoe= +Wheat Seed= +Wheat= +Flour= +Bread= +Cotton Seed= +Cotton= +String= +Soil= +Wet Soil= +Savanna Soil= +Wet Savanna Soil= +Desert Sand Soil= +Wet Desert Sand Soil= +Straw= +Straw Stair= +Inner Straw Stair= +Outer Straw Stair= +Straw Slab= +Wild Cotton= diff --git a/mods/farming/mod.conf b/mods/farming/mod.conf new file mode 100644 index 0000000..9a76a6a --- /dev/null +++ b/mods/farming/mod.conf @@ -0,0 +1,4 @@ +name = farming +description = Minetest Game mod: farming +depends = default, wool, stairs +optional_depends = dungeon_loot diff --git a/mods/farming/nodes.lua b/mods/farming/nodes.lua new file mode 100644 index 0000000..b5f90f9 --- /dev/null +++ b/mods/farming/nodes.lua @@ -0,0 +1,282 @@ +-- farming/nodes.lua + +-- support for MT game translation. +local S = farming.get_translator + +minetest.override_item("default:dirt", { + soil = { + base = "default:dirt", + dry = "farming:soil", + wet = "farming:soil_wet" + } +}) + +minetest.override_item("default:dirt_with_grass", { + soil = { + base = "default:dirt_with_grass", + dry = "farming:soil", + wet = "farming:soil_wet" + } +}) + +minetest.override_item("default:dirt_with_dry_grass", { + soil = { + base = "default:dirt_with_dry_grass", + dry = "farming:soil", + wet = "farming:soil_wet" + } +}) + +minetest.override_item("default:dirt_with_rainforest_litter", { + soil = { + base = "default:dirt_with_rainforest_litter", + dry = "farming:soil", + wet = "farming:soil_wet" + } +}) + +minetest.override_item("default:dirt_with_coniferous_litter", { + soil = { + base = "default:dirt_with_coniferous_litter", + dry = "farming:soil", + wet = "farming:soil_wet" + } +}) + +minetest.override_item("default:dry_dirt", { + soil = { + base = "default:dry_dirt", + dry = "farming:dry_soil", + wet = "farming:dry_soil_wet" + } +}) + +minetest.override_item("default:dry_dirt_with_dry_grass", { + soil = { + base = "default:dry_dirt_with_dry_grass", + dry = "farming:dry_soil", + wet = "farming:dry_soil_wet" + } +}) + +minetest.register_node("farming:soil", { + description = S("Soil"), + tiles = {"default_dirt.png^farming_soil.png", "default_dirt.png"}, + drop = "default:dirt", + groups = {crumbly=3, not_in_creative_inventory=1, soil=2, grassland = 1, field = 1}, + sounds = default.node_sound_dirt_defaults(), + soil = { + base = "default:dirt", + dry = "farming:soil", + wet = "farming:soil_wet" + } +}) + +minetest.register_node("farming:soil_wet", { + description = S("Wet Soil"), + tiles = {"default_dirt.png^farming_soil_wet.png", "default_dirt.png^farming_soil_wet_side.png"}, + drop = "default:dirt", + groups = {crumbly=3, not_in_creative_inventory=1, soil=3, wet = 1, grassland = 1, field = 1}, + sounds = default.node_sound_dirt_defaults(), + soil = { + base = "default:dirt", + dry = "farming:soil", + wet = "farming:soil_wet" + } +}) + +minetest.register_node("farming:dry_soil", { + description = S("Savanna Soil"), + tiles = {"default_dry_dirt.png^farming_soil.png", "default_dry_dirt.png"}, + drop = "default:dry_dirt", + groups = {crumbly=3, not_in_creative_inventory=1, soil=2, grassland = 1, field = 1}, + sounds = default.node_sound_dirt_defaults(), + soil = { + base = "default:dry_dirt", + dry = "farming:dry_soil", + wet = "farming:dry_soil_wet" + } +}) + +minetest.register_node("farming:dry_soil_wet", { + description = S("Wet Savanna Soil"), + tiles = {"default_dry_dirt.png^farming_soil_wet.png", "default_dry_dirt.png^farming_soil_wet_side.png"}, + drop = "default:dry_dirt", + groups = {crumbly=3, not_in_creative_inventory=1, soil=3, wet = 1, grassland = 1, field = 1}, + sounds = default.node_sound_dirt_defaults(), + soil = { + base = "default:dry_dirt", + dry = "farming:dry_soil", + wet = "farming:dry_soil_wet" + } +}) + +minetest.override_item("default:desert_sand", { + groups = {crumbly=3, falling_node=1, sand=1, soil = 1}, + soil = { + base = "default:desert_sand", + dry = "farming:desert_sand_soil", + wet = "farming:desert_sand_soil_wet" + } +}) +minetest.register_node("farming:desert_sand_soil", { + description = S("Desert Sand Soil"), + drop = "default:desert_sand", + tiles = {"farming_desert_sand_soil.png", "default_desert_sand.png"}, + groups = {crumbly=3, not_in_creative_inventory = 1, falling_node=1, sand=1, soil = 2, desert = 1, field = 1}, + sounds = default.node_sound_sand_defaults(), + soil = { + base = "default:desert_sand", + dry = "farming:desert_sand_soil", + wet = "farming:desert_sand_soil_wet" + } +}) + +minetest.register_node("farming:desert_sand_soil_wet", { + description = S("Wet Desert Sand Soil"), + drop = "default:desert_sand", + tiles = {"farming_desert_sand_soil_wet.png", "farming_desert_sand_soil_wet_side.png"}, + groups = {crumbly=3, falling_node=1, sand=1, not_in_creative_inventory=1, soil=3, wet = 1, desert = 1, field = 1}, + sounds = default.node_sound_sand_defaults(), + soil = { + base = "default:desert_sand", + dry = "farming:desert_sand_soil", + wet = "farming:desert_sand_soil_wet" + } +}) + +minetest.register_node("farming:straw", { + description = S("Straw"), + tiles = {"farming_straw.png"}, + is_ground_content = false, + groups = {snappy=3, flammable=4, fall_damage_add_percent=-30}, + sounds = default.node_sound_leaves_defaults(), +}) + +-- Registered before the stairs so the stairs get fuel recipes. +minetest.register_craft({ + type = "fuel", + recipe = "farming:straw", + burntime = 3, +}) + +do + local recipe = "farming:straw" + local groups = {snappy = 3, flammable = 4} + local images = {"farming_straw.png"} + local sounds = default.node_sound_leaves_defaults() + + stairs.register_stair("straw", recipe, groups, images, S("Straw Stair"), + sounds, true) + stairs.register_stair_inner("straw", recipe, groups, images, "", + sounds, true, S("Inner Straw Stair")) + stairs.register_stair_outer("straw", recipe, groups, images, "", + sounds, true, S("Outer Straw Stair")) + stairs.register_slab("straw", recipe, groups, images, S("Straw Slab"), + sounds, true) +end + +minetest.register_abm({ + label = "Farming soil", + nodenames = {"group:field"}, + interval = 15, + chance = 4, + action = function(pos, node) + local n_def = minetest.registered_nodes[node.name] or nil + local wet = n_def.soil.wet or nil + local base = n_def.soil.base or nil + local dry = n_def.soil.dry or nil + if not n_def or not n_def.soil or not wet or not base or not dry then + return + end + + pos.y = pos.y + 1 + local nn = minetest.get_node_or_nil(pos) + if not nn or not nn.name then + return + end + local nn_def = minetest.registered_nodes[nn.name] or nil + pos.y = pos.y - 1 + + if nn_def and nn_def.walkable and minetest.get_item_group(nn.name, "plant") == 0 then + minetest.set_node(pos, {name = base}) + return + end + -- check if there is water nearby + local wet_lvl = minetest.get_item_group(node.name, "wet") + if minetest.find_node_near(pos, 3, {"group:water"}) then + -- if it is dry soil and not base node, turn it into wet soil + if wet_lvl == 0 then + minetest.set_node(pos, {name = wet}) + end + else + -- only turn back if there are no unloaded blocks (and therefore + -- possible water sources) nearby + if not minetest.find_node_near(pos, 3, {"ignore"}) then + -- turn it back into base if it is already dry + if wet_lvl == 0 then + -- only turn it back if there is no plant/seed on top of it + if minetest.get_item_group(nn.name, "plant") == 0 and minetest.get_item_group(nn.name, "seed") == 0 then + minetest.set_node(pos, {name = base}) + end + + -- if its wet turn it back into dry soil + elseif wet_lvl == 1 then + minetest.set_node(pos, {name = dry}) + end + end + end + end, +}) + + +-- Make default:grass_* occasionally drop wheat seed + +for i = 1, 5 do + minetest.override_item("default:grass_"..i, {drop = { + max_items = 1, + items = { + {items = {"farming:seed_wheat"}, rarity = 5}, + {items = {"default:grass_1"}}, + } + }}) +end + + +-- Make default:junglegrass occasionally drop cotton seed. + +-- This is the old source of cotton seeds that makes no sense. It is a leftover +-- from Mapgen V6 where junglegrass was the only plant available to be a source. +-- This source is kept for now to avoid disruption but should probably be +-- removed in future as players get used to the new source. + +minetest.override_item("default:junglegrass", {drop = { + max_items = 1, + items = { + {items = {"farming:seed_cotton"}, rarity = 8}, + {items = {"default:junglegrass"}}, + } +}}) + + +-- Wild cotton as a source of cotton seed + +minetest.register_node("farming:cotton_wild", { + description = S("Wild Cotton"), + drawtype = "plantlike", + waving = 1, + tiles = {"farming_cotton_wild.png"}, + inventory_image = "farming_cotton_wild.png", + wield_image = "farming_cotton_wild.png", + paramtype = "light", + sunlight_propagates = true, + walkable = false, + buildable_to = true, + groups = {snappy = 3, attached_node = 1, flammable = 4}, + drop = "farming:seed_cotton", + sounds = default.node_sound_leaves_defaults(), + selection_box = { + type = "fixed", + fixed = {-6 / 16, -8 / 16, -6 / 16, 6 / 16, 5 / 16, 6 / 16}, + }, +}) diff --git a/mods/farming/textures/farming_bread.png b/mods/farming/textures/farming_bread.png new file mode 100644 index 0000000000000000000000000000000000000000..16b25f1932512b449422e65245e1769685c470ff GIT binary patch literal 388 zcmeAS@N?(olHy`uVBq!ia0y~yU=RRd4rT@h1`S>QUhHg`aA|ryVV=XxTqan@V%ZeFzF?e13nb*+16&(2IWVBY)jY5==&2XnOXHr5AI zUu7&?Bs6>3TONkE*mZhQd#9dQd6|*pq}9Hid8=dHgV+yrOztt`|5fAZ$x$^~!_#8o noG%}YKmV=WGDFYs4Ev6IoNT}6-#Ws;z`)??>gTe~DWM4fo!Ery literal 0 HcmV?d00001 diff --git a/mods/farming/textures/farming_cotton.png b/mods/farming/textures/farming_cotton.png new file mode 100644 index 0000000000000000000000000000000000000000..8aa50e4e38c75bce9f41cbee1ed6535adb7c7f9c GIT binary patch literal 316 zcmeAS@N?(olHy`uVBq!ia0y~yU=RRd4rT@h1`S>QU@1=B*UyE!|Y_^++>5SH1nJ^v)nY(yfm}ibo2alv-}M6!W`SzZ$RMf+qduD zy?gr}3_gIs>rbCPe*F0169|0%{Q1)t5cvA_>(_7JzJLGz^XJc>zkdDx{rmSHF!=j- z)wKDC7#J8BOM?7@862M7NMm4N$nkV>43UtWdoY@>$v}klz+>jX%2nYTLpB_LCHif@ zqmYK$KgskD%6%UkXBkHe85=Ij(pH*qEPLs#tw&tWOrCbnzN6FRS5fT$vL=W8uUAjq zRXmYY-#P90WwT=$tTLBuZoX+`O?z4u{>VGr% literal 0 HcmV?d00001 diff --git a/mods/farming/textures/farming_cotton_1.png b/mods/farming/textures/farming_cotton_1.png new file mode 100644 index 0000000000000000000000000000000000000000..5fc218078722b9634503146a0fb0d3353c3e5859 GIT binary patch literal 110 zcmeAS@N?(olHy`uVBq!ia0y~yU=RRdCT0c(hNQXTpBNYzcmjMvTzxVNW6Cw$vsDY4 zbbkEd7GhvvU@Qsp3ubV5b|Vd>!_&nvq=GSdflvaAU>YY61LH1+87=1(=P@uaFnGH9 KxvXT2=*xHC*U%b8`@4@XcaU{lq-Ooq>UY!PC{xWt~$(698C$DOCUf literal 0 HcmV?d00001 diff --git a/mods/farming/textures/farming_cotton_4.png b/mods/farming/textures/farming_cotton_4.png new file mode 100644 index 0000000000000000000000000000000000000000..f314b07b7e1968592fb8bf3f9fb592f4a6467010 GIT binary patch literal 150 zcmeAS@N?(olHy`uVBq!ia0y~yU=RRd7G?$phPQVgfdu#id_r6q7#NasbV|z&eB-sc zJFE{)VM%0QU|=i>@(X5gcy=R=fq}u))5S4_<9f0J?}h^sdGbrVu-c-yjz-c)I$ztaD0e0sum_CBXmy literal 0 HcmV?d00001 diff --git a/mods/farming/textures/farming_cotton_5.png b/mods/farming/textures/farming_cotton_5.png new file mode 100644 index 0000000000000000000000000000000000000000..520e8f6c120dddeca43298b106b3c811d0cb5f34 GIT binary patch literal 158 zcmeAS@N?(olHy`uVBq!ia0y~yU=RRd7G?$phPQVgfdu#id_r6q7#ON^%`y`WC)PU# zhw67pMuYS)mIV0)GdMiEk;cHlVC(7P7{VdTdXSO#fB^@?hC^x$obg7CPq0)4DU@Qsp3ubV5b|Z~}fx*Gk#WAFUvG;@_Z-WC5!-4F^y+R6(4$V#c z|6C2PFqqG)KXrpA)=gE&mvfHUmK=YtDSH=fwALwbm3V)o>v!2NhK5Au02jMyR~Z-> O7(8A5T-G@yGyworkTYQb literal 0 HcmV?d00001 diff --git a/mods/farming/textures/farming_cotton_7.png b/mods/farming/textures/farming_cotton_7.png new file mode 100644 index 0000000000000000000000000000000000000000..11c0cf6d349befb25933c9816f7748349896e868 GIT binary patch literal 163 zcmeAS@N?(olHy`uVBq!ia0y~yU=RRd7G?$phPQVgfdu#id_r6q7#Na0RD zjOA)Fgt8eJ7#K@}{DK)Ap4~`eU|?|aba4#fkYzo{$a}zmgJHuVH3rUVBgQ9OC;oO< zaWgP5m^d(sIfzS54O%o^=*mVJ-P^N;Qo~KQ89eA@s7W>`T>qGT^A8q9yYOFU7#J8B NJYD@<);T3K0RRZ5Ea?CM literal 0 HcmV?d00001 diff --git a/mods/farming/textures/farming_cotton_8.png b/mods/farming/textures/farming_cotton_8.png new file mode 100644 index 0000000000000000000000000000000000000000..4450a2c4b8ef424222fd92bb51bef74d4e215147 GIT binary patch literal 192 zcmeAS@N?(olHy`uVBq!ia0y~yU=RRd7G?$phPQVgfdoVYd_r6q7#J!-R1+K}uUxs} zYbI);DQNDiYhIeUjDdlHu_VYZn8D%MjWh-ZhDc8r#}E!#)`J@b4;ctB82o&@Oz+wu|gD*Iw@nxPG%{$waxs t4rdoD6>^+DX6~f?Lzi3o-R-CR=VCY<&X}C^XJBAp@O1TaS?83{1OP!+Ll*!5 literal 0 HcmV?d00001 diff --git a/mods/farming/textures/farming_cotton_seed.png b/mods/farming/textures/farming_cotton_seed.png new file mode 100644 index 0000000000000000000000000000000000000000..f1d5b8ab714e2f074b8136aac0d8dab88c0acc2a GIT binary patch literal 150 zcmeAS@N?(olHy`uVBq!ia0y~yU=RRd7G?$phPQVgfdu#id_r7(G7CMO)nme}3$g?1 zD&vJt*yJ%VFff(``2{mLJiC#`z`$VY>Eakt!I*r2afYbF5@F`%i3}ZzItLUu#L`0! zES<)0P literal 0 HcmV?d00001 diff --git a/mods/farming/textures/farming_cotton_wild.png b/mods/farming/textures/farming_cotton_wild.png new file mode 100644 index 0000000000000000000000000000000000000000..fba344c72e304cb31a60365a420af0db3f6a7c26 GIT binary patch literal 223 zcmeAS@N?(olHy`uVBq!ia0y~yU=RRd7G?$phPQVgfdu3Nd_r6q7#OUyEJAEt3PM66 zbIl?;+`<+|u3x|Y^5x5~U%!63EJ2fjfq}6k$S;_|;n|He1_p+FPZ!4!4q4WN8+n@o zL>LY{W}G-lKsfokppfpyi{JVcd=~gQWMOB{to?G+O2ss>q)**Sr YG~Srr27#J8lUHx3vIVCg!03U=@BLDyZ literal 0 HcmV?d00001 diff --git a/mods/farming/textures/farming_desert_sand_soil.png b/mods/farming/textures/farming_desert_sand_soil.png new file mode 100644 index 0000000000000000000000000000000000000000..3c09ef0c629f174f85f91f0587b2d6973f3cbd6d GIT binary patch literal 467 zcmeAS@N?(olHy`uVBq!ia0y~yU=RRd4rT@h1`S>QUaSV~Tta`4svBf}u z;Q(usyGMbo`}wbX|8KH;s5OJpq_R(}WP0QJYxA@Xdc=0@(ulfM(Kfe-W6e=MlfvCb z8%?JluV%k66t2xK>%f`;- zJgm>2A9_)H;zrr#%dg&ViI+>BU31Vj!0x>N)IV2P7`ILNKi&T7@k5dq0)833ZTZz= zF5lGrMY`>0T-~cl472|(sy#RVy8fQpS#nX%sZ$L8~wzNt@~A7sb&G`MBi&&U6n ZmmL#}V~ASZ%D}+D;OXk;vd$@?2>>Ph*69EM literal 0 HcmV?d00001 diff --git a/mods/farming/textures/farming_desert_sand_soil_wet.png b/mods/farming/textures/farming_desert_sand_soil_wet.png new file mode 100644 index 0000000000000000000000000000000000000000..facc83e187802352ac4161c0f383c49615820097 GIT binary patch literal 351 zcmeAS@N?(olHy`uVBq!ia0y~yU=RRd4rT@h1`S>QU z-I7G(j0l~aXuaeR&8cOst=Tq(afW%(2C1PsSrJ+ji(RUc&C)`(<~4ZrrJctB#qKF1MR;bec*siO1hMAq!<8-hBgUjMkU z@#3R{Pt^|e?~Odzk}G$2opj-21;?4*a=#{|OtcjZIJBhm!uFD`HgEP7lehMq&hhG0 zKYmQ(=-a?~+xNde{=sIu+osL=-_C!zQL^yX&GqxkHpYBs(gzuR3@1$c<|cEte&KNxfv{!++lXw={RlxlG0^1_lNOPgg&ebxsLQ E0I;N#p#T5? literal 0 HcmV?d00001 diff --git a/mods/farming/textures/farming_desert_sand_soil_wet_side.png b/mods/farming/textures/farming_desert_sand_soil_wet_side.png new file mode 100644 index 0000000000000000000000000000000000000000..41e5a04a36f76537ad5153b3360fc929dd905a3f GIT binary patch literal 272 zcmeAS@N?(olHy`uVBq!ia0y~yU=RRd7G?$phPQVgfdmW!d_r93)p^cq@Sa`cHNDJZ zL9^f7YR^f9t_zyIrbs!PYf-y@PnP5CN{`+GH``UoKNuJoW_!9ghHzX@ z=E&ijHPft+iM@Hr+@%(qUFT~y&s}_`(`~wgI-9e&;Ai7Q?z1GAVrBN2Ece-#ARweU zgX7hg$9INHN+|0t`gYg1_P_zD*$3|2KDCyY a!DPGP*|Qm|RxmIyFnGH9xvXkg4bCoG zwS-HoC@3gMl#!dGtBZ?SQm3)0sYyZ5-BE#|Q$?D&k=gDtW4b)+e>TUm4h9AW22WQ% Jmvv4FO#pG(G#UT^ literal 0 HcmV?d00001 diff --git a/mods/farming/textures/farming_soil.png b/mods/farming/textures/farming_soil.png new file mode 100644 index 0000000000000000000000000000000000000000..315042588361d9417c77d7f224e2b23a11caed65 GIT binary patch literal 703 zcmeAS@N?(olHy`uVBq!ia0y~yU=RRd4rT@h1`S>QUbVeR|Wgmxc(Ni>8RHj+inZqoX3PrVy*WhKMo`qZ|*DFf)S+FN*{>g90z3BqxI`7lRZJ zqdYIOFcX6~J4int0|OTrL7c?Kz@W;_Aj`p^C&6u}E-c2t5MrrhD#sP%(rcRx393=zo5K4UHHMjb_Tl@i=-=*jD8%p zXsY}3uAh*OW6?arDt!yIMB34 z-t_kL#hZ0c7j(@lXW7*Cu5(ok%iD7+t}1hAq$wSXxxnJJ*qrCT;atWV<|~(ET7R7^ QmdKI;Vst08(PqIRF3v literal 0 HcmV?d00001 diff --git a/mods/farming/textures/farming_soil_wet.png b/mods/farming/textures/farming_soil_wet.png new file mode 100644 index 0000000000000000000000000000000000000000..2eb2c3cd8684954f7a3bf88128e56163ad28e843 GIT binary patch literal 676 zcmeAS@N?(olHy`uVBq!ia0y~yU=RRd4rT@h1`S>QU7-YE^#5ouQm>GB&K}dw1fs=uOje&s$ zW|XUrxRZvMsT{AiD2KfQkGdd>Bol*;ny?}_qYO8rh7gMo6N4fTvjhu+JSU^6f{+kc zCldq6c2#Z$Sq=sj0ajZTURyPxU<*ZI1_om}ekFb;MIHtbMuuQ>c|A!^4Sq%`CI$}! zS!-26b6H+(5zcTsO;c3?BN={MB{6*oPDvgn5k6*fB@tnE22l(?(|Jb&`|>XkjKr&s>__xI1QpI<(G{P6D8^XJbVKYH}=?u{GQ zE}lPi^uV?a>z2=-**1M`=Me@5hF6|0jv*3~tOr?>njJ(~4}1?VXm4R*DlA{Qd$;u4 zzxfgUrzN_!P|4~=H{DT0`;*9h1^KVaHZM<7tq+rvoE2Wy#?c01dFBh6|j5XQm zLYqlwGMj~utDuwUm!(Aod`gikpB24aRoa}%_0VJw$D)H@o-GWE-t*+7?wY%KE9T!> z?{<7|^Qm8(ShGLI>e<(w3`!H8u6{1-oD!M=WP6C?lt literal 0 HcmV?d00001 diff --git a/mods/farming/textures/farming_straw.png b/mods/farming/textures/farming_straw.png new file mode 100644 index 0000000000000000000000000000000000000000..f9f5fe7c83c682109f4e320f748750a0d5e41c85 GIT binary patch literal 887 zcmeAS@N?(olHy`uVBq!ia0y~yU=RRd4rT@h1`S>QU$|M4&yw#QjrsjB>dE=YuTMe`uL*r~G5E&5pqEDizdjFmdM@C^ z%7A~b{VwnF+da+i>qFm-lYI8h_qub`^Tr;}jlG^br+R$3;dW_<+r{;6$5yy~z3+Ny zi|f`o&O4?$f4J^+dAHNal}>x-IxcN@yt~8U{2GVXSM2T`wtKkG?(Al}*XL~aOtsxL z*J}GztF!AZK3z0_dd&ROJ+saIW+zvgoLy{kb-VGdsm41d8_%mUKDgL$L$Bf1nfeE& zYdkxf@$YNeo3lwzjwe04mT+Q2+`WS_FKT z`hI`l`|+&r`5nGnX8Iml7jy6l$J*}Xb#dv&et|Hn4>kJ#MVX!GxZ^^2p{H}_cI++lrmo%PB_ z>ksFw_Aj?Ove4?)HOtFeEH+QF*fh<2&n(k(YfbhpG2T7j`06^N6|F{h_Zoh@Zg6;^ z!KSGOTP7Q9nrN`0-C+Mr{mp&4`{!vsJgISGt;W9D8mBj@UtF)crdMTqhw{ngiU(&a zTHj+6XJB9y^K@|xk+{rykU5E&L4aX{_VZiYa*Ma+-rkmb+stkUOVbJgvxH~i3w4Zr zKB;aK+~>JY?q{Y~;G0GBd-exBYcydx+OcNsJBK^o$s&_hFg57xQrWg9K;-524?FCv zxXb+d%i^@4nSqkv;cL-yA6a@$RvqtPE=aks&U)LH>^TdiRL*UwXJ=Q* z@jE@U@9(1)m*@e5`*StGhX3BZF-gi@2$+xZE`-0ccUsUE?+##mh zbNfT)6_MX3vgR<_oWJtZz4mZd(uTZ0JH$UTELGdx5G|>?Om%6x(W1F|C+h#stEak7A<24hA#Z~L1IvNi^-N+3TwP1#v?h88%@SBO-x{QqVa4;^3~o1=9WJOc@WniQ z)gU1M#z9?}iNd=iyE`Aj0s(gB_&r1M_`*gY5a!&OHY4 NJYD@<);T3K0RW%bFtq>x literal 0 HcmV?d00001 diff --git a/mods/farming/textures/farming_tool_bronzehoe.png b/mods/farming/textures/farming_tool_bronzehoe.png new file mode 100644 index 0000000000000000000000000000000000000000..2802d11d708fbd0312a4791a742bf6dfba751582 GIT binary patch literal 212 zcmeAS@N?(olHy`uVBq!ia0y~yU=RRd4rT@h1`S>QUhbNH@KZCwzynv@UYzAZi((R zKYo8x-b24PU1eZkU@Qsp3ubV5b|Z~}fx*Gk#W6(Ua`FMDmew6VZde2!jksaSaU#UyY3btfo7eL$UC^D-=b|U(wPvNiDX-|1MgJKX7#K@}{DK)Ap4~`e zU|_KDba4#fxSs6LFeNrKKU)JJ~FgC4NPQ6GEaq?-&>u7(8A5T-G@yGywny8aZVE literal 0 HcmV?d00001 diff --git a/mods/farming/textures/farming_tool_mesehoe.png b/mods/farming/textures/farming_tool_mesehoe.png new file mode 100644 index 0000000000000000000000000000000000000000..4534fbaf5d88841a27670d479d2d2a7995ff9cfc GIT binary patch literal 181 zcmeAS@N?(olHy`uVBq!ia0y~yU=RRd7G?$phPQVgfdsSyd_r6q7#IRAWpX@)tyKl~ zA7e04&l2|NnD6421vx550Ju;s1ZTyN?)_7CviaU|?V@3GxeOaCmkjje&u| z($mE;gyVX$L&Kysj|0TK-7KdZy<1qw)be!OErvr0WyK8!X>AS}ZlNoZ6q#2v7%?)o gh+Sh~3t?c0TF7zufNg>t0|Nttr>mdKI;Vst0MrjWTmS$7 literal 0 HcmV?d00001 diff --git a/mods/farming/textures/farming_tool_steelhoe.png b/mods/farming/textures/farming_tool_steelhoe.png new file mode 100644 index 0000000000000000000000000000000000000000..d057af24c30b9a1bcfac890da03d4e3ff87e1fd6 GIT binary patch literal 181 zcmeAS@N?(olHy`uVBq!ia0y~yU=RRd7G?$phPQVgfdsSyd_r6q7#Q~M-5Y2rljA9D zttxQl%o!6!{>P6W|NsC0C%0Z+1ql@O0qgKipj4i4bR~Zi_2#PltTvKz(P%~bUl*+!Mfs>K3 hMQj@jTL=S##1D?C6AqMf^>9=Qso|Wnf@nED7=pW^j0RBaMN9 z!OGLcF@)oKvIE1lO(h!LwqGo!92H8lU_4ZGGl?Pb!!j!eiOQUe z|LRp83%oaSt=IVIz}X vhJf|5|L2QCg&$pT`##Bd<&n;uA1Tbd5lmW%>e=-S3=9mOu6{1-oD!M<)ZJnM literal 0 HcmV?d00001 diff --git a/mods/farming/textures/farming_wheat_1.png b/mods/farming/textures/farming_wheat_1.png new file mode 100644 index 0000000000000000000000000000000000000000..c16ad94ba4e9989dd795c452559376ea2137d78b GIT binary patch literal 120 zcmeAS@N?(olHy`uVBq!ia0y~yU=RRd7G?$phPQVgfdu#id_r6q7#RF#33MJZYTU0| zv_(Z})=o(V1_s8GAirP+hi5m^7#JADJzX3_IIbs4WISL{Vv(33!6P9d$s)qQmcph||rKQS;cFqQ=Q1v5B2yOGAgz@YBw;uyklJ$ZpX2ZJCRj}H$M&lw&z rE*>2RHsxl<2?-${35fv(3=HyVOp0rbZt^iOFfe$!`njxgN@xNAz&Rvh literal 0 HcmV?d00001 diff --git a/mods/farming/textures/farming_wheat_3.png b/mods/farming/textures/farming_wheat_3.png new file mode 100644 index 0000000000000000000000000000000000000000..9d90ac14e9b32109833902c7dd384edeab1a13b7 GIT binary patch literal 171 zcmeAS@N?(olHy`uVBq!ia0y~yU=RRd7G?$phPQVgfdnK1d_r6q7#NoC3Y)aj_3(w9 zHT$9~C+kjM>#_e_`Tu@JcLoLq#*!evUiQifol->W44^%}nSD&|}|YxpK}zWl-} WHqIEn_B9L)3=E#GelF{r5}E*zR5_~v literal 0 HcmV?d00001 diff --git a/mods/farming/textures/farming_wheat_4.png b/mods/farming/textures/farming_wheat_4.png new file mode 100644 index 0000000000000000000000000000000000000000..14d055fbf7a1cf4bafc3d643714502e32789a3c0 GIT binary patch literal 188 zcmeAS@N?(olHy`uVBq!ia0y~yU=RRd7G?$phPQVgfdu3Nd_r6q7#P+cOrEnbaO=^G zHzVFfcHd1o;IsI6S+N#=yYf6umh8b9VbI$UUI^wQv~I>6A({w1j?_Fs@>$P1AsFaJBti`jQConsT>bJ$2~ ox^Lx?lTl05a`!B&?EhKwB8yWZOkk2Z0|Nttr>mdKI;Vst04|?GO8@`> literal 0 HcmV?d00001 diff --git a/mods/farming/textures/farming_wheat_5.png b/mods/farming/textures/farming_wheat_5.png new file mode 100644 index 0000000000000000000000000000000000000000..5b88c5785feaeeeddb310a36bfbcbb354956473c GIT binary patch literal 217 zcmeAS@N?(olHy`uVBq!ia0y~yU=RRd7G?$phPQVgfdte8d_r6q7#Ozf&Rn!QeCPhW zGv}+PFZXJmVs+|5$MW^j-Baw^XWGtP<3C}B&4%#swtXB)mgu87O663_6}fEtPcx`%j);s$zI($Mb U>z7YtU|?YIboFyt=akR{0A*uQbpQYW literal 0 HcmV?d00001 diff --git a/mods/farming/textures/farming_wheat_6.png b/mods/farming/textures/farming_wheat_6.png new file mode 100644 index 0000000000000000000000000000000000000000..e9c78e00c1c1289017815af7bef5b2a38e3f5291 GIT binary patch literal 234 zcmeAS@N?(olHy`uVBq!ia0y~yU=RRd7G?$phPQVgfdte8d_r6q7#Mc%$ym82bpA^B z0|#@vr<$+Z9C`d`;H2qR`wu0~oMpFTf9lc=KF2q$J;cDkz*rLG7tG-B>_!>`14E&w zi(?4K^<)J$orDKT2_6XvNe>t%IixW&b2l?gxcuP2fpdBXj-I%naNxm-7Yh!Ydk}C) z;lzpw2VN*FIAJiiu!(7RgM(7DKzCEqqNXORX352eS`M^uD)KDq;o@p!?G*J^ZfzQg+cJj-CMKSJ}MV_O`GzTA1xn{ZM-266cBDfU|5f z`i?Nz@c%dB3(Jzx<}(syboZ-}pEHrU-22lKcI(S2np^Kx^Gg{%QF{E_%2sG zOt^GG`_tW3+ON3IJ~ONTRrxUFc0F9QPugQu&X%Q~lo FCIA79XR`nR literal 0 HcmV?d00001 diff --git a/mods/farming/textures/farming_wheat_8.png b/mods/farming/textures/farming_wheat_8.png new file mode 100644 index 0000000000000000000000000000000000000000..d0500934acb984e6e967d17cb855bca1b43b5a85 GIT binary patch literal 310 zcmeAS@N?(olHy`uVBq!ia0y~yU=RRd4rT@h1`S>QUh1XMB5iu-K}c`Tm-gUu_!>`1B05Ui(^OyWAXtup9CI7Ha2I8=rfF` q5<(e*&oFV=868;1def(dfno7^CRxuv!tD$U3=E#GelF{r5}E+Gw<&@E literal 0 HcmV?d00001 diff --git a/mods/fireflies/README.txt b/mods/fireflies/README.txt new file mode 100644 index 0000000..7382578 --- /dev/null +++ b/mods/fireflies/README.txt @@ -0,0 +1,22 @@ +Minetest Game mod: fireflies +============================ +Adds fireflies to the world on mapgen, which can then be caught in a net and placed in +bottles to provide light. + +Authors of source code +---------------------- +Shara RedCat (MIT) + +Authors of media (textures) +--------------------------- +Shara RedCat (CC BY-SA 3.0): + fireflies_firefly.png + fireflies_firefly_animated.png + fireflies_bugnet.png + fireflies_bottle.png + fireflies_bottle_animated.png + +fireflies_bugnet.png is modified from a texture by tenplus1 (CC0) + +fireflies_bottle.png and fireflies_bottle_animated.png are +modified from a texture by Vanessa Ezekowitz (CC BY-SA 3.0) \ No newline at end of file diff --git a/mods/fireflies/init.lua b/mods/fireflies/init.lua new file mode 100644 index 0000000..827ed98 --- /dev/null +++ b/mods/fireflies/init.lua @@ -0,0 +1,259 @@ +-- firefly/init.lua + +-- Load support for MT game translation. +local S = minetest.get_translator("fireflies") + +-- Legacy compatibility, when pointabilities don't exist, pointable is set to true. +local pointable_compat = not minetest.features.item_specific_pointabilities + +minetest.register_node("fireflies:firefly", { + description = S("Firefly"), + drawtype = "plantlike", + tiles = {{ + name = "fireflies_firefly_animated.png", + animation = { + type = "vertical_frames", + aspect_w = 16, + aspect_h = 16, + length = 1.5 + }, + }}, + inventory_image = "fireflies_firefly.png", + wield_image = "fireflies_firefly.png", + waving = 1, + paramtype = "light", + sunlight_propagates = true, + buildable_to = true, + walkable = false, + pointable = pointable_compat, + groups = {catchable = 1}, + selection_box = { + type = "fixed", + fixed = {-0.1, -0.1, -0.1, 0.1, 0.1, 0.1}, + }, + light_source = 6, + floodable = true, + on_construct = function(pos) + minetest.get_node_timer(pos):start(1) + end, + on_timer = function(pos, elapsed) + if minetest.get_node_light(pos) > 11 then + minetest.set_node(pos, {name = "fireflies:hidden_firefly"}) + end + minetest.get_node_timer(pos):start(30) + end +}) + +minetest.register_node("fireflies:hidden_firefly", { + description = S("Hidden Firefly"), + drawtype = "airlike", + inventory_image = "fireflies_firefly.png^default_invisible_node_overlay.png", + wield_image = "fireflies_firefly.png^default_invisible_node_overlay.png", + paramtype = "light", + sunlight_propagates = true, + walkable = false, + pointable = false, + diggable = false, + buildable_to = true, + drop = "", + groups = {not_in_creative_inventory = 1}, + floodable = true, + on_construct = function(pos) + minetest.get_node_timer(pos):start(1) + end, + on_timer = function(pos, elapsed) + if minetest.get_node_light(pos) <= 11 then + minetest.set_node(pos, {name = "fireflies:firefly"}) + end + minetest.get_node_timer(pos):start(30) + end +}) + + +-- bug net +minetest.register_tool("fireflies:bug_net", { + description = S("Bug Net"), + inventory_image = "fireflies_bugnet.png", + pointabilities = {nodes = {["group:catchable"] = true}}, + tool_capabilities = { + groupcaps = { + catchable = { maxlevel = 1, uses = 256, times = { [1] = 0, [2] = 0, [3] = 0 } } + }, + }, +}) + +minetest.register_craft( { + output = "fireflies:bug_net", + recipe = { + {"farming:string", "farming:string"}, + {"farming:string", "farming:string"}, + {"group:stick", ""} + } +}) + + +-- firefly in a bottle +minetest.register_node("fireflies:firefly_bottle", { + description = S("Firefly in a Bottle"), + inventory_image = "fireflies_bottle.png", + wield_image = "fireflies_bottle.png", + tiles = {{ + name = "fireflies_bottle_animated.png", + animation = { + type = "vertical_frames", + aspect_w = 16, + aspect_h = 16, + length = 1.5 + }, + }}, + drawtype = "plantlike", + paramtype = "light", + sunlight_propagates = true, + light_source = 9, + walkable = false, + groups = {vessel = 1, dig_immediate = 3, attached_node = 1}, + selection_box = { + type = "fixed", + fixed = {-0.25, -0.5, -0.25, 0.25, 0.3, 0.25} + }, + sounds = default.node_sound_glass_defaults(), + on_rightclick = function(pos, node, player, itemstack, pointed_thing) + local lower_pos = {x = pos.x, y = pos.y + 1, z = pos.z} + if minetest.is_protected(pos, player:get_player_name()) or + minetest.get_node(lower_pos).name ~= "air" then + return + end + + local upper_pos = {x = pos.x, y = pos.y + 2, z = pos.z} + local firefly_pos + + if not minetest.is_protected(upper_pos, player:get_player_name()) and + minetest.get_node(upper_pos).name == "air" then + firefly_pos = upper_pos + elseif not minetest.is_protected(lower_pos, player:get_player_name()) then + firefly_pos = lower_pos + end + + if firefly_pos then + minetest.set_node(pos, {name = "vessels:glass_bottle"}) + minetest.set_node(firefly_pos, {name = "fireflies:firefly"}) + minetest.get_node_timer(firefly_pos):start(1) + end + end +}) + +minetest.register_craft( { + output = "fireflies:firefly_bottle", + recipe = { + {"fireflies:firefly"}, + {"vessels:glass_bottle"} + } +}) + + +-- register fireflies as decorations + +if minetest.get_mapgen_setting("mg_name") == "v6" then + + minetest.register_decoration({ + name = "fireflies:firefly_low", + deco_type = "simple", + place_on = "default:dirt_with_grass", + place_offset_y = 2, + sidelen = 80, + fill_ratio = 0.0002, + y_max = 31000, + y_min = 1, + decoration = "fireflies:hidden_firefly", + }) + + minetest.register_decoration({ + name = "fireflies:firefly_high", + deco_type = "simple", + place_on = "default:dirt_with_grass", + place_offset_y = 3, + sidelen = 80, + fill_ratio = 0.0002, + y_max = 31000, + y_min = 1, + decoration = "fireflies:hidden_firefly", + }) + +else + + minetest.register_decoration({ + name = "fireflies:firefly_low", + deco_type = "simple", + place_on = { + "default:dirt_with_grass", + "default:dirt_with_coniferous_litter", + "default:dirt_with_rainforest_litter", + "default:dirt" + }, + place_offset_y = 2, + sidelen = 80, + fill_ratio = 0.0005, + biomes = { + "deciduous_forest", + "coniferous_forest", + "rainforest", + "rainforest_swamp" + }, + y_max = 31000, + y_min = -1, + decoration = "fireflies:hidden_firefly", + }) + + minetest.register_decoration({ + name = "fireflies:firefly_high", + deco_type = "simple", + place_on = { + "default:dirt_with_grass", + "default:dirt_with_coniferous_litter", + "default:dirt_with_rainforest_litter", + "default:dirt" + }, + place_offset_y = 3, + sidelen = 80, + fill_ratio = 0.0005, + biomes = { + "deciduous_forest", + "coniferous_forest", + "rainforest", + "rainforest_swamp" + }, + y_max = 31000, + y_min = -1, + decoration = "fireflies:hidden_firefly", + }) + +end + + +-- get decoration IDs +local firefly_low = minetest.get_decoration_id("fireflies:firefly_low") +local firefly_high = minetest.get_decoration_id("fireflies:firefly_high") + +minetest.set_gen_notify({decoration = true}, {firefly_low, firefly_high}) + +-- start nodetimers +minetest.register_on_generated(function(minp, maxp, blockseed) + local gennotify = minetest.get_mapgen_object("gennotify") + local poslist = {} + + for _, pos in ipairs(gennotify["decoration#"..firefly_low] or {}) do + local firefly_low_pos = {x = pos.x, y = pos.y + 3, z = pos.z} + table.insert(poslist, firefly_low_pos) + end + for _, pos in ipairs(gennotify["decoration#"..firefly_high] or {}) do + local firefly_high_pos = {x = pos.x, y = pos.y + 4, z = pos.z} + table.insert(poslist, firefly_high_pos) + end + + if #poslist ~= 0 then + for i = 1, #poslist do + local pos = poslist[i] + minetest.get_node_timer(pos):start(1) + end + end +end) diff --git a/mods/fireflies/license.txt b/mods/fireflies/license.txt new file mode 100644 index 0000000..eebdad6 --- /dev/null +++ b/mods/fireflies/license.txt @@ -0,0 +1,58 @@ +License of source code +---------------------- + +The MIT License (MIT) +Copyright (c) 2018 Shara RedCat + +Permission is hereby granted, free of charge, to any person obtaining a copy of this +software and associated documentation files (the "Software"), to deal in the Software +without restriction, including without limitation the rights to use, copy, modify, merge, +publish, distribute, sublicense, and/or sell copies of the Software, and to permit +persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or +substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, +INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR +PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE +FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR +OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER +DEALINGS IN THE SOFTWARE. + +For more details: +https://opensource.org/licenses/MIT + +Licenses of media (textures) +---------------------------- + +Attribution-ShareAlike 3.0 Unported (CC BY-SA 3.0) +Copyright (C) 2018 Shara RedCat + +You are free to: +Share — copy and redistribute the material in any medium or format. +Adapt — remix, transform, and build upon the material for any purpose, even commercially. +The licensor cannot revoke these freedoms as long as you follow the license terms. + +Under the following terms: + +Attribution — You must give appropriate credit, provide a link to the license, and +indicate if changes were made. You may do so in any reasonable manner, but not in any way +that suggests the licensor endorses you or your use. + +ShareAlike — If you remix, transform, or build upon the material, you must distribute +your contributions under the same license as the original. + +No additional restrictions — You may not apply legal terms or technological measures that +legally restrict others from doing anything the license permits. + +Notices: + +You do not have to comply with the license for elements of the material in the public +domain or where your use is permitted by an applicable exception or limitation. +No warranties are given. The license may not give you all of the permissions necessary +for your intended use. For example, other rights such as publicity, privacy, or moral +rights may limit how you use the material. + +For more details: +http://creativecommons.org/licenses/by-sa/3.0/ \ No newline at end of file diff --git a/mods/fireflies/locale/fireflies.bg.tr b/mods/fireflies/locale/fireflies.bg.tr new file mode 100644 index 0000000..6022847 --- /dev/null +++ b/mods/fireflies/locale/fireflies.bg.tr @@ -0,0 +1,5 @@ +# textdomain: fireflies +Firefly=Светулка +Hidden Firefly=Скрита светулка +Bug Net=Сак за насекоми +Firefly in a Bottle=Светулка в буркан diff --git a/mods/fireflies/locale/fireflies.da.tr b/mods/fireflies/locale/fireflies.da.tr new file mode 100644 index 0000000..c3eac5d --- /dev/null +++ b/mods/fireflies/locale/fireflies.da.tr @@ -0,0 +1,5 @@ +# textdomain: fireflies +Firefly=Ildflue +Hidden Firefly=Gemt ildflue +Bug Net=Insektnet +Firefly in a Bottle=Ildflue i en flaske diff --git a/mods/fireflies/locale/fireflies.de.tr b/mods/fireflies/locale/fireflies.de.tr new file mode 100644 index 0000000..c5d116a --- /dev/null +++ b/mods/fireflies/locale/fireflies.de.tr @@ -0,0 +1,5 @@ +# textdomain: fireflies +Firefly=Glühwürmchen +Hidden Firefly=Verborgenes Glühwürmchen +Bug Net=Insektennetz +Firefly in a Bottle=Glühwürmchen in einer Flasche diff --git a/mods/fireflies/locale/fireflies.eo.tr b/mods/fireflies/locale/fireflies.eo.tr new file mode 100644 index 0000000..0eaa2cb --- /dev/null +++ b/mods/fireflies/locale/fireflies.eo.tr @@ -0,0 +1,5 @@ +# textdomain: fireflies +Firefly=Lampiro +Hidden Firefly=Kaŝita lampiro +Bug Net=Insekta reto +Firefly in a Bottle=Lampiro en botelo diff --git a/mods/fireflies/locale/fireflies.es.tr b/mods/fireflies/locale/fireflies.es.tr new file mode 100644 index 0000000..95d053e --- /dev/null +++ b/mods/fireflies/locale/fireflies.es.tr @@ -0,0 +1,5 @@ +# textdomain: fireflies +Firefly=Luciérnaga +Hidden Firefly=Luciérnaga oculta +Bug Net=Red de insectos +Firefly in a Bottle=Luciérnaga en botella diff --git a/mods/fireflies/locale/fireflies.eu.tr b/mods/fireflies/locale/fireflies.eu.tr new file mode 100644 index 0000000..b3321fc --- /dev/null +++ b/mods/fireflies/locale/fireflies.eu.tr @@ -0,0 +1,5 @@ +# textdomain: fireflies +Firefly=Ipurtargia +Hidden Firefly=Ezkutuk ipurtargi +Bug Net=Intsektu-sarea +Firefly in a Bottle=Ipurtargia botilan diff --git a/mods/fireflies/locale/fireflies.fr.tr b/mods/fireflies/locale/fireflies.fr.tr new file mode 100644 index 0000000..3deda66 --- /dev/null +++ b/mods/fireflies/locale/fireflies.fr.tr @@ -0,0 +1,5 @@ +# textdomain: fireflies +Firefly=Luciole +Hidden Firefly=Luciole cachée +Bug Net=Filet à papillon +Firefly in a Bottle=Luciole en bouteille diff --git a/mods/fireflies/locale/fireflies.hu.tr b/mods/fireflies/locale/fireflies.hu.tr new file mode 100644 index 0000000..9a93533 --- /dev/null +++ b/mods/fireflies/locale/fireflies.hu.tr @@ -0,0 +1,5 @@ +# textdomain: fireflies +Firefly=Szentjánosbogár +Hidden Firefly=Rejtett szentjánosbogár +Bug Net=Rovarháló +Firefly in a Bottle=Szentjánosbogár egy palackban diff --git a/mods/fireflies/locale/fireflies.id.tr b/mods/fireflies/locale/fireflies.id.tr new file mode 100644 index 0000000..bc6434e --- /dev/null +++ b/mods/fireflies/locale/fireflies.id.tr @@ -0,0 +1,5 @@ +# textdomain: fireflies +Firefly=Kunang-Kunang +Hidden Firefly=Kunang-Kunang Tersembunyi +Bug Net=Jaring Serangga +Firefly in a Bottle=Kunang-Kunang dalam Botol diff --git a/mods/fireflies/locale/fireflies.it.tr b/mods/fireflies/locale/fireflies.it.tr new file mode 100644 index 0000000..22ad57b --- /dev/null +++ b/mods/fireflies/locale/fireflies.it.tr @@ -0,0 +1,5 @@ +# textdomain: fireflies +Firefly=Lucciola +Hidden Firefly=Lucciola nascosta +Bug Net=Retino +Firefly in a Bottle=Lucciola imbottigliata diff --git a/mods/fireflies/locale/fireflies.ja.tr b/mods/fireflies/locale/fireflies.ja.tr new file mode 100644 index 0000000..4116ca2 --- /dev/null +++ b/mods/fireflies/locale/fireflies.ja.tr @@ -0,0 +1,5 @@ +# textdomain: fireflies +Firefly=ホタル +Hidden Firefly=隠されたホタル +Bug Net=虫取り網 +Firefly in a Bottle=ホタルの入った瓶 diff --git a/mods/fireflies/locale/fireflies.jbo.tr b/mods/fireflies/locale/fireflies.jbo.tr new file mode 100644 index 0000000..4e69ab4 --- /dev/null +++ b/mods/fireflies/locale/fireflies.jbo.tr @@ -0,0 +1,5 @@ +# textdomain: fireflies +Firefly=lo gusycinki +Hidden Firefly=lo se mipri gusycinki +Bug Net=lo cinki julne +Firefly in a Bottle=lo gusycinki poi nenri lo botpi diff --git a/mods/fireflies/locale/fireflies.lv.tr b/mods/fireflies/locale/fireflies.lv.tr new file mode 100644 index 0000000..7bb6520 --- /dev/null +++ b/mods/fireflies/locale/fireflies.lv.tr @@ -0,0 +1,5 @@ +# textdomain: fireflies +Firefly=Jāņtārpiņš +Hidden Firefly=Paslēpts jāņtārpiņš +Bug Net=Ķeramtīkls +Firefly in a Bottle=Jāņtārpiņš pudelē diff --git a/mods/fireflies/locale/fireflies.ms.tr b/mods/fireflies/locale/fireflies.ms.tr new file mode 100644 index 0000000..509d03d --- /dev/null +++ b/mods/fireflies/locale/fireflies.ms.tr @@ -0,0 +1,5 @@ +# textdomain: fireflies +Firefly=Kelip-Kelip +Hidden Firefly=Kelip-Kelip Tersembunyi +Bug Net=Jaring Pepijat +Firefly in a Bottle=Kelip-Kelip dalam Botol diff --git a/mods/fireflies/locale/fireflies.pl.tr b/mods/fireflies/locale/fireflies.pl.tr new file mode 100644 index 0000000..b07152b --- /dev/null +++ b/mods/fireflies/locale/fireflies.pl.tr @@ -0,0 +1,5 @@ +# textdomain: fireflies +Firefly=Świetlik +Hidden Firefly=Ukryty świetlik +Bug Net=Siatka na owady +Firefly in a Bottle=Świetlik w butelce diff --git a/mods/fireflies/locale/fireflies.pt_BR.tr b/mods/fireflies/locale/fireflies.pt_BR.tr new file mode 100644 index 0000000..543c00b --- /dev/null +++ b/mods/fireflies/locale/fireflies.pt_BR.tr @@ -0,0 +1,5 @@ +# textdomain: fireflies +Firefly=Vaga-lume +Hidden Firefly=Vaga-lume escondido +Bug Net=Rede de Insetos +Firefly in a Bottle=Vaga-lume em uma garrafa diff --git a/mods/fireflies/locale/fireflies.ru.tr b/mods/fireflies/locale/fireflies.ru.tr new file mode 100644 index 0000000..8c50a7d --- /dev/null +++ b/mods/fireflies/locale/fireflies.ru.tr @@ -0,0 +1,5 @@ +# textdomain: fireflies +Firefly=Светлячок +Hidden Firefly=Притаившийся светлячок +Bug Net=Сачок +Firefly in a Bottle=Светлячок в бутылке diff --git a/mods/fireflies/locale/fireflies.sk.tr b/mods/fireflies/locale/fireflies.sk.tr new file mode 100644 index 0000000..b68674d --- /dev/null +++ b/mods/fireflies/locale/fireflies.sk.tr @@ -0,0 +1,5 @@ +# textdomain: fireflies +Firefly=Svetluška +Hidden Firefly=Skrytá svetluška +Bug Net=Sieťka na hmyz +Firefly in a Bottle=Svetluška vo fľaši diff --git a/mods/fireflies/locale/fireflies.sv.tr b/mods/fireflies/locale/fireflies.sv.tr new file mode 100644 index 0000000..d8016f9 --- /dev/null +++ b/mods/fireflies/locale/fireflies.sv.tr @@ -0,0 +1,5 @@ +# textdomain: fireflies +Firefly=Eldfluga +Hidden Firefly=Gömd eldfluga +Bug Net=Insektshåv +Firefly in a Bottle=Eldfluga i en flaska diff --git a/mods/fireflies/locale/fireflies.uk.tr b/mods/fireflies/locale/fireflies.uk.tr new file mode 100644 index 0000000..f1bcb16 --- /dev/null +++ b/mods/fireflies/locale/fireflies.uk.tr @@ -0,0 +1,5 @@ +# textdomain: fireflies +Firefly=Світляк +Hidden Firefly=Світляк, що причаївся +Bug Net=Сачок +Firefly in a Bottle=Світляк у пляшці diff --git a/mods/fireflies/locale/fireflies.zh_CN.tr b/mods/fireflies/locale/fireflies.zh_CN.tr new file mode 100644 index 0000000..5971785 --- /dev/null +++ b/mods/fireflies/locale/fireflies.zh_CN.tr @@ -0,0 +1,5 @@ +# textdomain: fireflies +Firefly=萤火虫 +Hidden Firefly=隐藏的萤火虫 +Bug Net=虫网 +Firefly in a Bottle=放在瓶子里的萤火虫 diff --git a/mods/fireflies/locale/fireflies.zh_TW.tr b/mods/fireflies/locale/fireflies.zh_TW.tr new file mode 100644 index 0000000..af754a9 --- /dev/null +++ b/mods/fireflies/locale/fireflies.zh_TW.tr @@ -0,0 +1,5 @@ +# textdomain: fireflies +Firefly=螢火蟲 +Hidden Firefly=隱藏的螢火蟲 +Bug Net=蟲網 +Firefly in a Bottle=放在瓶子裡的螢火蟲 diff --git a/mods/fireflies/locale/template.txt b/mods/fireflies/locale/template.txt new file mode 100644 index 0000000..91aa8ff --- /dev/null +++ b/mods/fireflies/locale/template.txt @@ -0,0 +1,5 @@ +# textdomain: fireflies +Firefly= +Hidden Firefly= +Bug Net= +Firefly in a Bottle= diff --git a/mods/fireflies/mod.conf b/mods/fireflies/mod.conf new file mode 100644 index 0000000..a533588 --- /dev/null +++ b/mods/fireflies/mod.conf @@ -0,0 +1,3 @@ +name = fireflies +description = Minetest Game mod: fireflies +depends = default, vessels diff --git a/mods/fireflies/textures/fireflies_bottle.png b/mods/fireflies/textures/fireflies_bottle.png new file mode 100644 index 0000000000000000000000000000000000000000..ecca0363096bddd994397af8de7a04d786f096e9 GIT binary patch literal 172 zcmeAS@N?(olHy`uVBq!ia0y~yU=RRd7G?$phPQVgfdmu-d_r6q7#J>Gd9Y>A*?mW@ z+`9Gj*qIw!x1L$O^~B7^+>YGX|NqlsPxm!3FfcHd1o;IsI6S+N#=yW}>FMGa!f`!W zL8!o|;li25CPsmFVdQ&MBb@03tFxdH?_b literal 0 HcmV?d00001 diff --git a/mods/fireflies/textures/fireflies_bottle_animated.png b/mods/fireflies/textures/fireflies_bottle_animated.png new file mode 100644 index 0000000000000000000000000000000000000000..294ff974203694d660df65fded9991158c6fcfef GIT binary patch literal 203 zcmeAS@N?(olHy`uVBq!ia0y~yU=UznU`SwLW?*1=_W%841_lO|0G|+71_p*Ld(NJ} ze1G4OE4OYvJ$B~C)~#n&Z#{A8`oo!xxgEK&|Np05pY&)h0|NtNNswPKgTu2MX$%Yu zp`I>|AsXkC6BPIg^cpUlar9*r2z#QmB7{k}=OE8QNl6JF1)gcV0&b1W%*rhX4=^QL z7%b9C^TIpm91?{5QW>zOWJZvjv_hgAY!!#@H2|v!d{AXZbVDNPH Kb6Mw<&;$V7O-vX7 literal 0 HcmV?d00001 diff --git a/mods/fireflies/textures/fireflies_bugnet.png b/mods/fireflies/textures/fireflies_bugnet.png new file mode 100644 index 0000000000000000000000000000000000000000..8ec3d33bae24643cd67bb0fc5b388c055ef831c9 GIT binary patch literal 192 zcmeAS@N?(olHy`uVBq!ia0y~yU=RRd7G?$phPQVgfdoVYd_r6q7#I$py2qiFxM0P> zSTA*7JLPaYLAT|(PZ<~(7)yfuf*Bm1-AH3#V2Jc|aSY+Op4xMex50pidF~~~HGTqC zj*7+yW=l@EQP1jgTYlQ4ZojTZ)ui@(X5gcy=R=fq_BT)5S4_<9f0Jn}H<*=P~9Z8mtWJJd7-wW%D;N QFfcH9y85}Sb4q9e00Q0;=2Uj=> bCNKz_aY*{NtuJI?U|{fc^>bP0l+XkKkj5h; literal 0 HcmV?d00001 diff --git a/mods/main/init.lua b/mods/main/init.lua index 4d88bcb..0e45ca3 100644 --- a/mods/main/init.lua +++ b/mods/main/init.lua @@ -124,9 +124,9 @@ core.register_on_mods_loaded(function() end end) -core.register_on_joinplayer(function(player) - core.place_schematic({x = 0, y = 0, z = 0}, core.get_modpath("main") .. "/schematics/map1.mts", 0, nil, false) - player:set_pos({x = 20, y = 26.5, z = 17}) +core.register_on_joinplayer(function(player) + core.place_schematic({x=0, y=-10, z=0}, core.get_modpath("main") .. "/schems/spawn.mts", 0, nil, true) + player:set_pos({x=5, y=-9.6, z=8}) player:get_inventory():set_list("main", {}) local player_name = player:get_player_name() @@ -157,7 +157,7 @@ core.register_on_respawnplayer(function(player) local player_name = player:get_player_name() - player:set_pos({x = 20, y = 26.5, z = 17}) + player:set_pos({x = map_data.spawn_x, y = map_data.spawn_y, z = map_data.spawn_z}) player:get_inventory():set_list("main", {}) @@ -168,33 +168,40 @@ end) core.register_privilege("match_manager", {description = "Can manage the match", give_to_singleplayer = true}) +core.register_chatcommand("load", { + params = "", + privs = {match_manager = true}, + description = "Load a map", + func = function(_, param) + map_data = place_map(param) + for _, player in pairs(core.get_connected_players()) do + local player_name = player:get_player_name() + set_player_mode(player, "normal") + player:set_nametag_attributes({color = {a = 0}}) + player:set_hp(20) + + player:set_pos({x=map_data.spawn_x, y=map_data.spawn_y, z=map_data.spawn_z}) + + end + end +}) + core.register_chatcommand("start", { params = "", privs = {match_manager = true}, description = "Start the match", func = function() - for x = 1, 39 do - for z = 1, 36 do - core.set_node({x = x, y = 25, z = z}, {name = "air"}) - end - end + remove_barrier(map_data.size_x, map_data.barrier_level, map_data.size_z) core.chat_send_all(core.colorize("green", "Match started!")) alive_players = {} for _, player in pairs(core.get_connected_players()) do local player_name = player:get_player_name() - - set_player_mode(player, "normal") - - player:set_nametag_attributes({color = {a = 0}}) - player:set_hp(20) - - player:set_properties({ - pointable = true, -- allow players to be killable after the match starts - }) - inv = player:get_inventory() inv:add_item("main", "ctf_ranged:ak47_loaded") inv:add_item("main", "ctf_ranged:ammo 3") + player:set_properties({ + pointable = true, -- allow players to be killable after the match starts + }) alive_players[player_name] = "alive" end return "" @@ -206,12 +213,10 @@ core.register_chatcommand("reset", { privs = {match_manager = true}, description = "Reset map", func = function() - core.place_schematic({x = 0, y = 0, z = 0}, core.get_modpath("main") .. "/schematics/map1.mts", 0, nil, false) for _, player in pairs(core.get_connected_players()) do local player_name = player:get_player_name() - player:set_nametag_attributes({color = {a = 255, r = 255, g = 255, b = 255}}) - player:set_pos({x = 20, y = 26.5, z = 17}) + player:set_pos({x = map_data.spawn_x, y = map_data.spawn_y, z = map_data.spawn_z}) set_player_mode(player, "normal") player:get_inventory():set_list("main", {}) player:set_properties({ diff --git a/mods/main/schematics/map1.mts b/mods/main/schematics/map1.mts deleted file mode 100644 index 0df74d24d2f6edf78606d7d01cb9cf9143f9c74c..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 3999 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 diff --git a/mods/main/schems/spawn.mts b/mods/main/schems/spawn.mts new file mode 100644 index 0000000000000000000000000000000000000000..bd2a714538bb6f11491f2975b96f8710afcb781b GIT binary patch literal 424 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�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

_|1xx>tI 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

(1Bbv!!1@ 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 Jy6Wca=K#4NP+$N6 literal 0 HcmV?d00001 diff --git a/mods/maps/mod.conf b/mods/maps/mod.conf new file mode 100644 index 0000000..a1af990 --- /dev/null +++ b/mods/maps/mod.conf @@ -0,0 +1,3 @@ +name = maps +description = Maps mod for simple-shooter-game +depends = main diff --git a/mods/sprint/COPYING b/mods/sprint/COPYING new file mode 100644 index 0000000..0e259d4 --- /dev/null +++ b/mods/sprint/COPYING @@ -0,0 +1,121 @@ +Creative Commons Legal Code + +CC0 1.0 Universal + + CREATIVE COMMONS CORPORATION IS NOT A LAW FIRM AND DOES NOT PROVIDE + LEGAL SERVICES. DISTRIBUTION OF THIS DOCUMENT DOES NOT CREATE AN + ATTORNEY-CLIENT RELATIONSHIP. CREATIVE COMMONS PROVIDES THIS + INFORMATION ON AN "AS-IS" BASIS. CREATIVE COMMONS MAKES NO WARRANTIES + REGARDING THE USE OF THIS DOCUMENT OR THE INFORMATION OR WORKS + PROVIDED HEREUNDER, AND DISCLAIMS LIABILITY FOR DAMAGES RESULTING FROM + THE USE OF THIS DOCUMENT OR THE INFORMATION OR WORKS PROVIDED + HEREUNDER. + +Statement of Purpose + +The laws of most jurisdictions throughout the world automatically confer +exclusive Copyright and Related Rights (defined below) upon the creator +and subsequent owner(s) (each and all, an "owner") of an original work of +authorship and/or a database (each, a "Work"). + +Certain owners wish to permanently relinquish those rights to a Work for +the purpose of contributing to a commons of creative, cultural and +scientific works ("Commons") that the public can reliably and without fear +of later claims of infringement build upon, modify, incorporate in other +works, reuse and redistribute as freely as possible in any form whatsoever +and for any purposes, including without limitation commercial purposes. +These owners may contribute to the Commons to promote the ideal of a free +culture and the further production of creative, cultural and scientific +works, or to gain reputation or greater distribution for their Work in +part through the use and efforts of others. + +For these and/or other purposes and motivations, and without any +expectation of additional consideration or compensation, the person +associating CC0 with a Work (the "Affirmer"), to the extent that he or she +is an owner of Copyright and Related Rights in the Work, voluntarily +elects to apply CC0 to the Work and publicly distribute the Work under its +terms, with knowledge of his or her Copyright and Related Rights in the +Work and the meaning and intended legal effect of CC0 on those rights. + +1. Copyright and Related Rights. A Work made available under CC0 may be +protected by copyright and related or neighboring rights ("Copyright and +Related Rights"). Copyright and Related Rights include, but are not +limited to, the following: + + i. the right to reproduce, adapt, distribute, perform, display, + communicate, and translate a Work; + ii. moral rights retained by the original author(s) and/or performer(s); +iii. publicity and privacy rights pertaining to a person's image or + likeness depicted in a Work; + iv. rights protecting against unfair competition in regards to a Work, + subject to the limitations in paragraph 4(a), below; + v. rights protecting the extraction, dissemination, use and reuse of data + in a Work; + vi. database rights (such as those arising under Directive 96/9/EC of the + European Parliament and of the Council of 11 March 1996 on the legal + protection of databases, and under any national implementation + thereof, including any amended or successor version of such + directive); and +vii. other similar, equivalent or corresponding rights throughout the + world based on applicable law or treaty, and any national + implementations thereof. + +2. Waiver. To the greatest extent permitted by, but not in contravention +of, applicable law, Affirmer hereby overtly, fully, permanently, +irrevocably and unconditionally waives, abandons, and surrenders all of +Affirmer's Copyright and Related Rights and associated claims and causes +of action, whether now known or unknown (including existing as well as +future claims and causes of action), in the Work (i) in all territories +worldwide, (ii) for the maximum duration provided by applicable law or +treaty (including future time extensions), (iii) in any current or future +medium and for any number of copies, and (iv) for any purpose whatsoever, +including without limitation commercial, advertising or promotional +purposes (the "Waiver"). Affirmer makes the Waiver for the benefit of each +member of the public at large and to the detriment of Affirmer's heirs and +successors, fully intending that such Waiver shall not be subject to +revocation, rescission, cancellation, termination, or any other legal or +equitable action to disrupt the quiet enjoyment of the Work by the public +as contemplated by Affirmer's express Statement of Purpose. + +3. Public License Fallback. Should any part of the Waiver for any reason +be judged legally invalid or ineffective under applicable law, then the +Waiver shall be preserved to the maximum extent permitted taking into +account Affirmer's express Statement of Purpose. In addition, to the +extent the Waiver is so judged Affirmer hereby grants to each affected +person a royalty-free, non transferable, non sublicensable, non exclusive, +irrevocable and unconditional license to exercise Affirmer's Copyright and +Related Rights in the Work (i) in all territories worldwide, (ii) for the +maximum duration provided by applicable law or treaty (including future +time extensions), (iii) in any current or future medium and for any number +of copies, and (iv) for any purpose whatsoever, including without +limitation commercial, advertising or promotional purposes (the +"License"). The License shall be deemed effective as of the date CC0 was +applied by Affirmer to the Work. Should any part of the License for any +reason be judged legally invalid or ineffective under applicable law, such +partial invalidity or ineffectiveness shall not invalidate the remainder +of the License, and in such case Affirmer hereby affirms that he or she +will not (i) exercise any of his or her remaining Copyright and Related +Rights in the Work or (ii) assert any associated claims and causes of +action with respect to the Work, in either case contrary to Affirmer's +express Statement of Purpose. + +4. Limitations and Disclaimers. + + a. No trademark or patent rights held by Affirmer are waived, abandoned, + surrendered, licensed or otherwise affected by this document. + b. Affirmer offers the Work as-is and makes no representations or + warranties of any kind concerning the Work, express, implied, + statutory or otherwise, including without limitation warranties of + title, merchantability, fitness for a particular purpose, non + infringement, or the absence of latent or other defects, accuracy, or + the present or absence of errors, whether or not discoverable, all to + the greatest extent permissible under applicable law. + c. Affirmer disclaims responsibility for clearing rights of other persons + that may apply to the Work or any use thereof, including without + limitation any person's Copyright and Related Rights in the Work. + Further, Affirmer disclaims responsibility for obtaining any necessary + consents, permissions or other rights required for any use of the + Work. + d. Affirmer understands and acknowledges that Creative Commons is not a + party to this document and has no duty or obligation with respect to + this CC0 or use of the Work. diff --git a/mods/sprint/README.md b/mods/sprint/README.md new file mode 100644 index 0000000..71e7d44 --- /dev/null +++ b/mods/sprint/README.md @@ -0,0 +1,62 @@ +Sprint Mod For Minetest by GunshipPenguin + +Allows the player to sprint by either double tapping w or pressing e. +By default, sprinting will make the player travel 80% faster and +allow him/her to jump 10% higher. Also adds a stamina bar that goes +down when the player sprints and goes up when he/she isn't +sprinting. + +This mod is compatible with the HUD bars [hudbars] mod, but does +not depend on it. In this care, a green HUD bar will be displayed, +also showing a number. +If this mod is not present, a standard statbar with 0-20 +“half-arrows” is shown, which is a bit more coarse than the HUD +bar version. + + +Licence: CC0 (see COPYING file) + +--- + +This mod can be configured by changing the variables declared in +the start of init.lua. The following is a brief explanation of each +one. + +SPRINT_METHOD (default 1) + +What a player has to do to start sprinting. 0 = double tap w, 1 = press e. +Note that if you have the fast privlige, and have the fast +speed turned on, you will run very, very fast. You can toggle this +by pressing j. + +SPRINT_SPEED (default 1.5) + +How fast the player will move when sprinting as opposed to normal +movement speed. 1.0 represents normal speed so 1.5 would mean that a +sprinting player would travel 50% faster than a walking player and +2.4 would mean that a sprinting player would travel 140% faster than +a walking player. + +SPRINT_JUMP (default 1.1) + +How high the player will jump when sprinting as opposed to normal +jump height. Same as SPRINT_SPEED, just controls jump height while +sprinting rather than speed. + +SPRINT_STAMINA (default 20) + +How long the player can sprint for in seconds. Each player has a +stamina variable assigned to them, it is initially set to +SPRINT_STAMINA and can go no higher. When the player is sprinting, +this variable ticks down once each second, and when it reaches 0, +the player stops sprinting. It ticks back up when the player isn't +sprinting and stops at SPRINT_STAMINA. Set this to a huge value if +you want unlimited sprinting. + +SPRINT_TIMEOUT (default 0.5) + +Only used if SPRINT_METHOD = 0. +How much time the player has after releasing w, to press w again and +start sprinting. Setting this too high will result in unwanted +sprinting and setting it too low will result in it being +difficult/impossible to sprint. diff --git a/mods/sprint/depends.txt b/mods/sprint/depends.txt new file mode 100644 index 0000000..3e1d5c2 --- /dev/null +++ b/mods/sprint/depends.txt @@ -0,0 +1 @@ +hudbars? diff --git a/mods/sprint/esprint.lua b/mods/sprint/esprint.lua new file mode 100644 index 0000000..87797ec --- /dev/null +++ b/mods/sprint/esprint.lua @@ -0,0 +1,125 @@ +--[[ +Sprint mod for Minetest by GunshipPenguin + +To the extent possible under law, the author(s) +have dedicated all copyright and related and neighboring rights +to this software to the public domain worldwide. This software is +distributed without any warranty. +]] + +local players = {} +local staminaHud = {} + +local function setSprinting(playerName, sprinting) --Sets the state of a player (0=stopped/moving, 1=sprinting) + local player = minetest.get_player_by_name(playerName) + if players[playerName] then + players[playerName]["sprinting"] = sprinting + if sprinting == true then + player:set_physics_override({speed=SPRINT_SPEED,jump=SPRINT_JUMP}) + elseif sprinting == false then + player:set_physics_override({speed=1.0,jump=1.0}) + end + return true + end + return false +end + +minetest.register_on_joinplayer(function(player) + local playerName = player:get_player_name() + + players[playerName] = { + sprinting = false, + timeOut = 0, + stamina = SPRINT_STAMINA, + shouldSprint = false, + } + if SPRINT_HUDBARS_USED then + hb.init_hudbar(player, "sprint") + else + players[playerName].hud = player:hud_add({ + hud_elem_type = "statbar", + position = {x=0.5,y=1}, + size = {x=24, y=24}, + text = "sprint_stamina_icon.png", + number = 20, + alignment = {x=0,y=1}, + offset = {x=-263, y=-110}, + } + ) + end +end) +minetest.register_on_leaveplayer(function(player) + local playerName = player:get_player_name() + players[playerName] = nil +end) +minetest.register_globalstep(function(dtime) + --Get the gametime + local gameTime = minetest.get_gametime() + + --Loop through all connected players + for playerName,playerInfo in pairs(players) do + local player = minetest.get_player_by_name(playerName) + if player ~= nil then + --Check if the player should be sprinting + if player:get_player_control()["aux1"] and player:get_player_control()["up"] then + players[playerName]["shouldSprint"] = true + else + players[playerName]["shouldSprint"] = false + end + + --If the player is sprinting, create particles behind him/her + if playerInfo["sprinting"] == true and gameTime % 0.1 == 0 then + local numParticles = math.random(1, 2) + local playerPos = player:getpos() + local playerNode = minetest.get_node({x=playerPos["x"], y=playerPos["y"]-1, z=playerPos["z"]}) + if playerNode["name"] ~= "air" then + for i=1, numParticles, 1 do + minetest.add_particle({ + pos = {x=playerPos["x"]+math.random(-1,1)*math.random()/2,y=playerPos["y"]+0.1,z=playerPos["z"]+math.random(-1,1)*math.random()/2}, + vel = {x=0, y=5, z=0}, + acc = {x=0, y=-13, z=0}, + expirationtime = math.random(), + size = math.random()+0.5, + collisiondetection = true, + vertical = false, + texture = "sprint_particle.png", + }) + end + end + end + + --Adjust player states + if players[playerName]["shouldSprint"] == true then --Stopped + setSprinting(playerName, true) + elseif players[playerName]["shouldSprint"] == false then + setSprinting(playerName, false) + end + + --Lower the player's stamina by dtime if he/she is sprinting and set his/her state to 0 if stamina is zero + if playerInfo["sprinting"] == true then + playerInfo["stamina"] = playerInfo["stamina"] - dtime + if playerInfo["stamina"] <= 0 then + playerInfo["stamina"] = 0 + setSprinting(playerName, false) + end + + --Increase player's stamina if he/she is not sprinting and his/her stamina is less than SPRINT_STAMINA + elseif playerInfo["sprinting"] == false and playerInfo["stamina"] < SPRINT_STAMINA then + playerInfo["stamina"] = playerInfo["stamina"] + dtime + end + -- Cap stamina at SPRINT_STAMINA + if playerInfo["stamina"] > SPRINT_STAMINA then + playerInfo["stamina"] = SPRINT_STAMINA + end + + --Update the players's hud sprint stamina bar + + if SPRINT_HUDBARS_USED then + hb.change_hudbar(player, "sprint", playerInfo["stamina"]) + else + local numBars = (playerInfo["stamina"]/SPRINT_STAMINA)*20 + player:hud_change(playerInfo["hud"], "number", numBars) + end + end + end +end) diff --git a/mods/sprint/init.lua b/mods/sprint/init.lua new file mode 100644 index 0000000..5108bac --- /dev/null +++ b/mods/sprint/init.lua @@ -0,0 +1,34 @@ +--[[ +Sprint mod for Minetest by GunshipPenguin + +To the extent possible under law, the author(s) +have dedicated all copyright and related and neighboring rights +to this software to the public domain worldwide. This software is +distributed without any warranty. +]] + +--Configuration variables, these are all explained in README.md +SPRINT_METHOD = 1 +SPRINT_SPEED = 1.8 +SPRINT_JUMP = 1.1 +SPRINT_STAMINA = 20 +SPRINT_TIMEOUT = 0.5 --Only used if SPRINT_METHOD = 0 + +if minetest.get_modpath("hudbars") ~= nil then + hb.register_hudbar("sprint", 0xFFFFFF, "Stamina", + { bar = "sprint_stamina_bar.png", icon = "sprint_stamina_icon.png" }, + SPRINT_STAMINA, SPRINT_STAMINA, + false, "%s: %.1f/%.1f") + SPRINT_HUDBARS_USED = true +else + SPRINT_HUDBARS_USED = false +end + +if SPRINT_METHOD == 0 then + dofile(minetest.get_modpath("sprint") .. "/wsprint.lua") +elseif SPRINT_METHOD == 1 then + dofile(minetest.get_modpath("sprint") .. "/esprint.lua") +else + minetest.log("error", "Sprint Mod - SPRINT_METHOD is not set properly, using e to sprint") + dofile(minetest.get_modpath("sprint") .. "/esprint.lua") +end diff --git a/mods/sprint/textures/sprint_particle.png b/mods/sprint/textures/sprint_particle.png new file mode 100644 index 0000000000000000000000000000000000000000..451fbba42e715504db85b330c88192d7518bc412 GIT binary patch literal 791 zcmeAS@N?(olHy`uVBq!ia0y~yU=RRd4kiW$h6xih%orFLI14-?iy0WWg+Z8+Vb&Z8 z1_lQ95>H=O_WMjSEX-Ovbb7BaFfd4#xJHyX=jZ08=9Mrw7o{eaq^2m8XO?6rxO@5r zgg5euGcYhs^mK6y(Kyd~@Oa)GHwK0PzeH)hojHqE?8@qxd&H8XvG$zm{s)`w4>;^o zl%L7Kmk^n%TExBc&Ebb4&ul+@kB|TKb=Hn2mBHz=bD!uZ-@mBH<0S9+C2Vui{{1_5 zD|`I=z2o5)_k)Kv$$YwhxO>jUx0xzwZ*TX14UW@Nyl_VG+U{+7{9m`f_kS+_-2VRE z1?%JO_S@MmDZIk#eD&KDBbI|VC)SJomT265ci}4QXHV#Rd}*V=g|JMGr5gNa&wB3Y37(6OI^6vRi#msp|I5Cz)p_X)r)=3UfOszH?m(?JWH)@Uw+2b{=+BueWy<~ zP08_M`u^^fljhgw$K!PlN4TDo|Gr(KY4hR-hU+ICP&G3wxf1+Lh&y(kn(ysx%I*>2 zUVGoXe*ao_i}-Av;1hFNzQne3Ph>l?_3YJ+{F@h5-YZwW&Tz?{QQ^qy)0^AB>e+ZT zm|gbF@Y>`VVddp){!M1fml(a&+uz#ywxv!MO_geQ;?hgwbqGG5De}bi=#f8RCck$b zKVtMN(M95g#MY#O+}-jkl4rIrTYq~V_eSm2RSD}-Bh>ty_>~RxJ3M{vDqlNfr13cP zvgMIeWmiwAvovHT^h`*6@cgV|5l>B_OuIKbLx-S@Tbh&=%YwykOul{Ebc|!Zy!&JU z-^(+0tvhRc&E)5gU7}h0tUP};^2NN|yhdu4%e-VMDVLs&g|nvh`Tl(K%h0ClkU<2O zrSZYlefyrdO8kgf_4?{l|LxPi%ij|%t)AnOvazCE?*HcxJ&G<~J^~qYyfv>bk6#}f z{r~UZqgUSfHl$sv>iaq?S6#0)z`)??>gTe~DWM4ftA%NR literal 0 HcmV?d00001 diff --git a/mods/sprint/textures/sprint_stamina_bar.png b/mods/sprint/textures/sprint_stamina_bar.png new file mode 100644 index 0000000000000000000000000000000000000000..1ca7a75ec481c1d92a74a0896c8b0a5196dbd140 GIT binary patch literal 80 zcmeAS@N?(olHy`uVBq!ia0y~yU|?ckU=ZM7V_;ygS+Q;l0|SG&r;B3<$Ms~9*~dT3 kZ)|LA>}2F(o5slS;}hfMnv}ae3=9kmp00i_>zopr0Ln8J@&Et; literal 0 HcmV?d00001 diff --git a/mods/sprint/textures/sprint_stamina_icon.png b/mods/sprint/textures/sprint_stamina_icon.png new file mode 100644 index 0000000000000000000000000000000000000000..eb661eb10b903e708de3522870e6f051cc95d546 GIT binary patch literal 148 zcmeAS@N?(olHy`uVBq!ia0y~yU=RRd4mJh`2Kmqb6B!s7qCH(4Lo7}wCrEs8$dNl- zU-QXlij>n7#yQ`1@Fpr<)84_8sB&!PoNpZ8zBlvmte+(CD}cu#tb<=c`jAVe&c+3^ zeO8HgbUFRpEzqMor{f!w-t3tg7k#EKvH8HjApTgj*HzukfPsO5!PC{xWt~$(697-3 BGT8tC literal 0 HcmV?d00001 diff --git a/mods/sprint/wsprint.lua b/mods/sprint/wsprint.lua new file mode 100644 index 0000000..3a832e2 --- /dev/null +++ b/mods/sprint/wsprint.lua @@ -0,0 +1,135 @@ +--[[ +Sprint mod for Minetest by GunshipPenguin + +To the extent possible under law, the author(s) +have dedicated all copyright and related and neighboring rights +to this software to the public domain worldwide. This software is +distributed without any warranty. +]] + +local players = {} +local staminaHud = {} + +minetest.register_on_joinplayer(function(player) + local playerName = player:get_player_name() + players[playerName] = { + state = 0, + timeOut = 0, + stamina = SPRINT_STAMINA, + moving = false, + } + + if SPRINT_HUDBARS_USED then + hb.init_hudbar(player, "sprint") + else + players[playerName].hud = player:hud_add({ + hud_elem_type = "statbar", + position = {x=0.5,y=1}, + size = {x=24, y=24}, + text = "sprint_stamina_icon.png", + number = 20, + alignment = {x=0,y=1}, + offset = {x=-263, y=-110}, + } + ) + end +end) +minetest.register_on_leaveplayer(function(player) + local playerName = player:get_player_name() + players[playerName] = nil +end) +minetest.register_globalstep(function(dtime) + --Get the gametime + local gameTime = minetest.get_gametime() + + --Loop through all connected players + for playerName,playerInfo in pairs(players) do + local player = minetest.get_player_by_name(playerName) + if player ~= nil then + --Check if they are moving or not + players[playerName]["moving"] = player:get_player_control()["up"] + + --If the player has tapped w longer than SPRINT_TIMEOUT ago, set his/her state to 0 + if playerInfo["state"] == 2 then + if playerInfo["timeOut"] + SPRINT_TIMEOUT < gameTime then + players[playerName]["timeOut"] = nil + setState(playerName, 0) + end + + --If the player is sprinting, create particles behind him/her + elseif playerInfo["state"] == 3 and gameTime % 0.1 == 0 then + local numParticles = math.random(1, 2) + local playerPos = player:getpos() + local playerNode = minetest.get_node({x=playerPos["x"], y=playerPos["y"]-1, z=playerPos["z"]}) + if playerNode["name"] ~= "air" then + for i=1, numParticles, 1 do + minetest.add_particle({ + pos = {x=playerPos["x"]+math.random(-1,1)*math.random()/2,y=playerPos["y"]+0.1,z=playerPos["z"]+math.random(-1,1)*math.random()/2}, + vel = {x=0, y=5, z=0}, + acc = {x=0, y=-13, z=0}, + expirationtime = math.random(), + size = math.random()+0.5, + collisiondetection = true, + vertical = false, + texture = "sprint_particle.png", + }) + end + end + end + + --Adjust player states + if players[playerName]["moving"] == false and playerInfo["state"] == 3 then --Stopped + setState(playerName, 0) + elseif players[playerName]["moving"] == true and playerInfo["state"] == 0 then --Moving + setState(playerName, 1) + elseif players[playerName]["moving"] == false and playerInfo["state"] == 1 then --Primed + setState(playerName, 2) + elseif players[playerName]["moving"] == true and playerInfo["state"] == 2 then --Sprinting + setState(playerName, 3) + end + + --Lower the player's stamina by dtime if he/she is sprinting and set his/her state to 0 if stamina is zero + if playerInfo["state"] == 3 then + playerInfo["stamina"] = playerInfo["stamina"] - dtime + if playerInfo["stamina"] <= 0 then + playerInfo["stamina"] = 0 + setState(playerName, 0) + end + + --Increase player's stamina if he/she is not sprinting and his/her stamina is less than SPRINT_STAMINA + elseif playerInfo["state"] ~= 3 and playerInfo["stamina"] < SPRINT_STAMINA then + playerInfo["stamina"] = playerInfo["stamina"] + dtime + end + -- Cap stamina at SPRINT_STAMINA + if playerInfo["stamina"] > SPRINT_STAMINA then + playerInfo["stamina"] = SPRINT_STAMINA + end + + --Update the players's hud sprint stamina bar + + if SPRINT_HUDBARS_USED then + hb.change_hudbar(player, "sprint", playerInfo["stamina"]) + else + local numBars = (playerInfo["stamina"]/SPRINT_STAMINA)*20 + player:hud_change(playerInfo["hud"], "number", numBars) + end + end + end +end) + +function setState(playerName, state) --Sets the state of a player (0=stopped, 1=moving, 2=primed, 3=sprinting) + local player = minetest.get_player_by_name(playerName) + local gameTime = minetest.get_gametime() + if players[playerName] then + players[playerName]["state"] = state + if state == 0 then--Stopped + player:set_physics_override({speed=1.0,jump=1.0}) + elseif state == 2 then --Primed + players[playerName]["timeOut"] = gameTime + elseif state == 3 then --Sprinting + player:set_physics_override({speed=SPRINT_SPEED,jump=SPRINT_JUMP}) + end + return true + end + return false +end diff --git a/mods/stairs/README.txt b/mods/stairs/README.txt new file mode 100644 index 0000000..e684aed --- /dev/null +++ b/mods/stairs/README.txt @@ -0,0 +1,27 @@ +Minetest Game mod: stairs +========================= +See license.txt for license information. + +Authors of source code +---------------------- +Originally by Kahrl (LGPLv2.1+) and +celeron55, Perttu Ahola (LGPLv2.1+) +Various Minetest Game developers and contributors (LGPLv2.1+) + +Authors of media (textures) +--------------------------- + +Textures +-------- +Copyright (c) 2018 Shara RedCat (CC BY-SA 3.0): + Derived from a texture by PilzAdam (CC BY-SA 3.0): + stairs_obsidian_glass_outer_stairside.png + stairs_obsidian_glass_stairside.png + +Copyright (c) 2018 TumeniNodes (CC BY-SA 3.0): + Derived from a texture by celeron55 (CC BY-SA 3.0) and + converted to bright white by Krock (CC BY-SA 3.0): + stairs_glass_stairside.png + stairs_glass_split.png + Derived from a texture by PilzAdam (CC BY-SA 3.0): + stairs_obsidian_glass_split.png diff --git a/mods/stairs/init.lua b/mods/stairs/init.lua new file mode 100644 index 0000000..f3cddd1 --- /dev/null +++ b/mods/stairs/init.lua @@ -0,0 +1,1073 @@ +-- stairs/init.lua + +-- Minetest Game mod: stairs +-- See README.txt for licensing and other information. + + +-- Global namespace for functions + +stairs = {} + +-- Load support for MT game translation. +local S = minetest.get_translator("stairs") +-- Same as S, but will be ignored by translation file update scripts +local T = S + + +-- Register aliases for new pine node names + +minetest.register_alias("stairs:stair_pinewood", "stairs:stair_pine_wood") +minetest.register_alias("stairs:slab_pinewood", "stairs:slab_pine_wood") + + +-- Get setting for replace ABM + +local replace = minetest.settings:get_bool("enable_stairs_replace_abm") + +local function rotate_and_place(itemstack, placer, pointed_thing) + local p0 = pointed_thing.under + local p1 = pointed_thing.above + local param2 = 0 + + if placer then + local placer_pos = placer:get_pos() + if placer_pos then + local diff = vector.subtract(p1, placer_pos) + param2 = minetest.dir_to_facedir(diff) + -- The player places a node on the side face of the node he is standing on + if p0.y == p1.y and math.abs(diff.x) <= 0.5 and math.abs(diff.z) <= 0.5 and diff.y < 0 then + -- reverse node direction + param2 = (param2 + 2) % 4 + end + end + + local finepos = minetest.pointed_thing_to_face_pos(placer, pointed_thing) + local fpos = finepos.y % 1 + + if p0.y - 1 == p1.y or (fpos > 0 and fpos < 0.5) + or (fpos < -0.5 and fpos > -0.999999999) then + param2 = param2 + 20 + if param2 == 21 then + param2 = 23 + elseif param2 == 23 then + param2 = 21 + end + end + end + return minetest.item_place(itemstack, placer, pointed_thing, param2) +end + +local function warn_if_exists(nodename) + if minetest.registered_nodes[nodename] then + minetest.log("warning", "Overwriting stairs node: " .. nodename) + end +end + +-- Set backface culling and world-aligned textures +local function set_textures(images, worldaligntex) + local stair_images = {} + for i, image in ipairs(images) do + stair_images[i] = type(image) == "string" and {name = image} or table.copy(image) + if stair_images[i].backface_culling == nil then + stair_images[i].backface_culling = true + end + if worldaligntex and stair_images[i].align_style == nil then + stair_images[i].align_style = "world" + end + end + return stair_images +end + +-- Register stair +-- Node will be called stairs:stair_ + +function stairs.register_stair(subname, recipeitem, groups, images, description, + sounds, worldaligntex) + local def = minetest.registered_nodes[recipeitem] or {} + local stair_images = set_textures(images, worldaligntex) + local new_groups = table.copy(groups) + new_groups.stair = 1 + warn_if_exists("stairs:stair_" .. subname) + minetest.register_node(":stairs:stair_" .. subname, { + description = description, + drawtype = "nodebox", + tiles = stair_images, + use_texture_alpha = def.use_texture_alpha, + sunlight_propagates = def.sunlight_propagates, + light_source = def.light_source, + paramtype = "light", + paramtype2 = "facedir", + is_ground_content = false, + groups = new_groups, + sounds = sounds or def.sounds, + node_box = { + type = "fixed", + fixed = { + {-0.5, -0.5, -0.5, 0.5, 0.0, 0.5}, + {-0.5, 0.0, 0.0, 0.5, 0.5, 0.5}, + }, + }, + on_place = function(itemstack, placer, pointed_thing) + if pointed_thing.type ~= "node" then + return itemstack + end + + return rotate_and_place(itemstack, placer, pointed_thing) + end, + }) + + -- for replace ABM + if replace then + minetest.register_node(":stairs:stair_" .. subname .. "upside_down", { + replace_name = "stairs:stair_" .. subname, + groups = {slabs_replace = 1}, + }) + end + + if recipeitem then + -- Recipe matches appearence in inventory + minetest.register_craft({ + output = "stairs:stair_" .. subname .. " 8", + recipe = { + {"", "", recipeitem}, + {"", recipeitem, recipeitem}, + {recipeitem, recipeitem, recipeitem}, + }, + }) + + -- Use stairs to craft full blocks again (1:1) + minetest.register_craft({ + output = recipeitem .. " 3", + recipe = { + {"stairs:stair_" .. subname, "stairs:stair_" .. subname}, + {"stairs:stair_" .. subname, "stairs:stair_" .. subname}, + }, + }) + + -- Fuel + local baseburntime = minetest.get_craft_result({ + method = "fuel", + width = 1, + items = {recipeitem} + }).time + if baseburntime > 0 then + minetest.register_craft({ + type = "fuel", + recipe = "stairs:stair_" .. subname, + burntime = math.floor(baseburntime * 0.75), + }) + end + end +end + + +-- Register slab +-- Node will be called stairs:slab_ + +function stairs.register_slab(subname, recipeitem, groups, images, description, + sounds, worldaligntex) + local def = minetest.registered_nodes[recipeitem] or {} + local slab_images = set_textures(images, worldaligntex) + local new_groups = table.copy(groups) + new_groups.slab = 1 + warn_if_exists("stairs:slab_" .. subname) + minetest.register_node(":stairs:slab_" .. subname, { + description = description, + drawtype = "nodebox", + tiles = slab_images, + use_texture_alpha = def.use_texture_alpha, + sunlight_propagates = def.sunlight_propagates, + light_source = def.light_source, + paramtype = "light", + paramtype2 = "facedir", + is_ground_content = false, + groups = new_groups, + sounds = sounds or def.sounds, + node_box = { + type = "fixed", + fixed = {-0.5, -0.5, -0.5, 0.5, 0, 0.5}, + }, + on_place = function(itemstack, placer, pointed_thing) + local under = minetest.get_node(pointed_thing.under) + local wield_item = itemstack:get_name() + local player_name = placer and placer:get_player_name() or "" + + if under and under.name:find("^stairs:slab_") then + -- place slab using under node orientation + local dir = minetest.dir_to_facedir(vector.subtract( + pointed_thing.above, pointed_thing.under), true) + + local p2 = under.param2 + + -- Placing a slab on an upside down slab should make it right-side up. + if p2 >= 20 and dir == 8 then + p2 = p2 - 20 + -- same for the opposite case: slab below normal slab + elseif p2 <= 3 and dir == 4 then + p2 = p2 + 20 + end + + -- else attempt to place node with proper param2 + minetest.item_place_node(ItemStack(wield_item), placer, pointed_thing, p2) + if not minetest.is_creative_enabled(player_name) then + itemstack:take_item() + end + return itemstack + else + return rotate_and_place(itemstack, placer, pointed_thing) + end + end, + }) + + -- for replace ABM + if replace then + minetest.register_node(":stairs:slab_" .. subname .. "upside_down", { + replace_name = "stairs:slab_".. subname, + groups = {slabs_replace = 1}, + }) + end + + if recipeitem then + minetest.register_craft({ + output = "stairs:slab_" .. subname .. " 6", + recipe = { + {recipeitem, recipeitem, recipeitem}, + }, + }) + + -- Use 2 slabs to craft a full block again (1:1) + minetest.register_craft({ + output = recipeitem, + recipe = { + {"stairs:slab_" .. subname}, + {"stairs:slab_" .. subname}, + }, + }) + + -- Fuel + local baseburntime = minetest.get_craft_result({ + method = "fuel", + width = 1, + items = {recipeitem} + }).time + if baseburntime > 0 then + minetest.register_craft({ + type = "fuel", + recipe = "stairs:slab_" .. subname, + burntime = math.floor(baseburntime * 0.5), + }) + end + end +end + + +-- Optionally replace old "upside_down" nodes with new param2 versions. +-- Disabled by default. + +if replace then + minetest.register_abm({ + label = "Slab replace", + nodenames = {"group:slabs_replace"}, + interval = 16, + chance = 1, + action = function(pos, node) + node.name = minetest.registered_nodes[node.name].replace_name + node.param2 = node.param2 + 20 + if node.param2 == 21 then + node.param2 = 23 + elseif node.param2 == 23 then + node.param2 = 21 + end + minetest.set_node(pos, node) + end, + }) +end + + +-- Register inner stair +-- Node will be called stairs:stair_inner_ + +function stairs.register_stair_inner(subname, recipeitem, groups, images, + description, sounds, worldaligntex, full_description) + local def = minetest.registered_nodes[recipeitem] or {} + local stair_images = set_textures(images, worldaligntex) + local new_groups = table.copy(groups) + new_groups.stair = 1 + if full_description then + description = full_description + else + description = "Inner " .. description + end + warn_if_exists("stairs:stair_inner_" .. subname) + minetest.register_node(":stairs:stair_inner_" .. subname, { + description = description, + drawtype = "nodebox", + tiles = stair_images, + use_texture_alpha = def.use_texture_alpha, + sunlight_propagates = def.sunlight_propagates, + light_source = def.light_source, + paramtype = "light", + paramtype2 = "facedir", + is_ground_content = false, + groups = new_groups, + sounds = sounds or def.sounds, + node_box = { + type = "fixed", + fixed = { + {-0.5, -0.5, -0.5, 0.5, 0.0, 0.5}, + {-0.5, 0.0, 0.0, 0.5, 0.5, 0.5}, + {-0.5, 0.0, -0.5, 0.0, 0.5, 0.0}, + }, + }, + on_place = function(itemstack, placer, pointed_thing) + if pointed_thing.type ~= "node" then + return itemstack + end + + return rotate_and_place(itemstack, placer, pointed_thing) + end, + }) + + if recipeitem then + minetest.register_craft({ + output = "stairs:stair_inner_" .. subname .. " 7", + recipe = { + {"", recipeitem, ""}, + {recipeitem, "", recipeitem}, + {recipeitem, recipeitem, recipeitem}, + }, + }) + + -- Fuel + local baseburntime = minetest.get_craft_result({ + method = "fuel", + width = 1, + items = {recipeitem} + }).time + if baseburntime > 0 then + minetest.register_craft({ + type = "fuel", + recipe = "stairs:stair_inner_" .. subname, + burntime = math.floor(baseburntime * 0.875), + }) + end + end +end + + +-- Register outer stair +-- Node will be called stairs:stair_outer_ + +function stairs.register_stair_outer(subname, recipeitem, groups, images, + description, sounds, worldaligntex, full_description) + local def = minetest.registered_nodes[recipeitem] or {} + local stair_images = set_textures(images, worldaligntex) + local new_groups = table.copy(groups) + new_groups.stair = 1 + if full_description then + description = full_description + else + description = "Outer " .. description + end + warn_if_exists("stairs:stair_outer_" .. subname) + minetest.register_node(":stairs:stair_outer_" .. subname, { + description = description, + drawtype = "nodebox", + tiles = stair_images, + use_texture_alpha = def.use_texture_alpha, + sunlight_propagates = def.sunlight_propagates, + light_source = def.light_source, + paramtype = "light", + paramtype2 = "facedir", + is_ground_content = false, + groups = new_groups, + sounds = sounds or def.sounds, + node_box = { + type = "fixed", + fixed = { + {-0.5, -0.5, -0.5, 0.5, 0.0, 0.5}, + {-0.5, 0.0, 0.0, 0.0, 0.5, 0.5}, + }, + }, + on_place = function(itemstack, placer, pointed_thing) + if pointed_thing.type ~= "node" then + return itemstack + end + + return rotate_and_place(itemstack, placer, pointed_thing) + end, + }) + + if recipeitem then + minetest.register_craft({ + output = "stairs:stair_outer_" .. subname .. " 6", + recipe = { + {"", recipeitem, ""}, + {recipeitem, recipeitem, recipeitem}, + }, + }) + + -- Fuel + local baseburntime = minetest.get_craft_result({ + method = "fuel", + width = 1, + items = {recipeitem} + }).time + if baseburntime > 0 then + minetest.register_craft({ + type = "fuel", + recipe = "stairs:stair_outer_" .. subname, + burntime = math.floor(baseburntime * 0.625), + }) + end + end +end + + +-- Stair/slab registration function. +-- Nodes will be called stairs:{stair,slab}_ + +function stairs.register_stair_and_slab(subname, recipeitem, groups, images, + desc_stair, desc_slab, sounds, worldaligntex, + desc_stair_inner, desc_stair_outer) + stairs.register_stair(subname, recipeitem, groups, images, desc_stair, + sounds, worldaligntex) + stairs.register_stair_inner(subname, recipeitem, groups, images, + desc_stair, sounds, worldaligntex, desc_stair_inner) + stairs.register_stair_outer(subname, recipeitem, groups, images, + desc_stair, sounds, worldaligntex, desc_stair_outer) + stairs.register_slab(subname, recipeitem, groups, images, desc_slab, + sounds, worldaligntex) +end + +-- Local function so we can apply translations +local function my_register_stair_and_slab(subname, recipeitem, groups, images, + desc_stair, desc_slab, sounds, worldaligntex) + stairs.register_stair(subname, recipeitem, groups, images, S(desc_stair), + sounds, worldaligntex) + stairs.register_stair_inner(subname, recipeitem, groups, images, "", + sounds, worldaligntex, T("Inner " .. desc_stair)) + stairs.register_stair_outer(subname, recipeitem, groups, images, "", + sounds, worldaligntex, T("Outer " .. desc_stair)) + stairs.register_slab(subname, recipeitem, groups, images, S(desc_slab), + sounds, worldaligntex) +end + + +-- Register default stairs and slabs + +my_register_stair_and_slab( + "wood", + "default:wood", + {choppy = 2, oddly_breakable_by_hand = 2, flammable = 2}, + {"default_wood.png"}, + "Wooden Stair", + "Wooden Slab", + default.node_sound_wood_defaults(), + false +) + +my_register_stair_and_slab( + "junglewood", + "default:junglewood", + {choppy = 2, oddly_breakable_by_hand = 2, flammable = 2}, + {"default_junglewood.png"}, + "Jungle Wood Stair", + "Jungle Wood Slab", + default.node_sound_wood_defaults(), + false +) + +my_register_stair_and_slab( + "pine_wood", + "default:pine_wood", + {choppy = 3, oddly_breakable_by_hand = 2, flammable = 3}, + {"default_pine_wood.png"}, + "Pine Wood Stair", + "Pine Wood Slab", + default.node_sound_wood_defaults(), + false +) + +my_register_stair_and_slab( + "acacia_wood", + "default:acacia_wood", + {choppy = 2, oddly_breakable_by_hand = 2, flammable = 2}, + {"default_acacia_wood.png"}, + "Acacia Wood Stair", + "Acacia Wood Slab", + default.node_sound_wood_defaults(), + false +) + +my_register_stair_and_slab( + "aspen_wood", + "default:aspen_wood", + {choppy = 3, oddly_breakable_by_hand = 2, flammable = 3}, + {"default_aspen_wood.png"}, + "Aspen Wood Stair", + "Aspen Wood Slab", + default.node_sound_wood_defaults(), + false +) + +my_register_stair_and_slab( + "stone", + "default:stone", + {cracky = 3}, + {"default_stone.png"}, + "Stone Stair", + "Stone Slab", + default.node_sound_stone_defaults(), + true +) + +my_register_stair_and_slab( + "cobble", + "default:cobble", + {cracky = 3}, + {"default_cobble.png"}, + "Cobblestone Stair", + "Cobblestone Slab", + default.node_sound_stone_defaults(), + true +) + +my_register_stair_and_slab( + "mossycobble", + "default:mossycobble", + {cracky = 3}, + {"default_mossycobble.png"}, + "Mossy Cobblestone Stair", + "Mossy Cobblestone Slab", + default.node_sound_stone_defaults(), + true +) + +my_register_stair_and_slab( + "stonebrick", + "default:stonebrick", + {cracky = 2}, + {"default_stone_brick.png"}, + "Stone Brick Stair", + "Stone Brick Slab", + default.node_sound_stone_defaults(), + false +) + +my_register_stair_and_slab( + "stone_block", + "default:stone_block", + {cracky = 2}, + {"default_stone_block.png"}, + "Stone Block Stair", + "Stone Block Slab", + default.node_sound_stone_defaults(), + true +) + +my_register_stair_and_slab( + "desert_stone", + "default:desert_stone", + {cracky = 3}, + {"default_desert_stone.png"}, + "Desert Stone Stair", + "Desert Stone Slab", + default.node_sound_stone_defaults(), + true +) + +my_register_stair_and_slab( + "desert_cobble", + "default:desert_cobble", + {cracky = 3}, + {"default_desert_cobble.png"}, + "Desert Cobblestone Stair", + "Desert Cobblestone Slab", + default.node_sound_stone_defaults(), + true +) + +my_register_stair_and_slab( + "desert_stonebrick", + "default:desert_stonebrick", + {cracky = 2}, + {"default_desert_stone_brick.png"}, + "Desert Stone Brick Stair", + "Desert Stone Brick Slab", + default.node_sound_stone_defaults(), + false +) + +my_register_stair_and_slab( + "desert_stone_block", + "default:desert_stone_block", + {cracky = 2}, + {"default_desert_stone_block.png"}, + "Desert Stone Block Stair", + "Desert Stone Block Slab", + default.node_sound_stone_defaults(), + true +) + +my_register_stair_and_slab( + "sandstone", + "default:sandstone", + {crumbly = 1, cracky = 3}, + {"default_sandstone.png"}, + "Sandstone Stair", + "Sandstone Slab", + default.node_sound_stone_defaults(), + true +) + +my_register_stair_and_slab( + "sandstonebrick", + "default:sandstonebrick", + {cracky = 2}, + {"default_sandstone_brick.png"}, + "Sandstone Brick Stair", + "Sandstone Brick Slab", + default.node_sound_stone_defaults(), + false +) + +my_register_stair_and_slab( + "sandstone_block", + "default:sandstone_block", + {cracky = 2}, + {"default_sandstone_block.png"}, + "Sandstone Block Stair", + "Sandstone Block Slab", + default.node_sound_stone_defaults(), + true +) + +my_register_stair_and_slab( + "desert_sandstone", + "default:desert_sandstone", + {crumbly = 1, cracky = 3}, + {"default_desert_sandstone.png"}, + "Desert Sandstone Stair", + "Desert Sandstone Slab", + default.node_sound_stone_defaults(), + true +) + +my_register_stair_and_slab( + "desert_sandstone_brick", + "default:desert_sandstone_brick", + {cracky = 2}, + {"default_desert_sandstone_brick.png"}, + "Desert Sandstone Brick Stair", + "Desert Sandstone Brick Slab", + default.node_sound_stone_defaults(), + false +) + +my_register_stair_and_slab( + "desert_sandstone_block", + "default:desert_sandstone_block", + {cracky = 2}, + {"default_desert_sandstone_block.png"}, + "Desert Sandstone Block Stair", + "Desert Sandstone Block Slab", + default.node_sound_stone_defaults(), + true +) + +my_register_stair_and_slab( + "silver_sandstone", + "default:silver_sandstone", + {crumbly = 1, cracky = 3}, + {"default_silver_sandstone.png"}, + "Silver Sandstone Stair", + "Silver Sandstone Slab", + default.node_sound_stone_defaults(), + true +) + +my_register_stair_and_slab( + "silver_sandstone_brick", + "default:silver_sandstone_brick", + {cracky = 2}, + {"default_silver_sandstone_brick.png"}, + "Silver Sandstone Brick Stair", + "Silver Sandstone Brick Slab", + default.node_sound_stone_defaults(), + false +) + +my_register_stair_and_slab( + "silver_sandstone_block", + "default:silver_sandstone_block", + {cracky = 2}, + {"default_silver_sandstone_block.png"}, + "Silver Sandstone Block Stair", + "Silver Sandstone Block Slab", + default.node_sound_stone_defaults(), + true +) + +my_register_stair_and_slab( + "obsidian", + "default:obsidian", + {cracky = 1, level = 2}, + {"default_obsidian.png"}, + "Obsidian Stair", + "Obsidian Slab", + default.node_sound_stone_defaults(), + true +) + +my_register_stair_and_slab( + "obsidianbrick", + "default:obsidianbrick", + {cracky = 1, level = 2}, + {"default_obsidian_brick.png"}, + "Obsidian Brick Stair", + "Obsidian Brick Slab", + default.node_sound_stone_defaults(), + false +) + +my_register_stair_and_slab( + "obsidian_block", + "default:obsidian_block", + {cracky = 1, level = 2}, + {"default_obsidian_block.png"}, + "Obsidian Block Stair", + "Obsidian Block Slab", + default.node_sound_stone_defaults(), + true +) + +my_register_stair_and_slab( + "brick", + "default:brick", + {cracky = 3}, + {"default_brick.png"}, + "Brick Stair", + "Brick Slab", + default.node_sound_stone_defaults(), + false +) + +my_register_stair_and_slab( + "steelblock", + "default:steelblock", + {cracky = 1, level = 2}, + {"default_steel_block.png"}, + "Steel Block Stair", + "Steel Block Slab", + default.node_sound_metal_defaults(), + true +) + +my_register_stair_and_slab( + "tinblock", + "default:tinblock", + {cracky = 1, level = 2}, + {"default_tin_block.png"}, + "Tin Block Stair", + "Tin Block Slab", + default.node_sound_metal_defaults(), + true +) + +my_register_stair_and_slab( + "copperblock", + "default:copperblock", + {cracky = 1, level = 2}, + {"default_copper_block.png"}, + "Copper Block Stair", + "Copper Block Slab", + default.node_sound_metal_defaults(), + true +) + +my_register_stair_and_slab( + "bronzeblock", + "default:bronzeblock", + {cracky = 1, level = 2}, + {"default_bronze_block.png"}, + "Bronze Block Stair", + "Bronze Block Slab", + default.node_sound_metal_defaults(), + true +) + +my_register_stair_and_slab( + "goldblock", + "default:goldblock", + {cracky = 1}, + {"default_gold_block.png"}, + "Gold Block Stair", + "Gold Block Slab", + default.node_sound_metal_defaults(), + true +) + +my_register_stair_and_slab( + "ice", + "default:ice", + {cracky = 3, cools_lava = 1, slippery = 3}, + {"default_ice.png"}, + "Ice Stair", + "Ice Slab", + default.node_sound_ice_defaults(), + true +) + +my_register_stair_and_slab( + "snowblock", + "default:snowblock", + {crumbly = 3, cools_lava = 1, snowy = 1}, + {"default_snow.png"}, + "Snow Block Stair", + "Snow Block Slab", + default.node_sound_snow_defaults(), + true +) + +-- Glass stair nodes need to be registered individually to utilize specialized textures. + +stairs.register_stair( + "glass", + "default:glass", + {cracky = 3, oddly_breakable_by_hand = 3}, + {"stairs_glass_split.png", "default_glass.png", + "stairs_glass_stairside.png^[transformFX", "stairs_glass_stairside.png", + "default_glass.png", "stairs_glass_split.png"}, + S("Glass Stair"), + default.node_sound_glass_defaults(), + false +) + +stairs.register_slab( + "glass", + "default:glass", + {cracky = 3, oddly_breakable_by_hand = 3}, + {"default_glass.png", "default_glass.png", "stairs_glass_split.png"}, + S("Glass Slab"), + default.node_sound_glass_defaults(), + false +) + +stairs.register_stair_inner( + "glass", + "default:glass", + {cracky = 3, oddly_breakable_by_hand = 3}, + {"stairs_glass_stairside.png^[transformR270", "default_glass.png", + "stairs_glass_stairside.png^[transformFX", "default_glass.png", + "default_glass.png", "stairs_glass_stairside.png"}, + "", + default.node_sound_glass_defaults(), + false, + S("Inner Glass Stair") +) + +stairs.register_stair_outer( + "glass", + "default:glass", + {cracky = 3, oddly_breakable_by_hand = 3}, + {"stairs_glass_stairside.png^[transformR90", "default_glass.png", + "stairs_glass_outer_stairside.png", "stairs_glass_stairside.png", + "stairs_glass_stairside.png^[transformR90","stairs_glass_outer_stairside.png"}, + "", + default.node_sound_glass_defaults(), + false, + S("Outer Glass Stair") +) + +stairs.register_stair( + "obsidian_glass", + "default:obsidian_glass", + {cracky = 3}, + {"stairs_obsidian_glass_split.png", "default_obsidian_glass.png", + "stairs_obsidian_glass_stairside.png^[transformFX", "stairs_obsidian_glass_stairside.png", + "default_obsidian_glass.png", "stairs_obsidian_glass_split.png"}, + S("Obsidian Glass Stair"), + default.node_sound_glass_defaults(), + false +) + +stairs.register_slab( + "obsidian_glass", + "default:obsidian_glass", + {cracky = 3}, + {"default_obsidian_glass.png", "default_obsidian_glass.png", "stairs_obsidian_glass_split.png"}, + S("Obsidian Glass Slab"), + default.node_sound_glass_defaults(), + false +) + +stairs.register_stair_inner( + "obsidian_glass", + "default:obsidian_glass", + {cracky = 3}, + {"stairs_obsidian_glass_stairside.png^[transformR270", "default_obsidian_glass.png", + "stairs_obsidian_glass_stairside.png^[transformFX", "default_obsidian_glass.png", + "default_obsidian_glass.png", "stairs_obsidian_glass_stairside.png"}, + "", + default.node_sound_glass_defaults(), + false, + S("Inner Obsidian Glass Stair") +) + +stairs.register_stair_outer( + "obsidian_glass", + "default:obsidian_glass", + {cracky = 3}, + {"stairs_obsidian_glass_stairside.png^[transformR90", "default_obsidian_glass.png", + "stairs_obsidian_glass_outer_stairside.png", "stairs_obsidian_glass_stairside.png", + "stairs_obsidian_glass_stairside.png^[transformR90","stairs_obsidian_glass_outer_stairside.png"}, + "", + default.node_sound_glass_defaults(), + false, + S("Outer Obsidian Glass Stair") +) + +-- Dummy calls to S() to allow translation scripts to detect the strings. +-- To update this add this code to my_register_stair_and_slab: +-- for _,x in ipairs({"","Inner ","Outer "}) do print(("S(%q)"):format(x..desc_stair)) end +-- print(("S(%q)"):format(desc_slab)) + +--[[ +S("Wooden Stair") +S("Inner Wooden Stair") +S("Outer Wooden Stair") +S("Wooden Slab") +S("Jungle Wood Stair") +S("Inner Jungle Wood Stair") +S("Outer Jungle Wood Stair") +S("Jungle Wood Slab") +S("Pine Wood Stair") +S("Inner Pine Wood Stair") +S("Outer Pine Wood Stair") +S("Pine Wood Slab") +S("Acacia Wood Stair") +S("Inner Acacia Wood Stair") +S("Outer Acacia Wood Stair") +S("Acacia Wood Slab") +S("Aspen Wood Stair") +S("Inner Aspen Wood Stair") +S("Outer Aspen Wood Stair") +S("Aspen Wood Slab") +S("Stone Stair") +S("Inner Stone Stair") +S("Outer Stone Stair") +S("Stone Slab") +S("Cobblestone Stair") +S("Inner Cobblestone Stair") +S("Outer Cobblestone Stair") +S("Cobblestone Slab") +S("Mossy Cobblestone Stair") +S("Inner Mossy Cobblestone Stair") +S("Outer Mossy Cobblestone Stair") +S("Mossy Cobblestone Slab") +S("Stone Brick Stair") +S("Inner Stone Brick Stair") +S("Outer Stone Brick Stair") +S("Stone Brick Slab") +S("Stone Block Stair") +S("Inner Stone Block Stair") +S("Outer Stone Block Stair") +S("Stone Block Slab") +S("Desert Stone Stair") +S("Inner Desert Stone Stair") +S("Outer Desert Stone Stair") +S("Desert Stone Slab") +S("Desert Cobblestone Stair") +S("Inner Desert Cobblestone Stair") +S("Outer Desert Cobblestone Stair") +S("Desert Cobblestone Slab") +S("Desert Stone Brick Stair") +S("Inner Desert Stone Brick Stair") +S("Outer Desert Stone Brick Stair") +S("Desert Stone Brick Slab") +S("Desert Stone Block Stair") +S("Inner Desert Stone Block Stair") +S("Outer Desert Stone Block Stair") +S("Desert Stone Block Slab") +S("Sandstone Stair") +S("Inner Sandstone Stair") +S("Outer Sandstone Stair") +S("Sandstone Slab") +S("Sandstone Brick Stair") +S("Inner Sandstone Brick Stair") +S("Outer Sandstone Brick Stair") +S("Sandstone Brick Slab") +S("Sandstone Block Stair") +S("Inner Sandstone Block Stair") +S("Outer Sandstone Block Stair") +S("Sandstone Block Slab") +S("Desert Sandstone Stair") +S("Inner Desert Sandstone Stair") +S("Outer Desert Sandstone Stair") +S("Desert Sandstone Slab") +S("Desert Sandstone Brick Stair") +S("Inner Desert Sandstone Brick Stair") +S("Outer Desert Sandstone Brick Stair") +S("Desert Sandstone Brick Slab") +S("Desert Sandstone Block Stair") +S("Inner Desert Sandstone Block Stair") +S("Outer Desert Sandstone Block Stair") +S("Desert Sandstone Block Slab") +S("Silver Sandstone Stair") +S("Inner Silver Sandstone Stair") +S("Outer Silver Sandstone Stair") +S("Silver Sandstone Slab") +S("Silver Sandstone Brick Stair") +S("Inner Silver Sandstone Brick Stair") +S("Outer Silver Sandstone Brick Stair") +S("Silver Sandstone Brick Slab") +S("Silver Sandstone Block Stair") +S("Inner Silver Sandstone Block Stair") +S("Outer Silver Sandstone Block Stair") +S("Silver Sandstone Block Slab") +S("Obsidian Stair") +S("Inner Obsidian Stair") +S("Outer Obsidian Stair") +S("Obsidian Slab") +S("Obsidian Brick Stair") +S("Inner Obsidian Brick Stair") +S("Outer Obsidian Brick Stair") +S("Obsidian Brick Slab") +S("Obsidian Block Stair") +S("Inner Obsidian Block Stair") +S("Outer Obsidian Block Stair") +S("Obsidian Block Slab") +S("Brick Stair") +S("Inner Brick Stair") +S("Outer Brick Stair") +S("Brick Slab") +S("Steel Block Stair") +S("Inner Steel Block Stair") +S("Outer Steel Block Stair") +S("Steel Block Slab") +S("Tin Block Stair") +S("Inner Tin Block Stair") +S("Outer Tin Block Stair") +S("Tin Block Slab") +S("Copper Block Stair") +S("Inner Copper Block Stair") +S("Outer Copper Block Stair") +S("Copper Block Slab") +S("Bronze Block Stair") +S("Inner Bronze Block Stair") +S("Outer Bronze Block Stair") +S("Bronze Block Slab") +S("Gold Block Stair") +S("Inner Gold Block Stair") +S("Outer Gold Block Stair") +S("Gold Block Slab") +S("Ice Stair") +S("Inner Ice Stair") +S("Outer Ice Stair") +S("Ice Slab") +S("Snow Block Stair") +S("Inner Snow Block Stair") +S("Outer Snow Block Stair") +S("Snow Block Slab") +--]] diff --git a/mods/stairs/license.txt b/mods/stairs/license.txt new file mode 100644 index 0000000..ec758cf --- /dev/null +++ b/mods/stairs/license.txt @@ -0,0 +1,16 @@ +License of source code +---------------------- + +GNU Lesser General Public License, version 2.1 +Copyright (C) 2011-2017 Kahrl +Copyright (C) 2011-2017 celeron55, Perttu Ahola +Copyright (C) 2012-2017 Various Minetest Game developers and contributors + +This program is free software; you can redistribute it and/or modify it under the terms +of the GNU Lesser General Public License as published by the Free Software Foundation; +either version 2.1 of the License, or (at your option) any later version. + +This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; +without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. +See the GNU Lesser General Public License for more details: +https://www.gnu.org/licenses/old-licenses/lgpl-2.1.html diff --git a/mods/stairs/locale/stairs.bg.tr b/mods/stairs/locale/stairs.bg.tr new file mode 100644 index 0000000..52324de --- /dev/null +++ b/mods/stairs/locale/stairs.bg.tr @@ -0,0 +1,145 @@ +# textdomain: stairs +Glass Slab=Стъклена плоча +Glass Stair=Стъклено стъпало +Inner Glass Stair=Вътрешно стъклено стъпало +Outer Glass Stair=Външно стъклено стъпало +Obsidian Glass Slab=Плоча от обсидианено стъкло +Obsidian Glass Stair=Стъпало от обсидианено стъкло +Inner Obsidian Glass Stair=Вътрешно стъпало от обсидианено стъкло +Outer Obsidian Glass Stair=Външно стъпало от обсидианено стъкло +Wooden Slab=Дървена плоча +Wooden Stair=Дървено стъпало +Inner Wooden Stair=Вътрешно дървено стъпало +Outer Wooden Stair=Външно дървено стъпало +Jungle Wood Slab=Плоча от джунглово дърво +Jungle Wood Stair=Стъпало от джунглово дърво +Inner Jungle Wood Stair=Вътрешно стъпало от джунглово дърво +Outer Jungle Wood Stair=Външно стъпало от джунглово дърво +Pine Wood Slab=Плоча от борово дърво +Pine Wood Stair=Стъпало от борово дърво +Inner Pine Wood Stair=Вътрешно стъпало от борово дърво +Outer Pine Wood Stair=Външно стъпало от борово дърво +Acacia Wood Slab=Плоча от акациево дърво +Acacia Wood Stair=Стъпало от акациево дърво +Inner Acacia Wood Stair=Вътрешно стъпало от акациево дърво +Outer Acacia Wood Stair=Външно стъпало от акациево дърво +Aspen Wood Slab=Плоча от трепетлика +Aspen Wood Stair=Стъпало от трепетлика +Inner Aspen Wood Stair=Вътрешно стъпало от трепетлика +Outer Aspen Wood Stair=Външно стъпало от трепетлика +Stone Slab=Каменна плоча +Stone Stair=Каменна стъпало +Inner Stone Stair=Вътрешно каменно стъпало +Outer Stone Stair=Външно каменна стъпало +Cobblestone Stair=Стъпало от речни камъни +Inner Cobblestone Stair=Вътрешно стъпало от речни камъни +Outer Cobblestone Stair=Външно стъпало от речни камъни +Cobblestone Slab=Плоча от речни камъни +Mossy Cobblestone Stair=Стъпало от речни камъни покрити с мъх +Inner Mossy Cobblestone Stair=Вътрешно стъпало от речни камъни покрити с мъх +Outer Mossy Cobblestone Stair=Външно стъпало от речни камъни покрити с мъх +Mossy Cobblestone Slab=Плоча от речни камъни покрити с мъх +Stone Brick Stair=Стъпало от тухли от речни камъни +Inner Stone Brick Stair=Вътрешно стъпало от тухли от речни камъни +Outer Stone Brick Stair=Външно стъпало от тухли от речни камъни +Stone Brick Slab=Плоча от тухли от речни камъни +Stone Block Stair=Стъпало от блок от речни камъни +Inner Stone Block Stair=Вътрешно стъпало от блок от речни камъни +Outer Stone Block Stair=Външно стъпало от блок от речни камъни +Stone Block Slab=Плоча от блок от речни камъни +Desert Stone Stair=Стъпало от пустинен камък +Inner Desert Stone Stair=Вътрешно стъпало от пустинен камък +Outer Desert Stone Stair=Външно стъпало от пустинен камък +Desert Stone Slab=Плоча от пустинен камък +Desert Cobblestone Stair=Стъпало от речен пустинен камък +Inner Desert Cobblestone Stair=Вътрешно стъпало от речен пустинен камък +Outer Desert Cobblestone Stair=Външно стъпало от речен пустинен камък +Desert Cobblestone Slab=Плоча от речен пустинен камък +Desert Stone Brick Stair=Стъпало от тухли от пустинен камък +Inner Desert Stone Brick Stair=Вътрешно стъпало от тухли от пустинен камък +Outer Desert Stone Brick Stair=Външно стъпало от тухли от пустинен камък +Desert Stone Brick Slab=Плоча от тухли от пустинен камък +Desert Stone Block Stair=Стъпало от блок от пустинен камък +Inner Desert Stone Block Stair=Вътрешно стъпало от блок от пустинен камък +Outer Desert Stone Block Stair=Външно стъпало от блок от пустинен камък +Desert Stone Block Slab=Плоча от блок от пустинен камък +Sandstone Stair=Стъпало от пясъчник +Inner Sandstone Stair=Вътрешно стъпало от пясъчник +Outer Sandstone Stair=Външно стъпало от пясъчник +Sandstone Slab=Плоча от пясъчник +Sandstone Brick Stair=Стъпало от пясъчникови тухли +Inner Sandstone Brick Stair=Вътрешно стъпало от пясъчникови тухли +Outer Sandstone Brick Stair=Външно стъпало от пясъчникови тухли +Sandstone Brick Slab=Плоча от пясъчникови тухли +Sandstone Block Stair=Стъпало от пясъчников блок +Inner Sandstone Block Stair=Вътрешно стъпало от пясъчников блок +Outer Sandstone Block Stair=Външно стъпало от пясъчников блок +Sandstone Block Slab=Плоча от пясъчников блок +Desert Sandstone Stair=Стъпало от пустинен пясъчник +Inner Desert Sandstone Stair=Вътрешно стъпало от пустинен пясъчник +Outer Desert Sandstone Stair=Външно стъпало от пустинен пясъчник +Desert Sandstone Slab=Плоча от пустинен пясъчник +Desert Sandstone Brick Stair=Стъпало от пустинни пясъчникови тухли +Inner Desert Sandstone Brick Stair=Вътрешно стъпало от пустинни пясъчникови тухли +Outer Desert Sandstone Brick Stair=Външно стъпало от пустинни пясъчникови тухли +Desert Sandstone Brick Slab=Плоча от пустинни пясъчникови тухли +Desert Sandstone Block Stair=Стъпало от пустинен пясъчников блок +Inner Desert Sandstone Block Stair=Вътрешно стъпало от пустинен пясъчников блок +Outer Desert Sandstone Block Stair=Външно стъпало от пустинен пясъчников блок +Desert Sandstone Block Slab=Плоча от пустинен пясъчников блок +Silver Sandstone Stair=Стъпало от сребърен пясъчник +Inner Silver Sandstone Stair=Вътрешно стъпало от сребърен пясъчник +Outer Silver Sandstone Stair=Външно стъпало от сребърен пясъчник +Silver Sandstone Slab=Плоча от сребърен пясъчник +Silver Sandstone Brick Stair=Стъпало от сребърни пясъчникови тухли +Inner Silver Sandstone Brick Stair=Вътрешно стъпало от сребърни пясъчникови тухли +Outer Silver Sandstone Brick Stair=Външно стъпало от сребърни пясъчникови тухли +Silver Sandstone Brick Slab=Плоча от сребърни пясъчникови тухли +Silver Sandstone Block Stair=Стъпало от сребърен пясъчников блок +Inner Silver Sandstone Block Stair=Вътрешно стъпало от сребърен пясъчников блок +Outer Silver Sandstone Block Stair=Външно стъпало от сребърен пясъчников блок +Silver Sandstone Block Slab=Плоча от сребърен пясъчников блок +Obsidian Stair=Стъпало от обсидиан +Inner Obsidian Stair=Вътрешно стъпало от обсидиан +Outer Obsidian Stair=Външно стъпало от обсидиан +Obsidian Slab=Плоча от обсидиан +Obsidian Brick Stair=Стъпало от обсидианени тухли +Inner Obsidian Brick Stair=Вътрешно стъпало от обсидианени тухли +Outer Obsidian Brick Stair=Външно стъпало от обсидианени тухли +Obsidian Brick Slab=Плоча от обсидианени тухли +Obsidian Block Stair=Стъпало от обсидианен блок +Inner Obsidian Block Stair=Вътрешно стъпало от обсидианен блок +Outer Obsidian Block Stair=Външно стъпало от обсидианен блок +Obsidian Block Slab=Плоча от обсидианен блок +Brick Stair=Тухлено стъпало +Inner Brick Stair=Вътрешно тухлено стъпало +Outer Brick Stair=Външно тохлено стъпало +Brick Slab=Тухлена плоча +Steel Block Stair=Стъпало от стоманен блок +Inner Steel Block Stair=Вътрешно стъпало от стоманен блок +Outer Steel Block Stair=Външно стъпало от стоманен блок +Steel Block Slab=Плоча от стоманен блок +Tin Block Stair=Стъпало от калаен блок +Inner Tin Block Stair=Вътрешно стъпало от калаен блок +Outer Tin Block Stair=Външно стъпало от калаен блок +Tin Block Slab=Плоча от калаен блок +Copper Block Stair=Стъпало от мед блок +Inner Copper Block Stair=Вътрешно стъпало от мед блок +Outer Copper Block Stair=Външно тъпало от мед блок +Copper Block Slab=Плоча от меден блок +Bronze Block Stair=Стъпало от бронзов къс +Inner Bronze Block Stair=Вътрешно стъпало от бронзов къс +Outer Bronze Block Stair=Външно стъпало от бронзов къс +Bronze Block Slab=Плоча от бронзов къс +Gold Block Stair=Стъпало от златен къс +Inner Gold Block Stair=Вътрешно стъпало от златен къс +Outer Gold Block Stair=Външно стъпало от златен къс +Gold Block Slab=Плоча от златен къс +Ice Stair=Ледено стъпало +Inner Ice Stair=Вътрешно ледено стъпало +Outer Ice Stair=Външно ледено стъпало +Ice Slab=Плоча от лед +Snow Block Stair=Стъпало от снежен къс +Inner Snow Block Stair=Вътрешно стъпало от снежен къс +Outer Snow Block Stair=Външно стъпало от снежен къс +Snow Block Slab=Плоча от снежен къс diff --git a/mods/stairs/locale/stairs.da.tr b/mods/stairs/locale/stairs.da.tr new file mode 100644 index 0000000..fac8011 --- /dev/null +++ b/mods/stairs/locale/stairs.da.tr @@ -0,0 +1,145 @@ +# textdomain: stairs +Glass Stair=Glastrappe +Glass Slab=Glasplade +Inner Glass Stair=Indre glastrappe +Outer Glass Stair=Ydre glastrappe +Obsidian Glass Stair=Obsidianglastrappe +Obsidian Glass Slab=Obsidianglasplade +Inner Obsidian Glass Stair=Indre obsidianglastrappe +Outer Obsidian Glass Stair=Ydre obsidianglastrappe +Wooden Stair=Trætrappe +Inner Wooden Stair=Indre trætrappe +Outer Wooden Stair=Ydre trætrappe +Wooden Slab=Træplade +Jungle Wood Stair=Jungletræstrappe +Inner Jungle Wood Stair=Indre jungletræstrappe +Outer Jungle Wood Stair=Ydre jungletræstrappe +Jungle Wood Slab=Jungletræsplade +Pine Wood Stair=Fyretræstrappe +Inner Pine Wood Stair=Indre fyretræstrappe +Outer Pine Wood Stair=Ydre fyretræstrappe +Pine Wood Slab=Fyretræsplade +Acacia Wood Stair=Arkacietræstrappe +Inner Acacia Wood Stair=Indre arkacietræstrappe +Outer Acacia Wood Stair=Ydre arkacietræstrappe +Acacia Wood Slab=Arkacietræsplade +Aspen Wood Stair=Aspetræstrappe +Inner Aspen Wood Stair=Indre aspetræstrappe +Outer Aspen Wood Stair=Ydre aspetræstrappe +Aspen Wood Slab=Aspetræsplade +Stone Stair=Stentrappe +Inner Stone Stair=Indre stentrappe +Outer Stone Stair=Ydre stentrappe +Stone Slab=Stenplae +Cobblestone Stair=Granittrappe +Inner Cobblestone Stair=Indre granittrappe +Outer Cobblestone Stair=Ydre granittrappe +Cobblestone Slab=Granitplade +Mossy Cobblestone Stair=Mosbegroet granittrappe +Inner Mossy Cobblestone Stair=Indre mosbegroet granittrappe +Outer Mossy Cobblestone Stair=Ydre mosbegroet granittrappe +Mossy Cobblestone Slab=Mosbegroet granitplade +Stone Brick Stair=Murstenstrappe +Inner Stone Brick Stair=Indre murstenstrappe +Outer Stone Brick Stair=Ydre murstenstrappe +Stone Brick Slab=Murstensplade +Stone Block Stair=Stenbloktrappe +Inner Stone Block Stair=Indre stenbloktrappe +Outer Stone Block Stair=Ydre stenbloktrappe +Stone Block Slab=Stenblokplade +Desert Stone Stair=Ørkenstentrappe +Inner Desert Stone Stair=Indre ørkenstentrappe +Outer Desert Stone Stair=Ydre ørkenstentrappe +Desert Stone Slab=Ørkenstenplade +Desert Cobblestone Stair=Ørkengranittrappe +Inner Desert Cobblestone Stair=Indre ørkengranittrappe +Outer Desert Cobblestone Stair=Ydre ørkengranittrappe +Desert Cobblestone Slab=Ørkengranitplade +Desert Stone Brick Stair=Ørkenmurstenstrappe +Inner Desert Stone Brick Stair=Indre ørkenmurstenstrappe +Outer Desert Stone Brick Stair=Ydre ørkenmurstenstrappe +Desert Stone Brick Slab=ørkenmurstensplade +Desert Stone Block Stair=ørkenstenstrappe +Inner Desert Stone Block Stair=Indre ørkenstenstrappe +Outer Desert Stone Block Stair=Ydre ørkenstenstrappe +Desert Stone Block Slab=ørkenstensplade +Sandstone Stair=Sandstenstrappe +Inner Sandstone Stair=Indre sandstenstrappe +Outer Sandstone Stair=Ydre sandstenstrappe +Sandstone Slab=Sandstensplade +Sandstone Brick Stair=Sandmurstenstrappe +Inner Sandstone Brick Stair=Indre sandmurstenstrappe +Outer Sandstone Brick Stair=Ydre sandmurstenstrappe +Sandstone Brick Slab=Sandmurstensplade +Sandstone Block Stair=Sandstenstrappe +Inner Sandstone Block Stair=Indre sandstenstrappe +Outer Sandstone Block Stair=Ydre sandstenstrappe +Sandstone Block Slab=Sandstensplade +Desert Sandstone Stair=ørkensandstenstrappe +Inner Desert Sandstone Stair=Indre ørkensandstenstrappe +Outer Desert Sandstone Stair=Ydre ørkensandstenstrappe +Desert Sandstone Slab=ørkensandstensplade +Desert Sandstone Brick Stair=ørkensandmurstenstrappe +Inner Desert Sandstone Brick Stair=Indre ørkensandmurstenstrappe +Outer Desert Sandstone Brick Stair=Ydre ørkensandmurstenstrappe +Desert Sandstone Brick Slab=ørkensandmurstensplade +Desert Sandstone Block Stair=ørkensandstenbloktrappe +Inner Desert Sandstone Block Stair=Indre ørkensandstenbloktrappe +Outer Desert Sandstone Block Stair=Ydre ørkensandstenbloktrappe +Desert Sandstone Block Slab=ørkensandstenblokplade +Silver Sandstone Stair=Sølvsandstenstrappe +Inner Silver Sandstone Stair=Indre sølvsandstenstrappe +Outer Silver Sandstone Stair=Ydre sølvsandstenstrappe +Silver Sandstone Slab=Sølvsandstensplade +Silver Sandstone Brick Stair=Sølvsandmurstenstrappe +Inner Silver Sandstone Brick Stair=Indre sølvsandmurstenstrappe +Outer Silver Sandstone Brick Stair=Ydre sølvsandmurstenstrappe +Silver Sandstone Brick Slab=Sølvsandmurstensplade +Silver Sandstone Block Stair=Sølvsandstenbloktrappe +Inner Silver Sandstone Block Stair=Indre sølvsandstenbloktrappe +Outer Silver Sandstone Block Stair=Ydre sølvsandstenbloktrappe +Silver Sandstone Block Slab=Sølvsandstenblokplade +Obsidian Stair=Obsidiantrappe +Inner Obsidian Stair=Indre obsidiantrappe +Outer Obsidian Stair=Ydre obsidiantrappe +Obsidian Slab=Obsidianplade +Obsidian Brick Stair=Obsidianmurstenstrappe +Inner Obsidian Brick Stair=Indre obsidianmurstenstrappe +Outer Obsidian Brick Stair=Ydre obsidianmurstenstrappe +Obsidian Brick Slab=Obsidianmurstensplade +Obsidian Block Stair=Obsidianbloktrappe +Inner Obsidian Block Stair=Indre obsidianbloktrappe +Outer Obsidian Block Stair=Ydre obsidianbloktrappe +Obsidian Block Slab=Obsidianstenplade +Brick Stair=Murstenstrappe +Inner Brick Stair=Indre murstenstrappe +Outer Brick Stair=Ydre murstenstrappe +Brick Slab=Murstensplade +Steel Block Stair=Stålbloktrappe +Inner Steel Block Stair=Indre stålbloktrappe +Outer Steel Block Stair=Ydre stålbloktrappe +Steel Block Slab=Stålblokplade +Tin Block Stair=Tinbloktrappe +Inner Tin Block Stair=Indre tinbloktrappe +Outer Tin Block Stair=Ydre tinbloktrappe +Tin Block Slab=Tinblokplade +Copper Block Stair=Kobberbloktrappe +Inner Copper Block Stair=Indre kobberbloktrappe +Outer Copper Block Stair=Ydre kobberbloktrappe +Copper Block Slab=Kobberblokplade +Bronze Block Stair=Bronzebloktrappe +Inner Bronze Block Stair=Indre bronzebloktrappe +Outer Bronze Block Stair=Ydre bronzebloktrappe +Bronze Block Slab=Bronzeblokplade +Gold Block Stair=Guldbloktrappe +Inner Gold Block Stair=Indre guldbloktrappe +Outer Gold Block Stair=Ydre guldbloktrappe +Gold Block Slab=Guldblokplade +Ice Stair=Istrappe +Inner Ice Stair=Indre istrappe +Outer Ice Stair=Ydre istrappe +Ice Slab=Isplade +Snow Block Stair=Snebloktrappe +Inner Snow Block Stair=Indre snebloktrappe +Outer Snow Block Stair=Ydre snebloktrappe +Snow Block Slab=Sneblokplade diff --git a/mods/stairs/locale/stairs.de.tr b/mods/stairs/locale/stairs.de.tr new file mode 100644 index 0000000..beb4579 --- /dev/null +++ b/mods/stairs/locale/stairs.de.tr @@ -0,0 +1,145 @@ +# textdomain: stairs +Glass Stair=Glastreppe +Glass Slab=Glasplatte +Inner Glass Stair=Innere Glastreppe +Outer Glass Stair=Äußere Glastreppe +Obsidian Glass Stair=Obsidianglastreppe +Obsidian Glass Slab=Obsidianglasplatte +Inner Obsidian Glass Stair=Innere Obsidianglastreppe +Outer Obsidian Glass Stair=Äußere Obsidianglastreppe +Wooden Stair=Holztreppe +Inner Wooden Stair=Innere Holztreppe +Outer Wooden Stair=Äußere Holztreppe +Wooden Slab=Holzplatte +Jungle Wood Stair=Dschungelholztreppe +Inner Jungle Wood Stair=Innere Dschungelholztreppe +Outer Jungle Wood Stair=Äußere Dschungelholztreppe +Jungle Wood Slab=Dschungelholzplatte +Pine Wood Stair=Kiefernholztreppe +Inner Pine Wood Stair=Innere Kiefernholztreppe +Outer Pine Wood Stair=Äußere Kiefernholztreppe +Pine Wood Slab=Kiefernholzplatte +Acacia Wood Stair=Akazienholztreppe +Inner Acacia Wood Stair=Innere Akazienholztreppe +Outer Acacia Wood Stair=Äußere Akazienholztreppe +Acacia Wood Slab=Akazienholzplatte +Aspen Wood Stair=Espenholztreppe +Inner Aspen Wood Stair=Innere Espenholztreppe +Outer Aspen Wood Stair=Äußere Espenholztreppe +Aspen Wood Slab=Espenholzplatte +Stone Stair=Steintreppe +Inner Stone Stair=Innere Steintreppe +Outer Stone Stair=Äußere Steintreppe +Stone Slab=Steinplatte +Cobblestone Stair=Kopfsteinpflastertreppe +Inner Cobblestone Stair=Innere Kopfsteinpflastertreppe +Outer Cobblestone Stair=Äußere Kopfsteinpflastertreppe +Cobblestone Slab=Kopfsteinpflasterplatte +Mossy Cobblestone Stair=Moosige Kopfsteinpflastertreppe +Inner Mossy Cobblestone Stair=Innere moosige Kopfsteinpflastertreppe +Outer Mossy Cobblestone Stair=Äußere moosige Kopfsteinpflastertreppe +Mossy Cobblestone Slab=Moosige Kopfsteinpflasterplatte +Stone Brick Stair=Steinziegeltreppe +Inner Stone Brick Stair=Innere Steinziegeltreppe +Outer Stone Brick Stair=Äußere Steinziegeltreppe +Stone Brick Slab=Steinziegelplatte +Stone Block Stair=Steinblocktreppe +Inner Stone Block Stair=Innere Steinblocktreppe +Outer Stone Block Stair=Äußere Steinblocktreppe +Stone Block Slab=Steinblockplatte +Desert Stone Stair=Wüstensteintreppe +Inner Desert Stone Stair=Innere Wüstensteintreppe +Outer Desert Stone Stair=Äußere Wüstensteintreppe +Desert Stone Slab=Wüstensteinplatte +Desert Cobblestone Stair=Wüstenkopfsteinpflastertreppe +Inner Desert Cobblestone Stair=Innere Wüstenkopfsteinpflastertreppe +Outer Desert Cobblestone Stair=Äußere Wüstenkopfsteinpflastertreppe +Desert Cobblestone Slab=Wüstenkopfsteinpflasterplatte +Desert Stone Brick Stair=Wüstensteinziegeltreppe +Inner Desert Stone Brick Stair=Innere Wüstensteinziegeltreppe +Outer Desert Stone Brick Stair=Äußere Wüstensteinziegeltreppe +Desert Stone Brick Slab=Wüstensteinziegelplatte +Desert Stone Block Stair=Wüstensteinblocktreppe +Inner Desert Stone Block Stair=Innere Wüstensteinblocktreppe +Outer Desert Stone Block Stair=Äußere Wüstensteinblocktreppe +Desert Stone Block Slab=Wüstensteinblockplatte +Sandstone Stair=Sandsteintreppe +Inner Sandstone Stair=Innere Sandsteintreppe +Outer Sandstone Stair=Äußere Sandsteintreppe +Sandstone Slab=Sandsteinplatte +Sandstone Brick Stair=Sandsteinziegeltreppe +Inner Sandstone Brick Stair=Innere Sandsteinziegeltreppe +Outer Sandstone Brick Stair=Äußere Sandsteinziegeltreppe +Sandstone Brick Slab=Sandsteinziegelplatte +Sandstone Block Stair=Sandsteinblocktreppe +Inner Sandstone Block Stair=Innere Sandsteinblocktreppe +Outer Sandstone Block Stair=Äußere Sandsteinblocktreppe +Sandstone Block Slab=Sandsteinblockplatte +Desert Sandstone Stair=Wüstensandsteintreppe +Inner Desert Sandstone Stair=Innere Wüstensandsteintreppe +Outer Desert Sandstone Stair=Äußere Wüstensandsteintreppe +Desert Sandstone Slab=Wüstensandsteinplatte +Desert Sandstone Brick Stair=Wüstensandsteinziegeltreppe +Inner Desert Sandstone Brick Stair=Innere Wüstensandsteinziegeltreppe +Outer Desert Sandstone Brick Stair=Äußere Wüstensandsteinziegeltreppe +Desert Sandstone Brick Slab=Wüstensandsteinziegelplatte +Desert Sandstone Block Stair=Wüstensandsteinblocktreppe +Inner Desert Sandstone Block Stair=Innere Wüstensandsteinblocktreppe +Outer Desert Sandstone Block Stair=Äußere Wüstensandsteinblocktreppe +Desert Sandstone Block Slab=Wüstensandsteinblockplatte +Silver Sandstone Stair=Silbersandsteintreppe +Inner Silver Sandstone Stair=Innere Silbersandsteintreppe +Outer Silver Sandstone Stair=Äußere Silbersandsteintreppe +Silver Sandstone Slab=Silbersandsteinplatte +Silver Sandstone Brick Stair=Silbersandsteinziegeltreppe +Inner Silver Sandstone Brick Stair=Innere Silbersandsteinziegeltreppe +Outer Silver Sandstone Brick Stair=Äußere Silbersandsteinziegeltreppe +Silver Sandstone Brick Slab=Silbersandsteinziegelplatte +Silver Sandstone Block Stair=Silbersandsteinblocktreppe +Inner Silver Sandstone Block Stair=Innere Silbersandsteinblocktreppe +Outer Silver Sandstone Block Stair=Äußere Silbersandsteinblocktreppe +Silver Sandstone Block Slab=Silbersandsteinblockplatte +Obsidian Stair=Obsidiantreppe +Inner Obsidian Stair=Innere Obsidiantreppe +Outer Obsidian Stair=Äußere Obsidiantreppe +Obsidian Slab=Obsidianplatte +Obsidian Brick Stair=Obsidianziegeltreppe +Inner Obsidian Brick Stair=Innere Obsidianziegeltreppe +Outer Obsidian Brick Stair=Äußere Obsidianziegeltreppe +Obsidian Brick Slab=Obsidianziegelplatte +Obsidian Block Stair=Obsidianblocktreppe +Inner Obsidian Block Stair=Innere Obsidianblocktreppe +Outer Obsidian Block Stair=Äußere Obsidianblocktreppe +Obsidian Block Slab=Obsidianblockplatte +Brick Stair=Ziegeltreppe +Inner Brick Stair=Innere Ziegeltreppe +Outer Brick Stair=Äußere Ziegeltreppe +Brick Slab=Ziegelplatte +Steel Block Stair=Stahlblocktreppe +Inner Steel Block Stair=Innere Stahlblocktreppe +Outer Steel Block Stair=Äußere Stahlblocktreppe +Steel Block Slab=Stahlblockplatte +Tin Block Stair=Zinnblocktreppe +Inner Tin Block Stair=Innere Zinnblocktreppe +Outer Tin Block Stair=Äußere Zinnblocktreppe +Tin Block Slab=Zinnblockplatte +Copper Block Stair=Kupferblocktreppe +Inner Copper Block Stair=Innere Kupferblocktreppe +Outer Copper Block Stair=Äußere Kupferblocktreppe +Copper Block Slab=Kupferblockplatte +Bronze Block Stair=Bronzeblocktreppe +Inner Bronze Block Stair=Innere Bronzeblocktreppe +Outer Bronze Block Stair=Äußere Bronzeblocktreppe +Bronze Block Slab=Bronzeblockplatte +Gold Block Stair=Goldblocktreppe +Inner Gold Block Stair=Innere Goldblocktreppe +Outer Gold Block Stair=Äußere Goldblocktreppe +Gold Block Slab=Goldblockplatte +Ice Stair=Eistreppe +Inner Ice Stair=Innere Eistreppe +Outer Ice Stair=Äußere Eistreppe +Ice Slab=Eisplatte +Snow Block Stair=Schneeblocktreppe +Inner Snow Block Stair=Innere Schneeblocktreppe +Outer Snow Block Stair=Äußere Schneeblocktreppe +Snow Block Slab=Schneeblockplatte diff --git a/mods/stairs/locale/stairs.eo.tr b/mods/stairs/locale/stairs.eo.tr new file mode 100644 index 0000000..f018dc9 --- /dev/null +++ b/mods/stairs/locale/stairs.eo.tr @@ -0,0 +1,145 @@ +# textdomain: stairs +Glass Stair=Vitra ŝtupo +Glass Slab=Vitra plato +Inner Glass Stair=Interna vitra ŝtupo +Outer Glass Stair=Ekstera vitra ŝtupo +Obsidian Glass Stair=Obsidiana vitra ŝtupo +Obsidian Glass Slab=Obsidiana vitra plato +Inner Obsidian Glass Stair=Interna obsidiana vitra ŝtupo +Outer Obsidian Glass Stair=Ekstera obsidiana vitra ŝtupo +Wooden Stair=Ligna ŝtupo +Inner Wooden Stair=Interna ligna ŝtupo +Outer Wooden Stair=Ekstera ligna ŝtupo +Wooden Slab=Ligna plato +Jungle Wood Stair=Ĝangala ligna ŝtupo +Inner Jungle Wood Stair=Interna ĝangala ligna ŝtupo +Outer Jungle Wood Stair=Ekstera ĝangala ligna ŝtupo +Jungle Wood Slab=Ĝangala ligna plato +Pine Wood Stair=Pina ligna ŝtupo +Inner Pine Wood Stair=Interna pina ligna ŝtupo +Outer Pine Wood Stair=Ekstera pina ligna ŝtupo +Pine Wood Slab=Pina ligna plato +Acacia Wood Stair=Akacia ligna ŝtupo +Inner Acacia Wood Stair=Interna akacia ligna ŝtupo +Outer Acacia Wood Stair=Ekstera akacia ligna ŝtupo +Acacia Wood Slab=Akacia ligna plato +Aspen Wood Stair=Tremola ligna ŝtupo +Inner Aspen Wood Stair=Interna tremola ligna ŝtupo +Outer Aspen Wood Stair=Ekstera tremola ligna ŝtupo +Aspen Wood Slab=Tremola ligna plato +Stone Stair=Ŝtona ŝtupo +Inner Stone Stair=Interna ŝtona ŝtupo +Outer Stone Stair=Ekstera ŝtona ŝtupo +Stone Slab=Ŝtona plato +Cobblestone Stair=Pavimŝtona ŝtupo +Inner Cobblestone Stair=Interna pavimŝtona ŝtupo +Outer Cobblestone Stair=Ekstera pavimŝtona ŝtupo +Cobblestone Slab=Pavimŝtona plato +Mossy Cobblestone Stair=Muska pavimŝtona ŝtupo +Inner Mossy Cobblestone Stair=Interna muska pavimŝtona ŝtupo +Outer Mossy Cobblestone Stair=Ekstera muska pavimŝtona ŝtupo +Mossy Cobblestone Slab=Muska pavimŝtona plato +Stone Brick Stair=Ŝtona brika ŝtupo +Inner Stone Brick Stair=Interna ŝtona brika ŝtupo +Outer Stone Brick Stair=Ekstera ŝtona brika ŝtupo +Stone Brick Slab=Ŝtona brika plato +Stone Block Stair=Ŝtona ŝtipa ŝtupo +Inner Stone Block Stair=Interna ŝtona ŝtipa ŝtupo +Outer Stone Block Stair=Ekstera ŝtona ŝtipa ŝtupo +Stone Block Slab=Ŝtona ŝtipa plato +Desert Stone Stair=Dezerta ŝtona ŝtupo +Inner Desert Stone Stair=Interna dezerta ŝtona ŝtupo +Outer Desert Stone Stair=Ekstera dezerta ŝtona ŝtupo +Desert Stone Slab=Dezerta ŝtona plato +Desert Cobblestone Stair=Dezerta pavimŝtona ŝtupo +Inner Desert Cobblestone Stair=Interna dezerta pavimŝtona ŝtupo +Outer Desert Cobblestone Stair=Ekstera dezerta pavimŝtona ŝtupo +Desert Cobblestone Slab=Dezerta pavimŝtona plato +Desert Stone Brick Stair=Dezerta ŝtona brika ŝtupo +Inner Desert Stone Brick Stair=Interna dezerta ŝtona brika ŝtupo +Outer Desert Stone Brick Stair=Ekstera dezerta ŝtona brika ŝtupo +Desert Stone Brick Slab=Dezerta ŝtona brika plato +Desert Stone Block Stair=Dezerta ŝtona bloko ŝtupo +Inner Desert Stone Block Stair=Interna dezerta ŝtona bloko ŝtupo +Outer Desert Stone Block Stair=Ekstera dezerta ŝtona bloko ŝtupo +Desert Stone Block Slab=Dezerta ŝtona bloko plato +Sandstone Stair=Sablŝtona ŝtupo +Inner Sandstone Stair=Interna ŝablŝtona ŝtupo +Outer Sandstone Stair=Ekstera ŝablŝtona ŝtupo +Sandstone Slab=Ŝablŝtona plato +Sandstone Brick Stair=Ŝablŝtona brika ŝtupo +Inner Sandstone Brick Stair=Interna ŝablŝtona brika ŝtupo +Outer Sandstone Brick Stair=Ekstera ŝablŝtona brika ŝtupo +Sandstone Brick Slab=Ŝablŝtona brika plato +Sandstone Block Stair=Ŝablŝtona ŝtipa ŝtupo +Inner Sandstone Block Stair=Interna ŝablŝtona ŝtipa ŝtupo +Outer Sandstone Block Stair=Ekstera ŝablŝtona ŝtipa ŝtupo +Sandstone Block Slab=Ŝablŝtona ŝtipa plato +Desert Sandstone Stair=Dezerta ŝablŝtona ŝtupo +Inner Desert Sandstone Stair=Interna dezerta ŝablŝtona ŝtupo +Outer Desert Sandstone Stair=Ekstera dezerta ŝablŝtona ŝtupo +Desert Sandstone Slab=Dezerta ŝablŝtona plato +Desert Sandstone Brick Stair=Dezerta ŝablŝtona brika ŝtupo +Inner Desert Sandstone Brick Stair=Interna dezerta ŝablŝtona brika ŝtupo +Outer Desert Sandstone Brick Stair=Ekstera dezerta ŝablŝtona brika ŝtupo +Desert Sandstone Brick Slab=Dezerta ŝablŝtona brika plato +Desert Sandstone Block Stair=Dezerta ŝablŝtona ŝtipa ŝtupo +Inner Desert Sandstone Block Stair=Interna dezerta ŝablŝtona brika ŝtupo +Outer Desert Sandstone Block Stair=Ekstera dezerta ŝablŝtona brika ŝtupo +Desert Sandstone Block Slab=Dezerta ŝablŝtona ŝtipa plato +Silver Sandstone Stair=Arĝenta ŝablŝtona ŝtupo +Inner Silver Sandstone Stair=Interna arĝenta ŝablŝtona ŝtupo +Outer Silver Sandstone Stair=Ekstera arĝenta ŝablŝtona ŝtupo +Silver Sandstone Slab=Arĝenta ŝablŝtona plato +Silver Sandstone Brick Stair=Arĝenta ŝablŝtona brika ŝtupo +Inner Silver Sandstone Brick Stair=Interna arĝenta ŝablŝtona brika ŝtupo +Outer Silver Sandstone Brick Stair=Ekstera arĝenta ŝablŝtona brika ŝtupo +Silver Sandstone Brick Slab=Arĝenta ŝablŝtona brika plato +Silver Sandstone Block Stair=Arĝenta ŝablŝtona ŝtipa ŝtupo +Inner Silver Sandstone Block Stair=Interna arĝenta ŝablŝtona ŝtipa ŝtupo +Outer Silver Sandstone Block Stair=Ekstera arĝenta ŝablŝtona ŝtipa ŝtupo +Silver Sandstone Block Slab=Arĝenta ŝablŝtona ŝtipa plato +Obsidian Stair=Obsidiana ŝtupo +Inner Obsidian Stair=Interna obsidiana ŝtupo +Outer Obsidian Stair=Ekstera obsidiana ŝtupo +Obsidian Slab=Obsidiana plato +Obsidian Brick Stair=Obsidiana brika ŝtupo +Inner Obsidian Brick Stair=Interna obsidiana brika ŝtupo +Outer Obsidian Brick Stair=Ekstera obsidiana brika ŝtupo +Obsidian Brick Slab=Obsidiana brika plato +Obsidian Block Stair=Obsidiana ŝtipa ŝtupo +Inner Obsidian Block Stair=Interna obsidiana ŝtipa ŝtupo +Outer Obsidian Block Stair=Ekstera obsidiana ŝtipa ŝtupo +Obsidian Block Slab=Obsidiana ŝtipa plato +Brick Stair=Brika ŝtupo +Inner Brick Stair=Interna brika ŝtupo +Outer Brick Stair=Ekstera brika ŝtupo +Brick Slab=Brika plato +Steel Block Stair=Ŝtala ŝtipa ŝtupo +Inner Steel Block Stair=Interna ŝtala ŝtipa ŝtupo +Outer Steel Block Stair=Ekstera ŝtala ŝtipa ŝtupo +Steel Block Slab=Ŝtala ŝtipa plato +Tin Block Stair=Stana ŝtipa ŝtupo +Inner Tin Block Stair=Interna stana ŝtipa ŝtupo +Outer Tin Block Stair=Ekstera stana ŝtipa ŝtupo +Tin Block Slab=Stana ŝtipa plato +Copper Block Stair=Kupra ŝtipa ŝtupo +Inner Copper Block Stair=Interna kupra ŝtipa ŝtupo +Outer Copper Block Stair=Ekstera kupra ŝtipa ŝtupo +Copper Block Slab=Kupra ŝtipa plato +Bronze Block Stair=Bronza ŝtipa ŝtupo +Inner Bronze Block Stair=Interna bronza ŝtipa ŝtupo +Outer Bronze Block Stair=Ekstera bronza ŝtipa ŝtupo +Bronze Block Slab=Bronza ŝtipa plato +Gold Block Stair=Ora ŝtipa ŝtupo +Inner Gold Block Stair=Interna ora ŝtipa ŝtupo +Outer Gold Block Stair=Ekstera ora ŝtipa ŝtupo +Gold Block Slab=Ora ŝtipa plato +Ice Stair=Glacia ŝtupo +Inner Ice Stair=Interna glacia ŝtupo +Outer Ice Stair=Ekstera glacia ŝtupo +Ice Slab=Glacia plato +Snow Block Stair=Neĝa ŝtipa ŝtupo +Inner Snow Block Stair=Interna neĝa ŝtipa ŝtupo +Outer Snow Block Stair=Ekstera neĝa ŝtipa ŝtupo +Snow Block Slab=Neĝa ŝtipa plato diff --git a/mods/stairs/locale/stairs.es.tr b/mods/stairs/locale/stairs.es.tr new file mode 100644 index 0000000..374540c --- /dev/null +++ b/mods/stairs/locale/stairs.es.tr @@ -0,0 +1,145 @@ +# textdomain: stairs +Glass Stair=Escalera de vidrio +Glass Slab=Losa de vidrio +Inner Glass Stair=Escalera interior de vidrio +Outer Glass Stair=Escalera exterior de vidrio +Obsidian Glass Stair=Escalera de vidrio de obsidiana +Obsidian Glass Slab=Losa de vidrio de obsidiana +Inner Obsidian Glass Stair=Escalera interior de vidrio de obsidiana +Outer Obsidian Glass Stair=Escalera exterior de vidrio de obsidiana +Wooden Stair=Escalera de madera +Inner Wooden Stair=Escalera interior de madera +Outer Wooden Stair=Escalera exterior de madera +Wooden Slab=Losa de madera +Jungle Wood Stair=Escalera de madera tropical +Inner Jungle Wood Stair=Escalera interior de madera tropical +Outer Jungle Wood Stair=Escalera exterior de madera tropical +Jungle Wood Slab=Losa de madera tropical +Pine Wood Stair=Escalera de pino +Inner Pine Wood Stair=Escalera interior de pino +Outer Pine Wood Stair=Escalera exterior de pino +Pine Wood Slab=Losa de pino +Acacia Wood Stair=Escalera de acacia +Inner Acacia Wood Stair=Escalera interior de acacia +Outer Acacia Wood Stair=Escalera exterior de acacia +Acacia Wood Slab=Losa de acacia +Aspen Wood Stair=Escalera de álamo +Inner Aspen Wood Stair=Escalera interior de álamo +Outer Aspen Wood Stair=Escalera exterior de álamo +Aspen Wood Slab=Losa de álamo +Stone Stair=Escalera de piedra +Inner Stone Stair=Escalera interior de piedra +Outer Stone Stair=Escalera exterior de piedra +Stone Slab=Losa de piedra +Cobblestone Stair=Escalera de adoquines +Inner Cobblestone Stair=Escalera interior de adoquines +Outer Cobblestone Stair=Escalera exterior de adoquines +Cobblestone Slab=Losa de adoquines +Mossy Cobblestone Stair=Escalera de adoquines musgosos +Inner Mossy Cobblestone Stair=Escalera interior de adoquines musgosos +Outer Mossy Cobblestone Stair=Escalera exterior de adoquines musgosos +Mossy Cobblestone Slab=Losa de adoquines musgosos +Stone Brick Stair=Escalera de ladrillos de piedra +Inner Stone Brick Stair=Escalera interior de ladrillos de piedra +Outer Stone Brick Stair=Escalera exterior de ladrillos de piedra +Stone Brick Slab=Losa de ladrillos de piedra +Stone Block Stair=Escalera de bloques de piedra +Inner Stone Block Stair=Escalera interior de bloques de piedra +Outer Stone Block Stair=Escalera exterior de bloques de piedra +Stone Block Slab=Losa de bloques de piedra +Desert Stone Stair=Escalera de piedra desértica +Inner Desert Stone Stair=Escalera interior de piedra desértica +Outer Desert Stone Stair=Escalera exterior de piedra desértica +Desert Stone Slab=Losa de piedra desértica +Desert Cobblestone Stair=Escalera de adoquines desérticos +Inner Desert Cobblestone Stair=Escalera interior de adoquines desérticos +Outer Desert Cobblestone Stair=Escalera exterior de adoquines desérticos +Desert Cobblestone Slab=Losa de adoquines desérticos +Desert Stone Brick Stair=Escalera de ladrillos desérticos +Inner Desert Stone Brick Stair=Escalera interior de ladrillos desérticos +Outer Desert Stone Brick Stair=Escalera exterior de ladrillos desérticos +Desert Stone Brick Slab=Losa de ladrillos desérticos +Desert Stone Block Stair=Escalera de bloques de piedra desértica +Inner Desert Stone Block Stair=Escalera interior de bloques de piedra desértica +Outer Desert Stone Block Stair=Escalera exterior de bloques de piedra desértica +Desert Stone Block Slab=Losa de bloques de piedra desértica +Sandstone Stair=Escalera de arenisca +Inner Sandstone Stair=Escalera interior de arenisca +Outer Sandstone Stair=Escalera exterior de arenisca +Sandstone Slab=Losa de arenisca +Sandstone Brick Stair=Escalera de ladrillos de arenisca +Inner Sandstone Brick Stair=Escalera interior de ladrillos de arenisca +Outer Sandstone Brick Stair=Escalera exterior de ladrillos de arenisca +Sandstone Brick Slab=Losa de ladrillos de arenisca +Sandstone Block Stair=Escalera de bloques de arenisca +Inner Sandstone Block Stair=Escalera interior de bloques de arenisca +Outer Sandstone Block Stair=Escalera exterior de bloques de arenisca +Sandstone Block Slab=Losa de bloques de arenisca +Desert Sandstone Stair=Escalera de arenisca desértica +Inner Desert Sandstone Stair=Escalera interior de arenisca desértica +Outer Desert Sandstone Stair=Escalera exterior de arenisca desértica +Desert Sandstone Slab=Losa de arenisca desértica +Desert Sandstone Brick Stair=Escalera de ladrillos de arenisca desértica +Inner Desert Sandstone Brick Stair=Escalera interior de ladrillos de arenisca desértica +Outer Desert Sandstone Brick Stair=Escalera exterior de ladrillos de arenisca desértica +Desert Sandstone Brick Slab=Losa de ladrillos de arenisca desértica +Desert Sandstone Block Stair=Escalera de bloques de arenisca desértica +Inner Desert Sandstone Block Stair=Escalera interior de bloques de arenisca desértica +Outer Desert Sandstone Block Stair=Escalera exterior de bloques de arenisca desértica +Desert Sandstone Block Slab=Losa de bloques de arenisca desértica +Silver Sandstone Stair=Escalera de arenisca plateada +Inner Silver Sandstone Stair=Escalera interior de arenisca plateada +Outer Silver Sandstone Stair=Escalera exterior de arenisca plateada +Silver Sandstone Slab=Losa de arenisca plateada +Silver Sandstone Brick Stair=Escalera de ladrillos de arenisca plateada +Inner Silver Sandstone Brick Stair=Escalera interior de ladrillos de arenisca plateada +Outer Silver Sandstone Brick Stair=Escalera exterior de ladrillos de arenisca plateada +Silver Sandstone Brick Slab=Losa de ladrillos de arenisca plateada +Silver Sandstone Block Stair=Escalera de bloques de arenisca plateada +Inner Silver Sandstone Block Stair=Escalera interior de bloques de arenisca plateada +Outer Silver Sandstone Block Stair=Escalera exterior de bloques de arenisca plateada +Silver Sandstone Block Slab=Losa de bloques de arenisca plateada +Obsidian Stair=Escalera de obsidiana +Inner Obsidian Stair=Escalera interior de obsidiana +Outer Obsidian Stair=Escalera exterior de obsidiana +Obsidian Slab=Losa de obsidiana +Obsidian Brick Stair=Escalera de ladrillos de obsidiana +Inner Obsidian Brick Stair=Escalera interior de ladrillos de obsidiana +Outer Obsidian Brick Stair=Escalera exterior de ladrillos de obsidiana +Obsidian Brick Slab=Losa de ladrillos de obsidiana +Obsidian Block Stair=Escalera de bloques de obsidiana +Inner Obsidian Block Stair=Escalera interior de bloques de obsidiana +Outer Obsidian Block Stair=Escalera exterior de bloques de obsidiana +Obsidian Block Slab=Losa de bloques de obsidiana +Brick Stair=Escalera de ladrillos +Inner Brick Stair=Escalera interior de ladrillos +Outer Brick Stair=Escalera exterior de ladrillos +Brick Slab=Losa de ladrillos +Steel Block Stair=Escalera de acero +Inner Steel Block Stair=Escalera interior de acero +Outer Steel Block Stair=Escalera exterior de acero +Steel Block Slab=Losa de acero +Tin Block Stair=Escalera de estaño +Inner Tin Block Stair=Escalera interior de estaño +Outer Tin Block Stair=Escalera exterior de estaño +Tin Block Slab=Losa de estaño +Copper Block Stair=Escalera de cobre +Inner Copper Block Stair=Escalera interior de cobre +Outer Copper Block Stair=Escalera exterior de cobre +Copper Block Slab=Losa de cobre +Bronze Block Stair=Escalera de bronce +Inner Bronze Block Stair=Escalera interior de bronce +Outer Bronze Block Stair=Escalera exterior de bronce +Bronze Block Slab=Losa de bronce +Gold Block Stair=Escalera de oro +Inner Gold Block Stair=Escalera interior de oro +Outer Gold Block Stair=Escalera exterior de oro +Gold Block Slab=Losa de oro +Ice Stair=Escalera de hielo +Inner Ice Stair=Escalera interior de hielo +Outer Ice Stair=Escalera exterior de hielo +Ice Slab=Losa de hielo +Snow Block Stair=Escalera de nieve +Inner Snow Block Stair=Escalera interior de nieve +Outer Snow Block Stair=Escalera exterior de nieve +Snow Block Slab=Losa de nieve diff --git a/mods/stairs/locale/stairs.eu.tr b/mods/stairs/locale/stairs.eu.tr new file mode 100644 index 0000000..3676759 --- /dev/null +++ b/mods/stairs/locale/stairs.eu.tr @@ -0,0 +1,145 @@ +# textdomain: stairs +Glass Stair=Beirazko eskailera +Glass Slab=Beirazko lauza +Inner Glass Stair=Beirazko barne-eskailera +Outer Glass Stair=Beirazko kanpo-eskailera +Obsidian Glass Stair=Obsidianazko beirazko eskailera +Obsidian Glass Slab=Obsidianazko beirazko lauza +Inner Obsidian Glass Stair=Obsidianazko beirazko barne-eskailera +Outer Obsidian Glass Stair=Obsidianazko beirazko kanpo-eskailera +Wooden Stair=Zurezko eskailera +Inner Wooden Stair=Zurezko barne-eskailera +Outer Wooden Stair=Zurezko kanpo-eskailera +Wooden Slab=Zurezko lauza +Jungle Wood Stair=Baso-egurrezko eskailera +Inner Jungle Wood Stair=Baso-egurrezko barne-eskailera +Outer Jungle Wood Stair=Baso-egurrezko kanpo-eskailera +Jungle Wood Slab=Baso-egurrezko lauza +Pine Wood Stair=Pinu-eskailera +Inner Pine Wood Stair=Pinuzko barne-eskailera +Outer Pine Wood Stair=Pinuzko kanpo-eskailera +Pine Wood Slab=Pinu-lauza +Acacia Wood Stair=Akaziako eskailera +Inner Acacia Wood Stair=Akaziako barne-eskailera +Outer Acacia Wood Stair=Akaziako kanpo-eskailera +Acacia Wood Slab=Akaziako lauza +Aspen Wood Stair=Makalezko eskailera +Inner Aspen Wood Stair=Makalezko barne-eskailera +Outer Aspen Wood Stair=Makalezko kanpo-eskailera +Aspen Wood Slab=Makal-lauza +Stone Stair=Harrizko eskailera +Inner Stone Stair=Harrizko barne-eskailera +Outer Stone Stair=Harrizko kanpo-eskailera +Stone Slab=Harrizko lauza +Cobblestone Stair=Galtzada-harrizko eskailera +Inner Cobblestone Stair=Galtzada-harrizko barne-eskailera +Outer Cobblestone Stair=Galtzada-harrizko kanpo-eskailera +Cobblestone Slab=Galtzada-harrizko lauza +Mossy Cobblestone Stair=Goroldiodun galtzada-harrizko eskailera +Inner Mossy Cobblestone Stair=Goroldiodun galtzada-harrizko barne-eskailera +Outer Mossy Cobblestone Stair=Goroldiodun galtzada-harrizko kanpo-eskailera +Mossy Cobblestone Slab=Goroldiodun galtzada-harrizko lauza +Stone Brick Stair=Harri-adreiluzko eskailera +Inner Stone Brick Stair=Harri-adreiluzko barne-eskailera +Outer Stone Brick Stair=Harri-adreiluzko kanpo-eskailera +Stone Brick Slab=Harri-adreiluzko lauza +Stone Block Stair=Harri-blokezko eskailera +Inner Stone Block Stair=Harri-blokezko barne-eskailera +Outer Stone Block Stair=Harri-blokezko kanpo-eskailera +Stone Block Slab=Harri-blokezko lauza +Desert Stone Stair=Basamortuko harrizko eskailera +Inner Desert Stone Stair=Basamortuko harrizko barne-eskailera +Outer Desert Stone Stair=Basamortuko harrizko kanpo-eskailera +Desert Stone Slab=Basamortuko harrizko lauza +Desert Cobblestone Stair=Basamortuko galtzada-harrizko eskailera +Inner Desert Cobblestone Stair=Basamortuko galtzada-harrizko barne-eskailera +Outer Desert Cobblestone Stair=Basamortuko galtzada-harrizko kanpo-eskailera +Desert Cobblestone Slab=Basamortuko galtzada-harrizko lauza +Desert Stone Brick Stair=Basamortuko adreiluzko eskailera +Inner Desert Stone Brick Stair=Basamortuko adreiluzko barne-eskailera +Outer Desert Stone Brick Stair=Basamortuko adreiluzko kanpo-eskailera +Desert Stone Brick Slab=Basamortuko adreiluzko lauza +Desert Stone Block Stair=Basamortuko harrizko bloke-eskailera +Inner Desert Stone Block Stair=Basamortuko harrizko blokezko barne-eskailera +Outer Desert Stone Block Stair=Basamortuko harrizko blokezko kanpo-eskailera +Desert Stone Block Slab=Basamortuko harrizko blokezko lauza +Sandstone Stair=Hareharrizko eskailera +Inner Sandstone Stair=Hareharrizko barne-eskailera +Outer Sandstone Stair=Hareharrizko kanpo-eskailera +Sandstone Slab=Hareharrizko lauza +Sandstone Brick Stair=Hareharri-adreiluzko eskailera +Inner Sandstone Brick Stair=Hareharri-adreiluzko barne-eskailera +Outer Sandstone Brick Stair=Hareharri-adreiluzko kanpo-eskailera +Sandstone Brick Slab=Hareharri-adreiluzko lauza +Sandstone Block Stair=Hareharrizko blokezko eskailera +Inner Sandstone Block Stair=Hareharrizko blokezko barne-eskailera +Outer Sandstone Block Stair=Hareharrizko blokezko kanpo-eskailera +Sandstone Block Slab=Hareharrizko blokezko lauza +Desert Sandstone Stair=Basamortuko hareharrizko eskailera +Inner Desert Sandstone Stair=Basamortuko hareharrizko barne-eskailera +Outer Desert Sandstone Stair=Basamortuko hareharrizko kanpo-eskailera +Desert Sandstone Slab=Basamortuko hareharrizko lauza +Desert Sandstone Brick Stair=Basamortuko hareharrizko adreiluzko eskailera +Inner Desert Sandstone Brick Stair=Basamortuko hareharrizko adreiluzko barne-eskailera +Outer Desert Sandstone Brick Stair=Basamortuko hareharri-adreiluzko kanpo-eskailera +Desert Sandstone Brick Slab=Basamortuko hareharri-adreiluzko lauza +Desert Sandstone Block Stair=Basamortuko hareharrizko bloke-eskailera +Inner Desert Sandstone Block Stair=Basamortuko hareharrizko blokezko barne-eskailera +Outer Desert Sandstone Block Stair=Basamortuko hareharrizko blokezko kanpo-eskailera +Desert Sandstone Block Slab=Basamortuko hareharrizko bloke-lauza +Silver Sandstone Stair=Zilar koloreko hareharrizko eskailera +Inner Silver Sandstone Stair=Zilarrezko hareharrizko barne-eskailera +Outer Silver Sandstone Stair=Hareharri zilarreztatuzko kanpo-eskailera +Silver Sandstone Slab=Zilar koloreko hareharrizko lauza +Silver Sandstone Brick Stair=Zilar koloreko hareharri-adreiluzko eskailera +Inner Silver Sandstone Brick Stair=Zilarrezko hareharri-adreiluzko barne-eskailera +Outer Silver Sandstone Brick Stair=Hareharri zilarreztatuzko adreiluzko kanpo-eskailera +Silver Sandstone Brick Slab=Zilar koloreko hareharri-adreiluzko lauza +Silver Sandstone Block Stair=Zilar koloreko hareharrizko bloke-eskailera +Inner Silver Sandstone Block Stair=Zilar koloreko hareharrizko blokezko barne-eskailera +Outer Silver Sandstone Block Stair=Hareharri zilarreztatuzko blokezko kanpo-eskailera +Silver Sandstone Block Slab=Zilar koloreko hareharrizko bloke-lauza +Obsidian Stair=Obsidiana-eskailera +Inner Obsidian Stair=Obsidianazko barne-eskailera +Outer Obsidian Stair=Obsidianazko kanpo-eskailera +Obsidian Slab=Obsidianazko lauza +Obsidian Brick Stair=Obsidiana-adreiluzko eskailera +Inner Obsidian Brick Stair=Obsidiana-adreiluzko barne-eskailera +Outer Obsidian Brick Stair=Obsidiana-adreiluzko kanpo-eskailera +Obsidian Brick Slab=Obsidiana-adreiluzko lauza +Obsidian Block Stair=Obsidiana-blokezko eskailera +Inner Obsidian Block Stair=Obsidiana-blokezko barne-eskailera +Outer Obsidian Block Stair=Obsidiana-blokezko kanpo-eskailera +Obsidian Block Slab=Obsidianazko bloke-lauza +Brick Stair=Adreiluzko eskailera +Inner Brick Stair=Adreiluzko barne-eskailera +Outer Brick Stair=Adreiluzko kanpo-eskailera +Brick Slab=Adreiluzko lauza +Steel Block Stair=Altzairuzko eskailera +Inner Steel Block Stair=Altzairuzko barne-eskailera +Outer Steel Block Stair=Altzairuzko kanpo-eskailera +Steel Block Slab=Altzairuzko lauza +Tin Block Stair=Eztainuzko eskailera +Inner Tin Block Stair=Eztainuzko barne-eskailera +Outer Tin Block Stair=Eztainuzko kanpo-eskailera +Tin Block Slab=Eztainuzko lauza +Copper Block Stair=Kobrezko eskailera +Inner Copper Block Stair=Kobrezko barne-eskailera +Outer Copper Block Stair=Kobrezko kanpo-eskailera +Copper Block Slab=Kobrezko lauza +Bronze Block Stair=Brontzezko eskailera +Inner Bronze Block Stair=Brontzezko barne-eskailera +Outer Bronze Block Stair=Brontzezko kanpo-eskailera +Bronze Block Slab=Brontzezko lauza +Gold Block Stair=Urrezko eskailera +Inner Gold Block Stair=Urrezko barne-eskailera +Outer Gold Block Stair=Kanpo-eskailera, urrezkoa +Gold Block Slab=Urrezko lauza +Ice Stair=Izotz-eskailera +Inner Ice Stair=Izotzezko barne-eskailera +Outer Ice Stair=Izotzekozko kanpo-eskailera +Ice Slab=Izotz-lauza +Snow Block Stair=Elur-eskailera +Inner Snow Block Stair=Elurrezko barne-eskailera +Outer Snow Block Stair=Elurrezko kanpo-eskailera +Snow Block Slab=Elur-lauza diff --git a/mods/stairs/locale/stairs.fr.tr b/mods/stairs/locale/stairs.fr.tr new file mode 100644 index 0000000..81b575e --- /dev/null +++ b/mods/stairs/locale/stairs.fr.tr @@ -0,0 +1,145 @@ +# textdomain: stairs +Glass Stair=Escalier de verre +Glass Slab=Dalle de verre +Inner Glass Stair=Escalier intérieur de verre +Outer Glass Stair=Escalier extérieur de verre +Obsidian Glass Stair=Escalier de verre d'obsidienne +Obsidian Glass Slab=Dalle de verre d'obsidienne +Inner Obsidian Glass Stair=Escalier intérieur de verre d'obsidienne +Outer Obsidian Glass Stair=Escalier extérieur de verre d'obsidienne +Wooden Stair=Escalier en bois +Inner Wooden Stair=Escalier intérieur en bois +Outer Wooden Stair=Escalier extérieur en bois +Wooden Slab=Dalle de bois +Jungle Wood Stair=Escalier en bois de la jungle +Inner Jungle Wood Stair=Escalier intérieur en bois de la jungle +Outer Jungle Wood Stair=Escalier extérieur en bois de la jungle +Jungle Wood Slab=Dalle en bois de la jungle +Pine Wood Stair=Escalier en pin +Inner Pine Wood Stair=Escalier intérieur en pin +Outer Pine Wood Stair=Escalier extérieur en pin +Pine Wood Slab=Dalle en pin +Acacia Wood Stair=Escalier en acacia +Inner Acacia Wood Stair=Escalier intérieur en acacia +Outer Acacia Wood Stair=Escalier extérieur en acacia +Acacia Wood Slab=Dalle en acacia +Aspen Wood Stair=Escalier en tremble +Inner Aspen Wood Stair=Escalier intérieur en tremble +Outer Aspen Wood Stair=Escalier extérieur en tremble +Aspen Wood Slab=Dalle en tremble +Stone Stair=Escalier de pierre +Inner Stone Stair=Escalier intérieur de pierre +Outer Stone Stair=Escalier extérieur de pierre +Stone Slab=Dalle de pierre +Cobblestone Stair=Escalier en pavé +Inner Cobblestone Stair=Escalier intérieur en pavé +Outer Cobblestone Stair=Escalier extérieur en pavé +Cobblestone Slab=Dalle en pavé +Mossy Cobblestone Stair=Escalier en pavé moussu +Inner Mossy Cobblestone Stair=Escalier intérieur en pavé moussu +Outer Mossy Cobblestone Stair=Escalier extérieur en pavé moussu +Mossy Cobblestone Slab=Dalle en pavé moussu +Stone Brick Stair=Escalier en brique de pierre +Inner Stone Brick Stair=Escalier intérieur en brique de pierre +Outer Stone Brick Stair=Escalier extérieur en brique de pierre +Stone Brick Slab=Dalle en brique de pierre +Stone Block Stair=Escalier en bloc de pierre +Inner Stone Block Stair=Escalier intérieur en bloc de pierre +Outer Stone Block Stair=Escalier extérieur en bloc de pierre +Stone Block Slab=Dalle en bloc de pierre +Desert Stone Stair=Escalier en pierre du désert +Inner Desert Stone Stair=Escalier intérieur en pierre du désert +Outer Desert Stone Stair=Escalier extérieur en pierre du désert +Desert Stone Slab=Dalle en pierre du désert +Desert Cobblestone Stair=Escalier en pavé du désert +Inner Desert Cobblestone Stair=Escalier intérieur en pavé du désert +Outer Desert Cobblestone Stair=Escalier extérieur en pavé du désert +Desert Cobblestone Slab=Dalle en pavé du désert +Desert Stone Brick Stair=Escalier en brique de pierre du désert +Inner Desert Stone Brick Stair=Escalier intérieur en brique de pierre du désert +Outer Desert Stone Brick Stair=Escalier extérieur en brique de pierre du désert +Desert Stone Brick Slab=Dalle en brique de pierre du désert +Desert Stone Block Stair=Escalier en bloc de pierre du désert +Inner Desert Stone Block Stair=Escalier intérieur en bloc de pierre du désert +Outer Desert Stone Block Stair=Escalier extérieur en bloc de pierre du désert +Desert Stone Block Slab=Dalle en bloc de pierre du désert +Sandstone Stair=Escalier en grès +Inner Sandstone Stair=Escalier intérieur en grès +Outer Sandstone Stair=Escalier extérieur en grès +Sandstone Slab=Dalle en grès +Sandstone Brick Stair=Escalier en brique de grès +Inner Sandstone Brick Stair=Escalier intérieur en brique de grès +Outer Sandstone Brick Stair=Escalier extérieur en brique de grès +Sandstone Brick Slab=Dalle en brique de grès +Sandstone Block Stair=Escalier en bloc de grès +Inner Sandstone Block Stair=Escalier intérieur en bloc de grès +Outer Sandstone Block Stair=Escalier extérieur en bloc de grès +Sandstone Block Slab=Dalle en bloc de grès +Desert Sandstone Stair=Escalier en grès du désert +Inner Desert Sandstone Stair=Escalier intérieur en grès du désert +Outer Desert Sandstone Stair=Escalier extérieur en grès du désert +Desert Sandstone Slab=Dalle en grès du désert +Desert Sandstone Brick Stair=Escalier en brique de grès du désert +Inner Desert Sandstone Brick Stair=Escalier intérieur en brique de grès du désert +Outer Desert Sandstone Brick Stair=Escalier extérieur en brique de grès du désert +Desert Sandstone Brick Slab=Dalle en brique de grès du désert +Desert Sandstone Block Stair=Escalier en bloc de grès du désert +Inner Desert Sandstone Block Stair=Escalier intérieur en bloc de grès du désert +Outer Desert Sandstone Block Stair=Escalier extérieur en bloc de grès du désert +Desert Sandstone Block Slab=Dalle en bloc de grès du désert +Silver Sandstone Stair=Escalier en grès argenté +Inner Silver Sandstone Stair=Escalier intérieur en grès argenté +Outer Silver Sandstone Stair=Escalier extérieur en grès argenté +Silver Sandstone Slab=Dalle en grès argenté +Silver Sandstone Brick Stair=Escalier en brique de grès argenté +Inner Silver Sandstone Brick Stair=Escalier intérieur en brique de grès argenté +Outer Silver Sandstone Brick Stair=Escalier extérieur en brique de grès argenté +Silver Sandstone Brick Slab=Dalle en brique de grès argenté +Silver Sandstone Block Stair=Escalier en bloc de grès argenté +Inner Silver Sandstone Block Stair=Escalier intérieur en bloc de grès argenté +Outer Silver Sandstone Block Stair=Escalier extérieur en bloc de grès argenté +Silver Sandstone Block Slab=Dalle en bloc de grès argenté +Obsidian Stair=Escalier en obsidienne +Inner Obsidian Stair=Escalier intérieur en obsidienne +Outer Obsidian Stair=Escalier extérieur en obsidienne +Obsidian Slab=Dalle en obsidienne +Obsidian Brick Stair=Escalier en brique d'obsidienne +Inner Obsidian Brick Stair=Escalier intérieur en brique d'obsidienne +Outer Obsidian Brick Stair=Escalier extérieur en brique d'obsidienne +Obsidian Brick Slab=Dalle en brique d'obsidienne +Obsidian Block Stair=Escalier en bloc d'obsidienne +Inner Obsidian Block Stair=Escalier intérieur en bloc d'obsidienne +Outer Obsidian Block Stair=Escalier extérieur en bloc d'obsidienne +Obsidian Block Slab=Dalle en bloc d'obsidienne +Brick Stair=Escalier en brique +Inner Brick Stair=Escalier intérieur en brique +Outer Brick Stair=Escalier extérieur en brique +Brick Slab=Dalle en brique +Steel Block Stair=Escalier en acier +Inner Steel Block Stair=Escalier intérieur en acier +Outer Steel Block Stair=Escalier extérieur en acier +Steel Block Slab=Dalle en acier +Tin Block Stair=Escalier en bloc d'étain +Inner Tin Block Stair=Escalier intérieur en bloc d'étain +Outer Tin Block Stair=Escalier extérieur en bloc d'étain +Tin Block Slab=Dalle en bloc d'étain +Copper Block Stair=Escalier en bloc de cuivre +Inner Copper Block Stair=Escalier intérieur en bloc de cuivre +Outer Copper Block Stair=Escalier extérieur en bloc de cuivre +Copper Block Slab=Dalle en bloc de cuivre +Bronze Block Stair=Escalier en bronze +Inner Bronze Block Stair=Escalier intérieur en bronze +Outer Bronze Block Stair=Escalier extérieur en bronze +Bronze Block Slab=Dalle en bronze +Gold Block Stair=Escalier en bloc d'or +Inner Gold Block Stair=Escalier intérieur en bloc d'or +Outer Gold Block Stair=Escalier extérieur en bloc d'or +Gold Block Slab=Dalle en bloc d'or +Ice Stair=Escalier de glace +Inner Ice Stair=Escalier intérieur de glace +Outer Ice Stair=Escalier extérieur de glace +Ice Slab=Dalle de glace +Snow Block Stair=Escalier en bloc de neige +Inner Snow Block Stair=Escalier intérieur en bloc de neige +Outer Snow Block Stair=Escalier extérieur en bloc de neige +Snow Block Slab=Dalle en bloc de neige diff --git a/mods/stairs/locale/stairs.hu.tr b/mods/stairs/locale/stairs.hu.tr new file mode 100644 index 0000000..f228a9d --- /dev/null +++ b/mods/stairs/locale/stairs.hu.tr @@ -0,0 +1,145 @@ +# textdomain: stairs +Glass Stair=Üveg lépcső +Glass Slab=Üveg lap +Inner Glass Stair=Üveg belső lépcső +Outer Glass Stair=Üveg külső lépcső +Obsidian Glass Stair=Obszidián üveg lépcső +Obsidian Glass Slab=Obszidián üveg lap +Inner Obsidian Glass Stair=Obszidián üveg belső lépcső +Outer Obsidian Glass Stair=Obszidián üveg külső lépcső +Wooden Stair=Fadeszka lépcső +Inner Wooden Stair=Fadeszka belső lépcső +Outer Wooden Stair=Fadeszka külső lépcső +Wooden Slab=Fadeszka lap +Jungle Wood Stair=Dzsungelfa deszka lépcső +Inner Jungle Wood Stair=Dzsungelfa deszka belső lépcső +Outer Jungle Wood Stair=Dzsungelfa deszka külső lépcső +Jungle Wood Slab=Dzsungelfa deszka lap +Pine Wood Stair=Fenyőfa deszka lépcső +Inner Pine Wood Stair=Fenyőfa deszka belső lépcső +Outer Pine Wood Stair=Fenyőfa deszka külső lépcső +Pine Wood Slab=Fenyőfa deszka lap +Acacia Wood Stair=Akáciafa deszka lépcső +Inner Acacia Wood Stair=Akáciafa deszka belső lépcső +Outer Acacia Wood Stair=Akáciafa deszka külső lépcső +Acacia Wood Slab=Akáciafa deszka lap +Aspen Wood Stair=Nyárfa deszka lépcső +Inner Aspen Wood Stair=Nyárfa deszka belső lépcső +Outer Aspen Wood Stair=Nyárfa deszka külső lépcső +Aspen Wood Slab=Nyárfa deszka lap +Stone Stair=Kő lépcső +Inner Stone Stair=Kő belső lépcső +Outer Stone Stair=Kő külső lépcső +Stone Slab=Kő lap +Cobblestone Stair=Kőtörmelék lépcső +Inner Cobblestone Stair=Kőtörmelék belső lépcső +Outer Cobblestone Stair=Kőtörmelék külső lépcső +Cobblestone Slab=Kőtörmelék lap +Mossy Cobblestone Stair=Mohás kőtörmelék lépcső +Inner Mossy Cobblestone Stair=Mohás kőtörmelék belső lépcső +Outer Mossy Cobblestone Stair=Mohás kőtörmelék külső lépcső +Mossy Cobblestone Slab=Mohás kőtörmelék lap +Stone Brick Stair=Kőtégla lépcső +Inner Stone Brick Stair=Kőtégla belső lépcső +Outer Stone Brick Stair=Kőtégla külső lépcső +Stone Brick Slab=Kőtégla lap +Stone Block Stair=Kőtömb lépcső +Inner Stone Block Stair=Kőtömb belső lépcső +Outer Stone Block Stair=Kőtömb külső lépcső +Stone Block Slab=Kőtömb lap +Desert Stone Stair=Sivatagi kő lépcső +Inner Desert Stone Stair=Sivatagi kő belső lépcső +Outer Desert Stone Stair=Sivatagi kő külső lépcső +Desert Stone Slab=Sivatagi kő lap +Desert Cobblestone Stair=Sivatagi kőtörmlék lépcső +Inner Desert Cobblestone Stair=Sivatagi kőtörmlék belső lépcső +Outer Desert Cobblestone Stair=Sivatagi kőtörmlék külső lépcső +Desert Cobblestone Slab=Sivatagi kőtörmlék lap +Desert Stone Brick Stair=Sivatagi kőtégla lépcső +Inner Desert Stone Brick Stair=Sivatagi kőtégla belső lépcső +Outer Desert Stone Brick Stair=Sivatagi kőtégla külső lépcső +Desert Stone Brick Slab=Sivatagi kőtégla lap +Desert Stone Block Stair=Sivatagi kőtömb lépcső +Inner Desert Stone Block Stair=Sivatagi kőtömb belső lépcső +Outer Desert Stone Block Stair=Sivatagi kőtömb külső lépcső +Desert Stone Block Slab=Sivatagi kőtömb lap +Sandstone Stair=Homokkő lépcső +Inner Sandstone Stair=Homokkő belső lépcső +Outer Sandstone Stair=Homokkő külső lépcső +Sandstone Slab=Homokkő lap +Sandstone Brick Stair=Homokkő tégla lépcső +Inner Sandstone Brick Stair=Homokkő tégla belső lépcső +Outer Sandstone Brick Stair=Homokkő tégla külső lépcső +Sandstone Brick Slab=Homokkő tégla lap +Sandstone Block Stair=Homokkő tömb lépcső +Inner Sandstone Block Stair=Homokkő tömb belső lépcső +Outer Sandstone Block Stair=Homokkő tömb külső lépcső +Sandstone Block Slab=Homokkő tömb lap +Desert Sandstone Stair=Sivatagi homokkő lépcső +Inner Desert Sandstone Stair=Sivatagi homokkő belső lépcső +Outer Desert Sandstone Stair=Sivatagi homokkő külső lépcső +Desert Sandstone Slab=Sivatagi homokkő lap +Desert Sandstone Brick Stair=Sivatagi homokkő tégla lépcső +Inner Desert Sandstone Brick Stair=Sivatagi homokkő tégla belső lépcső +Outer Desert Sandstone Brick Stair=Sivatagi homokkő tégla külső lépcső +Desert Sandstone Brick Slab=Sivatagi homokkő tégla lap +Desert Sandstone Block Stair=Sivatagi homokkő tömb lépcső +Inner Desert Sandstone Block Stair=Sivatagi homokkő tömb belső lépcső +Outer Desert Sandstone Block Stair=Sivatagi homokkő tömb külső lépcső +Desert Sandstone Block Slab=Sivatagi homokkő tömb lap +Silver Sandstone Stair=Ezüst homokkő lépcső +Inner Silver Sandstone Stair=Ezüst homokkő belső lépcső +Outer Silver Sandstone Stair=Ezüst homokkő külső lépcső +Silver Sandstone Slab=Ezüst homokkő lap +Silver Sandstone Brick Stair=Ezüst homokkő tégla lépcső +Inner Silver Sandstone Brick Stair=Ezüst homokkő tégla belső lépcső +Outer Silver Sandstone Brick Stair=Ezüst homokkő tégla külső lépcső +Silver Sandstone Brick Slab=Ezüst homokkő tégla lap +Silver Sandstone Block Stair=Ezüst homokkő tömb lépcső +Inner Silver Sandstone Block Stair=Ezüst homokkő tömb belső lépcső +Outer Silver Sandstone Block Stair=Ezüst homokkő tömb külső lépcső +Silver Sandstone Block Slab=Ezüst homokkő tömb lap +Obsidian Stair=Obszidián lépcső +Inner Obsidian Stair=Obszidián belső lépcső +Outer Obsidian Stair=Obszidián külső lépcső +Obsidian Slab=Obszidián lap +Obsidian Brick Stair=Obszidián tégla lépcső +Inner Obsidian Brick Stair=Obszidián tégla belső lépcső +Outer Obsidian Brick Stair=Obszidián tégla külső lépcső +Obsidian Brick Slab=Obszidián tégla lap +Obsidian Block Stair=Obszidián tömb lépcső +Inner Obsidian Block Stair=Obszidián tömb belső lépcső +Outer Obsidian Block Stair=Obszidián tömb külső lépcső +Obsidian Block Slab=Obszidián tömb lap +Brick Stair=Tégla lépcső +Inner Brick Stair=Tégla belső lépcső +Outer Brick Stair=Tégla külső lépcső +Brick Slab=Tégla lap +Steel Block Stair=Acéltömb lépcső +Inner Steel Block Stair=Acéltömb belső lépcső +Outer Steel Block Stair=Acéltömb külső lépcső +Steel Block Slab=Acéltömb lap +Tin Block Stair=Óntömb lépcső +Inner Tin Block Stair=Óntömb belső lépcső +Outer Tin Block Stair=Óntömb külső lépcső +Tin Block Slab=Óntömb lap +Copper Block Stair=Réztömb lépcső +Inner Copper Block Stair=Réztömb belső lépcső +Outer Copper Block Stair=Réztömb külső lépcső +Copper Block Slab=Réztömb lap +Bronze Block Stair=Bronztömb lépcső +Inner Bronze Block Stair=Bronztömb belső lépcső +Outer Bronze Block Stair=Bronztömb külső lépcső +Bronze Block Slab=Bronztömb lap +Gold Block Stair=Aranytömb lépcső +Inner Gold Block Stair=Aranytömb belső lépcső +Outer Gold Block Stair=Aranytömb külső lépcső +Gold Block Slab=Aranytömb lap +Ice Stair=Jég lépcső +Inner Ice Stair=Jég belső lépcső +Outer Ice Stair=Jég külső lépcső +Ice Slab=Jég lap +Snow Block Stair=Hótömb lépcső +Inner Snow Block Stair=Hótömb belső lépcső +Outer Snow Block Stair=Hótömb külső lépcső +Snow Block Slab=Hótömb lap diff --git a/mods/stairs/locale/stairs.id.tr b/mods/stairs/locale/stairs.id.tr new file mode 100644 index 0000000..dbdfaa0 --- /dev/null +++ b/mods/stairs/locale/stairs.id.tr @@ -0,0 +1,145 @@ +# textdomain: stairs +Glass Stair=Tangga Kaca +Glass Slab=Lempengan Kaca +Inner Glass Stair=Tangga Kaca Dalam +Outer Glass Stair=Tangga Kaca Luar +Obsidian Glass Stair=Tangga Kaca Obsidian +Obsidian Glass Slab=Lempengan Kaca Obsidian +Inner Obsidian Glass Stair=Tangga Kaca Obsidian Dalam +Outer Obsidian Glass Stair=Tangga Kaca Obsidian Luar +Wooden Stair=Tangga Kayu +Inner Wooden Stair=Tangga Kayu Dalam +Outer Wooden Stair=Tangga Kayu Luar +Wooden Slab=Lempengan Kayu +Jungle Wood Stair=Tangga Kayu Rimba +Inner Jungle Wood Stair=Tangga Kayu Rimba Dalam +Outer Jungle Wood Stair=Tangga Kayu Rimba Luar +Jungle Wood Slab=Lempengan Kayu Rimba +Pine Wood Stair=Tangga Kayu Pinus +Inner Pine Wood Stair=Tangga Kayu Pinus Dalam +Outer Pine Wood Stair=Tangga Kayu Pinus Luar +Pine Wood Slab=Lempengan Kayu Pinus +Acacia Wood Stair=Tangga Kayu Akasia +Inner Acacia Wood Stair=Tangga Kayu Akasia Dalam +Outer Acacia Wood Stair=Tangga Kayu Akasia Luar +Acacia Wood Slab=Lempengan Kayu Akasia +Aspen Wood Stair=Tangga Kayu Aspen +Inner Aspen Wood Stair=Tangga Kayu Aspen Dalam +Outer Aspen Wood Stair=Tangga Kayu Aspen Luar +Aspen Wood Slab=Lempengan Kayu Aspen +Stone Stair=Tangga Batu +Inner Stone Stair=Tangga Batu Dalam +Outer Stone Stair=Tangga Batu Luar +Stone Slab=Lempengan Batu +Cobblestone Stair=Tangga Bongkahan Batu +Inner Cobblestone Stair=Tangga Bongkahan Batu Dalam +Outer Cobblestone Stair=Tangga Bongkahan Batu Luar +Cobblestone Slab=Lempengan Bongkahan Batu +Mossy Cobblestone Stair=Tangga Bongkahan Batu Berlumut +Inner Mossy Cobblestone Stair=Tangga Bongkahan Batu Berlumut Dalam +Outer Mossy Cobblestone Stair=Tangga Bongkahan Batu Berlumut Luar +Mossy Cobblestone Slab=Lempengan Bongkahan Batu Berlumut +Stone Brick Stair=Tangga Tembok Batu +Inner Stone Brick Stair=Tangga Tembok Batu Dalam +Outer Stone Brick Stair=Tangga Tembok Batu Luar +Stone Brick Slab=Lempengan Tembok Batu +Stone Block Stair=Tangga Balok Batu +Inner Stone Block Stair=Tangga Balok Batu Dalam +Outer Stone Block Stair=Tangga Balok Batu Luar +Stone Block Slab=Lempengan Balok Batu +Desert Stone Stair=Tangga Batu Gurun +Inner Desert Stone Stair=Tangga Batu Gurun Dalam +Outer Desert Stone Stair=Tangga Batu Gurun Luar +Desert Stone Slab=Lempengan Batu Gurun +Desert Cobblestone Stair=Tangga Bongkahan Batu Gurun +Inner Desert Cobblestone Stair=Tangga Bongkahan Batu Gurun Dalam +Outer Desert Cobblestone Stair=Tangga Bongkahan Batu Gurun Luar +Desert Cobblestone Slab=Lempengan Bongkahan Batu Gurun +Desert Stone Brick Stair=Tangga Tembok Batu Gurun +Inner Desert Stone Brick Stair=Tangga Tembok Batu Gurun Dalam +Outer Desert Stone Brick Stair=Tangga Tembok Batu Gurun Luar +Desert Stone Brick Slab=Lempengan Tembok Batu Gurun +Desert Stone Block Stair=Tangga Balok Batu Gurun +Inner Desert Stone Block Stair=Tangga Balok Batu Gurun Dalam +Outer Desert Stone Block Stair=Tangga Balok Batu Gurun Luar +Desert Stone Block Slab=Lempengan Balok Batu Gurun +Sandstone Stair=Tangga Batu Pasir +Inner Sandstone Stair=Tangga Batu Pasir Dalam +Outer Sandstone Stair=Tangga Batu Pasir Luar +Sandstone Slab=Lempengan Batu Pasir +Sandstone Brick Stair=Tangga Tembok Batu Pasir +Inner Sandstone Brick Stair=Tangga Tembok Batu Pasir Dalam +Outer Sandstone Brick Stair=Tangga Tembok Batu Pasir Luar +Sandstone Brick Slab=Lempengan Tembok Batu Pasir +Sandstone Block Stair=Tangga Balok Batu Pasir +Inner Sandstone Block Stair=Tangga Balok Batu Pasir Dalam +Outer Sandstone Block Stair=Tangga Balok Batu Pasir Luar +Sandstone Block Slab=Lempengan Balok Batu Pasir +Desert Sandstone Stair=Tangga Batu Pasir Gurun +Inner Desert Sandstone Stair=Tangga Batu Pasir Gurun Dalam +Outer Desert Sandstone Stair=Tangga Batu Pasir Gurun Luar +Desert Sandstone Slab=Lempengan Batu Pasir Gurun +Desert Sandstone Brick Stair=Tangga Tembok Batu Pasir Gurun +Inner Desert Sandstone Brick Stair=Tangga Tembok Batu Pasir Gurun Dalam +Outer Desert Sandstone Brick Stair=Tangga Tembok Batu Pasir Gurun Luar +Desert Sandstone Brick Slab=Lempengan Tembok Batu Pasir Gurun +Desert Sandstone Block Stair=Tangga Balok Batu Pasir Gurun +Inner Desert Sandstone Block Stair=Tangga Balok Batu Pasir Gurun Dalam +Outer Desert Sandstone Block Stair=Tangga Balok Batu Pasir Gurun Luar +Desert Sandstone Block Slab=Lempengan Balok Batu Pasir Gurun +Silver Sandstone Stair=Tangga Batu Pasir Perak +Inner Silver Sandstone Stair=Tangga Batu Pasir Perak Dalam +Outer Silver Sandstone Stair=Tangga Batu Pasir Perak Luar +Silver Sandstone Slab=Lempengan Batu Pasir Perak +Silver Sandstone Brick Stair=Tangga Tembok Batu Pasir Perak +Inner Silver Sandstone Brick Stair=Tangga Tembok Batu Pasir Perak Dalam +Outer Silver Sandstone Brick Stair=Tangga Tembok Batu Pasir Perak Luar +Silver Sandstone Brick Slab=Lempengan Tembok Batu Pasir Perak +Silver Sandstone Block Stair=Tangga Balok Batu Pasir Perak +Inner Silver Sandstone Block Stair=Tangga Balok Batu Pasir Perak Dalam +Outer Silver Sandstone Block Stair=Tangga Balok Batu Pasir Perak Luar +Silver Sandstone Block Slab=Lempengan Balok Batu Pasir Perak +Obsidian Stair=Tangga Obsidian +Inner Obsidian Stair=Tangga Obsidian Dalam +Outer Obsidian Stair=Tangga Obsidian Luar +Obsidian Slab=Lempengan Obsidian +Obsidian Brick Stair=Tangga Tembok Obsidian +Inner Obsidian Brick Stair=Tangga Tembok Obsidian Dalam +Outer Obsidian Brick Stair=Tangga Tembok Obsidian Luar +Obsidian Brick Slab=Lempengan Tembok Obsidian +Obsidian Block Stair=Tangga Balok Obsidian +Inner Obsidian Block Stair=Tangga Balok Obsidian Dalam +Outer Obsidian Block Stair=Tangga Balok Obsidian Luar +Obsidian Block Slab=Lempengan Balok Obsidian +Brick Stair=Tangga Bata +Inner Brick Stair=Tangga Bata Dalam +Outer Brick Stair=Tangga Bata Luar +Brick Slab=Lempengan Bata +Steel Block Stair=Tangga Balok Baja +Inner Steel Block Stair=Tangga Balok Baja Dalam +Outer Steel Block Stair=Tangga Balok Baja Luar +Steel Block Slab=Lempengan Balok Baja +Tin Block Stair=Tangga Balok Timah +Inner Tin Block Stair=Tangga Balok Timah Dalam +Outer Tin Block Stair=Tangga Balok Timah Luar +Tin Block Slab=Lempengan Balok Timah +Copper Block Stair=Tangga Balok Tembaga +Inner Copper Block Stair=Tangga Balok Tembaga Dalam +Outer Copper Block Stair=Tangga Balok Tembaga Luar +Copper Block Slab=Lempengan Balok Tembaga +Bronze Block Stair=Tangga Balok Perunggu +Inner Bronze Block Stair=Tangga Balok Perunggu Dalam +Outer Bronze Block Stair=Tangga Balok Perunggu Luar +Bronze Block Slab=Lempengan Balok Perunggu +Gold Block Stair=Tangga Balok Emas +Inner Gold Block Stair=Tangga Balok Emas Dalam +Outer Gold Block Stair=Tangga Balok Emas Luar +Gold Block Slab=Lempengan Balok Emas +Ice Stair=Tangga Es +Inner Ice Stair=Tangga Es Dalam +Outer Ice Stair=Tangga Es Luar +Ice Slab=Lempengan Es +Snow Block Stair=Tangga Balok Salju +Inner Snow Block Stair=Tangga Balok Salju Dalam +Outer Snow Block Stair=Tangga Balok Salju Luar +Snow Block Slab=Lempengan Balok Salju diff --git a/mods/stairs/locale/stairs.it.tr b/mods/stairs/locale/stairs.it.tr new file mode 100644 index 0000000..16945ec --- /dev/null +++ b/mods/stairs/locale/stairs.it.tr @@ -0,0 +1,145 @@ +# textdomain: stairs +Glass Stair=Scala di vetro +Glass Slab=Lastra di vetro +Inner Glass Stair=Scala di vetro interna +Outer Glass Stair=Scala di vetro esterna +Obsidian Glass Stair=Scala di vetro d'ossidiana +Obsidian Glass Slab=Lastra di vetro d'ossidiana +Inner Obsidian Glass Stair=Scala di vetro d'ossidiana interna +Outer Obsidian Glass Stair=Scala di vetro d'ossidiana esterna +Wooden Stair=Scala di legno +Inner Wooden Stair=Scala di legno interna +Outer Wooden Stair=Scala di legno esterna +Wooden Slab=Lastra di legno +Jungle Wood Stair=Scala di legno della giungla +Inner Jungle Wood Stair=Scala di legno della giungla interna +Outer Jungle Wood Stair=Scala di legno della giungla esterna +Jungle Wood Slab=Lastra di legno della giungla +Pine Wood Stair=Scala di legno di pino +Inner Pine Wood Stair=Scala di legno di pino interna +Outer Pine Wood Stair=Scala di legno di pino esterna +Pine Wood Slab=Lastra di legno di pino +Acacia Wood Stair=Scala di legno d'acacia +Inner Acacia Wood Stair=Scala di legno d'acacia interna +Outer Acacia Wood Stair=Scala di legno d'acacia esterna +Acacia Wood Slab=Lastra di legno d'acacia +Aspen Wood Stair=Scala di legno di pioppo +Inner Aspen Wood Stair=Scala di legno di pioppo interna +Outer Aspen Wood Stair=Scala di legno di pioppo esterna +Aspen Wood Slab=Lastra di legno di pioppo +Stone Stair=Scala di pietra +Inner Stone Stair=Scala di pietra interna +Outer Stone Stair=Scala di pietra esterna +Stone Slab=Lastra di pietra +Cobblestone Stair=Scala di ciottoli +Inner Cobblestone Stair=Scala di ciottoli interna +Outer Cobblestone Stair=Scala di ciottoli esterna +Cobblestone Slab=Lastra di ciottoli +Mossy Cobblestone Stair=Scala di ciottoli muschiosi +Inner Mossy Cobblestone Stair=Scala di ciottoli muschiosi interna +Outer Mossy Cobblestone Stair=Scala di ciottoli muschiosi esterna +Mossy Cobblestone Slab=Lastra di ciottoli muschiosi +Stone Brick Stair=Scala di mattone di pietra +Inner Stone Brick Stair=Scala di mattone di pietra interna +Outer Stone Brick Stair=Scala di mattone di pietra esterna +Stone Brick Slab=Lastra di mattone di pietra +Stone Block Stair=Scala di blocco di pietra +Inner Stone Block Stair=Scala di blocco di pietra interna +Outer Stone Block Stair=Scala di blocco di pietra esterna +Stone Block Slab=Lastra di blocco di pietra +Desert Stone Stair=Scala di pietra del deserto +Inner Desert Stone Stair=Scala di pietra del deserto interna +Outer Desert Stone Stair=Scala di pietra del deserto esterna +Desert Stone Slab=Lastra di pietra del deserto +Desert Cobblestone Stair=Scala di ciottoli del deserto +Inner Desert Cobblestone Stair=Scala di ciottoli del deserto interna +Outer Desert Cobblestone Stair=Scala di ciottoli del deserto esterna +Desert Cobblestone Slab=Lastra di ciottoli del deserto +Desert Stone Brick Stair=Scala di mattone di pietra del deserto +Inner Desert Stone Brick Stair=Scala di mattone di pietra del deserto interna +Outer Desert Stone Brick Stair=Scala di mattone di pietra del deserto esterna +Desert Stone Brick Slab=Lastra di mattone di pietra del deserto +Desert Stone Block Stair=Scala di blocco di pietra del deserto +Inner Desert Stone Block Stair=Scala di blocco di pietra del deserto interna +Outer Desert Stone Block Stair=Scala di blocco di pietra del deserto esterna +Desert Stone Block Slab=Lastra di blocco di pietra del deserto +Sandstone Stair=Scala d'arenaria +Inner Sandstone Stair=Scala d'arenaria interna +Outer Sandstone Stair=Scala d'arenaria esterna +Sandstone Slab=Lastra d'arenaria +Sandstone Brick Stair=Scala di mattone d'arenaria +Inner Sandstone Brick Stair=Scala di mattone d'arenaria interna +Outer Sandstone Brick Stair=Scala di mattone d'arenaria esterna +Sandstone Brick Slab=Lastra di mattone d'arenaria +Sandstone Block Stair=Scala di blocco d'arenaria +Inner Sandstone Block Stair=Scala di blocco d'arenaria interna +Outer Sandstone Block Stair=Scala di blocco d'arenaria esterna +Sandstone Block Slab=Lastra di blocco d'arenaria +Desert Sandstone Stair=Scala d'arenaria del deserto +Inner Desert Sandstone Stair=Scala d'arenaria del deserto interna +Outer Desert Sandstone Stair=Scala d'arenaria del deserto esterna +Desert Sandstone Slab=Lastra d'arenaria del deserto +Desert Sandstone Brick Stair=Scala di mattone d'arenaria del deserto +Inner Desert Sandstone Brick Stair=Scala di mattone d'arenaria del deserto interna +Outer Desert Sandstone Brick Stair=Scala di mattone d'arenaria del deserto esterna +Desert Sandstone Brick Slab=Lastra di mattone d'arenaria del deserto +Desert Sandstone Block Stair=Scala di blocco d'arenaria del deserto +Inner Desert Sandstone Block Stair=Scala di blocco d'arenaria del deserto interna +Outer Desert Sandstone Block Stair=Scala di blocco d'arenaria del deserto esterna +Desert Sandstone Block Slab=Lastra di blocco d'arenaria del deserto +Silver Sandstone Stair=Scala d'arenaria argentata +Inner Silver Sandstone Stair=Scala d'arenaria argentata interna +Outer Silver Sandstone Stair=Scala d'arenaria argentata esterna +Silver Sandstone Slab=Lastra d'arenaria argentata +Silver Sandstone Brick Stair=Scala di mattone d'arenaria argentata +Inner Silver Sandstone Brick Stair=Scala di mattone d'arenaria argentata interna +Outer Silver Sandstone Brick Stair=Scala di mattone d'arenaria argentata esterna +Silver Sandstone Brick Slab=Lastra di mattone d'arenaria argentata +Silver Sandstone Block Stair=Scala di blocco d'arenaria argentata +Inner Silver Sandstone Block Stair=Scala di blocco d'arenaria argentata interna +Outer Silver Sandstone Block Stair=Scala di blocco d'arenaria argentata esterna +Silver Sandstone Block Slab=Lastra di blocco d'arenaria argentata +Obsidian Stair=Scala d'ossidiana +Inner Obsidian Stair=Scala d'ossidiana interna +Outer Obsidian Stair=Scala d'ossidiana esterna +Obsidian Slab=Lastra d'ossidiana +Obsidian Brick Stair=Scala di mattone d'ossidiana +Inner Obsidian Brick Stair=Scala di mattone d'ossidiana interna +Outer Obsidian Brick Stair=Scala di mattone d'ossidiana esterna +Obsidian Brick Slab=Lastra di mattone d'ossidiana +Obsidian Block Stair=Scala di blocco d'ossidiana +Inner Obsidian Block Stair=Scala di blocco d'ossidiana interna +Outer Obsidian Block Stair=Scala di blocco d'ossidiana esterna +Obsidian Block Slab=Lastra di blocco d'ossidiana +Brick Stair=Scala di mattone +Inner Brick Stair=Scala di mattone interna +Outer Brick Stair=Scala di mattone esterna +Brick Slab=Lastra di mattone +Steel Block Stair=Scala di blocco d'acciaio +Inner Steel Block Stair=Scala di blocco d'acciaio interna +Outer Steel Block Stair=Scala di blocco d'acciaio esterna +Steel Block Slab=Lastra di blocco d'acciaio +Tin Block Stair=Scala di blocco di stagno +Inner Tin Block Stair=Scala di blocco di stagno interna +Outer Tin Block Stair=Scala di blocco di stagno esterna +Tin Block Slab=Lastra di blocco di stagno +Copper Block Stair=Scala di blocco di rame +Inner Copper Block Stair=Scala di blocco di rame interna +Outer Copper Block Stair=Scala di blocco di rame esterna +Copper Block Slab=Lastra di blocco di rame +Bronze Block Stair=Scala di blocco di bronzo +Inner Bronze Block Stair=Scala di blocco di bronzo interna +Outer Bronze Block Stair=Scala di blocco di bronzo esterna +Bronze Block Slab=Lastra di blocco di bronzo +Gold Block Stair=Scala di blocco d'oro +Inner Gold Block Stair=Scala di blocco d'oro interna +Outer Gold Block Stair=Scala di blocco d'oro esterna +Gold Block Slab=Lastra di blocco d'oro +Ice Stair=Scala di ghiaccio +Inner Ice Stair=Scala di ghiaccio interna +Outer Ice Stair=Scala di ghiaccio esterna +Ice Slab=Lastra di ghiaccio +Snow Block Stair=Scala di blocco di neve +Inner Snow Block Stair=Scala di blocco di neve interna +Outer Snow Block Stair=Scala di blocco di neve esterna +Snow Block Slab=Lastra di blocco di neve diff --git a/mods/stairs/locale/stairs.ja.tr b/mods/stairs/locale/stairs.ja.tr new file mode 100644 index 0000000..02576cd --- /dev/null +++ b/mods/stairs/locale/stairs.ja.tr @@ -0,0 +1,145 @@ +# textdomain: stairs +Glass Stair=ガラスの階段 +Glass Slab=ガラスの厚板 +Inner Glass Stair=ガラスの凹階段 +Outer Glass Stair=ガラスの凸階段 +Obsidian Glass Stair=黒曜石ガラスの階段 +Obsidian Glass Slab=黒曜石ガラスの厚板 +Inner Obsidian Glass Stair=黒曜石ガラスの凹階段 +Outer Obsidian Glass Stair=黒曜石ガラスの凸階段 +Wooden Stair=木製の階段 +Inner Wooden Stair=木製の凹階段 +Outer Wooden Stair=木製の凸階段 +Wooden Slab=木製の厚板 +Jungle Wood Stair=ジャングル材の階段 +Inner Jungle Wood Stair=ジャングル材の凹階段 +Outer Jungle Wood Stair=ジャングル材の凸階段 +Jungle Wood Slab=ジャングル材の厚板 +Pine Wood Stair=マツ材の階段 +Inner Pine Wood Stair=マツ材の凹階段 +Outer Pine Wood Stair=マツ材の凸階段 +Pine Wood Slab=マツ材の厚板 +Acacia Wood Stair=アカシア材の階段 +Inner Acacia Wood Stair=アカシア材の凹階段 +Outer Acacia Wood Stair=アカシア材の凸階段 +Acacia Wood Slab=アカシア材の厚板 +Aspen Wood Stair=ポプラ材の階段 +Inner Aspen Wood Stair=ポプラ材の凹階段 +Outer Aspen Wood Stair=ポプラ材の凸階段 +Aspen Wood Slab=ポプラ材の厚板 +Stone Stair=石の階段 +Inner Stone Stair=石の凹階段 +Outer Stone Stair=石の凸階段 +Stone Slab=石の厚板 +Cobblestone Stair=丸石の階段 +Inner Cobblestone Stair=丸石の凹階段 +Outer Cobblestone Stair=丸石の凸階段 +Cobblestone Slab=丸石の厚板 +Mossy Cobblestone Stair=苔むした丸石の階段 +Inner Mossy Cobblestone Stair=苔むした丸石の凹階段 +Outer Mossy Cobblestone Stair=苔むした丸石の凸階段 +Mossy Cobblestone Slab=苔むした丸石の厚板 +Stone Brick Stair=石レンガの階段 +Inner Stone Brick Stair=石レンガの凹階段 +Outer Stone Brick Stair=石レンガの凸階段 +Stone Brick Slab=石レンガの厚板 +Stone Block Stair=石ブロックの階段 +Inner Stone Block Stair=石ブロックの凹階段 +Outer Stone Block Stair=石ブロックの凸階段 +Stone Block Slab=石ブロックの厚板 +Desert Stone Stair=砂漠の石の階段 +Inner Desert Stone Stair=砂漠の石の凹階段 +Outer Desert Stone Stair=砂漠の石の凸階段 +Desert Stone Slab=砂漠の石の厚板 +Desert Cobblestone Stair=砂漠の丸石の階段 +Inner Desert Cobblestone Stair=砂漠の丸石の凹階段 +Outer Desert Cobblestone Stair=砂漠の丸石の凸階段 +Desert Cobblestone Slab=砂漠の丸石の厚板 +Desert Stone Brick Stair=砂漠の石レンガの階段 +Inner Desert Stone Brick Stair=砂漠の石レンガの凹階段 +Outer Desert Stone Brick Stair=砂漠の石レンガの凸階段 +Desert Stone Brick Slab=砂漠の石レンガの厚板 +Desert Stone Block Stair=砂漠の石ブロックの階段 +Inner Desert Stone Block Stair=砂漠の石ブロックの凹階段 +Outer Desert Stone Block Stair=砂漠の石ブロックの凸階段 +Desert Stone Block Slab=砂漠の石ブロックの厚板 +Sandstone Stair=砂岩の階段 +Inner Sandstone Stair=砂岩の凹階段 +Outer Sandstone Stair=砂岩の凸階段 +Sandstone Slab=砂岩の厚板 +Sandstone Brick Stair=砂岩レンガの階段 +Inner Sandstone Brick Stair=砂岩レンガの凹階段 +Outer Sandstone Brick Stair=砂岩レンガの凸階段 +Sandstone Brick Slab=砂岩レンガの厚板 +Sandstone Block Stair=砂岩ブロックの階段 +Inner Sandstone Block Stair=砂岩ブロックの凹階段 +Outer Sandstone Block Stair=砂岩ブロックの凸階段 +Sandstone Block Slab=砂岩ブロックの厚板 +Desert Sandstone Stair=砂漠の砂岩の階段 +Inner Desert Sandstone Stair=砂漠の砂岩の凹階段 +Outer Desert Sandstone Stair=砂漠の砂岩の凸階段 +Desert Sandstone Slab=砂漠の砂岩の厚板 +Desert Sandstone Brick Stair=砂漠の砂岩レンガの階段 +Inner Desert Sandstone Brick Stair=砂漠の砂岩レンガの凹階段 +Outer Desert Sandstone Brick Stair=砂漠の砂岩レンガの凸階段 +Desert Sandstone Brick Slab=砂漠の砂岩レンガの厚板 +Desert Sandstone Block Stair=砂漠の砂岩ブロックの階段 +Inner Desert Sandstone Block Stair=砂漠の砂岩ブロックの凹階段 +Outer Desert Sandstone Block Stair=砂漠の砂岩ブロックの凸階段 +Desert Sandstone Block Slab=砂漠の砂岩ブロックの厚板 +Silver Sandstone Stair=銀色の砂岩の階段 +Inner Silver Sandstone Stair=銀色の砂岩の凹階段 +Outer Silver Sandstone Stair=銀色の砂岩の凸階段 +Silver Sandstone Slab=銀色の砂岩の厚板 +Silver Sandstone Brick Stair=銀色の砂岩レンガの階段 +Inner Silver Sandstone Brick Stair=銀色の砂岩レンガの凹階段 +Outer Silver Sandstone Brick Stair=銀色の砂岩レンガの凸階段 +Silver Sandstone Brick Slab=銀色の砂岩レンガの厚板 +Silver Sandstone Block Stair=銀色の砂岩ブロックの階段 +Inner Silver Sandstone Block Stair=銀色の砂岩ブロックの凹階段 +Outer Silver Sandstone Block Stair=銀色の砂岩ブロックの凸階段 +Silver Sandstone Block Slab=銀色の砂岩ブロックの厚板 +Obsidian Stair=黒曜石の階段 +Inner Obsidian Stair=黒曜石の凹階段 +Outer Obsidian Stair=黒曜石の凸階段 +Obsidian Slab=黒曜石の厚板 +Obsidian Brick Stair=黒曜石レンガの階段 +Inner Obsidian Brick Stair=黒曜石レンガの凹階段 +Outer Obsidian Brick Stair=黒曜石レンガの凸階段 +Obsidian Brick Slab=黒曜石レンガの厚板 +Obsidian Block Stair=黒曜石ブロックの階段 +Inner Obsidian Block Stair=黒曜石ブロックの凹階段 +Outer Obsidian Block Stair=黒曜石ブロックの凸階段 +Obsidian Block Slab=黒曜石ブロックの厚板 +Brick Stair=レンガの階段 +Inner Brick Stair=レンガの凹階段 +Outer Brick Stair=レンガの凸階段 +Brick Slab=レンガの厚板 +Steel Block Stair=鉄ブロックの階段 +Inner Steel Block Stair=鉄ブロックの凹階段 +Outer Steel Block Stair=鉄ブロックの凸階段 +Steel Block Slab=鉄ブロックの厚板 +Tin Block Stair=スズの階段 +Inner Tin Block Stair=スズの凹階段 +Outer Tin Block Stair=スズの凸階段 +Tin Block Slab=スズの厚板 +Copper Block Stair=銅ブロックの階段 +Inner Copper Block Stair=銅ブロックの凹階段 +Outer Copper Block Stair=銅ブロックの凸階段 +Copper Block Slab=銅ブロックの厚板 +Bronze Block Stair=青銅ブロックの階段 +Inner Bronze Block Stair=青銅ブロックの凹階段 +Outer Bronze Block Stair=青銅ブロックの凸階段 +Bronze Block Slab=青銅ブロックの厚板 +Gold Block Stair=金ブロックの階段 +Inner Gold Block Stair=金ブロックの凹階段 +Outer Gold Block Stair=金ブロックの凸階段 +Gold Block Slab=金ブロックの厚板 +Ice Stair=氷の階段 +Inner Ice Stair=氷の凹階段 +Outer Ice Stair=氷の凸階段 +Ice Slab=氷の厚板 +Snow Block Stair=雪の階段 +Inner Snow Block Stair=雪の凹階段 +Outer Snow Block Stair=雪の凸階段 +Snow Block Slab=雪の厚板 diff --git a/mods/stairs/locale/stairs.jbo.tr b/mods/stairs/locale/stairs.jbo.tr new file mode 100644 index 0000000..91d2806 --- /dev/null +++ b/mods/stairs/locale/stairs.jbo.tr @@ -0,0 +1,145 @@ +# textdomain: stairs +Glass Stair=lo blaci serti +Glass Slab=lo blaci xadba bliku +Inner Glass Stair=lo zo'i blaci serti +Outer Glass Stair=lo ze'o blaci serti +Obsidian Glass Stair=lo je'erma'ablaci blaci serti +Obsidian Glass Slab=lo je'erma'ablaci blaci ke xadba bliku +Inner Obsidian Glass Stair=lo zo'i je'erma'ablaci blaci serti +Outer Obsidian Glass Stair=lo ze'o je'erma'ablaci blaci serti +Wooden Stair=lo mudri serti +Inner Wooden Stair=lo zo'i mudri serti +Outer Wooden Stair=lo ze'o mudri serti +Wooden Slab=lo mudri ke xadba bliku +Jungle Wood Stair=lo glatimdemricfoi mudri serti +Inner Jungle Wood Stair=lo zo'i glatimdemricfoi mudri serti +Outer Jungle Wood Stair=lo ze'o glatimdemricfoi mudri serti +Jungle Wood Slab=lo glatimdemricfoi mudri ke xadba bliku +Pine Wood Stair=lo ku'urmudri serti +Inner Pine Wood Stair=lo zo'i ku'urmudri serti +Outer Pine Wood Stair=lo ze'o ku'urmudri serti +Pine Wood Slab=lo ku'urmudri ke xadba bliku +Acacia Wood Stair=lo atkaci,ia mudri serti +Inner Acacia Wood Stair=lo zo'i atkaci,ia mudri serti +Outer Acacia Wood Stair=lo ze'o atkaci,ia mudri serti +Acacia Wood Slab=lo atkaci,ia mudri ke xadba bliku +Aspen Wood Stair=lo mudrpopulu serti +Inner Aspen Wood Stair=lo zo'i mudrpopulu serti +Outer Aspen Wood Stair=lo ze'o mudrpopulu serti +Aspen Wood Slab=lo mudrpopulu ke xadba bliku +Stone Stair=lo rokci serti +Inner Stone Stair=lo zo'i rokci serti +Outer Stone Stair=lo ze'o rokci serti +Stone Slab=lo rokci ke xadba bliku +Cobblestone Stair=lo lolro'iboi serti +Inner Cobblestone Stair=lo zo'i lolro'iboi serti +Outer Cobblestone Stair=lo ze'o lolro'iboi serti +Cobblestone Slab=lo lolro'iboi xadba bliku +Mossy Cobblestone Stair=lo clika lolro'iboi serti +Inner Mossy Cobblestone Stair=lo zo'i clika lolro'iboi serti +Outer Mossy Cobblestone Stair=lo ze'o clika lolro'iboi serti +Mossy Cobblestone Slab=lo clika lolro'iboi ke xadba bliku +Stone Brick Stair=lo morna rokci serti +Inner Stone Brick Stair=lo zo'i morna rokci serti +Outer Stone Brick Stair=lo ze'o morna rokci serti +Stone Brick Slab=lo morna rokci ke xadba bliku +Stone Block Stair=lo rokci bliku serti +Inner Stone Block Stair=lo zo'i rokci bliku serti +Outer Stone Block Stair=lo ze'o rokci bliku serti +Stone Block Slab=lo rokci bliku ke xadba bliku +Desert Stone Stair=lo cantu'a rokci serti +Inner Desert Stone Stair=lo zo'i cantu'a rokci serti +Outer Desert Stone Stair=lo ze'o cantu'a rokci serti +Desert Stone Slab=lo cantu'a rokci ke xadba bliku +Desert Cobblestone Stair=lo cantu'a lolro'iboi serti +Inner Desert Cobblestone Stair=lo zo'i cantu'a lolro'iboi serti +Outer Desert Cobblestone Stair=lo ze'o cantu'a lolro'iboi serti +Desert Cobblestone Slab=lo cantu'a lolro'iboi ke xadba bliku +Desert Stone Brick Stair=lo morna ke cantu'a rokci serti +Inner Desert Stone Brick Stair=lo zo'i morna ke cantu'a rokci serti +Outer Desert Stone Brick Stair=lo ze'o morna ke cantu'a rokci serti +Desert Stone Brick Slab=lo morna ke cantu'a rokci ke xadba bliku +Desert Stone Block Stair=lo cantu'a rokci bliku serti +Inner Desert Stone Block Stair=lo zo'i cantu'a rokci bliku serti +Outer Desert Stone Block Stair=lo ze'o cantu'a rokci bliku serti +Desert Stone Block Slab=lo cantu'a rokci bliku ke xadba bliku +Sandstone Stair=lo canro'i serti +Inner Sandstone Stair=lo zo'i canro'i serti +Outer Sandstone Stair=lo ze'o canro'i serti +Sandstone Slab=lo canro'i ke xadba bliku +Sandstone Brick Stair=lo morna ke canro'i serti +Inner Sandstone Brick Stair=lo zo'i morna ke canro'i serti +Outer Sandstone Brick Stair=lo ze'o morna ke canro'i serti +Sandstone Brick Slab=lo morna canro'i ke xadba bliku +Sandstone Block Stair=lo canro'i bliku serti +Inner Sandstone Block Stair=lo zo'i canro'i bliku serti +Outer Sandstone Block Stair=lo ze'o canro'i bliku serti +Sandstone Block Slab=lo canro'i bliku ke xadba bliku +Desert Sandstone Stair=lo cantu'a canro'i serti +Inner Desert Sandstone Stair=lo zo'i cantu'a canro'i serti +Outer Desert Sandstone Stair=lo ze'o cantu'a canro'i serti +Desert Sandstone Slab=lo cantu'a canro'i ke xadba bliku +Desert Sandstone Brick Stair=lo morna ke cantu'a canro'i serti +Inner Desert Sandstone Brick Stair=lo zo'i morna ke cantu'a canro'i serti +Outer Desert Sandstone Brick Stair=lo ze'o morna ke cantu'a canro'i serti +Desert Sandstone Brick Slab=lo morna ke cantu'a canro'i ke xadba bliku +Desert Sandstone Block Stair=lo cantu'a canro'i bliku serti +Inner Desert Sandstone Block Stair=lo zo'i cantu'a canro'i bliku serti +Outer Desert Sandstone Block Stair=lo ze'o cantu'a canro'i bliku serti +Desert Sandstone Block Slab=lo cantu'a canro'i ke xadba bliku +Silver Sandstone Stair=lo rijyska canro'i serti +Inner Silver Sandstone Stair=lo zo'i rijyska canro'i serti +Outer Silver Sandstone Stair=lo ze'o rijyska canro'i serti +Silver Sandstone Slab=lo rijyska canro'i ke xadba bliku +Silver Sandstone Brick Stair=lo morna ke rijyska canro'i serti +Inner Silver Sandstone Brick Stair=lo zo'i morna ke rijyska canro'i serti +Outer Silver Sandstone Brick Stair=lo ze'o morna ke rijyska canro'i serti +Silver Sandstone Brick Slab=lo morna ke rijyska canro'i ke xadba bliku +Silver Sandstone Block Stair=lo rijyska canro'i bliku serti +Inner Silver Sandstone Block Stair=lo zo'i rijyska canro'i bliku serti +Outer Silver Sandstone Block Stair=lo ze'o rijyska canro'i bliku serti +Silver Sandstone Block Slab=lo rijyska canro'i bliku ke xadba bliku +Obsidian Stair=lo je'erma'ablaci serti +Inner Obsidian Stair=lo zo'i je'erma'ablaci serti +Outer Obsidian Stair=lo ze'o je'erma'ablaci serti +Obsidian Slab=lo je'erma'ablaci ke xadba bliku +Obsidian Brick Stair=lo morna ke je'erma'ablaci serti +Inner Obsidian Brick Stair=lo zo'i morna ke je'erma'ablaci serti +Outer Obsidian Brick Stair=lo ze'o morna ke je'erma'ablaci serti +Obsidian Brick Slab=lo morna je'erma'ablaci ke xadba bliku +Obsidian Block Stair=lo je'erma'ablaci bliku serti +Inner Obsidian Block Stair=lo zo'i je'erma'ablaci bliku serti +Outer Obsidian Block Stair=lo ze'o je'erma'ablaci bliku serti +Obsidian Block Slab=lo je'erma'ablaci bliku ke xadba bliku +Brick Stair=lo kitybli serti +Inner Brick Stair=lo zo'i kitybli serti +Outer Brick Stair=lo ze'o kitybli serti +Brick Slab=lo kitybli xadba bliku +Steel Block Stair=lo gasta bliku serti +Inner Steel Block Stair=lo zo'i gasta bliku serti +Outer Steel Block Stair=lo ze'o gasta bliku serti +Steel Block Slab=lo gasta bliku ke xadba bliku +Tin Block Stair=lo tinci bliku serti +Inner Tin Block Stair=lo zo'i tinci bliku serti +Outer Tin Block Stair=lo ze'o tinci bliku serti +Tin Block Slab=lo tinci bliku ke xadba bliku +Copper Block Stair=lo tunka bliku serti +Inner Copper Block Stair=lo zo'i tunka bliku serti +Outer Copper Block Stair=lo ze'o tunka bliku serti +Copper Block Slab=lo tunka xadba bliku +Bronze Block Stair=lo ransu bliku serti +Inner Bronze Block Stair=lo zo'i ransu bliku serti +Outer Bronze Block Stair=lo ze'o ransu bliku serti +Bronze Block Slab=lo ransu xadba bliku +Gold Block Stair=lo solji bliku serti +Inner Gold Block Stair=lo zo'i solji bliku serti +Outer Gold Block Stair=lo ze'o solji bliku serti +Gold Block Slab=lo solji bliku ke xadba bliku +Ice Stair=lo bisli serti +Inner Ice Stair=lo zo'i bisli serti +Outer Ice Stair=lo ze'o bisli serti +Ice Slab=lo bisli ke xadba bliku +Snow Block Stair=lo snime bliku serti +Inner Snow Block Stair=lo zo'i snime bliku serti +Outer Snow Block Stair=lo ze'o snime bliku serti +Snow Block Slab=lo snime bliku ke xadba bliku diff --git a/mods/stairs/locale/stairs.lv.tr b/mods/stairs/locale/stairs.lv.tr new file mode 100644 index 0000000..646040b --- /dev/null +++ b/mods/stairs/locale/stairs.lv.tr @@ -0,0 +1,145 @@ +# textdomain: stairs +Glass Stair=Stikla pakāpiens +Glass Slab=Stikla plātne +Inner Glass Stair=Iekšējs stikla pakāpiens +Outer Glass Stair=Ārējs stikla pakāpiens +Obsidian Glass Stair=Obsidiāna stikla pakāpiens +Obsidian Glass Slab=Obsidiāna stikla plātne +Inner Obsidian Glass Stair=Iekšējs obsidiāna stikla pakāpiens +Outer Obsidian Glass Stair=Ārējs obsidiāna stikla pakāpiens +Wooden Stair=Koka pakāpiens +Inner Wooden Stair=Iekšējs koka pakāpiens +Outer Wooden Stair=Ārējs koka pakāpiens +Wooden Slab=Koka plātne +Jungle Wood Stair=Džungļu koka pakāpiens +Inner Jungle Wood Stair=Iekšējs džungļu koka pakāpiens +Outer Jungle Wood Stair=Ārējs džungļu koka pakāpiens +Jungle Wood Slab=Džungļu koka plātne +Pine Wood Stair=Skujkoka koka pakāpiens +Inner Pine Wood Stair=Iekšējs skujkoka koka pakāpiens +Outer Pine Wood Stair= Arējs skujkoka koka pakāpiens +Pine Wood Slab=Skujkoka koka plātne +Acacia Wood Stair=Akācijas koka pakāpiens +Inner Acacia Wood Stair=Iekšējs akācijas koka pakāpiens +Outer Acacia Wood Stair=Ārējs akācijas koka pakāpiens +Acacia Wood Slab=Akācijas koka plātne +Aspen Wood Stair=Apses koka pakāpiens +Inner Aspen Wood Stair=Iekšējs apses koka pakāpiens +Outer Aspen Wood Stair=Ārējs apses koka pakāpiens +Aspen Wood Slab=Apses koka plātne +Stone Stair=Akmens pakāpiens +Inner Stone Stair=Iekšējs akmens pakāpiens +Outer Stone Stair=Ārējs akmens pakāpiens +Stone Slab=Akmens plātne +Cobblestone Stair=Mūrakmens pakāpiens +Inner Cobblestone Stair=Iekšējs mūrakmens pakāpiens +Outer Cobblestone Stair=Ārējs mūrakmens pakāpiens +Cobblestone Slab=Mūrakmens plātne +Mossy Cobblestone Stair=Apsūnējuša mūrakmens pakāpiens +Inner Mossy Cobblestone Stair=Apsūnējuša mūrakmens iekšējs pakāpiens +Outer Mossy Cobblestone Stair=Apsūnējuša mūrakmens ārējs pakāpiens +Mossy Cobblestone Slab=Apsūnējuša mūrakmens plātne +Stone Brick Stair=Akmens ķieģeļu pakāpiens +Inner Stone Brick Stair=Iekšējs akmens ķieģeļu pakāpiens +Outer Stone Brick Stair=Ārējs akmens ķieģeļu pakāpiens +Stone Brick Slab=Akmens ķieģeļu plātne +Stone Block Stair=Akmens bloka pakāpiens +Inner Stone Block Stair=Iekšējs akmens bloka pakāpiens +Outer Stone Block Stair=Ārējs akmens bloka pakāpiens +Stone Block Slab=Akmens bloka plātne +Desert Stone Stair=Tuksneša akmens pakāpiens +Inner Desert Stone Stair=Iekšējs tuksneša akmens pakāpiens +Outer Desert Stone Stair=Ārējs tuksneša akmens pakāpiens +Desert Stone Slab=Tuksneša akmens plātne +Desert Cobblestone Stair=Tuksneša mūrakmens pakāpiens +Inner Desert Cobblestone Stair=Iekšējs tuksneša mūrakmens pakāpiens +Outer Desert Cobblestone Stair=Ārējs tuksneša mūrakmens pakāpiens +Desert Cobblestone Slab=Tuksneša mūrakmens plātne +Desert Stone Brick Stair=Tuksneša akmens ķieģeļu pakāpiens +Inner Desert Stone Brick Stair=Iekšējs tuksneša akmens ķieģeļu pakāpiens +Outer Desert Stone Brick Stair=Ārējs tuksneša ķieģeļu pakāpiens +Desert Stone Brick Slab=Tuksneša ķieģeļu plātne +Desert Stone Block Stair=Tuksneša akmens bloka pakāpiens +Inner Desert Stone Block Stair=Iekšējs tuksneša akmens bloka pakāpiens +Outer Desert Stone Block Stair=Ārējs tuksneša akmens bloka pakāpiens +Desert Stone Block Slab=Tuksneša akmens bloka plātne +Sandstone Stair=Smilšakmens pakāpiens +Inner Sandstone Stair=Iekšējs smilšakmens pakāpiens +Outer Sandstone Stair=Ārējs smilšakmens pakāpiens +Sandstone Slab=Smilšakmens plātne +Sandstone Brick Stair=Smilšakmens ķieģeļu pakāpiens +Inner Sandstone Brick Stair=Iekšējs smilšakmens ķieģeļu pakāpiens +Outer Sandstone Brick Stair=Ārējs smilšakmens ķieģeļu pakāpiens +Sandstone Brick Slab=Smilšakmens ķieģeļu plātne +Sandstone Block Stair=Smilšakmens bloka pakāpiens +Inner Sandstone Block Stair=Iekšējs smilšakmens bloka pakāpiens +Outer Sandstone Block Stair=Ārējs smilšakmens bloka pakāpiens +Sandstone Block Slab=Smilšakmens bloka plātne +Desert Sandstone Stair=Tuksneša smilšakmens pakāpiens +Inner Desert Sandstone Stair=Iekšējs tuksneša smilšakmens pakāpiens +Outer Desert Sandstone Stair=Ārējs tuksneša smilšakmens pakāpiens +Desert Sandstone Slab=Tuksneša smilšakmens plātne +Desert Sandstone Brick Stair=Tuksneša smilšakmens ķieģeļu pakāpiens +Inner Desert Sandstone Brick Stair=Iekšējs tuksneša smilšakmens ķieģeļu pakāpiens +Outer Desert Sandstone Brick Stair=Ārējs tuksneša smilšakmens ķieģeļu pakāpiens +Desert Sandstone Brick Slab=Tuksneša smilšakmens ķieģeļu plātne +Desert Sandstone Block Stair=Tuksneša smilšakmens bloka pakāpiens +Inner Desert Sandstone Block Stair=Iekšējs tuksneša smilšakmens bloka pakāpiens +Outer Desert Sandstone Block Stair=Ārējs tuksneša smilšakmens bloka pakāpiens +Desert Sandstone Block Slab=Tuksneša smilšakmens bloka plātne +Silver Sandstone Stair=Baltā smilšakmens pakāpiens +Inner Silver Sandstone Stair=Iekšējs baltā smilšakmens pakāpiens +Outer Silver Sandstone Stair=Ārējs baltā smilšakmens pakāpiens +Silver Sandstone Slab=Baltā smilšakmens plātne +Silver Sandstone Brick Stair=Baltā smilšakmens ķieģeļu pakāpiens +Inner Silver Sandstone Brick Stair=Iekšējs baltā smilšakmens ķieģeļu pakāpiens +Outer Silver Sandstone Brick Stair=Ārējs baltā smilšakmens ķieģeļu pakāpiens +Silver Sandstone Brick Slab=Baltā smilšakmens ķieģeļu plātne +Silver Sandstone Block Stair=Baltā smilšakmens bloka pakāpiens +Inner Silver Sandstone Block Stair=Iekšējs baltā smilšakmens bloka pakāpiens +Outer Silver Sandstone Block Stair=Ārējs baltā smilšakmens bloka pakāpiens +Silver Sandstone Block Slab=Baltā smilšakmens bloka plātne +Obsidian Stair=Obsidiāna pakāpiens +Inner Obsidian Stair=Iekšējs obsidiāna pakāpiens +Outer Obsidian Stair=Ārējs obsidiāna pakāpiens +Obsidian Slab=Obsidiāna plātne +Obsidian Brick Stair=Obsidiāna ķieģeļu pakāpiens +Inner Obsidian Brick Stair=Iekšējs obsidiāna ķieģeļu pakāpiens +Outer Obsidian Brick Stair=Ārējs obsidiāna ķieģeļu pakāpiens +Obsidian Brick Slab=Obsidiāna ķieģeļu plātne +Obsidian Block Stair=Obsidiāna bloka pakāpiens +Inner Obsidian Block Stair=Iekšējs obsidiāna bloka pakāpiens +Outer Obsidian Block Stair=Ārejs obsidiāna bloka pakāpiens +Obsidian Block Slab=Obsidiāna bloka plātne +Brick Stair=Ķieģeļu pakāpiens +Inner Brick Stair=Iekšējs ķieģeļu pakāpiens +Outer Brick Stair=Ārējs ķieģeļu pakāpiens +Brick Slab=Ķieģeļu plātne +Steel Block Stair=Tērauda pakāpiens +Inner Steel Block Stair=Iekšējs tērauda pakāpiens +Outer Steel Block Stair=Ārējs tērauda pakāpiens +Steel Block Slab=Tērauda plātne +Tin Block Stair=Alvas pakāpiens +Inner Tin Block Stair=Iekšējs alvas pakāpiens +Outer Tin Block Stair=Ārējs alvas pakāpiens +Tin Block Slab=Alvas plātne +Copper Block Stair=Vara pakāpiens +Inner Copper Block Stair=Iekšējs vara pakāpiens +Outer Copper Block Stair=Ārējs vara pakāpiens +Copper Block Slab=Vara plātne +Bronze Block Stair=Bronzas pakāpiens +Inner Bronze Block Stair=Iekšējs bronza pakāpiens +Outer Bronze Block Stair=Ārējs bronzas pakāpiens +Bronze Block Slab=Bronzas plātne +Gold Block Stair=Zelta pakāpiens +Inner Gold Block Stair=Iekšējs zelta pakāpiens +Outer Gold Block Stair=Ārējs zelta pakāpiens +Gold Block Slab=Zelta plātne +Ice Stair=Ledus pakāpiens +Inner Ice Stair=Iekšējs ledus pakāpiens +Outer Ice Stair=Ārējs ledus pakāpiens +Ice Slab=Ledus plātne +Snow Block Stair=Sniega pakāpiens +Inner Snow Block Stair=Iekšējs sniega pakāpiens +Outer Snow Block Stair=Ārējs sniega pakāpiens +Snow Block Slab=Sniega plātne diff --git a/mods/stairs/locale/stairs.ms.tr b/mods/stairs/locale/stairs.ms.tr new file mode 100644 index 0000000..a39c7f6 --- /dev/null +++ b/mods/stairs/locale/stairs.ms.tr @@ -0,0 +1,145 @@ +# textdomain: stairs +Glass Stair=Tangga Kaca +Glass Slab=Papak Kaca +Inner Glass Stair=Tangga Kaca Dalaman +Outer Glass Stair=Tangga Kaca Luaran +Obsidian Glass Stair=Tangga Obsidia +Obsidian Glass Slab=Papak Obsidia +Inner Obsidian Glass Stair=Tangga Obsidia Dalaman +Outer Obsidian Glass Stair=Tangga Obsidia Luaran +Wooden Stair=Tangga Kayu +Inner Wooden Stair=Tangga Kayu Dalaman +Outer Wooden Stair=Tangga Kayu Luaran +Wooden Slab=Papak Kayu +Jungle Wood Stair=Tangga Kayu Hutan +Inner Jungle Wood Stair=Tangga Kayu Hutan Dalaman +Outer Jungle Wood Stair=Tangga Kayu Hutan Luaran +Jungle Wood Slab=Papak Kayu Hutan +Pine Wood Stair=Tangga Kayu Pain +Inner Pine Wood Stair=Tangga Kayu Pain Dalaman +Outer Pine Wood Stair=Tangga Kayu Pain Luaran +Pine Wood Slab=Papak Kayu Pain +Acacia Wood Stair=Tangga Kayu Akasia +Inner Acacia Wood Stair=Tangga Kayu Akasia Dalaman +Outer Acacia Wood Stair=Tangga Kayu Akasia Luaran +Acacia Wood Slab=Papak Kayu Akasia +Aspen Wood Stair=Tangga Kayu Aspen +Inner Aspen Wood Stair=Tangga Kayu Aspen Dalaman +Outer Aspen Wood Stair=Tangga Kayu Aspen Luaran +Aspen Wood Slab=Papak Kayu Aspen +Stone Stair=Tangga Batu +Inner Stone Stair=Tangga Batu Dalaman +Outer Stone Stair=Tangga Batu Luaran +Stone Slab=Papak Batu +Cobblestone Stair=Tangga Batu Buntar +Inner Cobblestone Stair=Tangga Batu Buntar Dalaman +Outer Cobblestone Stair=Tangga Batu Buntar Luaran +Cobblestone Slab=Papak Batu Buntar +Mossy Cobblestone Stair=Tangga Batu Buntar Berlumut +Inner Mossy Cobblestone Stair=Tangga Batu Buntar Berlumut Dalaman +Outer Mossy Cobblestone Stair=Tangga Batu Buntar Berlumut Luaran +Mossy Cobblestone Slab=Papak Batu Buntar Berlumut +Stone Brick Stair=Tangga Bata Batu +Inner Stone Brick Stair=Tangga Bata Batu Dalaman +Outer Stone Brick Stair=Tangga Bata Batu Luaran +Stone Brick Slab=Papak Bata Batu +Stone Block Stair=Tangga Bongkah Batu +Inner Stone Block Stair=Tangga Bongkah Batu Dalaman +Outer Stone Block Stair=Tangga Bongkah Batu Luaran +Stone Block Slab=Papak Bongkah Batu +Desert Stone Stair=Tangga Batu Gurun +Inner Desert Stone Stair=Tangga Batu Gurun Dalaman +Outer Desert Stone Stair=Tangga Batu Gurun Luaran +Desert Stone Slab=Papak Batu Gurun +Desert Cobblestone Stair=Tangga Batu Buntar Gurun +Inner Desert Cobblestone Stair=Tangga Batu Buntar Gurun Dalaman +Outer Desert Cobblestone Stair=Tangga Batu Buntar Gurun Luaran +Desert Cobblestone Slab=Papak Batu Buntar Gurun +Desert Stone Brick Stair=Tangga Bata Batu Gurun +Inner Desert Stone Brick Stair=Tangga Bata Batu Gurun Dalaman +Outer Desert Stone Brick Stair=Tangga Bata Batu Gurun Luaran +Desert Stone Brick Slab=Papak Bata Batu Gurun +Desert Stone Block Stair=Tangga Bongkah Batu Gurun +Inner Desert Stone Block Stair=Tangga Bongkah Batu Gurun Dalaman +Outer Desert Stone Block Stair=Tangga Bongkah Batu Gurun Luaran +Desert Stone Block Slab=Papak Bongkah Batu Gurun +Sandstone Stair=Tangga Batu Pasir +Inner Sandstone Stair=Tangga Batu Pasir Dalaman +Outer Sandstone Stair=Tangga Batu Pasir Luaran +Sandstone Slab=Papak Batu Pasir +Sandstone Brick Stair=Tangga Bata Batu Pasir +Inner Sandstone Brick Stair=Tangga Bata Batu Pasir Dalaman +Outer Sandstone Brick Stair=Tangga Bata Batu Pasir Luaran +Sandstone Brick Slab=Papak Bata Batu Pasir +Sandstone Block Stair=Tangga Bongkah Batu Pasir +Inner Sandstone Block Stair=Tangga Bongkah Batu Pasir Dalaman +Outer Sandstone Block Stair=Tangga Bongkah Batu Pasir Luaran +Sandstone Block Slab=Papak Bongkah Batu Pasir +Desert Sandstone Stair=Tangga Batu Pasir Gurun +Inner Desert Sandstone Stair=Tangga Batu Pasir Gurun Dalaman +Outer Desert Sandstone Stair=Tangga Batu Pasir Gurun Luaran +Desert Sandstone Slab=Papak Batu Pasir Gurun +Desert Sandstone Brick Stair=Tangga Bata Batu Pasir Gurun +Inner Desert Sandstone Brick Stair=Tangga Bata Batu Pasir Gurun Dalaman +Outer Desert Sandstone Brick Stair=Tangga Bata Batu Pasir Gurun Luaran +Desert Sandstone Brick Slab=Papak Bata Batu Pasir Gurun +Desert Sandstone Block Stair=Tangga Bongkah Batu Pasir Gurun +Inner Desert Sandstone Block Stair=Tangga Bongkah Batu Pasir Gurun Dalaman +Outer Desert Sandstone Block Stair=Tangga Bongkah Batu Pasir Gurun Luaran +Desert Sandstone Block Slab=Papak Bongkah Batu Pasir Gurun +Silver Sandstone Stair=Tangga Batu Pasir Perak +Inner Silver Sandstone Stair=Tangga Batu Pasir Perak Dalaman +Outer Silver Sandstone Stair=Tangga Batu Pasir Perak Luaran +Silver Sandstone Slab=Papak Batu Pasir Perak +Silver Sandstone Brick Stair=Tangga Bata Batu Pasir Perak +Inner Silver Sandstone Brick Stair=Tangga Bata Batu Pasir Perak Dalaman +Outer Silver Sandstone Brick Stair=Tangga Bata Batu Pasir Perak Luaran +Silver Sandstone Brick Slab=Papak Bata Batu Pasir Perak +Silver Sandstone Block Stair=Tangga Bongkah Batu Pasir Perak +Inner Silver Sandstone Block Stair=Tangga Bongkah Batu Pasir Perak Dalaman +Outer Silver Sandstone Block Stair=Tangga Bongkah Batu Pasir Perak Luaran +Silver Sandstone Block Slab=Papak Bongkah Batu Pasir Perak +Obsidian Stair=Tangga Obsidia +Inner Obsidian Stair=Tangga Obsidia Dalaman +Outer Obsidian Stair=Tangga Obsidia Luaran +Obsidian Slab=Papak Obsidia +Obsidian Brick Stair=Tangga Bata Obsidia +Inner Obsidian Brick Stair=Tangga Bata Obsidia Dalaman +Outer Obsidian Brick Stair=Tangga Bata Obsidia Luaran +Obsidian Brick Slab=Papak Bata Obsidia +Obsidian Block Stair=Tangga Bongkah Obsidia +Inner Obsidian Block Stair=Tangga Bongkah Obsidia Dalaman +Outer Obsidian Block Stair=Tangga Bongkah Obsidia Luaran +Obsidian Block Slab=Papak Bongkah Obsidia +Brick Stair=Tangga Bata +Inner Brick Stair=Tangga Bata Dalaman +Outer Brick Stair=Tangga Bata Luaran +Brick Slab=Papak Bata +Steel Block Stair=Tangga Bongkah Keluli +Inner Steel Block Stair=Tangga Bongkah Keluli Dalaman +Outer Steel Block Stair=Tangga Bongkah Keluli Luaran +Steel Block Slab=Papak Bongkah Keluli +Tin Block Stair=Tangga Bongkah Timah +Inner Tin Block Stair=Tangga Bongkah Timah Dalaman +Outer Tin Block Stair=Tangga Bongkah Timah Luaran +Tin Block Slab=Papak Bongkah Timah +Copper Block Stair=Tangga Bongkah Tembaga +Inner Copper Block Stair=Tangga Bongkah Tembaga Dalaman +Outer Copper Block Stair=Tangga Bongkah Tembaga Luaran +Copper Block Slab=Papak Bongkah Tembaga +Bronze Block Stair=Tangga Bongkah Gangsa +Inner Bronze Block Stair=Tangga Bongkah Gangsa Dalaman +Outer Bronze Block Stair=Tangga Bongkah Gangsa Luaran +Bronze Block Slab=Papak Bongkah Gangsa +Gold Block Stair=Tangga Bongkah Emas +Inner Gold Block Stair=Tangga Bongkah Emas Dalaman +Outer Gold Block Stair=Tangga Bongkah Emas Luaran +Gold Block Slab=Papak Bongkah Emas +Ice Stair=Tangga Ais +Inner Ice Stair=Tangga Ais Dalaman +Outer Ice Stair=Tangga Ais Luaran +Ice Slab=Papak Ais +Snow Block Stair=Tangga Bongkah Salji +Inner Snow Block Stair=Tangga Bongkah Salji Dalaman +Outer Snow Block Stair=Tangga Bongkah Salji Luaran +Snow Block Slab=Papak Bongkah Salji diff --git a/mods/stairs/locale/stairs.pl.tr b/mods/stairs/locale/stairs.pl.tr new file mode 100644 index 0000000..14eed7b --- /dev/null +++ b/mods/stairs/locale/stairs.pl.tr @@ -0,0 +1,145 @@ +# textdomain: stairs +Glass Stair=Schody ze szkła +Glass Slab=Półblok ze szkła +Inner Glass Stair=Wewnętrzne schody ze szkła +Outer Glass Stair=Zewnętrzne schody ze szkła +Obsidian Glass Stair=Schody z obsydianowego szkła +Obsidian Glass Slab=Półblok z obsydianowego szkła +Inner Obsidian Glass Stair=Wewnętrzne schody z obsydianowego szkła +Outer Obsidian Glass Stair=Zewnętrzne schody z obsydianowego szkła +Wooden Stair=Schody z drewna +Inner Wooden Stair=Wewnętrzne schody z drewna +Outer Wooden Stair=Zewnętrzne schody z drewna +Wooden Slab=Półblok z drewna +Jungle Wood Stair=Schody z dżunglowego drewna +Inner Jungle Wood Stair=Wewnętrzne schody z dżunglowego drewna +Outer Jungle Wood Stair=Zewnętrzne schody z dżunglowego drewna +Jungle Wood Slab=Półblok z dżunglowego drewna +Pine Wood Stair=Schody z sosnowego drzewa +Inner Pine Wood Stair=Wewnętrzne schody z sosnowego drewna +Outer Pine Wood Stair=Zewnętrzne schody z sosnowego drewna +Pine Wood Slab=Półblok z sosnowego drewna +Acacia Wood Stair=Schody z akacjowego drewna +Inner Acacia Wood Stair=Wewnętrzne schody z akacjowego drewna +Outer Acacia Wood Stair=Zewnętrzne schody z akacjowego drewna +Acacia Wood Slab=Półblok z akacjowego drewna +Aspen Wood Stair=Schody z brzozowego drewna +Inner Aspen Wood Stair=Wewnętrzne schody z brzozowego drewna +Outer Aspen Wood Stair=Zewnętrzne schody z brzozowego drewna +Aspen Wood Slab=Półblok z brzozowego drewna +Stone Stair=Schody z kamienia +Inner Stone Stair=Wewnętrzne schody z kamienia +Outer Stone Stair=Zewnętrzne schody z kamienia +Stone Slab=Półblok z kamienia +Cobblestone Stair=Schody z bruku +Inner Cobblestone Stair=Wewnętrzne schody z bruku +Outer Cobblestone Stair=Zewnętrzne schody z bruku +Cobblestone Slab=Półblok z bruku +Mossy Cobblestone Stair=Schody z bruku z mchem +Inner Mossy Cobblestone Stair=Wewnętrzne schody z bruku z mchem +Outer Mossy Cobblestone Stair=Zewnętrzne schody z bruku z mchem +Mossy Cobblestone Slab=Półblok z bruku z mchem +Stone Brick Stair=Schody z kamiennych cegieł +Inner Stone Brick Stair=Wewnętrzne schody z kamiennych cegieł +Outer Stone Brick Stair=Zewnętrzne schody z kamiennych cegieł +Stone Brick Slab=Półblok z kamiennych cegieł +Stone Block Stair=Schody z kamiennego bloku +Inner Stone Block Stair=Wewnętrzne schody z kamiennego bloku +Outer Stone Block Stair=Zewnętrzne schody z kamiennego bloku +Stone Block Slab=Półblok z kamiennego bloku +Desert Stone Stair=Schody z pustynnego kamienia +Inner Desert Stone Stair=Wewnętrzne schody z pustynnego kamienia +Outer Desert Stone Stair=Zewnętrzne schody z pustynnego kamienia +Desert Stone Slab=Półblok z pustynnego kamienia +Desert Cobblestone Stair=Schody z pustynnego bruku +Inner Desert Cobblestone Stair=Wewnętrzne schody z pustynnego bruku +Outer Desert Cobblestone Stair=Zewnętrzne schody z pustynnego bruku +Desert Cobblestone Slab=Półblok z pustynnego bruku +Desert Stone Brick Stair=Schody z pustynnych kamiennych cegieł +Inner Desert Stone Brick Stair=Wewnętrzne schody z pustynnych kamiennych cegieł +Outer Desert Stone Brick Stair=Zewnętrzne schody z pustynnych kamiennych cegieł +Desert Stone Brick Slab=Półblok z pustynnych kamiennych cegieł +Desert Stone Block Stair=Schody z pustynnego kamiennego bloku +Inner Desert Stone Block Stair=Wewnętrzne schody z pustynnego kamiennego bloku +Outer Desert Stone Block Stair=Zewnętrzne schody z pustynnego kamiennego bloku +Desert Stone Block Slab=Półblok z pustynnego kamiennego bloku +Sandstone Stair=Schody z piaskowca +Inner Sandstone Stair=Wewnętrzne schody z piaskowca +Outer Sandstone Stair=Zewnętrzne schody z piaskowca +Sandstone Slab=Półblok z piaskowca +Sandstone Brick Stair=Schody z piaskowcowych cegieł +Inner Sandstone Brick Stair=Wewnętrzne schody z piaskowcowych cegieł +Outer Sandstone Brick Stair=Zewnętrzne schody z piaskowcowych cegieł +Sandstone Brick Slab=Półblok z piaskowcowych cegieł +Sandstone Block Stair=Schody z piaskowcowego bloku +Inner Sandstone Block Stair=Wewnętrzne schody z piaskowcowego bloku +Outer Sandstone Block Stair=Zewnętrzne schody z piaskowcowego bloku +Sandstone Block Slab=Półblok z piaskowcowego bloku +Desert Sandstone Stair=Schody z pustynnego piaskowca +Inner Desert Sandstone Stair=Wewnętrzne schody z pustynnego piaskowca +Outer Desert Sandstone Stair=Zewnętrzne schody z pustynnego piaskowca +Desert Sandstone Slab=Półblok z pustynnego piaskowca +Desert Sandstone Brick Stair=Schody z pustynnych piaskowcowych cegieł +Inner Desert Sandstone Brick Stair=Wewnętrzne schody z pustynnych piaskowcowych cegieł +Outer Desert Sandstone Brick Stair=Zewnętrzne schody z pustynnych piaskowcowych cegieł +Desert Sandstone Brick Slab=Półblok z pustynnych piaskowcowych cegieł +Desert Sandstone Block Stair=Schody z pustynnego piaskowcowego bloku +Inner Desert Sandstone Block Stair=Wewnętrzne schody z pustynnego piaskowcowego bloku +Outer Desert Sandstone Block Stair=Zewnętrzne schody z pustynnego piaskowcowego bloku +Desert Sandstone Block Slab=Półblok z pustynnego piaskowcowego bloku +Silver Sandstone Stair=Schody z srebrnego piaskowca +Inner Silver Sandstone Stair=Wewnętrzne schody z srebrnego piaskowca +Outer Silver Sandstone Stair=Zewnętrzne schody z srebrnego piaskowca +Silver Sandstone Slab=Półblok z srebrnego piaskowca +Silver Sandstone Brick Stair=Schody z srebrnych piaskowcowych cegieł +Inner Silver Sandstone Brick Stair=Wewnętrzne schody z srebrnych piaskowcowych cegieł +Outer Silver Sandstone Brick Stair=Zewnętrzne schody z srebrnych piaskowcowych cegieł +Silver Sandstone Brick Slab=Półblok z srebrnych piaskowcowych cegieł +Silver Sandstone Block Stair=Schody z srebrnego piaskowcowego bloku +Inner Silver Sandstone Block Stair=Wewnętrzne schody z srebrnego piaskowcowego bloku +Outer Silver Sandstone Block Stair=Zewnętrzne schody z srebrnego piaskowcowego bloku +Silver Sandstone Block Slab=Półblok z srebrnego piaskowcowego bloku +Obsidian Stair=Schody z obsydianu +Inner Obsidian Stair=Wewnętrzne schody z obsydianu +Outer Obsidian Stair=Zewnętrzne schody z obsydianu +Obsidian Slab=Półblok z obsydianu +Obsidian Brick Stair=Schody z obsydianowych cegieł +Inner Obsidian Brick Stair=Wewnętrzne schody z obsydianowych cegieł +Outer Obsidian Brick Stair=Zewnętrzne schody z obsydianowych cegieł +Obsidian Brick Slab=Półblok z obsydianowych cegieł +Obsidian Block Stair=Schody z obsydianowego bloku +Inner Obsidian Block Stair=Wewnętrzne schody z obsydianowego bloku +Outer Obsidian Block Stair=Zewnętrzne schody z obsydianowego bloku +Obsidian Block Slab=Półblok z obsydianowego bloku +Brick Stair=Schody z cegieł +Inner Brick Stair=Wewnętrzne schody z cegieł +Outer Brick Stair=Zewnętrzne schody z cegieł +Brick Slab=Półblok z cegieł +Steel Block Stair=Schody z bloku stali +Inner Steel Block Stair=Wewnętrzne schody z bloku stali +Outer Steel Block Stair=Zewnętrzne schody z bloku stali +Steel Block Slab=Półblok z bloku stali +Tin Block Stair=Schody z bloku cyny +Inner Tin Block Stair=Wewnętrzne schody z bloku cyny +Outer Tin Block Stair=Zewnętrzne schody z bloku cyny +Tin Block Slab=Półblok z bloku cyny +Copper Block Stair=Schody z bloku miedzi +Inner Copper Block Stair=Wewnętrzne schody z bloku miedzi +Outer Copper Block Stair=Zewnętrzne schody z bloku miedzi +Copper Block Slab=Półblok z bloku miedzi +Bronze Block Stair=Schody z bloku brązu +Inner Bronze Block Stair=Wewnętrnze schody z bloku brązu +Outer Bronze Block Stair=Zewnętrzne schody z bloku brązu +Bronze Block Slab=Półblok z bloku brązu +Gold Block Stair=Schody z bloku złota +Inner Gold Block Stair=Wewnętrzne schody z block złota +Outer Gold Block Stair=Zewnętrzne schody z bloku złota +Gold Block Slab=Półblok z bloku złota +Ice Stair=Schody z lodu +Inner Ice Stair=Wewnętrzne schody z lodu +Outer Ice Stair=Zewnętrzne schody z lodu +Ice Slab=Półblok z lodu +Snow Block Stair=Schody ze śniegu +Inner Snow Block Stair=Wewnętrzne schody ze śniegu +Outer Snow Block Stair=Zewnętrzne schody ze śniegu +Snow Block Slab=Półblok ze śniegu diff --git a/mods/stairs/locale/stairs.pt_BR.tr b/mods/stairs/locale/stairs.pt_BR.tr new file mode 100644 index 0000000..41777a8 --- /dev/null +++ b/mods/stairs/locale/stairs.pt_BR.tr @@ -0,0 +1,145 @@ +# textdomain: stairs +Glass Stair=Escada de vidro +Glass Slab=Placa de vidro +Inner Glass Stair=Escada interior de vidro +Outer Glass Stair=Escada exterior de vidro +Obsidian Glass Stair=Escada de vidro de obsidiana +Obsidian Glass Slab=Placa de vidro de obsidiana +Inner Obsidian Glass Stair=Escada interior de vidro de obsidiana +Outer Obsidian Glass Stair=Escada exterior de vidro de obsidiana +Wooden Stair=Escada de madeira +Inner Wooden Stair=Escada interior de madeira +Outer Wooden Stair=Escada exterior de madeira +Wooden Slab=Laje de madeira +Jungle Wood Stair=Escada de madeira da selva +Inner Jungle Wood Stair=Escada interior de madeira da selva +Outer Jungle Wood Stair=Escada exterior de madeira da selva +Jungle Wood Slab=Laje de madeira da selva +Pine Wood Stair=Escada de madeira de pinho +Inner Pine Wood Stair=Escada interior de madeira de pinho +Outer Pine Wood Stair=Escada exterior de madeira de pinho +Pine Wood Slab=Laje de madeira de pinho +Acacia Wood Stair=Escada de madeira de acácia +Inner Acacia Wood Stair=Escada interior de madeira de acácia +Outer Acacia Wood Stair=Escada exterior de madeira de acácia +Acacia Wood Slab=Placa de madeira de acácia +Aspen Wood Stair=Escada de Álamo +Inner Aspen Wood Stair=Escada interior de Álamo +Outer Aspen Wood Stair=Escada exterior de Álamo +Aspen Wood Slab=Laje de Álamo +Stone Stair=Escada de Pedra +Inner Stone Stair=Escada interior de Pedra +Outer Stone Stair=Escada exterior de Pedra +Stone Slab=Laje de pedra +Cobblestone Stair=Escada de paralelepípedo +Inner Cobblestone Stair=Escada interior de paralelepípedo +Outer Cobblestone Stair=Escada exterior de paralelepípedo +Cobblestone Slab=Laje de paralelepípedo +Mossy Cobblestone Stair=Escada de paralelepípedo com musgo +Inner Mossy Cobblestone Stair=Escada interior de paralelepípedo com musgo +Outer Mossy Cobblestone Stair=Escada exterior de paralelepípedo com musgo +Mossy Cobblestone Slab=Laje de paralelepípedo com musgo +Stone Brick Stair=Escada de tijolo de pedra +Inner Stone Brick Stair=Escada interior de tijolo de pedra +Outer Stone Brick Stair=Escada exterior de tijolo de pedra +Stone Brick Slab=Laje de tijolo de pedra +Stone Block Stair=Escada Bloco de Pedra +Inner Stone Block Stair=Escada Interna de Bloco de Pedra +Outer Stone Block Stair=Escada Externa de Bloco de Pedra +Stone Block Slab=Laje de bloco de pedra +Desert Stone Stair=Escada de Pedra do Deserto +Inner Desert Stone Stair=Escada Interior de Pedra do Deserto +Outer Desert Stone Stair=Escada Exterior de Pedra do Deserto +Desert Stone Slab=Laje de pedra do deserto +Desert Cobblestone Stair=Escada de paralelepípedo do deserto +Inner Desert Cobblestone Stair=Escada interior de paralelepípedo do deserto +Outer Desert Cobblestone Stair=Escada exterior de paralelepípedo do deserto +Desert Cobblestone Slab=Laje de paralelepípedo do deserto +Desert Stone Brick Stair=Escada de tijolo de pedra do deserto +Inner Desert Stone Brick Stair=Escada interior de tijolos de pedra do deserto +Outer Desert Stone Brick Stair=Escada exterior de tijolos de pedra do deserto +Desert Stone Brick Slab=Laje de tijolo de pedra do deserto +Desert Stone Block Stair=Escada de Bloco de Pedra do Deserto +Inner Desert Stone Block Stair=Escada interior de bloco de pedra do deserto +Outer Desert Stone Block Stair=Escada exterior de Bloco de Pedra do Deserto +Desert Stone Block Slab=Laje do bloco de pedra do deserto +Sandstone Stair=Escada de arenito +Inner Sandstone Stair=Escada interior de arenito +Outer Sandstone Stair=Escada Exterior de Arenito +Sandstone Slab=Laje de arenito +Sandstone Brick Stair=Escada de tijolo de arenito +Inner Sandstone Brick Stair=Escada interior de tijolos de arenito +Outer Sandstone Brick Stair=Escada Exterior de Tijolo de Arenito +Sandstone Brick Slab=Laje de tijolo de arenito +Sandstone Block Stair=Escada do Bloco de Arenito +Inner Sandstone Block Stair=Escada interior de bloco de arenito +Outer Sandstone Block Stair=Escada exterior de bloco de arenito +Sandstone Block Slab=Laje de bloco de arenito +Desert Sandstone Stair=Escada de arenito do deserto +Inner Desert Sandstone Stair=Escada interior de arenito do deserto +Outer Desert Sandstone Stair=Escada exterior de arenito do deserto +Desert Sandstone Slab=Laje de arenito do deserto +Desert Sandstone Brick Stair=Escada de tijolos de arenito do deserto +Inner Desert Sandstone Brick Stair=Escada interior de tijolos de arenito do deserto +Outer Desert Sandstone Brick Stair=Escada exterior de tijolos de arenito do deserto +Desert Sandstone Brick Slab=Laje de tijolo de arenito do deserto +Desert Sandstone Block Stair=Escada do bloco de arenito do deserto +Inner Desert Sandstone Block Stair=Escada interior do bloco de arenito do deserto +Outer Desert Sandstone Block Stair=Escada exterior de bloco de arenito do deserto +Desert Sandstone Block Slab=Laje de bloco de arenito do deserto +Silver Sandstone Stair=Escada de arenito prateado +Inner Silver Sandstone Stair=Escada interior de Arenito Prateado +Outer Silver Sandstone Stair=Escada exterior de Arenito Prateado +Silver Sandstone Slab=Laje de arenito prateado +Silver Sandstone Brick Stair=Escada de tijolos de arenito prateado +Inner Silver Sandstone Brick Stair=Escada interior de tijolos de arenito prateado +Outer Silver Sandstone Brick Stair=Escada exterior de tijolos de arenito prateado +Silver Sandstone Brick Slab=Laje de tijolo de arenito prateado +Silver Sandstone Block Stair=Escada de blocos de arenito prateado +Inner Silver Sandstone Block Stair=Escada interior de bloco de arenito prateado +Outer Silver Sandstone Block Stair=Escada exterior de bloco de arenito prateado +Silver Sandstone Block Slab=Laje de bloco de arenito prateado +Obsidian Stair=Escada de Obsidiana +Inner Obsidian Stair=Escada interior de Obsidiana +Outer Obsidian Stair=Escada exterior de Obsidiana +Obsidian Slab=Laje de Obsidiana +Obsidian Brick Stair=Escada de Tijolos de Obsidiana +Inner Obsidian Brick Stair=Escada interna de Tijolos de Obsidiana +Outer Obsidian Brick Stair=Escada externa de Tijolos de Obsidiana +Obsidian Brick Slab=Laje de tijolos de obsidiana +Obsidian Block Stair=Escada de Bloco de Obsidiana +Inner Obsidian Block Stair=Escada interior de Bloco de obsidiana +Outer Obsidian Block Stair=Escada exterior de Bloco de obsidiana +Obsidian Block Slab=Laje de bloco de obsidiana +Brick Stair=Escada de Tijolos +Inner Brick Stair=Escada interior de Tijolos +Outer Brick Stair=Escada exterior de Tijolos +Brick Slab=Laje de tijolos +Steel Block Stair=Escada de bloco de aço +Inner Steel Block Stair=Escada interior de bloco de aço +Outer Steel Block Stair=Escada exterior de bloco de aço +Steel Block Slab=Laje de bloco de aço +Tin Block Stair=Escada de bloco de estanho +Inner Tin Block Stair=Escada interior de bloco de estanho +Outer Tin Block Stair=Escada exterior de bloco de lata +Tin Block Slab=Laje de bloco de estanho +Copper Block Stair=Escada de bloco de cobre +Inner Copper Block Stair=Escada interior de Bloco de Cobre +Outer Copper Block Stair=Escada exterior do Bloco de Cobre +Copper Block Slab=Laje de bloco de cobre +Bronze Block Stair=Escada Bloco de Bronze +Inner Bronze Block Stair=Escada interior de bloco de bronze +Outer Bronze Block Stair=Escada exterior de Bloco de Bronze +Bronze Block Slab=Laje de bloco de bronze +Gold Block Stair=Escada Bloco de Ouro +Inner Gold Block Stair=Escada interior de Bloco de Ouro +Outer Gold Block Stair=Escada exterior de Bloco de Ouro +Gold Block Slab=Laje de Bloco de Ouro +Ice Stair=Escada de gelo +Inner Ice Stair=Escada de gelo interior +Outer Ice Stair=Escada de gelo exterior +Ice Slab=Laje de gelo +Snow Block Stair=Escada Bloco de Neve +Inner Snow Block Stair=Escada de bloco de neve interior +Outer Snow Block Stair=Escada de bloco de neve exterior +Snow Block Slab=Laje de bloco de neve diff --git a/mods/stairs/locale/stairs.ru.tr b/mods/stairs/locale/stairs.ru.tr new file mode 100644 index 0000000..1296d4a --- /dev/null +++ b/mods/stairs/locale/stairs.ru.tr @@ -0,0 +1,145 @@ +# textdomain: stairs +Glass Stair=Стеклянные ступени +Glass Slab=Стеклянная плита +Inner Glass Stair=Внутренние стеклянные ступени +Outer Glass Stair=Внешние стеклянные ступени +Obsidian Glass Stair=Ступени из обсидианового стекла +Obsidian Glass Slab=Плита из обсидианового стекла +Inner Obsidian Glass Stair=Внутренние ступени из обсидианового стекла +Outer Obsidian Glass Stair=Внешние ступени из обсидианового стекла +Wooden Stair=Деревянные ступени +Inner Wooden Stair=Внутренние деревянные ступени +Outer Wooden Stair=Внешние деревянные ступени +Wooden Slab=Деревянная плита +Jungle Wood Stair=Ступени из тропического дерева +Inner Jungle Wood Stair=Внутренние ступени из тропического дерева +Outer Jungle Wood Stair=Внешние ступени из тропического дерева +Jungle Wood Slab=Плита из тропического дерева +Pine Wood Stair=Сосновые ступени +Inner Pine Wood Stair=Внутренние сосновые ступени +Outer Pine Wood Stair=Внешние сосновые ступени +Pine Wood Slab=Сосновая плита +Acacia Wood Stair=Акациевые ступени +Inner Acacia Wood Stair=Внутренние акациевые ступени +Outer Acacia Wood Stair=Внешние акациевые ступени +Acacia Wood Slab=Акациевая плита +Aspen Wood Stair=Осиновые ступени +Inner Aspen Wood Stair=Внутренние осиновые ступени +Outer Aspen Wood Stair=Внешние осиновые ступени +Aspen Wood Slab=Осиновая плита +Stone Stair=Каменные ступени +Inner Stone Stair=Внутренние каменные ступени +Outer Stone Stair=Внешние каменные ступени +Stone Slab=Каменная плита +Cobblestone Stair=Булыжниковые ступени +Inner Cobblestone Stair=Внутренние булыжниковые ступени +Outer Cobblestone Stair=Внешние булыжниковые ступени +Cobblestone Slab=Булыжниковая плита +Mossy Cobblestone Stair=Ступени из замшелого булыжника +Inner Mossy Cobblestone Stair=Внутренние ступени из замшелого булыжника +Outer Mossy Cobblestone Stair=Внешние ступени из замшелого булыжника +Mossy Cobblestone Slab=Плита из замшелого булыжника +Stone Brick Stair=Cтупени из каменных кирпичей +Inner Stone Brick Stair=Внутренние ступени из каменных кирпичей +Outer Stone Brick Stair=Внешние ступени из каменных кирпичей +Stone Brick Slab=Плита из каменных кирпичей +Stone Block Stair=Ступени из камня +Inner Stone Block Stair=Внутренние ступени из камня +Outer Stone Block Stair=Внешние ступени из камня +Stone Block Slab=Плита из камня +Desert Stone Stair=Ступени из пустынного камня +Inner Desert Stone Stair=Внутренние ступени из пустынного камня +Outer Desert Stone Stair=Внешние ступени из пустынного камня +Desert Stone Slab=Плита из пустынного камня +Desert Cobblestone Stair=Ступени из пустынного булыжника +Inner Desert Cobblestone Stair=Внутренние ступени из пустынного булыжника +Outer Desert Cobblestone Stair=Внешние ступени из пустынного булыжника +Desert Cobblestone Slab=Плита из пустынного булыжника +Desert Stone Brick Stair=Ступени из пустынных каменных кирпичей +Inner Desert Stone Brick Stair=Внутренние ступени из пустынных каменных кирпичей +Outer Desert Stone Brick Stair=Внешние ступени из пустынных каменных кирпичей +Desert Stone Brick Slab=Плита из пустынных каменных кирпичей +Desert Stone Block Stair=Ступени из пустынного каменного блока +Inner Desert Stone Block Stair=Внутренние ступени из пустынного каменного блока +Outer Desert Stone Block Stair=Внешние ступени из пустынного каменного блока +Desert Stone Block Slab=Плита из пустынного каменного блока +Sandstone Stair=Песчаниковые ступени +Inner Sandstone Stair=Внутренние песчаниковые ступени +Outer Sandstone Stair=Внешние песчаниковые ступени +Sandstone Slab=Песчаниковая плита +Sandstone Brick Stair=Ступени из песчаниковых кирпичей +Inner Sandstone Brick Stair=Внутренние ступени из песчаниковых кирпичей +Outer Sandstone Brick Stair=Внешние ступени из песчаниковых кирпичей +Sandstone Brick Slab=Плита из песчаниковых кирпичей +Sandstone Block Stair=Ступени из песчаникового блока +Inner Sandstone Block Stair=Внутренние ступени из песчаникового блока +Outer Sandstone Block Stair=Внешние ступени из песчаникового блока +Sandstone Block Slab=Плита из песчаникового блока +Desert Sandstone Stair=Ступени из пустынного песчаника +Inner Desert Sandstone Stair=Внутренние ступени из пустынного песчаника +Outer Desert Sandstone Stair=Внешние ступени из пустынного песчаника +Desert Sandstone Slab=Плита из пустынного песчаника +Desert Sandstone Brick Stair=Ступени из пустынных песчаниковых кирпичей +Inner Desert Sandstone Brick Stair=Внутренние ступени из пустынных песчаниковых кирпичей +Outer Desert Sandstone Brick Stair=Внешние ступени из пустынных песчаниковых кирпичей +Desert Sandstone Brick Slab=Плита из пустынных песчаниковых кирпичей +Desert Sandstone Block Stair=Ступени из пустынного песчаникового блока +Inner Desert Sandstone Block Stair=Внутренние ступени из пустынного песчаникового блока +Outer Desert Sandstone Block Stair=Внешние ступени из пустынного песчаникового блока +Desert Sandstone Block Slab=Плита из пустынного песчаникового блока +Silver Sandstone Stair=Ступени из серебристого песчаника +Inner Silver Sandstone Stair=Внутренние ступени из серебристого песчаника +Outer Silver Sandstone Stair=Внешние ступени из серебристого песчаника +Silver Sandstone Slab=Плита из серебристого песчаника +Silver Sandstone Brick Stair=Ступени из серебристых песчаниковых кирпичей +Inner Silver Sandstone Brick Stair=Внутренние ступени из серебристых песчаниковых кирпичей +Outer Silver Sandstone Brick Stair=Внешние ступени из серебристых песчаниковых кирпичей +Silver Sandstone Brick Slab=Плита из серебристых песчаниковых кирпичей +Silver Sandstone Block Stair=Ступени из серебристого песчаникового блока +Inner Silver Sandstone Block Stair=Внутренние ступени из серебристого песчаникового блока +Outer Silver Sandstone Block Stair=Внешние ступени из серебристого песчаникового блока +Silver Sandstone Block Slab=Плита из серебристого песчаникового блока +Obsidian Stair=Обсидиановые ступени +Inner Obsidian Stair=Внутренние обсидиановые ступени +Outer Obsidian Stair=Внешние обсидиановые ступени +Obsidian Slab=Обсидиановая плита +Obsidian Brick Stair=Ступени из обсидиановых кирпичей +Inner Obsidian Brick Stair=Внутренние ступени из обсидиановых кирпичей +Outer Obsidian Brick Stair=Внешние ступени из обсидиановых кирпичей +Obsidian Brick Slab=Плита из обсидиановых кирпичей +Obsidian Block Stair=Ступени из обсидианового блока +Inner Obsidian Block Stair=Внутренние ступени из обсидианового блока +Outer Obsidian Block Stair=Внешние ступени из обсидианового блока +Obsidian Block Slab=Плита из обсидианового блока +Brick Stair=Кирпичные ступени +Inner Brick Stair=Внутренние кирпичные ступени +Outer Brick Stair=Внешние кирпичные ступени +Brick Slab=Кирпичная плита +Steel Block Stair=Стальные ступени +Inner Steel Block Stair=Внутренние стальные ступени +Outer Steel Block Stair=Внешние стальные ступени +Steel Block Slab=Стальная плита +Tin Block Stair=Оловянные ступени +Inner Tin Block Stair=Внутренние оловянные ступени +Outer Tin Block Stair=Внешние оловянные ступени +Tin Block Slab=Оловянная плита +Copper Block Stair=Медные ступени +Inner Copper Block Stair=Внутренние медные ступени +Outer Copper Block Stair=Внешние медные ступени +Copper Block Slab=Медная плита +Bronze Block Stair=Бронзовые ступени +Inner Bronze Block Stair=Внутренние бронзовые ступени +Outer Bronze Block Stair=Внешние бронзовые ступени +Bronze Block Slab=Бронзовая плита +Gold Block Stair=Золотые ступени +Inner Gold Block Stair=Внутренние золотые ступени +Outer Gold Block Stair=Внешние золотые ступени +Gold Block Slab=Золотая плита +Ice Stair=Ледяные ступени +Inner Ice Stair=Внутренние ледяные ступени +Outer Ice Stair=Внешние ледяные ступени +Ice Slab=Ледяная плита +Snow Block Stair=Снежные ступени +Inner Snow Block Stair=Внутренние снежные ступени +Outer Snow Block Stair=Внешние снежные ступени +Snow Block Slab=Снежная плита diff --git a/mods/stairs/locale/stairs.sk.tr b/mods/stairs/locale/stairs.sk.tr new file mode 100644 index 0000000..b006fdb --- /dev/null +++ b/mods/stairs/locale/stairs.sk.tr @@ -0,0 +1,145 @@ +# textdomain: stairs +Glass Stair=Sklenené schod +Glass Slab=Sklenený stupienok +Inner Glass Stair=Vnútorný sklenené schod +Outer Glass Stair=Vonkajší sklenené schod +Obsidian Glass Stair=Obsidiánové sklenené schod +Obsidian Glass Slab=Obsidiánový sklenený stupienok +Inner Obsidian Glass Stair=Vnútorný obsidiánové sklenené schod +Outer Obsidian Glass Stair=Vonkajší obsidiánové sklenené schod +Wooden Stair=Drevené schod +Inner Wooden Stair=Vnútorný drevené schod +Outer Wooden Stair=Vonkajší drevené schod +Wooden Slab=Drevený stupienok +Jungle Wood Stair=Drevené schod z džungľového dreva +Inner Jungle Wood Stair=Vnútorný drevené schod z džungľového dreva +Outer Jungle Wood Stair=Vonkajší drevené schod z džungľového dreva +Jungle Wood Slab=Stupienok z džungľového dreva +Pine Wood Stair=Drevené schod z borovicového dreva +Inner Pine Wood Stair=Vnútorný drevené schod z borovicového dreva +Outer Pine Wood Stair=Vonkajší drevené schod z borovicového dreva +Pine Wood Slab=Stupienok z borovicového dreva +Acacia Wood Stair=Drevené schod z akáciového dreva +Inner Acacia Wood Stair=Vnútorný drevené schod z akáciového dreva +Outer Acacia Wood Stair=Vonkajší drevené schod z akáciového dreva +Acacia Wood Slab=Stupienok z akáciového dreva +Aspen Wood Stair=Drevené schod z osiky +Inner Aspen Wood Stair=Vnútorný drevené schod z osiky +Outer Aspen Wood Stair=Vonkajší drevené schod z osiky +Aspen Wood Slab=Stupienok z osiky +Stone Stair=Kamenné schod +Inner Stone Stair=Vnútorný kamenné schod +Outer Stone Stair=Vonkajší kamenné schod +Stone Slab=Kamenný stupienok +Cobblestone Stair=Schod z dlažbového kameňa +Inner Cobblestone Stair=Vnútorný schod z dlažbového kameňa +Outer Cobblestone Stair=Vonkajší schod z dlažbového kameňa +Cobblestone Slab=Stupienok z dlažbového kameňa +Mossy Cobblestone Stair=Schod dlažbového kameňa obrastené machom +Inner Mossy Cobblestone Stair=Vnútorný schod dlažbového kameňa obrastené machom +Outer Mossy Cobblestone Stair=Vonkajší schod dlažbového kameňa obrastené machom +Mossy Cobblestone Slab=Stupienok z dlažbového kameňa obrastený machom +Stone Brick Stair=Schod z kamenných tehál +Inner Stone Brick Stair=Vnútorný schod z kamenných tehál +Outer Stone Brick Stair=Vonkajší schod z kamenných tehál +Stone Brick Slab=Stupienok z kamenných tehál +Stone Block Stair=Schod z kameňa +Inner Stone Block Stair=Vnútorný schod z kameňa +Outer Stone Block Stair=Vonkajší schod z kameňa +Stone Block Slab=Stupienok z kameňa +Desert Stone Stair=Schod z púštneho kameňa +Inner Desert Stone Stair=Vnútorný schod z púštneho kameňa +Outer Desert Stone Stair=Vonkajší schod z púštneho kameňa +Desert Stone Slab=Stupienok z púštneho kameňa +Desert Cobblestone Stair=Schod z púštneho dlažbového kameňa +Inner Desert Cobblestone Stair=Vnútorný schod z púštneho dlažbového kameňa +Outer Desert Cobblestone Stair=Vonkajší schod z púštneho dlažbového kameňa +Desert Cobblestone Slab=Stupienok z púštneho dlažbového kameňa +Desert Stone Brick Stair=Schod z tehiel z púštneho kameňa +Inner Desert Stone Brick Stair=Vnútorný schod z tehiel z púštneho kameňa +Outer Desert Stone Brick Stair=Vonkajší schod z tehiel z púštneho kameňa +Desert Stone Brick Slab=Stupienok z tehiel z púštneho kameňa +Desert Stone Block Stair=Schod z blokov púštneho kameňa +Inner Desert Stone Block Stair=Vnútorný schod z blokov púštneho kameňa +Outer Desert Stone Block Stair=Vonkajší schod z blokov púštneho kameňa +Desert Stone Block Slab=Stupienok z blokov púštneho kameňa +Sandstone Stair=Schod z pieskovca +Inner Sandstone Stair=Vnútorný schod z pieskovca +Outer Sandstone Stair=Vonkajší schod z pieskovca +Sandstone Slab=Stupienok z pieskovca +Sandstone Brick Stair=Schod z tehál pieskovca +Inner Sandstone Brick Stair=Vnútorný schod z tehál pieskovca +Outer Sandstone Brick Stair=Vonkajší schod z tehál pieskovca +Sandstone Brick Slab=Stupienok z tehál pieskovca +Sandstone Block Stair=Schod z blokov pieskovca +Inner Sandstone Block Stair=Vnútorný schod z blokov pieskovca +Outer Sandstone Block Stair=Vonkajší schod z blokov pieskovca +Sandstone Block Slab=Stupienok z blokov pieskovca +Desert Sandstone Stair=Schod z púštneho pieskovca +Inner Desert Sandstone Stair=Vnútorný schod z púštneho pieskovca +Outer Desert Sandstone Stair=Vonkajší schod z púštneho pieskovca +Desert Sandstone Slab=Stupienok z púštneho pieskovca +Desert Sandstone Brick Stair=Schod z tehál z púštneho pieskovca +Inner Desert Sandstone Brick Stair=Vnútorný schod z tehál z púštneho pieskovca +Outer Desert Sandstone Brick Stair=Vonkajší schod z tehál z púštneho pieskovca +Desert Sandstone Brick Slab=Stupienok z tehál z púštneho pieskovca +Desert Sandstone Block Stair=Schod z blokov púštneho pieskovca +Inner Desert Sandstone Block Stair=Vnútorný schod z blokov púštneho pieskovca +Outer Desert Sandstone Block Stair=Vonkajší schod z blokov púštneho pieskovca +Desert Sandstone Block Slab=Stupienok z blokov púštneho pieskovca +Silver Sandstone Stair=Schod zo strieborného pieskovca +Inner Silver Sandstone Stair=Vnútorný schod zo strieborného pieskovca +Outer Silver Sandstone Stair=Vonkajší schod zo strieborného pieskovca +Silver Sandstone Slab=Stupienok zo strieborného pieskovca +Silver Sandstone Brick Stair=Schod z tehál zo strieborného pieskovca +Inner Silver Sandstone Brick Stair=Vnútorný schod z tehál zo strieborného pieskovca +Outer Silver Sandstone Brick Stair=Vonkajší schod z tehál zo strieborného pieskovca +Silver Sandstone Brick Slab=Stupienok z tehál zo strieborného pieskovca +Silver Sandstone Block Stair=Schod z blokov strieborného pieskovca +Inner Silver Sandstone Block Stair=Vnútorný schod z blokov strieborného pieskovca +Outer Silver Sandstone Block Stair=Vonkajší schod z blokov strieborného pieskovca +Silver Sandstone Block Slab=Stupienok z blokov strieborného pieskovca +Obsidian Stair=Schod z obsidiánu +Inner Obsidian Stair=Vnútorný schod z obsidiánu +Outer Obsidian Stair=Vonkajší schod z obsidiánu +Obsidian Slab=Stupienok z obsidiánu +Obsidian Brick Stair=Schod z tehál obsidiánu +Inner Obsidian Brick Stair=Vnútorný schod z tehál obsidiánu +Outer Obsidian Brick Stair=Vonkajší schod z tehál obsidiánu +Obsidian Brick Slab=Stupienok z tehál obsidiánu +Obsidian Block Stair=Schod z bloku obsidiánu +Inner Obsidian Block Stair=Vnútorný schod z bloku obsidiánu +Outer Obsidian Block Stair=Vonkajší schod z bloku obsidiánu +Obsidian Block Slab=Stupienok z bloku obsidiánu +Brick Stair=Schod z tehál +Inner Brick Stair=Vnútorný schod z tehál +Outer Brick Stair=Vonkajší schod z tehál +Brick Slab=Stupienok z tehál +Steel Block Stair=Oceľový schod +Inner Steel Block Stair=Vnútorný oceľový schod +Outer Steel Block Stair=Vonkajší oceľový schod +Steel Block Slab=Oceľový stupienok +Tin Block Stair=Cínový schod +Inner Tin Block Stair=Vnútorný cínový schod +Outer Tin Block Stair=Vonkajší cínový schod +Tin Block Slab=Cínový stupienok +Copper Block Stair=Medený schod +Inner Copper Block Stair=Vnútorný medený schod +Outer Copper Block Stair=Vonkajší medený schod +Copper Block Slab=Medený stupienok +Bronze Block Stair=Bronzový schod +Inner Bronze Block Stair=Vnútorný bronzový schod +Outer Bronze Block Stair=Vonkajší bronzový schod +Bronze Block Slab=Bronzový stupienok +Gold Block Stair=Zlatý schod +Inner Gold Block Stair=Vnútorný zlatý schod +Outer Gold Block Stair=Vonkajší zlatý schod +Gold Block Slab=Zlatý stupienok +Ice Stair=Ľadový schod +Inner Ice Stair=Vnútorný ľadový schod +Outer Ice Stair=Vonkajší ľadový schod +Ice Slab=Ľadový stupienok +Snow Block Stair=Snehový schod +Inner Snow Block Stair=Vnútorný snehový schod +Outer Snow Block Stair=Vonkajší snehový schod +Snow Block Slab=Snehový stupienok diff --git a/mods/stairs/locale/stairs.sv.tr b/mods/stairs/locale/stairs.sv.tr new file mode 100644 index 0000000..8044af8 --- /dev/null +++ b/mods/stairs/locale/stairs.sv.tr @@ -0,0 +1,145 @@ +# textdomain: stairs +Glass Stair=Glastrappa +Glass Slab=Glasplatta +Inner Glass Stair=Inre glasstrappa +Outer Glass Stair=Yttre glasstrappa +Obsidian Glass Stair=Obsidianglasstrappa +Obsidian Glass Slab=Obsidianglasplatta +Inner Obsidian Glass Stair=Inre obsidianglastrappa +Outer Obsidian Glass Stair=Yttre obsidianglastrappa +Wooden Stair=Trätrappa +Inner Wooden Stair=Inre trätrappa +Outer Wooden Stair=Yttre trätrappa +Wooden Slab=Träplatta +Jungle Wood Stair=Djungelträtrappa +Inner Jungle Wood Stair=Inre djungelträtrappa +Outer Jungle Wood Stair=Ytter djungelträtrappa +Jungle Wood Slab=Djungelträplatta +Pine Wood Stair=Tallträplatta +Inner Pine Wood Stair=Inre tallträplatta +Outer Pine Wood Stair=Ytter tallträplatta +Pine Wood Slab=Tallskiva +Acacia Wood Stair=Acaciatrappa +Inner Acacia Wood Stair=Inre acaciatrappa +Outer Acacia Wood Stair=Yttre acaciatrappa +Acacia Wood Slab=Acaciaplatta +Aspen Wood Stair=Aspträtrappa +Inner Aspen Wood Stair=Inre aspträtrappa +Outer Aspen Wood Stair=Yttre aspträtrappa +Aspen Wood Slab=Aspträplatta +Stone Stair=Stentrappa +Inner Stone Stair=Inre stentrappa +Outer Stone Stair=Yttre stentrappa +Stone Slab=Stenplatta +Cobblestone Stair=Kullerstenstrappa +Inner Cobblestone Stair=Inre kullerstenstrappa +Outer Cobblestone Stair=Yttre kullerstenstrappa +Cobblestone Slab=Kullerstenplatta +Mossy Cobblestone Stair=Mossig kullerstenstrappa +Inner Mossy Cobblestone Stair=Inre mossig kullerstenstrappa +Outer Mossy Cobblestone Stair=Yttre mossig kullerstenstrappa +Mossy Cobblestone Slab=Mossig kullerstenplatta +Stone Brick Stair=Stentegeltrappa +Inner Stone Brick Stair=Inre stentegeltrappa +Outer Stone Brick Stair=Yttre stentegeltrappa +Stone Brick Slab=Stentegelplatta +Stone Block Stair=Stenblockstrappa +Inner Stone Block Stair=Inre stenblockstrappa +Outer Stone Block Stair=Yttre stenblockstrappa +Stone Block Slab=Stenblocksplatta +Desert Stone Stair=Ökenstentrappa +Inner Desert Stone Stair=Inre ökenstentrappa +Outer Desert Stone Stair=Yttre ökenstentrappa +Desert Stone Slab=Ökenstenplatta +Desert Cobblestone Stair=Ökenkullerstenstrappa +Inner Desert Cobblestone Stair=Inre ökenkullerstenstrappa +Outer Desert Cobblestone Stair=Yttre ökenkullerstenstrappa +Desert Cobblestone Slab=Ökenkullerstensplatta +Desert Stone Brick Stair=Ökentegelstenstrappa +Inner Desert Stone Brick Stair=Inre Ökentegelstenstrappa +Outer Desert Stone Brick Stair=Yttre Ökentegelstenstrappa +Desert Stone Brick Slab=Ökentegelstensplatta +Desert Stone Block Stair=Ökenstenblockstrappa +Inner Desert Stone Block Stair=Inre ökenstenblockstrappa +Outer Desert Stone Block Stair=Yttre ökenstenblockstrappa +Desert Stone Block Slab=Ökenstenblocksplatta +Sandstone Stair=Sandstenstrappa +Inner Sandstone Stair=Inre Sandstenstrappa +Outer Sandstone Stair=Yttre Sandstenstrappa +Sandstone Slab=Sandstenplatta +Sandstone Brick Stair=Sandstentegeltrappa +Inner Sandstone Brick Stair=Inre Sandstentegeltrappa +Outer Sandstone Brick Stair=Yttre Sandstentegeltrappa +Sandstone Brick Slab=Sandstentegelplatta +Sandstone Block Stair=Sandstenblockstrappa +Inner Sandstone Block Stair=Inre Sandstenblockstrappa +Outer Sandstone Block Stair=Yttre Sandstenblockstrappa +Sandstone Block Slab=Sandstenblocksplatta +Desert Sandstone Stair=Ökensandstenstrappa +Inner Desert Sandstone Stair=Inre ökensandstenstrappa +Outer Desert Sandstone Stair=Yttre ökensandstenstrappa +Desert Sandstone Slab=Ökensandstensplatta +Desert Sandstone Brick Stair=Ökensandstentegeltrappa +Inner Desert Sandstone Brick Stair=Inre ökensandstentegeltrappa +Outer Desert Sandstone Brick Stair=Yttre ökensandstentegeltrappa +Desert Sandstone Brick Slab=Ökensandstentegelplatta +Desert Sandstone Block Stair=Ökensandstentegeltrappa +Inner Desert Sandstone Block Stair=Inre ökensandstentegeltrappa +Outer Desert Sandstone Block Stair=Yttre ökensandstentegeltrappa +Desert Sandstone Block Slab=Ökensandstentegelplatta +Silver Sandstone Stair=Silversandstenstrappa +Inner Silver Sandstone Stair=Inre silversandstenstrappa +Outer Silver Sandstone Stair=Yttre silversandstenstrappa +Silver Sandstone Slab=Silversandstenstrappa +Silver Sandstone Brick Stair=Silversandstenstegeltrappa +Inner Silver Sandstone Brick Stair=Inre silversandstenstegeltrappa +Outer Silver Sandstone Brick Stair=Yttre silversandstenstegeltrappa +Silver Sandstone Brick Slab=Silversandstenstegelplatta +Silver Sandstone Block Stair=Silversandstenblockstrappa +Inner Silver Sandstone Block Stair=Inre silversandstenblockstrappa +Outer Silver Sandstone Block Stair=Yttre silversandstenblockstrappa +Silver Sandstone Block Slab=Silversandstenblocksplatta +Obsidian Stair=Obsidiantrappa +Inner Obsidian Stair=Inre obsidiantrappa +Outer Obsidian Stair=Yttre obsidiantrappa +Obsidian Slab=Obsidianplatta +Obsidian Brick Stair=Obsidiantegeltrappa +Inner Obsidian Brick Stair=Inre obsidiantegeltrappa +Outer Obsidian Brick Stair=Yttre obsidiantegeltrappa +Obsidian Brick Slab=Obsidiantegelplatta +Obsidian Block Stair=Obsidianblocktrappa +Inner Obsidian Block Stair=Inre Obsidianblocktrappa +Outer Obsidian Block Stair=Yttre Obsidianblocktrappa +Obsidian Block Slab=Obsidianblockplatta +Brick Stair=Tegeltrappa +Inner Brick Stair=Inre tegeltrappa +Outer Brick Stair=Yttre tegeltrappa +Brick Slab=Tegelplatta +Steel Block Stair=Ståltrappa +Inner Steel Block Stair=Inre ståltrappa +Outer Steel Block Stair=Yttre ståltrappa +Steel Block Slab=Stålplatta +Tin Block Stair=Tenntrappa +Inner Tin Block Stair=Inre tenntrappa +Outer Tin Block Stair=Yttre tenntrappa +Tin Block Slab=Tennplatta +Copper Block Stair=Koppartrappa +Inner Copper Block Stair=Inre koppartrappa +Outer Copper Block Stair=Yttre koppartrappa +Copper Block Slab=Kopparplatta +Bronze Block Stair=Bronstrappa +Inner Bronze Block Stair=Inre bronstrappa +Outer Bronze Block Stair=Yttre bronstrappa +Bronze Block Slab=Bronsplatta +Gold Block Stair=Guldtrappa +Inner Gold Block Stair=Inre guldtrappa +Outer Gold Block Stair=Yttre guldtrappa +Gold Block Slab=Guldplatta +Ice Stair=Istrappa +Inner Ice Stair=Inre istrappa +Outer Ice Stair=Yttre istrappa +Ice Slab=Isplatta +Snow Block Stair=Snöblockstrappa +Inner Snow Block Stair=Inre snöblockstrappa +Outer Snow Block Stair=Yttre snöblockstrappa +Snow Block Slab=Snöblocksplatta diff --git a/mods/stairs/locale/stairs.uk.tr b/mods/stairs/locale/stairs.uk.tr new file mode 100644 index 0000000..bf729a0 --- /dev/null +++ b/mods/stairs/locale/stairs.uk.tr @@ -0,0 +1,145 @@ +# textdomain: stairs +Glass Stair=Скляна сходинка +Glass Slab=Скляна плита +Inner Glass Stair=Кутова скляна сходинка (внутрішній кут) +Outer Glass Stair=Кутова скляна сходинка (зовнішній кут) +Obsidian Glass Stair=Сходинка з обсидіанового скла +Obsidian Glass Slab=Плита з обсидіанового скла +Inner Obsidian Glass Stair=Кутова сходинка з обсидіанового скла (внутрішній кут) +Outer Obsidian Glass Stair=Кутова сходинка з обсидіанового скла (зовнішній кут) +Wooden Stair=Дерев'яна сходинка +Inner Wooden Stair=Кутова дерев'яна сходинка (внутрішній кут) +Outer Wooden Stair=Кутова дерев'яна сходинка (зовнішній кут) +Wooden Slab=Дерев'яна плита +Jungle Wood Stair=Сходинка з тропічного дерева +Inner Jungle Wood Stair=Кутова сходинка з тропічного дерева (внутрішній кут) +Outer Jungle Wood Stair=Кутова сходинка з тропічного дерева (зовнішній кут) +Jungle Wood Slab=Плита з тропічного дерева +Pine Wood Stair=Соснова сходинка +Inner Pine Wood Stair=Кутова соснова сходинка (внутрішній кут) +Outer Pine Wood Stair=Кутова соснова сходинка (зовнішній кут) +Pine Wood Slab=Соснова плита +Acacia Wood Stair=Акацієва сходинка +Inner Acacia Wood Stair=Кутова акацієва сходинка (внутрішній кут) +Outer Acacia Wood Stair=Кутова акацієва сходинка (зовнішній кут) +Acacia Wood Slab=Акацієва плита +Aspen Wood Stair=Осикова сходинка +Inner Aspen Wood Stair=Кутова осикова сходинка (внутрішній кут) +Outer Aspen Wood Stair=Кутова осикова сходинка (зовнішній кут) +Aspen Wood Slab=Осикова плита +Stone Stair=Кам'яна сходинка +Inner Stone Stair=Кутова кам'яна сходинка (внутрішній кут) +Outer Stone Stair=Кутова кам'яна сходинка (зовнішній кут) +Stone Slab=Кам'яна плита +Cobblestone Stair=Круглякова сходинка +Inner Cobblestone Stair=Кутова круглякова сходинка (внутрішній кут) +Outer Cobblestone Stair=Кутова круглякова сходинка (зовнішній кут) +Cobblestone Slab=Круглякова плита +Mossy Cobblestone Stair=Сходинка з моховитого кругляку +Inner Mossy Cobblestone Stair=Кутова сходинка з моховитого кругляку (внутрішній кут) +Outer Mossy Cobblestone Stair=Кутова сходинка з моховитого кругляку (зовнішній кут) +Mossy Cobblestone Slab=Плита з моховитого кругляку +Stone Brick Stair=Сходинка з кам'яної цегли +Inner Stone Brick Stair=Кутова сходинка з кам'яної цегли (внутрішній кут) +Outer Stone Brick Stair=Кутова сходинка з кам'яної цегли (зовнішній кут) +Stone Brick Slab=Плита з кам'яної цегли +Stone Block Stair=Сходинка з блоку каменю +Inner Stone Block Stair=Кутова сходинка з блоку каменю (внутрішній кут) +Outer Stone Block Stair=Кутова сходинка з блоку каменю (зовнішній кут) +Stone Block Slab=Плита з блоку каменю +Desert Stone Stair=Сходинка з пустельного каменю +Inner Desert Stone Stair=Кутова сходинка з пустельного каменю (внутрішній кут) +Outer Desert Stone Stair=Кутова сходинка з пустельного каменю (зовнішній кут) +Desert Stone Slab=Плита з пустельного каменю +Desert Cobblestone Stair=Сходинка з пустельного кругляку +Inner Desert Cobblestone Stair=Кутова сходинка з пустельного кругляку (внутрішній кут) +Outer Desert Cobblestone Stair=Кутова сходинка з пустельного кругляку (зовнішній кут) +Desert Cobblestone Slab=Плита з пустельного кругляку +Desert Stone Brick Stair=Сходинка з цегли з пустельного каменю +Inner Desert Stone Brick Stair=Кутова сходинка з цегли з пустельного каменю (внутрішній кут) +Outer Desert Stone Brick Stair=Кутова сходинка з цегли з пустельного каменю (зовнішній кут) +Desert Stone Brick Slab=Плита з цегли з пустельного каменю +Desert Stone Block Stair=Сходинка з блоку пустельного каменю +Inner Desert Stone Block Stair=Кутова сходинка з блоку пустельного каменю (внутрішній кут) +Outer Desert Stone Block Stair=Кутова сходинка з блоку пустельного каменю (зовнішній кут) +Desert Stone Block Slab=Плита з блоку пустельного каменю +Sandstone Stair=Пісковикова сходинка +Inner Sandstone Stair=Кутова пісковикова сходинка (внутрішній кут) +Outer Sandstone Stair=Кутова пісковикова сходинка (зовнішній кут) +Sandstone Slab=Пісковикова плита +Sandstone Brick Stair=Сходинка з пісковикової цегли +Inner Sandstone Brick Stair=Кутова сходинка з пісковикової цегли (внутрішній кут) +Outer Sandstone Brick Stair=Кутова сходинка з пісковикової цегли (зовнішній кут) +Sandstone Brick Slab=Плита з пісковикової цегли +Sandstone Block Stair=Сходинка з блоку пісковику +Inner Sandstone Block Stair=Кутова сходинка з блоку пісковику (внутрішній кут) +Outer Sandstone Block Stair=Кутова сходинка з блоку пісковику (зовнішній кут) +Sandstone Block Slab=Плита з блоку пісковику +Desert Sandstone Stair=Сходинка з пустельного пісковику +Inner Desert Sandstone Stair=Кутова сходинка з пустельного пісковику (внутрішній кут) +Outer Desert Sandstone Stair=Кутова сходинка з пустельного пісковику (зовнішній кут) +Desert Sandstone Slab=Плита з пустельного пісковику +Desert Sandstone Brick Stair=Сходинка з цегли з пустельного пісковику +Inner Desert Sandstone Brick Stair=Кутова сходинка з цегли з пустельного пісковику (внутрішній кут) +Outer Desert Sandstone Brick Stair=Кутова сходинка з цегли з пустельного пісковику (зовнішній кут) +Desert Sandstone Brick Slab=Плита з цегли з пустельного пісковику +Desert Sandstone Block Stair=Сходинка з блоку пустельного пісковику +Inner Desert Sandstone Block Stair=Кутова сходинка з блоку пустельного пісковику (внутрішній кут) +Outer Desert Sandstone Block Stair=Кутова сходинка з блоку пустельного пісковику (зовнішній кут) +Desert Sandstone Block Slab=Плита з блоку пустельного пісковику +Silver Sandstone Stair=Сходинка зі срібного пісковику +Inner Silver Sandstone Stair=Кутова сходинка зі срібного пісковику (внутрішній кут) +Outer Silver Sandstone Stair=Кутова сходинка зі срібного пісковику (зовнішній кут) +Silver Sandstone Slab=Плита зі срібного пісковику +Silver Sandstone Brick Stair=Сходинка з цегли зі срібного пісковику +Inner Silver Sandstone Brick Stair=Кутова сходинка з цегли зі срібного пісковику (внутрішній кут) +Outer Silver Sandstone Brick Stair=Кутова сходинка з цегли зі срібного пісковику (зовнішній кут) +Silver Sandstone Brick Slab=Плита з цегли зі срібного пісковику +Silver Sandstone Block Stair=Сходинка з блоку срібного пісковику +Inner Silver Sandstone Block Stair=Кутова сходинка з блоку срібного пісковику (внутрішній кут) +Outer Silver Sandstone Block Stair=Кутова сходинка з блоку срібного пісковику (зовнішній кут) +Silver Sandstone Block Slab=Плита з блоку срібного пісковику +Obsidian Stair=Обсидіанова сходинка +Inner Obsidian Stair=Кутова обсидіанова сходинка (внутрішній кут) +Outer Obsidian Stair=Кутова обсидіанова сходинка (зовнішній кут) +Obsidian Slab=Обсидіанова плита +Obsidian Brick Stair=Сходинка з обсидіанової цегли +Inner Obsidian Brick Stair=Кутова сходинка з обсидіанової цегли (внутрішній кут) +Outer Obsidian Brick Stair=Кутова сходинка з обсидіанової цегли (зовнішній кут) +Obsidian Brick Slab=Плита з обсидіанової цегли +Obsidian Block Stair=Сходинка з блоку обсидіану +Inner Obsidian Block Stair=Кутова сходинка з блоку обсидіану (внутрішній кут) +Outer Obsidian Block Stair=Кутова сходинка з блоку обсидіану (зовнішній кут) +Obsidian Block Slab=Плита з блоку обсидіану +Brick Stair=Цегляна сходинка +Inner Brick Stair=Кутова цегляна сходинка (внутрішній кут) +Outer Brick Stair=Кутова цегляна сходинка (зовнішній кут) +Brick Slab=Цегляна плита +Steel Block Stair=Сходинка з блоку сталі +Inner Steel Block Stair=Кутова сходинка з блоку сталі (внутрішній кут) +Outer Steel Block Stair=Кутова сходинка з блоку сталі (зовнішній кут) +Steel Block Slab=Плита з блоку сталі +Tin Block Stair=Сходинка з блоку олова +Inner Tin Block Stair=Кутова сходинка з блоку олова (внутрішній кут) +Outer Tin Block Stair=Кутова сходинка з блоку олова (зовнішній кут) +Tin Block Slab=Плита з блоку олова +Copper Block Stair=Сходинка з блоку міді +Inner Copper Block Stair=Кутова сходинка з блоку міді (внутрішній кут) +Outer Copper Block Stair=Кутова сходинка з блоку міді (зовнішній кут) +Copper Block Slab=Плита з блоку міді +Bronze Block Stair=Сходинка з блоку бронзи +Inner Bronze Block Stair=Кутова сходинка з блоку бронзи (внутрішній кут) +Outer Bronze Block Stair=Кутова сходинка з блоку бронзи (зовнішній кут) +Bronze Block Slab=Плита з блоку бронзи +Gold Block Stair=Сходинка з блоку золота +Inner Gold Block Stair=Кутова сходинка з блоку золота (внутрішній кут) +Outer Gold Block Stair=Кутова сходинка з блоку золота (зовнішній кут) +Gold Block Slab=Плита з блоку золота +Ice Stair=Крижана сходинка +Inner Ice Stair=Кутова крижана сходинка (внутрішній кут) +Outer Ice Stair=Кутова крижана сходинка (зовнішній кут) +Ice Slab=Крижана плита +Snow Block Stair=Сходинка з блоку снігу +Inner Snow Block Stair=Кутова сходинка з блоку снігу (внутрішній кут) +Outer Snow Block Stair=Кутова сходинка з блоку снігу (зовнішній кут) +Snow Block Slab=Плита з блоку снігу diff --git a/mods/stairs/locale/stairs.zh_CN.tr b/mods/stairs/locale/stairs.zh_CN.tr new file mode 100644 index 0000000..e37ebcb --- /dev/null +++ b/mods/stairs/locale/stairs.zh_CN.tr @@ -0,0 +1,153 @@ +# textdomain: stairs +Glass Stair=玻璃楼梯 +Glass Slab=玻璃台阶 +Inner Glass Stair=玻璃楼梯(内) +Outer Glass Stair=玻璃楼梯(外) +Obsidian Glass Stair=黑曜石玻璃楼梯 +Obsidian Glass Slab=黑曜石玻璃台阶 +Inner Obsidian Glass Stair=黑曜石玻璃楼梯(内) +Outer Obsidian Glass Stair=黑曜石玻璃楼梯(外) +Wooden Stair=木楼梯 +Inner Wooden Stair=木楼梯(内) +Outer Wooden Stair=木楼梯(外) +Wooden Slab=木台阶 +Jungle Wood Stair=丛林木楼梯 +Inner Jungle Wood Stair=丛林木楼梯(内) +Outer Jungle Wood Stair=丛林木楼梯(外) +Jungle Wood Slab=丛林木台阶 +Pine Wood Stair=松木楼梯 +Inner Pine Wood Stair=松木楼梯(内) +Outer Pine Wood Stair=松木楼梯(外) +Pine Wood Slab=松木台阶 +Acacia Wood Stair=金合欢木楼梯 +Inner Acacia Wood Stair=金合欢木楼梯(内) +Outer Acacia Wood Stair=金合欢木楼梯(外) +Acacia Wood Slab=金合欢木台阶 +Aspen Wood Stair=白杨木楼梯 +Inner Aspen Wood Stair=白杨木楼梯(内) +Outer Aspen Wood Stair=白杨木楼梯(外) +Aspen Wood Slab=白杨木台阶 +Stone Stair=石楼梯 +Inner Stone Stair=石楼梯(内) +Outer Stone Stair=石楼梯(外) +Stone Slab=石台阶 +Cobblestone Stair=鹅卵石楼梯 +Inner Cobblestone Stair=鹅卵石楼梯(内) +Outer Cobblestone Stair=鹅卵石楼梯(外) +Cobblestone Slab=鹅卵石台阶 +Mossy Cobblestone Stair=苔藓覆盖的鹅卵石楼梯 +Inner Mossy Cobblestone Stair=苔藓覆盖的鹅卵石楼梯(内) +Outer Mossy Cobblestone Stair=苔藓覆盖的鹅卵石楼梯(外) +Mossy Cobblestone Slab=苔藓覆盖的鹅卵石台阶 +Stone Brick Stair=石砖楼梯 +Inner Stone Brick Stair=石砖楼梯(内) +Outer Stone Brick Stair=石砖楼梯(外) +Stone Brick Slab=石砖台阶 +Stone Block Stair=石块楼梯 +Inner Stone Block Stair=石块楼梯(内) +Outer Stone Block Stair=石块楼梯(外) +Stone Block Slab=石块台阶 +Desert Stone Stair=沙漠石楼梯 +Inner Desert Stone Stair=沙漠石楼梯(内) +Outer Desert Stone Stair=沙漠石楼梯(外) +Desert Stone Slab=沙漠石台阶 +Desert Cobblestone Stair=沙漠鹅卵石楼梯 +Inner Desert Cobblestone Stair=沙漠鹅卵石楼梯(内) +Outer Desert Cobblestone Stair=沙漠鹅卵石楼梯(外) +Desert Cobblestone Slab=沙漠鹅卵石台阶 +Desert Stone Brick Stair=沙漠石砖楼梯 +Inner Desert Stone Brick Stair=沙漠石砖楼梯(内) +Outer Desert Stone Brick Stair=沙漠石砖楼梯(外) +Desert Stone Brick Slab=沙漠石砖台阶 +Desert Stone Block Stair=沙漠石块楼梯 +Inner Desert Stone Block Stair=沙漠石块楼梯(内) +Outer Desert Stone Block Stair=沙漠石块楼梯(外) +Desert Stone Block Slab=沙漠石块台阶 +Sandstone Stair=沙石楼梯 +Inner Sandstone Stair=沙石楼梯(内) +Outer Sandstone Stair=沙石楼梯(外) +Sandstone Slab=沙石台阶 +Sandstone Brick Stair=沙石砖楼梯 +Inner Sandstone Brick Stair=沙石砖楼梯(内) +Outer Sandstone Brick Stair=沙石砖楼梯(外) +Sandstone Brick Slab=沙石砖台阶 +Sandstone Block Stair=沙石块楼梯 +Inner Sandstone Block Stair=沙石块楼梯(内) +Outer Sandstone Block Stair=沙石块楼梯(外) +Sandstone Block Slab=沙石块台阶 +Desert Sandstone Stair=沙漠沙石楼梯 +Inner Desert Sandstone Stair=沙漠沙石楼梯(内) +Outer Desert Sandstone Stair=沙漠沙石楼梯(外) +Desert Sandstone Slab=沙漠沙石台阶 +Desert Sandstone Brick Stair=沙漠沙石砖楼梯 +Inner Desert Sandstone Brick Stair=沙漠沙石砖楼梯(内) +Outer Desert Sandstone Brick Stair=沙漠沙石砖楼梯(外) +Desert Sandstone Brick Slab=沙漠沙石砖台阶 +Desert Sandstone Block Stair=沙漠沙石块楼梯 +Inner Desert Sandstone Block Stair=沙漠沙石块楼梯(内) +Outer Desert Sandstone Block Stair=沙漠沙石块楼梯(外) +Desert Sandstone Block Slab=沙漠沙石块台阶 +Silver Sandstone Stair=银沙石楼梯 +Inner Silver Sandstone Stair=银沙石楼梯(内) +Outer Silver Sandstone Stair=银沙石楼梯(外) +Silver Sandstone Slab=银沙石台阶 +Silver Sandstone Brick Stair=银沙石砖楼梯 +Inner Silver Sandstone Brick Stair=银沙石砖楼梯(内) +Outer Silver Sandstone Brick Stair=银沙石砖楼梯(外) +Silver Sandstone Brick Slab=银沙石砖台阶 +Silver Sandstone Block Stair=银沙石块楼梯 +Inner Silver Sandstone Block Stair=银沙石块楼梯(内) +Outer Silver Sandstone Block Stair=银沙石块楼梯(外) +Silver Sandstone Block Slab=银沙石块台阶 +Obsidian Stair=黑曜石楼梯 +Inner Obsidian Stair=黑曜石楼梯(内) +Outer Obsidian Stair=黑曜石楼梯(外) +Obsidian Slab=黑曜石台阶 +Obsidian Brick Stair=黑曜石砖楼梯 +Inner Obsidian Brick Stair=黑曜石砖楼梯(内) +Outer Obsidian Brick Stair=黑曜石砖楼梯(外) +Obsidian Brick Slab=黑曜石砖台阶 +Obsidian Block Stair=黑曜石块楼梯 +Inner Obsidian Block Stair=黑曜石块楼梯(内) +Outer Obsidian Block Stair=黑曜石块楼梯(外) +Obsidian Block Slab=黑曜石块台阶 +Brick Stair=砖楼梯 +Inner Brick Stair=砖楼梯(内) +Outer Brick Stair=砖楼梯(外) +Brick Slab=砖台阶 +Steel Block Stair=铁块楼梯 +Inner Steel Block Stair=铁块楼梯(内) +Outer Steel Block Stair=铁块楼梯(外) +Steel Block Slab=铁块台阶 +Tin Block Stair=锡块楼梯 +Inner Tin Block Stair=锡块楼梯(内) +Outer Tin Block Stair=锡块楼梯(外) +Tin Block Slab=锡块台阶 +Copper Block Stair=铜块楼梯 +Inner Copper Block Stair=铜块楼梯(内) +Outer Copper Block Stair=铜块楼梯(外) +Copper Block Slab=铜块台阶 +Bronze Block Stair=青铜块楼梯 +Inner Bronze Block Stair=青铜块楼梯(内) +Outer Bronze Block Stair=青铜块楼梯(外) +Bronze Block Slab=青铜块台阶 +Gold Block Stair=金块楼梯 +Inner Gold Block Stair=金块楼梯(内) +Outer Gold Block Stair=金块楼梯(外) +Gold Block Slab=金块台阶 +Ice Stair=冰楼梯 +Inner Ice Stair=冰块楼梯(内) +Outer Ice Stair=冰块楼梯(外) +Ice Slab=冰台阶 +Snow Block Stair=雪块楼梯 +Inner Snow Block Stair=雪块楼梯(内) +Outer Snow Block Stair=雪块楼梯(外) +Snow Block Slab=雪块台阶 + + +##### not used anymore ##### + +Blue Stained Stair=蓝木楼梯 +Inner Blue Stained Stair=蓝木楼梯(内) +Outer Blue Stained Stair=蓝木楼梯(外) +Blue Stained Slab=蓝木台阶 diff --git a/mods/stairs/locale/stairs.zh_TW.tr b/mods/stairs/locale/stairs.zh_TW.tr new file mode 100644 index 0000000..eaed61f --- /dev/null +++ b/mods/stairs/locale/stairs.zh_TW.tr @@ -0,0 +1,153 @@ +# textdomain: stairs +Glass Stair=玻璃樓梯 +Glass Slab=玻璃臺階 +Inner Glass Stair=玻璃樓梯(內) +Outer Glass Stair=玻璃樓梯(外) +Obsidian Glass Stair=黑曜石玻璃樓梯 +Obsidian Glass Slab=黑曜石玻璃臺階 +Inner Obsidian Glass Stair=黑曜石玻璃樓梯(內) +Outer Obsidian Glass Stair=黑曜石玻璃樓梯(外) +Wooden Stair=木製樓梯 +Inner Wooden Stair=木樓梯(內) +Outer Wooden Stair=木樓梯(外) +Wooden Slab=木製臺階 +Jungle Wood Stair=叢林木樓梯 +Inner Jungle Wood Stair=叢林木樓梯(內) +Outer Jungle Wood Stair=叢林木樓梯(外) +Jungle Wood Slab=叢林木臺階 +Pine Wood Stair=松木樓梯 +Inner Pine Wood Stair=松木樓梯(內) +Outer Pine Wood Stair=松木樓梯(外) +Pine Wood Slab=松木臺階 +Acacia Wood Stair=金合歡木樓梯 +Inner Acacia Wood Stair=金合歡木樓梯(內) +Outer Acacia Wood Stair=金合歡木樓梯(外) +Acacia Wood Slab=金合歡木臺階 +Aspen Wood Stair=白楊木樓梯 +Inner Aspen Wood Stair=白楊木樓梯(內) +Outer Aspen Wood Stair=白楊木樓梯(外) +Aspen Wood Slab=白楊木臺階 +Stone Stair=石樓梯 +Inner Stone Stair=石樓梯(內) +Outer Stone Stair=石樓梯(外) +Stone Slab=石臺階 +Cobblestone Stair=圓石樓梯 +Inner Cobblestone Stair=圓石樓梯(內) +Outer Cobblestone Stair=圓石樓梯(外) +Cobblestone Slab=圓石臺階 +Mossy Cobblestone Stair=苔石樓梯 +Inner Mossy Cobblestone Stair=苔石樓梯(內) +Outer Mossy Cobblestone Stair=苔石樓梯(外) +Mossy Cobblestone Slab=苔石臺階 +Stone Brick Stair=石磚樓梯 +Inner Stone Brick Stair=石磚樓梯(內) +Outer Stone Brick Stair=石磚樓梯(外) +Stone Brick Slab=石磚臺階 +Stone Block Stair=石塊樓梯 +Inner Stone Block Stair=石塊樓梯(內) +Outer Stone Block Stair=石塊樓梯(外) +Stone Block Slab=石塊臺階 +Desert Stone Stair=沙漠石樓梯 +Inner Desert Stone Stair=沙漠石樓梯(內) +Outer Desert Stone Stair=沙漠石樓梯(外) +Desert Stone Slab=沙漠石臺階 +Desert Cobblestone Stair=沙漠圓石樓梯 +Inner Desert Cobblestone Stair=沙漠圓石樓梯(內) +Outer Desert Cobblestone Stair=沙漠圓石樓梯(外) +Desert Cobblestone Slab=沙漠圓石臺階 +Desert Stone Brick Stair=沙漠石磚樓梯 +Inner Desert Stone Brick Stair=沙漠石磚樓梯(內) +Outer Desert Stone Brick Stair=沙漠石磚樓梯(外) +Desert Stone Brick Slab=沙漠石磚臺階 +Desert Stone Block Stair=沙漠石塊樓梯 +Inner Desert Stone Block Stair=沙漠石塊樓梯(內) +Outer Desert Stone Block Stair=沙漠石塊樓梯(外) +Desert Stone Block Slab=沙漠石塊臺階 +Sandstone Stair=沙石樓梯 +Inner Sandstone Stair=沙石樓梯(內) +Outer Sandstone Stair=沙石樓梯(外) +Sandstone Slab=沙石臺階 +Sandstone Brick Stair=沙石磚樓梯 +Inner Sandstone Brick Stair=沙石磚樓梯(內) +Outer Sandstone Brick Stair=沙石磚樓梯(外) +Sandstone Brick Slab=沙石磚臺階 +Sandstone Block Stair=沙石塊樓梯 +Inner Sandstone Block Stair=沙石塊樓梯(內) +Outer Sandstone Block Stair=沙石塊樓梯(外) +Sandstone Block Slab=沙石塊臺階 +Desert Sandstone Stair=沙漠沙石樓梯 +Inner Desert Sandstone Stair=沙漠沙石樓梯(內) +Outer Desert Sandstone Stair=沙漠沙石樓梯(外) +Desert Sandstone Slab=沙漠沙石臺階 +Desert Sandstone Brick Stair=沙漠沙石磚樓梯 +Inner Desert Sandstone Brick Stair=沙漠沙石磚樓梯(內) +Outer Desert Sandstone Brick Stair=沙漠沙石磚樓梯(外) +Desert Sandstone Brick Slab=沙漠沙石磚臺階 +Desert Sandstone Block Stair=沙漠沙石塊樓梯 +Inner Desert Sandstone Block Stair=沙漠沙石塊樓梯(內) +Outer Desert Sandstone Block Stair=沙漠沙石塊樓梯(外) +Desert Sandstone Block Slab=沙漠沙石塊臺階 +Silver Sandstone Stair=銀沙石樓梯 +Inner Silver Sandstone Stair=銀沙石樓梯(內) +Outer Silver Sandstone Stair=銀沙石樓梯(外) +Silver Sandstone Slab=銀沙石臺階 +Silver Sandstone Brick Stair=銀沙石磚樓梯 +Inner Silver Sandstone Brick Stair=銀沙石磚樓梯(內) +Outer Silver Sandstone Brick Stair=銀沙石磚樓梯(外) +Silver Sandstone Brick Slab=銀沙石磚臺階 +Silver Sandstone Block Stair=銀沙石塊樓梯 +Inner Silver Sandstone Block Stair=銀沙石塊樓梯(內) +Outer Silver Sandstone Block Stair=銀沙石塊樓梯(外) +Silver Sandstone Block Slab=銀沙石塊臺階 +Obsidian Stair=黑曜石樓梯 +Inner Obsidian Stair=黑曜石樓梯(內) +Outer Obsidian Stair=黑曜石樓梯(外) +Obsidian Slab=黑曜石臺階 +Obsidian Brick Stair=黑曜石磚樓梯 +Inner Obsidian Brick Stair=黑曜石磚樓梯(內) +Outer Obsidian Brick Stair=黑曜石磚樓梯(外) +Obsidian Brick Slab=黑曜石磚臺階 +Obsidian Block Stair=黑曜石塊樓梯 +Inner Obsidian Block Stair=黑曜石塊樓梯(內) +Outer Obsidian Block Stair=黑曜石塊樓梯(外) +Obsidian Block Slab=黑曜石塊臺階 +Brick Stair=磚樓梯 +Inner Brick Stair=磚樓梯(內) +Outer Brick Stair=磚樓梯(外) +Brick Slab=磚制臺階 +Steel Block Stair=鐵塊樓梯 +Inner Steel Block Stair=鐵塊樓梯(內) +Outer Steel Block Stair=鐵塊樓梯(外) +Steel Block Slab=鐵塊臺階 +Tin Block Stair=錫塊樓梯 +Inner Tin Block Stair=錫塊樓梯(內) +Outer Tin Block Stair=錫塊樓梯(外) +Tin Block Slab=錫塊臺階 +Copper Block Stair=銅塊樓梯 +Inner Copper Block Stair=銅塊樓梯(內) +Outer Copper Block Stair=銅塊樓梯(外) +Copper Block Slab=銅塊臺階 +Bronze Block Stair=青銅塊樓梯 +Inner Bronze Block Stair=青銅塊樓梯(內) +Outer Bronze Block Stair=青銅塊樓梯(外) +Bronze Block Slab=青銅塊臺階 +Gold Block Stair=金塊樓梯 +Inner Gold Block Stair=金塊樓梯(內) +Outer Gold Block Stair=金塊樓梯(外) +Gold Block Slab=金塊臺階 +Ice Stair=冰階梯 +Inner Ice Stair=冰塊樓梯(內) +Outer Ice Stair=冰塊樓梯(外) +Ice Slab=冰臺階 +Snow Block Stair=雪塊樓梯 +Inner Snow Block Stair=雪塊樓梯(內) +Outer Snow Block Stair=雪塊樓梯(外) +Snow Block Slab=雪塊臺階 + + +##### not used anymore ##### + +Blue Stained Stair=藍木樓梯 +Inner Blue Stained Stair=藍木樓梯(內) +Outer Blue Stained Stair=藍木樓梯(外) +Blue Stained Slab=藍木臺階 diff --git a/mods/stairs/locale/template.txt b/mods/stairs/locale/template.txt new file mode 100644 index 0000000..ca2c865 --- /dev/null +++ b/mods/stairs/locale/template.txt @@ -0,0 +1,145 @@ +# textdomain: stairs +Glass Stair= +Glass Slab= +Inner Glass Stair= +Outer Glass Stair= +Obsidian Glass Stair= +Obsidian Glass Slab= +Inner Obsidian Glass Stair= +Outer Obsidian Glass Stair= +Wooden Stair= +Inner Wooden Stair= +Outer Wooden Stair= +Wooden Slab= +Jungle Wood Stair= +Inner Jungle Wood Stair= +Outer Jungle Wood Stair= +Jungle Wood Slab= +Pine Wood Stair= +Inner Pine Wood Stair= +Outer Pine Wood Stair= +Pine Wood Slab= +Acacia Wood Stair= +Inner Acacia Wood Stair= +Outer Acacia Wood Stair= +Acacia Wood Slab= +Aspen Wood Stair= +Inner Aspen Wood Stair= +Outer Aspen Wood Stair= +Aspen Wood Slab= +Stone Stair= +Inner Stone Stair= +Outer Stone Stair= +Stone Slab= +Cobblestone Stair= +Inner Cobblestone Stair= +Outer Cobblestone Stair= +Cobblestone Slab= +Mossy Cobblestone Stair= +Inner Mossy Cobblestone Stair= +Outer Mossy Cobblestone Stair= +Mossy Cobblestone Slab= +Stone Brick Stair= +Inner Stone Brick Stair= +Outer Stone Brick Stair= +Stone Brick Slab= +Stone Block Stair= +Inner Stone Block Stair= +Outer Stone Block Stair= +Stone Block Slab= +Desert Stone Stair= +Inner Desert Stone Stair= +Outer Desert Stone Stair= +Desert Stone Slab= +Desert Cobblestone Stair= +Inner Desert Cobblestone Stair= +Outer Desert Cobblestone Stair= +Desert Cobblestone Slab= +Desert Stone Brick Stair= +Inner Desert Stone Brick Stair= +Outer Desert Stone Brick Stair= +Desert Stone Brick Slab= +Desert Stone Block Stair= +Inner Desert Stone Block Stair= +Outer Desert Stone Block Stair= +Desert Stone Block Slab= +Sandstone Stair= +Inner Sandstone Stair= +Outer Sandstone Stair= +Sandstone Slab= +Sandstone Brick Stair= +Inner Sandstone Brick Stair= +Outer Sandstone Brick Stair= +Sandstone Brick Slab= +Sandstone Block Stair= +Inner Sandstone Block Stair= +Outer Sandstone Block Stair= +Sandstone Block Slab= +Desert Sandstone Stair= +Inner Desert Sandstone Stair= +Outer Desert Sandstone Stair= +Desert Sandstone Slab= +Desert Sandstone Brick Stair= +Inner Desert Sandstone Brick Stair= +Outer Desert Sandstone Brick Stair= +Desert Sandstone Brick Slab= +Desert Sandstone Block Stair= +Inner Desert Sandstone Block Stair= +Outer Desert Sandstone Block Stair= +Desert Sandstone Block Slab= +Silver Sandstone Stair= +Inner Silver Sandstone Stair= +Outer Silver Sandstone Stair= +Silver Sandstone Slab= +Silver Sandstone Brick Stair= +Inner Silver Sandstone Brick Stair= +Outer Silver Sandstone Brick Stair= +Silver Sandstone Brick Slab= +Silver Sandstone Block Stair= +Inner Silver Sandstone Block Stair= +Outer Silver Sandstone Block Stair= +Silver Sandstone Block Slab= +Obsidian Stair= +Inner Obsidian Stair= +Outer Obsidian Stair= +Obsidian Slab= +Obsidian Brick Stair= +Inner Obsidian Brick Stair= +Outer Obsidian Brick Stair= +Obsidian Brick Slab= +Obsidian Block Stair= +Inner Obsidian Block Stair= +Outer Obsidian Block Stair= +Obsidian Block Slab= +Brick Stair= +Inner Brick Stair= +Outer Brick Stair= +Brick Slab= +Steel Block Stair= +Inner Steel Block Stair= +Outer Steel Block Stair= +Steel Block Slab= +Tin Block Stair= +Inner Tin Block Stair= +Outer Tin Block Stair= +Tin Block Slab= +Copper Block Stair= +Inner Copper Block Stair= +Outer Copper Block Stair= +Copper Block Slab= +Bronze Block Stair= +Inner Bronze Block Stair= +Outer Bronze Block Stair= +Bronze Block Slab= +Gold Block Stair= +Inner Gold Block Stair= +Outer Gold Block Stair= +Gold Block Slab= +Ice Stair= +Inner Ice Stair= +Outer Ice Stair= +Ice Slab= +Snow Block Stair= +Inner Snow Block Stair= +Outer Snow Block Stair= +Snow Block Slab= diff --git a/mods/stairs/mod.conf b/mods/stairs/mod.conf new file mode 100644 index 0000000..7548fa7 --- /dev/null +++ b/mods/stairs/mod.conf @@ -0,0 +1,3 @@ +name = stairs +description = Minetest Game mod: stairs +depends = default diff --git a/mods/stairs/textures/stairs_glass_outer_stairside.png b/mods/stairs/textures/stairs_glass_outer_stairside.png new file mode 100644 index 0000000000000000000000000000000000000000..9b298c8bfccd6308589556672b13d982d9a76d5b GIT binary patch literal 255 zcmeAS@N?(olHy`uVBq!ia0y~yU=RRd4rT@h1`S>QUC>mrpFe;7`t{qlZ{NRv|M~OhuV24@|Ni~w&!2z){{8>| zf6m0tg$xV~EG0pHAj23oPfnY~z`#)G>Eak7A<25Mld)NWfn`HPlxStk?fM&PMw>SU zeSTwCHk&Dh$+toBL80K25V1vzj1Q^bk+WE`@B+&YIfZ93#rraCPu`9$j@`O$Zs6y+ z`|I{uF>Em9d(e=vq(S5li)Mn13qwORL&Lha_pa}o95eIroBFUC*85Wmb{%10U|{fc L^>bP0l+XkKp`Uq& literal 0 HcmV?d00001 diff --git a/mods/stairs/textures/stairs_glass_split.png b/mods/stairs/textures/stairs_glass_split.png new file mode 100644 index 0000000000000000000000000000000000000000..62879597850e75ff1e5258d14897c0902a4c67b7 GIT binary patch literal 249 zcmeAS@N?(olHy`uVBq!ia0y~yU=RRd4rT@h1`S>QUC>mrpFe;3^5xsNZ{NRv|M~OhuV26Z{Q2|u@85s_{{8>| zUpFd3kAZ=KwIs+7WEca(p=`E|3=9leo-U3d5|XS38JU_CL|8Y3rf}6XgTe~DWM4f Di-&KG literal 0 HcmV?d00001 diff --git a/mods/stairs/textures/stairs_glass_stairside.png b/mods/stairs/textures/stairs_glass_stairside.png new file mode 100644 index 0000000000000000000000000000000000000000..c4242943aa2fbb86d0a81f01d94938d816e85b03 GIT binary patch literal 249 zcmeAS@N?(olHy`uVBq!ia0y~yU=RRd4rT@h1`S>QU~S3{PpV>vKohuBn1Wr2DXwQKafcb z3=Db8*e5bDFywf;IEF|_vL0kiYIfjY*s#TK^�|Ih0MZe66d{;I5D_HV|mjj0Vj z3EpN#bDF<=&`m4ki+*5n=GaNy#%$)~hRRQCUwX0b*;%~oa}dLU488~aPLt&mE=UzK sIeRfYP-keEDE#@z?5V3C@B1zP%8*qhepY-M0|Nttr>mdKI;Vst06ULzY5)KL literal 0 HcmV?d00001 diff --git a/mods/stairs/textures/stairs_obsidian_glass_outer_stairside.png b/mods/stairs/textures/stairs_obsidian_glass_outer_stairside.png new file mode 100644 index 0000000000000000000000000000000000000000..0098f68364dce9e7ff264e709ea37069ba681e29 GIT binary patch literal 141 zcmeAS@N?(olHy`uVBq!ia0y~yU=RRdCT0c(hNQXTpBNYzI0Jk_Tp1YB1q1}-)eNiE z?dlj97#K@}{DK)Ap4~`eU|=xvba4#fxSq_>J4@=+g99%PaH!6ZnIR!1AuTbHV}p>v s#RCTzLJl1`z>;Lx7}4Xw;=##aZo~6?;^8DQ1_lNOPgg&ebxsLQ0Jjw-ssI20 literal 0 HcmV?d00001 diff --git a/mods/stairs/textures/stairs_obsidian_glass_split.png b/mods/stairs/textures/stairs_obsidian_glass_split.png new file mode 100644 index 0000000000000000000000000000000000000000..7647b9b0858e976a6b6dbfda04594bc1b66d0094 GIT binary patch literal 129 zcmeAS@N?(olHy`uVBq!ia0y~yU=RRdCT0c(hNQXTpBNYzI0Jk_Tp1YB1q1}-)eNiE z?dlj97#K@}{DK)Ap4~`eU|>-5ba4#fxSq_>J4@=+g98T+aH!9akaEyrVGLtZlbSHq gU}0AC3TB3_&Rkp6rZK%{U|?YIboFyt=akR{0LSAX9smFU literal 0 HcmV?d00001 diff --git a/mods/stairs/textures/stairs_obsidian_glass_stairside.png b/mods/stairs/textures/stairs_obsidian_glass_stairside.png new file mode 100644 index 0000000000000000000000000000000000000000..40b1754522a1cffc21bd24c8a6d55e51a4d62c3e GIT binary patch literal 142 zcmeAS@N?(olHy`uVBq!ia0y~yU=RRdCT0c(hNQXTpBNYzI0Jk_Tp1YB1q1}-)eNiE z?dlj97#K@}{DK)Ap4~`eU|=xzba4#fi1s~hD9B*I!@RM4!pxTGi#R(!yuH8^TcTd1 t7I7^|FKR7+_NNSiwnYm+l%1RzBjUm%@3K~@i-CcG!PC{xWt~$(69C=#Cr$tW literal 0 HcmV?d00001 diff --git a/mods/vessels/README.txt b/mods/vessels/README.txt new file mode 100644 index 0000000..c101c0c --- /dev/null +++ b/mods/vessels/README.txt @@ -0,0 +1,22 @@ +Minetest Game mod: vessels +========================== +See license.txt for license information. + +Authors of source code +---------------------- +Originally by Vanessa Ezekowitz (LGPLv2.1+) +Modified by Perttu Ahola (LGPLv2.1+) +Various Minetest Game developers and contributors (LGPLv2.1+) + +Authors of media (textures) +--------------------------- +All not listed below, Vanessa Ezekowitz (CC BY-SA 3.0) + +The following textures were modified by Thomas-S (CC BY-SA 3.0): + vessels_drinking_glass.png + vessels_drinking_glass_inv.png + vessels_glass_bottle.png + vessels_steel_bottle.png + +The following texture was created by Wuzzy (CC BY-SA 3.0): + vessels_shelf_slot.png (based on vessels_glass_bottle.png) diff --git a/mods/vessels/init.lua b/mods/vessels/init.lua new file mode 100644 index 0000000..a2f2471 --- /dev/null +++ b/mods/vessels/init.lua @@ -0,0 +1,233 @@ +-- vessels/init.lua + +-- Minetest Game mod: vessels +-- See README.txt for licensing and other information. + +-- Load support for MT game translation. +local S = minetest.get_translator("vessels") + + +local vessels_shelf_formspec = + "size[8,7;]" .. + "list[context;vessels;0,0.3;8,2;]" .. + "list[current_player;main;0,2.85;8,1;]" .. + "list[current_player;main;0,4.08;8,3;8]" .. + "listring[context;vessels]" .. + "listring[current_player;main]" .. + default.get_hotbar_bg(0, 2.85) + +local function update_vessels_shelf(pos) + local meta = minetest.get_meta(pos) + local inv = meta:get_inventory() + local invlist = inv:get_list("vessels") + + local formspec = vessels_shelf_formspec + -- Inventory slots overlay + local vx, vy = 0, 0.3 + local n_items = 0 + for i = 1, 16 do + if i == 9 then + vx = 0 + vy = vy + 1 + end + if not invlist or invlist[i]:is_empty() then + formspec = formspec .. + "image[" .. vx .. "," .. vy .. ";1,1;vessels_shelf_slot.png]" + else + local stack = invlist[i] + if not stack:is_empty() then + n_items = n_items + stack:get_count() + end + end + vx = vx + 1 + end + meta:set_string("formspec", formspec) + if n_items == 0 then + meta:set_string("infotext", S("Empty Vessels Shelf")) + else + meta:set_string("infotext", S("Vessels Shelf (@1 items)", n_items)) + end +end + +local vessels_shelf_def = { + description = S("Vessels Shelf"), + tiles = {"default_wood.png", "default_wood.png", "default_wood.png", + "default_wood.png", "vessels_shelf.png", "vessels_shelf.png"}, + paramtype2 = "facedir", + is_ground_content = false, + groups = {choppy = 3, oddly_breakable_by_hand = 2, flammable = 3}, + sounds = default.node_sound_wood_defaults(), + + on_construct = function(pos) + local meta = minetest.get_meta(pos) + update_vessels_shelf(pos) + local inv = meta:get_inventory() + inv:set_size("vessels", 8 * 2) + end, + can_dig = function(pos,player) + local inv = minetest.get_meta(pos):get_inventory() + return inv:is_empty("vessels") + end, + allow_metadata_inventory_put = function(pos, listname, index, stack, player) + if minetest.get_item_group(stack:get_name(), "vessel") ~= 0 then + return stack:get_count() + end + return 0 + end, + on_blast = function(pos) + local drops = {} + default.get_inventory_drops(pos, "vessels", drops) + drops[#drops + 1] = "vessels:shelf" + minetest.remove_node(pos) + return drops + end, + on_metadata_inventory_put = function(pos) + update_vessels_shelf(pos) + end, + on_metadata_inventory_take = function(pos) + update_vessels_shelf(pos) + end, + on_metadata_inventory_move = function(pos) + update_vessels_shelf(pos) + end, +} +default.set_inventory_action_loggers(vessels_shelf_def, "vessels shelf") +minetest.register_node("vessels:shelf", vessels_shelf_def) + +minetest.register_craft({ + output = "vessels:shelf", + recipe = { + {"group:wood", "group:wood", "group:wood"}, + {"group:vessel", "group:vessel", "group:vessel"}, + {"group:wood", "group:wood", "group:wood"}, + } +}) + +minetest.register_node("vessels:glass_bottle", { + description = S("Empty Glass Bottle"), + drawtype = "plantlike", + tiles = {"vessels_glass_bottle.png"}, + inventory_image = "vessels_glass_bottle.png", + wield_image = "vessels_glass_bottle.png", + paramtype = "light", + is_ground_content = false, + walkable = false, + selection_box = { + type = "fixed", + fixed = {-0.25, -0.5, -0.25, 0.25, 0.3, 0.25} + }, + groups = {vessel = 1, dig_immediate = 3, attached_node = 1}, + sounds = default.node_sound_glass_defaults(), +}) + +minetest.register_craft( { + output = "vessels:glass_bottle 10", + recipe = { + {"default:glass", "", "default:glass"}, + {"default:glass", "", "default:glass"}, + {"", "default:glass", ""} + } +}) + +minetest.register_node("vessels:drinking_glass", { + description = S("Empty Drinking Glass"), + drawtype = "plantlike", + tiles = {"vessels_drinking_glass.png"}, + inventory_image = "vessels_drinking_glass_inv.png", + wield_image = "vessels_drinking_glass.png", + paramtype = "light", + is_ground_content = false, + walkable = false, + selection_box = { + type = "fixed", + fixed = {-0.25, -0.5, -0.25, 0.25, 0.3, 0.25} + }, + groups = {vessel = 1, dig_immediate = 3, attached_node = 1}, + sounds = default.node_sound_glass_defaults(), +}) + +minetest.register_craft( { + output = "vessels:drinking_glass 14", + recipe = { + {"default:glass", "", "default:glass"}, + {"default:glass", "", "default:glass"}, + {"default:glass", "default:glass", "default:glass"} + } +}) + +minetest.register_node("vessels:steel_bottle", { + description = S("Empty Heavy Steel Bottle"), + drawtype = "plantlike", + tiles = {"vessels_steel_bottle.png"}, + inventory_image = "vessels_steel_bottle.png", + wield_image = "vessels_steel_bottle.png", + paramtype = "light", + is_ground_content = false, + walkable = false, + selection_box = { + type = "fixed", + fixed = {-0.25, -0.5, -0.25, 0.25, 0.3, 0.25} + }, + groups = {vessel = 1, dig_immediate = 3, attached_node = 1}, + sounds = default.node_sound_defaults(), +}) + +minetest.register_craft( { + output = "vessels:steel_bottle 5", + recipe = { + {"default:steel_ingot", "", "default:steel_ingot"}, + {"default:steel_ingot", "", "default:steel_ingot"}, + {"", "default:steel_ingot", ""} + } +}) + + +-- Glass and steel recycling + +minetest.register_craftitem("vessels:glass_fragments", { + description = S("Glass Fragments"), + inventory_image = "vessels_glass_fragments.png", +}) + +minetest.register_craft( { + type = "shapeless", + output = "vessels:glass_fragments", + recipe = { + "vessels:glass_bottle", + "vessels:glass_bottle", + }, +}) + +minetest.register_craft( { + type = "shapeless", + output = "vessels:glass_fragments", + recipe = { + "vessels:drinking_glass", + "vessels:drinking_glass", + }, +}) + +minetest.register_craft({ + type = "cooking", + output = "default:glass", + recipe = "vessels:glass_fragments", +}) + +minetest.register_craft( { + type = "cooking", + output = "default:steel_ingot", + recipe = "vessels:steel_bottle", +}) + +minetest.register_craft({ + type = "fuel", + recipe = "vessels:shelf", + burntime = 30, +}) + +-- Register glass fragments as dungeon loot +if minetest.global_exists("dungeon_loot") then + dungeon_loot.register({ + name = "vessels:glass_fragments", chance = 0.35, count = {1, 4} + }) +end diff --git a/mods/vessels/license.txt b/mods/vessels/license.txt new file mode 100644 index 0000000..3bd2951 --- /dev/null +++ b/mods/vessels/license.txt @@ -0,0 +1,52 @@ +License of source code +---------------------- + +GNU Lesser General Public License, version 2.1 +Copyright (C) 2012-2016 Vanessa Ezekowitz +Copyright (C) 2012-2016 celeron55, Perttu Ahola +Copyright (C) 2012-2016 Various Minetest Game developers and contributors + +This program is free software; you can redistribute it and/or modify it under the terms +of the GNU Lesser General Public License as published by the Free Software Foundation; +either version 2.1 of the License, or (at your option) any later version. + +This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; +without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. +See the GNU Lesser General Public License for more details: +https://www.gnu.org/licenses/old-licenses/lgpl-2.1.html + + +Licenses of media (textures) +---------------------------- + +Attribution-ShareAlike 3.0 Unported (CC BY-SA 3.0) +Copyright (C) 2012-2016 Vanessa Ezekowitz +Copyright (C) 2016 Thomas-S + +You are free to: +Share — copy and redistribute the material in any medium or format. +Adapt — remix, transform, and build upon the material for any purpose, even commercially. +The licensor cannot revoke these freedoms as long as you follow the license terms. + +Under the following terms: + +Attribution — You must give appropriate credit, provide a link to the license, and +indicate if changes were made. You may do so in any reasonable manner, but not in any way +that suggests the licensor endorses you or your use. + +ShareAlike — If you remix, transform, or build upon the material, you must distribute +your contributions under the same license as the original. + +No additional restrictions — You may not apply legal terms or technological measures that +legally restrict others from doing anything the license permits. + +Notices: + +You do not have to comply with the license for elements of the material in the public +domain or where your use is permitted by an applicable exception or limitation. +No warranties are given. The license may not give you all of the permissions necessary +for your intended use. For example, other rights such as publicity, privacy, or moral +rights may limit how you use the material. + +For more details: +http://creativecommons.org/licenses/by-sa/3.0/ diff --git a/mods/vessels/locale/template.txt b/mods/vessels/locale/template.txt new file mode 100644 index 0000000..e6e5f69 --- /dev/null +++ b/mods/vessels/locale/template.txt @@ -0,0 +1,8 @@ +# textdomain: vessels +Empty Vessels Shelf= +Vessels Shelf (@1 items)= +Vessels Shelf= +Empty Glass Bottle= +Empty Drinking Glass= +Empty Heavy Steel Bottle= +Glass Fragments= diff --git a/mods/vessels/locale/vessels.bg.tr b/mods/vessels/locale/vessels.bg.tr new file mode 100644 index 0000000..4024e9b --- /dev/null +++ b/mods/vessels/locale/vessels.bg.tr @@ -0,0 +1,8 @@ +# textdomain: vessels +Empty Vessels Shelf=Полица с празни съдове +Vessels Shelf (@1 items)=Полица със съдове (@1 предмета) +Vessels Shelf=Полица със съдове +Empty Glass Bottle=Празно стъклено шише +Empty Drinking Glass=Празна чаша за вода +Empty Heavy Steel Bottle=Празно тежко стоманено шише +Glass Fragments=Стъклено парче diff --git a/mods/vessels/locale/vessels.da.tr b/mods/vessels/locale/vessels.da.tr new file mode 100644 index 0000000..13c7a26 --- /dev/null +++ b/mods/vessels/locale/vessels.da.tr @@ -0,0 +1,8 @@ +# textdomain: vessels +Empty Vessels Shelf=Hylde til tomme beholdere +Vessels Shelf (@1 items)=Hylde til beholdere (@1 beholdere) +Vessels Shelf=Hylde til beholdere +Empty Glass Bottle=Tom glasflaske +Empty Drinking Glass=Tomt drikkeglas +Empty Heavy Steel Bottle=Tom tung stålflaske +Glass Fragments=Glasstykker diff --git a/mods/vessels/locale/vessels.de.tr b/mods/vessels/locale/vessels.de.tr new file mode 100644 index 0000000..162e359 --- /dev/null +++ b/mods/vessels/locale/vessels.de.tr @@ -0,0 +1,8 @@ +# textdomain: vessels +Empty Vessels Shelf=Leeres Gefäßregal +Vessels Shelf (@1 items)=Gefäßregal (@1 Gegenstände) +Vessels Shelf=Gefäßregal +Empty Glass Bottle=Leere Glasflasche +Empty Drinking Glass=Leeres Trinkglas +Empty Heavy Steel Bottle=Leere schwere Stahlflasche +Glass Fragments=Glasfragmente diff --git a/mods/vessels/locale/vessels.eo.tr b/mods/vessels/locale/vessels.eo.tr new file mode 100644 index 0000000..63a955d --- /dev/null +++ b/mods/vessels/locale/vessels.eo.tr @@ -0,0 +1,8 @@ +# textdomain: vessels +Empty Vessels Shelf=Malplena vaza plataĵo +Vessels Shelf (@1 items)=Vaza plataĵo (@1 objektoj) +Vessels Shelf=Vaza plataĵo +Empty Glass Bottle=Malplena vitra botelo +Empty Drinking Glass=Malplena glaso +Empty Heavy Steel Bottle=Malplena peza ŝtala botelo +Glass Fragments=Vitraj eroj diff --git a/mods/vessels/locale/vessels.es.tr b/mods/vessels/locale/vessels.es.tr new file mode 100644 index 0000000..d6131d8 --- /dev/null +++ b/mods/vessels/locale/vessels.es.tr @@ -0,0 +1,8 @@ +# textdomain: vessels +Empty Vessels Shelf=Estante de vasijas vacío +Vessels Shelf (@1 items)=Estante de vasijas (@1 objetos) +Vessels Shelf=Estante de vasijas +Empty Glass Bottle=Botella de vidrio vacía +Empty Drinking Glass=Vaso para beber vacío +Empty Heavy Steel Bottle=Botella de acero vacía +Glass Fragments=Fragmentos de vidrio diff --git a/mods/vessels/locale/vessels.eu.tr b/mods/vessels/locale/vessels.eu.tr new file mode 100644 index 0000000..5b5301a --- /dev/null +++ b/mods/vessels/locale/vessels.eu.tr @@ -0,0 +1,8 @@ +# textdomain: vessels +Empty Vessels Shelf=Ontzi-apal hutsa +Vessels Shelf (@1 items)=Ontzi-apala (@1 objektu) +Vessels Shelf=Ontzi-apala +Empty Glass Bottle=Beirazko botila hutsa +Empty Drinking Glass=Edateko edalontzi hutsa +Empty Heavy Steel Bottle=Altzairu astunezko botila hutsa +Glass Fragments=Beira-zatiak diff --git a/mods/vessels/locale/vessels.fr.tr b/mods/vessels/locale/vessels.fr.tr new file mode 100644 index 0000000..f099c19 --- /dev/null +++ b/mods/vessels/locale/vessels.fr.tr @@ -0,0 +1,8 @@ +# textdomain: vessels +Empty Vessels Shelf=Etagère à récipient vide +Vessels Shelf (@1 items)=Etagère à récipient (@1 articles) +Vessels Shelf=Etagère à récipient +Empty Glass Bottle=Bouteille de verre vide +Empty Drinking Glass=Verre vide +Empty Heavy Steel Bottle=Bouteille d'acier lourde vide +Glass Fragments=Fragments de verre diff --git a/mods/vessels/locale/vessels.hu.tr b/mods/vessels/locale/vessels.hu.tr new file mode 100644 index 0000000..36557fa --- /dev/null +++ b/mods/vessels/locale/vessels.hu.tr @@ -0,0 +1,8 @@ +# textdomain: vessels +Empty Vessels Shelf=Üres edény polc +Vessels Shelf (@1 items)=Edény polc (@1 tárgy) +Vessels Shelf=Edény polc +Empty Glass Bottle=Üres üvegpalack +Empty Drinking Glass=Üres palack +Empty Heavy Steel Bottle=Üres nehéz acél palack +Glass Fragments=Üvegszilánkok diff --git a/mods/vessels/locale/vessels.id.tr b/mods/vessels/locale/vessels.id.tr new file mode 100644 index 0000000..f80fbc3 --- /dev/null +++ b/mods/vessels/locale/vessels.id.tr @@ -0,0 +1,8 @@ +# textdomain: vessels +Empty Vessels Shelf=Rak Bejana Kosong +Vessels Shelf (@1 items)=Rak Bejana (@1 barang) +Vessels Shelf=Rak Bejana +Empty Glass Bottle=Botol Kaca Kosong +Empty Drinking Glass=Gelas Minum Kosong +Empty Heavy Steel Bottle=Botol Baja Berat Kosong +Glass Fragments=Pecahan Kaca diff --git a/mods/vessels/locale/vessels.it.tr b/mods/vessels/locale/vessels.it.tr new file mode 100644 index 0000000..70ea575 --- /dev/null +++ b/mods/vessels/locale/vessels.it.tr @@ -0,0 +1,8 @@ +# textdomain: vessels +Empty Vessels Shelf=Scaffale per contenitori vuoto +Vessels Shelf (@1 items)=Scaffale per contenitori (@1 oggetti) +Vessels Shelf=Scaffale per contenitori +Empty Glass Bottle=Bottiglia di vetro vuota +Empty Drinking Glass=Bicchiere di vetro vuoto +Empty Heavy Steel Bottle=Bottigia di metallo pesante vuota +Glass Fragments=Frammenti di vetro diff --git a/mods/vessels/locale/vessels.ja.tr b/mods/vessels/locale/vessels.ja.tr new file mode 100644 index 0000000..451489a --- /dev/null +++ b/mods/vessels/locale/vessels.ja.tr @@ -0,0 +1,8 @@ +# textdomain: vessels +Empty Vessels Shelf=空の瓶の棚 +Vessels Shelf (@1 items)=瓶の棚(@1 本) +Vessels Shelf=瓶の棚 +Empty Glass Bottle=空のガラス瓶 +Empty Drinking Glass=空のガラスコップ +Empty Heavy Steel Bottle=空の重い鉄瓶 +Glass Fragments=ガラスの破片 diff --git a/mods/vessels/locale/vessels.jbo.tr b/mods/vessels/locale/vessels.jbo.tr new file mode 100644 index 0000000..6e1145e --- /dev/null +++ b/mods/vessels/locale/vessels.jbo.tr @@ -0,0 +1,8 @@ +# textdomain: vessels +Empty Vessels Shelf=.i ti kunti ke vasru kajna +Vessels Shelf (@1 items)=.i lo ti vasru kajna cu vasru lo @1 dacti +Vessels Shelf=lo vasru kajna +Empty Glass Bottle=lo blacybo'i be no da +Empty Drinking Glass=lo blacykabri be no da +Empty Heavy Steel Bottle=lo tilju ke gasta botpi be no da +Glass Fragments=lo derxi be lo blaci spisa diff --git a/mods/vessels/locale/vessels.lv.tr b/mods/vessels/locale/vessels.lv.tr new file mode 100644 index 0000000..2e5127f --- /dev/null +++ b/mods/vessels/locale/vessels.lv.tr @@ -0,0 +1,8 @@ +# textdomain: vessels +Empty Vessels Shelf=Tukšs trauku plaukts +Vessels Shelf (@1 items)=Trauku plaukts ar @1 priekšmetiem +Vessels Shelf=Trauku plaukts +Empty Glass Bottle=Tukša stikla pudele +Empty Drinking Glass=Tukša glāze +Empty Heavy Steel Bottle=Tukša tērauda pudele +Glass Fragments=Stikla skaidas diff --git a/mods/vessels/locale/vessels.ms.tr b/mods/vessels/locale/vessels.ms.tr new file mode 100644 index 0000000..db6e62f --- /dev/null +++ b/mods/vessels/locale/vessels.ms.tr @@ -0,0 +1,8 @@ +# textdomain: vessels +Empty Vessels Shelf=Rak Bekas Kaca Kosong +Vessels Shelf (@1 items)=Rak Bekas Kaca (@1 item) +Vessels Shelf=Rak Bekas Kaca +Empty Glass Bottle=Botol Kaca Kosong +Empty Drinking Glass=Gelas Minuman Kosong +Empty Heavy Steel Bottle=Botol Keluli Berat Kosong +Glass Fragments=Serpihan Kaca diff --git a/mods/vessels/locale/vessels.pl.tr b/mods/vessels/locale/vessels.pl.tr new file mode 100644 index 0000000..5e91da9 --- /dev/null +++ b/mods/vessels/locale/vessels.pl.tr @@ -0,0 +1,8 @@ +# textdomain: vessels +Empty Vessels Shelf=Pusta półka na naczynia +Vessels Shelf (@1 items)=Półka na naczynia (@1 przedmiotów) +Vessels Shelf=Półka na naczynia +Empty Glass Bottle=Pusta szklana butelka +Empty Drinking Glass=Pusta butelka do picia +Empty Heavy Steel Bottle=Pusta stalowa butelka +Glass Fragments=Odłamki szkła diff --git a/mods/vessels/locale/vessels.pt_BR.tr b/mods/vessels/locale/vessels.pt_BR.tr new file mode 100644 index 0000000..c22cb06 --- /dev/null +++ b/mods/vessels/locale/vessels.pt_BR.tr @@ -0,0 +1,8 @@ +# textdomain: vessels +Empty Vessels Shelf=Prateleira de Vasos Vazia +Vessels Shelf (@1 items)=Prateleira de Vasos (@1 itens) +Vessels Shelf=Prateleira de Vasos +Empty Glass Bottle=Garrafa de Vidro Vazia +Empty Drinking Glass=Copo Vazio +Empty Heavy Steel Bottle=Garrafa de Aço Pesada Vazia +Glass Fragments=Cacos de Vidro diff --git a/mods/vessels/locale/vessels.ru.tr b/mods/vessels/locale/vessels.ru.tr new file mode 100644 index 0000000..e9f276a --- /dev/null +++ b/mods/vessels/locale/vessels.ru.tr @@ -0,0 +1,8 @@ +# textdomain: vessels +Empty Vessels Shelf=Полка с пустыми сосудами +Vessels Shelf (@1 items)=Полка с сосудами (@1 штук) +Vessels Shelf=Полка с сосудами +Empty Glass Bottle=Пустая стеклянная бутылка +Empty Drinking Glass=Пустой стакан +Empty Heavy Steel Bottle=Пустая стальная бутылка +Glass Fragments=Стеклянные осколки diff --git a/mods/vessels/locale/vessels.sk.tr b/mods/vessels/locale/vessels.sk.tr new file mode 100644 index 0000000..6ec640b --- /dev/null +++ b/mods/vessels/locale/vessels.sk.tr @@ -0,0 +1,8 @@ +# textdomain: vessels +Empty Vessels Shelf=Prázdna polica na fľašky +Vessels Shelf (@1 items)=Polica na fľašky (@1 položka/y) +Vessels Shelf=Polica na fľašky +Empty Glass Bottle=Prázdna sklenená fľaša +Empty Drinking Glass=Prázdny pohár na pitie +Empty Heavy Steel Bottle=Prázdna oceľová fľaša +Glass Fragments=Časti skla diff --git a/mods/vessels/locale/vessels.sv.tr b/mods/vessels/locale/vessels.sv.tr new file mode 100644 index 0000000..48e76e2 --- /dev/null +++ b/mods/vessels/locale/vessels.sv.tr @@ -0,0 +1,8 @@ +# textdomain: vessels +Empty Vessels Shelf=Tom kärlhylla +Vessels Shelf (@1 items)=Kärlhylla (@1 saker) +Vessels Shelf=Kärlhylla +Empty Glass Bottle=Tom glasflaska +Empty Drinking Glass=Tom drycksflaska +Empty Heavy Steel Bottle=Tom tungstålsflaska +Glass Fragments=Glasbitar diff --git a/mods/vessels/locale/vessels.uk.tr b/mods/vessels/locale/vessels.uk.tr new file mode 100644 index 0000000..34165d9 --- /dev/null +++ b/mods/vessels/locale/vessels.uk.tr @@ -0,0 +1,8 @@ +# textdomain: vessels +Empty Vessels Shelf=Пуста полиця для посуду +Vessels Shelf (@1 items)=Полиця для посуду (@1 предм.) +Vessels Shelf=Полиця для посуду +Empty Glass Bottle=Порожня скляна пляшка +Empty Drinking Glass=Порожня склянка +Empty Heavy Steel Bottle=Порожня важка сталева пляшка +Glass Fragments=Скляні уламки diff --git a/mods/vessels/locale/vessels.zh_CN.tr b/mods/vessels/locale/vessels.zh_CN.tr new file mode 100644 index 0000000..e303e24 --- /dev/null +++ b/mods/vessels/locale/vessels.zh_CN.tr @@ -0,0 +1,8 @@ +# textdomain: vessels +Empty Vessels Shelf=空容器架 +Vessels Shelf (@1 items)=容器架(@1项) +Vessels Shelf=容器架 +Empty Glass Bottle=空玻璃瓶 +Empty Drinking Glass=空水杯 +Empty Heavy Steel Bottle=空重型钢瓶 +Glass Fragments=玻璃碎片 diff --git a/mods/vessels/locale/vessels.zh_TW.tr b/mods/vessels/locale/vessels.zh_TW.tr new file mode 100644 index 0000000..6aecb35 --- /dev/null +++ b/mods/vessels/locale/vessels.zh_TW.tr @@ -0,0 +1,8 @@ +# textdomain: vessels +Empty Vessels Shelf=空容器架 +Vessels Shelf (@1 items)=容器架(@1項) +Vessels Shelf=容器架 +Empty Glass Bottle=空玻璃瓶 +Empty Drinking Glass=空水杯 +Empty Heavy Steel Bottle=空重型鋼瓶 +Glass Fragments=玻璃碎片 diff --git a/mods/vessels/mod.conf b/mods/vessels/mod.conf new file mode 100644 index 0000000..eba9076 --- /dev/null +++ b/mods/vessels/mod.conf @@ -0,0 +1,4 @@ +name = vessels +description = Minetest Game mod: vessels +depends = default +optional_depends = dungeon_loot diff --git a/mods/vessels/textures/vessels_drinking_glass.png b/mods/vessels/textures/vessels_drinking_glass.png new file mode 100644 index 0000000000000000000000000000000000000000..aef7329626138067fdb3a130b0c8773e498806b3 GIT binary patch literal 194 zcmeAS@N?(olHy`uVBq!ia0y~yU=RRd4mJh`2Kmqb6B!s7Iz3$+LoEE?`WtdJ7zn)n zzyC4wkx2K#0)c}E7b+-O%%a={wE@8J2Vn4~YW-nIUm`%6q+5(nhbh)Cn;-bIdW}G%*kR*KQqmI>YR1C3=9kmp00i_ I>zopr0J@1ZUjP6A literal 0 HcmV?d00001 diff --git a/mods/vessels/textures/vessels_glass_bottle.png b/mods/vessels/textures/vessels_glass_bottle.png new file mode 100644 index 0000000000000000000000000000000000000000..2a46aafd05d27d5b548d596b9af25fb3ab99116e GIT binary patch literal 176 zcmeAS@N?(olHy`uVBq!ia0y~yU=RRd7G?$phPQVgfdo_nd_r7T_mywibN1G)r{^!< z-+Scpu`@TeZas7G;FZ-|PjuwQUb_BpW@D}-o6J!L1_s8GAirP+hi5m^7#J9=JY5_^ zIIbrrDDV~dH(by;*v+i4=Ecc?l`Lrz&9Y9$Mg|rR5QU$`RC8SXV2cYwN1Ts>&dxuR~s8A{Qv*|?AeDeUc9TT>)o*7P(wol#0_7* z{CM~7^P4yCo;`bcMwZ8$fq}ugB*-tAf$`ym38#)6HrEs8`1kI{@qOE8PMp}$=Iid@ zU}tS1BhK>e*~9DS&!0QKY4OaNGbVMkx7XLzIXGBY=(AmaymcxA1H*hz7sn6@$<%|P zOickI4hKI^IQH({yLH_g|A%re`e(s>WtphM$I#24cOLr1(&Z8M+-OhaZMH7++Gg7c zw{6peHNVMJPwhHB-*Qq**Wc9Ev{!~!=`9oX<;%SO8N1L*P;twNp!sK4tGKE-E{Itc z!j#&neP}k5>#ZVN!Mb&`UT+udUBB-BrbP0l+XkK6FD3y literal 0 HcmV?d00001 diff --git a/mods/vessels/textures/vessels_shelf.png b/mods/vessels/textures/vessels_shelf.png new file mode 100644 index 0000000000000000000000000000000000000000..87c69b28954009b8d719d477168a53fd91cde343 GIT binary patch literal 354 zcmeAS@N?(olHy`uVBq!ia0y~yU=RRd4rT@h1`S>QU5< zACL0&(3KT>`0Fe$0|UcSPZ!4!iOas{E($d%h`3%XR@^adfo4F~vT0%e|F<{#7{6`* zy60ibhr^nt9U?tU1wE;}HYRgZZz^XimT)XNy(?_VBA)dHa!)s}jEnum!Yrj9K5K>d zHnw*^CaT+a98*xyu8Q2z`)??>gTe~ HDWM4flWB`% literal 0 HcmV?d00001 diff --git a/mods/vessels/textures/vessels_shelf_slot.png b/mods/vessels/textures/vessels_shelf_slot.png new file mode 100644 index 0000000000000000000000000000000000000000..93a729e511ce69cfbfb0bc3a47d72093d3fc2274 GIT binary patch literal 130 zcmeAS@N?(olHy`uVBq!ia0y~yU=RRdMrH;E236Z!B?bltwg8_HR|W=#fPerA?%DSl z7#J8!g8YIR9G=}sV_;y=@^o9f4z>(x$YU|?YIboFyt=akR{01f>ct^fc4 literal 0 HcmV?d00001 diff --git a/mods/vessels/textures/vessels_steel_bottle.png b/mods/vessels/textures/vessels_steel_bottle.png new file mode 100644 index 0000000000000000000000000000000000000000..169930a38dbb9306b7b8d1fc73acd916b1419e37 GIT binary patch literal 196 zcmeAS@N?(olHy`uVBq!ia0y~yU=RRd4mJh`2Kmqb6B!s7x;bP0l+XkKKto5x literal 0 HcmV?d00001 diff --git a/mods/wool/README.txt b/mods/wool/README.txt new file mode 100644 index 0000000..31febdf --- /dev/null +++ b/mods/wool/README.txt @@ -0,0 +1,16 @@ +Minetest Game mod: wool +======================= +See license.txt for license information. + +Authors of source code +---------------------- +Originally by Perttu Ahola (celeron55) (MIT) +Various Minetest Game developers and contributors (MIT) + +Authors of media (textures) +--------------------------- +Cisoun (CC BY-SA 3.0): + wool_black.png wool_brown.png wool_dark_green.png wool_green.png + wool_magenta.png wool_pink.png wool_violet.png wool_yellow.png + wool_blue.png wool_cyan.png wool_dark_grey.png wool_grey.png + wool_orange.png wool_red.png wool_white.png diff --git a/mods/wool/init.lua b/mods/wool/init.lua new file mode 100644 index 0000000..87bd427 --- /dev/null +++ b/mods/wool/init.lua @@ -0,0 +1,54 @@ +-- wool/init.lua + +-- Load support for MT game translation. +local S = minetest.get_translator("wool") + +local dyes = dye.dyes + +for i = 1, #dyes do + local name, desc = unpack(dyes[i]) + + local color_group = "color_" .. name + + minetest.register_node("wool:" .. name, { + description = S(desc .. " Wool"), + tiles = {"wool_" .. name .. ".png"}, + is_ground_content = false, + groups = {snappy = 2, choppy = 2, oddly_breakable_by_hand = 3, + flammable = 3, wool = 1, [color_group] = 1}, + sounds = default.node_sound_defaults(), + }) + + minetest.register_craft{ + type = "shapeless", + output = "wool:" .. name, + recipe = {"group:dye," .. color_group, "group:wool"}, + } +end + +-- Legacy +-- Backwards compatibility with jordach's 16-color wool mod +minetest.register_alias("wool:dark_blue", "wool:blue") +minetest.register_alias("wool:gold", "wool:yellow") + +-- Dummy calls to S() to allow translation scripts to detect the strings. +-- To update this run: +-- for _,e in ipairs(dye.dyes) do print(("S(%q)"):format(e[2].." Wool")) end + +--[[ +S("White Wool") +S("Grey Wool") +S("Dark Grey Wool") +S("Black Wool") +S("Violet Wool") +S("Blue Wool") +S("Cyan Wool") +S("Dark Green Wool") +S("Green Wool") +S("Yellow Wool") +S("Brown Wool") +S("Orange Wool") +S("Red Wool") +S("Magenta Wool") +S("Pink Wool") +--]] diff --git a/mods/wool/license.txt b/mods/wool/license.txt new file mode 100644 index 0000000..5dfc751 --- /dev/null +++ b/mods/wool/license.txt @@ -0,0 +1,60 @@ +License of source code +---------------------- + +The MIT License (MIT) +Copyright (C) 2012-2016 Perttu Ahola (celeron55) +Copyright (C) 2012-2016 Various Minetest Game developers and contributors + +Permission is hereby granted, free of charge, to any person obtaining a copy of this +software and associated documentation files (the "Software"), to deal in the Software +without restriction, including without limitation the rights to use, copy, modify, merge, +publish, distribute, sublicense, and/or sell copies of the Software, and to permit +persons to whom the Software is furnished to do so, subject to the following conditions: + +The above copyright notice and this permission notice shall be included in all copies or +substantial portions of the Software. + +THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, +INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR +PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE +FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR +OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER +DEALINGS IN THE SOFTWARE. + +For more details: +https://opensource.org/licenses/MIT + + +Licenses of media (textures) +---------------------------- + +Attribution-ShareAlike 3.0 Unported (CC BY-SA 3.0) +Copyright (C) 2012-2016 Cisoun + +You are free to: +Share — copy and redistribute the material in any medium or format. +Adapt — remix, transform, and build upon the material for any purpose, even commercially. +The licensor cannot revoke these freedoms as long as you follow the license terms. + +Under the following terms: + +Attribution — You must give appropriate credit, provide a link to the license, and +indicate if changes were made. You may do so in any reasonable manner, but not in any way +that suggests the licensor endorses you or your use. + +ShareAlike — If you remix, transform, or build upon the material, you must distribute +your contributions under the same license as the original. + +No additional restrictions — You may not apply legal terms or technological measures that +legally restrict others from doing anything the license permits. + +Notices: + +You do not have to comply with the license for elements of the material in the public +domain or where your use is permitted by an applicable exception or limitation. +No warranties are given. The license may not give you all of the permissions necessary +for your intended use. For example, other rights such as publicity, privacy, or moral +rights may limit how you use the material. + +For more details: +http://creativecommons.org/licenses/by-sa/3.0/ diff --git a/mods/wool/locale/template.txt b/mods/wool/locale/template.txt new file mode 100644 index 0000000..316cd2c --- /dev/null +++ b/mods/wool/locale/template.txt @@ -0,0 +1,16 @@ +# textdomain: wool +White Wool= +Grey Wool= +Dark Grey Wool= +Black Wool= +Violet Wool= +Blue Wool= +Cyan Wool= +Dark Green Wool= +Green Wool= +Yellow Wool= +Brown Wool= +Orange Wool= +Red Wool= +Magenta Wool= +Pink Wool= diff --git a/mods/wool/locale/wool.bg.tr b/mods/wool/locale/wool.bg.tr new file mode 100644 index 0000000..c9b75aa --- /dev/null +++ b/mods/wool/locale/wool.bg.tr @@ -0,0 +1,16 @@ +# textdomain: wool +White Wool=Бяла вълна +Grey Wool=Сива вълна +Dark Grey Wool=Тъмно-сива вълна +Black Wool=Черна вълна +Violet Wool=Лилава вълна +Blue Wool=Синя вълна +Cyan Wool=Светло-синя вълна +Dark Green Wool=Масленозелена вълна +Green Wool=Зелена вълна +Yellow Wool=Жълта вълна +Brown Wool=Кафява вълна +Orange Wool=Оранжева вълна +Red Wool=Червена вълна +Magenta Wool=Пурпурна вълна +Pink Wool=Розова вълна diff --git a/mods/wool/locale/wool.da.tr b/mods/wool/locale/wool.da.tr new file mode 100644 index 0000000..019aecd --- /dev/null +++ b/mods/wool/locale/wool.da.tr @@ -0,0 +1,16 @@ +# textdomain: wool +White Wool=Hvid uld +Grey Wool=Grå uld +Dark Grey Wool=Mørkegrå uld +Black Wool=Sort uld +Violet Wool=Violet uld +Blue Wool=Blå uld +Cyan Wool=Cyanfarvet uld +Dark Green Wool=Mørkegrøn uld +Green Wool=Grøn uld +Yellow Wool=Gul uld +Brown Wool=Brun uld +Orange Wool=Orange uld +Red Wool=Rød uld +Magenta Wool=Magentafarvet uld +Pink Wool=Lyserød uld diff --git a/mods/wool/locale/wool.de.tr b/mods/wool/locale/wool.de.tr new file mode 100644 index 0000000..9b6b8ab --- /dev/null +++ b/mods/wool/locale/wool.de.tr @@ -0,0 +1,16 @@ +# textdomain: wool +White Wool=Weiße Wolle +Grey Wool=Graue Wolle +Dark Grey Wool=Dunkelgraue Wolle +Black Wool=Schwarze Wolle +Violet Wool=Violette Wolle +Blue Wool=Blaue Wolle +Cyan Wool=Türkise Wolle +Dark Green Wool=Dunkelgrüne Wolle +Green Wool=Grüne Wolle +Yellow Wool=Gelbe Wolle +Brown Wool=Braune Wolle +Orange Wool=Orange Wolle +Red Wool=Rote Wolle +Magenta Wool=Magenta Wolle +Pink Wool=Rosa Wolle diff --git a/mods/wool/locale/wool.eo.tr b/mods/wool/locale/wool.eo.tr new file mode 100644 index 0000000..78242cd --- /dev/null +++ b/mods/wool/locale/wool.eo.tr @@ -0,0 +1,16 @@ +# textdomain: wool +White Wool=Blanka lano +Grey Wool=Griza lano +Dark Grey Wool=Malhela griza lano +Black Wool=Nigra lano +Violet Wool=Violkolora lano +Blue Wool=Blua lano +Cyan Wool=Bluverda lano +Dark Green Wool=Malhela verda lano +Green Wool=Verda lano +Yellow Wool=Flava lano +Brown Wool=Bruna lano +Orange Wool=Oranĝkolora lano +Red Wool=Ruĝa lano +Magenta Wool=Fuksina lano +Pink Wool=Rozkolora lano diff --git a/mods/wool/locale/wool.es.tr b/mods/wool/locale/wool.es.tr new file mode 100644 index 0000000..ac15592 --- /dev/null +++ b/mods/wool/locale/wool.es.tr @@ -0,0 +1,16 @@ +# textdomain: wool +White Wool=Lana blanca +Grey Wool=Lana gris +Dark Grey Wool=Lana gris oscuro +Black Wool=Lana negra +Violet Wool=Lana violeta +Blue Wool=Lana azul +Cyan Wool=Lana cián +Dark Green Wool=Lana verde oscuro +Green Wool=Lana verde +Yellow Wool=Lana amarilla +Brown Wool=Lana marrón +Orange Wool=Lana naranja +Red Wool=Lana roja +Magenta Wool=Lana magenta +Pink Wool=Lana rosa diff --git a/mods/wool/locale/wool.eu.tr b/mods/wool/locale/wool.eu.tr new file mode 100644 index 0000000..2da1799 --- /dev/null +++ b/mods/wool/locale/wool.eu.tr @@ -0,0 +1,16 @@ +# textdomain: wool +White Wool=Artile zuria +Grey Wool=Artile grisa +Dark Grey Wool=Artile gris iluna +Black Wool=Artile beltza +Violet Wool=Artile morea +Blue Wool=Artile urdina +Cyan Wool=Artile ziana +Dark Green Wool=Artile berde iluna +Green Wool=Artile berdea +Yellow Wool=Artile horia +Brown Wool=Artile marroia +Orange Wool=Artile laranja +Red Wool=Artile gorria +Magenta Wool=Artile magenta +Pink Wool=Artile arrosa diff --git a/mods/wool/locale/wool.fr.tr b/mods/wool/locale/wool.fr.tr new file mode 100644 index 0000000..48a60a7 --- /dev/null +++ b/mods/wool/locale/wool.fr.tr @@ -0,0 +1,16 @@ +# textdomain: wool +White Wool=Laine blanche +Grey Wool=Laine grise +Dark Grey Wool=Laine grise foncée +Black Wool=Laine noire +Violet Wool=Laine violette +Blue Wool=Laine bleue +Cyan Wool=Laine cyan +Dark Green Wool=Laine verte foncée +Green Wool=Laine verte +Yellow Wool=Laine jaune +Brown Wool=Laine marron +Orange Wool=Laine orange +Red Wool=Laine rouge +Magenta Wool=Laine magenta +Pink Wool=Laine rose diff --git a/mods/wool/locale/wool.hu.tr b/mods/wool/locale/wool.hu.tr new file mode 100644 index 0000000..f3b3762 --- /dev/null +++ b/mods/wool/locale/wool.hu.tr @@ -0,0 +1,16 @@ +# textdomain: wool +White Wool=Fehér gyapjú +Grey Wool=Szürke gyapjú +Dark Grey Wool=Sötétszürke gyapjú +Black Wool=Fekete gyapjú +Violet Wool=Lila gyapjú +Blue Wool=Kék gyapjú +Cyan Wool=Cián gyapjú +Dark Green Wool=Sötétzöld gyapjú +Green Wool=Zöld gyapjú +Yellow Wool=Sárga gyapjú +Brown Wool=Barna gyapjú +Orange Wool=Narancssárga gyapjú +Red Wool=Piros gyapjú +Magenta Wool=Bíbor gyapjú +Pink Wool=Rózsaszín gyapjú diff --git a/mods/wool/locale/wool.id.tr b/mods/wool/locale/wool.id.tr new file mode 100644 index 0000000..603277f --- /dev/null +++ b/mods/wool/locale/wool.id.tr @@ -0,0 +1,16 @@ +# textdomain: wool +White Wool=Wol Putih +Grey Wool=Wol Abu +Dark Grey Wool=Wol Abu Tua +Black Wool=Wol Hitam +Violet Wool=Wol Ungu +Blue Wool=Wol Biru +Cyan Wool=Wol Sian +Dark Green Wool=Wol Hijau Tua +Green Wool=Wol Hijau +Yellow Wool=Wol Kuning +Brown Wool=Wol Cokelat +Orange Wool=Wol Oranye +Red Wool=Wol Merah +Magenta Wool=Wol Magenta +Pink Wool=Wol Merah Muda diff --git a/mods/wool/locale/wool.it.tr b/mods/wool/locale/wool.it.tr new file mode 100644 index 0000000..8108f2f --- /dev/null +++ b/mods/wool/locale/wool.it.tr @@ -0,0 +1,16 @@ +# textdomain: wool +White Wool=Lana bianca +Grey Wool=Lana grigia +Dark Grey Wool=Lana grigia scura +Black Wool=Lana nera +Violet Wool=Lana viola +Blue Wool=Lana blu +Cyan Wool=Lana ciano +Dark Green Wool=Lana verde scura +Green Wool=Lana verde +Yellow Wool=Lana gialla +Brown Wool=Lana marrone +Orange Wool=Lana arancione +Red Wool=Lana rossa +Magenta Wool=Lana magenta +Pink Wool=Lana rosa diff --git a/mods/wool/locale/wool.ja.tr b/mods/wool/locale/wool.ja.tr new file mode 100644 index 0000000..5051f9e --- /dev/null +++ b/mods/wool/locale/wool.ja.tr @@ -0,0 +1,16 @@ +# textdomain: wool +White Wool=白色の羊毛 +Grey Wool=灰色の羊毛 +Dark Grey Wool=濃灰色の羊毛 +Black Wool=黒色の羊毛 +Violet Wool=紫色の羊毛 +Blue Wool=青色の羊毛 +Cyan Wool=青緑色の羊毛 +Dark Green Wool=濃緑色の羊毛 +Green Wool=緑色の羊毛 +Yellow Wool=黄色の羊毛 +Brown Wool=茶色の羊毛 +Orange Wool=橙色の羊毛 +Red Wool=赤色の羊毛 +Magenta Wool=赤紫色の羊毛 +Pink Wool=桃色の羊毛 diff --git a/mods/wool/locale/wool.jbo.tr b/mods/wool/locale/wool.jbo.tr new file mode 100644 index 0000000..4bf44ec --- /dev/null +++ b/mods/wool/locale/wool.jbo.tr @@ -0,0 +1,16 @@ +# textdomain: wool +White Wool=lo blabi sunla +Grey Wool=lo grusi sunla +Dark Grey Wool=lo xekri grusi sunla +Black Wool=lo xekri sunla +Violet Wool=lo zirpu sunla +Blue Wool=lo blanu sunla +Cyan Wool=lo cicna sunla +Dark Green Wool=lo xekri crino sunla +Green Wool=lo crino sunla +Yellow Wool=lo pelxu sunla +Brown Wool=lo bunre sunla +Orange Wool=lo narju sunla +Red Wool=lo xunre sunla +Magenta Wool=lo nukni sunla +Pink Wool=lo xunblabi sunla diff --git a/mods/wool/locale/wool.lv.tr b/mods/wool/locale/wool.lv.tr new file mode 100644 index 0000000..72e514e --- /dev/null +++ b/mods/wool/locale/wool.lv.tr @@ -0,0 +1,16 @@ +# textdomain: wool +White Wool=Balta vilna +Grey Wool=Pelēka vilna +Dark Grey Wool=Tumšpelēka vilna +Black Wool=Melna vilna +Violet Wool=Violeta vilna +Blue Wool=Zila vilna +Cyan Wool=Ciānkrāsas vilna +Dark Green Wool=Tumšzaļa vilna +Green Wool=Zaļa vilna +Yellow Wool=Dzeltena vilna +Brown Wool=Brūna vilna +Orange Wool=Oranža vilna +Red Wool=Sarkana vilna +Magenta Wool=Fuksīna krāsas vilna +Pink Wool=Rozā vilna diff --git a/mods/wool/locale/wool.ms.tr b/mods/wool/locale/wool.ms.tr new file mode 100644 index 0000000..8b597d1 --- /dev/null +++ b/mods/wool/locale/wool.ms.tr @@ -0,0 +1,16 @@ +# textdomain: wool +White Wool=Bulu Biri-Biri Putih +Grey Wool=Bulu Biri-Biri Kelabu +Dark Grey Wool=Bulu Biri-Biri Kelabu Tua +Black Wool=Bulu Biri-Biri Hitam +Violet Wool=Bulu Biri-Biri Ungu +Blue Wool=Bulu Biri-Biri Biru +Cyan Wool=Bulu Biri-Biri Biru Kehijauan +Dark Green Wool=Bulu Biri-Biri Hijau Tua +Green Wool=Bulu Biri-Biri Hijau +Yellow Wool=Bulu Biri-Biri Kuning +Brown Wool=Bulu Biri-Biri Perang +Orange Wool=Bulu Biri-Biri Jingga +Red Wool=Bulu Biri-Biri Merah +Magenta Wool=Bulu Biri-Biri Magenta +Pink Wool=Bulu Biri-Biri Merah Jambu diff --git a/mods/wool/locale/wool.pl.tr b/mods/wool/locale/wool.pl.tr new file mode 100644 index 0000000..9c411c8 --- /dev/null +++ b/mods/wool/locale/wool.pl.tr @@ -0,0 +1,16 @@ +# textdomain: wool +White Wool=Biała wełna +Grey Wool=Szara wełna +Dark Grey Wool=Ciemnoszara wełna +Black Wool=Czarna wełna +Violet Wool=Fioletowa wełna +Blue Wool=Niebieska wełna +Cyan Wool=Cyjanowa wełna +Dark Green Wool=Ciemnozielona wełna +Green Wool=Zielona wełna +Yellow Wool=Żółta wełna +Brown Wool=Brązowa wełna +Orange Wool=Pomarańczowa wełna +Red Wool=Czerwona wełna +Magenta Wool=Karmazynowa wełna +Pink Wool=Różowa wełna diff --git a/mods/wool/locale/wool.pt.tr b/mods/wool/locale/wool.pt.tr new file mode 100644 index 0000000..9b4232f --- /dev/null +++ b/mods/wool/locale/wool.pt.tr @@ -0,0 +1,16 @@ +# textdomain: wool +White Wool=Tecido Branco +Grey Wool=Tecido Cinza +Dark Grey Wool=Tecido Cinza-escuro +Black Wool=Tecido Preto +Violet Wool=Tecido Violeta +Blue Wool=Tecido Azul +Cyan Wool=Tecido Ciano +Dark Green Wool=Tecido Verde-escuro +Green Wool=Tecido Verde +Yellow Wool=Tecido Amarelo +Brown Wool=Tecido Marrom +Orange Wool=Tecido Laranja +Red Wool=Tecido Vermelho +Magenta Wool=Tecido Magenta +Pink Wool=Tecido Rosa diff --git a/mods/wool/locale/wool.pt_BR.tr b/mods/wool/locale/wool.pt_BR.tr new file mode 100644 index 0000000..9b4232f --- /dev/null +++ b/mods/wool/locale/wool.pt_BR.tr @@ -0,0 +1,16 @@ +# textdomain: wool +White Wool=Tecido Branco +Grey Wool=Tecido Cinza +Dark Grey Wool=Tecido Cinza-escuro +Black Wool=Tecido Preto +Violet Wool=Tecido Violeta +Blue Wool=Tecido Azul +Cyan Wool=Tecido Ciano +Dark Green Wool=Tecido Verde-escuro +Green Wool=Tecido Verde +Yellow Wool=Tecido Amarelo +Brown Wool=Tecido Marrom +Orange Wool=Tecido Laranja +Red Wool=Tecido Vermelho +Magenta Wool=Tecido Magenta +Pink Wool=Tecido Rosa diff --git a/mods/wool/locale/wool.ru.tr b/mods/wool/locale/wool.ru.tr new file mode 100644 index 0000000..9893a08 --- /dev/null +++ b/mods/wool/locale/wool.ru.tr @@ -0,0 +1,16 @@ +# textdomain: wool +White Wool=Белая шерсть +Grey Wool=Серая шерсть +Dark Grey Wool=Тёмно-Серая шерсть +Black Wool=Чёрная шерсть +Violet Wool=Фиолетовая шерсть +Blue Wool=Синяя шерсть +Cyan Wool=Бирюзовая шерсть +Dark Green Wool=Тёмно-Зелёная шерсть +Green Wool=Зелёная шерсть +Yellow Wool=Жёлтая шерсть +Brown Wool=Коричневая шерсть +Orange Wool=Оранжевая шерсть +Red Wool=Красная шерсть +Magenta Wool=Сиреневая шерсть +Pink Wool=Розовая шерсть diff --git a/mods/wool/locale/wool.sk.tr b/mods/wool/locale/wool.sk.tr new file mode 100644 index 0000000..755370e --- /dev/null +++ b/mods/wool/locale/wool.sk.tr @@ -0,0 +1,16 @@ +# textdomain: wool +White Wool=Biela vlna +Grey Wool=Šedá vlna +Dark Grey Wool=Tmavošedá vlna +Black Wool=Čierna vlna +Violet Wool=Fialová vlna +Blue Wool=Modrá vlna +Cyan Wool=Tyrkysová vlna +Dark Green Wool=Tmavozelená vlna +Green Wool=Zelená vlna +Yellow Wool=Žltá vlna +Brown Wool=Hnedá vlna +Orange Wool=Oranžová vlna +Red Wool=Červená vlna +Magenta Wool=Purpurová vlna +Pink Wool=Ružová vlna diff --git a/mods/wool/locale/wool.sv.tr b/mods/wool/locale/wool.sv.tr new file mode 100644 index 0000000..bfce214 --- /dev/null +++ b/mods/wool/locale/wool.sv.tr @@ -0,0 +1,16 @@ +# textdomain: wool +White Wool=Vit ull +Grey Wool=Grå ull +Dark Grey Wool=Mörkgrå ull +Black Wool=Svart ull +Violet Wool=Violett ull +Blue Wool=Blå ull +Cyan Wool=Cyan ull +Dark Green Wool=Mörkgrön ull +Green Wool=Grön ull +Yellow Wool=Gul ull +Brown Wool=Brun ull +Orange Wool=Orange ull +Red Wool=Röd ull +Magenta Wool=Magenta ull +Pink Wool=Rosa ull diff --git a/mods/wool/locale/wool.uk.tr b/mods/wool/locale/wool.uk.tr new file mode 100644 index 0000000..24dbed7 --- /dev/null +++ b/mods/wool/locale/wool.uk.tr @@ -0,0 +1,16 @@ +# textdomain: wool +White Wool=Біла вовна +Grey Wool=Сіра вовна +Dark Grey Wool=Темно-сіра вовна +Black Wool=Чорна вовна +Violet Wool=Фіолетова вовна +Blue Wool=Синя вовна +Cyan Wool=Синьо-зелена вовна +Dark Green Wool=Темно-зелена вовна +Green Wool=Зелена вовна +Yellow Wool=Жовта вовна +Brown Wool=Коричнева вовна +Orange Wool=Помаранчева вовна +Red Wool=Червона вовна +Magenta Wool=Пурпурна вовна +Pink Wool=Рожева вовна diff --git a/mods/wool/locale/wool.zh_CN.tr b/mods/wool/locale/wool.zh_CN.tr new file mode 100644 index 0000000..caac9ee --- /dev/null +++ b/mods/wool/locale/wool.zh_CN.tr @@ -0,0 +1,16 @@ +# textdomain: wool +White Wool=白羊毛 +Grey Wool=灰羊毛 +Dark Grey Wool=暗灰羊毛 +Black Wool=黑羊毛 +Violet Wool=紫羊毛 +Blue Wool=蓝羊毛 +Cyan Wool=青羊毛 +Dark Green Wool=暗绿羊毛 +Green Wool=绿羊毛 +Yellow Wool=黄羊毛 +Brown Wool=棕羊毛 +Orange Wool=橙羊毛 +Red Wool=红羊毛 +Magenta Wool=品红羊毛 +Pink Wool=粉红羊毛 diff --git a/mods/wool/locale/wool.zh_TW.tr b/mods/wool/locale/wool.zh_TW.tr new file mode 100644 index 0000000..290a1fe --- /dev/null +++ b/mods/wool/locale/wool.zh_TW.tr @@ -0,0 +1,16 @@ +# textdomain: wool +White Wool=白羊毛 +Grey Wool=灰羊毛 +Dark Grey Wool=暗灰羊毛 +Black Wool=黑羊毛 +Violet Wool=紫羊毛 +Blue Wool=藍羊毛 +Cyan Wool=青羊毛 +Dark Green Wool=暗綠羊毛 +Green Wool=綠羊毛 +Yellow Wool=黃羊毛 +Brown Wool=棕羊毛 +Orange Wool=橙羊毛 +Red Wool=紅羊毛 +Magenta Wool=品紅羊毛 +Pink Wool=粉紅羊毛 diff --git a/mods/wool/mod.conf b/mods/wool/mod.conf new file mode 100644 index 0000000..a0ca3f0 --- /dev/null +++ b/mods/wool/mod.conf @@ -0,0 +1,3 @@ +name = wool +description = Minetest Game mod: wool +depends = default, dye diff --git a/mods/wool/textures/wool_black.png b/mods/wool/textures/wool_black.png new file mode 100644 index 0000000000000000000000000000000000000000..700d439dca261455e623c41db9b409d1f6afc46c GIT binary patch literal 209 zcmeAS@N?(olHy`uVBq!ia0y~yU=RRd7G?$phPQVgfdnK1d_r7hWo5OswM9fkX$aPpjr0rt=y*&r^TeL^tZRLnO%Cd{w z&OtnVp>y2+=M&stw%?y<QU^~4Ua|lH literal 0 HcmV?d00001 diff --git a/mods/wool/textures/wool_brown.png b/mods/wool/textures/wool_brown.png new file mode 100644 index 0000000000000000000000000000000000000000..2620dfdb5222aef3551c34191b5e1e0dfdaf5e1d GIT binary patch literal 267 zcmeAS@N?(olHy`uVBq!ia0y~yU=RRd7G?$phPQVgfdq5|d_r6ctQf*|7-IDq+!Pt2 zbQ$br8G^MK{L~ms#27r48A@y!vMm_WO&Qer8R88YHd-laF)%R9^mK6y;kce0@Ume4 znxt8o=N44Dbt<+xPHap(c!V`G=3R^y&q1ZVs>|k`eZ}K;bm~ICqfHxmJh_iZ9@!xz zDIsyBeEA0vLkpvb8DF`|I7Iyu3%KW|B})8SG4o(&^aSh9X#N#$8I4NKs@I*{cDqg% z^;K`vGMr+zywysI+tp~vJTtrC6K^+lJ#09g=g20=Cd%f${F(Z(PT4AkH8tu<&x>{T RGB7YOc)I$ztaD0e0syerSK$Bv literal 0 HcmV?d00001 diff --git a/mods/wool/textures/wool_cyan.png b/mods/wool/textures/wool_cyan.png new file mode 100644 index 0000000000000000000000000000000000000000..395b6ac77404f2c244ee34a9dfe5d89f452acddf GIT binary patch literal 302 zcmeAS@N?(olHy`uVBq!ia0y~yU=RRd4rT@h1`S>QUGA2oFxohlNi$S7?!PLm^P0gKAj;tnW3zX!7GTN zrj;Qi=5+d^(+ms@%ROBjLnI_w54JKMb`W4T`29h0Qpx{N?Zgjp$Ff`P_GdK)ewX9q zknUoNs3>t{Nnr3ivuaQN1@+fog;prryqcr)Q0tr1v8I{^u4x<$CY|?MbKMy=K14tL z6LS8d&_97GmaA`^|9VE}`hh0BE(Z`#Gg2r7l z`Bn?uzFYHNprlCmjoY_%UCUgwTf+Mudv5oy-#@W_^*MG<*IO(}3=9kmp00i_>zopr E0A53K9RL6T literal 0 HcmV?d00001 diff --git a/mods/wool/textures/wool_dark_green.png b/mods/wool/textures/wool_dark_green.png new file mode 100644 index 0000000000000000000000000000000000000000..0e73999eae3a20fae94b07c477625f09178da6ea GIT binary patch literal 254 zcmeAS@N?(olHy`uVBq!ia0y~yU=RRd4rT@h1`S>QUb~PZw5X`2DMU#m2A0|3=9mDJY5_^Dj0Q7d-u5-axh;! zRHJb6?*A%j+ph;!HI{O`TN=l1wN%gPzIgJq9js|HvL|P{&E%CiSlcQU>$)-crOdVz zdn2(cO@ADZ+nl!jxc-|`WW@J_e-#hzTKr1=+{_)k8#5AHfA?6vTf=)tWwYnK)f3xV z=geF9OKbCN*^9U8?)}<#>g$Y;xqs@PF$xu$uIT=r^p8QifJOP=ec7`N3=9mOu6{1- HoD!M<%ST?v literal 0 HcmV?d00001 diff --git a/mods/wool/textures/wool_dark_grey.png b/mods/wool/textures/wool_dark_grey.png new file mode 100644 index 0000000000000000000000000000000000000000..7253696edc72e9024268b46c95b2e445f0400cf2 GIT binary patch literal 260 zcmeAS@N?(olHy`uVBq!ia0y~yU=RRd4rT@h1`S>QUUDDDgKhid6XaPYdCUzy&%nUI N;OXk;vd$@?2>?P}T>bz6 literal 0 HcmV?d00001 diff --git a/mods/wool/textures/wool_green.png b/mods/wool/textures/wool_green.png new file mode 100644 index 0000000000000000000000000000000000000000..dcb663bee440af80bc0677c6024182bf79bd2ba5 GIT binary patch literal 304 zcmeAS@N?(olHy`uVBq!ia0y~yU=RRd4rT@h1`S>QUZyoL+xZhA|}%fJQs>y*-kf`)R6Y) z%J083_pbN)6dF)nw)gS#UEfvJ0~V$)zV9?&ytj?B!?fn$)SvrIru+Bq%{e}2Nri2+ z%Sl1Cz>Vo&J{X2ATg|jM^JVPRv{p6N^{#RIuRPv%-+!I`oa^jz29txc85kHCJYD@< J);T3K0RRX#eBuBA literal 0 HcmV?d00001 diff --git a/mods/wool/textures/wool_grey.png b/mods/wool/textures/wool_grey.png new file mode 100644 index 0000000000000000000000000000000000000000..2f4c338078ddaf11ab3cef8682fc247d803ffe32 GIT binary patch literal 248 zcmeAS@N?(olHy`uVBq!ia0y~yU=RRd4h9AW2CEqh_A)Rq?DuqW43UszJ!r_qqR7K~ zA*O&YA$@a#vXcOtj!x5uZvNd%k2**&-7CH?tfbzvS}-at-}%OOHDw;T7{Q`@)pHHH zn+4k^EaLttb)jkA6z3_XEN8$Ik?cA zCCqESuBP47(^pt{wu_#B^7>C}_x^769X4P3KAY}bcQCs1+s^QnOU}%?x+W|lyL)T* z)wjOi<;3_4`f}LsG+q}!#Cee~?XT1A7|oC0+0PX=H@@FLzopr05|hw ANdN!< literal 0 HcmV?d00001 diff --git a/mods/wool/textures/wool_magenta.png b/mods/wool/textures/wool_magenta.png new file mode 100644 index 0000000000000000000000000000000000000000..5c2c4a7aff3462660939b3d68562ae2fe9402ae1 GIT binary patch literal 296 zcmeAS@N?(olHy`uVBq!ia0y~yU=RRd4rT@h1`S>QU%xilogCFw^&*hG1?qrPC3GyKAl1D z3QM)i*|}307#Nm#x;TbNNU|PmWn?xKU^e(|;B)_P`r4L5r4{?tdOl`(PuW#2=Nz138EuhZ{u zV%5tJowVFIx5T_z`k|9cYNTS%w>NV>{bsJzW1Al_foTH+0|SGntDnm{r-UW|27PhG literal 0 HcmV?d00001 diff --git a/mods/wool/textures/wool_orange.png b/mods/wool/textures/wool_orange.png new file mode 100644 index 0000000000000000000000000000000000000000..a059f3646f4043897ef1315584cf8e3e9cdb540f GIT binary patch literal 284 zcmeAS@N?(olHy`uVBq!ia0y~yU=RRd4rT@h1`S>QU#Q^7b~A@%8vv_^OD_7BlwD zxzr$d=nt3Sg|rC8fQ`2$HgLVH^U%qf?6ppWbJr=`hw0LsifK=NFZrG#%BpZY<7WB` z-pw}|7khs(+4c8D0av$Ly2y0S`{7}UuhwVA7{B?g^f_)t`9rfOw)Y;-5t5DIKF(O) nsds_5gKdw2%l%ox`|bZ(upTiH3u|FuU|{fc^>bP0l+XkK>XmF2 literal 0 HcmV?d00001 diff --git a/mods/wool/textures/wool_pink.png b/mods/wool/textures/wool_pink.png new file mode 100644 index 0000000000000000000000000000000000000000..8e9014075dfc06aa9b056ad39d1ce69d7ebdec41 GIT binary patch literal 218 zcmeAS@N?(olHy`uVBq!ia0y~yU=RRd7G?$phPQVgfdu3Nd_r9Rx3~YVtNXuf+5fV# z|8wX5&&~ZG7xzCS+`u+qnFff#Rx;Tb#$g&=E&D1Jr6vQ8kO>==3$(j!PXnO-+Nc)nHoKEa@C8-n6s$AKD1sq V?tlWzOa=x922WQ%mvv4FO#t<-T;Koz literal 0 HcmV?d00001 diff --git a/mods/wool/textures/wool_red.png b/mods/wool/textures/wool_red.png new file mode 100644 index 0000000000000000000000000000000000000000..da12ecffd13a8896de8fed61dd2e929e3a556322 GIT binary patch literal 288 zcmeAS@N?(olHy`uVBq!ia0y~yU=RRd4rT@h1`S>QUaB-cJlB#ECpUA_rPfV9FR{0m zfq`L>r;B5Vge2?1cE-a7Jj@0`(f3~dKQ7i#kl%M-@R&?3*QM`XOkNH=2b^vDo?`2?u8W@owS1oQYjImK1nYz{6zG;Oy|2h1y0QAr`JDX8T}mrHf3=9e zQLTBOk#!xLJk$A>!-<;|*jy5qKKj0TjfeI6w`YBNb~=~(y|Pr>yzuj{&T8+6Poj4C q?V5eCw?J``ruC%4w%YkmQUna**93-*={#Fv7*>Zf zER14U7RRtIjA331+m;}P8EM>`0~jXyGIX@0iT5)wFm!vmIEGZ*lI`K-a#0jHoOFNL zzu))EUp1&|sRVqV6z^Q}YliWLX%^gTpJq#a()z1Yw&LA%QQtcX9}m6L+k8d7sxE56 z%Z+_S$4+|Q`!2lIKJ))lmg;xkdT&YR1+STCBg}5`I`v}Y#QvK2TT82!mofhodUZ@# y_Lz9+%#X#HR~@e0t;fK?z~JfX=d#Wzp$PzUAYn5A literal 0 HcmV?d00001 diff --git a/mods/wool/textures/wool_white.png b/mods/wool/textures/wool_white.png new file mode 100644 index 0000000000000000000000000000000000000000..88f1e2f55f521a97de29454eefa196df88f68efd GIT binary patch literal 243 zcmeAS@N?(olHy`uVBq!ia0y~yU=RRd4h9AW2CEqh_A)Rq?DBMR43UszJ-CtUr~(h` zg+Kq_m%O>Ku-luXL!`yq;KXd1rkFeTErtHsJl<{6HZ^Xm=asEVlWKF=JS=xV5>WW7 zyxiOHN3rR4qgTlnk1Vww$pms&%wFBKP_|@1FJUo2`xn zdcCchy+8HX;ztKrX4saUlMgOZ=3|~6R;l)6*R3^XvG=QU(ity3QEsgi$yZKQZB#UzGZu@RHY6_2{mn)I8QZtiRW-t4_DN^m#+umQTw>byhu@>}I-W{d<0{@~ literal 0 HcmV?d00001