Refactor and simplify mesa generation code

This commit is contained in:
Wuzzy 2017-09-10 00:55:32 +02:00
parent f0b87379d3
commit 18f916f3c5

View File

@ -723,22 +723,36 @@ local function register_biomes()
node_top = "mcl_colorblocks:hardened_clay", node_top = "mcl_colorblocks:hardened_clay",
depth_top = 1, depth_top = 1,
node_filler = "mcl_colorblocks:hardened_clay", node_filler = "mcl_colorblocks:hardened_clay",
depth_filler = 35,
node_riverbed = "mcl_core:redsand",
depth_riverbed = 2,
node_stone = "mcl_colorblocks:hardened_clay", node_stone = "mcl_colorblocks:hardened_clay",
y_min = 1, y_min = 11,
y_max = mcl_vars.mg_overworld_max, y_max = mcl_vars.mg_overworld_max,
heat_point = 88, heat_point = 88,
humidity_point = 20, humidity_point = 20,
}) })
-- Helper biome for the red sand at the bottom of mesas.
-- This is part of the regular mesa.
minetest.register_biome({
name = "mesa_sandlevel",
node_top = "mcl_core:redsand",
depth_top = 1,
node_filler = "mcl_colorblocks:hardened_clay_orange",
depth_filler = 3,
node_riverbed = "mcl_core:redsand",
depth_riverbed = 1,
node_stone = "mcl_colorblocks:hardened_clay_orange",
y_min = 1,
y_max = 10,
heat_point = 88,
humidity_point = 20,
})
minetest.register_biome({ minetest.register_biome({
name = "mesa_ocean", name = "mesa_ocean",
node_top = "mcl_core:redsand", node_top = "mcl_core:redsand",
depth_top = 3, depth_top = 3,
node_filler = "mcl_colorblocks:hardened_clay", node_filler = "mcl_colorblocks:hardened_clay",
depth_filler = 1, depth_filler = 2,
node_riverbed = "mcl_core:redsand", node_riverbed = "mcl_core:redsand",
depth_riverbed = 2, depth_riverbed = 2,
y_min = mcl_vars.mg_overworld_min, y_min = mcl_vars.mg_overworld_min,
@ -1039,10 +1053,11 @@ local function register_biomelike_ores()
}) })
-- Mesa ores -- Mesa ores
--[[
minetest.register_ore({ minetest.register_ore({
ore_type = "sheet", ore_type = "sheet",
ore = "mcl_core:sandstone", ore = "mcl_core:redsandstone",
wherein ={"mcl_colorblocks:hardened_clay"}, wherein = {"mcl_colorblocks:hardened_clay"},
clust_scarcity = 1, clust_scarcity = 1,
clust_num_ores = 12, clust_num_ores = 12,
clust_size = 10, clust_size = 10,
@ -1052,6 +1067,7 @@ local function register_biomelike_ores()
noise_params = {offset=0, scale=15, spread={x=130, y=130, z=130}, seed=24, octaves=3, persist=0.70}, noise_params = {offset=0, scale=15, spread={x=130, y=130, z=130}, seed=24, octaves=3, persist=0.70},
biomes = { "mesa" }, biomes = { "mesa" },
}) })
]]
minetest.register_ore({ minetest.register_ore({
ore_type = "sheet", ore_type = "sheet",
@ -1066,6 +1082,7 @@ local function register_biomelike_ores()
noise_params = {offset=0, scale=15, spread={x=130, y=130, z=130}, seed=24, octaves=3, persist=0.70}, noise_params = {offset=0, scale=15, spread={x=130, y=130, z=130}, seed=24, octaves=3, persist=0.70},
biomes = { "mesa" }, biomes = { "mesa" },
}) })
--[[
minetest.register_ore({ minetest.register_ore({
ore_type = "sheet", ore_type = "sheet",
@ -1094,143 +1111,39 @@ local function register_biomelike_ores()
noise_params = {offset=0, scale=15, spread={x=130, y=130, z=130}, seed=24, octaves=3, persist=0.70}, noise_params = {offset=0, scale=15, spread={x=130, y=130, z=130}, seed=24, octaves=3, persist=0.70},
biomes = { "mesa" }, biomes = { "mesa" },
}) })
]]
-- Mesa strata -- Mesa strata
minetest.register_ore({
ore_type = "sheet",
ore = "mcl_colorblocks:hardened_clay_silver",
wherein = {"mcl_colorblocks:hardened_clay"},
clust_size = 1,
y_min = 5,
y_max = 14,
noise_threshold = 0.0,
noise_params = {offset=0, scale=1, spread={x=3100, y=3100, z=3100}, seed=23, octaves=3, persist=0.70} ,
biomes = { "mesa" },
})
-- Colors to use: silver (light grey), brown, orange, red, yellow, white
local stratum = function(y_min, y_max, color)
minetest.register_ore({ minetest.register_ore({
ore_type = "sheet", ore_type = "sheet",
ore = "mcl_colorblocks:hardened_clay_brown", ore = "mcl_colorblocks:hardened_clay_"..color,
wherein = {"mcl_colorblocks:hardened_clay"}, wherein = {"mcl_colorblocks:hardened_clay"},
clust_size = 1, column_height_min = y_max - y_min,
y_min = 15, column_height_max = y_max - y_min,
y_max = 17, y_min = y_min,
y_max = y_max,
noise_threshold = 0.0, noise_threshold = 0.0,
noise_params = {offset=0, scale=1, spread={x=3100, y=3100, z=3100}, seed=23, octaves=3, persist=0.70}, noise_params = {offset=0, scale=1, spread={x=3100, y=3100, z=3100}, seed=23, octaves=3, persist=0.70},
biomes = { "mesa" }, biomes = { "mesa" },
}) })
end
minetest.register_ore({
ore_type = "sheet",
ore = "mcl_colorblocks:hardened_clay_orange",
wherein = {"mcl_colorblocks:hardened_clay"},
clust_size = 6,
y_min = 20,
y_max = 29,
noise_threshold = 0.0,
noise_params = {offset=0, scale=1, spread={x=3100, y=3100, z=3100}, seed=23, octaves=3, persist=0.70} ,
biomes = { "mesa" },
})
minetest.register_ore({ stratum(11, 12, "orange")
ore_type = "sheet", stratum(15, 17, "brown")
ore = "mcl_colorblocks:hardened_clay_red", stratum(20, 29, "orange")
wherein = {"mcl_colorblocks:hardened_clay"}, stratum(34, 37, "red")
clust_size = 2, stratum(42, 43, "yellow")
y_min = 34, stratum(44, 45, "orange")
y_max = 37, stratum(46, 47, "brown")
noise_threshold = 0.0, stratum(48, 49, "yellow")
noise_params = {offset=0, scale=1, spread={x=3100, y=3100, z=3100}, seed=23, octaves=3, persist=0.70} , stratum(50, 52, "white")
biomes = { "mesa" }, stratum(53, 59, "white")
}) stratum(61, 66, "white")
stratum(70, 75, "silver")
minetest.register_ore({
ore_type = "sheet",
ore = "mcl_colorblocks:hardened_clay_yellow",
wherein = {"mcl_colorblocks:hardened_clay"},
clust_size = 1,
y_min = 42,
y_max = 43,
noise_threshold = 0.0,
noise_params = {offset=0, scale=1, spread={x=3100, y=3100, z=3100}, seed=23, octaves=3, persist=0.70} ,
biomes = { "mesa" },
})
minetest.register_ore({
ore_type = "sheet",
ore = "mcl_colorblocks:hardened_clay_orange",
wherein = {"mcl_colorblocks:hardened_clay"},
clust_size = 1,
y_min = 43,
y_max = 44,
noise_threshold = 0.0,
noise_params = {offset=0, scale=1, spread={x=3100, y=3100, z=3100}, seed=23, octaves=3, persist=0.70} ,
biomes = { "mesa" },
})
minetest.register_ore({
ore_type = "sheet",
ore = "mcl_colorblocks:hardened_clay_brown",
wherein = {"mcl_colorblocks:hardened_clay"},
clust_size = 1,
y_min = 44,
y_max = 45,
noise_threshold = 0.0,
noise_params = {offset=0, scale=1, spread={x=3100, y=3100, z=3100}, seed=23, octaves=3, persist=0.70} ,
biomes = { "mesa" },
})
minetest.register_ore({
ore_type = "sheet",
ore = "mcl_colorblocks:hardened_clay_yellow",
wherein = {"mcl_colorblocks:hardened_clay"},
clust_size = 1,
y_min = 45,
y_max = 47,
noise_threshold = 0.0,
noise_params = {offset=0, scale=1, spread={x=3100, y=3100, z=3100}, seed=23, octaves=3, persist=0.70} ,
biomes = { "mesa" },
})
minetest.register_ore({
ore_type = "sheet",
ore = "mcl_colorblocks:hardened_clay_white",
wherein = {"mcl_colorblocks:hardened_clay"},
clust_size = 1,
y_min = 49,
y_max = 52,
noise_threshold = 0.0,
noise_params = {offset=0, scale=1, spread={x=3100, y=3100, z=3100}, seed=23, octaves=3, persist=0.70} ,
biomes = { "mesa" },
})
minetest.register_ore({
ore_type = "sheet",
ore = "mcl_colorblocks:hardened_clay_yellow",
wherein = {"mcl_colorblocks:hardened_clay"},
clust_size = 4,
y_min = 53,
y_max = 59,
noise_threshold = 0.0,
noise_params = {offset=0, scale=1, spread={x=3100, y=3100, z=3100}, seed=23, octaves=3, persist=0.70} ,
})
minetest.register_ore({
ore_type = "sheet",
ore = "mcl_colorblocks:hardened_clay_white",
wherein = {"mcl_colorblocks:hardened_clay"},
clust_size = 8,
y_min = 61,
y_max = 70,
noise_threshold = 0.0,
noise_params = {offset=0, scale=1, spread={x=3100, y=3100, z=3100}, seed=23, octaves=3, persist=0.70} ,
biomes = { "mesa" },
})
minetest.register_ore({
ore_type = "sheet",
ore = "mcl_colorblocks:hardened_clay_silver",
wherein = {"mcl_colorblocks:hardened_clay"},
clust_size = 8,
y_min = 66,
y_max = 75,
noise_threshold = 0.0,
noise_params = {offset=0, scale=1, spread={x=3100, y=3100, z=3100}, seed=23, octaves=3, persist=0.70} ,
biomes = { "mesa" },
})
end end
-- Non-Overworld ores -- Non-Overworld ores
@ -2136,7 +2049,7 @@ local function register_decorations()
y_min = 4, y_min = 4,
y_max = mcl_vars.mg_overworld_max, y_max = mcl_vars.mg_overworld_max,
decoration = "mcl_core:cactus", decoration = "mcl_core:cactus",
biomes = {"red_desert","desert"}, biomes = {"red_desert","desert","mesa","mesa_sandlevel"},
height = 1, height = 1,
height_max = 3, height_max = 3,
}) })
@ -2701,7 +2614,7 @@ local function register_decorations()
}, },
y_min = 4, y_min = 4,
y_max = mcl_vars.mg_overworld_max, y_max = mcl_vars.mg_overworld_max,
biomes = {"red_desert", "desert", "mesa", "taiga", "mega_taiga"}, biomes = {"red_desert", "desert", "mesa", "mesa_sandlevel", "taiga", "mega_taiga"},
decoration = "mcl_core:deadbush", decoration = "mcl_core:deadbush",
height = 1, height = 1,
}) })