mirror of
https://git.minetest.land/VoxeLibre/VoxeLibre.git
synced 2024-11-25 20:11:06 +01:00
Generate netherrack and ores under the lava
another hack using minetest.generate_ores this time
This commit is contained in:
parent
0f01a28c93
commit
fe68e1eaac
3 changed files with 39 additions and 13 deletions
|
@ -1545,6 +1545,19 @@ local function register_dimension_biomes()
|
||||||
flags = "all_ceilings",
|
flags = "all_ceilings",
|
||||||
param2 = 0,
|
param2 = 0,
|
||||||
})
|
})
|
||||||
|
minetest.register_decoration({
|
||||||
|
deco_type = "simple",
|
||||||
|
place_on = {"mcl_core:bedrock"},
|
||||||
|
sidelen = 16,
|
||||||
|
fill_ratio = 10,
|
||||||
|
y_min = mcl_vars.mg_nether_min - 10,
|
||||||
|
y_max = mcl_vars.mg_lava_nether_max,
|
||||||
|
height = 7,
|
||||||
|
max_height = 14,
|
||||||
|
decoration = "mcl_nether:netherrack",
|
||||||
|
flags = "all_floors,force_placement",
|
||||||
|
param2 = 0,
|
||||||
|
})
|
||||||
|
|
||||||
|
|
||||||
minetest.register_biome({
|
minetest.register_biome({
|
||||||
|
@ -1570,7 +1583,7 @@ local function register_dimension_biomes()
|
||||||
sidelen = 16,
|
sidelen = 16,
|
||||||
fill_ratio = 10,
|
fill_ratio = 10,
|
||||||
biomes = { "Nether" },
|
biomes = { "Nether" },
|
||||||
y_min = -31000,
|
y_min = mcl_vars.mg_lava_nether_max,
|
||||||
y_max = mcl_vars.mg_nether_deco_max,
|
y_max = mcl_vars.mg_nether_deco_max,
|
||||||
decoration = "mcl_nether:netherrack",
|
decoration = "mcl_nether:netherrack",
|
||||||
flags = "all_floors",
|
flags = "all_floors",
|
||||||
|
@ -1586,7 +1599,6 @@ local function register_dimension_biomes()
|
||||||
node_river_water = "air",
|
node_river_water = "air",
|
||||||
node_cave_liquid = "air",
|
node_cave_liquid = "air",
|
||||||
y_min = mcl_vars.mg_nether_min,
|
y_min = mcl_vars.mg_nether_min,
|
||||||
|
|
||||||
y_max = mcl_vars.mg_nether_max + 80,
|
y_max = mcl_vars.mg_nether_max + 80,
|
||||||
heat_point = 77,
|
heat_point = 77,
|
||||||
humidity_point = 33,
|
humidity_point = 33,
|
||||||
|
@ -1599,7 +1611,7 @@ local function register_dimension_biomes()
|
||||||
sidelen = 16,
|
sidelen = 16,
|
||||||
fill_ratio = 10,
|
fill_ratio = 10,
|
||||||
biomes = { "SoulsandValley" },
|
biomes = { "SoulsandValley" },
|
||||||
y_min = -31000,
|
y_min = mcl_vars.mg_lava_nether_max,
|
||||||
y_max = mcl_vars.mg_nether_deco_max,
|
y_max = mcl_vars.mg_nether_deco_max,
|
||||||
decoration = "mcl_blackstone:soul_soil",
|
decoration = "mcl_blackstone:soul_soil",
|
||||||
flags = "all_floors, all_ceilings",
|
flags = "all_floors, all_ceilings",
|
||||||
|
@ -1614,7 +1626,7 @@ local function register_dimension_biomes()
|
||||||
clust_num_ores = 225,
|
clust_num_ores = 225,
|
||||||
clust_size = 15,
|
clust_size = 15,
|
||||||
biomes = { "SoulsandValley" },
|
biomes = { "SoulsandValley" },
|
||||||
y_min = mcl_vars.mg_nether_min,
|
y_min = mcl_vars.mg_lava_nether_max,
|
||||||
y_max = mcl_vars.mg_nether_deco_max,
|
y_max = mcl_vars.mg_nether_deco_max,
|
||||||
noise_params = {
|
noise_params = {
|
||||||
offset = 0,
|
offset = 0,
|
||||||
|
@ -1636,7 +1648,6 @@ local function register_dimension_biomes()
|
||||||
node_river_water = "air",
|
node_river_water = "air",
|
||||||
node_cave_liquid = "air",
|
node_cave_liquid = "air",
|
||||||
y_min = mcl_vars.mg_nether_min,
|
y_min = mcl_vars.mg_nether_min,
|
||||||
|
|
||||||
y_max = mcl_vars.mg_nether_max + 80,
|
y_max = mcl_vars.mg_nether_max + 80,
|
||||||
heat_point = 60,
|
heat_point = 60,
|
||||||
humidity_point = 47,
|
humidity_point = 47,
|
||||||
|
@ -1649,7 +1660,7 @@ local function register_dimension_biomes()
|
||||||
sidelen = 16,
|
sidelen = 16,
|
||||||
fill_ratio = 10,
|
fill_ratio = 10,
|
||||||
biomes = { "CrimsonForest" },
|
biomes = { "CrimsonForest" },
|
||||||
y_min = -31000,
|
y_min = mcl_vars.mg_lava_nether_max,
|
||||||
y_max = mcl_vars.mg_nether_deco_max,
|
y_max = mcl_vars.mg_nether_deco_max,
|
||||||
decoration = "mcl_crimson:crimson_nylium",
|
decoration = "mcl_crimson:crimson_nylium",
|
||||||
flags = "all_floors",
|
flags = "all_floors",
|
||||||
|
@ -1676,7 +1687,7 @@ local function register_dimension_biomes()
|
||||||
sidelen = 16,
|
sidelen = 16,
|
||||||
fill_ratio = 10,
|
fill_ratio = 10,
|
||||||
biomes = { "WarpedForest" },
|
biomes = { "WarpedForest" },
|
||||||
y_min = -31000,
|
y_min = mcl_vars.mg_lava_nether_max,
|
||||||
y_max = mcl_vars.mg_nether_deco_max,
|
y_max = mcl_vars.mg_nether_deco_max,
|
||||||
decoration = "mcl_crimson:warped_nylium",
|
decoration = "mcl_crimson:warped_nylium",
|
||||||
flags = "all_floors",
|
flags = "all_floors",
|
||||||
|
@ -1704,7 +1715,7 @@ local function register_dimension_biomes()
|
||||||
sidelen = 16,
|
sidelen = 16,
|
||||||
fill_ratio = 10,
|
fill_ratio = 10,
|
||||||
biomes = { "BasaltDelta" },
|
biomes = { "BasaltDelta" },
|
||||||
y_min = -31000,
|
y_min = mcl_vars.mg_lava_nether_max,
|
||||||
y_max = mcl_vars.mg_nether_deco_max,
|
y_max = mcl_vars.mg_nether_deco_max,
|
||||||
decoration = "mcl_blackstone:basalt",
|
decoration = "mcl_blackstone:basalt",
|
||||||
flags = "all_floors",
|
flags = "all_floors",
|
||||||
|
@ -1714,12 +1725,12 @@ local function register_dimension_biomes()
|
||||||
minetest.register_ore({
|
minetest.register_ore({
|
||||||
ore_type = "blob",
|
ore_type = "blob",
|
||||||
ore = "mcl_blackstone:blackstone",
|
ore = "mcl_blackstone:blackstone",
|
||||||
wherein = {"mcl_nether:netherrack","mcl_nether:glowstone","mcl_core:gravel","mcl_nether:soul_sand"},
|
wherein = {"mcl_nether:netherrack","mcl_nether:glowstone","mcl_core:gravel"},
|
||||||
clust_scarcity = 100,
|
clust_scarcity = 100,
|
||||||
clust_num_ores = 400,
|
clust_num_ores = 400,
|
||||||
clust_size = 20,
|
clust_size = 20,
|
||||||
biomes = { "BasaltDelta" },
|
biomes = { "BasaltDelta" },
|
||||||
y_min = mcl_vars.mg_nether_min,
|
y_min = mcl_vars.mg_lava_nether_max,
|
||||||
y_max = mcl_vars.mg_nether_deco_max,
|
y_max = mcl_vars.mg_nether_deco_max,
|
||||||
noise_params = {
|
noise_params = {
|
||||||
offset = 0,
|
offset = 0,
|
||||||
|
|
|
@ -15,7 +15,7 @@ minetest.register_on_generated(function(minp, maxp, blockseed)
|
||||||
local t1 = os.clock()
|
local t1 = os.clock()
|
||||||
local p1, p2 = {x=minp.x, y=minp.y, z=minp.z}, {x=maxp.x, y=maxp.y, z=maxp.z}
|
local p1, p2 = {x=minp.x, y=minp.y, z=minp.z}, {x=maxp.x, y=maxp.y, z=maxp.z}
|
||||||
if lvm > 0 then
|
if lvm > 0 then
|
||||||
local lvm_used, shadow, deco_used, deco_table = false, false, false, false
|
local lvm_used, shadow, deco_used, deco_table, ore_used, ore_table = false, false, false, false, false, false
|
||||||
local lb2 = {} -- param2
|
local lb2 = {} -- param2
|
||||||
local vm, emin, emax = minetest.get_mapgen_object("voxelmanip")
|
local vm, emin, emax = minetest.get_mapgen_object("voxelmanip")
|
||||||
local e1, e2 = {x=emin.x, y=emin.y, z=emin.z}, {x=emax.x, y=emax.y, z=emax.z}
|
local e1, e2 = {x=emin.x, y=emin.y, z=emin.z}, {x=emax.x, y=emax.y, z=emax.z}
|
||||||
|
@ -28,7 +28,7 @@ minetest.register_on_generated(function(minp, maxp, blockseed)
|
||||||
|
|
||||||
for _, rec in ipairs(registered_generators) do
|
for _, rec in ipairs(registered_generators) do
|
||||||
if rec.vf then
|
if rec.vf then
|
||||||
local lvm_used0, shadow0, deco = rec.vf(vm, data, data2, e1, e2, area, p1, p2, blockseed)
|
local lvm_used0, shadow0, deco, ore = rec.vf(vm, data, data2, e1, e2, area, p1, p2, blockseed)
|
||||||
if lvm_used0 then
|
if lvm_used0 then
|
||||||
lvm_used = true
|
lvm_used = true
|
||||||
end
|
end
|
||||||
|
@ -40,6 +40,11 @@ minetest.register_on_generated(function(minp, maxp, blockseed)
|
||||||
elseif deco then
|
elseif deco then
|
||||||
deco_used = true
|
deco_used = true
|
||||||
end
|
end
|
||||||
|
if ore and type(ore) == "table" then
|
||||||
|
ore_table = ore
|
||||||
|
elseif deco then
|
||||||
|
ore_used = true
|
||||||
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
@ -54,6 +59,11 @@ minetest.register_on_generated(function(minp, maxp, blockseed)
|
||||||
elseif deco_used then
|
elseif deco_used then
|
||||||
minetest.generate_decorations(vm)
|
minetest.generate_decorations(vm)
|
||||||
end
|
end
|
||||||
|
if ore_table then
|
||||||
|
minetest.generate_ores(vm,vector.new(minp.x,ore_table.min,minp.z),vector.new(maxp.x,ore_table.max,maxp.z))
|
||||||
|
elseif ore_used then
|
||||||
|
minetest.generate_ores(vm)
|
||||||
|
end
|
||||||
vm:calc_lighting(p1, p2, shadow)
|
vm:calc_lighting(p1, p2, shadow)
|
||||||
vm:write_to_map()
|
vm:write_to_map()
|
||||||
vm:update_liquids()
|
vm:update_liquids()
|
||||||
|
|
|
@ -333,10 +333,15 @@ local function world_structure(vm, data, data2, emin, emax, area, minp, maxp, bl
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
local deco = false
|
local deco = false
|
||||||
|
local ores = false
|
||||||
if minp.y > mcl_vars.mg_nether_deco_max - 64 and maxp.y < mcl_vars.mg_nether_max + 128 then
|
if minp.y > mcl_vars.mg_nether_deco_max - 64 and maxp.y < mcl_vars.mg_nether_max + 128 then
|
||||||
deco = {min=mcl_vars.mg_nether_deco_max,max=mcl_vars.mg_nether_max}
|
deco = {min=mcl_vars.mg_nether_deco_max,max=mcl_vars.mg_nether_max}
|
||||||
end
|
end
|
||||||
return lvm_used, lvm_used, deco
|
if minp.y < mcl_vars.mg_nether_min + 10 or maxp.y < mcl_vars.mg_nether_min + 60 then
|
||||||
|
deco = {min=mcl_vars.mg_nether_min - 10,max=mcl_vars.mg_nether_min + 20}
|
||||||
|
ores = {min=mcl_vars.mg_nether_min - 10,max=mcl_vars.mg_nether_min + 20}
|
||||||
|
end
|
||||||
|
return lvm_used, lvm_used, deco, ores
|
||||||
end
|
end
|
||||||
|
|
||||||
local function block_fixes(vm, data, data2, emin, emax, area, minp, maxp, blockseed)
|
local function block_fixes(vm, data, data2, emin, emax, area, minp, maxp, blockseed)
|
||||||
|
|
Loading…
Reference in a new issue