mirror of
https://github.com/minetest/minetest_game.git
synced 2024-12-22 22:22:25 +01:00
Biomes: Add pine bush to taiga and snowy grassland
Replaces 'bush' in snowy grassland.
This commit is contained in:
parent
d4b0b73ae0
commit
9318c71659
@ -919,6 +919,9 @@ Trees
|
|||||||
* `default.grow_acacia_bush(pos)`
|
* `default.grow_acacia_bush(pos)`
|
||||||
* Grows an acaia bush at pos
|
* Grows an acaia bush at pos
|
||||||
|
|
||||||
|
* `default.grow_pine_bush(pos)`
|
||||||
|
* Grows a pine bush at pos
|
||||||
|
|
||||||
Carts
|
Carts
|
||||||
-----
|
-----
|
||||||
|
|
||||||
|
@ -79,11 +79,13 @@ paramat (CC BY-SA 3.0):
|
|||||||
default_acacia_leaves_simple.png
|
default_acacia_leaves_simple.png
|
||||||
default_acacia_sapling.png
|
default_acacia_sapling.png
|
||||||
default_acacia_bush_sapling.png
|
default_acacia_bush_sapling.png
|
||||||
|
default_pine_bush_sapling.png
|
||||||
default_acacia_tree.png
|
default_acacia_tree.png
|
||||||
default_acacia_tree_top.png
|
default_acacia_tree_top.png
|
||||||
default_acacia_wood.png
|
default_acacia_wood.png
|
||||||
default_acacia_bush_stem.png
|
default_acacia_bush_stem.png
|
||||||
default_bush_stem.png
|
default_bush_stem.png
|
||||||
|
default_pine_bush_stem.png
|
||||||
default_junglewood.png
|
default_junglewood.png
|
||||||
default_jungletree_top.png
|
default_jungletree_top.png
|
||||||
default_sandstone_brick.png
|
default_sandstone_brick.png
|
||||||
|
@ -49,6 +49,13 @@ minetest.register_craft({
|
|||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
|
||||||
|
minetest.register_craft({
|
||||||
|
output = "default:pine_wood",
|
||||||
|
recipe = {
|
||||||
|
{"default:pine_bush_stem"},
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
||||||
minetest.register_craft({
|
minetest.register_craft({
|
||||||
output = 'default:stick 4',
|
output = 'default:stick 4',
|
||||||
recipe = {
|
recipe = {
|
||||||
@ -953,6 +960,12 @@ minetest.register_craft({
|
|||||||
burntime = 4,
|
burntime = 4,
|
||||||
})
|
})
|
||||||
|
|
||||||
|
minetest.register_craft({
|
||||||
|
type = "fuel",
|
||||||
|
recipe = "default:pine_bush_sapling",
|
||||||
|
burntime = 2,
|
||||||
|
})
|
||||||
|
|
||||||
minetest.register_craft({
|
minetest.register_craft({
|
||||||
type = "fuel",
|
type = "fuel",
|
||||||
recipe = "default:aspen_sapling",
|
recipe = "default:aspen_sapling",
|
||||||
@ -1058,6 +1071,12 @@ minetest.register_craft({
|
|||||||
burntime = 8,
|
burntime = 8,
|
||||||
})
|
})
|
||||||
|
|
||||||
|
minetest.register_craft({
|
||||||
|
type = "fuel",
|
||||||
|
recipe = "default:pine_bush_stem",
|
||||||
|
burntime = 6,
|
||||||
|
})
|
||||||
|
|
||||||
minetest.register_craft({
|
minetest.register_craft({
|
||||||
type = "fuel",
|
type = "fuel",
|
||||||
recipe = "default:junglegrass",
|
recipe = "default:junglegrass",
|
||||||
|
@ -1946,7 +1946,7 @@ function default.register_decorations()
|
|||||||
minetest.register_decoration({
|
minetest.register_decoration({
|
||||||
name = "default:bush",
|
name = "default:bush",
|
||||||
deco_type = "schematic",
|
deco_type = "schematic",
|
||||||
place_on = {"default:dirt_with_grass", "default:dirt_with_snow"},
|
place_on = {"default:dirt_with_grass"},
|
||||||
sidelen = 16,
|
sidelen = 16,
|
||||||
noise_params = {
|
noise_params = {
|
||||||
offset = -0.004,
|
offset = -0.004,
|
||||||
@ -1956,7 +1956,7 @@ function default.register_decorations()
|
|||||||
octaves = 3,
|
octaves = 3,
|
||||||
persist = 0.7,
|
persist = 0.7,
|
||||||
},
|
},
|
||||||
biomes = {"snowy_grassland", "grassland", "deciduous_forest",
|
biomes = {"grassland", "deciduous_forest",
|
||||||
"floatland_grassland"},
|
"floatland_grassland"},
|
||||||
y_max = 31000,
|
y_max = 31000,
|
||||||
y_min = 1,
|
y_min = 1,
|
||||||
@ -1986,6 +1986,28 @@ function default.register_decorations()
|
|||||||
flags = "place_center_x, place_center_z",
|
flags = "place_center_x, place_center_z",
|
||||||
})
|
})
|
||||||
|
|
||||||
|
-- Pine bush
|
||||||
|
|
||||||
|
minetest.register_decoration({
|
||||||
|
name = "default:pine_bush",
|
||||||
|
deco_type = "schematic",
|
||||||
|
place_on = {"default:dirt_with_snow"},
|
||||||
|
sidelen = 16,
|
||||||
|
noise_params = {
|
||||||
|
offset = -0.004,
|
||||||
|
scale = 0.01,
|
||||||
|
spread = {x = 100, y = 100, z = 100},
|
||||||
|
seed = 137,
|
||||||
|
octaves = 3,
|
||||||
|
persist = 0.7,
|
||||||
|
},
|
||||||
|
biomes = {"taiga", "snowy_grassland"},
|
||||||
|
y_max = 31000,
|
||||||
|
y_min = 4,
|
||||||
|
schematic = minetest.get_modpath("default") .. "/schematics/pine_bush.mts",
|
||||||
|
flags = "place_center_x, place_center_z",
|
||||||
|
})
|
||||||
|
|
||||||
-- Grasses
|
-- Grasses
|
||||||
|
|
||||||
register_grass_decoration(-0.03, 0.09, 5)
|
register_grass_decoration(-0.03, 0.09, 5)
|
||||||
|
@ -162,6 +162,9 @@ default:bush_sapling
|
|||||||
default:acacia_bush_stem
|
default:acacia_bush_stem
|
||||||
default:acacia_bush_leaves
|
default:acacia_bush_leaves
|
||||||
default:acacia_bush_sapling
|
default:acacia_bush_sapling
|
||||||
|
default:pine_bush_stem
|
||||||
|
default:pine_bush_needles
|
||||||
|
default:pine_bush_sapling
|
||||||
|
|
||||||
default:sand_with_kelp
|
default:sand_with_kelp
|
||||||
|
|
||||||
@ -1681,6 +1684,77 @@ minetest.register_node("default:acacia_bush_sapling", {
|
|||||||
end,
|
end,
|
||||||
})
|
})
|
||||||
|
|
||||||
|
minetest.register_node("default:pine_bush_stem", {
|
||||||
|
description = "Pine Bush Stem",
|
||||||
|
drawtype = "plantlike",
|
||||||
|
visual_scale = 1.41,
|
||||||
|
tiles = {"default_pine_bush_stem.png"},
|
||||||
|
inventory_image = "default_pine_bush_stem.png",
|
||||||
|
wield_image = "default_pine_bush_stem.png",
|
||||||
|
paramtype = "light",
|
||||||
|
sunlight_propagates = true,
|
||||||
|
groups = {choppy = 2, oddly_breakable_by_hand = 1, flammable = 2},
|
||||||
|
sounds = default.node_sound_wood_defaults(),
|
||||||
|
selection_box = {
|
||||||
|
type = "fixed",
|
||||||
|
fixed = {-7 / 16, -0.5, -7 / 16, 7 / 16, 0.5, 7 / 16},
|
||||||
|
},
|
||||||
|
})
|
||||||
|
|
||||||
|
minetest.register_node("default:pine_bush_needles", {
|
||||||
|
description = "Pine Bush Needles",
|
||||||
|
drawtype = "allfaces_optional",
|
||||||
|
waving = 1,
|
||||||
|
tiles = {"default_pine_needles.png"},
|
||||||
|
paramtype = "light",
|
||||||
|
groups = {snappy = 3, flammable = 2, leaves = 1},
|
||||||
|
drop = {
|
||||||
|
max_items = 1,
|
||||||
|
items = {
|
||||||
|
{items = {"default:pine_bush_sapling"}, rarity = 5},
|
||||||
|
{items = {"default:pine_bush_needles"}}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
sounds = default.node_sound_leaves_defaults(),
|
||||||
|
|
||||||
|
after_place_node = default.after_place_leaves,
|
||||||
|
})
|
||||||
|
|
||||||
|
minetest.register_node("default:pine_bush_sapling", {
|
||||||
|
description = "Pine Bush Sapling",
|
||||||
|
drawtype = "plantlike",
|
||||||
|
tiles = {"default_pine_bush_sapling.png"},
|
||||||
|
inventory_image = "default_pine_bush_sapling.png",
|
||||||
|
wield_image = "default_pine_bush_sapling.png",
|
||||||
|
paramtype = "light",
|
||||||
|
sunlight_propagates = true,
|
||||||
|
walkable = false,
|
||||||
|
on_timer = default.grow_sapling,
|
||||||
|
selection_box = {
|
||||||
|
type = "fixed",
|
||||||
|
fixed = {-4 / 16, -0.5, -4 / 16, 4 / 16, 2 / 16, 4 / 16}
|
||||||
|
},
|
||||||
|
groups = {snappy = 2, dig_immediate = 3, flammable = 2,
|
||||||
|
attached_node = 1, sapling = 1},
|
||||||
|
sounds = default.node_sound_leaves_defaults(),
|
||||||
|
|
||||||
|
on_construct = function(pos)
|
||||||
|
minetest.get_node_timer(pos):start(math.random(300, 1500))
|
||||||
|
end,
|
||||||
|
|
||||||
|
on_place = function(itemstack, placer, pointed_thing)
|
||||||
|
itemstack = default.sapling_on_place(itemstack, placer, pointed_thing,
|
||||||
|
"default:pine_bush_sapling",
|
||||||
|
-- minp, maxp to be checked, relative to sapling pos
|
||||||
|
{x = -1, y = 0, z = -1},
|
||||||
|
{x = 1, y = 1, z = 1},
|
||||||
|
-- maximum interval of interior volume check
|
||||||
|
2)
|
||||||
|
|
||||||
|
return itemstack
|
||||||
|
end,
|
||||||
|
})
|
||||||
|
|
||||||
minetest.register_node("default:sand_with_kelp", {
|
minetest.register_node("default:sand_with_kelp", {
|
||||||
description = "Kelp",
|
description = "Kelp",
|
||||||
drawtype = "plantlike_rooted",
|
drawtype = "plantlike_rooted",
|
||||||
@ -2532,3 +2606,9 @@ default.register_leafdecay({
|
|||||||
leaves = {"default:acacia_bush_leaves"},
|
leaves = {"default:acacia_bush_leaves"},
|
||||||
radius = 1,
|
radius = 1,
|
||||||
})
|
})
|
||||||
|
|
||||||
|
default.register_leafdecay({
|
||||||
|
trunks = {"default:pine_bush_stem"},
|
||||||
|
leaves = {"default:pine_bush_needles"},
|
||||||
|
radius = 1,
|
||||||
|
})
|
||||||
|
BIN
mods/default/schematics/pine_bush.mts
Normal file
BIN
mods/default/schematics/pine_bush.mts
Normal file
Binary file not shown.
BIN
mods/default/textures/default_pine_bush_sapling.png
Normal file
BIN
mods/default/textures/default_pine_bush_sapling.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 166 B |
BIN
mods/default/textures/default_pine_bush_stem.png
Normal file
BIN
mods/default/textures/default_pine_bush_stem.png
Normal file
Binary file not shown.
After Width: | Height: | Size: 280 B |
@ -85,6 +85,10 @@ function default.grow_sapling(pos)
|
|||||||
minetest.log("action", "An acacia bush sapling grows into a bush at "..
|
minetest.log("action", "An acacia bush sapling grows into a bush at "..
|
||||||
minetest.pos_to_string(pos))
|
minetest.pos_to_string(pos))
|
||||||
default.grow_acacia_bush(pos)
|
default.grow_acacia_bush(pos)
|
||||||
|
elseif node.name == "default:pine_bush_sapling" then
|
||||||
|
minetest.log("action", "A pine bush sapling grows into a bush at "..
|
||||||
|
minetest.pos_to_string(pos))
|
||||||
|
default.grow_pine_bush(pos)
|
||||||
elseif node.name == "default:emergent_jungle_sapling" then
|
elseif node.name == "default:emergent_jungle_sapling" then
|
||||||
minetest.log("action", "An emergent jungle sapling grows into a tree at "..
|
minetest.log("action", "An emergent jungle sapling grows into a tree at "..
|
||||||
minetest.pos_to_string(pos))
|
minetest.pos_to_string(pos))
|
||||||
@ -483,6 +487,16 @@ function default.grow_acacia_bush(pos)
|
|||||||
end
|
end
|
||||||
|
|
||||||
|
|
||||||
|
-- Pine bush
|
||||||
|
|
||||||
|
function default.grow_pine_bush(pos)
|
||||||
|
local path = minetest.get_modpath("default") ..
|
||||||
|
"/schematics/pine_bush.mts"
|
||||||
|
minetest.place_schematic({x = pos.x - 1, y = pos.y - 1, z = pos.z - 1},
|
||||||
|
path, "0", nil, false)
|
||||||
|
end
|
||||||
|
|
||||||
|
|
||||||
--
|
--
|
||||||
-- Sapling 'on place' function to check protection of node and resulting tree volume
|
-- Sapling 'on place' function to check protection of node and resulting tree volume
|
||||||
--
|
--
|
||||||
|
Loading…
Reference in New Issue
Block a user