From 87b43a26f26cb93f45fb9543feee9f62a375e481 Mon Sep 17 00:00:00 2001 From: paramat Date: Mon, 7 Mar 2016 04:18:46 +0000 Subject: [PATCH] Default: Add jungletree_branch node, use in tree generation Fix rotation errors for mapgen aspen and sapling jungletree --- mods/default/mapgen.lua | 1 - mods/default/nodes.lua | 21 +++++++++++++++--- mods/default/schematics/jungle_tree.mts | Bin 251 -> 296 bytes .../schematics/jungle_tree_from_sapling.mts | Bin 246 -> 290 bytes mods/default/trees.lua | 11 ++++++--- 5 files changed, 26 insertions(+), 7 deletions(-) diff --git a/mods/default/mapgen.lua b/mods/default/mapgen.lua index 3424a557..4b61518e 100644 --- a/mods/default/mapgen.lua +++ b/mods/default/mapgen.lua @@ -1204,7 +1204,6 @@ function default.register_decorations() y_max = 31000, schematic = minetest.get_modpath("default").."/schematics/aspen_tree.mts", flags = "place_center_x, place_center_z", - rotation = "random", }) minetest.register_decoration({ diff --git a/mods/default/nodes.lua b/mods/default/nodes.lua index 61feec26..ecc1b686 100644 --- a/mods/default/nodes.lua +++ b/mods/default/nodes.lua @@ -14,7 +14,7 @@ language (for example pinewood and pine wood) the underscore form should be used Stone ----- -(1. Material 2. Cobble variant 3. Brick variant [4. Modified forms]) +(1. Material 2. Cobble variant 3. Brick variant 4. Modified forms) default:stone default:cobble @@ -33,7 +33,7 @@ default:obsidianbrick Soft / Non-Stone ---------------- -(1. Material [2. Modified forms]) +(1. Material 2. Modified forms) default:dirt default:dirt_with_grass @@ -55,7 +55,7 @@ default:ice Trees ----- -(1. Trunk 2. Fabricated trunk 3. Leaves 4. Sapling [5. Fruits]) +(1. Trunk 2. Branch 3. Fabricated trunk 4. Leaves 5. Sapling 6. Fruits) default:tree default:wood @@ -64,6 +64,7 @@ default:sapling default:apple default:jungletree +default:jungletree_branch default:junglewood default:jungleleaves default:junglesapling @@ -82,6 +83,7 @@ default:aspen_tree default:aspen_wood default:aspen_leaves default:aspen_sapling + Ores ---- (1. In stone 2. Block) @@ -107,6 +109,7 @@ default:diamondblock Plantlife (non-cubic) --------------------- + default:cactus default:papyrus default:dry_shrub @@ -139,6 +142,7 @@ default:lava_flowing Tools / "Advanced" crafting / Non-"natural" ------------------------------------------- + default:torch default:chest @@ -168,6 +172,7 @@ default:meselamp Misc ---- + default:cloud default:nyancat default:nyancat_rainbow @@ -524,6 +529,16 @@ minetest.register_node("default:jungletree", { on_place = minetest.rotate_node }) +minetest.register_node("default:jungletree_branch", { + description = "Jungle Tree Branch", + tiles = {"default_jungletree.png"}, + paramtype2 = "facedir", + is_ground_content = false, + groups = {tree = 1, choppy = 2, oddly_breakable_by_hand = 1, flammable = 2}, + drop = "default:jungletree", + sounds = default.node_sound_wood_defaults(), +}) + minetest.register_node("default:junglewood", { description = "Junglewood Planks", tiles = {"default_junglewood.png"}, diff --git a/mods/default/schematics/jungle_tree.mts b/mods/default/schematics/jungle_tree.mts index 329364a87ed26d90edad83c4f88e029ef1d742c0..1430a2ab1c90b7e7a64367e7d77c7894a7209395 100644 GIT binary patch delta 231 zcmVv7-2Hv$AP zC7l3pM#C@YF@7m25{iinU3dW?hC(58NJqrRldo#D216L#hdeNU~ovpp@o zMBd%=Vo&EI{?EpFpYSUnp;=zo5OI^FFZi9(P*Y+uiw@dpME7*(33IdvAb(qZ7KB_K4O{_zty0J3*RWA`IjQUCw| diff --git a/mods/default/schematics/jungle_tree_from_sapling.mts b/mods/default/schematics/jungle_tree_from_sapling.mts index babaa45f7a11de1fc017b341cea0751974ce2ab4..4c472a5c6fb70bc19bec37660a296b62be7f3c49 100644 GIT binary patch delta 225 zcmV<703QGL0ipts9svZAA1{9Z8DwQb3UB32VO@)$~nEl{B{2k{EVp=)~d24h;Jn3p9=^|&aVV3#Qp=CPjXHXw2l b5(Z8G3VOLz>DK-5F{~kW{eaF5K6W+xsO@Ha delta 181 zcmV;m080O&0`>ur9svW9A1{A+ob6Hz4#OY_wOq`jcm$5{j=m|w)(>=MF-w;0ks?Zg z=ZhhH0f(5qoB!*r2i-3;a{Y`yN2`T-1XmKPE;Cvkd!)5WEx0GdSyCFGX*h(qqINjxdCi-_Hf(V>(T jigkNsrJpvH8>}*gz|M_Km%)XLQ!r`z$4}r1=K(e2EUa3O diff --git a/mods/default/trees.lua b/mods/default/trees.lua index c93fdabc..0b43c8eb 100644 --- a/mods/default/trees.lua +++ b/mods/default/trees.lua @@ -225,6 +225,7 @@ function default.grow_jungle_tree(pos, bad) local c_air = minetest.get_content_id("air") local c_ignore = minetest.get_content_id("ignore") local c_jungletree = minetest.get_content_id("default:jungletree") + local c_jungletree_branch = minetest.get_content_id("default:jungletree_branch") local c_jungleleaves = minetest.get_content_id("default:jungleleaves") local vm = minetest.get_voxel_manip() @@ -234,6 +235,7 @@ function default.grow_jungle_tree(pos, bad) ) local a = VoxelArea:new({MinEdge = minp, MaxEdge = maxp}) local data = vm:get_data() + local p2data = vm:get_param2_data() add_trunk_and_leaves(data, a, pos, c_jungletree, c_jungleleaves, height, 3, 30, false) @@ -245,9 +247,11 @@ function default.grow_jungle_tree(pos, bad) for x_dist = -1, 1 do if random(1, 3) >= 2 then if data[vi_1] == c_air or data[vi_1] == c_ignore then - data[vi_1] = c_jungletree + data[vi_1] = c_jungletree_branch + p2data[vi_1] = random(0, 1) elseif data[vi_2] == c_air or data[vi_2] == c_ignore then - data[vi_2] = c_jungletree + data[vi_2] = c_jungletree_branch + p2data[vi_2] = random(0, 1) end end vi_1 = vi_1 + 1 @@ -256,6 +260,7 @@ function default.grow_jungle_tree(pos, bad) end vm:set_data(data) + vm:set_param2_data(p2data) vm:write_to_map() vm:update_map() end @@ -403,7 +408,7 @@ function default.grow_new_jungle_tree(pos) local path = minetest.get_modpath("default") .. "/schematics/jungle_tree_from_sapling.mts" minetest.place_schematic({x = pos.x - 2, y = pos.y - 1, z = pos.z - 2}, - path, "0", nil, false) + path, "random", nil, false) end