Compare commits

...

3 Commits

Author SHA1 Message Date
cora ba1358abe0 enable deepslate generation 2022-06-15 11:50:29 +02:00
cora d48b4053a8 make conversion lbm a setting 2022-06-15 11:42:19 +02:00
cora d5c5278433 lower mapgen limit to -128, convert old by lbm 2022-06-15 11:42:19 +02:00
2 changed files with 47 additions and 9 deletions

View File

@ -26,10 +26,12 @@ mcl_vars.tool_wield_scale = { x = 1.8, y = 1.8, z = 1 }
-- Mapgen variables
local mg_name = minetest.get_mapgen_setting("mg_name")
local minecraft_height_limit = 256
local minecraft_height_limit = 320
local superflat = mg_name == "flat" and minetest.get_mapgen_setting("mcl_superflat_classic") == "true"
local singlenode = mg_name == "singlenode"
local convert_old_bedrock = minetest.settings:get_bool("mcl_convert_old_bedrock", false)
-- Calculate mapgen_edge_min/mapgen_edge_max
mcl_vars.chunksize = math.max(1, tonumber(minetest.get_mapgen_setting("chunksize")) or 5)
mcl_vars.MAP_BLOCKSIZE = math.max(1, minetest.MAP_BLOCKSIZE or 16)
@ -99,7 +101,8 @@ if not superflat and not singlenode then
]]
-- Overworld
mcl_vars.mg_overworld_min = -62
mcl_vars.mg_overworld_min_old = -62
mcl_vars.mg_overworld_min = -128
mcl_vars.mg_overworld_max_official = mcl_vars.mg_overworld_min + minecraft_height_limit
mcl_vars.mg_bedrock_overworld_min = mcl_vars.mg_overworld_min
mcl_vars.mg_bedrock_overworld_max = mcl_vars.mg_bedrock_overworld_min + 4
@ -108,7 +111,8 @@ if not superflat and not singlenode then
mcl_vars.mg_bedrock_is_rough = true
elseif singlenode then
mcl_vars.mg_overworld_min = -66
mcl_vars.mg_overworld_min_old = -66
mcl_vars.mg_overworld_min = -130
mcl_vars.mg_overworld_max_official = mcl_vars.mg_overworld_min + minecraft_height_limit
mcl_vars.mg_bedrock_overworld_min = mcl_vars.mg_overworld_min
mcl_vars.mg_bedrock_overworld_max = mcl_vars.mg_bedrock_overworld_min
@ -261,3 +265,39 @@ function mcl_vars.get_node(p, force, us_timeout)
return node
-- it still can return "ignore", LOL, even if force = true, but only after time out
end
-- lbm to update from old mapgen depth to new. potentially affects a lot of nodes inducing lag.
-- Also it will not generate ores or bedrock pattern.
local function register_lbms()
minetest.register_lbm({
label = "Replace bedrock from old bedrock layer and air/void below to deepslate",
name = ":mcl_mapgen_core:replace_old_bedrock",
nodenames = { "mcl_core:bedrock" },
run_at_every_load = true,
action = function(p)
if p.y >= mcl_vars.mg_overworld_min_old - 1 and p.y <= mcl_vars.mg_overworld_min_old + 5 then
minetest.swap_node(p,{name="mcl_deepslate:deepslate"})
end
--minetest.log("bedrock")
end
})
minetest.register_lbm({
label = "Replace bedrock from old bedrock layer and air/void below to deepslate",
name = ":mcl_mapgen_core:replace_old_void",
nodenames = { "mcl_core:void" },
run_at_every_load = true,
action = function(p)
if p.y <= mcl_vars.mg_overworld_min_old and p.y >= mcl_vars.mg_bedrock_overworld_min then
if p.y <= mcl_vars.mg_bedrock_overworld_max and p.y >= mcl_vars.mg_bedrock_overworld_min then
minetest.swap_node(p,{name="mcl_core:bedrock" })
else
minetest.swap_node(p,{name="mcl_deepslate:deepslate"})
end
end
--minetest.log("void")
end
})
end
if convert_old_bedrock then
register_lbms()
end

View File

@ -1,21 +1,20 @@
local modname = minetest.get_current_modname()
local S = minetest.get_translator(modname)
--local layer_max = mcl_worlds.layer_to_y(16)
--local layer_min = mcl_vars.mg_overworld_min
local layer_max = mcl_vars.mg_overworld_min_old
local layer_min = mcl_vars.mg_overworld_min
local copper_mod = minetest.get_modpath("mcl_copper")
local cobble = "mcl_deepslate:deepslate_cobbled"
local stick = "mcl_core:stick"
--[[
local mountains = {
"ExtremeHills", "ExtremeHills_beach", "ExtremeHills_ocean", "ExtremeHills_deep_ocean", "ExtremeHills_underground",
"ExtremeHills+", "ExtremeHills+_ocean", "ExtremeHills+_deep_ocean", "ExtremeHills+_underground",
"ExtremeHillsM", "ExtremeHillsM_ocean", "ExtremeHillsM_deep_ocean", "ExtremeHillsM_underground",
}
]]
minetest.register_node("mcl_deepslate:deepslate", {
description = S("Deepslate"),
@ -205,7 +204,6 @@ minetest.register_craft({
cooktime = 10,
})
--[[ Commented out for now because there the discussion how to handle this is ongoing
minetest.register_ore({
ore_type = "blob",
ore = "mcl_deepslate:deepslate",
@ -364,7 +362,7 @@ if minetest.settings:get_bool("mcl_generate_ores", true) then
})
end
end
--]]
local function register_deepslate_variant(item, desc, longdesc)
local texture = desc:lower():gsub("% ", "_")
local def = {