forked from mtcontrib/plantlife_modpack
add pl.generate_noise_params()
This commit is contained in:
@ -11,4 +11,32 @@ if minetest.get_modpath("unified_inventory") or not minetest.settings:get_bool("
|
||||
pl.expect_infinite_stacks = false
|
||||
else
|
||||
pl.expect_infinite_stacks = true
|
||||
end
|
||||
|
||||
-- Noise param helper
|
||||
local function set_defaults(biome)
|
||||
biome.seed_diff = biome.seed_diff or 0
|
||||
biome.rarity = biome.rarity or 50
|
||||
biome.rarity_fertility = biome.rarity_fertility or 0
|
||||
biome.max_count = biome.max_count or 125
|
||||
|
||||
return biome
|
||||
end
|
||||
|
||||
function pl.generate_noise_params(b)
|
||||
local biome = set_defaults(b)
|
||||
local r = (100-biome.rarity)/100
|
||||
local mc = math.min(biome.max_count, 6400)/6400
|
||||
|
||||
local noise_params = {
|
||||
octaves = biome_lib.fertile_perlin_octaves,
|
||||
persist = biome_lib.fertile_perlin_persistence * (100/biome_lib.fertile_perlin_scale),
|
||||
scale = math.min(r, mc),
|
||||
seed = biome.seed_diff,
|
||||
offset = 0,
|
||||
spread = {x = 100, y = 100, z = 100},
|
||||
lacunarity = 2,
|
||||
flags = "absvalue"
|
||||
}
|
||||
return noise_params
|
||||
end
|
Reference in New Issue
Block a user