write something there
26
mods/naturalbiomes/LICENSE
Normal file
|
@ -0,0 +1,26 @@
|
|||
MIT License
|
||||
|
||||
Copyright (c) 2022 Skandarella
|
||||
|
||||
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.
|
||||
|
||||
|
||||
Textures and Models by Liil/Wilhelmine/ under (MIT) License (c) 2022
|
||||
Thanks to ShadMOrdre (https://github.com/ShadMOrdre) for fixing the schematics/leaf decay.
|
||||
|
620
mods/naturalbiomes/alderswamp.lua
Normal file
|
@ -0,0 +1,620 @@
|
|||
|
||||
local S = minetest.get_translator("naturalbiomes")
|
||||
|
||||
local modname = "naturalbiomes"
|
||||
local modpath = minetest.get_modpath(modname)
|
||||
local mg_name = minetest.get_mapgen_setting("mg_name")
|
||||
|
||||
minetest.register_node("naturalbiomes:alderswamp_litter", {
|
||||
description = S("Alder Swamp dirt with Grass"),
|
||||
tiles = {"naturalbiomes_alderswamp_litter.png", "naturalbiomes_alderswamp_dirt.png",
|
||||
{name = "naturalbiomes_alderswamp_dirt.png^naturalbiomes_alderswamp_litter_side.png",
|
||||
tileable_vertical = false}},
|
||||
groups = {crumbly = 3, soil = 1, spreading_dirt_type = 1},
|
||||
drop = "naturalbiomes:alderswamp_dirt",
|
||||
sounds = default.node_sound_dirt_defaults({
|
||||
footstep = {name = "default_grass_footstep", gain = 0.25},
|
||||
}),
|
||||
})
|
||||
|
||||
minetest.register_node("naturalbiomes:alderswamp_dirt", {
|
||||
description = S("Alder Swamp Dirt"),
|
||||
tiles = {"naturalbiomes_alderswamp_dirt.png"},
|
||||
groups = {crumbly = 3, soil = 1, falling_node = 1},
|
||||
sounds = default.node_sound_dirt_defaults(),
|
||||
})
|
||||
|
||||
minetest.register_biome({
|
||||
name = "naturalbiomes:alderswamp",
|
||||
node_top = "naturalbiomes:alderswamp_litter",
|
||||
depth_top = 1,
|
||||
node_filler = "naturalbiomes:alderswamp_dirt",
|
||||
depth_filler = 3,
|
||||
node_riverbed = "naturalbiomes:alderswamp_dirt",
|
||||
depth_riverbed = 2,
|
||||
node_dungeon = "default:cobble",
|
||||
node_dungeon_alt = "default:mossycobble",
|
||||
node_dungeon_stair = "stairs:stair_cobble",
|
||||
y_max = 5,
|
||||
y_min = 0,
|
||||
heat_point = 55,
|
||||
humidity_point = 70,
|
||||
})
|
||||
|
||||
-- Schematics
|
||||
|
||||
minetest.register_decoration({
|
||||
name = "naturalbiomes:alder_tree",
|
||||
deco_type = "schematic",
|
||||
place_on = {"naturalbiomes:alderswamp_litter"},
|
||||
place_offset_y = 0,
|
||||
sidelen = 16,
|
||||
noise_params = {
|
||||
offset = -0.002,
|
||||
scale = 0.01,
|
||||
spread = {x = 100, y = 20, z = 100},
|
||||
seed = 5555,
|
||||
octaves = 1,
|
||||
persistence = 0.75,
|
||||
flags = "eased"
|
||||
},
|
||||
biomes = {"naturalbiomes:alderswamp"},
|
||||
y_max = 31000,
|
||||
y_min = 1,
|
||||
schematic = minetest.get_modpath("naturalbiomes").."/schematics/naturalbiomes_aldertree_0_270.mts",
|
||||
flags = "place_center_x, place_center_z",
|
||||
rotation = "random",
|
||||
})
|
||||
|
||||
minetest.register_decoration({
|
||||
name = "naturalbiomes:alder_tree2",
|
||||
deco_type = "schematic",
|
||||
place_on = {"naturalbiomes:alderswamp_litter"},
|
||||
place_offset_y = 0,
|
||||
sidelen = 16,
|
||||
noise_params = {
|
||||
offset = -0.002,
|
||||
scale = 0.01,
|
||||
spread = {x = 100, y = 20, z = 100},
|
||||
seed = 5556,
|
||||
octaves = 1,
|
||||
persistence = 0.75,
|
||||
flags = "eased"
|
||||
},
|
||||
biomes = {"naturalbiomes:alderswamp"},
|
||||
y_max = 31000,
|
||||
y_min = 1,
|
||||
schematic = minetest.get_modpath("naturalbiomes").."/schematics/naturalbiomes_aldertree2_0_270.mts",
|
||||
flags = "place_center_x, place_center_z",
|
||||
rotation = "random",
|
||||
})
|
||||
|
||||
minetest.register_decoration({
|
||||
name = "naturalbiomes:alder_tree3",
|
||||
deco_type = "schematic",
|
||||
place_on = {"naturalbiomes:alderswamp_litter"},
|
||||
place_offset_y = 0,
|
||||
sidelen = 16,
|
||||
noise_params = {
|
||||
offset = -0.002,
|
||||
scale = 0.01,
|
||||
spread = {x = 100, y = 20, z = 100},
|
||||
seed = 5557,
|
||||
octaves = 1,
|
||||
persistence = 0.75,
|
||||
flags = "eased"
|
||||
},
|
||||
biomes = {"naturalbiomes:alderswamp"},
|
||||
y_max = 31000,
|
||||
y_min = 1,
|
||||
schematic = minetest.get_modpath("naturalbiomes").."/schematics/naturalbiomes_aldertree3_0_270.mts",
|
||||
flags = "place_center_x, place_center_z",
|
||||
rotation = "random",
|
||||
})
|
||||
|
||||
--
|
||||
-- Tree generation
|
||||
--
|
||||
|
||||
-- New alder tree
|
||||
|
||||
local function grow_new_alder_tree(pos)
|
||||
if not default.can_grow(pos) then
|
||||
-- try a bit later again
|
||||
minetest.get_node_timer(pos):start(math.random(240, 600))
|
||||
return
|
||||
end
|
||||
minetest.remove_node(pos)
|
||||
minetest.place_schematic({x = pos.x - 3, y = pos.y - 0, z = pos.z - 3}, modpath.."/schematics/naturalbiomes_aldertree_0_270.mts", "0", nil, false)
|
||||
|
||||
end
|
||||
|
||||
-- alder trunk
|
||||
minetest.register_node("naturalbiomes:alder_trunk", {
|
||||
description = S("Alder Trunk"),
|
||||
tiles = {
|
||||
"naturalbiomes_alderswamp_alder_trunk_top.png",
|
||||
"naturalbiomes_alderswamp_alder_trunk_top.png",
|
||||
"naturalbiomes_alderswamp_alder_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,
|
||||
})
|
||||
|
||||
-- alder wood
|
||||
minetest.register_node("naturalbiomes:alder_wood", {
|
||||
description = S("Alder Wood"),
|
||||
tiles = {"naturalbiomes_alderswamp_alder_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 = "naturalbiomes:alder_wood 4",
|
||||
recipe = {{"naturalbiomes:alder_trunk"}}
|
||||
})
|
||||
|
||||
minetest.register_node("naturalbiomes:alder_leaves", {
|
||||
description = S("Alder Leaves"),
|
||||
drawtype = "allfaces_optional",
|
||||
waving = 1,
|
||||
tiles = {"naturalbiomes_alderswamp_alder_leaves.png"},
|
||||
special_tiles = {"naturalbiomes_alderswamp_alder_leaves.png"},
|
||||
paramtype = "light",
|
||||
is_ground_content = false,
|
||||
groups = {snappy = 3, leafdecay = 3, flammable = 2, leaves = 1, winleafdecay = 3},
|
||||
drop = {
|
||||
max_items = 1,
|
||||
items = {
|
||||
{
|
||||
-- player will get sapling with 1/50 chance
|
||||
items = {'naturalbiomes:alder_sapling'},
|
||||
rarity = 50,
|
||||
},
|
||||
{
|
||||
-- player will get leaves only if he get no saplings,
|
||||
-- this is because max_items is 1
|
||||
items = {'naturalbiomes:alder_leaves'},
|
||||
}
|
||||
}
|
||||
},
|
||||
sounds = default.node_sound_leaves_defaults(),
|
||||
|
||||
after_place_node = default.after_place_leaves,
|
||||
})
|
||||
|
||||
minetest.register_node("naturalbiomes:alder_sapling", {
|
||||
description = S("Alder Sapling"),
|
||||
drawtype = "plantlike",
|
||||
tiles = {"naturalbiomes_alderswamp_sapling.png"},
|
||||
inventory_image = "naturalbiomes_alderswamp_sapling.png",
|
||||
wield_image = "naturalbiomes_alderswamp_sapling.png",
|
||||
paramtype = "light",
|
||||
sunlight_propagates = true,
|
||||
walkable = false,
|
||||
on_timer = grow_new_alder_tree,
|
||||
selection_box = {
|
||||
type = "fixed",
|
||||
fixed = {-4 / 16, -0.5, -4 / 16, 4 / 16, 7 / 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,
|
||||
"naturalbiomes:alder_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,
|
||||
})
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
stairs.register_stair_and_slab(
|
||||
"naturalbiomes_alderswamp_alder_wood",
|
||||
"naturalbiomes:alder_wood",
|
||||
{choppy = 2, oddly_breakable_by_hand = 1, flammable = 3},
|
||||
{"naturalbiomes_alderswamp_alder_wood.png"},
|
||||
S("Alder Stair"),
|
||||
S("Alder Slab"),
|
||||
default.node_sound_wood_defaults()
|
||||
)
|
||||
|
||||
stairs.register_stair_and_slab(
|
||||
"naturalbiomes_alderswamp_alder_trunk",
|
||||
"naturalbiomes:alder_trunk",
|
||||
{choppy = 2, oddly_breakable_by_hand = 1, flammable = 3},
|
||||
{"naturalbiomes_alderswamp_alder_trunk_top.png", "naturalbiomes_alderswamp_alder_trunk_top.png", "naturalbiomes_alderswamp_alder_trunk.png"},
|
||||
S("Alder Trunk Stair"),
|
||||
S("Alder Trunk Slab"),
|
||||
default.node_sound_wood_defaults()
|
||||
)
|
||||
|
||||
doors.register_fencegate(
|
||||
"naturalbiomes:gate_alder_wood",
|
||||
{
|
||||
description = S("Alder Wood Fence Gate"),
|
||||
texture = "naturalbiomes_alderswamp_alder_wood.png",
|
||||
material = "naturalbiomes:alder_wood",
|
||||
groups = {choppy = 3, oddly_breakable_by_hand = 2, flammable = 3},
|
||||
sounds = default.node_sound_wood_defaults()
|
||||
}
|
||||
)
|
||||
|
||||
|
||||
default.register_fence(
|
||||
"naturalbiomes:fence_alder_wood",
|
||||
{
|
||||
description = S("Alder Fence"),
|
||||
texture = "naturalbiomes_adler_fence_wood.png",
|
||||
inventory_image = "default_fence_overlay.png^naturalbiomes_alderswamp_alder_wood.png^default_fence_overlay.png^[makealpha:255,126,126",
|
||||
wield_image = "default_fence_overlay.png^naturalbiomes_alderswamp_alder_wood.png^default_fence_overlay.png^[makealpha:255,126,126",
|
||||
material = "naturalbiomes:alder_wood",
|
||||
groups = {choppy = 2, oddly_breakable_by_hand = 2, flammable = 2},
|
||||
sounds = default.node_sound_wood_defaults()
|
||||
}
|
||||
)
|
||||
|
||||
default.register_fence_rail(
|
||||
"naturalbiomes:fence_rail_alder_wood",
|
||||
{
|
||||
description = S("Alder Fence Rail"),
|
||||
texture = "naturalbiomes_adler_fence_wood.png",
|
||||
inventory_image = "default_fence_rail_overlay.png^naturalbiomes_alderswamp_alder_wood.png^" ..
|
||||
"default_fence_rail_overlay.png^[makealpha:255,126,126",
|
||||
wield_image = "default_fence_rail_overlay.png^naturalbiomes_alderswamp_alder_wood.png^" ..
|
||||
"default_fence_rail_overlay.png^[makealpha:255,126,126",
|
||||
material = "naturalbiomes:alder_wood",
|
||||
groups = {choppy = 2, oddly_breakable_by_hand = 2, flammable = 2},
|
||||
sounds = default.node_sound_wood_defaults()
|
||||
}
|
||||
)
|
||||
|
||||
minetest.register_node("naturalbiomes:alderswamp_reed", {
|
||||
description = S"Alderswamp reed",
|
||||
drawtype = "plantlike",
|
||||
waving = 1,
|
||||
visual_scale = 2.0,
|
||||
tiles = {"naturalbiomes_alderswamp_reeds.png"},
|
||||
inventory_image = "naturalbiomes_alderswamp_reeds.png",
|
||||
wield_image = "naturalbiomes_alderswamp_reeds.png",
|
||||
paramtype = "light",
|
||||
sunlight_propagates = true,
|
||||
walkable = false,
|
||||
buildable_to = true,
|
||||
groups = {snappy = 3, flora = 1, attached_node = 1, flammable = 1, beautiflowers = 1},
|
||||
sounds = default.node_sound_leaves_defaults(),
|
||||
selection_box = {
|
||||
type = "fixed",
|
||||
fixed = {-4 / 16, -0.5, -4 / 16, 4 / 16, 0.0, 4 / 16},
|
||||
},
|
||||
})
|
||||
|
||||
minetest.register_decoration({
|
||||
name = "naturalbiomes:alderswamp_reed",
|
||||
deco_type = "simple",
|
||||
place_on = {"naturalbiomes:alderswamp_litter"},
|
||||
sidelen = 16,
|
||||
noise_params = {
|
||||
offset = -0.03,
|
||||
scale = 0.1,
|
||||
spread = {x = 100, y = 100, z = 100},
|
||||
seed = 4602,
|
||||
octaves = 6,
|
||||
persist = 1,
|
||||
},
|
||||
y_max = 30000,
|
||||
y_min = 1,
|
||||
decoration = "naturalbiomes:alderswamp_reed",
|
||||
spawn_by = "naturalbiomes:alderswamp_litter"
|
||||
})
|
||||
|
||||
minetest.register_node("naturalbiomes:alderswamp_reed", {
|
||||
description = S"Alderswamp reed",
|
||||
drawtype = "plantlike",
|
||||
waving = 1,
|
||||
visual_scale = 2.0,
|
||||
tiles = {"naturalbiomes_alderswamp_reeds.png"},
|
||||
inventory_image = "naturalbiomes_alderswamp_reeds.png",
|
||||
wield_image = "naturalbiomes_alderswamp_reeds.png",
|
||||
paramtype = "light",
|
||||
sunlight_propagates = true,
|
||||
walkable = false,
|
||||
buildable_to = true,
|
||||
groups = {snappy = 3, flora = 1, attached_node = 1, flammable = 1, beautiflowers = 1},
|
||||
sounds = default.node_sound_leaves_defaults(),
|
||||
selection_box = {
|
||||
type = "fixed",
|
||||
fixed = {-4 / 16, -0.5, -4 / 16, 4 / 16, 0.0, 4 / 16},
|
||||
},
|
||||
})
|
||||
|
||||
minetest.register_decoration({
|
||||
name = "naturalbiomes:alderswamp_reed2",
|
||||
deco_type = "simple",
|
||||
place_on = {"naturalbiomes:alderswamp_litter"},
|
||||
sidelen = 16,
|
||||
noise_params = {
|
||||
offset = -0.03,
|
||||
scale = 0.1,
|
||||
spread = {x = 100, y = 100, z = 100},
|
||||
seed = 4602,
|
||||
octaves = 3,
|
||||
persist = 1,
|
||||
},
|
||||
y_max = 30000,
|
||||
y_min = 1,
|
||||
decoration = "naturalbiomes:alderswamp_reed2",
|
||||
spawn_by = "naturalbiomes:alderswamp_litter"
|
||||
})
|
||||
|
||||
minetest.register_node("naturalbiomes:alderswamp_reed2", {
|
||||
description = S"Alderswamp reed",
|
||||
drawtype = "plantlike",
|
||||
waving = 1,
|
||||
visual_scale = 2.0,
|
||||
tiles = {"naturalbiomes_alderswamp_reeds2.png"},
|
||||
inventory_image = "naturalbiomes_alderswamp_reeds2.png",
|
||||
wield_image = "naturalbiomes_alderswamp_reeds2.png",
|
||||
paramtype = "light",
|
||||
sunlight_propagates = true,
|
||||
walkable = false,
|
||||
buildable_to = true,
|
||||
groups = {snappy = 3, flora = 1, attached_node = 1, flammable = 1, beautiflowers = 1},
|
||||
sounds = default.node_sound_leaves_defaults(),
|
||||
selection_box = {
|
||||
type = "fixed",
|
||||
fixed = {-4 / 16, -0.5, -4 / 16, 4 / 16, 0.0, 4 / 16},
|
||||
},
|
||||
})
|
||||
|
||||
minetest.register_decoration({
|
||||
name = "naturalbiomes:alderswamp_reed3",
|
||||
deco_type = "simple",
|
||||
place_on = {"naturalbiomes:alderswamp_litter"},
|
||||
sidelen = 16,
|
||||
fill_ratio = 0.09,
|
||||
y_max = 30000,
|
||||
y_min = 1,
|
||||
decoration = "naturalbiomes:alderswamp_reed3",
|
||||
spawn_by = "naturalbiomes:alderswamp_litter"
|
||||
})
|
||||
|
||||
minetest.register_node("naturalbiomes:alderswamp_reed3", {
|
||||
description = S"Alderswamp reed",
|
||||
drawtype = "plantlike",
|
||||
waving = 1,
|
||||
visual_scale = 2.0,
|
||||
tiles = {"naturalbiomes_alderswamp_reeds3.png"},
|
||||
inventory_image = "naturalbiomes_alderswamp_reeds3.png",
|
||||
wield_image = "naturalbiomes_alderswamp_reeds3.png",
|
||||
paramtype = "light",
|
||||
sunlight_propagates = true,
|
||||
walkable = false,
|
||||
buildable_to = true,
|
||||
groups = {snappy = 3, flora = 1, attached_node = 1, flammable = 1, beautiflowers = 1},
|
||||
sounds = default.node_sound_leaves_defaults(),
|
||||
selection_box = {
|
||||
type = "fixed",
|
||||
fixed = {-4 / 16, -0.5, -4 / 16, 4 / 16, 0.0, 4 / 16},
|
||||
},
|
||||
})
|
||||
|
||||
minetest.register_decoration({
|
||||
name = "naturalbiomes:alder_log",
|
||||
deco_type = "schematic",
|
||||
place_on = {"naturalbiomes:alderswamp_litter"},
|
||||
place_offset_y = 1,
|
||||
sidelen = 16,
|
||||
noise_params = {
|
||||
offset = 0.0012,
|
||||
scale = 0.0007,
|
||||
spread = {x = 250, y = 250, z = 250},
|
||||
seed = 2,
|
||||
octaves = 3,
|
||||
persist = 0.66
|
||||
},
|
||||
biomes = {"naturalbiomes:alderswamp"},
|
||||
y_max = 31000,
|
||||
y_min = 1,
|
||||
schematic = minetest.get_modpath("naturalbiomes") .. "/schematics/naturalbiomes_alder_log_0_90.mts",
|
||||
flags = "place_center_x",
|
||||
rotation = "random",
|
||||
spawn_by = "naturalbiomes:alderswamp_litter",
|
||||
num_spawn_by = 8,
|
||||
})
|
||||
|
||||
minetest.register_decoration({
|
||||
deco_type = "simple",
|
||||
place_on = {"naturalbiomes:alderswamp_litter"},
|
||||
spawn_by = {"naturalbiomes:alderswamp_litter"},
|
||||
num_spawn_by = 8,
|
||||
sidelen = 16,
|
||||
fill_ratio = 0.00085,
|
||||
y_max = 31000,
|
||||
y_min = 1,
|
||||
place_offset_y = -1,
|
||||
decoration = "default:water_source",
|
||||
biomes = {"alderswamp"},
|
||||
flags = "force_placement",
|
||||
})
|
||||
|
||||
minetest.register_decoration({
|
||||
name = "naturalbiomes:waterlily",
|
||||
deco_type = "simple",
|
||||
place_on = {"naturalbiomes:alderswamp_litter"},
|
||||
sidelen = 16,
|
||||
noise_params = {
|
||||
offset = -0.12,
|
||||
scale = 0.3,
|
||||
spread = {x = 100, y = 100, z = 100},
|
||||
seed = 33,
|
||||
octaves = 3,
|
||||
persist = 0.7
|
||||
},
|
||||
y_max = 0,
|
||||
y_min = 0,
|
||||
decoration = "naturalbiomes:waterlily",
|
||||
param2 = 0,
|
||||
param2_max = 3,
|
||||
place_offset_y = 1,
|
||||
})
|
||||
|
||||
minetest.register_node("naturalbiomes:waterlily", {
|
||||
description = S("Waterlily"),
|
||||
drawtype = "nodebox",
|
||||
paramtype = "light",
|
||||
paramtype2 = "facedir",
|
||||
tiles = {"naturalbiomes_alderswamp_waterlily.png", "naturalbiomes_alderswamp_waterlily_bottom.png"},
|
||||
inventory_image = "naturalbiomes_alderswamp_waterlily.png",
|
||||
wield_image = "naturalbiomes_alderswamp_waterlily.png",
|
||||
use_texture_alpha = "clip",
|
||||
liquids_pointable = true,
|
||||
walkable = false,
|
||||
buildable_to = true,
|
||||
floodable = true,
|
||||
groups = {snappy = 3, flammable = 1},
|
||||
sounds = default.node_sound_leaves_defaults(),
|
||||
node_placement_prediction = "",
|
||||
node_box = {
|
||||
type = "fixed",
|
||||
fixed = {-0.5, -31 / 64, -0.5, 0.5, -15 / 32, 0.5}
|
||||
},
|
||||
selection_box = {
|
||||
type = "fixed",
|
||||
fixed = {-7 / 16, -0.5, -7 / 16, 7 / 16, -15 / 32, 7 / 16}
|
||||
},
|
||||
|
||||
on_place = function(itemstack, placer, pointed_thing)
|
||||
local pos = pointed_thing.above
|
||||
local node = minetest.get_node(pointed_thing.under)
|
||||
local def = minetest.registered_nodes[node.name]
|
||||
|
||||
if def and def.on_rightclick then
|
||||
return def.on_rightclick(pointed_thing.under, node, placer, itemstack,
|
||||
pointed_thing)
|
||||
end
|
||||
|
||||
if def and def.liquidtype == "source" and
|
||||
minetest.get_item_group(node.name, "water") > 0 then
|
||||
local player_name = placer and placer:get_player_name() or ""
|
||||
if not minetest.is_protected(pos, player_name) then
|
||||
minetest.set_node(pos, {name = "naturalbiomes:waterlily",
|
||||
param2 = math.random(0, 3)})
|
||||
if not (creative and creative.is_enabled_for
|
||||
and creative.is_enabled_for(player_name)) then
|
||||
itemstack:take_item()
|
||||
end
|
||||
else
|
||||
minetest.chat_send_player(player_name, ("Node is protected."))
|
||||
minetest.record_protection_violation(pos, player_name)
|
||||
end
|
||||
end
|
||||
|
||||
return itemstack
|
||||
end
|
||||
})
|
||||
|
||||
minetest.register_decoration({
|
||||
name = "naturalbiomes:alderswamp_yellowflower",
|
||||
deco_type = "simple",
|
||||
place_on = {"naturalbiomes:alderswamp_litter"},
|
||||
sidelen = 16,
|
||||
noise_params = {
|
||||
offset = -0.03,
|
||||
scale = 0.1,
|
||||
spread = {x = 100, y = 100, z = 100},
|
||||
seed = 3602,
|
||||
octaves = 7,
|
||||
persist = 1,
|
||||
},
|
||||
y_max = 30000,
|
||||
y_min = 1,
|
||||
decoration = "naturalbiomes:alderswamp_yellowflower",
|
||||
spawn_by = "naturalbiomes:alderswamp_litter"
|
||||
})
|
||||
|
||||
minetest.register_node("naturalbiomes:alderswamp_yellowflower", {
|
||||
description = S"Alderswamp flower",
|
||||
drawtype = "plantlike",
|
||||
waving = 1,
|
||||
visual_scale = 1.0,
|
||||
tiles = {"naturalbiomes_adler_yellowflower.png"},
|
||||
inventory_image = "naturalbiomes_adler_yellowflower.png",
|
||||
wield_image = "naturalbiomes_adler_yellowflower.png",
|
||||
paramtype = "light",
|
||||
sunlight_propagates = true,
|
||||
walkable = false,
|
||||
buildable_to = true,
|
||||
groups = {snappy = 3, flower = 1, flora = 1, attached_node = 1, flammable = 1, beautiflowers = 1},
|
||||
sounds = default.node_sound_leaves_defaults(),
|
||||
selection_box = {
|
||||
type = "fixed",
|
||||
fixed = {-4 / 16, -0.5, -4 / 16, 4 / 16, 0.0, 4 / 16},
|
||||
},
|
||||
})
|
||||
|
||||
minetest.register_decoration({
|
||||
name = "naturalbiomes:alderswamp_brownreed",
|
||||
deco_type = "simple",
|
||||
place_on = {"naturalbiomes:alderswamp_litter"},
|
||||
sidelen = 16,
|
||||
noise_params = {
|
||||
offset = -0.1,
|
||||
scale = 0.1,
|
||||
spread = {x = 100, y = 100, z = 100},
|
||||
seed = 3602,
|
||||
octaves = 7,
|
||||
persist = 1,
|
||||
},
|
||||
y_max = 1,
|
||||
y_min = 0,
|
||||
decoration = "naturalbiomes:alderswamp_brownreed",
|
||||
spawn_by = "naturalbiomes:alderswamp_litter"
|
||||
})
|
||||
|
||||
minetest.register_node("naturalbiomes:alderswamp_brownreed", {
|
||||
description = S"Alderswamp reed",
|
||||
drawtype = "plantlike",
|
||||
waving = 1,
|
||||
visual_scale = 2.0,
|
||||
tiles = {"naturalbiomes_alderswamp_reedbrown.png"},
|
||||
inventory_image = "naturalbiomes_alderswamp_reedbrown.png",
|
||||
wield_image = "naturalbiomes_alderswamp_reedbrown.png",
|
||||
paramtype = "light",
|
||||
sunlight_propagates = true,
|
||||
walkable = false,
|
||||
buildable_to = true,
|
||||
groups = {snappy = 3, flora = 1, attached_node = 1, flammable = 1, beautiflowers = 1},
|
||||
sounds = default.node_sound_leaves_defaults(),
|
||||
selection_box = {
|
||||
type = "fixed",
|
||||
fixed = {-4 / 16, -0.5, -4 / 16, 4 / 16, 0.0, 4 / 16},
|
||||
},
|
||||
})
|
||||
|
||||
minetest.register_decoration({
|
||||
deco_type = "simple",
|
||||
place_on = {"naturalbiomes:alderswamp_litter"},
|
||||
sidelen = 16,
|
||||
fill_ratio = 0.35,
|
||||
y_min = 1,
|
||||
y_max = 31000,
|
||||
decoration = {"default:grass_2", "default:grass_3", "default:grass_4","default:grass_5"}
|
||||
})
|
786
mods/naturalbiomes/alpine.lua
Normal file
|
@ -0,0 +1,786 @@
|
|||
local S = minetest.get_translator("naturalbiomes")
|
||||
|
||||
local modname = "naturalbiomes"
|
||||
local modpath = minetest.get_modpath(modname)
|
||||
local mg_name = minetest.get_mapgen_setting("mg_name")
|
||||
|
||||
minetest.register_node("naturalbiomes:alpine_litter", {
|
||||
description = S("Dirt with Alpine Grass"),
|
||||
tiles = {"naturalbiomes_alpine_litter.png", "default_dirt.png",
|
||||
{name = "default_dirt.png^naturalbiomes_alpine_litter_side.png",
|
||||
tileable_vertical = false}},
|
||||
groups = {crumbly = 3, soil = 1, spreading_dirt_type = 1},
|
||||
drop = "naturalbiomes:alpine_rock",
|
||||
sounds = default.node_sound_dirt_defaults({
|
||||
footstep = {name = "default_grass_footstep", gain = 0.25},
|
||||
}),
|
||||
})
|
||||
|
||||
minetest.register_node("naturalbiomes:alpine_rock", {
|
||||
description = S("Alpine Rock"),
|
||||
tiles = {"naturalbiomes_alpine_rock.png"},
|
||||
groups = {cracky = 3, stone = 1},
|
||||
drop = "naturalbiomes:alpine_rock",
|
||||
legacy_mineral = true,
|
||||
sounds = default.node_sound_stone_defaults(),
|
||||
})
|
||||
|
||||
minetest.register_biome({
|
||||
name = "naturalbiomes:alpine",
|
||||
node_top = "naturalbiomes:alpine_litter",
|
||||
depth_top = 1,
|
||||
node_filler = "naturalbiomes:alpine_rock",
|
||||
depth_filler = 50,
|
||||
node_riverbed = "default:gravel",
|
||||
depth_riverbed = 2,
|
||||
node_dungeon = "default:stone",
|
||||
node_dungeon_alt = "default:mossycobble",
|
||||
node_dungeon_stair = "stairs:stair_cobble",
|
||||
y_max = 31000,
|
||||
y_min = 30,
|
||||
heat_point = 55,
|
||||
humidity_point = 60,
|
||||
})
|
||||
|
||||
-- Schematics
|
||||
|
||||
minetest.register_decoration({
|
||||
name = "naturalbiomes:alppine1_tree",
|
||||
deco_type = "schematic",
|
||||
place_on = {"naturalbiomes:alpine_litter"},
|
||||
place_offset_y = 0,
|
||||
sidelen = 16,
|
||||
fill_ratio = 0.00315,
|
||||
biomes = {"naturalbiomes:alpine"},
|
||||
y_max = 31000,
|
||||
y_min = 12,
|
||||
schematic = minetest.get_modpath("naturalbiomes").."/schematics/naturalbiomes_alpine_pine1_0_90.mts",
|
||||
flags = "place_center_x, place_center_z",
|
||||
rotation = "random",
|
||||
})
|
||||
|
||||
minetest.register_decoration({
|
||||
name = "naturalbiomes:alppine2_tree",
|
||||
deco_type = "schematic",
|
||||
place_on = {"naturalbiomes:alpine_litter"},
|
||||
place_offset_y = 0,
|
||||
sidelen = 16,
|
||||
fill_ratio = 0.00715,
|
||||
biomes = {"naturalbiomes:alpine"},
|
||||
y_max = 11,
|
||||
y_min = 4,
|
||||
schematic = minetest.get_modpath("naturalbiomes").."/schematics/naturalbiomes_alpine_pine2_0_90.mts",
|
||||
flags = "place_center_x, place_center_z",
|
||||
rotation = "random",
|
||||
})
|
||||
|
||||
minetest.register_decoration({
|
||||
name = "naturalbiomes:cowberry_bush",
|
||||
deco_type = "schematic",
|
||||
place_on = {"naturalbiomes:alpine_litter"},
|
||||
place_offset_y = 1,
|
||||
sidelen = 16,
|
||||
noise_params = {
|
||||
offset = -0.004,
|
||||
scale = 0.01,
|
||||
spread = {x = 100, y = 100, z = 100},
|
||||
seed = 697,
|
||||
octaves = 3,
|
||||
persist = 0.7,
|
||||
},
|
||||
biomes = {"naturalbiomes:alpine"},
|
||||
y_max = 31000,
|
||||
y_min = 30,
|
||||
schematic = minetest.get_modpath("naturalbiomes") .. "/schematics/naturalbiomes_alpine_cowberrybush.mts",
|
||||
flags = "place_center_x, place_center_z",
|
||||
})
|
||||
|
||||
-- Tree generation
|
||||
--
|
||||
|
||||
-- New pine tree
|
||||
|
||||
local function grow_new_alppine1_tree(pos)
|
||||
if not default.can_grow(pos) then
|
||||
-- try a bit later again
|
||||
minetest.get_node_timer(pos):start(math.random(240, 600))
|
||||
return
|
||||
end
|
||||
minetest.remove_node(pos)
|
||||
minetest.place_schematic({x = pos.x - 5, y = pos.y - 0, z = pos.z - 5}, modpath.."/schematics/naturalbiomes_alpine_pine1_0_90.mts", "0", nil, false)
|
||||
end
|
||||
|
||||
-- Pine1 trunk
|
||||
minetest.register_node("naturalbiomes:alppine1_trunk", {
|
||||
description = S("Silver Fir Trunk"),
|
||||
tiles = {
|
||||
"naturalbiomes_alpine_pine1_trunk_top.png",
|
||||
"naturalbiomes_alpine_pine1_trunk_top.png",
|
||||
"naturalbiomes_alpine_pine1_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,
|
||||
})
|
||||
|
||||
-- Pine wood
|
||||
minetest.register_node("naturalbiomes:alppine1_wood", {
|
||||
description = S("Silver Fir Wood"),
|
||||
tiles = {"naturalbiomes_alpine_pine1_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 = "naturalbiomes:alppine1_wood 4",
|
||||
recipe = {{"naturalbiomes:alppine1_trunk"}}
|
||||
})
|
||||
|
||||
minetest.register_node("naturalbiomes:alppine1_leaves", {
|
||||
description = S("Silver Fir Leaves"),
|
||||
drawtype = "allfaces_optional",
|
||||
waving = 1,
|
||||
tiles = {"naturalbiomes_alpine_pine1_leaves.png"},
|
||||
special_tiles = {"naturalbiomes_alpine_pine1_leaves.png"},
|
||||
paramtype = "light",
|
||||
is_ground_content = false,
|
||||
groups = {snappy = 3, leafdecay = 3, flammable = 2, leaves = 1, winleafdecay = 3},
|
||||
drop = {
|
||||
max_items = 1,
|
||||
items = {
|
||||
{
|
||||
-- player will get sapling with 1/50 chance
|
||||
items = {'naturalbiomes:alppine1_sapling'},
|
||||
rarity = 50,
|
||||
},
|
||||
{
|
||||
-- player will get leaves only if he get no saplings,
|
||||
-- this is because max_items is 1
|
||||
items = {'naturalbiomes:alppine1_leaves'},
|
||||
}
|
||||
}
|
||||
},
|
||||
sounds = default.node_sound_leaves_defaults(),
|
||||
|
||||
after_place_node = default.after_place_leaves,
|
||||
})
|
||||
|
||||
minetest.register_node("naturalbiomes:alppine1_sapling", {
|
||||
description = S("Silver Fir Sapling"),
|
||||
drawtype = "plantlike",
|
||||
tiles = {"naturalbiomes_alpine_pine1_sapling.png"},
|
||||
inventory_image = "naturalbiomes_alpine_pine1_sapling.png",
|
||||
wield_image = "naturalbiomes_alpine_pine1_sapling.png",
|
||||
paramtype = "light",
|
||||
sunlight_propagates = true,
|
||||
walkable = false,
|
||||
on_timer = grow_new_alppine1_tree,
|
||||
selection_box = {
|
||||
type = "fixed",
|
||||
fixed = {-4 / 16, -0.5, -4 / 16, 4 / 16, 7 / 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,
|
||||
"naturalbiomes:alppine1_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,
|
||||
})
|
||||
|
||||
|
||||
stairs.register_stair_and_slab(
|
||||
"naturalbiomes_alpine_pine1_wood",
|
||||
"naturalbiomes:alppine1_wood",
|
||||
{choppy = 2, oddly_breakable_by_hand = 1, flammable = 3},
|
||||
{"naturalbiomes_alpine_pine1_wood.png"},
|
||||
S("Silver Fir Stair"),
|
||||
S("Silver Fir Slab"),
|
||||
default.node_sound_wood_defaults()
|
||||
)
|
||||
|
||||
stairs.register_stair_and_slab(
|
||||
"naturalbiomes_alpine_pine1_trunk",
|
||||
"naturalbiomes:alppine1_trunk",
|
||||
{choppy = 2, oddly_breakable_by_hand = 1, flammable = 3},
|
||||
{"naturalbiomes_alpine_pine1_trunk_top.png", "naturalbiomes_alpine_pine1_trunk_top.png", "naturalbiomes_alpine_pine1_trunk.png"},
|
||||
S("Silver Fir Trunk Stair"),
|
||||
S("Silver Fir Trunk Slab"),
|
||||
default.node_sound_wood_defaults()
|
||||
)
|
||||
|
||||
doors.register_fencegate(
|
||||
"naturalbiomes:gate_alppine1_wood",
|
||||
{
|
||||
description = S("Silver Fir Wood Fence Gate"),
|
||||
texture = "naturalbiomes_alpine_pine1_wood.png",
|
||||
material = "naturalbiomes:alppine1_wood",
|
||||
groups = {choppy = 3, oddly_breakable_by_hand = 2, flammable = 3},
|
||||
sounds = default.node_sound_wood_defaults()
|
||||
}
|
||||
)
|
||||
|
||||
|
||||
default.register_fence(
|
||||
"naturalbiomes:fence_alppine1_wood",
|
||||
{
|
||||
description = S("Silver Fir Fence"),
|
||||
texture = "naturalbiomes_pine_fence_wood.png",
|
||||
inventory_image = "default_fence_overlay.png^naturalbiomes_alpine_pine1_wood.png^default_fence_overlay.png^[makealpha:255,126,126",
|
||||
wield_image = "default_fence_overlay.png^naturalbiomes_alpine_pine1_wood.png^default_fence_overlay.png^[makealpha:255,126,126",
|
||||
material = "naturalbiomes:alppine1_wood",
|
||||
groups = {choppy = 2, oddly_breakable_by_hand = 2, flammable = 2},
|
||||
sounds = default.node_sound_wood_defaults()
|
||||
}
|
||||
)
|
||||
|
||||
default.register_fence_rail(
|
||||
"naturalbiomes:fence_rail_alppine1_wood",
|
||||
{
|
||||
description = S("Silver Fir Fence Rail"),
|
||||
texture = "naturalbiomes_pine_fence_wood.png",
|
||||
inventory_image = "default_fence_rail_overlay.png^naturalbiomes_alpine_pine1_wood.png^" ..
|
||||
"default_fence_rail_overlay.png^[makealpha:255,126,126",
|
||||
wield_image = "default_fence_rail_overlay.png^naturalbiomes_alpine_pine1_wood.png^" ..
|
||||
"default_fence_rail_overlay.png^[makealpha:255,126,126",
|
||||
material = "naturalbiomes:alppine1_wood",
|
||||
groups = {choppy = 2, oddly_breakable_by_hand = 2, flammable = 2},
|
||||
sounds = default.node_sound_wood_defaults()
|
||||
}
|
||||
)
|
||||
|
||||
-- Tree generation
|
||||
--
|
||||
|
||||
-- New alppine2 tree
|
||||
|
||||
local function grow_new_alppine2_tree(pos)
|
||||
if not default.can_grow(pos) then
|
||||
-- try a bit later again
|
||||
minetest.get_node_timer(pos):start(math.random(240, 600))
|
||||
return
|
||||
end
|
||||
minetest.remove_node(pos)
|
||||
minetest.place_schematic({x = pos.x - 3, y = pos.y - 0, z = pos.z - 3}, modpath.."/schematics/naturalbiomes_alpine_pine2_0_90.mts", "0", nil, false)
|
||||
end
|
||||
|
||||
-- Pine2 trunk
|
||||
minetest.register_node("naturalbiomes:alppine2_trunk", {
|
||||
description = S("Jack Pine Trunk"),
|
||||
tiles = {
|
||||
"naturalbiomes_alpine_pine2_trunk_top.png",
|
||||
"naturalbiomes_alpine_pine2_trunk_top.png",
|
||||
"naturalbiomes_alpine_pine2_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,
|
||||
})
|
||||
|
||||
-- Pine2 wood
|
||||
minetest.register_node("naturalbiomes:alppine2_wood", {
|
||||
description = S("Jack Pine Wood"),
|
||||
tiles = {"naturalbiomes_alpine_pine2_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 = "naturalbiomes:alppine2_wood 4",
|
||||
recipe = {{"naturalbiomes:alppine2_trunk"}}
|
||||
})
|
||||
|
||||
minetest.register_node("naturalbiomes:alppine2_leaves", {
|
||||
description = S("Jack Pine Leaves"),
|
||||
drawtype = "allfaces_optional",
|
||||
waving = 1,
|
||||
tiles = {"naturalbiomes_alpine_pine2_leaves.png"},
|
||||
special_tiles = {"naturalbiomes_alpine_pine2_leaves.png"},
|
||||
paramtype = "light",
|
||||
is_ground_content = false,
|
||||
groups = {snappy = 3, leafdecay = 3, flammable = 2, leaves = 1, winleafdecay = 3},
|
||||
drop = {
|
||||
max_items = 1,
|
||||
items = {
|
||||
{
|
||||
-- player will get sapling with 1/50 chance
|
||||
items = {'naturalbiomes:alppine2_sapling'},
|
||||
rarity = 15,
|
||||
},
|
||||
{
|
||||
-- player will get leaves only if he get no saplings,
|
||||
-- this is because max_items is 1
|
||||
items = {'naturalbiomes:alppine2_leaves'},
|
||||
}
|
||||
}
|
||||
},
|
||||
sounds = default.node_sound_leaves_defaults(),
|
||||
|
||||
after_place_node = default.after_place_leaves,
|
||||
})
|
||||
|
||||
minetest.register_node("naturalbiomes:alppine2_sapling", {
|
||||
description = S("Jack Pine Sapling"),
|
||||
drawtype = "plantlike",
|
||||
tiles = {"naturalbiomes_alpine_pine2_sapling.png"},
|
||||
inventory_image = "naturalbiomes_alpine_pine2_sapling.png",
|
||||
wield_image = "naturalbiomes_alpine_pine2_sapling.png",
|
||||
paramtype = "light",
|
||||
sunlight_propagates = true,
|
||||
walkable = false,
|
||||
on_timer = grow_new_alppine2_tree,
|
||||
selection_box = {
|
||||
type = "fixed",
|
||||
fixed = {-4 / 16, -0.5, -4 / 16, 4 / 16, 7 / 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,
|
||||
"naturalbiomes:alppine2_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,
|
||||
})
|
||||
|
||||
|
||||
stairs.register_stair_and_slab(
|
||||
"naturalbiomes_alpine_pine2_wood",
|
||||
"naturalbiomes:alppine2_wood",
|
||||
{choppy = 2, oddly_breakable_by_hand = 1, flammable = 3},
|
||||
{"naturalbiomes_alpine_pine2_wood.png"},
|
||||
S("Jack Pine Stair"),
|
||||
S("Jack Pine Slab"),
|
||||
default.node_sound_wood_defaults()
|
||||
)
|
||||
|
||||
stairs.register_stair_and_slab(
|
||||
"naturalbiomes_alpine_pine2_trunk",
|
||||
"naturalbiomes:alppine2_trunk",
|
||||
{choppy = 2, oddly_breakable_by_hand = 1, flammable = 3},
|
||||
{"naturalbiomes_alpine_pine2_trunk_top.png", "naturalbiomes_alpine_pine2_trunk_top.png", "naturalbiomes_alpine_pine2_trunk.png"},
|
||||
S("Jack Pine Trunk Stair"),
|
||||
S("Jack Pine Trunk Slab"),
|
||||
default.node_sound_wood_defaults()
|
||||
)
|
||||
|
||||
doors.register_fencegate(
|
||||
"naturalbiomes:gate_alppine2_wood",
|
||||
{
|
||||
description = S("Jack Pine Wood Fence Gate"),
|
||||
texture = "naturalbiomes_alpine_pine2_wood.png",
|
||||
material = "naturalbiomes:alppine2_wood",
|
||||
groups = {choppy = 3, oddly_breakable_by_hand = 2, flammable = 3},
|
||||
sounds = default.node_sound_wood_defaults()
|
||||
}
|
||||
)
|
||||
|
||||
|
||||
default.register_fence(
|
||||
"naturalbiomes:fence_pine2_wood",
|
||||
{
|
||||
description = S("Jack Pine Fence"),
|
||||
texture = "naturalbiomes_pine2_fence_wood.png",
|
||||
inventory_image = "default_fence_overlay.png^naturalbiomes_alpine_pine2_wood.png^default_fence_overlay.png^[makealpha:255,126,126",
|
||||
wield_image = "default_fence_overlay.png^naturalbiomes_alpine_pine2_wood.png^default_fence_overlay.png^[makealpha:255,126,126",
|
||||
material = "naturalbiomes:alppine2_wood",
|
||||
groups = {choppy = 2, oddly_breakable_by_hand = 2, flammable = 2},
|
||||
sounds = default.node_sound_wood_defaults()
|
||||
}
|
||||
)
|
||||
|
||||
default.register_fence_rail(
|
||||
"naturalbiomes:fence_rail_pine2_wood",
|
||||
{
|
||||
description = S("Jack Pine Fence Rail"),
|
||||
texture = "naturalbiomes_pine2_fence_wood.png",
|
||||
inventory_image = "default_fence_rail_overlay.png^naturalbiomes_alpine_pine2_wood.png^" ..
|
||||
"default_fence_rail_overlay.png^[makealpha:255,126,126",
|
||||
wield_image = "default_fence_rail_overlay.png^naturalbiomes_alpine_pine2_wood.png^" ..
|
||||
"default_fence_rail_overlay.png^[makealpha:255,126,126",
|
||||
material = "naturalbiomes:alppine2_wood",
|
||||
groups = {choppy = 2, oddly_breakable_by_hand = 2, flammable = 2},
|
||||
sounds = default.node_sound_wood_defaults()
|
||||
}
|
||||
)
|
||||
|
||||
-- Tree generation
|
||||
--
|
||||
|
||||
-- New cowberry bush
|
||||
|
||||
local function grow_new_outback_bush(pos)
|
||||
if not default.can_grow(pos) then
|
||||
-- try a bit later again
|
||||
minetest.get_node_timer(pos):start(math.random(240, 600))
|
||||
return
|
||||
end
|
||||
minetest.remove_node(pos)
|
||||
minetest.place_schematic({x = pos.x - 2, y = pos.y - 0, z = pos.z - 2}, modpath.."/schematics/naturalbiomes_alpine_cowberrybush.mts", "0", nil, false)
|
||||
end
|
||||
|
||||
minetest.register_node("naturalbiomes:alpine_cowberrybush_stem", {
|
||||
description = S("Cowberry Bush Stem"),
|
||||
drawtype = "plantlike",
|
||||
visual_scale = 1.41,
|
||||
tiles = {"naturalbiomes_alpine_cowberry_stem.png"},
|
||||
inventory_image = "naturalbiomes_alpine_cowberry_stem.png",
|
||||
wield_image = "naturalbiomes_alpine_cowberry_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("naturalbiomes:alpine_cowberrybush_leaves", {
|
||||
description = S("Cowberry Bush Leaves"),
|
||||
drawtype = "allfaces_optional",
|
||||
tiles = {"naturalbiomes_alpine_cowberry_leaves.png"},
|
||||
paramtype = "light",
|
||||
groups = {snappy = 3, flammable = 2, leaves = 1, winleafdecay = 3},
|
||||
drop = {
|
||||
max_items = 1,
|
||||
items = {
|
||||
{items = {"naturalbiomes:alpine_cowberrybush_sapling"}, rarity = 20},
|
||||
{items = {"naturalbiomes:cowberry"}, rarity = 2},
|
||||
{items = {"naturalbiomes:alpine_cowberrybush_leaves"}}
|
||||
}
|
||||
},
|
||||
sounds = default.node_sound_leaves_defaults(),
|
||||
|
||||
after_place_node = after_place_leaves,
|
||||
})
|
||||
|
||||
minetest.register_node("naturalbiomes:alpine_cowberrybush_sapling", {
|
||||
description = S("Cowberry Bush Sapling"),
|
||||
drawtype = "plantlike",
|
||||
tiles = {"naturalbiomes_alpine_cowberry_sapling.png"},
|
||||
inventory_image = "naturalbiomes_alpine_cowberry_sapling.png",
|
||||
wield_image = "naturalbiomes_alpine_cowberry_sapling.png",
|
||||
paramtype = "light",
|
||||
sunlight_propagates = true,
|
||||
walkable = false,
|
||||
on_timer = grow_new_outback_bush,
|
||||
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,
|
||||
"naturalbiomes:alpine_cowberrybush_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("naturalbiomes:cowberry", {
|
||||
description = S("Cowberry"),
|
||||
drawtype = "torchlike",
|
||||
tiles = {"naturalbiomes_alpine_cowberry_fruit.png"},
|
||||
inventory_image = "naturalbiomes_alpine_cowberry_fruit.png",
|
||||
wield_image = "naturalbiomes_alpine_cowberry_fruit.png",
|
||||
paramtype = "light",
|
||||
sunlight_propagates = true,
|
||||
walkable = false,
|
||||
selection_box = {
|
||||
type = "fixed",
|
||||
fixed = {-0.31, -0.5, -0.31, 0.31, 0.5, 0.31}
|
||||
},
|
||||
groups = {
|
||||
fleshy = 3, dig_immediate = 3, flammable = 2,
|
||||
leafdecay = 1, leafdecay_drop = 1, winleafdecay_drop = 1, winleafdecay = 3
|
||||
},
|
||||
drop = "naturalbiomes:cowberry",
|
||||
on_use = minetest.item_eat(2),
|
||||
sounds = default.node_sound_leaves_defaults(),
|
||||
after_place_node = function(pos, placer)
|
||||
if placer:is_player() then
|
||||
minetest.set_node(pos, {name = "naturalbiomes:cowberry", param2 = 1})
|
||||
end
|
||||
end
|
||||
})
|
||||
|
||||
minetest.register_node("naturalbiomes:alpine_mushroom", {
|
||||
description = S("Alpine Mushroom"),
|
||||
tiles = {"naturalbiomes_alpine_mushroom.png"},
|
||||
inventory_image = "naturalbiomes_alpine_mushroom.png",
|
||||
wield_image = "naturalbiomes_alpine_mushroom.png",
|
||||
drawtype = "plantlike",
|
||||
paramtype = "light",
|
||||
sunlight_propagates = true,
|
||||
walkable = false,
|
||||
buildable_to = true,
|
||||
groups = {mushroom = 1, food_mushroom = 1, snappy = 3, attached_node = 1, flammable = 1},
|
||||
sounds = default.node_sound_leaves_defaults(),
|
||||
on_use = minetest.item_eat(1),
|
||||
selection_box = {
|
||||
type = "fixed",
|
||||
fixed = {-3 / 16, -0.5, -3 / 16, 3 / 16, -2 / 16, 3 / 16},
|
||||
}
|
||||
})
|
||||
|
||||
minetest.register_node("naturalbiomes:alpine_grass1", {
|
||||
description = S"Alpine Grass",
|
||||
drawtype = "plantlike",
|
||||
waving = 1,
|
||||
visual_scale = 1.0,
|
||||
tiles = {"naturalbiomes_alpine_grass1.png"},
|
||||
inventory_image = "naturalbiomes_alpine_grass1.png",
|
||||
wield_image = "naturalbiomes_alpine_grass1.png",
|
||||
paramtype = "light",
|
||||
sunlight_propagates = true,
|
||||
walkable = false,
|
||||
buildable_to = true,
|
||||
groups = {snappy = 3, flora = 1, attached_node = 1, flammable = 1},
|
||||
sounds = default.node_sound_leaves_defaults(),
|
||||
selection_box = {
|
||||
type = "fixed",
|
||||
fixed = {-4 / 16, -0.5, -4 / 16, 4 / 16, 0.0, 4 / 16},
|
||||
},
|
||||
})
|
||||
|
||||
minetest.register_node("naturalbiomes:alpine_grass2", {
|
||||
description = S"Alpine Grass",
|
||||
drawtype = "plantlike",
|
||||
waving = 1,
|
||||
visual_scale = 1.0,
|
||||
tiles = {"naturalbiomes_alpine_grass2.png"},
|
||||
inventory_image = "naturalbiomes_alpine_grass2.png",
|
||||
wield_image = "naturalbiomes_alpine_grass2.png",
|
||||
paramtype = "light",
|
||||
sunlight_propagates = true,
|
||||
walkable = false,
|
||||
buildable_to = true,
|
||||
groups = {snappy = 3, flora = 1, attached_node = 1, flammable = 1},
|
||||
sounds = default.node_sound_leaves_defaults(),
|
||||
selection_box = {
|
||||
type = "fixed",
|
||||
fixed = {-4 / 16, -0.5, -4 / 16, 4 / 16, 0.0, 4 / 16},
|
||||
},
|
||||
})
|
||||
|
||||
minetest.register_node("naturalbiomes:alpine_grass3", {
|
||||
description = S"Alpine Grass",
|
||||
drawtype = "plantlike",
|
||||
waving = 1,
|
||||
visual_scale = 1.0,
|
||||
tiles = {"naturalbiomes_alpine_grass3.png"},
|
||||
inventory_image = "naturalbiomes_alpine_grass3.png",
|
||||
wield_image = "naturalbiomes_alpine_grass3.png",
|
||||
paramtype = "light",
|
||||
sunlight_propagates = true,
|
||||
walkable = false,
|
||||
buildable_to = true,
|
||||
groups = {snappy = 3, flora = 1, attached_node = 1, flammable = 1},
|
||||
sounds = default.node_sound_leaves_defaults(),
|
||||
selection_box = {
|
||||
type = "fixed",
|
||||
fixed = {-4 / 16, -0.5, -4 / 16, 4 / 16, 0.0, 4 / 16},
|
||||
},
|
||||
})
|
||||
|
||||
minetest.register_decoration({
|
||||
name = "naturalbiomes:alpine_grass3",
|
||||
deco_type = "simple",
|
||||
place_on = {"naturalbiomes:alpine_litter"},
|
||||
sidelen = 16,
|
||||
fill_ratio = 0.175,
|
||||
y_max = 31000,
|
||||
y_min = 1,
|
||||
decoration = {
|
||||
"naturalbiomes:alpine_grass1",
|
||||
"naturalbiomes:alpine_grass2",
|
||||
"naturalbiomes:alpine_grass3",
|
||||
},
|
||||
})
|
||||
|
||||
minetest.register_decoration({
|
||||
name = "naturalbiomes:alpine_dandelion",
|
||||
deco_type = "simple",
|
||||
place_on = {"naturalbiomes:alpine_litter"},
|
||||
sidelen = 16,
|
||||
noise_params = {
|
||||
offset = -0.03,
|
||||
scale = 0.15,
|
||||
spread = {x = 100, y = 100, z = 100},
|
||||
seed = 4602,
|
||||
octaves = 4,
|
||||
persist = 1,
|
||||
},
|
||||
y_max = 31000,
|
||||
y_min = 1,
|
||||
decoration = "naturalbiomes:alpine_dandelion",
|
||||
spawn_by = "naturalbiomes:alpine_litter"
|
||||
})
|
||||
|
||||
minetest.register_node("naturalbiomes:alpine_dandelion", {
|
||||
description = S"Alpine Dandelion Flower",
|
||||
drawtype = "plantlike",
|
||||
waving = 1,
|
||||
visual_scale = 1.0,
|
||||
tiles = {"naturalbiomes_alpine_dandelion.png"},
|
||||
inventory_image = "naturalbiomes_alpine_dandelion.png",
|
||||
wield_image = "naturalbiomes_alpine_dandelion.png",
|
||||
paramtype = "light",
|
||||
sunlight_propagates = true,
|
||||
walkable = false,
|
||||
buildable_to = true,
|
||||
groups = {snappy = 3, flower = 1, flora = 1, attached_node = 1, flammable = 1, color_yellow = 1},
|
||||
sounds = default.node_sound_leaves_defaults(),
|
||||
selection_box = {
|
||||
type = "fixed",
|
||||
fixed = {-4 / 16, -0.5, -4 / 16, 4 / 16, 0.0, 4 / 16},
|
||||
},
|
||||
})
|
||||
|
||||
minetest.register_decoration({
|
||||
name = "naturalbiomes:alpine_edelweiss",
|
||||
deco_type = "simple",
|
||||
place_on = {"naturalbiomes:alpine_litter"},
|
||||
sidelen = 16,
|
||||
noise_params = {
|
||||
offset = -0.03,
|
||||
scale = 0.15,
|
||||
spread = {x = 100, y = 100, z = 100},
|
||||
seed = 4602,
|
||||
octaves = 4,
|
||||
persist = 1,
|
||||
},
|
||||
y_max = 31000,
|
||||
y_min = 1,
|
||||
decoration = "naturalbiomes:alpine_edelweiss",
|
||||
})
|
||||
|
||||
minetest.register_node("naturalbiomes:alpine_edelweiss", {
|
||||
description = S"Edelweiss Flower",
|
||||
drawtype = "plantlike",
|
||||
waving = 1,
|
||||
visual_scale = 1.0,
|
||||
tiles = {"naturalbiomes_alpine_edelweiss.png"},
|
||||
inventory_image = "naturalbiomes_alpine_edelweiss.png",
|
||||
wield_image = "naturalbiomes_alpine_edelweiss.png",
|
||||
paramtype = "light",
|
||||
sunlight_propagates = true,
|
||||
walkable = false,
|
||||
buildable_to = true,
|
||||
groups = {snappy = 3, flower = 1, flora = 1, attached_node = 1, flammable = 1, color_white = 1},
|
||||
sounds = default.node_sound_leaves_defaults(),
|
||||
selection_box = {
|
||||
type = "fixed",
|
||||
fixed = {-4 / 16, -0.5, -4 / 16, 4 / 16, 0.0, 4 / 16},
|
||||
},
|
||||
})
|
||||
|
||||
minetest.register_decoration({
|
||||
name = "naturalbiomes:alpine_log",
|
||||
deco_type = "schematic",
|
||||
place_on = {"naturalbiomes:alpine_litter"},
|
||||
place_offset_y = 1,
|
||||
sidelen = 16,
|
||||
noise_params = {
|
||||
offset = 0.0012,
|
||||
scale = 0.0007,
|
||||
spread = {x = 250, y = 250, z = 250},
|
||||
seed = 2,
|
||||
octaves = 3,
|
||||
persist = 0.66
|
||||
},
|
||||
biomes = {"naturalbiomes:alpine"},
|
||||
y_max = 31000,
|
||||
y_min = 1,
|
||||
schematic = minetest.get_modpath("naturalbiomes") .. "/schematics/naturalbiomes__alpine_pine1_log_0_90.mts",
|
||||
flags = "place_center_x",
|
||||
rotation = "random",
|
||||
spawn_by = "naturalbiomes:alpine_litter",
|
||||
num_spawn_by = 4,
|
||||
})
|
||||
|
||||
minetest.register_decoration({
|
||||
name = "naturalbiomes:alpine_log2",
|
||||
deco_type = "schematic",
|
||||
place_on = {"naturalbiomes:alpine_litter"},
|
||||
place_offset_y = 1,
|
||||
sidelen = 16,
|
||||
noise_params = {
|
||||
offset = 0.0012,
|
||||
scale = 0.0007,
|
||||
spread = {x = 250, y = 250, z = 250},
|
||||
seed = 2,
|
||||
octaves = 3,
|
||||
persist = 0.66
|
||||
},
|
||||
biomes = {"naturalbiomes:alpine"},
|
||||
y_max = 31000,
|
||||
y_min = 1,
|
||||
schematic = minetest.get_modpath("naturalbiomes") .. "/schematics/naturalbiomes_alpine_pine2_log_0_90.mts",
|
||||
flags = "place_center_x",
|
||||
rotation = "random",
|
||||
spawn_by = "naturalbiomes:alpine_litter",
|
||||
num_spawn_by = 4,
|
||||
})
|
||||
|
||||
minetest.register_decoration({
|
||||
deco_type = "simple",
|
||||
place_on = {
|
||||
"naturalbiomes:alpine_litter",
|
||||
"naturalbiomes:alppine1_leaves",
|
||||
"naturalbiomes:alppine2_leaves",
|
||||
},
|
||||
sidelen = 16,
|
||||
noise_params = {
|
||||
offset = -0.75,
|
||||
scale = -1,
|
||||
spread = {x = 100, y = 100, z = 100},
|
||||
seed = 456,
|
||||
octaves = 2,
|
||||
persist = 1.0
|
||||
},
|
||||
biomes = {"alpine"},
|
||||
y_max = 31000,
|
||||
y_min = 1,
|
||||
decoration = "default:snow",
|
||||
})
|
544
mods/naturalbiomes/bambooforest.lua
Normal file
|
@ -0,0 +1,544 @@
|
|||
local S = minetest.get_translator("naturalbiomes")
|
||||
|
||||
local modname = "naturalbiomes"
|
||||
local modpath = minetest.get_modpath(modname)
|
||||
local mg_name = minetest.get_mapgen_setting("mg_name")
|
||||
|
||||
minetest.register_node("naturalbiomes:bambooforest_litter", {
|
||||
description = S("Bamboo Forest Litter"),
|
||||
tiles = {"naturalbiomes_bambooforest_litter.png", "naturalbiomes_bambooforest_rock.png",
|
||||
{name = "naturalbiomes_bambooforest_rock.png^naturalbiomes_bambooforest_litter_side.png",
|
||||
tileable_vertical = false}},
|
||||
groups = {crumbly = 3, soil = 1, spreading_dirt_type = 1},
|
||||
drop = "naturalbiomes:bambooforest_rock",
|
||||
sounds = default.node_sound_dirt_defaults({
|
||||
footstep = {name = "default_grass_footstep", gain = 0.25},
|
||||
}),
|
||||
})
|
||||
|
||||
minetest.register_biome({
|
||||
name = "bambooforest",
|
||||
node_top = "naturalbiomes:bambooforest_litter",
|
||||
depth_top = 1,
|
||||
node_filler = "naturalbiomes:bambooforest_rock",
|
||||
depth_filler = 70,
|
||||
node_riverbed = "default:clay",
|
||||
depth_riverbed = 2,
|
||||
node_dungeon = "default:cobble",
|
||||
node_dungeon_alt = "default:mossycobble",
|
||||
node_dungeon_stair = "stairs:stair_cobble",
|
||||
y_max = 31000,
|
||||
y_min = 5,
|
||||
heat_point = 89,
|
||||
humidity_point = 77,
|
||||
})
|
||||
|
||||
-- Tree generation
|
||||
--
|
||||
|
||||
-- New bamboo tree
|
||||
|
||||
local function grow_new_bamboo_tree(pos)
|
||||
if not default.can_grow(pos) then
|
||||
-- try a bit later again
|
||||
minetest.get_node_timer(pos):start(math.random(240, 600))
|
||||
return
|
||||
end
|
||||
minetest.remove_node(pos)
|
||||
minetest.place_schematic({x = pos.x - 3, y = pos.y - 0, z = pos.z - 3}, modpath.."/schematics/naturalbiomes_bambootree_large_0_270.mts", "0", nil, false)
|
||||
end
|
||||
|
||||
-- bamboo trunk
|
||||
minetest.register_node("naturalbiomes:bamboo_trunk", {
|
||||
description = S("Bamboo Trunk"),
|
||||
tiles = {
|
||||
"naturalbiomes_bambooforest_bamboo_trunk_top.png",
|
||||
"naturalbiomes_bambooforest_bamboo_trunk_top.png",
|
||||
"naturalbiomes_bambooforest_bamboo_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,
|
||||
})
|
||||
|
||||
-- bamboo wood
|
||||
minetest.register_node("naturalbiomes:bamboo_wood", {
|
||||
description = S("Bamboo Wood"),
|
||||
tiles = {"naturalbiomes_bambooforest_bamboo_wood2.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 = "naturalbiomes:bamboo_wood 4",
|
||||
recipe = {{"naturalbiomes:bamboo_trunk"}}
|
||||
})
|
||||
|
||||
minetest.register_node("naturalbiomes:bamboo_leaves", {
|
||||
description = S("Bamboo Leaves"),
|
||||
drawtype = "allfaces_optional",
|
||||
waving = 1,
|
||||
tiles = {"naturalbiomes_Bambooforest_bamboo_leaves.png"},
|
||||
special_tiles = {"naturalbiomes_Bambooforest_bamboo_leaves.png"},
|
||||
paramtype = "light",
|
||||
is_ground_content = false,
|
||||
groups = {snappy = 3, leafdecay = 3, flammable = 2, leaves = 1, winleafdecay = 3},
|
||||
drop = {
|
||||
max_items = 1,
|
||||
items = {
|
||||
{
|
||||
-- player will get sapling with 1/50 chance
|
||||
items = {'naturalbiomes:bamboo_sapling'},
|
||||
rarity = 10,
|
||||
},
|
||||
{
|
||||
-- player will get leaves only if he get no saplings,
|
||||
-- this is because max_items is 1
|
||||
items = {'naturalbiomes:bamboo_leaves'},
|
||||
}
|
||||
}
|
||||
},
|
||||
sounds = default.node_sound_leaves_defaults(),
|
||||
|
||||
after_place_node = default.after_place_leaves,
|
||||
})
|
||||
|
||||
minetest.register_node("naturalbiomes:bamboo_sapling", {
|
||||
description = S("Bamboo Sapling"),
|
||||
drawtype = "plantlike",
|
||||
tiles = {"naturalbiomes_bambooforest_bamboo_sapling.png"},
|
||||
inventory_image = "naturalbiomes_bambooforest_bamboo_sapling.png",
|
||||
wield_image = "naturalbiomes_bambooforest_bamboo_sapling.png",
|
||||
paramtype = "light",
|
||||
sunlight_propagates = true,
|
||||
walkable = false,
|
||||
on_timer = grow_new_bamboo_tree,
|
||||
selection_box = {
|
||||
type = "fixed",
|
||||
fixed = {-4 / 16, -0.5, -4 / 16, 4 / 16, 7 / 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,
|
||||
"naturalbiomes:bamboo_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,
|
||||
})
|
||||
|
||||
|
||||
stairs.register_stair_and_slab(
|
||||
"naturalbiomes_bambooforest_bamboo_wood2",
|
||||
"naturalbiomes:bamboo_wood",
|
||||
{choppy = 2, oddly_breakable_by_hand = 1, flammable = 3},
|
||||
{"naturalbiomes_bambooforest_bamboo_wood2.png"},
|
||||
S("Bamboo Stair"),
|
||||
S("Bamboo Slab"),
|
||||
default.node_sound_wood_defaults()
|
||||
)
|
||||
|
||||
stairs.register_stair_and_slab(
|
||||
"naturalbiomes_bambooforest_bamboo_trunk",
|
||||
"naturalbiomes:bamboo_trunk",
|
||||
{choppy = 2, oddly_breakable_by_hand = 1, flammable = 3},
|
||||
{"naturalbiomes_bambooforest_bamboo_trunk_top.png", "naturalbiomes_bambooforest_bamboo_trunk_top.png", "naturalbiomes_bambooforest_bamboo_trunk.png"},
|
||||
S("Bamboo Trunk Stair"),
|
||||
S("Bamboo Trunk Slab"),
|
||||
default.node_sound_wood_defaults()
|
||||
)
|
||||
|
||||
doors.register_fencegate(
|
||||
"naturalbiomes:gate_bamboo_wood",
|
||||
{
|
||||
description = S("Bamboo Wood Fence Gate"),
|
||||
texture = "naturalbiomes_bambooforest_bamboo_wood2.png",
|
||||
material = "naturalbiomes:bamboo_wood",
|
||||
groups = {choppy = 3, oddly_breakable_by_hand = 2, flammable = 3},
|
||||
sounds = default.node_sound_wood_defaults()
|
||||
}
|
||||
)
|
||||
|
||||
|
||||
default.register_fence(
|
||||
"naturalbiomes:fence_bamboo_wood",
|
||||
{
|
||||
description = S("Bamboo Fence"),
|
||||
texture = "naturalbiomes_bamboo_fence_wood.png",
|
||||
inventory_image = "default_fence_overlay.png^naturalbiomes_bambooforest_bamboo_wood2.png^default_fence_overlay.png^[makealpha:255,126,126",
|
||||
wield_image = "default_fence_overlay.png^naturalbiomes_bambooforest_bamboo_wood2.png^default_fence_overlay.png^[makealpha:255,126,126",
|
||||
material = "naturalbiomes:bamboo_wood",
|
||||
groups = {choppy = 2, oddly_breakable_by_hand = 2, flammable = 2},
|
||||
sounds = default.node_sound_wood_defaults()
|
||||
}
|
||||
)
|
||||
|
||||
default.register_fence_rail(
|
||||
"naturalbiomes:fence_rail_bamboo_wood",
|
||||
{
|
||||
description = S("Bamboo Fence Rail"),
|
||||
texture = "naturalbiomes_bamboo_fence_wood.png",
|
||||
inventory_image = "default_fence_rail_overlay.png^naturalbiomes_bambooforest_bamboo_wood2.png^" ..
|
||||
"default_fence_rail_overlay.png^[makealpha:255,126,126",
|
||||
wield_image = "default_fence_rail_overlay.png^naturalbiomes_bambooforest_bamboo_wood2.png^" ..
|
||||
"default_fence_rail_overlay.png^[makealpha:255,126,126",
|
||||
material = "naturalbiomes:bamboo_wood",
|
||||
groups = {choppy = 2, oddly_breakable_by_hand = 2, flammable = 2},
|
||||
sounds = default.node_sound_wood_defaults()
|
||||
}
|
||||
)
|
||||
|
||||
minetest.register_decoration({
|
||||
name = "naturalbiomes:bamboo_tree",
|
||||
deco_type = "schematic",
|
||||
place_on = {"naturalbiomes:bambooforest_litter"},
|
||||
place_offset_y = 0,
|
||||
sidelen = 16,
|
||||
fill_ratio = 0.02115,
|
||||
biomes = {"naturalbiomes:bambooforest"},
|
||||
y_max = 31000,
|
||||
y_min = 1,
|
||||
schematic = minetest.get_modpath("naturalbiomes").."/schematics/naturalbiomes_bambootree_large_0_270.mts",
|
||||
flags = "place_center_x, place_center_z",
|
||||
rotation = "random",
|
||||
})
|
||||
|
||||
minetest.register_decoration({
|
||||
name = "naturalbiomes:bamboo_tree2",
|
||||
deco_type = "schematic",
|
||||
place_on = {"naturalbiomes:bambooforest_litter"},
|
||||
place_offset_y = 0,
|
||||
sidelen = 16,
|
||||
fill_ratio = 0.02115,
|
||||
biomes = {"naturalbiomes:bambooforest"},
|
||||
y_max = 31000,
|
||||
y_min = 1,
|
||||
schematic = minetest.get_modpath("naturalbiomes").."/schematics/naturalbiomes_bambootree_small_0_270.mts",
|
||||
flags = "place_center_x, place_center_z",
|
||||
rotation = "random",
|
||||
})
|
||||
|
||||
|
||||
minetest.register_decoration({
|
||||
name = "naturalbiomes:smallbamboo",
|
||||
deco_type = "schematic",
|
||||
place_on = {"naturalbiomes:bambooforest_litter"},
|
||||
sidelen = 16,
|
||||
noise_params = {
|
||||
offset = 0,
|
||||
scale = 0.05,
|
||||
spread = {x = 100, y = 100, z = 100},
|
||||
seed = 936,
|
||||
octaves = 3,
|
||||
persist = 0.7
|
||||
},
|
||||
biomes = {"naturalbiomes:bambooforest"},
|
||||
y_max = 31000,
|
||||
y_min = 0,
|
||||
schematic = minetest.get_modpath("naturalbiomes") .. "/schematics/naturalbiomes_bambootree_small_micro_0_270.mts",
|
||||
})
|
||||
|
||||
minetest.register_node("naturalbiomes:smallbamboo", {
|
||||
description = S("Small Bamboo Grass"),
|
||||
drawtype = "plantlike",
|
||||
tiles = {"naturalbiomes_bambooforest_bamboo_trunksmall.png"},
|
||||
inventory_image = "naturalbiomes_bambooforest_bamboo_trunksmall.png",
|
||||
wield_image = "naturalbiomes_bambooforest_bamboo_trunksmall.png",
|
||||
paramtype = "light",
|
||||
sunlight_propagates = true,
|
||||
walkable = false,
|
||||
selection_box = {
|
||||
type = "fixed",
|
||||
fixed = {-6 / 16, -0.5, -6 / 16, 6 / 16, 0.5, 6 / 16},
|
||||
},
|
||||
groups = {snappy = 3, flammable = 2},
|
||||
sounds = default.node_sound_leaves_defaults(),
|
||||
|
||||
after_dig_node = function(pos, node, metadata, digger)
|
||||
default.dig_up(pos, node, digger)
|
||||
end,
|
||||
})
|
||||
|
||||
minetest.register_node("naturalbiomes:bambooforest_rock", {
|
||||
description = S("Bamboo Forest Rock"),
|
||||
tiles = {"naturalbiomes_bambooforest_rock.png"},
|
||||
groups = {cracky = 3, stone = 1},
|
||||
drop = "naturalbiomes:bambooforest_rock",
|
||||
legacy_mineral = true,
|
||||
sounds = default.node_sound_stone_defaults(),
|
||||
})
|
||||
|
||||
minetest.register_decoration({
|
||||
name = "naturalbiomes:bambooforest_groundgrass",
|
||||
deco_type = "simple",
|
||||
place_on = {"naturalbiomes:bambooforest_litter"},
|
||||
sidelen = 16,
|
||||
noise_params = {
|
||||
offset = -0.03,
|
||||
scale = 0.1,
|
||||
spread = {x = 100, y = 100, z = 100},
|
||||
seed = 3602,
|
||||
octaves = 7,
|
||||
persist = 1,
|
||||
},
|
||||
y_max = 30000,
|
||||
y_min = 1,
|
||||
decoration = "naturalbiomes:bambooforest_groundgrass",
|
||||
spawn_by = "naturalbiomes:bambooforest_litter"
|
||||
})
|
||||
|
||||
minetest.register_node("naturalbiomes:bambooforest_groundgrass", {
|
||||
description = S"Babmooforest Gorund Grass",
|
||||
drawtype = "plantlike",
|
||||
waving = 1,
|
||||
visual_scale = 2.0,
|
||||
tiles = {"naturalbiomes_bambooforest_groundgrass.png"},
|
||||
inventory_image = "naturalbiomes_bambooforest_groundgrass.png",
|
||||
wield_image = "naturalbiomes_bambooforest_groundgrass.png",
|
||||
paramtype = "light",
|
||||
sunlight_propagates = true,
|
||||
walkable = false,
|
||||
buildable_to = true,
|
||||
groups = {snappy = 3, flora = 1, attached_node = 1, flammable = 1, beautiflowers = 1},
|
||||
sounds = default.node_sound_leaves_defaults(),
|
||||
selection_box = {
|
||||
type = "fixed",
|
||||
fixed = {-4 / 16, -0.5, -4 / 16, 4 / 16, 0.0, 4 / 16},
|
||||
},
|
||||
})
|
||||
|
||||
minetest.register_decoration({
|
||||
name = "naturalbiomes:bambooforest_groundgrass2",
|
||||
deco_type = "simple",
|
||||
place_on = {"naturalbiomes:bambooforest_litter"},
|
||||
sidelen = 16,
|
||||
noise_params = {
|
||||
offset = -0.03,
|
||||
scale = 0.1,
|
||||
spread = {x = 100, y = 100, z = 100},
|
||||
seed = 3602,
|
||||
octaves = 7,
|
||||
persist = 1,
|
||||
},
|
||||
y_max = 30000,
|
||||
y_min = 1,
|
||||
decoration = "naturalbiomes:bambooforest_groundgrass2",
|
||||
spawn_by = "naturalbiomes:bambooforest_litter"
|
||||
})
|
||||
|
||||
minetest.register_node("naturalbiomes:bambooforest_groundgrass2", {
|
||||
description = S"Babmooforest Gorund Grass",
|
||||
drawtype = "plantlike",
|
||||
waving = 1,
|
||||
visual_scale = 2.0,
|
||||
tiles = {"naturalbiomes_bambooforest_groundgrass2.png"},
|
||||
inventory_image = "naturalbiomes_bambooforest_groundgrass2.png",
|
||||
wield_image = "naturalbiomes_bambooforest_groundgrass2.png",
|
||||
paramtype = "light",
|
||||
sunlight_propagates = true,
|
||||
walkable = false,
|
||||
buildable_to = true,
|
||||
groups = {snappy = 3, flora = 1, attached_node = 1, flammable = 1, beautiflowers = 1},
|
||||
sounds = default.node_sound_leaves_defaults(),
|
||||
selection_box = {
|
||||
type = "fixed",
|
||||
fixed = {-4 / 16, -0.5, -4 / 16, 4 / 16, 0.0, 4 / 16},
|
||||
},
|
||||
})
|
||||
|
||||
--
|
||||
-- Tree generation
|
||||
--
|
||||
|
||||
-- New banana tree
|
||||
|
||||
local function grow_new_banana_tree(pos)
|
||||
if not default.can_grow(pos) then
|
||||
-- try a bit later again
|
||||
minetest.get_node_timer(pos):start(math.random(240, 600))
|
||||
return
|
||||
end
|
||||
minetest.remove_node(pos)
|
||||
minetest.place_schematic({x = pos.x - 4, y = pos.y - 0, z = pos.z - 3}, modpath.."/schematics/naturalbiomes_banana_palm_0_90.mts", "0", nil, false)
|
||||
end
|
||||
|
||||
-- banana trunk
|
||||
minetest.register_node("naturalbiomes:banana_trunk", {
|
||||
description = S("Banana Trunk"),
|
||||
tiles = {
|
||||
"naturalbiomes__banana_trunk_top.png",
|
||||
"naturalbiomes__banana_trunk_top.png",
|
||||
"naturalbiomes__banana_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,
|
||||
})
|
||||
|
||||
-- banana wood
|
||||
minetest.register_node("naturalbiomes:banana_wood", {
|
||||
description = S("Banana Wood"),
|
||||
tiles = {"naturalbiomes__banana_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 = "naturalbiomes:banana_wood 4",
|
||||
recipe = {{"naturalbiomes:banana_trunk"}}
|
||||
})
|
||||
|
||||
minetest.register_node("naturalbiomes:banana_leaves", {
|
||||
description = S("Banana Leaves"),
|
||||
drawtype = "allfaces_optional",
|
||||
waving = 1,
|
||||
tiles = {"naturalbiomes__banana_leaf.png"},
|
||||
special_tiles = {"naturalbiomes__banana_leaf.png"},
|
||||
paramtype = "light",
|
||||
is_ground_content = false,
|
||||
groups = {snappy = 3, leafdecay = 3, flammable = 2, leaves = 1, winleafdecay = 3},
|
||||
drop = {
|
||||
max_items = 1,
|
||||
items = {
|
||||
{
|
||||
-- player will get sapling with 1/50 chance
|
||||
items = {'naturalbiomes:banana_sapling'},
|
||||
rarity = 10,
|
||||
},
|
||||
{
|
||||
-- player will get leaves only if he get no saplings,
|
||||
-- this is because max_items is 1
|
||||
items = {'naturalbiomes:banana_leaves'},
|
||||
}
|
||||
}
|
||||
},
|
||||
sounds = default.node_sound_leaves_defaults(),
|
||||
|
||||
after_place_node = default.after_place_leaves,
|
||||
})
|
||||
|
||||
minetest.register_node("naturalbiomes:banana_sapling", {
|
||||
description = S("Banana Sapling"),
|
||||
drawtype = "plantlike",
|
||||
tiles = {"naturalbiomes__banana_tree_sapling.png"},
|
||||
inventory_image = "naturalbiomes__banana_tree_sapling.png",
|
||||
wield_image = "naturalbiomes__banana_tree_sapling.png",
|
||||
paramtype = "light",
|
||||
sunlight_propagates = true,
|
||||
walkable = false,
|
||||
on_timer = grow_new_banana_tree,
|
||||
selection_box = {
|
||||
type = "fixed",
|
||||
fixed = {-4 / 16, -0.5, -4 / 16, 4 / 16, 7 / 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,
|
||||
"naturalbiomes:banana_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,
|
||||
})
|
||||
|
||||
|
||||
stairs.register_stair_and_slab(
|
||||
"naturalbiomes_banana_wood",
|
||||
"naturalbiomes:banana_wood",
|
||||
{choppy = 2, oddly_breakable_by_hand = 1, flammable = 3},
|
||||
{"naturalbiomes_banana_wood.png"},
|
||||
S("Banana Stair"),
|
||||
S("Banana Slab"),
|
||||
default.node_sound_wood_defaults()
|
||||
)
|
||||
|
||||
stairs.register_stair_and_slab(
|
||||
"naturalbiomes_banana_trunk",
|
||||
"naturalbiomes:banana_trunk",
|
||||
{choppy = 2, oddly_breakable_by_hand = 1, flammable = 3},
|
||||
{"naturalbiomes_banana_trunk_top.png", "naturalbiomes_banana_trunk_top.png", "naturalbiomes_banana_trunk.png"},
|
||||
S("Banana Trunk Stair"),
|
||||
S("Banana Trunk Slab"),
|
||||
default.node_sound_wood_defaults()
|
||||
)
|
||||
|
||||
doors.register_fencegate(
|
||||
"naturalbiomes:gate_banana_wood",
|
||||
{
|
||||
description = S("Banana Wood Fence Gate"),
|
||||
texture = "naturalbiomes_banana_wood.png",
|
||||
material = "naturalbiomes:banana_wood",
|
||||
groups = {choppy = 3, oddly_breakable_by_hand = 2, flammable = 3},
|
||||
sounds = default.node_sound_wood_defaults()
|
||||
}
|
||||
)
|
||||
|
||||
|
||||
default.register_fence(
|
||||
"naturalbiomes:fence_banana_wood",
|
||||
{
|
||||
description = S("Banana Fence"),
|
||||
texture = "naturalbiomes_banana_wood.png",
|
||||
inventory_image = "default_fence_overlay.png^naturalbiomes_banana_wood.png^default_fence_overlay.png^[makealpha:255,126,126",
|
||||
wield_image = "default_fence_overlay.png^naturalbiomes_banana_wood.png^default_fence_overlay.png^[makealpha:255,126,126",
|
||||
material = "naturalbiomes:banana_wood",
|
||||
groups = {choppy = 2, oddly_breakable_by_hand = 2, flammable = 2},
|
||||
sounds = default.node_sound_wood_defaults()
|
||||
}
|
||||
)
|
||||
|
||||
default.register_fence_rail(
|
||||
"naturalbiomes:fence_rail_banana_wood",
|
||||
{
|
||||
description = S("Banana Fence Rail"),
|
||||
texture = "naturalbiomes_banana_wood.png",
|
||||
inventory_image = "default_fence_rail_overlay.png^naturalbiomes_banana_wood.png^" ..
|
||||
"default_fence_rail_overlay.png^[makealpha:255,126,126",
|
||||
wield_image = "default_fence_rail_overlay.png^naturalbiomes_banana_wood.png^" ..
|
||||
"default_fence_rail_overlay.png^[makealpha:255,126,126",
|
||||
material = "naturalbiomes:banana_wood",
|
||||
groups = {choppy = 2, oddly_breakable_by_hand = 2, flammable = 2},
|
||||
sounds = default.node_sound_wood_defaults()
|
||||
}
|
||||
)
|
||||
|
||||
minetest.register_decoration({
|
||||
name = "naturalbiomes:banana_tree",
|
||||
deco_type = "schematic",
|
||||
place_on = {"naturalbiomes:bambooforest_litter"},
|
||||
place_offset_y = 0,
|
||||
sidelen = 16,
|
||||
fill_ratio = 0.00515,
|
||||
biomes = {"naturalbiomes:bambooforest"},
|
||||
y_max = 31000,
|
||||
y_min = 5,
|
||||
schematic = minetest.get_modpath("naturalbiomes").."/schematics/naturalbiomes_banana_palm_0_90.mts",
|
||||
flags = "place_center_x, place_center_z",
|
||||
rotation = "random",
|
||||
})
|
992
mods/naturalbiomes/bushland.lua
Normal file
|
@ -0,0 +1,992 @@
|
|||
local S = minetest.get_translator("naturalbiomes")
|
||||
|
||||
local modname = "naturalbiomes"
|
||||
local modpath = minetest.get_modpath(modname)
|
||||
local mg_name = minetest.get_mapgen_setting("mg_name")
|
||||
|
||||
minetest.register_node("naturalbiomes:bushland_bushlandlitter2", {
|
||||
description = S("Bushland Litter"),
|
||||
tiles = {
|
||||
"naturalbiomes_bushland_bushlandlitter2_top.png",
|
||||
"naturalbiomes_bushland_bushlandlitter2_bottom.png",
|
||||
"naturalbiomes_bushland_bushlandlitter2_right.png",
|
||||
"naturalbiomes_bushland_bushlandlitter2_left.png",
|
||||
"naturalbiomes_bushland_bushlandlitter2_back.png",
|
||||
"naturalbiomes_bushland_bushlandlitter2_front.png"},
|
||||
groups = {crumbly = 3, sand = 1, falling_node = 1},
|
||||
sounds = default.node_sound_dirt_defaults(),
|
||||
})
|
||||
|
||||
minetest.register_node("naturalbiomes:bushland_bushlandlitter3", {
|
||||
description = S("Bushland Litter"),
|
||||
tiles = {
|
||||
"naturalbiomes_bushland_bushlandlitter3_top.png",
|
||||
"naturalbiomes_bushland_bushlandlitter3_bottom.png",
|
||||
"naturalbiomes_bushland_bushlandlitter3_right.png",
|
||||
"naturalbiomes_bushland_bushlandlitter3_left.png",
|
||||
"naturalbiomes_bushland_bushlandlitter3_back.png",
|
||||
"naturalbiomes_bushland_bushlandlitter3_front.png"},
|
||||
groups = {crumbly = 3, sand = 1, falling_node = 1},
|
||||
sounds = default.node_sound_dirt_defaults(),
|
||||
})
|
||||
|
||||
minetest.register_biome({
|
||||
name = "naturalbiomes:bushland",
|
||||
node_top = "naturalbiomes:bushland_bushlandlitter",
|
||||
depth_top = 1,
|
||||
node_filler = "default:dirt",
|
||||
depth_filler = 5,
|
||||
node_riverbed = "default:sand",
|
||||
depth_riverbed = 3,
|
||||
node_dungeon = "default:cobble",
|
||||
node_dungeon_alt = "default:sandstonebrick",
|
||||
node_dungeon_stair = "stairs:stair_sandstone",
|
||||
y_max = 500,
|
||||
y_min = 1,
|
||||
heat_point = 68,
|
||||
humidity_point = 83,
|
||||
})
|
||||
|
||||
minetest.register_node("naturalbiomes:bushland_bushlandlitter", {
|
||||
description = S("Bushland Litter"),
|
||||
tiles = {"naturalbiomes_bushland_bushlandlitter.png", "default_dirt.png",
|
||||
{name = "default_dirt.png^naturalbiomes_bushland_bushlandlitter_side.png",
|
||||
tileable_vertical = false}},
|
||||
groups = {crumbly = 3, soil = 1, spreading_dirt_type = 1},
|
||||
drop = "default:dirt",
|
||||
sounds = default.node_sound_dirt_defaults({
|
||||
footstep = {name = "default_grass_footstep", gain = 0.25},
|
||||
}),
|
||||
})
|
||||
|
||||
minetest.register_decoration({
|
||||
deco_type = "simple",
|
||||
place_on = {"naturalbiomes:bushland_bushlandlitter"},
|
||||
sidelen = 16,
|
||||
place_offset_y = -1,
|
||||
flags = "force_placement",
|
||||
fill_ratio = 0.3,
|
||||
y_max = 20,
|
||||
y_min = 3,
|
||||
decoration = "naturalbiomes:bushland_bushlandlitter2"
|
||||
})
|
||||
|
||||
minetest.register_decoration({
|
||||
deco_type = "simple",
|
||||
place_on = {"naturalbiomes:bushland_bushlandlitter"},
|
||||
sidelen = 16,
|
||||
place_offset_y = -1,
|
||||
flags = "force_placement",
|
||||
fill_ratio = 0.3,
|
||||
y_max = 500,
|
||||
y_min = 3,
|
||||
decoration = "naturalbiomes:bushland_bushlandlitter3"
|
||||
})
|
||||
|
||||
minetest.register_decoration({
|
||||
deco_type = "simple",
|
||||
place_on = {"naturalbiomes:bushland_bushlandlitter"},
|
||||
sidelen = 16,
|
||||
place_offset_y = -1,
|
||||
flags = "force_placement",
|
||||
fill_ratio = 10,
|
||||
y_max = 3,
|
||||
y_min = 0,
|
||||
decoration = "default:sand"
|
||||
})
|
||||
|
||||
-- Schematics
|
||||
|
||||
minetest.register_decoration({
|
||||
deco_type = "schematic",
|
||||
place_on = {"naturalbiomes:bushland_bushlandlitter"},
|
||||
place_offset_y = -1,
|
||||
sidelen = 16,
|
||||
noise_params = {
|
||||
offset = -0.004,
|
||||
scale = 0.01,
|
||||
spread = {x = 100, y = 100, z = 100},
|
||||
seed = 697,
|
||||
octaves = 3,
|
||||
persist = 0.7,
|
||||
},
|
||||
biomes = {"naturalbiomes:bushland"},
|
||||
y_max = 31000,
|
||||
y_min = 4,
|
||||
schematic = minetest.get_modpath("naturalbiomes") .. "/schematics/naturalbiomes_bushland_blackberrybush.mts",
|
||||
flags = "place_center_x, place_center_z",
|
||||
})
|
||||
|
||||
minetest.register_decoration({
|
||||
deco_type = "schematic",
|
||||
place_on = {"naturalbiomes:bushland_bushlandlitter"},
|
||||
place_offset_y = -1,
|
||||
sidelen = 16,
|
||||
noise_params = {
|
||||
offset = -0.004,
|
||||
scale = 0.01,
|
||||
spread = {x = 100, y = 100, z = 100},
|
||||
seed = 697,
|
||||
octaves = 3,
|
||||
persist = 0.7,
|
||||
},
|
||||
biomes = {"naturalbiomes:bushland"},
|
||||
y_max = 31000,
|
||||
y_min = 4,
|
||||
schematic = minetest.get_modpath("naturalbiomes") .. "/schematics/naturalbiomes_bushland_blackberrybush2.mts",
|
||||
flags = "place_center_x, place_center_z",
|
||||
})
|
||||
|
||||
minetest.register_decoration({
|
||||
deco_type = "schematic",
|
||||
place_on = {"naturalbiomes:bushland_bushlandlitter"},
|
||||
place_offset_y = -1,
|
||||
sidelen = 16,
|
||||
noise_params = {
|
||||
offset = -0.004,
|
||||
scale = 0.01,
|
||||
spread = {x = 100, y = 100, z = 100},
|
||||
seed = 697,
|
||||
octaves = 3,
|
||||
persist = 0.7,
|
||||
},
|
||||
biomes = {"naturalbiomes:bushland"},
|
||||
y_max = 31000,
|
||||
y_min = 4,
|
||||
schematic = minetest.get_modpath("naturalbiomes") .. "/schematics/naturalbiomes_bushland_blackberrybush3.mts",
|
||||
flags = "place_center_x, place_center_z",
|
||||
})
|
||||
|
||||
minetest.register_decoration({
|
||||
deco_type = "schematic",
|
||||
place_on = {"naturalbiomes:bushland_bushlandlitter"},
|
||||
place_offset_y = 1,
|
||||
sidelen = 16,
|
||||
noise_params = {
|
||||
offset = -0.004,
|
||||
scale = 0.01,
|
||||
spread = {x = 100, y = 100, z = 100},
|
||||
seed = 697,
|
||||
octaves = 3,
|
||||
persist = 0.7,
|
||||
},
|
||||
biomes = {"naturalbiomes:bushland"},
|
||||
y_max = 31000,
|
||||
y_min = 4,
|
||||
schematic = minetest.get_modpath("naturalbiomes") .. "/schematics/naturalbiomes_bushland_wildrosebush.mts",
|
||||
flags = "place_center_x, place_center_z",
|
||||
})
|
||||
|
||||
|
||||
minetest.register_decoration({
|
||||
deco_type = "schematic",
|
||||
place_on = {"naturalbiomes:bushland_bushlandlitter"},
|
||||
place_offset_y = 1,
|
||||
sidelen = 16,
|
||||
noise_params = {
|
||||
offset = -0.004,
|
||||
scale = 0.01,
|
||||
spread = {x = 100, y = 100, z = 100},
|
||||
seed = 697,
|
||||
octaves = 3,
|
||||
persist = 0.7,
|
||||
},
|
||||
biomes = {"naturalbiomes:bushland"},
|
||||
y_max = 31000,
|
||||
y_min = 4,
|
||||
schematic = minetest.get_modpath("naturalbiomes") .. "/schematics/naturalbiomes_bushland_wildrosebush2.mts",
|
||||
flags = "place_center_x, place_center_z",
|
||||
})
|
||||
|
||||
|
||||
minetest.register_decoration({
|
||||
deco_type = "schematic",
|
||||
place_on = {"naturalbiomes:bushland_bushlandlitter"},
|
||||
place_offset_y = 1,
|
||||
sidelen = 16,
|
||||
noise_params = {
|
||||
offset = -0.004,
|
||||
scale = 0.01,
|
||||
spread = {x = 100, y = 100, z = 100},
|
||||
seed = 697,
|
||||
octaves = 3,
|
||||
persist = 0.7,
|
||||
},
|
||||
biomes = {"naturalbiomes:bushland"},
|
||||
y_max = 31000,
|
||||
y_min = 4,
|
||||
schematic = minetest.get_modpath("naturalbiomes") .. "/schematics/naturalbiomes_bushland_wildrosebush3.mts",
|
||||
flags = "place_center_x, place_center_z",
|
||||
})
|
||||
|
||||
minetest.register_decoration({
|
||||
deco_type = "schematic",
|
||||
place_on = {"naturalbiomes:bushland_bushlandlitter"},
|
||||
place_offset_y = -3,
|
||||
sidelen = 16,
|
||||
fill_ratio = 0.00215,
|
||||
biomes = {"naturalbiomes:bushland"},
|
||||
y_max = 31000,
|
||||
y_min = 4,
|
||||
schematic = minetest.get_modpath("naturalbiomes") .. "/schematics/naturalbiomes_bushland_hazelnutbush.mts",
|
||||
flags = "place_center_x, place_center_z",
|
||||
})
|
||||
|
||||
|
||||
minetest.register_decoration({
|
||||
deco_type = "schematic",
|
||||
place_on = {"naturalbiomes:bushland_bushlandlitter"},
|
||||
place_offset_y = -3,
|
||||
sidelen = 16,
|
||||
fill_ratio = 0.00215,
|
||||
biomes = {"naturalbiomes:bushland"},
|
||||
y_max = 31000,
|
||||
y_min = 4,
|
||||
schematic = minetest.get_modpath("naturalbiomes") .. "/schematics/naturalbiomes_bushland_hazelnutbush2.mts",
|
||||
flags = "place_center_x, place_center_z",
|
||||
})
|
||||
|
||||
|
||||
minetest.register_decoration({
|
||||
deco_type = "schematic",
|
||||
place_on = {"naturalbiomes:bushland_bushlandlitter"},
|
||||
place_offset_y = -3,
|
||||
sidelen = 16,
|
||||
fill_ratio = 0.00215,
|
||||
biomes = {"naturalbiomes:bushland"},
|
||||
y_max = 31000,
|
||||
y_min = 4,
|
||||
schematic = minetest.get_modpath("naturalbiomes") .. "/schematics/naturalbiomes_bushland_hazelnutbush3.mts",
|
||||
flags = "place_center_x, place_center_z",
|
||||
})
|
||||
|
||||
minetest.register_decoration({
|
||||
deco_type = "schematic",
|
||||
place_on = {"naturalbiomes:bushland_bushlandlitter"},
|
||||
place_offset_y = -1,
|
||||
sidelen = 16,
|
||||
fill_ratio = 0.00115,
|
||||
biomes = {"naturalbiomes:bushland"},
|
||||
y_max = 31000,
|
||||
y_min = 4,
|
||||
schematic = minetest.get_modpath("naturalbiomes") .. "/schematics/naturalbiomes_bushland_deadbush3.mts",
|
||||
flags = "place_center_x, place_center_z",
|
||||
})
|
||||
|
||||
minetest.register_decoration({
|
||||
deco_type = "schematic",
|
||||
place_on = {"naturalbiomes:bushland_bushlandlitter"},
|
||||
place_offset_y = -1,
|
||||
sidelen = 16,
|
||||
fill_ratio = 0.00115,
|
||||
biomes = {"naturalbiomes:bushland"},
|
||||
y_max = 31000,
|
||||
y_min = 4,
|
||||
schematic = minetest.get_modpath("naturalbiomes") .. "/schematics/naturalbiomes_bushland_deadbush2.mts",
|
||||
flags = "place_center_x, place_center_z",
|
||||
})
|
||||
|
||||
minetest.register_decoration({
|
||||
deco_type = "schematic",
|
||||
place_on = {"naturalbiomes:bushland_bushlandlitter"},
|
||||
place_offset_y = -1,
|
||||
sidelen = 16,
|
||||
fill_ratio = 0.00115,
|
||||
biomes = {"naturalbiomes:bushland"},
|
||||
y_max = 31000,
|
||||
y_min = 4,
|
||||
schematic = minetest.get_modpath("naturalbiomes") .. "/schematics/naturalbiomes_bushland_deadbush.mts",
|
||||
flags = "place_center_x, place_center_z",
|
||||
})
|
||||
|
||||
minetest.register_node("naturalbiomes:bushland_grass", {
|
||||
description = S"Bushland Grass",
|
||||
drawtype = "plantlike",
|
||||
waving = 1,
|
||||
visual_scale = 1.0,
|
||||
tiles = {"naturalbiomes_bushland_grass.png"},
|
||||
inventory_image = "naturalbiomes_bushland_grass.png",
|
||||
wield_image = "naturalbiomes_bushland_grass.png",
|
||||
paramtype = "light",
|
||||
sunlight_propagates = true,
|
||||
walkable = false,
|
||||
buildable_to = true,
|
||||
groups = {snappy = 3, flora = 1, attached_node = 1, flammable = 1, beautiflowers = 1},
|
||||
sounds = default.node_sound_leaves_defaults(),
|
||||
selection_box = {
|
||||
type = "fixed",
|
||||
fixed = {-4 / 16, -0.5, -4 / 16, 4 / 16, 0.0, 4 / 16},
|
||||
},
|
||||
})
|
||||
|
||||
minetest.register_decoration({
|
||||
deco_type = "simple",
|
||||
place_on = {"naturalbiomes:bushland_bushlandlitter"},
|
||||
sidelen = 16,
|
||||
noise_params = {
|
||||
offset = -0.03,
|
||||
scale = 0.1,
|
||||
spread = {x = 100, y = 100, z = 100},
|
||||
seed = 9478,
|
||||
octaves = 9,
|
||||
persist = 1,
|
||||
},
|
||||
y_max = 30000,
|
||||
y_min = 3,
|
||||
decoration = "naturalbiomes:bushland_grass",
|
||||
})
|
||||
|
||||
minetest.register_node("naturalbiomes:bushland_grass2", {
|
||||
description = S"Bushland Grass",
|
||||
drawtype = "plantlike",
|
||||
waving = 1,
|
||||
visual_scale = 1.0,
|
||||
tiles = {"naturalbiomes_bushland_grass2.png"},
|
||||
inventory_image = "naturalbiomes_bushland_grass2.png",
|
||||
wield_image = "naturalbiomes_bushland_grass2.png",
|
||||
paramtype = "light",
|
||||
sunlight_propagates = true,
|
||||
walkable = false,
|
||||
buildable_to = true,
|
||||
groups = {snappy = 3, flora = 1, attached_node = 1, flammable = 1, beautiflowers = 1},
|
||||
sounds = default.node_sound_leaves_defaults(),
|
||||
selection_box = {
|
||||
type = "fixed",
|
||||
fixed = {-4 / 16, -0.5, -4 / 16, 4 / 16, 0.0, 4 / 16},
|
||||
},
|
||||
})
|
||||
|
||||
minetest.register_decoration({
|
||||
deco_type = "simple",
|
||||
place_on = {"naturalbiomes:bushland_bushlandlitter"},
|
||||
sidelen = 16,
|
||||
noise_params = {
|
||||
offset = -0.03,
|
||||
scale = 0.1,
|
||||
spread = {x = 100, y = 100, z = 100},
|
||||
seed = 4602,
|
||||
octaves = 9,
|
||||
persist = 1,
|
||||
},
|
||||
y_max = 30000,
|
||||
y_min = 3,
|
||||
decoration = "naturalbiomes:bushland_grass2",
|
||||
})
|
||||
|
||||
minetest.register_node("naturalbiomes:bushland_grass3", {
|
||||
description = S"Bushland Grass",
|
||||
drawtype = "plantlike",
|
||||
waving = 1,
|
||||
visual_scale = 1.0,
|
||||
tiles = {"naturalbiomes_bushland_grass3.png"},
|
||||
inventory_image = "naturalbiomes_bushland_grass3.png",
|
||||
wield_image = "naturalbiomes_bushland_grass3.png",
|
||||
paramtype = "light",
|
||||
sunlight_propagates = true,
|
||||
walkable = false,
|
||||
buildable_to = true,
|
||||
groups = {snappy = 3, flora = 1, attached_node = 1, flammable = 1, beautiflowers = 1},
|
||||
sounds = default.node_sound_leaves_defaults(),
|
||||
selection_box = {
|
||||
type = "fixed",
|
||||
fixed = {-4 / 16, -0.5, -4 / 16, 4 / 16, 0.0, 4 / 16},
|
||||
},
|
||||
})
|
||||
|
||||
minetest.register_decoration({
|
||||
deco_type = "simple",
|
||||
place_on = {"naturalbiomes:bushland_bushlandlitter2", "naturalbiomes:bushland_bushlandlitter3"},
|
||||
sidelen = 16,
|
||||
noise_params = {
|
||||
offset = -0.03,
|
||||
scale = 0.1,
|
||||
spread = {x = 100, y = 100, z = 100},
|
||||
seed = 1549,
|
||||
octaves = 9,
|
||||
persist = 1,
|
||||
},
|
||||
y_max = 30000,
|
||||
y_min = 3,
|
||||
decoration = "naturalbiomes:bushland_grass3",
|
||||
})
|
||||
|
||||
minetest.register_node("naturalbiomes:bushland_grass4", {
|
||||
description = S"Bushland Grass",
|
||||
drawtype = "plantlike",
|
||||
waving = 1,
|
||||
visual_scale = 2.0,
|
||||
tiles = {"naturalbiomes_bushland_grass4.png"},
|
||||
inventory_image = "naturalbiomes_bushland_grass4.png",
|
||||
wield_image = "naturalbiomes_bushland_grass4.png",
|
||||
paramtype = "light",
|
||||
sunlight_propagates = true,
|
||||
walkable = false,
|
||||
buildable_to = true,
|
||||
groups = {snappy = 3, flora = 1, attached_node = 1, flammable = 1, beautiflowers = 1},
|
||||
sounds = default.node_sound_leaves_defaults(),
|
||||
selection_box = {
|
||||
type = "fixed",
|
||||
fixed = {-4 / 16, -0.5, -4 / 16, 4 / 16, 0.0, 4 / 16},
|
||||
},
|
||||
})
|
||||
|
||||
minetest.register_decoration({
|
||||
deco_type = "simple",
|
||||
place_on = {"naturalbiomes:bushland_bushlandlitter"},
|
||||
sidelen = 16,
|
||||
noise_params = {
|
||||
offset = -0.03,
|
||||
scale = 0.1,
|
||||
spread = {x = 100, y = 100, z = 100},
|
||||
seed = 6687,
|
||||
octaves = 9,
|
||||
persist = 1,
|
||||
},
|
||||
y_max = 30000,
|
||||
y_min = 3,
|
||||
decoration = "naturalbiomes:bushland_grass4",
|
||||
})
|
||||
|
||||
minetest.register_node("naturalbiomes:bushland_grass5", {
|
||||
description = S"Bushland Grass",
|
||||
drawtype = "plantlike",
|
||||
waving = 1,
|
||||
visual_scale = 2.0,
|
||||
tiles = {"naturalbiomes_bushland_grass5.png"},
|
||||
inventory_image = "naturalbiomes_bushland_grass5.png",
|
||||
wield_image = "naturalbiomes_bushland_grass5.png",
|
||||
paramtype = "light",
|
||||
sunlight_propagates = true,
|
||||
walkable = false,
|
||||
buildable_to = true,
|
||||
groups = {snappy = 3, flora = 1, attached_node = 1, flammable = 1, beautiflowers = 1},
|
||||
sounds = default.node_sound_leaves_defaults(),
|
||||
selection_box = {
|
||||
type = "fixed",
|
||||
fixed = {-4 / 16, -0.5, -4 / 16, 4 / 16, 0.0, 4 / 16},
|
||||
},
|
||||
})
|
||||
|
||||
minetest.register_decoration({
|
||||
deco_type = "simple",
|
||||
place_on = {"naturalbiomes:bushland_bushlandlitter2", "naturalbiomes:bushland_bushlandlitter3"},
|
||||
sidelen = 16,
|
||||
noise_params = {
|
||||
offset = -0.03,
|
||||
scale = 0.1,
|
||||
spread = {x = 100, y = 100, z = 100},
|
||||
seed = 4663,
|
||||
octaves = 9,
|
||||
persist = 1,
|
||||
},
|
||||
y_max = 30000,
|
||||
y_min = 3,
|
||||
decoration = "naturalbiomes:bushland_grass5",
|
||||
})
|
||||
|
||||
minetest.register_node("naturalbiomes:bushland_grass6", {
|
||||
description = S"Bushland Grass",
|
||||
drawtype = "plantlike",
|
||||
waving = 1,
|
||||
visual_scale = 2.0,
|
||||
tiles = {"naturalbiomes_bushland_grass6.png"},
|
||||
inventory_image = "naturalbiomes_bushland_grass6.png",
|
||||
wield_image = "naturalbiomes_bushland_grass6.png",
|
||||
paramtype = "light",
|
||||
sunlight_propagates = true,
|
||||
walkable = false,
|
||||
buildable_to = true,
|
||||
groups = {snappy = 3, flora = 1, attached_node = 1, flammable = 1, beautiflowers = 1},
|
||||
sounds = default.node_sound_leaves_defaults(),
|
||||
selection_box = {
|
||||
type = "fixed",
|
||||
fixed = {-4 / 16, -0.5, -4 / 16, 4 / 16, 0.0, 4 / 16},
|
||||
},
|
||||
})
|
||||
|
||||
minetest.register_decoration({
|
||||
deco_type = "simple",
|
||||
place_on = {"naturalbiomes:bushland_bushlandlitter2", "naturalbiomes:bushland_bushlandlitter3"},
|
||||
sidelen = 16,
|
||||
noise_params = {
|
||||
offset = -0.03,
|
||||
scale = 0.1,
|
||||
spread = {x = 100, y = 100, z = 100},
|
||||
seed = 4602,
|
||||
octaves = 9,
|
||||
persist = 1,
|
||||
},
|
||||
y_max = 30000,
|
||||
y_min = 3,
|
||||
decoration = "naturalbiomes:bushland_grass6",
|
||||
})
|
||||
|
||||
minetest.register_node("naturalbiomes:bushland_grass7", {
|
||||
description = S"Bushland Grass",
|
||||
drawtype = "plantlike",
|
||||
waving = 1,
|
||||
visual_scale = 2.0,
|
||||
tiles = {"naturalbiomes_bushland_grass7.png"},
|
||||
inventory_image = "naturalbiomes_bushland_grass7.png",
|
||||
wield_image = "naturalbiomes_bushland_grass7.png",
|
||||
paramtype = "light",
|
||||
sunlight_propagates = true,
|
||||
walkable = false,
|
||||
buildable_to = true,
|
||||
groups = {snappy = 3, flora = 1, attached_node = 1, flammable = 1, beautiflowers = 1},
|
||||
sounds = default.node_sound_leaves_defaults(),
|
||||
selection_box = {
|
||||
type = "fixed",
|
||||
fixed = {-4 / 16, -0.5, -4 / 16, 4 / 16, 0.0, 4 / 16},
|
||||
},
|
||||
})
|
||||
|
||||
minetest.register_decoration({
|
||||
deco_type = "simple",
|
||||
place_on = {"naturalbiomes:bushland_bushlandlitter"},
|
||||
sidelen = 16,
|
||||
noise_params = {
|
||||
offset = -0.03,
|
||||
scale = 0.1,
|
||||
spread = {x = 100, y = 100, z = 100},
|
||||
seed = 9932,
|
||||
octaves = 9,
|
||||
persist = 1,
|
||||
},
|
||||
y_max = 30000,
|
||||
y_min = 3,
|
||||
decoration = "naturalbiomes:bushland_grass7",
|
||||
})
|
||||
|
||||
-- New blackberry bush
|
||||
|
||||
local function grow_new_blackberry_bush(pos)
|
||||
if not default.can_grow(pos) then
|
||||
-- try a bit later again
|
||||
minetest.get_node_timer(pos):start(math.random(240, 600))
|
||||
return
|
||||
end
|
||||
minetest.remove_node(pos)
|
||||
minetest.place_schematic({x = pos.x - 2, y = pos.y - 0, z = pos.z - 2}, modpath.."/schematics/naturalbiomes_bushland_blackberrybush.mts", "0", nil, false)
|
||||
end
|
||||
|
||||
minetest.register_node("naturalbiomes:bushland_blackberry_stem", {
|
||||
description = S("Blackberry Bush Stem"),
|
||||
drawtype = "plantlike",
|
||||
visual_scale = 1.0,
|
||||
tiles = {"naturalbiomes_bushland_blackberry_stem.png"},
|
||||
inventory_image = "naturalbiomes_bushland_blackberry_stem.png",
|
||||
wield_image = "naturalbiomes_bushland_blackberry_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("naturalbiomes:bushland_blackberry_leaves2", {
|
||||
description = S("Blackberry Bush Leaves"),
|
||||
drawtype = "allfaces_optional",
|
||||
tiles = {"naturalbiomes_bushland_blackberry_leaves2.png"},
|
||||
paramtype = "light",
|
||||
groups = {snappy = 3, flammable = 2, leaves = 1, winleafdecay = 3},
|
||||
drop = {
|
||||
max_items = 1,
|
||||
items = {
|
||||
{items = {"naturalbiomes:bushland_blackberrybush_sapling"}, rarity = 3},
|
||||
{items = {"naturalbiomes:blackberry"}, rarity = 2},
|
||||
{items = {"naturalbiomes:bushland_blackberry_leaves2"}}
|
||||
}
|
||||
},
|
||||
sounds = default.node_sound_leaves_defaults(),
|
||||
|
||||
after_place_node = after_place_leaves,
|
||||
})
|
||||
|
||||
minetest.register_node("naturalbiomes:bushland_blackberry_leaves", {
|
||||
description = S("Blackberry Bush Leaves"),
|
||||
drawtype = "allfaces_optional",
|
||||
tiles = {"naturalbiomes_bushland_blackberry_leaves.png"},
|
||||
paramtype = "light",
|
||||
groups = {snappy = 3, flammable = 2, leaves = 1, winleafdecay = 3},
|
||||
drop = {
|
||||
max_items = 1,
|
||||
items = {
|
||||
{items = {"naturalbiomes:bushland_blackberrybush_sapling"}, rarity = 25},
|
||||
{items = {"naturalbiomes:blackberry"}, rarity = 2},
|
||||
{items = {"naturalbiomes:bushland_blackberry_leaves"}}
|
||||
}
|
||||
},
|
||||
sounds = default.node_sound_leaves_defaults(),
|
||||
|
||||
after_place_node = after_place_leaves,
|
||||
})
|
||||
|
||||
minetest.register_node("naturalbiomes:bushland_blackberrybush_sapling", {
|
||||
description = S("Blackberry Bush Sapling"),
|
||||
drawtype = "plantlike",
|
||||
tiles = {"naturalbiomes_bushland_blackberry_sapling.png"},
|
||||
inventory_image = "naturalbiomes_bushland_blackberry_sapling.png",
|
||||
wield_image = "naturalbiomes_bushland_blackberry_sapling.png",
|
||||
paramtype = "light",
|
||||
sunlight_propagates = true,
|
||||
walkable = false,
|
||||
on_timer = grow_new_blackberry_bush,
|
||||
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,
|
||||
"naturalbiomes:bushland_blackberrybush_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("naturalbiomes:blackberry", {
|
||||
description = S("Blackberry"),
|
||||
drawtype = "torchlike",
|
||||
tiles = {"naturalbiomes_bushland_blackberries.png"},
|
||||
inventory_image = "naturalbiomes_bushland_blackberries.png",
|
||||
wield_image = "naturalbiomes_bushland_blackberries.png",
|
||||
paramtype = "light",
|
||||
sunlight_propagates = true,
|
||||
walkable = false,
|
||||
selection_box = {
|
||||
type = "fixed",
|
||||
fixed = {-0.31, -0.5, -0.31, 0.31, 0.5, 0.31}
|
||||
},
|
||||
groups = {
|
||||
fleshy = 3, dig_immediate = 3, flammable = 2,
|
||||
leafdecay = 1, leafdecay_drop = 1
|
||||
},
|
||||
drop = "naturalbiomes:blackberry",
|
||||
on_use = minetest.item_eat(2),
|
||||
sounds = default.node_sound_leaves_defaults(),
|
||||
after_place_node = function(pos, placer)
|
||||
if placer:is_player() then
|
||||
minetest.set_node(pos, {name = "naturalbiomes:blackberry", param2 = 1})
|
||||
end
|
||||
end
|
||||
})
|
||||
|
||||
|
||||
-- New wildrose bush
|
||||
|
||||
local function grow_new_wildrose_bush(pos)
|
||||
if not default.can_grow(pos) then
|
||||
-- try a bit later again
|
||||
minetest.get_node_timer(pos):start(math.random(240, 600))
|
||||
return
|
||||
end
|
||||
minetest.remove_node(pos)
|
||||
minetest.place_schematic({x = pos.x - 1, y = pos.y - 0, z = pos.z - 1}, modpath.."/schematics/naturalbiomes_bushland_wildrosebush.mts", "0", nil, false)
|
||||
end
|
||||
|
||||
minetest.register_node("naturalbiomes:bushland_wildrose_stem", {
|
||||
description = S("Wildrose Bush Stem"),
|
||||
drawtype = "plantlike",
|
||||
visual_scale = 1.40,
|
||||
tiles = {"naturalbiomes_bushland_wildrose_stem.png"},
|
||||
inventory_image = "naturalbiomes_bushland_wildrose_stem.png",
|
||||
wield_image = "naturalbiomes_bushland_wildrose_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("naturalbiomes:bushland_wildrose_leaves2", {
|
||||
description = S("Wildrose Bush Leaves"),
|
||||
drawtype = "allfaces_optional",
|
||||
waving = 1,
|
||||
tiles = {"naturalbiomes_bushland_wildrose_leaves2.png"},
|
||||
paramtype = "light",
|
||||
groups = {snappy = 3, flammable = 2, leaves = 1, winleafdecay = 3},
|
||||
drop = {
|
||||
max_items = 1,
|
||||
items = {
|
||||
{items = {"naturalbiomes:bushland_wildrosebush_sapling"}, rarity = 3},
|
||||
{items = {"naturalbiomes:wildrose"}, rarity = 2},
|
||||
{items = {"naturalbiomes:bushland_wildrose_leaves2"}}
|
||||
}
|
||||
},
|
||||
sounds = default.node_sound_leaves_defaults(),
|
||||
|
||||
after_place_node = after_place_leaves,
|
||||
})
|
||||
|
||||
minetest.register_node("naturalbiomes:bushland_wildrose_leaves", {
|
||||
description = S("Wildrose Bush Leaves"),
|
||||
drawtype = "allfaces_optional",
|
||||
waving = 1,
|
||||
tiles = {"naturalbiomes_bushland_wildrose_leaves.png"},
|
||||
paramtype = "light",
|
||||
groups = {snappy = 3, flammable = 2, leaves = 1, winleafdecay = 3},
|
||||
drop = {
|
||||
max_items = 1,
|
||||
items = {
|
||||
{items = {"naturalbiomes:bushland_wildrosebush_sapling"}, rarity = 25},
|
||||
{items = {"naturalbiomes:wildrose"}, rarity = 2},
|
||||
{items = {"naturalbiomes:bushland_wildrose_leaves"}}
|
||||
}
|
||||
},
|
||||
sounds = default.node_sound_leaves_defaults(),
|
||||
|
||||
after_place_node = after_place_leaves,
|
||||
})
|
||||
|
||||
minetest.register_node("naturalbiomes:bushland_wildrosebush_sapling", {
|
||||
description = S("Wildrose Bush Sapling"),
|
||||
drawtype = "plantlike",
|
||||
tiles = {"naturalbiomes_bushland_wildrose_sapling.png"},
|
||||
inventory_image = "naturalbiomes_bushland_wildrose_sapling.png",
|
||||
wield_image = "naturalbiomes_bushland_wildrose_sapling.png",
|
||||
paramtype = "light",
|
||||
sunlight_propagates = true,
|
||||
walkable = false,
|
||||
on_timer = grow_new_wildrose_bush,
|
||||
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,
|
||||
"naturalbiomes:bushland_wildrosebush_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("naturalbiomes:wildrose", {
|
||||
description = S("Wildrose"),
|
||||
drawtype = "torchlike",
|
||||
tiles = {"naturalbiomes_bushland_wildrose.png"},
|
||||
inventory_image = "naturalbiomes_bushland_wildrose.png",
|
||||
wield_image = "naturalbiomes_bushland_wildrose.png",
|
||||
paramtype = "light",
|
||||
sunlight_propagates = true,
|
||||
walkable = false,
|
||||
selection_box = {
|
||||
type = "fixed",
|
||||
fixed = {-0.31, -0.5, -0.31, 0.31, 0.5, 0.31}
|
||||
},
|
||||
groups = {
|
||||
fleshy = 3, dig_immediate = 3, flammable = 2,
|
||||
leafdecay = 1, leafdecay_drop = 1
|
||||
},
|
||||
drop = "naturalbiomes:wildrose",
|
||||
on_use = minetest.item_eat(2),
|
||||
sounds = default.node_sound_leaves_defaults(),
|
||||
after_place_node = function(pos, placer)
|
||||
if placer:is_player() then
|
||||
minetest.set_node(pos, {name = "naturalbiomes:wildrose", param2 = 1})
|
||||
end
|
||||
end
|
||||
})
|
||||
|
||||
-- New hazelnut bush
|
||||
|
||||
local function grow_new_hazelnut_bush(pos)
|
||||
if not default.can_grow(pos) then
|
||||
-- try a bit later again
|
||||
minetest.get_node_timer(pos):start(math.random(240, 600))
|
||||
return
|
||||
end
|
||||
minetest.remove_node(pos)
|
||||
minetest.place_schematic({x = pos.x - 3, y = pos.y - 0, z = pos.z - 3}, modpath.."/schematics/naturalbiomes_bushland_hazelnutbush.mts", "0", nil, false)
|
||||
end
|
||||
|
||||
minetest.register_node("naturalbiomes:bushland_hazelnut_stem", {
|
||||
description = S("Hazelnut Bush Stem"),
|
||||
drawtype = "plantlike",
|
||||
visual_scale = 1.0,
|
||||
tiles = {"naturalbiomes_bushland_hazelnut_stem.png"},
|
||||
inventory_image = "naturalbiomes_bushland_hazelnut_stem.png",
|
||||
wield_image = "naturalbiomes_bushland_hazelnut_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("naturalbiomes:bushland_hazelnut_leaves2", {
|
||||
description = S("Hazelnut Bush Leaves"),
|
||||
drawtype = "allfaces_optional",
|
||||
tiles = {"naturalbiomes_bushland_hazelnut_leaves2.png"},
|
||||
paramtype = "light",
|
||||
waving = 1,
|
||||
groups = {snappy = 3, flammable = 2, leaves = 1, winleafdecay = 3},
|
||||
drop = {
|
||||
max_items = 1,
|
||||
items = {
|
||||
{items = {"naturalbiomes:bushland_hazelnutbush_sapling"}, rarity = 25},
|
||||
{items = {"naturalbiomes:hazelnut"}, rarity = 2},
|
||||
{items = {"naturalbiomes:bushland_hazelnut_leaves2"}}
|
||||
}
|
||||
},
|
||||
sounds = default.node_sound_leaves_defaults(),
|
||||
|
||||
after_place_node = after_place_leaves,
|
||||
})
|
||||
|
||||
minetest.register_node("naturalbiomes:bushland_hazelnut_leaves", {
|
||||
description = S("Hazelnut Bush Leaves"),
|
||||
drawtype = "allfaces_optional",
|
||||
waving = 1,
|
||||
tiles = {"naturalbiomes_bushland_hazelnut_leaves.png"},
|
||||
paramtype = "light",
|
||||
groups = {snappy = 3, flammable = 2, leaves = 1, winleafdecay = 3},
|
||||
drop = {
|
||||
max_items = 1,
|
||||
items = {
|
||||
{items = {"naturalbiomes:bushland_hazelnutbush_sapling"}, rarity = 25},
|
||||
{items = {"naturalbiomes:hazelnut"}, rarity = 2},
|
||||
{items = {"naturalbiomes:bushland_hazelnut_leaves"}}
|
||||
}
|
||||
},
|
||||
sounds = default.node_sound_leaves_defaults(),
|
||||
|
||||
after_place_node = after_place_leaves,
|
||||
})
|
||||
|
||||
minetest.register_node("naturalbiomes:bushland_hazelnutbush_sapling", {
|
||||
description = S("Hazelnut Bush Sapling"),
|
||||
drawtype = "plantlike",
|
||||
tiles = {"naturalbiomes_bushland_hazelnut_sapling.png"},
|
||||
inventory_image = "naturalbiomes_bushland_hazelnut_sapling.png",
|
||||
wield_image = "naturalbiomes_bushland_hazelnut_sapling.png",
|
||||
paramtype = "light",
|
||||
sunlight_propagates = true,
|
||||
walkable = false,
|
||||
on_timer = grow_new_hazelnut_bush,
|
||||
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,
|
||||
"naturalbiomes:bushland_hazelnutbush_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("naturalbiomes:hazelnut", {
|
||||
description = S("Hazelnut"),
|
||||
drawtype = "torchlike",
|
||||
tiles = {"naturalbiomes_bushland_hazelnut.png"},
|
||||
inventory_image = "naturalbiomes_bushland_hazelnut.png",
|
||||
wield_image = "naturalbiomes_bushland_hazelnut.png",
|
||||
paramtype = "light",
|
||||
sunlight_propagates = true,
|
||||
walkable = false,
|
||||
selection_box = {
|
||||
type = "fixed",
|
||||
fixed = {-0.31, -0.5, -0.31, 0.31, 0.5, 0.31}
|
||||
},
|
||||
groups = {
|
||||
fleshy = 3, dig_immediate = 3, flammable = 2,
|
||||
leafdecay = 1, leafdecay_drop = 1
|
||||
},
|
||||
drop = "naturalbiomes:hazelnut",
|
||||
on_use = minetest.item_eat(2),
|
||||
sounds = default.node_sound_leaves_defaults(),
|
||||
after_place_node = function(pos, placer)
|
||||
if placer:is_player() then
|
||||
minetest.set_node(pos, {name = "naturalbiomes:hazelnut", param2 = 1})
|
||||
end
|
||||
end
|
||||
})
|
||||
|
||||
--- dead bush
|
||||
|
||||
minetest.register_node("naturalbiomes:bushland_deadbush_leaves", {
|
||||
description = S("Dead Bush Leaves"),
|
||||
drawtype = "allfaces_optional",
|
||||
tiles = {"naturalbiomes_bushland_deadbush_leaves.png"},
|
||||
paramtype = "light",
|
||||
waving = 1,
|
||||
groups = {snappy = 3, flammable = 2, leaves = 1},
|
||||
drop = {
|
||||
max_items = 1,
|
||||
items = {
|
||||
{items = {"naturalbiomes:bushland_deadbush_leaves"}}
|
||||
}
|
||||
},
|
||||
sounds = default.node_sound_leaves_defaults(),
|
||||
|
||||
after_place_node = after_place_leaves,
|
||||
})
|
||||
|
||||
-- cracked hazelnut
|
||||
minetest.register_craftitem("naturalbiomes:hazelnut_cracked", {
|
||||
description = S("Cracked Hazelnut"),
|
||||
inventory_image = "naturalbiomes_bushland_hazelnut_cracked.png",
|
||||
on_use = minetest.item_eat(5),
|
||||
groups = {food = 1, flammable = 2},
|
||||
})
|
||||
|
||||
xpanes.register_pane("hazelnut_pane", {
|
||||
description = S("Hazelnut Woven Fence"),
|
||||
textures = {"naturalbiomes_bushland_hazelnut_fence.png", "", "naturalbiomes_bushland_hazelnut_fence.png"},
|
||||
inventory_image = "naturalbiomes_bushland_hazelnut_fence.png",
|
||||
wield_image = "naturalbiomes_bushland_hazelnut_fence.png",
|
||||
sounds = default.node_sound_wood_defaults(),
|
||||
groups = {choppy = 2, oddly_breakable_by_hand = 1, flammable = 2},
|
||||
recipe = {
|
||||
{"", "farming:string", ""},
|
||||
{"naturalbiomes:bushland_hazelnut_stem", "naturalbiomes:bushland_hazelnut_stem", "naturalbiomes:bushland_hazelnut_stem"}
|
||||
}
|
||||
})
|
692
mods/naturalbiomes/crafting.lua
Normal file
|
@ -0,0 +1,692 @@
|
|||
local S = minetest.get_translator("naturalbiomes")
|
||||
|
||||
stairs.register_stair_and_slab(
|
||||
"naturalbiomes_adler_reed_bundle",
|
||||
"naturalbiomes:reed_bundle",
|
||||
{snappy = 3, oddly_breakable_by_hand = 0, flammable = 0},
|
||||
{"naturalbiomes_adler_reed_bundle.png"},
|
||||
S("Reed Bundle Stair"),
|
||||
S("Reed Bundle Slab"),
|
||||
default.node_sound_wood_defaults()
|
||||
)
|
||||
|
||||
stairs.register_stair_and_slab(
|
||||
"naturalbiomes_alpine_rock_brick",
|
||||
"naturalbiomes:alpine_brick",
|
||||
{cracky = 1, oddly_breakable_by_hand = 0, flammable = 0},
|
||||
{"naturalbiomes_alpine_rock_brick.png"},
|
||||
S("Alpine Brick Stair"),
|
||||
S("Alpine Brick Slab"),
|
||||
default.node_sound_wood_defaults()
|
||||
)
|
||||
|
||||
|
||||
--[[stairs.register_stair_and_slab( -- bamboo is disabled
|
||||
"naturalbiomes_bambooforest_rock_brick",
|
||||
"naturalbiomes:bamboo_brick",
|
||||
{cracky = 1, oddly_breakable_by_hand = 0, flammable = 0},
|
||||
{"naturalbiomes_bambooforest_rock_brick.png"},
|
||||
S("Bamboo Brick Stair"),
|
||||
S("Bamboo Brick Slab"),
|
||||
default.node_sound_wood_defaults()
|
||||
)]]
|
||||
|
||||
|
||||
--[[stairs.register_stair_and_slab(
|
||||
"naturalbiomes_beach_rock_brick",
|
||||
"naturalbiomes:beach_brick",
|
||||
{cracky = 1, oddly_breakable_by_hand = 0, flammable = 0},
|
||||
{"naturalbiomes_beach_rock_brick.png"},
|
||||
S("Beach Brick Stair"),
|
||||
S("Beach Brick Slab"),
|
||||
default.node_sound_wood_defaults()
|
||||
)]]
|
||||
|
||||
|
||||
stairs.register_stair_and_slab(
|
||||
"naturalbiomes_mediterran_rock_brick",
|
||||
"naturalbiomes:med_brick",
|
||||
{cracky = 1, oddly_breakable_by_hand = 0, flammable = 0},
|
||||
{"naturalbiomes_mediterran_rock_brick.png"},
|
||||
S("Med Brick Stair"),
|
||||
S("Med Brick Slab"),
|
||||
default.node_sound_wood_defaults()
|
||||
)
|
||||
|
||||
|
||||
stairs.register_stair_and_slab(
|
||||
"naturalbiomes_outback_rock_brick",
|
||||
"naturalbiomes:outback_brick",
|
||||
{cracky = 1, oddly_breakable_by_hand = 0, flammable = 0},
|
||||
{"naturalbiomes_outback_rock_brick.png"},
|
||||
S("Outback Brick Stair"),
|
||||
S("Outback Brick Slab"),
|
||||
default.node_sound_wood_defaults()
|
||||
)
|
||||
|
||||
walls.register(":naturalbiomes:alpine_brick_wall", S"Alpine Brick Wall", "naturalbiomes_alpine_rock_brick.png",
|
||||
"naturalbiomes:alpine_brick_wall", default.node_sound_stone_defaults())
|
||||
|
||||
--[[walls.register(":naturalbiomes:bamboo_brick_wall", S"Bambooforest Wall", "naturalbiomes_bambooforest_rock_brick.png",
|
||||
"naturalbiomes:bamboo_brick_wall", default.node_sound_stone_defaults())]]
|
||||
|
||||
walls.register(":naturalbiomes:med_brick_wall", S"Mediterranean Wall", "naturalbiomes_mediterran_rock_brick.png",
|
||||
"naturalbiomes:med_brick_wall", default.node_sound_stone_defaults())
|
||||
|
||||
walls.register(":naturalbiomes:outback_brick_wall", S"Outback Wall", "naturalbiomes_outback_rock_brick.png",
|
||||
"naturalbiomes:outback_brick_wall", default.node_sound_stone_defaults())
|
||||
|
||||
--[[walls.register(":naturalbiomes:beach_brick_wall", S"Palmbeach Wall", "naturalbiomes_beach_rock_brick.png",
|
||||
"naturalbiomes:beach_brick_wall", default.node_sound_stone_defaults())]]
|
||||
|
||||
minetest.register_node("naturalbiomes:reed_bundle", {
|
||||
description = S("Reed Bundle"),
|
||||
tiles = {
|
||||
"naturalbiomes_adler_reed_bundle_top.png",
|
||||
"naturalbiomes_adler_reed_bundle_top.png",
|
||||
"naturalbiomes_adler_reed_bundle.png"
|
||||
},
|
||||
is_ground_content = false,
|
||||
groups = {snappy = 3, flammable = 2},
|
||||
sounds = default.node_sound_leaves_defaults(),
|
||||
})
|
||||
|
||||
minetest.register_node("naturalbiomes:alpine_brick", {
|
||||
description = S("Alpine Brick"),
|
||||
tiles = {"naturalbiomes_alpine_rock_brick.png"},
|
||||
is_ground_content = false,
|
||||
groups = {cracky = 3, stone = 2},
|
||||
sounds = default.node_sound_stone_defaults(),
|
||||
})
|
||||
|
||||
--[[minetest.register_node("naturalbiomes:bamboo_brick", {
|
||||
description = S("Bambooforest Brick"),
|
||||
tiles = {"naturalbiomes_bambooforest_rock_brick.png"},
|
||||
is_ground_content = false,
|
||||
groups = {cracky = 3, stone = 2},
|
||||
sounds = default.node_sound_stone_defaults(),
|
||||
})]]
|
||||
|
||||
--[[minetest.register_node("naturalbiomes:beach_brick", {
|
||||
description = S("Beach Brick"),
|
||||
tiles = {"naturalbiomes_beach_rock_brick.png"},
|
||||
is_ground_content = false,
|
||||
groups = {cracky = 3, stone = 2},
|
||||
sounds = default.node_sound_stone_defaults(),
|
||||
})]]
|
||||
|
||||
minetest.register_node("naturalbiomes:med_brick", {
|
||||
description = S("Meditteranean Brick"),
|
||||
tiles = {"naturalbiomes_mediterran_rock_brick.png"},
|
||||
is_ground_content = false,
|
||||
groups = {cracky = 3, stone = 2},
|
||||
sounds = default.node_sound_stone_defaults(),
|
||||
})
|
||||
|
||||
minetest.register_node("naturalbiomes:outback_brick", {
|
||||
description = S("Outback Brick"),
|
||||
tiles = {"naturalbiomes_outback_rock_brick.png"},
|
||||
is_ground_content = false,
|
||||
groups = {cracky = 3, stone = 2},
|
||||
sounds = default.node_sound_stone_defaults(),
|
||||
})
|
||||
|
||||
minetest.register_craft({
|
||||
output = "naturalbiomes:reed_bundle",
|
||||
type = "shapeless",
|
||||
recipe =
|
||||
{"naturalbiomes:alderswamp_reed", "naturalbiomes:alderswamp_reed"}
|
||||
|
||||
})
|
||||
|
||||
minetest.register_craft({
|
||||
output = "naturalbiomes:reed_bundle",
|
||||
type = "shapeless",
|
||||
recipe =
|
||||
{"naturalbiomes:alderswamp_reed2", "naturalbiomes:alderswamp_reed2"}
|
||||
|
||||
})
|
||||
|
||||
minetest.register_craft({
|
||||
output = "naturalbiomes:reed_bundle",
|
||||
type = "shapeless",
|
||||
recipe =
|
||||
{"naturalbiomes:alderswamp_reed3", "naturalbiomes:alderswamp_reed3"}
|
||||
|
||||
})
|
||||
|
||||
minetest.register_craft({
|
||||
output = "naturalbiomes:alpine_brick",
|
||||
type = "shapeless",
|
||||
recipe =
|
||||
{"naturalbiomes:alpine_rock", "naturalbiomes:alpine_rock"}
|
||||
|
||||
|
||||
})
|
||||
|
||||
--[[minetest.register_craft({
|
||||
output = "naturalbiomes:bamboo_brick",
|
||||
type = "shapeless",
|
||||
recipe =
|
||||
{"naturalbiomes:bambooforest_rock", "naturalbiomes:bambooforest_rock"}
|
||||
|
||||
|
||||
})]]
|
||||
|
||||
--[[minetest.register_craft({
|
||||
output = "naturalbiomes:beach_brick",
|
||||
type = "shapeless",
|
||||
recipe =
|
||||
{"naturalbiomes:palmbeach_rock", "naturalbiomes:palmbeach_rock"}
|
||||
|
||||
|
||||
})]]
|
||||
|
||||
minetest.register_craft({
|
||||
output = "naturalbiomes:med_brick",
|
||||
type = "shapeless",
|
||||
recipe =
|
||||
{"naturalbiomes:mediterran_rock", "naturalbiomes:mediterran_rock"}
|
||||
|
||||
|
||||
})
|
||||
|
||||
minetest.register_craft({
|
||||
output = "naturalbiomes:outback_brick",
|
||||
type = "shapeless",
|
||||
recipe =
|
||||
{"naturalbiomes:outback_rock", "naturalbiomes:outback_rock"}
|
||||
|
||||
|
||||
})
|
||||
|
||||
----
|
||||
|
||||
minetest.register_craft({
|
||||
output = "naturalbiomes:alpine_brick_wall",
|
||||
type = "shapeless",
|
||||
recipe =
|
||||
{"naturalbiomes:alpine_brick"}
|
||||
|
||||
|
||||
})
|
||||
|
||||
--[[minetest.register_craft({
|
||||
output = "naturalbiomes:bamboo_brick_wall",
|
||||
type = "shapeless",
|
||||
recipe =
|
||||
{"naturalbiomes:bamboo_brick"}
|
||||
|
||||
|
||||
})]]
|
||||
|
||||
--[[minetest.register_craft({
|
||||
output = "naturalbiomes:beach_brick",
|
||||
type = "shapeless",
|
||||
recipe =
|
||||
{"naturalbiomes:beach_brick"}
|
||||
|
||||
|
||||
})]]
|
||||
|
||||
minetest.register_craft({
|
||||
output = "naturalbiomes:med_brick_wall",
|
||||
type = "shapeless",
|
||||
recipe =
|
||||
{"naturalbiomes:med_brick"}
|
||||
|
||||
|
||||
})
|
||||
|
||||
minetest.register_craft({
|
||||
output = "naturalbiomes:outback_brick_wall",
|
||||
type = "shapeless",
|
||||
recipe =
|
||||
{"naturalbiomes:outback_brick"}
|
||||
|
||||
|
||||
})
|
||||
|
||||
--- doors
|
||||
|
||||
doors.register_trapdoor("naturalbiomes:acacia_trapdoor", {
|
||||
description = S"Wet Savanna Acacia Trapdoor",
|
||||
inventory_image = "naturalbiomes_acacia_trapdoor.png",
|
||||
wield_image = "naturalbiomes_acacia_trapdoor.png",
|
||||
tile_front = "naturalbiomes_acacia_trapdoor.png",
|
||||
tile_side = "naturalbiomes_acacia_trapdoor_side.png",
|
||||
groups = {choppy = 2, oddly_breakable_by_hand = 2, flammable = 2, door = 1},
|
||||
gain_open = 0.06,
|
||||
gain_close = 0.13,
|
||||
|
||||
})
|
||||
|
||||
minetest.register_craft({
|
||||
output = "naturalbiomes:acacia_trapdoor 2",
|
||||
recipe = {
|
||||
{"naturalbiomes:acacia_wood", "naturalbiomes:acacia_wood", "naturalbiomes:acacia_wood"},
|
||||
{"naturalbiomes:acacia_wood", "naturalbiomes:acacia_trunk", "naturalbiomes:acacia_wood"},
|
||||
}
|
||||
})
|
||||
|
||||
doors.register("naturalbiomes_acacia_door", {
|
||||
tiles = {{ name = "naturalbiomes_acacia_door.png", backface_culling = true }},
|
||||
description = S"Wet Savanna Acacia Door",
|
||||
inventory_image = "naturalbiomes_item_acacia_door.png",
|
||||
groups = {node = 1, choppy = 2, oddly_breakable_by_hand = 2, flammable = 2},
|
||||
gain_open = 0.06,
|
||||
gain_close = 0.13,
|
||||
recipe = {
|
||||
{"naturalbiomes:acacia_wood", "naturalbiomes:acacia_wood"},
|
||||
{"naturalbiomes:acacia_trunk", "naturalbiomes:acacia_trunk"},
|
||||
{"naturalbiomes:acacia_wood", "naturalbiomes:acacia_wood"},
|
||||
}
|
||||
})
|
||||
|
||||
doors.register_trapdoor("naturalbiomes:alder_trapdoor", {
|
||||
description = S"Alder Trapdoor",
|
||||
inventory_image = "naturalbiomes_alder_trapdoor.png",
|
||||
wield_image = "naturalbiomes_alder_trapdoor.png",
|
||||
tile_front = "naturalbiomes_alder_trapdoor.png",
|
||||
tile_side = "naturalbiomes_alder_trapdoor_side.png",
|
||||
groups = {choppy = 2, oddly_breakable_by_hand = 2, flammable = 2, door = 1},
|
||||
gain_open = 0.06,
|
||||
gain_close = 0.13,
|
||||
|
||||
})
|
||||
|
||||
minetest.register_craft({
|
||||
output = "naturalbiomes:alder_trapdoor 2",
|
||||
recipe = {
|
||||
{"naturalbiomes:alder_wood", "naturalbiomes:alder_wood", "naturalbiomes:alder_wood"},
|
||||
{"naturalbiomes:alder_wood", "naturalbiomes:alder_trunk", "naturalbiomes:alder_wood"},
|
||||
}
|
||||
})
|
||||
|
||||
doors.register("naturalbiomes_alder_door", {
|
||||
tiles = {{ name = "naturalbiomes_alder_door.png", backface_culling = true }},
|
||||
description = S"Alder Door",
|
||||
inventory_image = "naturalbiomes_item_alder_door.png",
|
||||
groups = {node = 1, choppy = 2, oddly_breakable_by_hand = 2, flammable = 2},
|
||||
gain_open = 0.06,
|
||||
gain_close = 0.13,
|
||||
recipe = {
|
||||
{"naturalbiomes:alder_wood", "naturalbiomes:alder_wood"},
|
||||
{"naturalbiomes:alder_trunk", "naturalbiomes:alder_trunk"},
|
||||
{"naturalbiomes:alder_wood", "naturalbiomes:alder_wood"},
|
||||
}
|
||||
})
|
||||
|
||||
doors.register_trapdoor("naturalbiomes:alpine_trapdoor", {
|
||||
description = S"Alpine Underground Trapdoor",
|
||||
inventory_image = "naturalbiomes_alpine1_trapdoor.png",
|
||||
wield_image = "naturalbiomes_alpine1_trapdoor.png",
|
||||
tile_front = "naturalbiomes_alpine1_trapdoor.png",
|
||||
tile_side = "naturalbiomes_alpine1_trapdoor_side.png",
|
||||
groups = {choppy = 2, oddly_breakable_by_hand = 2, flammable = 2, door = 1},
|
||||
gain_open = 0.06,
|
||||
gain_close = 0.13,
|
||||
|
||||
})
|
||||
|
||||
minetest.register_craft({
|
||||
output = "naturalbiomes:alpine_trapdoor 2",
|
||||
recipe = {
|
||||
{"naturalbiomes:alppine1_wood", "naturalbiomes:alppine1_wood", "naturalbiomes:alppine1_wood"},
|
||||
{"naturalbiomes:alppine1_wood", "naturalbiomes:alppine1_trunk", "naturalbiomes:alppine1_wood"},
|
||||
}
|
||||
})
|
||||
|
||||
doors.register("naturalbiomes_alpine_door", {
|
||||
tiles = {{ name = "naturalbiomes_alpine1_door.png", backface_culling = true }},
|
||||
description = S"Alpine Underground Door",
|
||||
inventory_image = "naturalbiomes_item_alpine1_door.png",
|
||||
groups = {node = 1, choppy = 2, oddly_breakable_by_hand = 2, flammable = 2},
|
||||
gain_open = 0.06,
|
||||
gain_close = 0.13,
|
||||
recipe = {
|
||||
{"naturalbiomes:alppine1_wood", "naturalbiomes:alppine1_wood"},
|
||||
{"naturalbiomes:alppine1_trunk", "naturalbiomes:alppine1_trunk"},
|
||||
{"naturalbiomes:alppine1_wood", "naturalbiomes:alppine1_wood"},
|
||||
}
|
||||
})
|
||||
|
||||
doors.register_trapdoor("naturalbiomes:alpine2_trapdoor", {
|
||||
description = S"Alpine Trapdoor",
|
||||
inventory_image = "naturalbiomes_alpine2_trapdoor.png",
|
||||
wield_image = "naturalbiomes_alpine2_trapdoor.png",
|
||||
tile_front = "naturalbiomes_alpine2_trapdoor.png",
|
||||
tile_side = "naturalbiomes_alpine2_trapdoor_side.png",
|
||||
groups = {choppy = 2, oddly_breakable_by_hand = 2, flammable = 2, door = 1},
|
||||
gain_open = 0.06,
|
||||
gain_close = 0.13,
|
||||
|
||||
})
|
||||
|
||||
minetest.register_craft({
|
||||
output = "naturalbiomes:alpine2_trapdoor 2",
|
||||
recipe = {
|
||||
{"naturalbiomes:alppine2_wood", "naturalbiomes:alppine2_wood", "naturalbiomes:alppine2_wood"},
|
||||
{"naturalbiomes:alppine2_wood", "naturalbiomes:alppine2_trunk", "naturalbiomes:alppine2_wood"},
|
||||
}
|
||||
})
|
||||
|
||||
doors.register("naturalbiomes_alpine2_door", {
|
||||
tiles = {{ name = "naturalbiomes_alpine2_door.png", backface_culling = true }},
|
||||
description = S"Alpine Door",
|
||||
inventory_image = "naturalbiomes_item_alpine2_door.png",
|
||||
groups = {node = 1, choppy = 2, oddly_breakable_by_hand = 2, flammable = 2},
|
||||
gain_open = 0.06,
|
||||
gain_close = 0.13,
|
||||
recipe = {
|
||||
{"naturalbiomes:alppine2_wood", "naturalbiomes:alppine2_wood"},
|
||||
{"naturalbiomes:alppine2_trunk", "naturalbiomes:alppine2_trunk"},
|
||||
{"naturalbiomes:alppine2_wood", "naturalbiomes:alppine2_wood"},
|
||||
}
|
||||
})
|
||||
|
||||
--[[doors.register_trapdoor("naturalbiomes:bamboo_trapdoor", {
|
||||
description = S"Bamboo Trapdoor",
|
||||
inventory_image = "naturalbiomes_bamboo_trapdoor.png",
|
||||
wield_image = "naturalbiomes_bamboo_trapdoor.png",
|
||||
tile_front = "naturalbiomes_bamboo_trapdoor.png",
|
||||
tile_side = "naturalbiomes_bamboo_trapdoor_side.png",
|
||||
groups = {choppy = 2, oddly_breakable_by_hand = 2, flammable = 2, door = 1},
|
||||
gain_open = 0.06,
|
||||
gain_close = 0.13,
|
||||
|
||||
})]]
|
||||
|
||||
--[[minetest.register_craft({
|
||||
output = "naturalbiomes:bamboo_trapdoor 2",
|
||||
recipe = {
|
||||
{"naturalbiomes:bamboo_wood", "naturalbiomes:bamboo_wood", "naturalbiomes:bamboo_wood"},
|
||||
{"naturalbiomes:bamboo_wood", "naturalbiomes:bamboo_trunk", "naturalbiomes:bamboo_wood"},
|
||||
}
|
||||
})]]
|
||||
|
||||
--[[doors.register("naturalbiomes_bamboo_door", {
|
||||
tiles = {{ name = "naturalbiomes_bamboo_door.png", backface_culling = true }},
|
||||
description = S"Bamboo Door",
|
||||
inventory_image = "naturalbiomes_item_bamboo_door.png",
|
||||
groups = {node = 1, choppy = 2, oddly_breakable_by_hand = 2, flammable = 2},
|
||||
gain_open = 0.06,
|
||||
gain_close = 0.13,
|
||||
recipe = {
|
||||
{"naturalbiomes:bamboo_wood", "naturalbiomes:bamboo_wood"},
|
||||
{"naturalbiomes:bamboo_trunk", "naturalbiomes:bamboo_trunk"},
|
||||
{"naturalbiomes:bamboo_wood", "naturalbiomes:bamboo_wood"},
|
||||
}
|
||||
})]]
|
||||
|
||||
--[[doors.register_trapdoor("naturalbiomes:banana_trapdoor", {
|
||||
description = S"Banana Trapdoor",
|
||||
inventory_image = "naturalbiomes_banana_trapdoor.png",
|
||||
wield_image = "naturalbiomes_banana_trapdoor.png",
|
||||
tile_front = "naturalbiomes_banana_trapdoor.png",
|
||||
tile_side = "naturalbiomes_banana_trapdoor_side.png",
|
||||
groups = {choppy = 2, oddly_breakable_by_hand = 2, flammable = 2, door = 1},
|
||||
gain_open = 0.06,
|
||||
gain_close = 0.13,
|
||||
|
||||
})]]
|
||||
|
||||
--[[minetest.register_craft({
|
||||
output = "naturalbiomes:banana_trapdoor 2",
|
||||
recipe = {
|
||||
{"naturalbiomes:banana_wood", "naturalbiomes:banana_wood", "naturalbiomes:banana_wood"},
|
||||
{"naturalbiomes:banana_wood", "naturalbiomes:banana_trunk", "naturalbiomes:banana_wood"},
|
||||
}
|
||||
})]]
|
||||
|
||||
--[[doors.register("naturalbiomes_banana_door", {
|
||||
tiles = {{ name = "naturalbiomes_banana_door.png", backface_culling = true }},
|
||||
description = S"Banana Door",
|
||||
inventory_image = "naturalbiomes_item_banana_door.png",
|
||||
groups = {node = 1, choppy = 2, oddly_breakable_by_hand = 2, flammable = 2},
|
||||
gain_open = 0.06,
|
||||
gain_close = 0.13,
|
||||
recipe = {
|
||||
{"naturalbiomes:banana_wood", "naturalbiomes:banana_wood"},
|
||||
{"naturalbiomes:banana_trunk", "naturalbiomes:banana_trunk"},
|
||||
{"naturalbiomes:banana_wood", "naturalbiomes:banana_wood"},
|
||||
}
|
||||
})]]
|
||||
|
||||
doors.register_trapdoor("naturalbiomes:birch_trapdoor", {
|
||||
description = S"Birch Trapdoor",
|
||||
inventory_image = "naturalbiomes_birch_trapdoor.png",
|
||||
wield_image = "naturalbiomes_birch_trapdoor.png",
|
||||
tile_front = "naturalbiomes_birch_trapdoor.png",
|
||||
tile_side = "naturalbiomes_birch_trapdoor_side.png",
|
||||
groups = {choppy = 2, oddly_breakable_by_hand = 2, flammable = 2, door = 1},
|
||||
gain_open = 0.06,
|
||||
gain_close = 0.13,
|
||||
|
||||
})
|
||||
|
||||
minetest.register_craft({
|
||||
output = "naturalbiomes:birch_trapdoor 2",
|
||||
recipe = {
|
||||
{"naturalbiomes:heath_birch_wood", "naturalbiomes:heath_birch_wood", "naturalbiomes:heath_birch_wood"},
|
||||
{"naturalbiomes:heath_birch_wood", "naturalbiomes:heath_birch_trunk", "naturalbiomes:heath_birch_wood"},
|
||||
}
|
||||
})
|
||||
|
||||
doors.register("naturalbiomes_birch_door", {
|
||||
tiles = {{ name = "naturalbiomes_birch_door.png", backface_culling = true }},
|
||||
description = S"Birch Door",
|
||||
inventory_image = "naturalbiomes_item_birch_door.png",
|
||||
groups = {node = 1, choppy = 2, oddly_breakable_by_hand = 2, flammable = 2},
|
||||
gain_open = 0.06,
|
||||
gain_close = 0.13,
|
||||
recipe = {
|
||||
{"naturalbiomes:heath_birch_wood", "naturalbiomes:heath_birch_wood"},
|
||||
{"naturalbiomes:heath_birch_trunk", "naturalbiomes:heath_birch_trunk"},
|
||||
{"naturalbiomes:heath_birch_wood", "naturalbiomes:heath_birch_wood"},
|
||||
}
|
||||
})
|
||||
|
||||
--[[doors.register_trapdoor("naturalbiomes:coconut_trapdoor", {
|
||||
description = S"Coconut Trapdoor",
|
||||
inventory_image = "naturalbiomes_cocopalm_trapdoor.png",
|
||||
wield_image = "naturalbiomes_cocopalm_trapdoor.png",
|
||||
tile_front = "naturalbiomes_cocopalm_trapdoor.png",
|
||||
tile_side = "naturalbiomes_cocopalm_trapdoor_side.png",
|
||||
groups = {choppy = 2, oddly_breakable_by_hand = 2, flammable = 2, door = 1},
|
||||
gain_open = 0.06,
|
||||
gain_close = 0.13,
|
||||
|
||||
})]]
|
||||
|
||||
--[[minetest.register_craft({
|
||||
output = "naturalbiomes:coconut_trapdoor 2",
|
||||
recipe = {
|
||||
{"naturalbiomes:palm_wood", "naturalbiomes:palm_wood", "naturalbiomes:palm_wood"},
|
||||
{"naturalbiomes:palm_wood", "naturalbiomes:palm_trunk", "naturalbiomes:palm_wood"},
|
||||
}
|
||||
})]]
|
||||
|
||||
--[[doors.register("naturalbiomes_coconut_door", {
|
||||
tiles = {{ name = "naturalbiomes_cocopalm_door.png", backface_culling = true }},
|
||||
description = S"Coconut Door",
|
||||
inventory_image = "naturalbiomes_item_cocopalm_door.png",
|
||||
groups = {node = 1, choppy = 2, oddly_breakable_by_hand = 2, flammable = 2},
|
||||
gain_open = 0.06,
|
||||
gain_close = 0.13,
|
||||
recipe = {
|
||||
{"naturalbiomes:palm_wood", "naturalbiomes:palm_wood"},
|
||||
{"naturalbiomes:palm_trunk", "naturalbiomes:palm_trunk"},
|
||||
{"naturalbiomes:palm_wood", "naturalbiomes:palm_wood"},
|
||||
}
|
||||
})]]
|
||||
|
||||
doors.register_trapdoor("naturalbiomes:juniper_trapdoor", {
|
||||
description = S"Juniper Trapdoor",
|
||||
inventory_image = "naturalbiomes_juniper_trapdoor.png",
|
||||
wield_image = "naturalbiomes_juniper_trapdoor.png",
|
||||
tile_front = "naturalbiomes_juniper_trapdoor.png",
|
||||
tile_side = "naturalbiomes_juniper_trapdoor_side.png",
|
||||
groups = {choppy = 2, oddly_breakable_by_hand = 2, flammable = 2, door = 1},
|
||||
gain_open = 0.06,
|
||||
gain_close = 0.13,
|
||||
|
||||
})
|
||||
|
||||
minetest.register_craft({
|
||||
output = "naturalbiomes:juniper_trapdoor 2",
|
||||
recipe = {
|
||||
{"naturalbiomes:heath_juniper_wood", "naturalbiomes:heath_juniper_wood", "naturalbiomes:heath_juniper_wood"},
|
||||
{"naturalbiomes:heath_juniper_wood", "naturalbiomes:heath_juniper_trunk", "naturalbiomes:heath_juniper_wood"},
|
||||
}
|
||||
})
|
||||
|
||||
doors.register("naturalbiomes_juniper_door", {
|
||||
tiles = {{ name = "naturalbiomes_juniper_door.png", backface_culling = true }},
|
||||
description = S"Juniper Door",
|
||||
inventory_image = "naturalbiomes_item_juniper_door.png",
|
||||
groups = {node = 1, choppy = 2, oddly_breakable_by_hand = 2, flammable = 2},
|
||||
gain_open = 0.06,
|
||||
gain_close = 0.13,
|
||||
recipe = {
|
||||
{"naturalbiomes:heath_juniper_wood", "naturalbiomes:heath_juniper_wood"},
|
||||
{"naturalbiomes:heath_juniper_trunk", "naturalbiomes:heath_juniper_trunk"},
|
||||
{"naturalbiomes:heath_juniper_wood", "naturalbiomes:heath_juniper_wood"},
|
||||
}
|
||||
})
|
||||
|
||||
doors.register_trapdoor("naturalbiomes:medpine_trapdoor", {
|
||||
description = S"Mediterranean Pine Trapdoor",
|
||||
inventory_image = "naturalbiomes_medpine_trapdoor.png",
|
||||
wield_image = "naturalbiomes_medpine_trapdoor.png",
|
||||
tile_front = "naturalbiomes_medpine_trapdoor.png",
|
||||
tile_side = "naturalbiomes_medpine_trapdoor_side.png",
|
||||
groups = {choppy = 2, oddly_breakable_by_hand = 2, flammable = 2, door = 1},
|
||||
gain_open = 0.06,
|
||||
gain_close = 0.13,
|
||||
|
||||
})
|
||||
|
||||
minetest.register_craft({
|
||||
output = "naturalbiomes:medpine_trapdoor 2",
|
||||
recipe = {
|
||||
{"naturalbiomes:pine_wood", "naturalbiomes:pine_wood", "naturalbiomes:pine_wood"},
|
||||
{"naturalbiomes:pine_wood", "naturalbiomes:pine_trunk", "naturalbiomes:pine_wood"},
|
||||
}
|
||||
})
|
||||
|
||||
doors.register("naturalbiomes_medpine_door", {
|
||||
tiles = {{ name = "naturalbiomes_medpine_door.png", backface_culling = true }},
|
||||
description = S"Mediterranean Pine Door",
|
||||
inventory_image = "naturalbiomes_item_medpine_door.png",
|
||||
groups = {node = 1, choppy = 2, oddly_breakable_by_hand = 2, flammable = 2},
|
||||
gain_open = 0.06,
|
||||
gain_close = 0.13,
|
||||
recipe = {
|
||||
{"naturalbiomes:pine_wood", "naturalbiomes:pine_wood"},
|
||||
{"naturalbiomes:pine_trunk", "naturalbiomes:pine_trunk"},
|
||||
{"naturalbiomes:pine_wood", "naturalbiomes:pine_wood"},
|
||||
}
|
||||
})
|
||||
|
||||
doors.register_trapdoor("naturalbiomes:olive_trapdoor", {
|
||||
description = S"Olive Trapdoor",
|
||||
inventory_image = "naturalbiomes_olive_trapdoor.png",
|
||||
wield_image = "naturalbiomes_olive_trapdoor.png",
|
||||
tile_front = "naturalbiomes_olive_trapdoor.png",
|
||||
tile_side = "naturalbiomes_olive_trapdoor_side.png",
|
||||
groups = {choppy = 2, oddly_breakable_by_hand = 2, flammable = 2, door = 1},
|
||||
gain_open = 0.06,
|
||||
gain_close = 0.13,
|
||||
|
||||
})
|
||||
|
||||
minetest.register_craft({
|
||||
output = "naturalbiomes:olive_trapdoor 2",
|
||||
recipe = {
|
||||
{"naturalbiomes:olive_wood", "naturalbiomes:olive_wood", "naturalbiomes:olive_wood"},
|
||||
{"naturalbiomes:olive_wood", "naturalbiomes:olive_trunk", "naturalbiomes:olive_wood"},
|
||||
}
|
||||
})
|
||||
|
||||
doors.register("naturalbiomes_olive_door", {
|
||||
tiles = {{ name = "naturalbiomes_olive_door.png", backface_culling = true }},
|
||||
description = S"Olive Door",
|
||||
inventory_image = "naturalbiomes_item_olive_door.png",
|
||||
groups = {node = 1, choppy = 2, oddly_breakable_by_hand = 2, flammable = 2},
|
||||
gain_open = 0.06,
|
||||
gain_close = 0.13,
|
||||
recipe = {
|
||||
{"naturalbiomes:olive_wood", "naturalbiomes:olive_wood"},
|
||||
{"naturalbiomes:olive_trunk", "naturalbiomes:olive_trunk"},
|
||||
{"naturalbiomes:olive_wood", "naturalbiomes:olive_wood"},
|
||||
}
|
||||
})
|
||||
|
||||
doors.register_trapdoor("naturalbiomes:eucalyptus_trapdoor", {
|
||||
description = S"Eucalyptus Trapdoor",
|
||||
inventory_image = "naturalbiomes_outback_trapdoor.png",
|
||||
wield_image = "naturalbiomes_outback_trapdoor.png",
|
||||
tile_front = "naturalbiomes_outback_trapdoor.png",
|
||||
tile_side = "naturalbiomes_outback_trapdoor_side.png",
|
||||
groups = {choppy = 2, oddly_breakable_by_hand = 2, flammable = 2, door = 1},
|
||||
gain_open = 0.06,
|
||||
gain_close = 0.13,
|
||||
|
||||
})
|
||||
|
||||
minetest.register_craft({
|
||||
output = "naturalbiomes:eucalyptus_trapdoor 2",
|
||||
recipe = {
|
||||
{"naturalbiomes:outback_wood", "naturalbiomes:outback_wood", "naturalbiomes:outback_wood"},
|
||||
{"naturalbiomes:outback_wood", "naturalbiomes:outback_trunk", "naturalbiomes:outback_wood"},
|
||||
}
|
||||
})
|
||||
|
||||
doors.register("naturalbiomes_eucalyptus_door", {
|
||||
tiles = {{ name = "naturalbiomes_outback_door.png", backface_culling = true }},
|
||||
description = S"Eucalyptus Door",
|
||||
inventory_image = "naturalbiomes_item_outback_door.png",
|
||||
groups = {node = 1, choppy = 2, oddly_breakable_by_hand = 2, flammable = 2},
|
||||
gain_open = 0.06,
|
||||
gain_close = 0.13,
|
||||
recipe = {
|
||||
{"naturalbiomes:outback_wood", "naturalbiomes:outback_wood"},
|
||||
{"naturalbiomes:outback_trunk", "naturalbiomes:outback_trunk"},
|
||||
{"naturalbiomes:outback_wood", "naturalbiomes:outback_wood"},
|
||||
}
|
||||
})
|
||||
|
||||
doors.register_trapdoor("naturalbiomes:willow_trapdoor", {
|
||||
description = S"Willow Trapdoor",
|
||||
inventory_image = "naturalbiomes_willow_trapdoor.png",
|
||||
wield_image = "naturalbiomes_willow_trapdoor.png",
|
||||
tile_front = "naturalbiomes_willow_trapdoor.png",
|
||||
tile_side = "naturalbiomes_willow_trapdoor_side.png",
|
||||
groups = {choppy = 2, oddly_breakable_by_hand = 2, flammable = 2, door = 1},
|
||||
gain_open = 0.06,
|
||||
gain_close = 0.13,
|
||||
|
||||
})
|
||||
|
||||
minetest.register_craft({
|
||||
output = "naturalbiomes:willow_trapdoor 2",
|
||||
recipe = {
|
||||
{"naturalbiomes:heath_willow_wood", "naturalbiomes:heath_willow_wood", "naturalbiomes:heath_willow_wood"},
|
||||
{"naturalbiomes:heath_willow_wood", "naturalbiomes:heath_willow_trunk", "naturalbiomes:heath_willow_wood"},
|
||||
}
|
||||
})
|
||||
|
||||
doors.register("naturalbiomes_willow_door", {
|
||||
tiles = {{ name = "naturalbiomes_willow_door.png", backface_culling = true }},
|
||||
description = S"Willow Door",
|
||||
inventory_image = "naturalbiomes_item_willow_door.png",
|
||||
groups = {node = 1, choppy = 2, oddly_breakable_by_hand = 2, flammable = 2},
|
||||
gain_open = 0.06,
|
||||
gain_close = 0.13,
|
||||
recipe = {
|
||||
{"naturalbiomes:heath_willow_wood", "naturalbiomes:heath_willow_wood"},
|
||||
{"naturalbiomes:heath_willow_trunk", "naturalbiomes:heath_willow_trunk"},
|
||||
{"naturalbiomes:heath_willow_wood", "naturalbiomes:heath_willow_wood"},
|
||||
}
|
||||
})
|
6
mods/naturalbiomes/depends.txt
Normal file
|
@ -0,0 +1,6 @@
|
|||
default
|
||||
stairs
|
||||
doors
|
||||
xpanes
|
||||
hunger_ng?
|
||||
ethereal?
|
1
mods/naturalbiomes/description.txt
Normal file
|
@ -0,0 +1 @@
|
|||
Adds 7 new biomes to your Minetest Game world.
|
127
mods/naturalbiomes/dye.lua
Normal file
|
@ -0,0 +1,127 @@
|
|||
local S = minetest.get_translator("naturalbiomes")
|
||||
|
||||
minetest.register_craft({
|
||||
output = "dye:yellow 2",
|
||||
recipe = {
|
||||
{"naturalbiomes:alderswamp_yellowflower"}
|
||||
},
|
||||
})
|
||||
|
||||
minetest.register_craft({
|
||||
output = "dye:orange 2",
|
||||
recipe = {
|
||||
{"naturalbiomes:alpine_dandelion"}
|
||||
},
|
||||
})
|
||||
|
||||
minetest.register_craft({
|
||||
output = "dye:red 2",
|
||||
recipe = {
|
||||
{"naturalbiomes:cowberry"}
|
||||
},
|
||||
})
|
||||
|
||||
minetest.register_craft({
|
||||
output = "dye:white 2",
|
||||
recipe = {
|
||||
{"naturalbiomes:alpine_edelweiss"}
|
||||
},
|
||||
})
|
||||
|
||||
minetest.register_craft({
|
||||
output = "dye:pink 2",
|
||||
recipe = {
|
||||
{"naturalbiomes:med_flower1"}
|
||||
},
|
||||
})
|
||||
|
||||
minetest.register_craft({
|
||||
output = "dye:violet 2",
|
||||
recipe = {
|
||||
{"naturalbiomes:med_flower3"}
|
||||
},
|
||||
})
|
||||
|
||||
minetest.register_craft({
|
||||
output = "dye:brown 2",
|
||||
recipe = {
|
||||
{"naturalbiomes:med_grass2"}
|
||||
},
|
||||
})
|
||||
|
||||
minetest.register_craft({
|
||||
output = "dye:brown 2",
|
||||
recipe = {
|
||||
{"naturalbiomes:med_grass1"}
|
||||
},
|
||||
})
|
||||
|
||||
minetest.register_craft({
|
||||
output = "dye:orange 2",
|
||||
recipe = {
|
||||
{"naturalbiomes:outback_grass6"}
|
||||
},
|
||||
})
|
||||
|
||||
minetest.register_craft({
|
||||
output = "dye:brown 2",
|
||||
recipe = {
|
||||
{"naturalbiomes:savanna_flowergrass"}
|
||||
},
|
||||
})
|
||||
|
||||
minetest.register_craft({
|
||||
output = "dye:green 2",
|
||||
recipe = {
|
||||
{"naturalbiomes:palmbeach_grass1"}
|
||||
},
|
||||
})
|
||||
|
||||
minetest.register_craft({
|
||||
output = "dye:violet 2",
|
||||
recipe = {
|
||||
{"naturalbiomes:heatherflower"}
|
||||
},
|
||||
})
|
||||
|
||||
minetest.register_craft({
|
||||
output = "dye:magenta 2",
|
||||
recipe = {
|
||||
{"naturalbiomes:heatherflower2"}
|
||||
},
|
||||
})
|
||||
|
||||
minetest.register_craft({
|
||||
output = "dye:violet 2",
|
||||
recipe = {
|
||||
{"naturalbiomes:heatherflower3"}
|
||||
},
|
||||
})
|
||||
|
||||
minetest.register_craft({
|
||||
output = "dye:pink 2",
|
||||
recipe = {
|
||||
{"naturalbiomes:heatherflower4"}
|
||||
},
|
||||
})
|
||||
|
||||
minetest.register_craft({
|
||||
output = "dye:white 2",
|
||||
recipe = {
|
||||
{"naturalbiomes:med_flower2"}
|
||||
},
|
||||
})
|
||||
|
||||
minetest.register_craft({
|
||||
output = "dye:grey 2",
|
||||
recipe = {
|
||||
{"naturalbiomes:outback_grass5"}
|
||||
},
|
||||
})
|
||||
|
||||
minetest.register_craft({
|
||||
output = "dye:dark_green 2",
|
||||
recipe = {
|
||||
{"naturalbiomes:outback_grass2"}
|
||||
},
|
||||
})
|
1189
mods/naturalbiomes/heath.lua
Normal file
42
mods/naturalbiomes/hunger.lua
Normal file
|
@ -0,0 +1,42 @@
|
|||
if minetest.get_modpath("hunger_ng") ~= nil then
|
||||
hunger_ng.add_hunger_data('naturalbiomes:alpine_mushroom', {
|
||||
satiates = 1.0,
|
||||
})
|
||||
|
||||
hunger_ng.add_hunger_data('naturalbiomes:olives', {
|
||||
satiates = 1.0,
|
||||
})
|
||||
|
||||
hunger_ng.add_hunger_data('naturalbiomes:coconut', {
|
||||
satiates = 3.0,
|
||||
})
|
||||
|
||||
hunger_ng.add_hunger_data('naturalbiomes:coconut_slice', {
|
||||
satiates = 1.0,
|
||||
})
|
||||
|
||||
hunger_ng.add_hunger_data('naturalbiomes:banana', {
|
||||
satiates = 1.0,
|
||||
})
|
||||
|
||||
hunger_ng.add_hunger_data('naturalbiomes:banana_bunch', {
|
||||
satiates = 5.0,
|
||||
})
|
||||
|
||||
hunger_ng.add_hunger_data('naturalbiomes:cowberry', {
|
||||
satiates = 1.0,
|
||||
})
|
||||
|
||||
hunger_ng.add_hunger_data('naturalbiomes:blackberry', {
|
||||
satiates = 1.0,
|
||||
})
|
||||
|
||||
hunger_ng.add_hunger_data('naturalbiomes:wildrose', {
|
||||
satiates = 1.0,
|
||||
})
|
||||
|
||||
hunger_ng.add_hunger_data('naturalbiomes:hazelnut_cracked', {
|
||||
satiates = 2.0,
|
||||
})
|
||||
|
||||
end
|
49
mods/naturalbiomes/init.lua
Normal file
|
@ -0,0 +1,49 @@
|
|||
--This creates the naturalbiomes object.
|
||||
naturalbiomes = {}
|
||||
|
||||
--This creates the naturalbiomes.settings object, and fills it with either the menu selected choices as defined in settingtypes.txt, or default values, (In this case, false).
|
||||
naturalbiomes.settings = {
|
||||
clear_biomes = minetest.settings:get_bool("naturalbiomes.clear_biomes") or false,
|
||||
clear_decos = minetest.settings:get_bool("naturalbiomes.clear_decos") or false,
|
||||
clear_ores = minetest.settings:get_bool("naturalbiomes.clear_ores") or false,
|
||||
}
|
||||
|
||||
if naturalbiomes.settings.clear_biomes then
|
||||
minetest.clear_registered_biomes()
|
||||
end
|
||||
if naturalbiomes.settings.clear_decos then
|
||||
minetest.clear_registered_decorations()
|
||||
end
|
||||
if naturalbiomes.settings.clear_ores then
|
||||
minetest.clear_registered_ores()
|
||||
end
|
||||
|
||||
local modname = "naturalbiomes"
|
||||
local modpath = minetest.get_modpath(modname)
|
||||
local mg_name = minetest.get_mapgen_setting("mg_name")
|
||||
|
||||
-- Load support for intllib.
|
||||
local path = minetest.get_modpath(minetest.get_current_modname()) .. "/"
|
||||
|
||||
local S = minetest.get_translator and minetest.get_translator("naturalbiomes") or
|
||||
dofile(path .. "intllib.lua")
|
||||
|
||||
|
||||
-- biomes
|
||||
|
||||
dofile(path .. "wetsavanna.lua") --
|
||||
dofile(path .. "alderswamp.lua") --
|
||||
dofile(path .. "alpine.lua") --
|
||||
--dofile(path .. "bambooforest.lua") -- biome is disabled
|
||||
--dofile(path .. "palmbeach.lua") -- biome is disabled
|
||||
dofile(path .. "outback.lua") --
|
||||
dofile(path .. "mediterranean.lua") --
|
||||
dofile(path .. "crafting.lua") --
|
||||
dofile(path .. "heath.lua") --
|
||||
dofile(path .. "dye.lua") --
|
||||
dofile(path .. "bushland.lua") --
|
||||
dofile(path .. "leafdecay.lua") --
|
||||
dofile(path .. "hunger.lua") --
|
||||
|
||||
|
||||
|
3
mods/naturalbiomes/intllib.lua
Normal file
|
@ -0,0 +1,3 @@
|
|||
-- Support for the old multi-load method
|
||||
dofile(minetest.get_modpath("intllib").."/init.lua")
|
||||
|
114
mods/naturalbiomes/leafdecay.lua
Normal file
|
@ -0,0 +1,114 @@
|
|||
|
||||
default.register_leafdecay({
|
||||
trunks = {"naturalbiomes:alder_trunk"},
|
||||
leaves = {"naturalbiomes:alder_leaves"},
|
||||
radius = 6
|
||||
})
|
||||
|
||||
default.register_leafdecay({
|
||||
trunks = {"naturalbiomes:alppine1_trunk"},
|
||||
leaves = {"naturalbiomes:alppine1_leaves"},
|
||||
radius = 6
|
||||
})
|
||||
|
||||
default.register_leafdecay({
|
||||
trunks = {"naturalbiomes:alppine2_trunk"},
|
||||
leaves = {"naturalbiomes:alppine2_leaves"},
|
||||
radius = 6
|
||||
})
|
||||
|
||||
--[[default.register_leafdecay({ -- bamboo is disabled
|
||||
trunks = {"naturalbiomes:bamboo_trunk"},
|
||||
leaves = {"naturalbiomes:bamboo_leaves"},
|
||||
radius = 4
|
||||
})]]
|
||||
|
||||
--[[default.register_leafdecay({ -- banana is disabled
|
||||
trunks = {"naturalbiomes:banana_trunk"},
|
||||
leaves = {"naturalbiomes:banana_leaves", "naturalbiomes:banana", "naturalbiomes:banana_bunch"},
|
||||
radius = 4
|
||||
})]]
|
||||
|
||||
default.register_leafdecay({
|
||||
trunks = {"naturalbiomes:olive_trunk"},
|
||||
leaves = {"naturalbiomes:olive_leaves", "naturalbiomes:olives"},
|
||||
radius = 6
|
||||
})
|
||||
|
||||
default.register_leafdecay({
|
||||
trunks = {"naturalbiomes:pine_trunk"},
|
||||
leaves = {"naturalbiomes:pine_leaves"},
|
||||
radius = 8
|
||||
})
|
||||
|
||||
default.register_leafdecay({
|
||||
trunks = {"naturalbiomes:med_bush_stem"},
|
||||
leaves = {"naturalbiomes:med_bush_leaves"},
|
||||
radius = 16
|
||||
})
|
||||
|
||||
default.register_leafdecay({
|
||||
trunks = {"naturalbiomes:outback_trunk"},
|
||||
leaves = {"naturalbiomes:outback_leaves"},
|
||||
radius = 6
|
||||
})
|
||||
|
||||
default.register_leafdecay({
|
||||
trunks = {"naturalbiomes:outback_bush_stem"},
|
||||
leaves = {"naturalbiomes:outback_bush_leaves"},
|
||||
radius = 6
|
||||
})
|
||||
|
||||
--[[default.register_leafdecay({
|
||||
trunks = {"naturalbiomes:palm_trunk"},
|
||||
leaves = {"naturalbiomes:palm_leaves", "naturalbiomes:coconut"},
|
||||
radius = 6
|
||||
})]]
|
||||
|
||||
--[[default.register_leafdecay({
|
||||
trunks = {"naturalbiomes:beach_bush_stem"},
|
||||
leaves = {"naturalbiomes:beach_bush_leaves"},
|
||||
radius = 6
|
||||
})]]
|
||||
|
||||
default.register_leafdecay({
|
||||
trunks = {"naturalbiomes:acacia_trunk"},
|
||||
leaves = {"naturalbiomes:acacia_leaves"},
|
||||
radius = 7
|
||||
})
|
||||
|
||||
default.register_leafdecay({
|
||||
trunks = {"naturalbiomes:heath_willow_trunk"},
|
||||
leaves = {"naturalbiomes:heath_willow_leaves2"},
|
||||
radius = 6
|
||||
})
|
||||
|
||||
default.register_leafdecay({
|
||||
trunks = {"naturalbiomes:heath_juniper_trunk"},
|
||||
leaves = {"naturalbiomes:heath_juniper_leaves"},
|
||||
radius = 6
|
||||
})
|
||||
|
||||
default.register_leafdecay({
|
||||
trunks = {"naturalbiomes:heath_birch_trunk"},
|
||||
leaves = {"naturalbiomes:heath_birch_leaves"},
|
||||
radius = 6
|
||||
})
|
||||
|
||||
default.register_leafdecay({
|
||||
trunks = {"naturalbiomes:bushland_hazelnut_stem"},
|
||||
leaves = {"naturalbiomes:bushland_hazelnut_leaves", "naturalbiomes:bushland_hazelnut_leaves2"},
|
||||
radius = 4
|
||||
})
|
||||
|
||||
default.register_leafdecay({
|
||||
trunks = {"naturalbiomes:bushland_wildrose_stem"},
|
||||
leaves = {"naturalbiomes:bushland_wildrose_leaves2", "naturalbiomes:bushland_wildrose_leaves"},
|
||||
radius = 4
|
||||
})
|
||||
|
||||
default.register_leafdecay({
|
||||
trunks = {"naturalbiomes:bushland_blackberry_stem"},
|
||||
leaves = {"naturalbiomes:bushland_blackberry_leaves2", "naturalbiomes:bushland_blackberry_leaves"},
|
||||
radius = 4
|
||||
})
|
280
mods/naturalbiomes/locale/naturalbiomes.de.tr
Normal file
|
@ -0,0 +1,280 @@
|
|||
# textdomain: naturalbiomes
|
||||
|
||||
Alder Swamp dirt with Grass=Erlensumpfschlamm mit Gras
|
||||
Alder Swamp Dirt=Erlensumpfschlamm
|
||||
Alder Trunk=Erlenstamm
|
||||
Alder Wood=Erlenholz
|
||||
Alder Leaves=Erlenblätter
|
||||
Alder Sapling=Erlensetzling
|
||||
Alder Stair=Erlenholztreppe
|
||||
Alder Slab=Erlenholzplatte
|
||||
Alder Trunk Stair=Erlenstamm Treppe
|
||||
Alder Trunk Slab=Erlenstamm Platte
|
||||
Alder Wood Fence Gate=Erlenholz Zauntor
|
||||
Alder Fence=Erlenzaun
|
||||
Alder Fence Rail=Erlenholz Geländer
|
||||
Alderswamp reed=Erlensumpf Schilf
|
||||
Waterlily=Kleine Seerosen
|
||||
Alderswamp flower=Sumpfdotterblume
|
||||
Dirt with Alpine Grass=Dreck mit Alpinem Gras
|
||||
Alpine Rock=Alpiner Stein
|
||||
Silver Fir Trunk=Weißtannenstamm
|
||||
Silver Fir Wood=Weißtannenholz
|
||||
Silver Fir Leaves=Weißtannen Nadeln
|
||||
Silver Fir Sapling=Weißtannensetzling
|
||||
Silver Fir Stair=Weißtannentreppe
|
||||
Silver Fir Slab=Weißtannenplatte
|
||||
Silver Fir Trunk Stair=Weißtannen Stamm Treppe
|
||||
Silver Fir Trunk Slab=Weißtannen Stamm Platte
|
||||
Silver Fir Wood Fence Gate=Weißtannen Holzzauntor
|
||||
Silver Fir Fence=Weißtannenzaun
|
||||
Silver Fir Fence Rail=Weißtannengeländer
|
||||
Jack Pine Trunk=Banks Kiefer Stamm
|
||||
Jack Pine Wood=Banks Kiefer Holz
|
||||
Jack Pine Leaves=Banks Kiefer Nadeln
|
||||
Jack Pine Sapling=Banks Kiefer Setzling
|
||||
Jack Pine Stair=Banks Kiefer Holztreppe
|
||||
Jack Pine Slab=Banks Kiefer Holzplatte
|
||||
Jack Pine Trunk Stair=Banks Kiefer Stamm Treppe
|
||||
Jack Pine Trunk Slab=Banks Kiefer Stamm Platte
|
||||
Jack Pine Wood Fence Gate=Banks Kiefer Holzzauntor
|
||||
Jack Pine Fence=Banks Kiefer Holzzaun
|
||||
Jack Pine Fence Rail=Banks Kiefer Geländer
|
||||
Cowberry Bush Stem=Preiselbeerstamm
|
||||
Cowberry Bush Leaves=Preiselbeerblätter
|
||||
Cowberry Bush Sapling=Preiselbeer Setzling
|
||||
Cowberry=Preiselbeeren
|
||||
Alpine Mushroom=Alpiner Pilz
|
||||
Alpine Grass=Alpines Gras
|
||||
Alpine Dandelion Flower=Alpiner Löwenzahn
|
||||
Edelweiss Flower=Eidelweiss
|
||||
Bamboo Forest Litter=Bumbuswald Boden
|
||||
Bamboo Trunk=Bambusstamm
|
||||
Bamboo Wood=Bambusholz
|
||||
Bamboo Leaves=Bambusblätter
|
||||
Bamboo Sapling=Bambussetzling
|
||||
Bamboo Stair=Bambus Holztreppe
|
||||
Bamboo Slab=Bambus Holzplatte
|
||||
Bamboo Trunk Stair=Bambus Stammtreppe
|
||||
Bamboo Trunk Slab=Bambus Stammplatte
|
||||
Bamboo Wood Fence Gate=Bambus Holzzauntor
|
||||
Bamboo Fence=Bambuszaun
|
||||
Bamboo Fence Rail=Bambusgeländer
|
||||
Small Bamboo Grass=Kleiner Bambus
|
||||
Bamboo Forest Rock=Bambuswald Fels
|
||||
Babmooforest Gorund Grass=Bambuswald Bodenbewuchs
|
||||
Banana Trunk=Bananenstamm
|
||||
Banana Wood=Bananenholz
|
||||
Banana Leaves=Bananenwedel
|
||||
Banana Sapling=Bananensetzling
|
||||
Banana Stair=Bananenholz Treppe
|
||||
Banana Slab=Bananenholz Platte
|
||||
Banana Trunk Stair=Bananenstamm Streppe
|
||||
Banana Trunk Slab=Bananenstamm Platte
|
||||
Banana Wood Fence Gate=Bananen Holzzauntor
|
||||
Banana Fence=Bananenzaun
|
||||
Banana Fence Rail=Bananengeländer
|
||||
Reed Bundle Stair=Schilfbündeltreppe
|
||||
Reed Bundle Slab=Schilfbündelplatte
|
||||
Alpine Brick Stair=Alpine Ziegeltreppe
|
||||
Alpine Brick Slab=Alpine Ziegelplatte
|
||||
Bamboo Brick Stair=Bambuswald Ziegeltreppe
|
||||
Bamboo Brick Slab=Bambuswald Ziegelplatte
|
||||
Beach Brick Stair=Strandziegel Treppe
|
||||
Beach Brick Slab=Strandziegel Platte
|
||||
Med Brick Stair=Mediterrane Ziegeltreppe
|
||||
Med Brick Slab=Mediterrane Ziegelplatte
|
||||
Outback Brick Stair=Outback Ziegeltreppe
|
||||
Outback Brick Slab=Outback Ziegelplatte
|
||||
Alpine Brick Wall=Alpine Ziegelmauer
|
||||
Bambooforest Wall=Bambuswald Ziegelmauer
|
||||
Mediterranean Wall=Mediterrane Ziegelmauer
|
||||
Outback Wall=Outback Ziegelmauer
|
||||
Palmbeach Wall=Strand Ziegelmauer
|
||||
Reed Bundle=Schilfbündel
|
||||
Alpine Brick=Alpine Ziegel
|
||||
Bambooforest Brick=Bambuswald Ziegel
|
||||
Beach Brick=Strandziegel
|
||||
Meditteranean Brick=Mediterrane Ziegel
|
||||
Outback Brick=Outback Ziegel
|
||||
Heath sand with dirt=Heidesand mit Dreck
|
||||
Heath Grass=Heidegras
|
||||
Heather Flower=Heideblume
|
||||
Swamp Grass=Sumpfgras
|
||||
Willow Trunk=Weidenstamm
|
||||
Willow Wood=Weidenholz
|
||||
Willow Leaves=Weidenblätter
|
||||
Willow Sapling=Weidensetzling
|
||||
Willow Stair=Weidenholztreppe
|
||||
Willow Slab=Weidenholzplatte
|
||||
Willow Trunk Stair=Weidenstamm Treppe
|
||||
Willow Trunk Slab=Weidenstamm Platte
|
||||
Willow Wood Fence Gate=Weiden Holzzauntor
|
||||
Willow Fence=Weidenholzzaun
|
||||
Willow Fence Rail=Weidengeländer
|
||||
Juniper Trunk=Wacholder Stamm
|
||||
Juniper Wood=Wacholder Holz
|
||||
Juniper Leaves=Wacholder Nadeln
|
||||
Juniper Sapling=Wacholder Setzling
|
||||
Juniper Stair=Wacholder Treppe
|
||||
Juniper Slab=Wacholder Platte
|
||||
Juniper Trunk Stair=Wacholder Stammtreppe
|
||||
Juniper Trunk Slab=Wacholder Stammplatte
|
||||
Juniper Wood Fence Gate=Wacholder Holzzauntor
|
||||
Juniper Fence=Wacholderzaun
|
||||
Juniper Fence Rail= Wacholder Geländer
|
||||
Birch Trunk=Birkenstamm
|
||||
Birch Wood=Birkenholz
|
||||
Birch Leaves=Birkenblätter
|
||||
Birch Sapling=Birkensetzling
|
||||
Birch Stair=Birkenholz Treppe
|
||||
Birch Slab=Birkenholz Platte
|
||||
Birch Trunk Stair=Birkenstamm Treppe
|
||||
Birch Trunk Slab=Birkenstamm Platte
|
||||
Birch Wood Fence Gate=Birken Zauntor
|
||||
Birch Fence=Birkenzaun
|
||||
Birch Fence Rail=Birkengeländer
|
||||
Heather Flower Node=Heidekrautblock
|
||||
Mediterranean litter with grass=Mediterraner Boden mit Gras
|
||||
Mediterranean Rock=Mediterraner Fels
|
||||
Mediterranean Ruin=Mediterrane Ruine
|
||||
Mediterranean Ruin Column=Mediterrane Säule
|
||||
Olive Trunk=Olivenstamm
|
||||
Olive Wood=Olivenholz
|
||||
Olive Leaves=Olivenblätter
|
||||
Olive Sapling=Olivensetzling
|
||||
Olive Stair=Olivenholz Treppe
|
||||
Olive Slab=Olivenholz Platte
|
||||
Alder Trunk Stair=Olivenstamm Treppe
|
||||
Alder Trunk Slab=Olivenstamm Platte
|
||||
Olive Wood Fence Gate=Oliven Holzzauntor
|
||||
Olive Fence=Olivenzaun
|
||||
Olive Fence Rail=Olivengeländer
|
||||
Mediterranean Pine Trunk=Mediterraner Kiefernstamm
|
||||
Mediterranean Pine Wood=Mediterranes Kiefernholz
|
||||
Mediterranean Pine Leaves=Mediterrane Kiefernnadeln
|
||||
Mediterranean Pine Sapling=Mediterraner Kiefernsetzling
|
||||
Mediterranean Pine Stair=Mediterrane Kiefernholz Treppe
|
||||
Mediterranean Pine Slab=Mediterrane Kiefernholz Platte
|
||||
Mediterranean Pine Trunk Stair=Mediterrane Kiefernstamm Treppe
|
||||
Mediterranean Pine Trunk Slab=Mediterrane Kiefernstamm Platte
|
||||
Mediterranean Pine Wood Fence Gate=Mediterranes Kiefernholztor
|
||||
Mediterranean Pine Fence=Mediterraner Kiefernzaun
|
||||
Mediterranean Pine Fence Rail=Mediterranes Kieferngeländer
|
||||
Cypress Bush Stem=Zypressenstamm
|
||||
Cypress Bush Leaves=Zypressennadeln
|
||||
Cypress Bush Sapling=Zypressensetzling
|
||||
Mediterranean Flower=Mediterrane Blume
|
||||
Lavender=Lavendel
|
||||
Mediterranean Grass=Mediterranes Gras
|
||||
Fresh Olives=Frische Oliven
|
||||
Outback ground with grass=Outback Boden
|
||||
Outback Rock=Outback Fels
|
||||
Outback Ground Sand=Outback Bodensand
|
||||
Outback Eucalyptus Trunk=Eukalyptus Stamm
|
||||
Outback Eucalyptus Wood=Eukalyptus Holz
|
||||
Outback Eucalyptus Leaves=Eukalyptus Blätter
|
||||
Outback Eucalyptus Sapling=Eukalyptus Setzling
|
||||
Outback Eucalyptus Stair=Eukalyptus Holztreppe
|
||||
Outback Eucalyptus Slab=Eukalyptus Holzplatte
|
||||
Outback Eucalyptus Trunk Stair=Eukalyptus Stammtreppe
|
||||
Outback Eucalyptus Trunk Slab=Eukalyptus Stammplatte
|
||||
Outback Eucalyptus Wood Fence Gate=Eukalyptus Holzzauntor
|
||||
Outback Eucalyptus Fence=Eukalyptus Zaun
|
||||
Outback Eucalyptus Fence Rail=Eukalyptus Geländer
|
||||
Outback Bush Stem=Outback Buschstamm
|
||||
Outback Bush Leaves=Outback Buschblätter
|
||||
Outback Bush Sapling=Outback Buschsetzling
|
||||
Outback Grass=Outback Gras
|
||||
Outback Rock Formation=Outback Fels
|
||||
Beach Sand=Strandsand
|
||||
Beach Rock=Strandfels
|
||||
Coconut Palm Trunk=Kokospalmen Stamm
|
||||
Coconut Palm Wood=Kokospalmen Holz
|
||||
Coconut Palm Leaves=Kokospalmen Wedel
|
||||
Coconut Palm Sapling=Kokospalmen Setzling
|
||||
Coconut Palm Stair=Kokospalmen Holztreppe
|
||||
Coconut Palm Slab=Kokospalmen Holzplatte
|
||||
Coconut Palm Trunk Stair=Kokospalmen Stammtreppe
|
||||
Coconut Palm Trunk Slab=Kokospalmen Stammplatte
|
||||
Coconut Palm Wood Fence Gate=Kokospalmen Holzzauntor
|
||||
Coconut Palm Fence=Kokospalmenzaun
|
||||
Coconut Palm Fence Rail=Kokospalmengeländer
|
||||
Beach Bush Stem=Strandbuschstamm
|
||||
Beach Bush Leaves=Strandbuschblätter
|
||||
Beach Bush Sapling=Strandbuschsetzling
|
||||
Palmbeach Grass=Strandgras
|
||||
Banana Bunch=Bananenstaude
|
||||
Banana=Banane
|
||||
Coconut Slice=Kokosnusstück
|
||||
Coconut=Kokosnuss
|
||||
Wet Savanna dirt with Grass=Feuchtsavannenboden mit Gras
|
||||
Acacia Trunk=Akazienstamm
|
||||
Acacia Wood=Akazienholz
|
||||
Acacia Leaves=Akazienblätter
|
||||
Acacia Sapling=Akaziensetzling
|
||||
Acacia Stair=Akazien Holztreppe
|
||||
Acacia Slab=Akazien Holzplatte
|
||||
Acacia Trunk Stair=Akazien Stammtreppe
|
||||
Acacia Trunk Slab=Akazien Stammplatte
|
||||
Acacia Wood Fence Gate=Akazien Holzzauntor
|
||||
Acacia Fence=Akazienzaun
|
||||
Acacia Fence Rail=Akaziengeländer
|
||||
Savanna Grass=Savannengras
|
||||
Savanna Flowergrass=Savannen Blumengras
|
||||
Bushland Litter=Buschland Boden
|
||||
Bushland Grass=Buschland Gras
|
||||
Blackberry Bush Stem=Brombeerbusch Stamm
|
||||
Blackberry Bush Leaves=Brombeerblätter
|
||||
Blackberry Bush Sapling=Brombeerbusch Setzling
|
||||
Blackberry=Brombeere
|
||||
Wildrose Bush Stem=Wildrosenbusch Stamm
|
||||
Wildrose Bush Leaves=Wildrosenbusch Blätter
|
||||
Wildrose Bush Sapling=Wildrosenbusch Setzling
|
||||
Wildrose=Hagebutte
|
||||
Hazelnut Bush Stem=Haselnussbusch Stamm
|
||||
Hazelnut Bush Leaves=Haselnussbusch Blätter
|
||||
Hazelnut Bush Sapling=Haselnussbusch Setzling
|
||||
Hazelnut=Haselnuss
|
||||
Dead Bush Leaves=Verwelkte Buschblätter
|
||||
Cracked Hazelnut=Geknackte Haselnuss
|
||||
Hazelnut Woven Fence=Haselnuss Flechtzaun
|
||||
Wet Savanna Acacia Trapdoor=Akazien Falltür
|
||||
Wet Savanna Acacia Door=Akazientür
|
||||
Alder Trapdoor=Erlen Falltür
|
||||
Alder Door=Erlentür
|
||||
Alpine Underground Door=Alpine Untergrundtür
|
||||
Alpine Underground Trapdoor=Alpine Untergrundfalltür
|
||||
Alpine Trapdoor=Alm Falltür
|
||||
Alpine Door=Almtür
|
||||
Bamboo Trapdoor=Bambus Falltür
|
||||
Bamboo Door=Bambustür
|
||||
Banana Door=Bananentür
|
||||
Banana Trapdoor=Bananen Falltür
|
||||
Birch Trapdoor=Birken Falltür
|
||||
Birch Door=Birkentür
|
||||
Coconut Trapdoor=Kokospalmen Falltür
|
||||
Coconut Door=Kokospalmentür
|
||||
Juniper Trapdoor=Wacholder Falltür
|
||||
Juniper Door=Wacholder Tür
|
||||
Mediterranean Pine Trapdoor=Mediterrane Pinien Falltür
|
||||
Mediterranean Pine Door=Mediterrane Pinientür
|
||||
Olive Trapdoor=Oliven Falltür
|
||||
Olive Door=Oliventür
|
||||
Eucalyptus Trapdoor=Eukalyptus Falltür
|
||||
Eucalyptus Door=Eukalyptus Tür
|
||||
Willow Trapdoor=Weiden Falltür
|
||||
Willow Door=Weidentür
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
820
mods/naturalbiomes/mediterranean.lua
Normal file
|
@ -0,0 +1,820 @@
|
|||
local S = minetest.get_translator("naturalbiomes")
|
||||
|
||||
local modname = "naturalbiomes"
|
||||
local modpath = minetest.get_modpath(modname)
|
||||
local mg_name = minetest.get_mapgen_setting("mg_name")
|
||||
|
||||
minetest.register_node("naturalbiomes:mediterran_litter", {
|
||||
description = S("Mediterranean litter with grass"),
|
||||
tiles = {"naturalbiomes_mediterran_litter.png", "default_dirt.png",
|
||||
{name = "default_dirt.png^naturalbiomes_mediterran_litte_side.png",
|
||||
tileable_vertical = false}},
|
||||
groups = {crumbly = 3, soil = 1, spreading_dirt_type = 1},
|
||||
drop = "default:dirt",
|
||||
sounds = default.node_sound_dirt_defaults({
|
||||
footstep = {name = "default_grass_footstep", gain = 0.25},
|
||||
}),
|
||||
})
|
||||
|
||||
minetest.register_node("naturalbiomes:mediterran_rock", {
|
||||
description = S("Mediterranean Rock"),
|
||||
tiles = {"naturalbiomes_mediterran_rock.png"},
|
||||
groups = {cracky = 3, stone = 1},
|
||||
legacy_mineral = true,
|
||||
sounds = default.node_sound_stone_defaults(),
|
||||
})
|
||||
|
||||
minetest.register_node("naturalbiomes:mediterran_ruin", {
|
||||
description = S("Mediterranean Ruin"),
|
||||
tiles = {"naturalbiomes_mediterran_ruins.png"},
|
||||
groups = {cracky = 3, stone = 1},
|
||||
legacy_mineral = true,
|
||||
sounds = default.node_sound_stone_defaults(),
|
||||
})
|
||||
|
||||
minetest.register_node("naturalbiomes:mediterran_ruin2", {
|
||||
description = S("Mediterranean Ruin Column"),
|
||||
tiles = {"naturalbiomes_mediterran_ruins2.png"},
|
||||
groups = {cracky = 3, stone = 1},
|
||||
legacy_mineral = true,
|
||||
sounds = default.node_sound_stone_defaults(),
|
||||
})
|
||||
|
||||
minetest.register_biome({
|
||||
name = "naturalbiomes:mediterranean",
|
||||
node_top = "naturalbiomes:mediterran_litter",
|
||||
depth_top = 1,
|
||||
node_filler = "naturalbiomes:mediterran_rock",
|
||||
depth_filler = 50,
|
||||
node_riverbed = "default:gravel",
|
||||
depth_riverbed = 2,
|
||||
node_dungeon = "default:sandstone",
|
||||
node_dungeon_alt = "default:desert_stonebrick",
|
||||
node_dungeon_stair = "stairs:stair_desert_stone",
|
||||
y_max = 100,
|
||||
y_min = 5,
|
||||
heat_point = 58,
|
||||
humidity_point = 30,
|
||||
})
|
||||
|
||||
-- Tree generation
|
||||
--
|
||||
|
||||
-- New olive tree
|
||||
|
||||
local function grow_new_olive_tree(pos)
|
||||
if not default.can_grow(pos) then
|
||||
-- try a bit later again
|
||||
minetest.get_node_timer(pos):start(math.random(240, 600))
|
||||
return
|
||||
end
|
||||
minetest.remove_node(pos)
|
||||
minetest.place_schematic({x = pos.x - 5, y = pos.y - 0, z = pos.z - 5}, modpath.."/schematics/naturalbiomes_olive_tree2_0_90.mts", "0", nil, false)
|
||||
end
|
||||
|
||||
-- olive trunk
|
||||
minetest.register_node("naturalbiomes:olive_trunk", {
|
||||
description = S("Olive Trunk"),
|
||||
tiles = {
|
||||
"naturalbiomes_mediterran_olive_trunk_top.png",
|
||||
"naturalbiomes_mediterran_olive_trunk_top.png",
|
||||
"naturalbiomes_mediterran_olive_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,
|
||||
})
|
||||
|
||||
-- olive wood
|
||||
minetest.register_node("naturalbiomes:olive_wood", {
|
||||
description = S("Olive Wood"),
|
||||
tiles = {"naturalbiomes_mediterran_olive_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 = "naturalbiomes:olive_wood 4",
|
||||
recipe = {{"naturalbiomes:olive_trunk"}}
|
||||
})
|
||||
|
||||
minetest.register_node("naturalbiomes:olive_leaves", {
|
||||
description = S("Olive Leaves"),
|
||||
drawtype = "allfaces_optional",
|
||||
waving = 1,
|
||||
tiles = {"naturalbiomes_mediterran_olive_leaves.png"},
|
||||
special_tiles = {"naturalbiomes_mediterran_olive_leaves.png"},
|
||||
paramtype = "light",
|
||||
is_ground_content = false,
|
||||
groups = {snappy = 3, leafdecay = 3, flammable = 2, leaves = 1, winleafdecay = 3},
|
||||
drop = {
|
||||
max_items = 1,
|
||||
items = {
|
||||
{
|
||||
-- player will get sapling with 1/50 chance
|
||||
items = {'naturalbiomes:olive_sapling'},
|
||||
rarity = 50,
|
||||
},
|
||||
{
|
||||
-- player will get leaves only if he get no saplings,
|
||||
-- this is because max_items is 1
|
||||
items = {'naturalbiomes:olive_leaves'},
|
||||
}
|
||||
}
|
||||
},
|
||||
sounds = default.node_sound_leaves_defaults(),
|
||||
|
||||
after_place_node = default.after_place_leaves,
|
||||
})
|
||||
|
||||
minetest.register_node("naturalbiomes:olive_sapling", {
|
||||
description = S("Olive Sapling"),
|
||||
drawtype = "plantlike",
|
||||
tiles = {"naturalbiomes_mediterran_olive_sapling.png"},
|
||||
inventory_image = "naturalbiomes_mediterran_olive_sapling.png",
|
||||
wield_image = "naturalbiomes_mediterran_olive_sapling.png",
|
||||
paramtype = "light",
|
||||
sunlight_propagates = true,
|
||||
walkable = false,
|
||||
on_timer = grow_new_olive_tree,
|
||||
selection_box = {
|
||||
type = "fixed",
|
||||
fixed = {-4 / 16, -0.5, -4 / 16, 4 / 16, 7 / 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,
|
||||
"naturalbiomes:olive_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,
|
||||
})
|
||||
|
||||
|
||||
stairs.register_stair_and_slab(
|
||||
"naturalbiomes_mediterran_olive_wood",
|
||||
"naturalbiomes:olive_wood",
|
||||
{choppy = 2, oddly_breakable_by_hand = 1, flammable = 3},
|
||||
{"naturalbiomes_mediterran_olive_wood.png"},
|
||||
S("Olive Stair"),
|
||||
S("Olive Slab"),
|
||||
default.node_sound_wood_defaults()
|
||||
)
|
||||
|
||||
stairs.register_stair_and_slab(
|
||||
"naturalbiomes_mediterran_olive_trunk",
|
||||
"naturalbiomes:olive_trunk",
|
||||
{choppy = 2, oddly_breakable_by_hand = 1, flammable = 3},
|
||||
{"naturalbiomes_mediterran_olive_trunk_top.png", "naturalbiomes_mediterran_olive_trunk_top.png", "naturalbiomes_mediterran_olive_trunk.png"},
|
||||
S("Alder Trunk Stair"),
|
||||
S("Alder Trunk Slab"),
|
||||
default.node_sound_wood_defaults()
|
||||
)
|
||||
|
||||
doors.register_fencegate(
|
||||
"naturalbiomes:gate_olive_wood",
|
||||
{
|
||||
description = S("Olive Wood Fence Gate"),
|
||||
texture = "naturalbiomes_mediterran_olive_wood.png",
|
||||
material = "naturalbiomes:olive_wood",
|
||||
groups = {choppy = 3, oddly_breakable_by_hand = 2, flammable = 3},
|
||||
sounds = default.node_sound_wood_defaults()
|
||||
}
|
||||
)
|
||||
|
||||
|
||||
default.register_fence(
|
||||
"naturalbiomes:fence_olive_wood",
|
||||
{
|
||||
description = S("Olive Fence"),
|
||||
texture = "naturalbiomes_olive_fence_woode.png",
|
||||
inventory_image = "default_fence_overlay.png^naturalbiomes_mediterran_olive_wood.png^default_fence_overlay.png^[makealpha:255,126,126",
|
||||
wield_image = "default_fence_overlay.png^naturalbiomes_mediterran_olive_wood.png^default_fence_overlay.png^[makealpha:255,126,126",
|
||||
material = "naturalbiomes:olive_wood",
|
||||
groups = {choppy = 2, oddly_breakable_by_hand = 2, flammable = 2},
|
||||
sounds = default.node_sound_wood_defaults()
|
||||
}
|
||||
)
|
||||
|
||||
default.register_fence_rail(
|
||||
"naturalbiomes:fence_rail_olive_wood",
|
||||
{
|
||||
description = S("Olive Fence Rail"),
|
||||
texture = "naturalbiomes_olive_fence_woode.png",
|
||||
inventory_image = "default_fence_rail_overlay.png^naturalbiomes_mediterran_olive_wood.png^" ..
|
||||
"default_fence_rail_overlay.png^[makealpha:255,126,126",
|
||||
wield_image = "default_fence_rail_overlay.png^naturalbiomes_mediterran_olive_wood.png^" ..
|
||||
"default_fence_rail_overlay.png^[makealpha:255,126,126",
|
||||
material = "naturalbiomes:olive_wood",
|
||||
groups = {choppy = 2, oddly_breakable_by_hand = 2, flammable = 2},
|
||||
sounds = default.node_sound_wood_defaults()
|
||||
}
|
||||
)
|
||||
|
||||
minetest.register_decoration({
|
||||
name = "naturalbiomes:olive_tree",
|
||||
deco_type = "schematic",
|
||||
place_on = {"naturalbiomes:mediterran_litter"},
|
||||
place_offset_y = -2,
|
||||
sidelen = 16,
|
||||
fill_ratio = 0.00105,
|
||||
biomes = {"naturalbiomes:mediterranean"},
|
||||
y_max = 31000,
|
||||
y_min = 1,
|
||||
schematic = minetest.get_modpath("naturalbiomes").."/schematics/naturalbiomes_olive_tree2_0_90.mts",
|
||||
flags = "place_center_x, place_center_z",
|
||||
rotation = "random",
|
||||
})
|
||||
|
||||
-- Tree generation
|
||||
--
|
||||
|
||||
-- New pine tree
|
||||
|
||||
local function grow_new_pine_tree(pos)
|
||||
if not default.can_grow(pos) then
|
||||
-- try a bit later again
|
||||
minetest.get_node_timer(pos):start(math.random(240, 600))
|
||||
return
|
||||
end
|
||||
minetest.remove_node(pos)
|
||||
minetest.place_schematic({x = pos.x - 9, y = pos.y - 0, z = pos.z - 8}, modpath.."/schematics/naturalbiomes_med_pinetree_0_90.mts", "0", nil, false)
|
||||
end
|
||||
|
||||
|
||||
-- pine trunk
|
||||
minetest.register_node("naturalbiomes:pine_trunk", {
|
||||
description = S("Mediterranean Pine Trunk"),
|
||||
tiles = {
|
||||
"naturalbiomes_mediterran_pine_trunk_top.png",
|
||||
"naturalbiomes_mediterran_pine_trunk_top.png",
|
||||
"naturalbiomes_mediterran_pine_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,
|
||||
})
|
||||
|
||||
-- pine wood
|
||||
minetest.register_node("naturalbiomes:pine_wood", {
|
||||
description = S("Mediterranean Pine Wood"),
|
||||
tiles = {"naturalbiomes_mediterran_pine_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 = "naturalbiomes:pine_wood 4",
|
||||
recipe = {{"naturalbiomes:pine_trunk"}}
|
||||
})
|
||||
|
||||
minetest.register_node("naturalbiomes:pine_leaves", {
|
||||
description = S("Mediterranean Pine Leaves"),
|
||||
drawtype = "allfaces_optional",
|
||||
waving = 1,
|
||||
tiles = {"naturalbiomes_mediterran_pine_leaves.png"},
|
||||
special_tiles = {"naturalbiomes_mediterran_pine_leaves.png"},
|
||||
paramtype = "light",
|
||||
is_ground_content = false,
|
||||
groups = {snappy = 3, leafdecay = 3, flammable = 2, leaves = 1, winleafdecay = 3},
|
||||
drop = {
|
||||
max_items = 1,
|
||||
items = {
|
||||
{
|
||||
-- player will get sapling with 1/50 chance
|
||||
items = {'naturalbiomes:pine_sapling'},
|
||||
rarity = 50,
|
||||
},
|
||||
{
|
||||
-- player will get leaves only if he get no saplings,
|
||||
-- this is because max_items is 1
|
||||
items = {'naturalbiomes:pine_leaves'},
|
||||
}
|
||||
}
|
||||
},
|
||||
sounds = default.node_sound_leaves_defaults(),
|
||||
|
||||
after_place_node = default.after_place_leaves,
|
||||
})
|
||||
|
||||
minetest.register_node("naturalbiomes:pine_sapling", {
|
||||
description = S("Mediterranean Pine Sapling"),
|
||||
drawtype = "plantlike",
|
||||
tiles = {"naturalbiomes_mediterran_pine_sapling.png"},
|
||||
inventory_image = "naturalbiomes_mediterran_pine_sapling.png",
|
||||
wield_image = "naturalbiomes_mediterran_pine_sapling.png",
|
||||
paramtype = "light",
|
||||
sunlight_propagates = true,
|
||||
walkable = false,
|
||||
on_timer = grow_new_pine_tree,
|
||||
selection_box = {
|
||||
type = "fixed",
|
||||
fixed = {-4 / 16, -0.5, -4 / 16, 4 / 16, 7 / 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,
|
||||
"naturalbiomes:pine_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,
|
||||
})
|
||||
|
||||
stairs.register_stair_and_slab(
|
||||
"naturalbiomes_mediterran_pine_wood",
|
||||
"naturalbiomes:pine_wood",
|
||||
{choppy = 2, oddly_breakable_by_hand = 1, flammable = 3},
|
||||
{"naturalbiomes_mediterran_pine_wood.png"},
|
||||
S("Mediterranean Pine Stair"),
|
||||
S("Mediterranean Pine Slab"),
|
||||
default.node_sound_wood_defaults()
|
||||
)
|
||||
|
||||
stairs.register_stair_and_slab(
|
||||
"naturalbiomes_mediterran_pine_trunk",
|
||||
"naturalbiomes:pine_trunk",
|
||||
{choppy = 2, oddly_breakable_by_hand = 1, flammable = 3},
|
||||
{"naturalbiomes_mediterran_pine_trunk_top.png", "naturalbiomes_mediterran_pine_trunk_top.png", "naturalbiomes_mediterran_pine_trunk.png"},
|
||||
S("Mediterranean Pine Trunk Stair"),
|
||||
S("Mediterranean Pine Trunk Slab"),
|
||||
default.node_sound_wood_defaults()
|
||||
)
|
||||
|
||||
doors.register_fencegate(
|
||||
"naturalbiomes:gate_pine_wood",
|
||||
{
|
||||
description = S("Mediterranean Pine Wood Fence Gate"),
|
||||
texture = "naturalbiomes_mediterran_pine_wood.png",
|
||||
material = "naturalbiomes:pine_wood",
|
||||
groups = {choppy = 3, oddly_breakable_by_hand = 2, flammable = 3},
|
||||
sounds = default.node_sound_wood_defaults()
|
||||
}
|
||||
)
|
||||
|
||||
|
||||
default.register_fence(
|
||||
"naturalbiomes:fence_pine_wood",
|
||||
{
|
||||
description = S("Mediterranean Pine Fence"),
|
||||
texture = "naturalbiomes_medpine_fence_woode.png",
|
||||
inventory_image = "default_fence_overlay.png^naturalbiomes_mediterran_pine_wood.png^default_fence_overlay.png^[makealpha:255,126,126",
|
||||
wield_image = "default_fence_overlay.png^naturalbiomes_mediterran_pine_wood.png^default_fence_overlay.png^[makealpha:255,126,126",
|
||||
material = "naturalbiomes:pine_wood",
|
||||
groups = {choppy = 2, oddly_breakable_by_hand = 2, flammable = 2},
|
||||
sounds = default.node_sound_wood_defaults()
|
||||
}
|
||||
)
|
||||
|
||||
default.register_fence_rail(
|
||||
"naturalbiomes:fence_rail_pine_wood",
|
||||
{
|
||||
description = S("Mediterranean Pine Fence Rail"),
|
||||
texture = "naturalbiomes_medpine_fence_woode.png",
|
||||
inventory_image = "default_fence_rail_overlay.png^naturalbiomes_mediterran_pine_wood.png^" ..
|
||||
"default_fence_rail_overlay.png^[makealpha:255,126,126",
|
||||
wield_image = "default_fence_rail_overlay.png^naturalbiomes_mediterran_pine_wood.png^" ..
|
||||
"default_fence_rail_overlay.png^[makealpha:255,126,126",
|
||||
material = "naturalbiomes:pine_wood",
|
||||
groups = {choppy = 2, oddly_breakable_by_hand = 2, flammable = 2},
|
||||
sounds = default.node_sound_wood_defaults()
|
||||
}
|
||||
)
|
||||
|
||||
minetest.register_decoration({
|
||||
name = "naturalbiomes:pine_tree",
|
||||
deco_type = "schematic",
|
||||
place_on = {"naturalbiomes:mediterran_litter"},
|
||||
place_offset_y = 0,
|
||||
sidelen = 16,
|
||||
fill_ratio = 0.00115,
|
||||
biomes = {"naturalbiomes:mediterranean"},
|
||||
y_max = 31,
|
||||
y_min = 1,
|
||||
schematic = minetest.get_modpath("naturalbiomes").."/schematics/naturalbiomes_med_pinetree_0_90.mts",
|
||||
flags = "place_center_x, place_center_z",
|
||||
rotation = "random",
|
||||
})
|
||||
|
||||
minetest.register_decoration({
|
||||
name = "naturalbiomes:pine_treesmall",
|
||||
deco_type = "schematic",
|
||||
place_on = {"naturalbiomes:mediterran_litter"},
|
||||
place_offset_y = 0,
|
||||
sidelen = 16,
|
||||
fill_ratio = 0.00105,
|
||||
biomes = {"naturalbiomes:mediterranean"},
|
||||
y_max = 31,
|
||||
y_min = 1,
|
||||
schematic = minetest.get_modpath("naturalbiomes").."/schematics/naturalbiomes_med_pinetree_small_0_90.mts",
|
||||
flags = "place_center_x, place_center_z",
|
||||
rotation = "random",
|
||||
})
|
||||
|
||||
-- Cypress Bush
|
||||
|
||||
-- New cypress tree
|
||||
|
||||
local function grow_new_cypress_tree(pos)
|
||||
if not default.can_grow(pos) then
|
||||
-- try a bit later again
|
||||
minetest.get_node_timer(pos):start(math.random(240, 600))
|
||||
return
|
||||
end
|
||||
minetest.remove_node(pos)
|
||||
minetest.place_schematic({x = pos.x - 2, y = pos.y - 0, z = pos.z - 2}, modpath.."/schematics/naturalbiomes_cypress_0_90.mts", "0", nil, false)
|
||||
end
|
||||
|
||||
|
||||
minetest.register_decoration({
|
||||
name = "naturalbiomes:med_bush",
|
||||
deco_type = "schematic",
|
||||
place_on = {"naturalbiomes:mediterran_litter"},
|
||||
place_offset_y = 1,
|
||||
sidelen = 16,
|
||||
noise_params = {
|
||||
offset = -0.004,
|
||||
scale = 0.02,
|
||||
spread = {x = 100, y = 100, z = 100},
|
||||
seed = 3876,
|
||||
octaves = 3,
|
||||
persist = 0.4,
|
||||
},
|
||||
biomes = {"naturalbiomes:mediterranean"},
|
||||
y_max = 31000,
|
||||
y_min = 3,
|
||||
schematic = minetest.get_modpath("naturalbiomes") .. "/schematics/naturalbiomes_cypress_0_90.mts",
|
||||
flags = "place_center_x, place_center_z",
|
||||
})
|
||||
|
||||
minetest.register_node("naturalbiomes:med_bush_stem", {
|
||||
description = S("Cypress Bush Stem"),
|
||||
drawtype = "plantlike",
|
||||
visual_scale = 1.41,
|
||||
tiles = {"naturalbiomes_mediterran_cypress_stem.png"},
|
||||
inventory_image = "naturalbiomes_mediterran_cypress_stem.png",
|
||||
wield_image = "naturalbiomes_mediterran_cypress_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("naturalbiomes:med_bush_leaves", {
|
||||
description = S("Cypress Bush Leaves"),
|
||||
drawtype = "allfaces_optional",
|
||||
tiles = {"naturalbiomes_mediterran_cypress_leavese.png"},
|
||||
paramtype = "light",
|
||||
groups = {snappy = 3, flammable = 2, leaves = 1, winleafdecay = 3},
|
||||
drop = {
|
||||
max_items = 1,
|
||||
items = {
|
||||
{items = {"naturalbiomes:med_bush_sapling"}, rarity = 25},
|
||||
{items = {"naturalbiomes:med_bush_leaves"}}
|
||||
}
|
||||
},
|
||||
sounds = default.node_sound_leaves_defaults(),
|
||||
|
||||
after_place_node = after_place_leaves,
|
||||
})
|
||||
|
||||
minetest.register_node("naturalbiomes:med_bush_sapling", {
|
||||
description = S("Cypress Bush Sapling"),
|
||||
drawtype = "plantlike",
|
||||
tiles = {"naturalbiomes_mediterran_cypress_stem.png"},
|
||||
inventory_image = "naturalbiomes_mediterran_cypress_stem.png",
|
||||
wield_image = "naturalbiomes_mediterran_cypress_stem.png",
|
||||
paramtype = "light",
|
||||
sunlight_propagates = true,
|
||||
walkable = false,
|
||||
on_timer = grow_new_cypress_tree,
|
||||
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,
|
||||
"naturalbiomes:med_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_decoration({
|
||||
name = "naturalbiomes:med_flower1",
|
||||
deco_type = "simple",
|
||||
place_on = {"naturalbiomes:mediterranean_litter"},
|
||||
sidelen = 16,
|
||||
noise_params = {
|
||||
offset = -0.03,
|
||||
scale = 0.15,
|
||||
spread = {x = 100, y = 100, z = 100},
|
||||
seed = 4602,
|
||||
octaves = 4,
|
||||
persist = 1,
|
||||
},
|
||||
y_max = 30000,
|
||||
y_min = 1,
|
||||
decoration = "naturalbiomes:med_flower1",
|
||||
spawn_by = "naturalbiomes:mediterran_litter"
|
||||
})
|
||||
|
||||
minetest.register_node("naturalbiomes:med_flower1", {
|
||||
description = S"Mediterranean Flower",
|
||||
drawtype = "plantlike",
|
||||
waving = 1,
|
||||
visual_scale = 1.0,
|
||||
tiles = {"naturalbiomes_mediterran_flower1.png"},
|
||||
inventory_image = "naturalbiomes_mediterran_flower1.png",
|
||||
wield_image = "naturalbiomes_mediterran_flower1.png",
|
||||
paramtype = "light",
|
||||
sunlight_propagates = true,
|
||||
walkable = false,
|
||||
buildable_to = true,
|
||||
groups = {snappy = 3, flower = 1, flora = 1, attached_node = 1, flammable = 1, beautiflowers = 1},
|
||||
sounds = default.node_sound_leaves_defaults(),
|
||||
selection_box = {
|
||||
type = "fixed",
|
||||
fixed = {-4 / 16, -0.5, -4 / 16, 4 / 16, 0.0, 4 / 16},
|
||||
},
|
||||
})
|
||||
|
||||
minetest.register_decoration({
|
||||
name = "naturalbiomes:med_flower2",
|
||||
deco_type = "simple",
|
||||
place_on = {"naturalbiomes:mediterran_litter"},
|
||||
sidelen = 16,
|
||||
noise_params = {
|
||||
offset = -0.03,
|
||||
scale = 0.15,
|
||||
spread = {x = 100, y = 100, z = 100},
|
||||
seed = 4602,
|
||||
octaves = 4,
|
||||
persist = 1,
|
||||
},
|
||||
y_max = 30000,
|
||||
y_min = 1,
|
||||
decoration = "naturalbiomes:med_flower2",
|
||||
spawn_by = "naturalbiomes:mediterran_litter"
|
||||
})
|
||||
|
||||
minetest.register_node("naturalbiomes:med_flower2", {
|
||||
description = S"Mediterranean Flower",
|
||||
drawtype = "plantlike",
|
||||
waving = 1,
|
||||
visual_scale = 1.0,
|
||||
tiles = {"naturalbiomes_mediterran_flower2.png"},
|
||||
inventory_image = "naturalbiomes_mediterran_flower2.png",
|
||||
wield_image = "naturalbiomes_mediterran_flower2.png",
|
||||
paramtype = "light",
|
||||
sunlight_propagates = true,
|
||||
walkable = false,
|
||||
buildable_to = true,
|
||||
groups = {snappy = 3, flower = 1, flora = 1, attached_node = 1, flammable = 1, beautiflowers = 1},
|
||||
sounds = default.node_sound_leaves_defaults(),
|
||||
selection_box = {
|
||||
type = "fixed",
|
||||
fixed = {-4 / 16, -0.5, -4 / 16, 4 / 16, 0.0, 4 / 16},
|
||||
},
|
||||
})
|
||||
|
||||
minetest.register_decoration({
|
||||
name = "naturalbiomes:med_flower3",
|
||||
deco_type = "simple",
|
||||
place_on = {"naturalbiomes:mediterran_litter"},
|
||||
sidelen = 16,
|
||||
noise_params = {
|
||||
offset = -0.03,
|
||||
scale = 0.15,
|
||||
spread = {x = 100, y = 100, z = 100},
|
||||
seed = 3602,
|
||||
octaves = 4,
|
||||
persist = 1,
|
||||
},
|
||||
y_max = 30000,
|
||||
y_min = 1,
|
||||
decoration = "naturalbiomes:med_flower3",
|
||||
spawn_by = "naturalbiomes:mediterran_litter"
|
||||
})
|
||||
|
||||
minetest.register_node("naturalbiomes:med_flower3", {
|
||||
description = S"Lavender",
|
||||
drawtype = "plantlike",
|
||||
waving = 1,
|
||||
visual_scale = 1.0,
|
||||
tiles = {"naturalbiomes_mediterran_flower3.png"},
|
||||
inventory_image = "naturalbiomes_mediterran_flower3.png",
|
||||
wield_image = "naturalbiomes_mediterran_flower3.png",
|
||||
paramtype = "light",
|
||||
sunlight_propagates = true,
|
||||
walkable = false,
|
||||
buildable_to = true,
|
||||
groups = {snappy = 3, flower = 1, flora = 1, attached_node = 1, flammable = 1, beautiflowers = 1},
|
||||
sounds = default.node_sound_leaves_defaults(),
|
||||
selection_box = {
|
||||
type = "fixed",
|
||||
fixed = {-4 / 16, -0.5, -4 / 16, 4 / 16, 0.0, 4 / 16},
|
||||
},
|
||||
})
|
||||
|
||||
minetest.register_decoration({
|
||||
name = "naturalbiomes:med_grass1",
|
||||
deco_type = "simple",
|
||||
place_on = {"naturalbiomes:mediterran_litter"},
|
||||
sidelen = 16,
|
||||
fill_ratio = 0.075,
|
||||
y_max = 30000,
|
||||
y_min = 1,
|
||||
decoration = "naturalbiomes:med_grass1",
|
||||
spawn_by = "naturalbiomes:mediterran_litter"
|
||||
})
|
||||
|
||||
minetest.register_node("naturalbiomes:med_grass1", {
|
||||
description = S"Mediterranean Grass",
|
||||
drawtype = "plantlike",
|
||||
waving = 1,
|
||||
visual_scale = 1.0,
|
||||
tiles = {"naturalbiomes_mediterran_grass.png"},
|
||||
inventory_image = "naturalbiomes_mediterran_grass.png",
|
||||
wield_image = "naturalbiomes_mediterran_grass.png",
|
||||
paramtype = "light",
|
||||
sunlight_propagates = true,
|
||||
walkable = false,
|
||||
buildable_to = true,
|
||||
groups = {snappy = 3, flora = 1, attached_node = 1, flammable = 1, beautiflowers = 1},
|
||||
sounds = default.node_sound_leaves_defaults(),
|
||||
selection_box = {
|
||||
type = "fixed",
|
||||
fixed = {-4 / 16, -0.5, -4 / 16, 4 / 16, 0.0, 4 / 16},
|
||||
},
|
||||
})
|
||||
|
||||
minetest.register_decoration({
|
||||
name = "naturalbiomes:med_grass2",
|
||||
deco_type = "simple",
|
||||
place_on = {"naturalbiomes:mediterran_litter"},
|
||||
sidelen = 16,
|
||||
fill_ratio = 0.075,
|
||||
y_max = 30000,
|
||||
y_min = 1,
|
||||
decoration = "naturalbiomes:med_grass2",
|
||||
spawn_by = "naturalbiomes:mediterran_litter"
|
||||
})
|
||||
|
||||
minetest.register_node("naturalbiomes:med_grass2", {
|
||||
description = S"Mediterranean Grass",
|
||||
drawtype = "plantlike",
|
||||
waving = 1,
|
||||
visual_scale = 1.0,
|
||||
tiles = {"naturalbiomes_mediterran_grass2.png"},
|
||||
inventory_image = "naturalbiomes_mediterran_grass2.png",
|
||||
wield_image = "naturalbiomes_mediterran_grass2.png",
|
||||
paramtype = "light",
|
||||
sunlight_propagates = true,
|
||||
walkable = false,
|
||||
buildable_to = true,
|
||||
groups = {snappy = 3, flora = 1, attached_node = 1, flammable = 1, beautiflowers = 1},
|
||||
sounds = default.node_sound_leaves_defaults(),
|
||||
selection_box = {
|
||||
type = "fixed",
|
||||
fixed = {-4 / 16, -0.5, -4 / 16, 4 / 16, 0.0, 4 / 16},
|
||||
},
|
||||
})
|
||||
|
||||
minetest.register_decoration({
|
||||
name = "naturalbiomes:med_ruin1",
|
||||
deco_type = "schematic",
|
||||
place_on = {"naturalbiomes:mediterran_litter"},
|
||||
place_offset_y = 1,
|
||||
sidelen = 16,
|
||||
noise_params = {
|
||||
offset = -0.004,
|
||||
scale = 0.008,
|
||||
spread = {x = 100, y = 100, z = 100},
|
||||
seed = 137,
|
||||
octaves = 1,
|
||||
persist = 0.1,
|
||||
},
|
||||
biomes = {"naturalbiomes:mediterranean"},
|
||||
y_max = 31000,
|
||||
y_min = 1,
|
||||
schematic = minetest.get_modpath("naturalbiomes") .. "/schematics/naturalbiomes_medruin1_0_90.mts",
|
||||
flags = "place_center_x, place_center_z",
|
||||
rotation = "random",
|
||||
})
|
||||
|
||||
minetest.register_decoration({
|
||||
name = "naturalbiomes:med_ruin2",
|
||||
deco_type = "schematic",
|
||||
place_on = {"naturalbiomes:mediterran_litter"},
|
||||
place_offset_y = 1,
|
||||
sidelen = 16,
|
||||
noise_params = {
|
||||
offset = -0.004,
|
||||
scale = 0.008,
|
||||
spread = {x = 100, y = 100, z = 100},
|
||||
seed = 137,
|
||||
octaves = 1,
|
||||
persist = 0.1,
|
||||
},
|
||||
biomes = {"naturalbiomes:mediterranean"},
|
||||
y_max = 31000,
|
||||
y_min = 1,
|
||||
schematic = minetest.get_modpath("naturalbiomes") .. "/schematics/naturalbiomes_medruin2_0_90.mts",
|
||||
flags = "place_center_x, place_center_z",
|
||||
rotation = "random",
|
||||
})
|
||||
|
||||
minetest.register_decoration({
|
||||
name = "naturalbiomes:med_ruin3",
|
||||
deco_type = "schematic",
|
||||
place_on = {"naturalbiomes:mediterran_litter"},
|
||||
place_offset_y = 1,
|
||||
sidelen = 16,
|
||||
noise_params = {
|
||||
offset = -0.004,
|
||||
scale = 0.008,
|
||||
spread = {x = 100, y = 100, z = 100},
|
||||
seed = 137,
|
||||
octaves = 1,
|
||||
persist = 0.1,
|
||||
},
|
||||
biomes = {"naturalbiomes:mediterranean"},
|
||||
y_max = 31000,
|
||||
y_min = 1,
|
||||
schematic = minetest.get_modpath("naturalbiomes") .. "/schematics/naturalbiomes_medruin3_0_90.mts",
|
||||
flags = "place_center_x, place_center_z",
|
||||
rotation = "random",
|
||||
})
|
||||
|
||||
-- Olives
|
||||
minetest.register_node("naturalbiomes:olives", {
|
||||
description = S("Fresh Olives"),
|
||||
drawtype = "plantlike",
|
||||
tiles = {"naturalbiomes__fresholives.png"},
|
||||
inventory_image = "naturalbiomes__fresholives.png",
|
||||
wield_image = "naturalbiomes__fresholives.png",
|
||||
paramtype = "light",
|
||||
sunlight_propagates = true,
|
||||
walkable = false,
|
||||
selection_box = {
|
||||
type = "fixed",
|
||||
fixed = {-0.31, -0.5, -0.31, 0.31, 0.5, 0.31}
|
||||
},
|
||||
groups = {
|
||||
fleshy = 3, dig_immediate = 3, flammable = 2,
|
||||
leafdecay = 1, leafdecay_drop = 1, winleafdecay_drop = 1, winleafdecay = 3
|
||||
},
|
||||
drop = "naturalbiomes:olives",
|
||||
on_use = minetest.item_eat(6),
|
||||
sounds = default.node_sound_leaves_defaults(),
|
||||
after_place_node = function(pos, placer)
|
||||
if placer:is_player() then
|
||||
minetest.set_node(pos, {name = "naturalbiomes:olives", param2 = 1})
|
||||
end
|
||||
end
|
||||
})
|
4
mods/naturalbiomes/mod.conf
Normal file
|
@ -0,0 +1,4 @@
|
|||
name = naturalbiomes
|
||||
description = 7 New Biomes
|
||||
depends = default, stairs, doors, xpanes
|
||||
optional_depends = hunger_ng, ethereal
|
698
mods/naturalbiomes/outback.lua
Normal file
|
@ -0,0 +1,698 @@
|
|||
local S = minetest.get_translator("naturalbiomes")
|
||||
|
||||
local modname = "naturalbiomes"
|
||||
local modpath = minetest.get_modpath(modname)
|
||||
local mg_name = minetest.get_mapgen_setting("mg_name")
|
||||
|
||||
minetest.register_node("naturalbiomes:outback_litter", {
|
||||
description = S("Outback ground with grass"),
|
||||
tiles = {"naturalbiomes_outbacklitter.png", "naturalbiomes_outback_ground.png",
|
||||
{name = "naturalbiomes_outback_ground.png^naturalbiomes_outbacklitter_side.png",
|
||||
tileable_vertical = false}},
|
||||
groups = {crumbly = 3, soil = 1, spreading_dirt_type = 1},
|
||||
drop = "naturalbiomes:outback_ground",
|
||||
sounds = default.node_sound_dirt_defaults({
|
||||
footstep = {name = "default_grass_footstep", gain = 0.25},
|
||||
}),
|
||||
})
|
||||
|
||||
minetest.register_node("naturalbiomes:outback_rock", {
|
||||
description = S("Outback Rock"),
|
||||
tiles = {"naturalbiomes_outback_rock.png"},
|
||||
groups = {cracky = 3, stone = 1},
|
||||
legacy_mineral = true,
|
||||
sounds = default.node_sound_stone_defaults(),
|
||||
})
|
||||
|
||||
minetest.register_node("naturalbiomes:outback_ground", {
|
||||
description = S("Outback Ground Sand"),
|
||||
tiles = {"naturalbiomes_outback_ground.png"},
|
||||
groups = {crumbly = 3, falling_node = 1, sand = 1},
|
||||
sounds = default.node_sound_stone_defaults(),
|
||||
})
|
||||
|
||||
minetest.register_biome({
|
||||
name = "naturalbiomes:outback",
|
||||
node_top = "naturalbiomes:outback_litter",
|
||||
depth_top = 1,
|
||||
node_filler = "naturalbiomes:outback_ground",
|
||||
depth_filler = 50,
|
||||
node_riverbed = "default:clay",
|
||||
depth_riverbed = 2,
|
||||
node_dungeon = "default:sandstone",
|
||||
node_dungeon_alt = "default:desert_stonebrick",
|
||||
node_dungeon_stair = "stairs:stair_desert_stone",
|
||||
y_max = 40,
|
||||
y_min = 3,
|
||||
heat_point = 82,
|
||||
humidity_point = 32,
|
||||
})
|
||||
|
||||
-- Schematics
|
||||
|
||||
minetest.register_decoration({
|
||||
name = "naturalbiomes:outback_tree",
|
||||
deco_type = "schematic",
|
||||
place_on = {"naturalbiomes:outback_litter"},
|
||||
place_offset_y = 0,
|
||||
sidelen = 16,
|
||||
fill_ratio = 0.001,
|
||||
biomes = {"naturalbiomes:outback"},
|
||||
y_max = 31,
|
||||
y_min = 1,
|
||||
schematic = minetest.get_modpath("naturalbiomes").."/schematics/naturalbiomes_outback_tree1_0_90.mts",
|
||||
flags = "place_center_x, place_center_z",
|
||||
rotation = "random",
|
||||
})
|
||||
|
||||
minetest.register_decoration({
|
||||
name = "naturalbiomes:outback_tree2",
|
||||
deco_type = "schematic",
|
||||
place_on = {"naturalbiomes:outback_litter"},
|
||||
place_offset_y = 0,
|
||||
sidelen = 16,
|
||||
fill_ratio = 0.00075,
|
||||
biomes = {"naturalbiomes:outback"},
|
||||
y_max = 31,
|
||||
y_min = 1,
|
||||
schematic = minetest.get_modpath("naturalbiomes").."/schematics/naturalbiomes_outback_tree2_0_90.mts",
|
||||
flags = "place_center_x, place_center_z",
|
||||
rotation = "random",
|
||||
})
|
||||
|
||||
minetest.register_decoration({
|
||||
name = "naturalbiomes:outback_bush",
|
||||
deco_type = "schematic",
|
||||
place_on = {"naturalbiomes:outback_litter"},
|
||||
place_offset_y = 1,
|
||||
sidelen = 16,
|
||||
noise_params = {
|
||||
offset = -0.004,
|
||||
scale = 0.01,
|
||||
spread = {x = 100, y = 100, z = 100},
|
||||
seed = 391,
|
||||
octaves = 3,
|
||||
persist = 0.7,
|
||||
},
|
||||
biomes = {"naturalbiomes:outback"},
|
||||
y_max = 31000,
|
||||
y_min = 3,
|
||||
schematic = minetest.get_modpath("naturalbiomes") .. "/schematics/naturalbiomes_outback_bush_small2_0_270.mts",
|
||||
flags = "place_center_x, place_center_z",
|
||||
})
|
||||
|
||||
minetest.register_decoration({
|
||||
name = "naturalbiomes:outback_rockformation1",
|
||||
deco_type = "schematic",
|
||||
place_on = {"naturalbiomes:outback_litter"},
|
||||
place_offset_y = -1,
|
||||
sidelen = 16,
|
||||
fill_ratio = 0.00005,
|
||||
biomes = {"naturalbiomes:outback"},
|
||||
y_max = 31000,
|
||||
y_min = 1,
|
||||
schematic = minetest.get_modpath("naturalbiomes") .. "/schematics/naturalbiomes_outback_rock1_0_90.mts",
|
||||
flags = "place_center_x, place_center_z",
|
||||
rotation = "random",
|
||||
})
|
||||
|
||||
|
||||
minetest.register_decoration({
|
||||
name = "naturalbiomes:outback_rockformation2",
|
||||
deco_type = "schematic",
|
||||
place_on = {"naturalbiomes:outback_litter"},
|
||||
place_offset_y = -2,
|
||||
sidelen = 16,
|
||||
fill_ratio = 0.00005,
|
||||
biomes = {"naturalbiomes:outback"},
|
||||
y_max = 31000,
|
||||
y_min = 1,
|
||||
schematic = minetest.get_modpath("naturalbiomes") .. "/schematics/naturalbiomes_outback_rock2_0_90.mts",
|
||||
flags = "place_center_x, place_center_z",
|
||||
rotation = "random",
|
||||
})
|
||||
|
||||
|
||||
|
||||
minetest.register_decoration({
|
||||
name = "naturalbiomes:outback_rockformation3",
|
||||
deco_type = "schematic",
|
||||
place_on = {"naturalbiomes:outback_litter"},
|
||||
place_offset_y = -3,
|
||||
sidelen = 16,
|
||||
fill_ratio = 0.00005,
|
||||
biomes = {"naturalbiomes:outback"},
|
||||
y_max = 31000,
|
||||
y_min = 1,
|
||||
schematic = minetest.get_modpath("naturalbiomes") .. "/schematics/naturalbiomes_outback_rock3_0_90.mts",
|
||||
flags = "place_center_x, place_center_z",
|
||||
rotation = "random",
|
||||
})
|
||||
|
||||
minetest.register_decoration({
|
||||
name = "naturalbiomes:outback_bush2",
|
||||
deco_type = "schematic",
|
||||
place_on = {"naturalbiomes:outback_litter"},
|
||||
place_offset_y = 1,
|
||||
sidelen = 16,
|
||||
noise_params = {
|
||||
offset = -0.004,
|
||||
scale = 0.01,
|
||||
spread = {x = 100, y = 100, z = 100},
|
||||
seed = 391,
|
||||
octaves = 3,
|
||||
persist = 0.7,
|
||||
},
|
||||
biomes = {"naturalbiomes:outback"},
|
||||
y_max = 31000,
|
||||
y_min = 3,
|
||||
schematic = minetest.get_modpath("naturalbiomes") .. "/schematics/naturalbiomes_outback_bush2_0_90.mts",
|
||||
flags = "place_center_x, place_center_z",
|
||||
})
|
||||
|
||||
-- Tree generation
|
||||
--
|
||||
|
||||
-- New outback tree
|
||||
|
||||
local function grow_new_outback_tree(pos)
|
||||
if not default.can_grow(pos) then
|
||||
-- try a bit later again
|
||||
minetest.get_node_timer(pos):start(math.random(240, 600))
|
||||
return
|
||||
end
|
||||
minetest.remove_node(pos)
|
||||
minetest.place_schematic({x = pos.x - 4, y = pos.y - 0, z = pos.z - 4}, modpath.."/schematics/naturalbiomes_outback_tree1_0_90.mts", "0", nil, false)
|
||||
end
|
||||
|
||||
-- outback trunk
|
||||
minetest.register_node("naturalbiomes:outback_trunk", {
|
||||
description = S("Outback Eucalyptus Trunk"),
|
||||
tiles = {
|
||||
"naturalbiomes_outbackeukalyptus_trunk_top.png",
|
||||
"naturalbiomes_outbackeukalyptus_trunk_top.png",
|
||||
"naturalbiomes_outbackeucalyptus_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,
|
||||
})
|
||||
|
||||
-- outback wood
|
||||
minetest.register_node("naturalbiomes:outback_wood", {
|
||||
description = S("Outback Eucalyptus Wood"),
|
||||
tiles = {"naturalbiomes_outback_eukalyptus_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 = "naturalbiomes:outback_wood 4",
|
||||
recipe = {{"naturalbiomes:outback_trunk"}}
|
||||
})
|
||||
|
||||
minetest.register_node("naturalbiomes:outback_leaves", {
|
||||
description = S("Outback Eucalyptus Leaves"),
|
||||
drawtype = "allfaces_optional",
|
||||
waving = 1,
|
||||
tiles = {"naturalbiomes_outbackeukalyptus_leaves.png"},
|
||||
special_tiles = {"naturalbiomes_outbackeukalyptus_leaves.png"},
|
||||
paramtype = "light",
|
||||
is_ground_content = false,
|
||||
groups = {snappy = 3, leafdecay = 3, flammable = 2, leaves = 1, winleafdecay = 3},
|
||||
drop = {
|
||||
max_items = 1,
|
||||
items = {
|
||||
{
|
||||
-- player will get sapling with 1/50 chance
|
||||
items = {'naturalbiomes:outback_sapling'},
|
||||
rarity = 50,
|
||||
},
|
||||
{
|
||||
-- player will get leaves only if he get no saplings,
|
||||
-- this is because max_items is 1
|
||||
items = {'naturalbiomes:outback_leaves'},
|
||||
}
|
||||
}
|
||||
},
|
||||
sounds = default.node_sound_leaves_defaults(),
|
||||
|
||||
after_place_node = default.after_place_leaves,
|
||||
})
|
||||
|
||||
minetest.register_node("naturalbiomes:outback_sapling", {
|
||||
description = S("Outback Eucalyptus Sapling"),
|
||||
drawtype = "plantlike",
|
||||
tiles = {"naturalbiomes_outbackeukaplyptus_sapling.png"},
|
||||
inventory_image = "naturalbiomes_outbackeukaplyptus_sapling.png",
|
||||
wield_image = "naturalbiomes_outbackeukaplyptus_sapling.png",
|
||||
paramtype = "light",
|
||||
sunlight_propagates = true,
|
||||
walkable = false,
|
||||
on_timer = grow_new_outback_tree,
|
||||
selection_box = {
|
||||
type = "fixed",
|
||||
fixed = {-4 / 16, -0.5, -4 / 16, 4 / 16, 7 / 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,
|
||||
"naturalbiomes:outback_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,
|
||||
})
|
||||
|
||||
|
||||
stairs.register_stair_and_slab(
|
||||
"naturalbiomes_outback_eukalyptus_wood",
|
||||
"naturalbiomes:outback_wood",
|
||||
{choppy = 2, oddly_breakable_by_hand = 1, flammable = 3},
|
||||
{"naturalbiomes_outback_eukalyptus_wood.png"},
|
||||
S("Outback Eucalyptus Stair"),
|
||||
S("Outback Eucalyptus Slab"),
|
||||
default.node_sound_wood_defaults()
|
||||
)
|
||||
|
||||
stairs.register_stair_and_slab(
|
||||
"naturalbiomes_outbackeucalyptus_trunk",
|
||||
"naturalbiomes:outback_trunk",
|
||||
{choppy = 2, oddly_breakable_by_hand = 1, flammable = 3},
|
||||
{"naturalbiomes_outbackeukalyptus_trunk_top.png", "naturalbiomes_outbackeukalyptus_trunk_top.png", "naturalbiomes_outbackeucalyptus_trunk.png"},
|
||||
S("Outback Eucalyptus Trunk Stair"),
|
||||
S("Outback Eucalyptus Trunk Slab"),
|
||||
default.node_sound_wood_defaults()
|
||||
)
|
||||
|
||||
doors.register_fencegate(
|
||||
"naturalbiomes:gate_outback_wood",
|
||||
{
|
||||
description = S("Outback Eucalyptus Wood Fence Gate"),
|
||||
texture = "naturalbiomes_outback_eukalyptus_wood.png",
|
||||
material = "naturalbiomes:outback_wood",
|
||||
groups = {choppy = 3, oddly_breakable_by_hand = 2, flammable = 3},
|
||||
sounds = default.node_sound_wood_defaults()
|
||||
}
|
||||
)
|
||||
|
||||
|
||||
default.register_fence(
|
||||
"naturalbiomes:fence_outback_wood",
|
||||
{
|
||||
description = S("Outback Eucalyptus Fence"),
|
||||
texture = "naturalbiomes_eukalyptus_fence_wood.png",
|
||||
inventory_image = "default_fence_overlay.png^naturalbiomes_outback_eukalyptus_wood.png^default_fence_overlay.png^[makealpha:255,126,126",
|
||||
wield_image = "default_fence_overlay.png^naturalbiomes_outback_eukalyptus_wood.png^default_fence_overlay.png^[makealpha:255,126,126",
|
||||
material = "naturalbiomes:outback_wood",
|
||||
groups = {choppy = 2, oddly_breakable_by_hand = 2, flammable = 2},
|
||||
sounds = default.node_sound_wood_defaults()
|
||||
}
|
||||
)
|
||||
|
||||
default.register_fence_rail(
|
||||
"naturalbiomes:fence_rail_outback_wood",
|
||||
{
|
||||
description = S("Outback Eucalyptus Fence Rail"),
|
||||
texture = "naturalbiomes_eukalyptus_fence_wood.png",
|
||||
inventory_image = "default_fence_rail_overlay.png^naturalbiomes_outback_eukalyptus_wood.png^" ..
|
||||
"default_fence_rail_overlay.png^[makealpha:255,126,126",
|
||||
wield_image = "default_fence_rail_overlay.png^naturalbiomes_outback_eukalyptus_wood.png^" ..
|
||||
"default_fence_rail_overlay.png^[makealpha:255,126,126",
|
||||
material = "naturalbiomes:outback_wood",
|
||||
groups = {choppy = 2, oddly_breakable_by_hand = 2, flammable = 2},
|
||||
sounds = default.node_sound_wood_defaults()
|
||||
}
|
||||
)
|
||||
|
||||
minetest.register_decoration({
|
||||
name = "naturalbiomes:outback_log",
|
||||
deco_type = "schematic",
|
||||
place_on = {"naturalbiomes:outback_litter"},
|
||||
place_offset_y = 1,
|
||||
sidelen = 16,
|
||||
noise_params = {
|
||||
offset = 0.0002,
|
||||
scale = 0.0005,
|
||||
spread = {x = 550, y = 550, z = 550},
|
||||
seed = 2,
|
||||
octaves = 3,
|
||||
persist = 0.36
|
||||
},
|
||||
biomes = {"naturalbiomes:outback"},
|
||||
y_max = 31000,
|
||||
y_min = 1,
|
||||
schematic = minetest.get_modpath("naturalbiomes") .. "/schematics/naturalbiomes_outback_log_0_90.mts",
|
||||
flags = "place_center_x",
|
||||
rotation = "random",
|
||||
spawn_by = "naturalbiomes:outback_litter",
|
||||
num_spawn_by = 2,
|
||||
})
|
||||
|
||||
-- Outback Bush
|
||||
|
||||
-- New outback bush
|
||||
|
||||
local function grow_new_outback_bush(pos)
|
||||
if not default.can_grow(pos) then
|
||||
-- try a bit later again
|
||||
minetest.get_node_timer(pos):start(math.random(240, 600))
|
||||
return
|
||||
end
|
||||
minetest.remove_node(pos)
|
||||
minetest.place_schematic({x = pos.x - 2, y = pos.y - 0, z = pos.z - 2}, modpath.."/schematics/naturalbiomes_outback_bush_small2_0_270.mts", "0", nil, false)
|
||||
end
|
||||
|
||||
minetest.register_node("naturalbiomes:outback_bush_stem", {
|
||||
description = S("Outback Bush Stem"),
|
||||
drawtype = "plantlike",
|
||||
visual_scale = 1.41,
|
||||
tiles = {"naturalbiomes_outback_bush_stem.png"},
|
||||
inventory_image = "naturalbiomes_outback_bush_stem.png",
|
||||
wield_image = "naturalbiomes_outback_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("naturalbiomes:outback_bush_leaves", {
|
||||
description = S("Outback Bush Leaves"),
|
||||
drawtype = "allfaces_optional",
|
||||
tiles = {"naturalbiomes_outbackbush_leaves.png"},
|
||||
paramtype = "light",
|
||||
groups = {snappy = 3, flammable = 2, leaves = 1, winleafdecay = 3},
|
||||
drop = {
|
||||
max_items = 1,
|
||||
items = {
|
||||
{items = {"naturalbiomes:outback_bush_sapling"}, rarity = 50},
|
||||
{items = {"naturalbiomes:outback_bush_leaves"}}
|
||||
}
|
||||
},
|
||||
sounds = default.node_sound_leaves_defaults(),
|
||||
|
||||
after_place_node = after_place_leaves,
|
||||
})
|
||||
|
||||
minetest.register_node("naturalbiomes:outback_bush_sapling", {
|
||||
description = S("Outback Bush Sapling"),
|
||||
drawtype = "plantlike",
|
||||
tiles = {"naturalbiomes_outback_bush_stem.png"},
|
||||
inventory_image = "naturalbiomes_outback_bush_stem.png",
|
||||
wield_image = "naturalbiomes_outback_bush_stem.png",
|
||||
paramtype = "light",
|
||||
sunlight_propagates = true,
|
||||
walkable = false,
|
||||
on_timer = grow_new_outback_bush,
|
||||
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,
|
||||
"naturalbiomes:outback_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_decoration({
|
||||
name = "naturalbiomes:outback_grass",
|
||||
deco_type = "simple",
|
||||
place_on = {"naturalbiomes:outback_litter"},
|
||||
sidelen = 16,
|
||||
noise_params = {
|
||||
offset = -0.03,
|
||||
scale = 0.15,
|
||||
spread = {x = 100, y = 100, z = 100},
|
||||
seed = 4602,
|
||||
octaves = 4,
|
||||
persist = 1,
|
||||
},
|
||||
y_max = 30000,
|
||||
y_min = 1,
|
||||
decoration = "naturalbiomes:outback_grass",
|
||||
spawn_by = "naturalbiomes:outback_litter"
|
||||
})
|
||||
|
||||
minetest.register_node("naturalbiomes:outback_grass", {
|
||||
description = S"Outback Grass",
|
||||
drawtype = "plantlike",
|
||||
waving = 1,
|
||||
visual_scale = 1.0,
|
||||
tiles = {"naturalbiomes_outbackgrass.png"},
|
||||
inventory_image = "naturalbiomes_outbackgrass.png",
|
||||
wield_image = "naturalbiomes_outbackgrass.png",
|
||||
paramtype = "light",
|
||||
sunlight_propagates = true,
|
||||
walkable = false,
|
||||
buildable_to = true,
|
||||
groups = {snappy = 3, flora = 1, attached_node = 1, flammable = 1, beautiflowers = 1},
|
||||
sounds = default.node_sound_leaves_defaults(),
|
||||
selection_box = {
|
||||
type = "fixed",
|
||||
fixed = {-4 / 16, -0.5, -4 / 16, 4 / 16, 0.0, 4 / 16},
|
||||
},
|
||||
})
|
||||
|
||||
minetest.register_decoration({
|
||||
name = "naturalbiomes:outback_grass2",
|
||||
deco_type = "simple",
|
||||
place_on = {"naturalbiomes:outback_litter"},
|
||||
sidelen = 16,
|
||||
noise_params = {
|
||||
offset = -0.03,
|
||||
scale = 0.1,
|
||||
spread = {x = 500, y = 500, z = 500},
|
||||
seed = 687,
|
||||
octaves = 3,
|
||||
persist = 2,
|
||||
},
|
||||
y_max = 30000,
|
||||
y_min = 1,
|
||||
decoration = "naturalbiomes:outback_grass2",
|
||||
spawn_by = "naturalbiomes:outback_litter"
|
||||
})
|
||||
|
||||
minetest.register_node("naturalbiomes:outback_grass2", {
|
||||
description = S"Outback Grass",
|
||||
drawtype = "plantlike",
|
||||
waving = 1,
|
||||
visual_scale = 1.0,
|
||||
tiles = {"naturalbiomes_outbackgrass2.png"},
|
||||
inventory_image = "naturalbiomes_outbackgrass2.png",
|
||||
wield_image = "naturalbiomes_outbackgrass2.png",
|
||||
paramtype = "light",
|
||||
sunlight_propagates = true,
|
||||
walkable = false,
|
||||
buildable_to = true,
|
||||
groups = {snappy = 3, flora = 1, attached_node = 1, flammable = 1, beautiflowers = 1},
|
||||
sounds = default.node_sound_leaves_defaults(),
|
||||
selection_box = {
|
||||
type = "fixed",
|
||||
fixed = {-4 / 16, -0.5, -4 / 16, 4 / 16, 0.0, 4 / 16},
|
||||
},
|
||||
})
|
||||
|
||||
minetest.register_decoration({
|
||||
name = "naturalbiomes:outback_grass3",
|
||||
deco_type = "simple",
|
||||
place_on = {"naturalbiomes:outback_litter"},
|
||||
sidelen = 16,
|
||||
noise_params = {
|
||||
offset = -0.03,
|
||||
scale = 0.1,
|
||||
spread = {x = 500, y = 500, z = 500},
|
||||
seed = 6072,
|
||||
octaves = 2,
|
||||
persist = 3,
|
||||
},
|
||||
y_max = 30000,
|
||||
y_min = 1,
|
||||
decoration = "naturalbiomes:outback_grass3",
|
||||
spawn_by = "naturalbiomes:outback_litter"
|
||||
})
|
||||
|
||||
minetest.register_node("naturalbiomes:outback_grass3", {
|
||||
description = S"Outback Grass",
|
||||
drawtype = "plantlike",
|
||||
waving = 1,
|
||||
visual_scale = 1.0,
|
||||
tiles = {"naturalbiomes_outbackgrass3.png"},
|
||||
inventory_image = "naturalbiomes_outbackgrass3.png",
|
||||
wield_image = "naturalbiomes_outbackgrass3.png",
|
||||
paramtype = "light",
|
||||
sunlight_propagates = true,
|
||||
walkable = false,
|
||||
buildable_to = true,
|
||||
groups = {snappy = 3, flora = 1, attached_node = 1, flammable = 1, beautiflowers = 1},
|
||||
sounds = default.node_sound_leaves_defaults(),
|
||||
selection_box = {
|
||||
type = "fixed",
|
||||
fixed = {-4 / 16, -0.5, -4 / 16, 4 / 16, 0.0, 4 / 16},
|
||||
},
|
||||
})
|
||||
|
||||
minetest.register_decoration({
|
||||
name = "naturalbiomes:outback_grass4",
|
||||
deco_type = "simple",
|
||||
place_on = {"naturalbiomes:outback_litter"},
|
||||
sidelen = 16,
|
||||
noise_params = {
|
||||
offset = -0.03,
|
||||
scale = 0.15,
|
||||
spread = {x = 500, y = 500, z = 500},
|
||||
seed = 457,
|
||||
octaves = 3,
|
||||
persist = 1,
|
||||
},
|
||||
y_max = 31000,
|
||||
y_min = 1,
|
||||
decoration = "naturalbiomes:outback_grass4",
|
||||
spawn_by = "naturalbiomes:outback_litter"
|
||||
})
|
||||
|
||||
minetest.register_node("naturalbiomes:outback_grass4", {
|
||||
description = S"Outback Grass",
|
||||
drawtype = "plantlike",
|
||||
waving = 1,
|
||||
visual_scale = 1.0,
|
||||
tiles = {"naturalbiomes_outbackgrass4.png"},
|
||||
inventory_image = "naturalbiomes_outbackgrass4.png",
|
||||
wield_image = "naturalbiomes_outbackgrass4.png",
|
||||
paramtype = "light",
|
||||
sunlight_propagates = true,
|
||||
walkable = false,
|
||||
buildable_to = true,
|
||||
groups = {snappy = 3, flora = 1, attached_node = 1, flammable = 1, beautiflowers = 1},
|
||||
sounds = default.node_sound_leaves_defaults(),
|
||||
selection_box = {
|
||||
type = "fixed",
|
||||
fixed = {-4 / 16, -0.5, -4 / 16, 4 / 16, 0.0, 4 / 16},
|
||||
},
|
||||
})
|
||||
|
||||
minetest.register_decoration({
|
||||
name = "naturalbiomes:outback_grass5",
|
||||
deco_type = "simple",
|
||||
place_on = {"naturalbiomes:outback_litter"},
|
||||
sidelen = 16,
|
||||
noise_params = {
|
||||
offset = -0.03,
|
||||
scale = 0.1,
|
||||
spread = {x = 100, y = 100, z = 100},
|
||||
seed = 4602,
|
||||
octaves = 6,
|
||||
persist = 1,
|
||||
},
|
||||
y_max = 31000,
|
||||
y_min = 1,
|
||||
decoration = "naturalbiomes:outback_grass5",
|
||||
spawn_by = "naturalbiomes:outback_litter"
|
||||
})
|
||||
|
||||
minetest.register_node("naturalbiomes:outback_grass5", {
|
||||
description = S"Outback Grass",
|
||||
drawtype = "plantlike",
|
||||
waving = 1,
|
||||
noise_params = {
|
||||
offset = -0.03,
|
||||
scale = 0.15,
|
||||
spread = {x = 500, y = 500, z = 500},
|
||||
seed = 457,
|
||||
octaves = 3,
|
||||
persist = 1,
|
||||
},
|
||||
tiles = {"naturalbiomes_outbackgrass5.png"},
|
||||
inventory_image = "naturalbiomes_outbackgrass5.png",
|
||||
wield_image = "naturalbiomes_outbackgrass5.png",
|
||||
paramtype = "light",
|
||||
sunlight_propagates = true,
|
||||
walkable = false,
|
||||
buildable_to = true,
|
||||
groups = {snappy = 3, flora = 1, attached_node = 1, flammable = 1, beautiflowers = 1},
|
||||
sounds = default.node_sound_leaves_defaults(),
|
||||
selection_box = {
|
||||
type = "fixed",
|
||||
fixed = {-4 / 16, -0.5, -4 / 16, 4 / 16, 0.0, 4 / 16},
|
||||
},
|
||||
})
|
||||
|
||||
minetest.register_decoration({
|
||||
name = "naturalbiomes:outback_grass6",
|
||||
deco_type = "simple",
|
||||
place_on = {"naturalbiomes:outback_litter"},
|
||||
sidelen = 16,
|
||||
noise_params = {
|
||||
offset = -0.03,
|
||||
scale = 0.1,
|
||||
spread = {x = 100, y = 100, z = 100},
|
||||
seed = 3602,
|
||||
octaves = 5,
|
||||
persist = 1,
|
||||
},
|
||||
y_max = 30000,
|
||||
y_min = 1,
|
||||
decoration = "naturalbiomes:outback_grass6",
|
||||
spawn_by = "naturalbiomes:outback_litter"
|
||||
})
|
||||
|
||||
minetest.register_node("naturalbiomes:outback_grass6", {
|
||||
description = S"Outback Grass",
|
||||
drawtype = "plantlike",
|
||||
waving = 1,
|
||||
visual_scale = 1.0,
|
||||
tiles = {"naturalbiomes_outbackgrass6.png"},
|
||||
inventory_image = "naturalbiomes_outbackgrass6.png",
|
||||
wield_image = "naturalbiomes_outbackgrass6.png",
|
||||
paramtype = "light",
|
||||
sunlight_propagates = true,
|
||||
walkable = false,
|
||||
buildable_to = true,
|
||||
groups = {snappy = 3, flora = 1, attached_node = 1, flammable = 1, beautiflowers = 1},
|
||||
sounds = default.node_sound_leaves_defaults(),
|
||||
selection_box = {
|
||||
type = "fixed",
|
||||
fixed = {-4 / 16, -0.5, -4 / 16, 4 / 16, 0.0, 4 / 16},
|
||||
},
|
||||
})
|
||||
|
||||
minetest.register_node("naturalbiomes:outback_rockformation1", {
|
||||
description = S("Outback Rock Formation"),
|
||||
tiles = {"naturalbiomes_beach_rock.png"},
|
||||
groups = {cracky = 3, stone = 1},
|
||||
drop = "naturalbiomes:palmbeach_rock",
|
||||
legacy_mineral = true,
|
||||
sounds = default.node_sound_stone_defaults(),
|
||||
})
|
||||
|
668
mods/naturalbiomes/palmbeach.lua
Normal file
|
@ -0,0 +1,668 @@
|
|||
local S = minetest.get_translator("naturalbiomes")
|
||||
|
||||
local modname = "naturalbiomes"
|
||||
local modpath = minetest.get_modpath(modname)
|
||||
local mg_name = minetest.get_mapgen_setting("mg_name")
|
||||
|
||||
minetest.register_node("naturalbiomes:palmbeach_sand", {
|
||||
description = S("Beach Sand"),
|
||||
tiles = {"naturalbiomes_beach_sand.png"},
|
||||
groups = {crumbly = 3, sand = 1, falling_node = 1},
|
||||
sounds = default.node_sound_dirt_defaults(),
|
||||
})
|
||||
|
||||
minetest.register_biome({
|
||||
name = "naturalbiomes:palmbeach",
|
||||
node_top = "naturalbiomes:palmbeach_sand",
|
||||
depth_top = 3,
|
||||
node_filler = "default:sandstone",
|
||||
depth_filler = 5,
|
||||
node_riverbed = "naturalbiomes:palmbeach_sand",
|
||||
depth_riverbed = 3,
|
||||
node_dungeon = "default:cobble",
|
||||
node_dungeon_alt = "default:sandstonebrick",
|
||||
node_dungeon_stair = "stairs:stair_sandstone",
|
||||
y_max = 5,
|
||||
y_min = -1,
|
||||
heat_point = 86,
|
||||
humidity_point = 78,
|
||||
})
|
||||
|
||||
minetest.register_node("naturalbiomes:palmbeach_rock", {
|
||||
description = S("Beach Rock"),
|
||||
tiles = {"naturalbiomes_beach_rock.png"},
|
||||
groups = {cracky = 3, stone = 1},
|
||||
drop = "naturalbiomes:palmbeach_rock",
|
||||
legacy_mineral = true,
|
||||
sounds = default.node_sound_stone_defaults(),
|
||||
})
|
||||
|
||||
minetest.register_decoration({
|
||||
name = "naturalbiomes:beach_rock",
|
||||
deco_type = "schematic",
|
||||
place_on = {"naturalbiomes:palmbeach_sand"},
|
||||
place_offset_y = -1,
|
||||
sidelen = 16,
|
||||
noise_params = {
|
||||
offset = -0.004,
|
||||
scale = 0.02,
|
||||
spread = {x = 100, y = 100, z = 100},
|
||||
seed = 137,
|
||||
octaves = 3,
|
||||
persist = 0.7,
|
||||
},
|
||||
biomes = {"naturalbiomes:palmbeach"},
|
||||
y_max = 31000,
|
||||
y_min = 1,
|
||||
schematic = minetest.get_modpath("naturalbiomes") .. "/schematics/naturalbiomes_beachrock_large_0_270.mts",
|
||||
flags = "place_center_x, place_center_z",
|
||||
rotation = "random",
|
||||
})
|
||||
|
||||
|
||||
minetest.register_decoration({
|
||||
name = "naturalbiomes:beach_rock2",
|
||||
deco_type = "schematic",
|
||||
place_on = {"naturalbiomes:palmbeach_sand"},
|
||||
place_offset_y = 1,
|
||||
sidelen = 16,
|
||||
noise_params = {
|
||||
offset = -0.004,
|
||||
scale = 0.02,
|
||||
spread = {x = 100, y = 100, z = 100},
|
||||
seed = 137,
|
||||
octaves = 3,
|
||||
persist = 0.7,
|
||||
},
|
||||
biomes = {"naturalbiomes:palmbeach"},
|
||||
y_max = 31000,
|
||||
y_min = 1,
|
||||
schematic = minetest.get_modpath("naturalbiomes") .. "/schematics/naturalbiomes_beachrock_small_0_270.mts",
|
||||
flags = "place_center_x, place_center_z",
|
||||
rotation = "random",
|
||||
})
|
||||
|
||||
|
||||
|
||||
minetest.register_decoration({
|
||||
name = "naturalbiomes:beach_rock3",
|
||||
deco_type = "schematic",
|
||||
place_on = {"naturalbiomes:palmbeach_sand"},
|
||||
place_offset_y = -2,
|
||||
sidelen = 16,
|
||||
noise_params = {
|
||||
offset = -0.004,
|
||||
scale = 0.02,
|
||||
spread = {x = 100, y = 100, z = 100},
|
||||
seed = 137,
|
||||
octaves = 3,
|
||||
persist = 0.7,
|
||||
},
|
||||
biomes = {"naturalbiomes:palmbeach"},
|
||||
y_max = 31000,
|
||||
y_min = 1,
|
||||
schematic = minetest.get_modpath("naturalbiomes") .. "/schematics/naturalbiomes_beachrock_medium2_0_180.mts",
|
||||
flags = "place_center_x, place_center_z",
|
||||
rotation = "random",
|
||||
})
|
||||
|
||||
minetest.register_decoration({
|
||||
name = "naturalbiomes:beach_rock4",
|
||||
deco_type = "schematic",
|
||||
place_on = {"naturalbiomes:palmbeach_sand"},
|
||||
place_offset_y = -2,
|
||||
sidelen = 16,
|
||||
noise_params = {
|
||||
offset = -0.004,
|
||||
scale = 0.02,
|
||||
spread = {x = 100, y = 100, z = 100},
|
||||
seed = 137,
|
||||
octaves = 3,
|
||||
persist = 0.7,
|
||||
},
|
||||
biomes = {"naturalbiomes:palmbeach"},
|
||||
y_max = 31000,
|
||||
y_min = 1,
|
||||
schematic = minetest.get_modpath("naturalbiomes") .. "/schematics/naturalbiomes_beachrock_medium_0_270.mts",
|
||||
flags = "place_center_x, place_center_z",
|
||||
rotation = "random",
|
||||
})
|
||||
|
||||
-- Tree generation
|
||||
--
|
||||
|
||||
-- New palm tree
|
||||
|
||||
local function grow_new_palm_tree(pos)
|
||||
if not default.can_grow(pos) then
|
||||
-- try a bit later again
|
||||
minetest.get_node_timer(pos):start(math.random(240, 600))
|
||||
return
|
||||
end
|
||||
minetest.remove_node(pos)
|
||||
minetest.place_schematic({x = pos.x - 4, y = pos.y - 0, z = pos.z - 4}, modpath.."/schematics/naturalbiomes_cocopalm_tree_0_270.mts", "0", nil, false)
|
||||
end
|
||||
|
||||
|
||||
-- palm trunk
|
||||
minetest.register_node("naturalbiomes:palm_trunk", {
|
||||
description = S("Coconut Palm Trunk"),
|
||||
tiles = {
|
||||
"naturalbiomes_savannapalm_trunk_top.png",
|
||||
"naturalbiomes_savannapalm_trunk_top.png",
|
||||
"naturalbiomes_savannapalm_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,
|
||||
})
|
||||
|
||||
-- palm wood
|
||||
minetest.register_node("naturalbiomes:palm_wood", {
|
||||
description = S("Coconut Palm Wood"),
|
||||
tiles = {"naturalbiomes_savannapalm_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 = "naturalbiomes:palm_wood 4",
|
||||
recipe = {{"naturalbiomes:palm_trunk"}}
|
||||
})
|
||||
|
||||
minetest.register_node("naturalbiomes:palm_leaves", {
|
||||
description = S("Coconut Palm Leaves"),
|
||||
drawtype = "allfaces_optional",
|
||||
waving = 1,
|
||||
tiles = {"naturalbiomes_savannapalm_leaves.png"},
|
||||
special_tiles = {"naturalbiomes_savannapalm_leaves.png"},
|
||||
paramtype = "light",
|
||||
is_ground_content = false,
|
||||
groups = {snappy = 3, leafdecay = 3, flammable = 2, leaves = 1, winleafdecay = 3},
|
||||
drop = {
|
||||
max_items = 1,
|
||||
items = {
|
||||
{
|
||||
-- player will get sapling with 1/50 chance
|
||||
items = {'naturalbiomes:palm_sapling'},
|
||||
rarity = 35,
|
||||
},
|
||||
{
|
||||
-- player will get leaves only if he get no saplings,
|
||||
-- this is because max_items is 1
|
||||
items = {'naturalbiomes:palm_leaves'},
|
||||
}
|
||||
}
|
||||
},
|
||||
sounds = default.node_sound_leaves_defaults(),
|
||||
|
||||
after_place_node = default.after_place_leaves,
|
||||
})
|
||||
|
||||
minetest.register_node("naturalbiomes:palm_sapling", {
|
||||
description = S("Coconut Palm Sapling"),
|
||||
drawtype = "plantlike",
|
||||
tiles = {"naturalbiomes_savannapalm_sapling.png"},
|
||||
inventory_image = "naturalbiomes_savannapalm_sapling.png",
|
||||
wield_image = "naturalbiomes_savannapalm_sapling.png",
|
||||
paramtype = "light",
|
||||
sunlight_propagates = true,
|
||||
walkable = false,
|
||||
on_timer = grow_new_palm_tree,
|
||||
selection_box = {
|
||||
type = "fixed",
|
||||
fixed = {-4 / 16, -0.5, -4 / 16, 4 / 16, 7 / 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,
|
||||
"naturalbiomes:palm_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,
|
||||
})
|
||||
|
||||
|
||||
stairs.register_stair_and_slab(
|
||||
"naturalbiomes_savannapalm_wood",
|
||||
"naturalbiomes:palm_wood",
|
||||
{choppy = 2, oddly_breakable_by_hand = 1, flammable = 3},
|
||||
{"naturalbiomes_savannapalm_wood.png"},
|
||||
S("Coconut Palm Stair"),
|
||||
S("Coconut Palm Slab"),
|
||||
default.node_sound_wood_defaults()
|
||||
)
|
||||
|
||||
stairs.register_stair_and_slab(
|
||||
"naturalbiomes_savannapalm_trunk",
|
||||
"naturalbiomes:palm_trunk",
|
||||
{choppy = 2, oddly_breakable_by_hand = 1, flammable = 3},
|
||||
{"naturalbiomes_savannapalm_trunk_top.png", "naturalbiomes_savannapalm_trunk_top.png", "naturalbiomes_savannapalm_trunk.png"},
|
||||
S("Coconut Palm Trunk Stair"),
|
||||
S("Coconut Palm Trunk Slab"),
|
||||
default.node_sound_wood_defaults()
|
||||
)
|
||||
|
||||
doors.register_fencegate(
|
||||
"naturalbiomes:gate_palm_wood",
|
||||
{
|
||||
description = S("Coconut Palm Wood Fence Gate"),
|
||||
texture = "naturalbiomes_savannapalm_wood.png",
|
||||
material = "naturalbiomes:palm_wood",
|
||||
groups = {choppy = 3, oddly_breakable_by_hand = 2, flammable = 3},
|
||||
sounds = default.node_sound_wood_defaults()
|
||||
}
|
||||
)
|
||||
|
||||
|
||||
default.register_fence(
|
||||
"naturalbiomes:fence_palm_wood",
|
||||
{
|
||||
description = S("Coconut Palm Fence"),
|
||||
texture = "naturalbiomes_palm_fence_wood.png",
|
||||
inventory_image = "default_fence_overlay.png^naturalbiomes_savannapalm_wood.png^default_fence_overlay.png^[makealpha:255,126,126",
|
||||
wield_image = "default_fence_overlay.png^naturalbiomes_savannapalm_wood.png^default_fence_overlay.png^[makealpha:255,126,126",
|
||||
material = "naturalbiomes:palm_wood",
|
||||
groups = {choppy = 2, oddly_breakable_by_hand = 2, flammable = 2},
|
||||
sounds = default.node_sound_wood_defaults()
|
||||
}
|
||||
)
|
||||
|
||||
default.register_fence_rail(
|
||||
"naturalbiomes:fence_rail_palm_wood",
|
||||
{
|
||||
description = S("Coconut Palm Fence Rail"),
|
||||
texture = "naturalbiomes_palm_fence_wood.png",
|
||||
inventory_image = "default_fence_rail_overlay.png^naturalbiomes_savannapalm_wood.png^" ..
|
||||
"default_fence_rail_overlay.png^[makealpha:255,126,126",
|
||||
wield_image = "default_fence_rail_overlay.png^naturalbiomes_savannapalm_wood.png^" ..
|
||||
"default_fence_rail_overlay.png^[makealpha:255,126,126",
|
||||
material = "naturalbiomes:palm_wood",
|
||||
groups = {choppy = 2, oddly_breakable_by_hand = 2, flammable = 2},
|
||||
sounds = default.node_sound_wood_defaults()
|
||||
}
|
||||
)
|
||||
|
||||
minetest.register_decoration({
|
||||
name = "naturalbiomes:palm_tree",
|
||||
deco_type = "schematic",
|
||||
place_on = {"naturalbiomes:palmbeach_sand"},
|
||||
place_offset_y = 0,
|
||||
sidelen = 16,
|
||||
fill_ratio = 0.01115,
|
||||
biomes = {"naturalbiomes:palmbeach"},
|
||||
y_max = 5,
|
||||
y_min = 2,
|
||||
schematic = minetest.get_modpath("naturalbiomes").."/schematics/naturalbiomes_cocopalm_tree_0_270.mts",
|
||||
flags = "place_center_x, place_center_z",
|
||||
rotation = "random",
|
||||
})
|
||||
|
||||
-- Beach Bush
|
||||
|
||||
-- New palm buh
|
||||
|
||||
local function grow_new_palm_bush(pos)
|
||||
if not default.can_grow(pos) then
|
||||
-- try a bit later again
|
||||
minetest.get_node_timer(pos):start(math.random(240, 600))
|
||||
return
|
||||
end
|
||||
minetest.remove_node(pos)
|
||||
minetest.place_schematic({x = pos.x - 1, y = pos.y - 0, z = pos.z - 1}, modpath.."/schematics/naturalbiomes_beach_bush_0_270.mts", "0", nil, false)
|
||||
end
|
||||
|
||||
minetest.register_decoration({
|
||||
name = "naturalbiomes:beach_bush",
|
||||
deco_type = "schematic",
|
||||
place_on = {"naturalbiomes:palmbeach_sand"},
|
||||
place_offset_y = 1,
|
||||
sidelen = 16,
|
||||
noise_params = {
|
||||
offset = -0.004,
|
||||
scale = 0.06,
|
||||
spread = {x = 100, y = 100, z = 100},
|
||||
seed = 137,
|
||||
octaves = 3,
|
||||
persist = 0.7,
|
||||
},
|
||||
biomes = {"naturalbiomes:palmbeach"},
|
||||
y_max = 31000,
|
||||
y_min = 3,
|
||||
schematic = minetest.get_modpath("naturalbiomes") .. "/schematics/naturalbiomes_beach_bush_0_270.mts",
|
||||
flags = "place_center_x, place_center_z",
|
||||
})
|
||||
|
||||
minetest.register_node("naturalbiomes:beach_bush_stem", {
|
||||
description = S("Beach Bush Stem"),
|
||||
drawtype = "plantlike",
|
||||
visual_scale = 1.41,
|
||||
tiles = {"naturalbiomes_beach_bush_stem.png"},
|
||||
inventory_image = "naturalbiomes_beach_bush_stem.png",
|
||||
wield_image = "naturalbiomes_beach_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("naturalbiomes:beach_bush_leaves", {
|
||||
description = S("Beach Bush Leaves"),
|
||||
drawtype = "allfaces_optional",
|
||||
tiles = {"naturalbiomes_beach_bush_leaves.png"},
|
||||
paramtype = "light",
|
||||
groups = {snappy = 3, flammable = 2, leaves = 1, winleafdecay = 3},
|
||||
drop = {
|
||||
max_items = 1,
|
||||
items = {
|
||||
{items = {"naturalbiomes:beach_bush_sapling"}, rarity = 3},
|
||||
{items = {"naturalbiomes:beach_bush_leaves"}}
|
||||
}
|
||||
},
|
||||
sounds = default.node_sound_leaves_defaults(),
|
||||
|
||||
after_place_node = after_place_leaves,
|
||||
})
|
||||
|
||||
minetest.register_node("naturalbiomes:beach_bush_sapling", {
|
||||
description = S("Beach Bush Sapling"),
|
||||
drawtype = "plantlike",
|
||||
tiles = {"naturalbiomes_beach_bush_stem.png"},
|
||||
inventory_image = "naturalbiomes_beach_bush_stem.png",
|
||||
wield_image = "naturalbiomes_beach_bush_stem.png",
|
||||
paramtype = "light",
|
||||
sunlight_propagates = true,
|
||||
walkable = false,
|
||||
on_timer = grow_new_palm_bush,
|
||||
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,
|
||||
"naturalbiomes:beach_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_decoration({
|
||||
name = "naturalbiomes:palmbeach_grass1",
|
||||
deco_type = "simple",
|
||||
place_on = {"naturalbiomes:palmbeach_sand"},
|
||||
sidelen = 16,
|
||||
noise_params = {
|
||||
offset = -0.03,
|
||||
scale = 0.1,
|
||||
spread = {x = 100, y = 100, z = 100},
|
||||
seed = 1987,
|
||||
octaves = 3,
|
||||
persist = 2,
|
||||
},
|
||||
y_max = 30000,
|
||||
y_min = 2,
|
||||
decoration = "naturalbiomes:palmbeach_grass1",
|
||||
spawn_by = "naturalbiomes:palmbeach_sand"
|
||||
})
|
||||
|
||||
minetest.register_node("naturalbiomes:palmbeach_grass1", {
|
||||
description = S"Palmbeach Grass",
|
||||
drawtype = "plantlike",
|
||||
waving = 1,
|
||||
visual_scale = 1.0,
|
||||
tiles = {"naturalbiomes_beach_grass.png"},
|
||||
inventory_image = "naturalbiomes_beach_grass.png",
|
||||
wield_image = "naturalbiomes_beach_grass.png",
|
||||
paramtype = "light",
|
||||
sunlight_propagates = true,
|
||||
walkable = false,
|
||||
buildable_to = true,
|
||||
groups = {snappy = 3, flora = 1, attached_node = 1, flammable = 1, beautiflowers = 1},
|
||||
sounds = default.node_sound_leaves_defaults(),
|
||||
selection_box = {
|
||||
type = "fixed",
|
||||
fixed = {-4 / 16, -0.5, -4 / 16, 4 / 16, 0.0, 4 / 16},
|
||||
},
|
||||
})
|
||||
|
||||
minetest.register_decoration({
|
||||
name = "naturalbiomes:palmbeach_grass2",
|
||||
deco_type = "simple",
|
||||
place_on = {"naturalbiomes:palmbeach_sand"},
|
||||
sidelen = 16,
|
||||
noise_params = {
|
||||
offset = -0.03,
|
||||
scale = 0.1,
|
||||
spread = {x = 100, y = 100, z = 100},
|
||||
seed = 834,
|
||||
octaves = 3,
|
||||
persist = 2,
|
||||
},
|
||||
y_max = 30000,
|
||||
y_min = 2,
|
||||
decoration = "naturalbiomes:palmbeach_grass2",
|
||||
spawn_by = "naturalbiomes:palmbeach_sand"
|
||||
})
|
||||
|
||||
minetest.register_node("naturalbiomes:palmbeach_grass2", {
|
||||
description = S"Palmbeach Grass",
|
||||
drawtype = "plantlike",
|
||||
waving = 1,
|
||||
visual_scale = 1.0,
|
||||
tiles = {"naturalbiomes_beach_grass2.png"},
|
||||
inventory_image = "naturalbiomes_beach_grass2.png",
|
||||
wield_image = "naturalbiomes_beach_grass2.png",
|
||||
paramtype = "light",
|
||||
sunlight_propagates = true,
|
||||
walkable = false,
|
||||
buildable_to = true,
|
||||
groups = {snappy = 3, flora = 1, attached_node = 1, flammable = 1, beautiflowers = 1},
|
||||
sounds = default.node_sound_leaves_defaults(),
|
||||
selection_box = {
|
||||
type = "fixed",
|
||||
fixed = {-4 / 16, -0.5, -4 / 16, 4 / 16, 0.0, 4 / 16},
|
||||
},
|
||||
})
|
||||
|
||||
minetest.register_decoration({
|
||||
name = "naturalbiomes:palmbeach_grass3",
|
||||
deco_type = "simple",
|
||||
place_on = {"naturalbiomes:palmbeach_sand"},
|
||||
sidelen = 16,
|
||||
noise_params = {
|
||||
offset = -0.03,
|
||||
scale = 0.1,
|
||||
spread = {x = 100, y = 100, z = 100},
|
||||
seed = 834,
|
||||
octaves = 3,
|
||||
persist = 2,
|
||||
},
|
||||
y_max = 30000,
|
||||
y_min = 2,
|
||||
decoration = "naturalbiomes:palmbeach_grass3",
|
||||
spawn_by = "naturalbiomes:palmbeach:_sand"
|
||||
})
|
||||
|
||||
minetest.register_node("naturalbiomes:palmbeach_grass3", {
|
||||
description = S"Palmbeach Grass",
|
||||
drawtype = "plantlike",
|
||||
waving = 1,
|
||||
visual_scale = 1.0,
|
||||
tiles = {"naturalbiomes_beach_grass3.png"},
|
||||
inventory_image = "naturalbiomes_beach_grass3.png",
|
||||
wield_image = "naturalbiomes_beach_grass3.png",
|
||||
paramtype = "light",
|
||||
sunlight_propagates = true,
|
||||
walkable = false,
|
||||
buildable_to = true,
|
||||
groups = {snappy = 3, flora = 1, attached_node = 1, flammable = 1, beautiflowers = 1},
|
||||
sounds = default.node_sound_leaves_defaults(),
|
||||
selection_box = {
|
||||
type = "fixed",
|
||||
fixed = {-4 / 16, -0.5, -4 / 16, 4 / 16, 0.0, 4 / 16},
|
||||
},
|
||||
})
|
||||
|
||||
-- Banana Bunch
|
||||
minetest.register_node("naturalbiomes:banana_bunch", {
|
||||
description = S("Banana Bunch"),
|
||||
drawtype = "plantlike",
|
||||
tiles = {"naturalbiomes_banana_bunch.png"},
|
||||
inventory_image = "naturalbiomes_banana_bunch.png",
|
||||
wield_image = "naturalbiomes_banana_bunch.png",
|
||||
paramtype = "light",
|
||||
sunlight_propagates = true,
|
||||
walkable = false,
|
||||
selection_box = {
|
||||
type = "fixed",
|
||||
fixed = {-0.31, -0.5, -0.31, 0.31, 0.5, 0.31}
|
||||
},
|
||||
groups = {
|
||||
fleshy = 3, dig_immediate = 3, flammable = 2,
|
||||
leafdecay = 1, leafdecay_drop = 1, winleafdecay_drop = 1, winleafdecay = 3
|
||||
},
|
||||
drop = "naturalbiomes:banana_bunch",
|
||||
on_use = minetest.item_eat(6),
|
||||
sounds = default.node_sound_leaves_defaults(),
|
||||
after_place_node = function(pos, placer)
|
||||
if placer:is_player() then
|
||||
minetest.set_node(pos, {name = "naturalbiomes:banana_bunch", param2 = 1})
|
||||
end
|
||||
end
|
||||
})
|
||||
|
||||
-- Bunch to Single
|
||||
minetest.register_craft({
|
||||
type = "shapeless",
|
||||
output = "naturalbiomes:banana 3",
|
||||
recipe = {"naturalbiomes:banana_bunch"}
|
||||
})
|
||||
|
||||
minetest.register_craft({
|
||||
type = "shapeless",
|
||||
output = "naturalbiomes:banana_bunch",
|
||||
recipe = {"naturalbiomes:banana", "naturalbiomes:banana", "naturalbiomes:banana"}
|
||||
})
|
||||
|
||||
minetest.register_node("naturalbiomes:banana", {
|
||||
description = S("Banana"),
|
||||
drawtype = "torchlike",
|
||||
tiles = {"naturalbiomes_banana_single.png"},
|
||||
inventory_image = "naturalbiomes_banana_single.png",
|
||||
wield_image = "naturalbiomes_banana_single.png",
|
||||
paramtype = "light",
|
||||
sunlight_propagates = true,
|
||||
walkable = false,
|
||||
selection_box = {
|
||||
type = "fixed",
|
||||
fixed = {-0.31, -0.5, -0.31, 0.31, 0.5, 0.31}
|
||||
},
|
||||
groups = {
|
||||
food_banana = 1, fleshy = 3, dig_immediate = 3, flammable = 2,
|
||||
leafdecay = 1, leafdecay_drop = 1
|
||||
},
|
||||
drop = "naturalbiomes:banana",
|
||||
on_use = minetest.item_eat(2),
|
||||
sounds = default.node_sound_leaves_defaults(),
|
||||
after_place_node = function(pos, placer)
|
||||
if placer:is_player() then
|
||||
minetest.set_node(pos, {name = "naturalbiomes:banana", param2 = 1})
|
||||
end
|
||||
end
|
||||
})
|
||||
|
||||
minetest.register_node("naturalbiomes:coconut_slice", {
|
||||
description = S("Coconut Slice"),
|
||||
drawtype = "torchlike",
|
||||
tiles = {"naturalbiomes_coconut_slice.png"},
|
||||
inventory_image = "naturalbiomes_coconut_slice.png",
|
||||
wield_image = "naturalbiomes_coconut_slice.png",
|
||||
paramtype = "light",
|
||||
sunlight_propagates = true,
|
||||
walkable = false,
|
||||
selection_box = {
|
||||
type = "fixed",
|
||||
fixed = {-0.31, -0.5, -0.31, 0.31, 0.5, 0.31}
|
||||
},
|
||||
groups = {
|
||||
food_banana = 1, fleshy = 3, dig_immediate = 3, flammable = 2,
|
||||
leafdecay = 1, leafdecay_drop = 1
|
||||
},
|
||||
drop = "naturalbiomes:naturalbiomes:coconut_slice",
|
||||
on_use = minetest.item_eat(2),
|
||||
sounds = default.node_sound_leaves_defaults(),
|
||||
after_place_node = function(pos, placer)
|
||||
if placer:is_player() then
|
||||
minetest.set_node(pos, {name = "naturalbiomes:coconut_slice", param2 = 1})
|
||||
end
|
||||
end
|
||||
})
|
||||
|
||||
-- Coco
|
||||
minetest.register_node("naturalbiomes:coconut", {
|
||||
description = S("Coconut"),
|
||||
drawtype = "plantlike",
|
||||
tiles = {"naturalbiomes_coconut.png"},
|
||||
inventory_image = "naturalbiomes_coconut.png",
|
||||
wield_image = "naturalbiomes_coconut.png",
|
||||
paramtype = "light",
|
||||
sunlight_propagates = true,
|
||||
walkable = false,
|
||||
selection_box = {
|
||||
type = "fixed",
|
||||
fixed = {-0.31, -0.5, -0.31, 0.31, 0.5, 0.31}
|
||||
},
|
||||
groups = {
|
||||
fleshy = 3, dig_immediate = 3, flammable = 2,
|
||||
leafdecay = 1, leafdecay_drop = 1, winleafdecay_drop = 1, winleafdecay = 3
|
||||
},
|
||||
drop = "naturalbiomes:coconut",
|
||||
on_use = minetest.item_eat(6),
|
||||
sounds = default.node_sound_leaves_defaults(),
|
||||
after_place_node = function(pos, placer)
|
||||
if placer:is_player() then
|
||||
minetest.set_node(pos, {name = "naturalbiomes:coconut", param2 = 1})
|
||||
end
|
||||
end
|
||||
})
|
||||
|
||||
-- Bunch to Single
|
||||
|
||||
|
||||
minetest.register_craft({
|
||||
type = "shapeless",
|
||||
output = "naturalbiomes:coconut_bunch",
|
||||
recipe = {"naturalbiomes:coconut_slice", "naturalbiomes:coconut_slice", "naturalbiomes:coconut_slice"}
|
||||
})
|
||||
|
BIN
mods/naturalbiomes/schematics/naturalbiomes_acacia_log_0_90.mts
Normal file
BIN
mods/naturalbiomes/schematics/naturalbiomes_acaciatree3.mts
Normal file
BIN
mods/naturalbiomes/schematics/naturalbiomes_acaciatree4.mts
Normal file
BIN
mods/naturalbiomes/schematics/naturalbiomes_acaciatree_0_180.mts
Normal file
BIN
mods/naturalbiomes/schematics/naturalbiomes_alder_log_0_90.mts
Normal file
BIN
mods/naturalbiomes/schematics/naturalbiomes_aldertree2_0_270.mts
Normal file
BIN
mods/naturalbiomes/schematics/naturalbiomes_aldertree3_0_270.mts
Normal file
BIN
mods/naturalbiomes/schematics/naturalbiomes_aldertree_0_270.mts
Normal file
BIN
mods/naturalbiomes/schematics/naturalbiomes_alpine_bush.mts
Normal file
BIN
mods/naturalbiomes/schematics/naturalbiomes_alpine_bush2.mts
Normal file
BIN
mods/naturalbiomes/schematics/naturalbiomes_alpine_bush3.mts
Normal file
BIN
mods/naturalbiomes/schematics/naturalbiomes_banana_palm_0_90.mts
Normal file
BIN
mods/naturalbiomes/schematics/naturalbiomes_beach_bush_0_270.mts
Normal file
BIN
mods/naturalbiomes/schematics/naturalbiomes_birchtree.mts
Normal file
BIN
mods/naturalbiomes/schematics/naturalbiomes_birchtree2.mts
Normal file
BIN
mods/naturalbiomes/schematics/naturalbiomes_cypress_0_90.mts
Normal file
BIN
mods/naturalbiomes/schematics/naturalbiomes_junipertree.mts
Normal file
BIN
mods/naturalbiomes/schematics/naturalbiomes_junipertree2.mts
Normal file
BIN
mods/naturalbiomes/schematics/naturalbiomes_medruin1_0_90.mts
Normal file
BIN
mods/naturalbiomes/schematics/naturalbiomes_medruin2_0_90.mts
Normal file
BIN
mods/naturalbiomes/schematics/naturalbiomes_medruin3_0_90.mts
Normal file
BIN
mods/naturalbiomes/schematics/naturalbiomes_olive_tree2_0_90.mts
Normal file
BIN
mods/naturalbiomes/schematics/naturalbiomes_olive_tree_0_90.mts
Normal file
BIN
mods/naturalbiomes/schematics/naturalbiomes_outback_log_0_90.mts
Normal file
BIN
mods/naturalbiomes/schematics/naturalbiomes_willowtree.mts
Normal file
BIN
mods/naturalbiomes/schematics/naturalbiomes_willowtree11.mts
Normal file
BIN
mods/naturalbiomes/schematics/naturalbiomes_willowtree2.mts
Normal file
BIN
mods/naturalbiomes/schematics/naturalbiomes_willowtree22.mts
Normal file
10
mods/naturalbiomes/settingtypes.txt
Normal file
|
@ -0,0 +1,10 @@
|
|||
#naturalbiomes settings
|
||||
|
||||
#If enabled, will clear all registered biomes.
|
||||
naturalbiomes.clear_biomes (Enable to clear registered biomes. true / false) bool true
|
||||
|
||||
#If enabled, will clear all registered decorations.
|
||||
naturalbiomes.clear_decos (Enable to clear registered decorations. true / false) bool true
|
||||
|
||||
#If enabled, will clear all registered ores.
|
||||
naturalbiomes.clear_ores (Enable to clear registered ores. true / false) bool false
|
After Width: | Height: | Size: 6.5 KiB |
BIN
mods/naturalbiomes/textures/naturalbiomes__banana_leaf.png
Normal file
After Width: | Height: | Size: 1.4 KiB |
After Width: | Height: | Size: 1.1 KiB |
BIN
mods/naturalbiomes/textures/naturalbiomes__banana_trunk.png
Normal file
After Width: | Height: | Size: 1.2 KiB |
BIN
mods/naturalbiomes/textures/naturalbiomes__banana_trunk_top.png
Normal file
After Width: | Height: | Size: 1.2 KiB |
BIN
mods/naturalbiomes/textures/naturalbiomes__banana_wood.png
Normal file
After Width: | Height: | Size: 1.1 KiB |
BIN
mods/naturalbiomes/textures/naturalbiomes__fresholives.png
Normal file
After Width: | Height: | Size: 1.2 KiB |
BIN
mods/naturalbiomes/textures/naturalbiomes_acacia_door.png
Normal file
After Width: | Height: | Size: 14 KiB |
BIN
mods/naturalbiomes/textures/naturalbiomes_acacia_fence_wood.png
Normal file
After Width: | Height: | Size: 7 KiB |
BIN
mods/naturalbiomes/textures/naturalbiomes_acacia_trapdoor.png
Normal file
After Width: | Height: | Size: 6.3 KiB |