diff --git a/mods/CORE/mcl_init/init.lua b/mods/CORE/mcl_init/init.lua index ebf106e19..091d9cb1c 100644 --- a/mods/CORE/mcl_init/init.lua +++ b/mods/CORE/mcl_init/init.lua @@ -65,6 +65,9 @@ mcl_vars.mg_lava_nether_max = mcl_vars.mg_nether_min + 31 mcl_vars.mg_end_min = mcl_vars.mg_nether_max + 2000 mcl_vars.mg_end_max_official = mcl_vars.mg_end_min + minecraft_height_limit mcl_vars.mg_end_max = mcl_vars.mg_overworld_min - 2000 +-- Realm barrier used to safely separate the End from the void below the Overworld +mcl_vars.mg_realm_barrier_overworld_end_max = mcl_vars.mg_end_max +mcl_vars.mg_realm_barrier_overworld_end_min = mcl_vars.mg_end_max - 11 -- Set default stack sizes minetest.nodedef_default.stack_max = 64 diff --git a/mods/ITEMS/mcl_core/nodes_misc.lua b/mods/ITEMS/mcl_core/nodes_misc.lua index 81274a49a..3c1c51f3a 100644 --- a/mods/ITEMS/mcl_core/nodes_misc.lua +++ b/mods/ITEMS/mcl_core/nodes_misc.lua @@ -153,6 +153,8 @@ minetest.register_node("mcl_core:realm_barrier", { wield_image = "mcl_core_barrier.png^[colorize:#FF00FF:127^[transformFX", tiles = { "blank.png" }, stack_max = 64, + -- To avoid players getting stuck forever between realms + damage_per_second = 8, sunlight_propagates = true, is_ground_content = false, pointable = false, diff --git a/mods/MAPGEN/mcl_mapgen_core/init.lua b/mods/MAPGEN/mcl_mapgen_core/init.lua index 6e2dda738..0b8999cf0 100644 --- a/mods/MAPGEN/mcl_mapgen_core/init.lua +++ b/mods/MAPGEN/mcl_mapgen_core/init.lua @@ -1215,6 +1215,7 @@ minetest.register_on_generated(function(minp, maxp) local c_bedrock = minetest.get_content_id("mcl_core:bedrock") local c_void = minetest.get_content_id("mcl_core:void") local c_lava = minetest.get_content_id("mcl_core:lava_source") + local c_realm_barrier = minetest.get_content_id("mcl_core:realm_barrier") local c_nether_lava = minetest.get_content_id("mcl_nether:nether_lava_source") local c_air = minetest.get_content_id("air") @@ -1276,6 +1277,7 @@ minetest.register_on_generated(function(minp, maxp) if setdata then data[p_pos] = setdata lvm_used = true + -- Big lava seas by replacing air below a certain height elseif mcl_vars.mg_lava and data[p_pos] == c_air then if y <= mcl_vars.mg_lava_overworld_max and y >= mcl_vars.mg_overworld_min then data[p_pos] = c_lava @@ -1284,6 +1286,10 @@ minetest.register_on_generated(function(minp, maxp) data[p_pos] = c_nether_lava lvm_used = true end + -- Realm barrier between the Overworld void and the End + elseif y >= mcl_vars.mg_realm_barrier_overworld_end_min and y <= mcl_vars.mg_realm_barrier_overworld_end_max then + data[p_pos] = c_realm_barrier + lvm_used = true end end end