From a93139d3f77950b76c070390111eb80b1277917c Mon Sep 17 00:00:00 2001 From: tchncs <tchncs@vivaldi.net> Date: Mon, 22 Aug 2016 18:24:45 +0200 Subject: [PATCH] redwood meets gitlab --- depends.txt | 3 + init.lua | 24 ++++ leaves.lua | 29 +++++ license.txt | 14 +++ locale/de.txt | 220 +++++++++++++++++++++++++++++++++ locale/template.txt | 218 ++++++++++++++++++++++++++++++++ sapling.lua | 112 +++++++++++++++++ schematics/redwood.mts | Bin 0 -> 1159 bytes schematics/redwood_tree.mts | Bin 0 -> 1373 bytes textures/redwood_leaves.png | Bin 0 -> 969 bytes textures/redwood_sapling.png | Bin 0 -> 226 bytes textures/redwood_trunk.png | Bin 0 -> 867 bytes textures/redwood_trunk_top.png | Bin 0 -> 822 bytes textures/redwood_wood.png | Bin 0 -> 654 bytes wood.lua | 31 +++++ 15 files changed, 651 insertions(+) create mode 100644 depends.txt create mode 100644 init.lua create mode 100644 leaves.lua create mode 100644 license.txt create mode 100644 locale/de.txt create mode 100644 locale/template.txt create mode 100644 sapling.lua create mode 100644 schematics/redwood.mts create mode 100644 schematics/redwood_tree.mts create mode 100644 textures/redwood_leaves.png create mode 100644 textures/redwood_sapling.png create mode 100644 textures/redwood_trunk.png create mode 100644 textures/redwood_trunk_top.png create mode 100644 textures/redwood_wood.png create mode 100644 wood.lua diff --git a/depends.txt b/depends.txt new file mode 100644 index 0000000..3cc6790 --- /dev/null +++ b/depends.txt @@ -0,0 +1,3 @@ +default +stairs +intllib? diff --git a/init.lua b/init.lua new file mode 100644 index 0000000..153dd5d --- /dev/null +++ b/init.lua @@ -0,0 +1,24 @@ +-- +-- Redwood tree from https://github.com/tenplus1/ethereal +-- + +redwood = {} +-- Intllib +local S +if minetest.get_modpath("intllib") then + S = intllib.Getter() +else + S = function(s) return s end +end +redwood.intllib = S + +local path = minetest.get_modpath("redwood") + +dofile(path .. "/leaves.lua") +dofile(path .. "/wood.lua") +dofile(path .. "/sapling.lua") + +minetest.register_alias("ethereal:redwood_trunk", "redwood:redwood_trunk") +minetest.register_alias("ethereal:redwood_leaves", "redwood:redwood_leaves") + +print (S("[MOD] Redwood loaded")) diff --git a/leaves.lua b/leaves.lua new file mode 100644 index 0000000..71f1616 --- /dev/null +++ b/leaves.lua @@ -0,0 +1,29 @@ + +local S = redwood.intllib + +-- set leaftype (value inside init.lua) +local leaftype = "plantlike" + +-- redwood leaves +minetest.register_node("redwood:redwood_leaves", { + description = S("Redwood Leaves"), + drawtype = leaftype, + visual_scale = 1.2, + tiles = {"redwood_leaves.png"}, + inventory_image = "redwood_leaves.png", + wield_image = "redwood_leaves.png", + paramtype = "light", + walkable = redwood.leafwalk, + waving = 1, + groups = {snappy = 3, leafdecay = 3, leaves = 1, flammable = 2}, + drop = { + max_items = 1, + items = { + {items = {"redwood:redwood_sapling"}, rarity = 50}, + {items = {"redwood:redwood_leaves"}} + } + }, + sounds = default.node_sound_leaves_defaults(), + after_place_node = default.after_place_leaves, +}) + diff --git a/license.txt b/license.txt new file mode 100644 index 0000000..5d30c14 --- /dev/null +++ b/license.txt @@ -0,0 +1,14 @@ + + DO WHAT THE FUCK YOU WANT TO PUBLIC LICENSE + Version 2, December 2004 + + Copyright (C) 2004 Sam Hocevar <sam@hocevar.net> + + Everyone is permitted to copy and distribute verbatim or modified + copies of this license document, and changing it is allowed as long + as the name is changed. + + DO WHAT THE FUCK YOU WANT TO PUBLIC LICENSE + TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION + + 0. You just DO WHAT THE FUCK YOU WANT TO. \ No newline at end of file diff --git a/locale/de.txt b/locale/de.txt new file mode 100644 index 0000000..9c9c9d7 --- /dev/null +++ b/locale/de.txt @@ -0,0 +1,220 @@ +# German Translation for ethereal mod +# Deutsche Übersetzung der ethereal Mod +# last update: 2016/May/25 +# Author: Xanthin + +#bonemeal.lua +Bone = Knochen +Bone Meal = Knochenmehl + +#crystal.lua +Crystal Spike = Kristallnadel +Crystal Ingot = Kristallbarren +Crystal Block = Kristallblock +Crystal Sword = Kristallschwert +Crystal Axe = Kristallaxt +Crystal Pickaxe = Kristallspitzhacke +Crystal (soft touch) Shovel = Kristallschaufel (Behutsamkeit) +Crystal Gilly Staff = Kristallener Gilly-Stab + +#dirt.lua +Green Dirt = Grüne Erde +Dried Dirt = Vertrocknete Erde +Bamboo Dirt = Bambuserde +Jungle Dirt = Tropenerde +Grove Dirt = Hainerde +Prairie Dirt = Prärieerde +Cold Dirt = Kalte Erde +Crystal Dirt = Kristallerde +Mushroom Dirt = Pilzerde +Fiery Dirt = Feuerrote Erde +Gray Dirt = Graue Erde +Red Baked Clay = Roter gebrannter Ton +Orange Baked Clay = Oranger gebrannter Ton +Grey Baked Clay = Grauer gebrannter Ton +Quicksand = Treibsand + +#extra.lua +Bamboo Floor = Bambusboden +Palm Wax = Palmwachs +Candle = Kerze +Bowl = Schale +Stone Ladder = Steinleiter +Paper Wall = Papierwand +Glo Stone = Leuchtstein +Lump of Charcoal = Holzkohlestück +Staff of Light = Stab des Lichts + +#fences.lua +Scorched Fence = Verbrannter Zaun +Frost Fence = Frostzaun +Redwood Fence = Mammutbaumzaun +Willow Fence = Weidenzaun +Healing Wood Fence = Lebensholzzaun +Palm Fence = Palmzaun +Banana Wood Fence = Bananenholzzaun +Mushroom Fence = Pilzzaun +Birch Fence = Birkenzaun + +#fishing.lua +Raw Fish = Roher Fisch +Cooked Fish = Gekochter Fisch +Sashimi = Sashimi +Worm = Wurm +Fishing Rod = Angelrute +Baited Fishing Rod = Angelrute mit Köder +Inventory full, Fish Got Away! = Inventar voll, Fisch entkam! + +#food.lua +Banana = Banane +Banana Dough = Bananenteig +Orange = Orange +Pine Nuts = Pinienkerne +Banana Loaf = Bananenbrot +Coconut = Kokosnuss +Coconut Slice = Kokosscheibe +Golden Apple = Goldener Apfel +Hearty Stew = Deftiger Eintopf +Bucket of Cactus Pulp = Eimer Kaktusmark + +#gates.lua +Scorched Wood Fence Gate = Verbranntes Holzzauntor +Frost Wood Fence Gate = Frostholzzauntor +Redwood Fence Gate = Mammutbaumzauntor +Willow Wood Fence Gate = Weidenholztor +Healing Wood Fence Gate = Lebensholzzauntor +Palm Wood Fence Gate = Palmholzzauntor +Banana Wood Fence Gate = Bananenholzzauntor +Mushroom Trunk Fence Gate = Pilzstammzauntor +Birch Wood Fence Gate = Birkenholzzauntor + +#init.lua +[MOD] Ethereal loaded = [MOD] Ethereal geladen + +#leaves.lua +Willow Twig = Weidenrute +Redwood Leaves = Mammutbaumlaub +Orange Leaves = Orangenlaub +Banana Leaves = Bananenblätter +Healing Tree Leaves = Lebensbaumlaub +Palm Leaves = Palmenblätter +Birch Leaves = Birkenlaub +Frost Leaves = Frostlaub +Bamboo Leaves = Bambuslaub +Mushroom Cap = Pilzkappe +Mushroom Pore = Pilzpore +Bush = Busch +Bush #2 = Busch #2 +Bush #3 = Busch #3 + +#mushroom.lua +Mushroom Soup = Pilzsuppe + +#onion.lua +Wild Onion = Wilde Zwiebel + +#plantlife.lua +Fire Flower = Feuerblume +Fire Dust = Feuerstaub +Vine = Weinrebe +Light String Vine = Leuchtschnurrebe +Fern = Farn +Fern Tubers = Farnsporenkapseln +Fiery Dry Shrub = Feuerroter vertrockneter Strauch +Snowy Grass = Verschneites Gras +Crystal Grass = Kristallgras +Crystal Moss = Kristallmoos +Mushroom Moss = Pilzmoos +Fiery Moss = Feuerrotes Moos +Gray Moss = Graues Moos +Green Moss = Grünes Moos +Red Illumishroom = Roter Leuchtpilz +Green Illumishroom = Grüner Leuchtpilz +Cyan Illumishroom = Türkiser Leuchtpilz + +#sapling.lua +Bamboo Sprout = Bambussprosse +Willow Tree Sapling = Weidenbaumsetzling +Healing Tree Sapling = Lebensbaumsetzling +Apple Tree Sapling = Apfelbaumsetzling +Jungle Tree Sapling = Tropenbaumsetzling +Pine Tree Sapling = Piniensetzling +Big Tree Sapling = Großer-Baum-Setzling +Banana Tree Sapling = Bananensetzling +Frost Tree Sapling = Frostbaumsetzling +Mushroom Tree Sapling = Pilzbaumsetzling +Palm Tree Sapling = Palmensetzling +Redwood Tree Sapling = Mammutbaumsetzling +Orange Tree Sapling = Orangenbaumsetzling +Acacia Tree Sapling = Akaziensetzling +Birch Tree Sapling = Birkensetzling +Schematic not found = Schema nicht gefunden + +#sealife.lua +Seaweed = Seetang +Blue Coral = Blaue Koralle +Orange Coral = Orange Koralle +Pink Coral = Rosa Koralle +Green Coral = Grüne Koralle +Sandy = Sandy + +#stairs.lua +Crystal Block Stair = Kristallblocktreppe +Crystal Block Slab = Kristallblockplatte +Ice Brick Stair = Eisziegeltreppe +Ice Brick Slab = Eisziegelplatte +Snow Brick Stair = Schneeziegeltreppe +Snow Brick Slab = Schneeziegelplatte +Dry Dirt Stair = Vertrocknete Erdtreppe +Dry Dirt Slab = vertrocknete Erdplatte +Mushroom Trunk Stair = Pilzstammtreppe +Mushroom Trunk Slab = Pilzstammplatte +Mushroom Top Stair = Pilzkappentreppe +Mushroom Top Slab = Pilzkappenplatte +Frost Wood Stair = Frostholztreppe +Frost Wood Slab = Frostholzplatte +Healing Wood Stair = Lebensholztreppe +Healing Wood Slab = Lebensholzplatte +Palm Wood Stair = Palmholztreppe +Palm Wood Slab = Palmholzplatte +Birch Wood Stair = Birkenholztreppe +Birch Wood Slab = Birkenholzplatte +Banana Wood Stair = Bananenholztreppe +Banana Wood Slab = Bananenholzplatte +Willow Wood Stair = Weidenholztreppe +Willow Wood Slab = Weidenholzplatte +Redwood Stair = Mammutbaumtreppe +Redwood Slab = Mammutbaumplatte +Bamboo Stair = Bambustreppe +Bamboo Slab = Bambusplatte +Dry Dirt = Vertrocknete Erde +Mushroom Trunk = Pilzstamm +Mushroom Top = Pilzkappe +Healing Wood = Lebensholz +Redwood = Mammutbaum + +#strawberry.lua +Strawberry = Erdbeere + +#water.lua +Ice Brick = Eisziegel +Snow Brick = Schneeziegel + +#wood.lua +Willow Trunk = Weidenstamm +Willow Wood = Weidenholz +Redwood Trunk = Mammutbaumstamm +Redwood Wood = Mammutbaumholz +Frost Tree = Frostbaum +Frost Wood = Frostholz +Healing Tree Trunk = Lebensbaumstamm +Healing Tree Wood = Lebensbaumholz +Palm Trunk = Palmstamm +Palm Wood = Palmholz +Banana Trunk = Bananenstamm +Banana Wood = Bananenholz +Scorched Tree = Verbrannter Baum +Mushroom = Pilz +Birch Trunk = Birkenstamm +Birch Wood = Birkenholz +Bamboo = Bambus \ No newline at end of file diff --git a/locale/template.txt b/locale/template.txt new file mode 100644 index 0000000..d9a795e --- /dev/null +++ b/locale/template.txt @@ -0,0 +1,218 @@ +# Template for translations of ethereal mod +# last update: 2016/May/25 + +#bonemeal.lua +Bone = +Bone Meal = + +#crystal.lua +Crystal Spike = +Crystal Ingot = +Crystal Block = +Crystal Sword = +Crystal Axe = +Crystal Pickaxe = +Crystal (soft touch) Shovel = +Crystal Gilly Staff = + +#dirt.lua +Green Dirt = +Dried Dirt = +Bamboo Dirt = +Jungle Dirt = +Grove Dirt = +Prairie Dirt = +Cold Dirt = +Crystal Dirt = +Mushroom Dirt = +Fiery Dirt = +Gray Dirt = +Red Baked Clay = +Orange Baked Clay = +Grey Baked Clay = +Quicksand = + +#extra.lua +Bamboo Floor = +Palm Wax = +Candle = +Bowl = +Stone Ladder = +Paper Wall = +Glo Stone = +Lump of Charcoal = +Staff of Light = + +#fences.lua +Scorched Fence = +Frost Fence = +Redwood Fence = +Willow Fence = +Healing Wood Fence = +Palm Fence = +Banana Wood Fence = +Mushroom Fence = +Birch Fence = + +#fishing.lua +Raw Fish = +Cooked Fish = +Sashimi = +Worm = +Fishing Rod = +Baited Fishing Rod = +Inventory full, Fish Got Away! = + +#food.lua +Banana = +Banana Dough = +Orange = +Pine Nuts = +Banana Loaf = +Coconut = +Coconut Slice = +Golden Apple = +Hearty Stew = +Bucket of Cactus Pulp = + +#gates.lua +Scorched Wood Fence Gate = +Frost Wood Fence Gate = +Redwood Fence Gate = +Willow Wood Fence Gate = +Healing Wood Fence Gate = +Palm Wood Fence Gate = +Banana Wood Fence Gate = +Mushroom Trunk Fence Gate = +Birch Wood Fence Gate = + +#init.lua +[MOD] Ethereal loaded = + +#leaves.lua +Willow Twig = +Redwood Leaves = +Orange Leaves = +Banana Leaves = +Healing Tree Leaves = +Palm Leaves = +Birch Leaves = +Frost Leaves = +Bamboo Leaves = +Mushroom Cap = +Mushroom Pore = +Bush = +Bush #2 = +Bush #3 = + +#mushroom.lua +Mushroom Soup = + +#onion.lua +Wild Onion = + +#plantlife.lua +Fire Flower = +Fire Dust = +Vine = +Light String Vine = +Fern = +Fern Tubers = +Fiery Dry Shrub = +Snowy Grass = +Crystal Grass = +Crystal Moss = +Mushroom Moss = +Fiery Moss = +Gray Moss = +Green Moss = +Red Illumishroom = +Green Illumishroom = +Cyan Illumishroom = + +#sapling.lua +Bamboo Sprout = +Willow Tree Sapling = +Healing Tree Sapling = +Apple Tree Sapling = +Jungle Tree Sapling = +Pine Tree Sapling = +Big Tree Sapling = +Banana Tree Sapling = +Frost Tree Sapling = +Mushroom Tree Sapling = +Palm Tree Sapling = +Redwood Tree Sapling = +Orange Tree Sapling = +Acacia Tree Sapling = +Birch Tree Sapling = +Schematic not found = + +#sealife.lua +Seaweed = +Blue Coral = +Orange Coral = +Pink Coral = +Green Coral = +Sandy = + +#stairs.lua +Crystal Block Stair = +Crystal Block Slab = +Ice Brick Stair = +Ice Brick Slab = +Snow Brick Stair = +Snow Brick Slab = +Dry Dirt Stair = +Dry Dirt Slab = +Mushroom Trunk Stair = +Mushroom Trunk Slab = +Mushroom Top Stair = +Mushroom Top Slab = +Frost Wood Stair = +Frost Wood Slab = +Healing Wood Stair = +Healing Wood Slab = +Palm Wood Stair = +Palm Wood Slab = +Birch Wood Stair = +Birch Wood Slab = +Banana Wood Stair = +Banana Wood Slab = +Willow Wood Stair = +Willow Wood Slab = +Redwood Stair = +Redwood Slab = +Bamboo Stair = +Bamboo Slab = +Dry Dirt = +Mushroom Trunk = +Mushroom Top = +Healing Wood = +Redwood = + +#strawberry.lua +Strawberry = + +#water.lua +Ice Brick = +Snow Brick = + +#wood.lua +Willow Trunk = +Willow Wood = +Redwood Trunk = +Redwood Wood = +Frost Tree = +Frost Wood = +Healing Tree Trunk = +Healing Tree Wood = +Palm Trunk = +Palm Wood = +Banana Trunk = +Banana Wood = +Scorched Tree = +Mushroom = +Birch Trunk = +Birch Wood = +Bamboo = \ No newline at end of file diff --git a/sapling.lua b/sapling.lua new file mode 100644 index 0000000..18c1afb --- /dev/null +++ b/sapling.lua @@ -0,0 +1,112 @@ + +local S = redwood.intllib + +-- Register Saplings +redwood.register_sapling = function(name, desc, texture, height) + + minetest.register_node(name .. "_sapling", { + description = S(desc .. " Tree Sapling"), + drawtype = "plantlike", + visual_scale = 1.0, + tiles = {texture .. ".png"}, + inventory_image = texture .. ".png", + wield_image = texture .. ".png", + paramtype = "light", + sunlight_propagates = true, + is_ground_content = false, + walkable = false, + selection_box = { + type = "fixed", + fixed = {-0.5, -0.5, -0.5, 0.5, -5/16, 0.5} + }, + groups = { + snappy = 2, dig_immediate = 3, flammable = 2, + redwood_sapling = 1, sapling = 1, attached_node = 1 + }, + sounds = default.node_sound_defaults(), + grown_height = height, + }) +end + +redwood.register_sapling("redwood:redwood", "Redwood", "redwood_sapling", 31) + +redwood.add_tree = function (pos, ofx, ofy, ofz, schem) + -- check for schematic + if not schem then + print (S("Schematic not found")) + return + end + -- remove sapling and place schematic + minetest.swap_node(pos, {name = "air"}) + minetest.place_schematic( + {x = pos.x - ofx, y = pos.y - ofy, z = pos.z - ofz}, + schem, 0, nil, false) +end + +local path = minetest.get_modpath("redwood").."/schematics/" + +-- grow tree functions +function redwood.grow_redwood_tree(pos) + if math.random(1, 2) == 1 then + redwood.add_tree(pos, 9, 3, 9, path .. "redwood.mts") -- shinji + else + redwood.add_tree(pos, 8, 6, 8, path .. "redwood_tree.mts") -- iska + end +end + +-- check if sapling has enough height room to grow +local function enough_height(pos, height) + + local nod = minetest.line_of_sight( + {x = pos.x, y = pos.y + 1, z = pos.z}, + {x = pos.x, y = pos.y + height, z = pos.z}) + + if not nod then + return false -- obstructed + else + return true -- can grow + end +end + +redwood.grow_sapling = function (pos, node) + + local under = minetest.get_node({ + x = pos.x, + y = pos.y - 1, + z = pos.z + }).name + + if not minetest.registered_nodes[node.name] then + return + end + + local height = minetest.registered_nodes[node.name].grown_height + + -- do we have enough height to grow sapling into tree? + if not height or not enough_height(pos, height) then + return + end + + -- Check if Ethereal Sapling is growing on correct substrate + if node.name == "redwood:redwood_sapling" then + redwood.grow_redwood_tree(pos) + end +end +-- Grow saplings +minetest.register_abm({ + label = "Redwood grow sapling", + nodenames = {"group:redwood_sapling"}, + interval = 10, + chance = 50, + catch_up = false, + action = function(pos, node) + + local light_level = minetest.get_node_light(pos) + + if not light_level or light_level < 13 then + return + end + + redwood.grow_sapling(pos, node) + end, +}) diff --git a/schematics/redwood.mts b/schematics/redwood.mts new file mode 100644 index 0000000000000000000000000000000000000000..32a164fc56d5e1775357ae19529bdcc451def824 GIT binary patch literal 1159 zcma)&c{JMx0LOolu~{{*Z%FM;dQ-B-R-ulddy00ZPc4qj*&wBe<A<a~+CFcx5!W_X z)VUN%NV008@rbiQ8!hTCVy+2sMuciwJO15!d;9$R{e1uVT=&La2cUpHfCTgp|2Ka< zp!nM$aGa17NdO7>7<-TqPL7KU4~Ze*NrXfI{;wekOpcAdQ?_1CFJhiL=0emQ#>uRo znWjU6Oj#nCg3*hQs&ZX{^n1{>fYQ)mEdbbZ-u|E)0|2L-6SO}|ufig9jza*EJ%_x% zf&Z1FYNic^T7IVs#QTh-u^P;RH|7*-TndY)`X+dsx|uy{csCg~m!hhJ$hDGf+;?Fn zPz5gOf|Ob)YlOG_Q5`Vm%hd$&>yIuwKru~{Eju0yGEtlg`w<Q13*PTH$uXD1rXtD~ zr@Q#(Ic(X_dFsW82V_B-EXkl0+b$#qIA-M=`(bw#w^=-HYM!PMS@CRuGu=1pEfuX= z=tn!B_MAKq(w)F<^UpInR|Z5plB}9H9L4nqM-+_96x7%~d%lZxjb-HxKVk2kNF0L7 z+JbpUa6n!@cAuOm!-I>)Jv%T@2GU(vBP>AwHd~iSMEUFr^P9zm>a>|K4O}QM6wOZv z;NptGG4?@LUmlCJS;_3e+$d+4l8fCr<k<b#<Zs=u#N>=r9XeTDa7htUuNa3DzpOj| zO17sqC`7Av#7-YZE+Lxi)5?D!5m)yV+sIa^PaJ0{61&&1#^kY;sG^JJ2UJin7TO|e zb+D<|Ai8J$4BP`b0c=?{%b$-)%P3+}e1c9dSJ`{+QgUILJWXrIuzZrtH|F+Jr4g*~ zS+1QwC3g-xK-&a~wcMT>$KJuiP?cyIK_oQ<t17jCwks6N)%CFc7C+%k^+AJYxnV4o zn_bH#xX@odGH#jwXh*O8MLqpB0TfG$hEBeH&O`AAEs&@yC;1TD^x2uSchz$*WWq-? zV~)?!zfW4bTTd>p6*&Gv<X0&TQHSGnI93{S?_pxu=$Q`cHh55`zr(mNQ@KUz3>Y}_ zWKB|VmNG6FV<~F5k7H1=+}^$tApYFct-f6ZJH>aSd2m}k*{*rJ?&WvW777IZ<U4>F z*vTa;#-Yo={rXo*U2VoO0Js&ey}$Ve3j7CKA@S;v4ah&nS2jk6&TCdZ2|+ze@+_Fe z)eVbg=%s1Z)6GuXT$HR?Rk3%i<l5~1XjjzJ#jF#RZhZOIwPEJ3nPyVQIE5+BsBQ>< zx-k|_F_4H4%u1bl9?IXCe0t<Ci=?+l@({mYXy9~9hdLd+780ZZsk&>{a5!_pB!^xR zVuWbv0v+ZqO6-*CR1XGiSB^81bja^xKB;Ao&L537ohoS!3xsR$n6_u<x(RTu#Vblk zrbUXNn6`W-%*!e#Lx{u*4kU#ix7{4d%xM{!d0;ISnz?SjTiQ&5F`BC%yVh@^T?c9T q(;ZxNF1GxgQm69V)roQ|@sksXpqE^rE&Y4FzatbceZi5!(*FdzOk^AY literal 0 HcmV?d00001 diff --git a/schematics/redwood_tree.mts b/schematics/redwood_tree.mts new file mode 100644 index 0000000000000000000000000000000000000000..50c367a893d3820377dcc44af627aa220268d125 GIT binary patch literal 1373 zcma)zdo<Gv0DylIb(Ke*E{&GSk!R*kUe_>+F*OaVyqj&T%oxi|E05C2%_F(!+_M=; z9+}q}@|J`lwaMz1?9LQ3d2FSwg?sPc_uO;t_wV<8r-Oq|13Q6zz)@gd`v2nZS{-*W z2{0hiNW>%}j{I{Hkw8yKAViUgxD;YCp#LvHOS(*n1GJ-YaYO>1jAQ(Bq_RG-!{`sJ z^s+nPL@whL%!9tQLGyp-MXmKx6U;;%o_Nq{gPJA_ii<2X0N?wiPyqNw_^i4;rUn2U zYnSWt<6^F>K@i+@#u^C=f&$YZN|oO_hFOeBMAIFhgSP8+2R(gUhMPclF&T%RkALgw zKC?(mX64N>^BEFnF~{2^8InBeNco|!z5*V0E?GB+KCbTZb+h}7HJ{z^ocW%bZcXL& zfQD4FFhy$>=!4FcnEFnOsl-m_u1OK-5FYk1lT-9Xo1|NP-eF{=(yVn<niy**ewT3# zRkWg|jC^+0mQRvbt6+}CHY#FX<9u*Zud*5@tSf7t)K2H-%kU8nW>Cu)HJrj|Y>4Ic zN0OG@k@+My1xV5EfOK9?SJ0Vl=PQ>8Odqa6*?dX&<P@WVe@U>-8hb;x<rOF*7X3n} zBm&DRW$(4)rs?{U(D?Zhrqd$##&qt>=FJu4<8@Kgvhq_%U!%c9d-Aljfu7V!1#PAA zFJ2hDv}!*}sd?3zg0gn~8vI5Te##NAEM^(pjBCYK*S_6alU+eBymM)bbSVXOKyC5{ zT;EfnEUDXb(l+AeoaIHX!1j9j?3lbaFVHMOMmsV)EM4}3lKs+*BPOC&oI2!v*y)t` z@Lg3e{8!QD%7HjY$ez1~@ysQXIp=9-3<|{Mz~7#$ubSC28Bl>lE;#H`TorAI%RD+v zUAMx$d9ia{$d_4{!HF(kg_gr>_O_3LXM=}pYN7Ivq(;s|lSDT{0uBN0Hdvp@nObGg zU4j0+;~%pDAW;)vhEfAAq%_Hm20eiP<e_wl)1u)XDn)iZ;ge1icZXy-T^%gvZ%-)> zc~ANl^~rV~i_%LIL>K%LxUP-Qg7pNa#@*h`*&&YQ2{ISjkK|);C|Z2|owl&E65CG! z_vOA>)UfrsK1@?7{M3VdO{^5h<6<h%jOq(_FxOQ6>djzbhS|0bp$7Z?^<_nRJo2t! zn0InqqT#1+e<0w-n2u?!SQibO#lIba?T_H|w}cr+LdtK=i*oD46Xsq<hw<u#Q<~GY zDiEe0yuT($Ia_el&c1RpB^(4^dz9jK@0>_wYUrz<E0=pgI=GfjU|E4?Z!JWsT9Yfn zpyj<=ZxAM)UXJA`wP&|%E4|`!w2l=MQ*X89Ae<+H^k#y)GUy$VndOCc2v|v|NEO4V zX?rq^(QajhpBaLSSYObqpw!!GmT@FJ71I4jXtts76~fGl9Fx!JaNlqoJ(%F0%P4E` zSltg%QbwLF>!rHuTfj~bux=-PcKB(8B&;1X<2A-84c+#B`&E5N*QVvQXFt}Fw>zS$ zp_y*%)0oLcJq{512U--q;y|_X{n9FqxbSvY5BNqF{@&c4<(>Vce8^7CyU)YCTqX<% zm(vi)`^x#q@_~g*38D=vZchP?QF=fmsQoD-Wcxe&X^Zah>9P77T158QHGkui(UnXD z+@g2m^F2*AcwP|O{bvc7L5sSFt)TDupi?7*$U^EiKA>lnn1bx3WolqyGn}2_gHGGo z0Cry6+iwi9dWvPwWlQpW$vCv^1cFzQC-z*HZSsh_C<yBxcQkRp?SVjOvY%X~YxMH0 F$zNjRo815a literal 0 HcmV?d00001 diff --git a/textures/redwood_leaves.png b/textures/redwood_leaves.png new file mode 100644 index 0000000000000000000000000000000000000000..9cb0799d95abd38657051d0f86aa6a686bd83c8c GIT binary patch literal 969 zcmV;)12+7LP)<h;3K|Lk000e1NJLTq000mG000mO1^@s6AM^iV000A!Nkl<ZILlR& zPiP}$7{=fC`(~z@B;8CxV@he#>9!DC>$2;n>u$R$!j>k@K@e}!lLyNR?!|+6^B^vY zhXtwi>R!AEf@B-h;zC&>*cLTPmS8rUG<MsXnwk8a$v1yKFWUvr&*k_0cpi)<7g#-; zmtv_!S55|Su-*H>v8+$)*}OEG_JhFY3PhlDax#EMuKf;o+zoF^5shr?Ev>ry9mZ0N zu4_AMu5Eu~b^3-J4sxx!OO)v4E)bMN^`TVR&>)<c<&C`}j;8(KoW!^s4szFaekAS6 zArgUp%`NA4W3Pzq$|3sBOVFtu`OH&Y6lbpSXmWvhMieWSzW(uXrVBK3fJQ?@BG6?V zo{_-go93Za75baHrPuZ(Wg@{WT98ER#XnG_b9Ud95mEQQ5gzJiGzSQ}XJkZ~NHDWk z##U|zJCC1;pTB((yeUQWkjw7^!MIlW1?iB~?sxz6oU9iCMM|9kJ7-m%=c8#q5OBGm zOeDS?G#t3S`W$}pK;Vlz`{>&CS4hc+%0z<Ivw6uMy2SKS72D;%p>td?&1MTk=K{lU zVwTI{Ajru8^fz^D$@fUw>P>O;R0lZ{Qag?Pnm=^O@un2g%I%;xDuP{`b>(CLOSkSJ zc`5{qTpPO0U!`1oGUH7tVD`$$9rrK0<A8ap6C>N=D;^)1r74dyU|Y?*RTy8o+9YOq zgwx0Y0)QHP$pZtey<%irFt&Dsp9wX4W&CK-B3r#Fo($E^!=HASJ)uB;ptXZIzH~K0 z1bW0Bx1!hgr#lZBJgvn6V4idSCIGxr&*oo^-&x`PP2I9+K|0QKVKnWB{|!S<2Jp$o zHd1$t>!m6NugD;{lh3l!t$V1%RUWxH3;j*qu4nTi4$nvse$5B$Q9MEf`UB_uqD2c5 zHD4GIO1A5{pVLZQ<>#iy0RYs4%!Aq)A?MsCL3Q30XRdL<>lt#GJqZBNt1w`#j)at? z;&)cKUaBI4-;i5QC6>ParA;2A(a_MM1&J694V!nX;M(?ktkoHD28{a7OVHRWqS4UM z$h9GwTwuqUE||?00hiwlM6P@`oH#<!xxk)H+3b~ZZ0!a=Sueuy<k<TF@C72?XXN+g zUWI`&k#LAWU+y3OyBk_nf!#OerPt+MRN^YvOI19(H2^>~xxm2X(`K_(3$3bfvR(w= rc*J3?4h^lU(E0u!nGQ*9L=^r5OitZ}7|R8I00000NkvXXu0mjfHV4`- literal 0 HcmV?d00001 diff --git a/textures/redwood_sapling.png b/textures/redwood_sapling.png new file mode 100644 index 0000000000000000000000000000000000000000..90396d9fc62158c39cfe54df476b3a45abe013c0 GIT binary patch literal 226 zcmeAS@N?(olHy`uVBq!ia0vp^0wB!73?$#)eFPGa2=EDUO)OwAkl=Sz68F-SaWqm3 zFjlp5(MqT^t>ewD0;*vw3GxeOaCmkj4a7<Ec6VXuV3qX%aySb-B8wRqxP?KOkzv*x z37{Z*iKnkC`#pA6K_&*jGXWqWXHOT$5RU7~2@XteI0J62UBYn2qug7Q+4$6)kV}d| zt&apW+f<BK=qV?2oE6LAx~iYUF*Pa3A$<eag6@`Cht3Ex2{CYf=D5}1xXuh{9D}E; KpUXO@geCwnZ#t6z literal 0 HcmV?d00001 diff --git a/textures/redwood_trunk.png b/textures/redwood_trunk.png new file mode 100644 index 0000000000000000000000000000000000000000..fc6a325815f1e59e459f3dbc567ad9ffee1f3716 GIT binary patch literal 867 zcmV-p1DyPcP)<h;3K|Lk000e1NJLTq001BW001Be0{{R3M5Kzw0001BP)t-s6A1+y z5DFm?3?35(CJ_!R6%Z#E5GxrCGZzpr7!Nob6EGeWG#wQ)9}hPk5IZ6jHzXQ7BN{;> z7dj>uLnRbICmBj9978M<PAD5iEFDNK8dEGCR5Bq@GbK<oAXGFRF}zJ300001VoOIv z0Eh)0NB{r;32;bRa{vGf6951U69E94oEQKA00(qQO+^RZ2L%v20XB_?0{{R5iAh93 zR5;5Wli`-#AP9ujyJ8Jo5xv-wM)&>SvTXk)=X@EMVG?2lvrdb57t%2wNTfZ*sJa(s z4B=JyNZGnOj=%SFdJ>iR6%QSTTtkR2vRaJxQc;xEYf($183_U9kW!S{fMqvbgV|&i z99bw68Dt1P&6dUT*j2}pwd!Kf3rnTTfSLnAh6H4hO3yX^rlF*aFiZt^4G@EN0&J92 z3_i=1$&8@W+&(VE7=;_<w`CiW=9<68b>F_3@aC(yi?~13OH*2l>b-q;ACf|szHueb zA<7{%#7otojfg`KT)`8R7+k`?gs1naYGWLzLK88-MpKGEJ9x-&cd7Fj*Mo^KB#1;u zSs=vh0F@(H%{EsXK!Sr}qeu0R0{{k47f9B%q&^Vq>BO&`2g{AVW44sAC2QSm<kjO; z#Tx6#`2Fd=Ls?LJLqCou)D{P63KTMvX=4Z8w}8*bsltm_21O_{xEZ0g{sV5!SoFbe zQ)<o`<_x@~&yR-JtDFura;D)oP<3KJ=TLZbzE6lD5qeJmxUrp2CQU?9+#bsOHct{9 z$Rk#H_#DGbUqXpu%(?x3)RTrUOs<gUW6$;xGE5L1AbM+epk}{}3edUMw(XB+dc-M< z^6^$D$le$3qJ--V1Dl&4j3qA9!yy#N31Q~3tLZZg-~ArnJ-t#t<#=IAt;l%85Z%1m z>Dui)n4!qI4Sp1Ug1*taEbm?Y#;VVsUv31S&ws!TqgJ#uTibkg^Rz~$7vQnwKuTZ2 zlvM#~yTZEG@|P5W_TZn!MY7%V+fDen#7mo3@&7IPb7${lOx5eF4W*w)X?xuU76@=i tK~i{yh<(E*xx^Ns1Jb%H6h$r={{eOWI7Z{islEUJ002ovPDHLkV1fw3Xh;A6 literal 0 HcmV?d00001 diff --git a/textures/redwood_trunk_top.png b/textures/redwood_trunk_top.png new file mode 100644 index 0000000000000000000000000000000000000000..40ca89e4a2de1fda9fcc327c0737d96707e0cf65 GIT binary patch literal 822 zcmV-61Ihe}P)<h;3K|Lk000e1NJLTq001BW001Be0{{R3M5Kzw0001BP)t-s7Yqj; z5(Oa<3nvi@C>IYm6bL&P1wj`ILl^`w9TPno5I`FQNf-z~91TYt2}d0RO&kt5A{j~_ z4p1HnO(6+DB^XvD5LqS+R3{NjFCkwn5?n18VJsMCEFWn#A7VWxeOX(D00001VoOIv z0Eh)0NB{r;32;bRa{vGf6951U69E94oEQKA00(qQO+^RZ2L%v2AIyTfU;qFDTuDSh zR5;5$RDrVMAPnU7*#bg=LK>oQ_5c6!HudJP!&I{*yV;;I=J9$R$Lqv)oagy^EXR2) z#^Ckzzuo|lbk&^dx>~GlOGGJC4bFQ29<}6_GZk{1b<QPcts`mFQV{=ZmY7nmwc)_# zbRipdqSji7@-R!Pn!S__=aajilwu-brYI*Ww5Dih@vAOsrL^QC08*1T4+NR-c*GMU zRVpYLo%BAOH%kGaMZ{fz7QEjp*F?Sd02P`cf_QX^d5mk$Yp`-m#FNmFd=r2`tyEpA za$U27VQwt4Xa-bpE*2J4aVdm6-|u$^Lb@2U{0Ee1V}a-tNG1S6)U^*ew|WC2lvKNK zp*m_^Q^;EZ$Z*R8D5(+a9<&+r&45jBe!#8X2xQ;4ec!gdMi57h+~)z3EKLa@MXLL* ze%2CmhNj&6sVV@d5g2EyU7t4X4)%}&xWDd3fqT;a2b|X`7E)O|(dP*c1ep!(Dw|Hr zy6$@jXgLcL56u98#<|$lKG)~EKA{8sCdw>#39W|xPtgL;b+4O~IWSZ_`1}Wm$TNqt zJ7hvAzAzfhZ@Fc{yHsh+QKQ|_D%YmQIRo&uyHlei)y*N%x`{A10i<_AiG)VLIH_|C zAvnzSYkgz5jtu1{(Ikz}XTmp~=_*2_$rPCN1u*VOnxD^w2?oQ9WC&*B2HeK<oI?Ny z9K+BJXv|s07f@IMf_sG9A}lygLj;5d3^m`8!u)b0@Eh8o>$=|GrE&AK+yD$1=2(LW ze*s;*U(AnL{PB9=@}Kw*IQ+|dyge4<Pkj9H7g3%<aOOVu@Bjb+07*qoM6N<$g1^yE AXaE2J literal 0 HcmV?d00001 diff --git a/textures/redwood_wood.png b/textures/redwood_wood.png new file mode 100644 index 0000000000000000000000000000000000000000..9991ed770f694ceee759e8fb00eb867ce1ae2e31 GIT binary patch literal 654 zcmV;90&)F`P)<h;3K|Lk000e1NJLTq001BW001Be0{{R3M5Kzw0001BP)t-sEfEJY z5eYIC1vV51I}-~z77ITW2Rs-DMHUP}7z;=k2SXYSK^zWC8Vg1o2}B+WP8|<Q9}Z9+ z2~8jgO(79fAr4U_4qPG(SR@KpBoSLD4q7J@SSbxyDidES5M3@2Y!kng0005$Nkl<Z zILlR1i-Myd42)8s?keSBTtQd=|1WO>^m;c6$Yc^?0y!6e#d{wbd|16-vHHr9P<~mK z6k_m+BYS3<-=N^(y@ZeuCNgg<@cth`SmcD1B>Wn-D1sR439Ao|kb-N6*KEYTv5(Ci z9JM63nu=eu;GKgw1+v!8FZY_~`6UlXjMoeEJZrF&abS!&<h_(~6v0*YvI`^{-8%vz zso&1+9mu6B=qS5n&G%K!HAGcqu0kq&7LIwlE?D4FCHr2GYOWFP6Sc`lIWJ((>mkY- zy#5c<d7i&8pT~9I<$&xKMUMVB>JQUW8-;rJ?qEdejldaW==uDr=-k`3fSQa5%;ZEP zL&&gveT>FD9)x)U`aHQWS*Is#`l0m0koh0q({pOxS}Ubmgcb~pR>tDfYVlWU9JPMX zwrv3;^$VBk+b~&&c1vZ^ho2v*KFZ4t(iAiRbwE`QA3;c0xm~Ba?%V_s73~)GOY~7* z0k?&s1m^DQK4$DvN)XhOIp+;zioA&x2Dv1-jVV&S%!06{6~xLcoA0@UEb8VOCJRDq zYqcW5h)O9E;*HsgKtnJN!$8B>1lqP*Hj$Qs4%DGW2vAk6#a<=Yh#!C;@}+bK1V;Qp o{tW;TDW%n0fzx3h6n!xK0Sfgz3oLATr2qf`07*qoM6N<$f<`wCC;$Ke literal 0 HcmV?d00001 diff --git a/wood.lua b/wood.lua new file mode 100644 index 0000000..caca1d2 --- /dev/null +++ b/wood.lua @@ -0,0 +1,31 @@ + +local S = redwood.intllib + +-- redwood trunk +minetest.register_node("redwood:redwood_trunk", { + description = S("Redwood Trunk"), + tiles = { + "redwood_trunk_top.png", + "redwood_trunk_top.png", + "redwood_trunk.png" + }, + groups = {tree = 1, choppy = 2, oddly_breakable_by_hand = 1, flammable = 2}, + sounds = default.node_sound_wood_defaults(), + paramtype2 = "facedir", + on_place = minetest.rotate_node, +}) + +-- redwood wood +minetest.register_node("redwood:redwood_wood", { + description = S("Redwood Wood"), + tiles = {"redwood_wood.png"}, + is_ground_content = false, + groups = {wood = 1, choppy = 2, oddly_breakable_by_hand = 1, flammable = 3}, + sounds = default.node_sound_wood_defaults(), +}) + +minetest.register_craft({ + output = "redwood:redwood_wood 4", + recipe = {{"redwood:redwood_trunk"}}, +}) + -- GitLab