mirror of
https://github.com/luanti-org/minetest_game.git
synced 2025-03-20 14:51:23 +00:00
Adds a direct resource of green dye, and a flower resource of black dye. Completes the colour sequence: red, orange, yellow, green, blue, violet. Makes all base dyes cultivatable and sustainable, without the presence of coal. Add the new flowers to the world with the same density variation as the others, but obviously with different noise seeds. Results in more flowers in a world and more variety of flower combinations.
172 lines
3.6 KiB
Lua
172 lines
3.6 KiB
Lua
--
|
|
-- Mgv6
|
|
--
|
|
|
|
local function register_mgv6_flower(name)
|
|
minetest.register_decoration({
|
|
deco_type = "simple",
|
|
place_on = {"default:dirt_with_grass"},
|
|
sidelen = 16,
|
|
noise_params = {
|
|
offset = 0,
|
|
scale = 0.006,
|
|
spread = {x = 100, y = 100, z = 100},
|
|
seed = 436,
|
|
octaves = 3,
|
|
persist = 0.6
|
|
},
|
|
y_min = 1,
|
|
y_max = 30,
|
|
decoration = "flowers:"..name,
|
|
})
|
|
end
|
|
|
|
local function register_mgv6_mushroom(name)
|
|
minetest.register_decoration({
|
|
deco_type = "simple",
|
|
place_on = {"default:dirt_with_grass"},
|
|
sidelen = 16,
|
|
noise_params = {
|
|
offset = 0,
|
|
scale = 0.04,
|
|
spread = {x = 100, y = 100, z = 100},
|
|
seed = 7133,
|
|
octaves = 3,
|
|
persist = 0.6
|
|
},
|
|
y_min = 1,
|
|
y_max = 30,
|
|
decoration = "flowers:"..name,
|
|
spawn_by = "default:tree",
|
|
num_spawn_by = 1,
|
|
})
|
|
end
|
|
|
|
local function register_mgv6_waterlily()
|
|
minetest.register_decoration({
|
|
deco_type = "schematic",
|
|
place_on = {"default:dirt"},
|
|
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_min = 0,
|
|
y_max = 0,
|
|
schematic = minetest.get_modpath("flowers").."/schematics/waterlily.mts",
|
|
rotation = "random",
|
|
})
|
|
end
|
|
|
|
function flowers.register_mgv6_decorations()
|
|
register_mgv6_flower("rose")
|
|
register_mgv6_flower("tulip")
|
|
register_mgv6_flower("dandelion_yellow")
|
|
register_mgv6_flower("geranium")
|
|
register_mgv6_flower("viola")
|
|
register_mgv6_flower("dandelion_white")
|
|
|
|
register_mgv6_mushroom("mushroom_brown")
|
|
register_mgv6_mushroom("mushroom_red")
|
|
|
|
register_mgv6_waterlily()
|
|
end
|
|
|
|
|
|
--
|
|
-- All other biome API mapgens
|
|
--
|
|
|
|
local function register_flower(seed, name)
|
|
minetest.register_decoration({
|
|
deco_type = "simple",
|
|
place_on = {"default:dirt_with_grass"},
|
|
sidelen = 16,
|
|
noise_params = {
|
|
offset = -0.02,
|
|
scale = 0.04,
|
|
spread = {x = 200, y = 200, z = 200},
|
|
seed = seed,
|
|
octaves = 3,
|
|
persist = 0.6
|
|
},
|
|
biomes = {"grassland", "deciduous_forest", "coniferous_forest",
|
|
"floatland_grassland"},
|
|
y_min = 1,
|
|
y_max = 31000,
|
|
decoration = "flowers:"..name,
|
|
})
|
|
end
|
|
|
|
local function register_mushroom(name)
|
|
minetest.register_decoration({
|
|
deco_type = "simple",
|
|
place_on = {"default:dirt_with_grass"},
|
|
sidelen = 16,
|
|
noise_params = {
|
|
offset = 0,
|
|
scale = 0.006,
|
|
spread = {x = 250, y = 250, z = 250},
|
|
seed = 2,
|
|
octaves = 3,
|
|
persist = 0.66
|
|
},
|
|
biomes = {"deciduous_forest", "coniferous_forest"},
|
|
y_min = 1,
|
|
y_max = 31000,
|
|
decoration = "flowers:"..name,
|
|
})
|
|
end
|
|
|
|
local function register_waterlily()
|
|
minetest.register_decoration({
|
|
deco_type = "schematic",
|
|
place_on = {"default:dirt"},
|
|
sidelen = 16,
|
|
noise_params = {
|
|
offset = -0.12,
|
|
scale = 0.3,
|
|
spread = {x = 200, y = 200, z = 200},
|
|
seed = 33,
|
|
octaves = 3,
|
|
persist = 0.7
|
|
},
|
|
biomes = {"rainforest_swamp", "savanna_shore", "deciduous_forest_shore"},
|
|
y_min = 0,
|
|
y_max = 0,
|
|
schematic = minetest.get_modpath("flowers") .. "/schematics/waterlily.mts",
|
|
rotation = "random",
|
|
})
|
|
end
|
|
|
|
function flowers.register_decorations()
|
|
register_flower(436, "rose")
|
|
register_flower(19822, "tulip")
|
|
register_flower(1220999, "dandelion_yellow")
|
|
register_flower(800081, "chrysanthemum_green")
|
|
register_flower(36662, "geranium")
|
|
register_flower(1133, "viola")
|
|
register_flower(73133, "dandelion_white")
|
|
register_flower(42, "tulip_black")
|
|
|
|
register_mushroom("mushroom_brown")
|
|
register_mushroom("mushroom_red")
|
|
|
|
register_waterlily()
|
|
end
|
|
|
|
|
|
--
|
|
-- Detect mapgen to select functions
|
|
--
|
|
|
|
local mg_name = minetest.get_mapgen_setting("mg_name")
|
|
if mg_name == "v6" then
|
|
flowers.register_mgv6_decorations()
|
|
else
|
|
flowers.register_decorations()
|
|
end
|