mirror of
https://github.com/luanti-org/minetest_game.git
synced 2025-06-06 05:44:26 -04:00
Default: Add jungletree_branch node, use in tree generation
Fix rotation errors for mapgen aspen and sapling jungletree
This commit is contained in:
parent
f80fafbcfb
commit
87b43a26f2
5 changed files with 26 additions and 7 deletions
|
@ -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({
|
||||
|
|
|
@ -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"},
|
||||
|
|
Binary file not shown.
Binary file not shown.
|
@ -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
|
||||
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue