mirror of
https://git.minetest.land/VoxeLibre/VoxeLibre.git
synced 2024-11-25 20:11:06 +01:00
Add basalt pillars
This commit is contained in:
parent
fefb15f2a8
commit
0890c719a3
2 changed files with 58 additions and 17 deletions
|
@ -1533,8 +1533,8 @@ local function register_dimension_biomes()
|
||||||
ore = "mcl_nether:soul_sand",
|
ore = "mcl_nether:soul_sand",
|
||||||
wherein = { "mcl_nether:netherrack", "mcl_blackstone:soul_soil" },
|
wherein = { "mcl_nether:netherrack", "mcl_blackstone:soul_soil" },
|
||||||
clust_scarcity = 100,
|
clust_scarcity = 100,
|
||||||
clust_num_ores = 100,
|
clust_num_ores = 225,
|
||||||
clust_size = 10,
|
clust_size = 15,
|
||||||
biomes = { "SoulsandValley" },
|
biomes = { "SoulsandValley" },
|
||||||
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,
|
||||||
|
@ -1623,10 +1623,10 @@ 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" },
|
wherein = {"mcl_nether:netherrack","mcl_nether:glowstone","mcl_core:gravel","mcl_nether:soul_sand"},
|
||||||
clust_scarcity = 100,
|
clust_scarcity = 100,
|
||||||
clust_num_ores = 100,
|
clust_num_ores = 400,
|
||||||
clust_size = 10,
|
clust_size = 20,
|
||||||
biomes = { "BasaltDelta" },
|
biomes = { "BasaltDelta" },
|
||||||
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,
|
||||||
|
@ -1644,14 +1644,14 @@ local function register_dimension_biomes()
|
||||||
|
|
||||||
minetest.register_decoration({
|
minetest.register_decoration({
|
||||||
deco_type = "simple",
|
deco_type = "simple",
|
||||||
place_on = {"mcl_nether:netherrack","mcl_nether:glowstone","mcl_blackstone:blackstone"},
|
place_on = {"mcl_nether:netherrack","mcl_nether:glowstone","mcl_blackstone:nether_gold","mcl_nether:quartz_ore","mcl_core:gravel","mcl_nether:soul_sand","mcl_blackstone:blackstone"},
|
||||||
sidelen = 16,
|
sidelen = 16,
|
||||||
fill_ratio = 10,
|
fill_ratio = 10,
|
||||||
biomes = { "BasaltDelta" },
|
biomes = { "BasaltDelta" },
|
||||||
y_min = -31000,
|
y_min = -31000,
|
||||||
y_max = mcl_vars.mg_nether_max,
|
y_max = mcl_vars.mg_nether_max,
|
||||||
decoration = "mcl_blackstone:basalt",
|
decoration = "mcl_blackstone:basalt",
|
||||||
flags = "all_floors, all_ceilings",
|
flags = "all_floors",
|
||||||
param2 = 0,
|
param2 = 0,
|
||||||
})
|
})
|
||||||
|
|
||||||
|
@ -4163,8 +4163,8 @@ local function register_dimension_decorations()
|
||||||
biomes = {"WarpedForest"},
|
biomes = {"WarpedForest"},
|
||||||
y_min = mcl_vars.mg_lava_nether_max + 1,
|
y_min = mcl_vars.mg_lava_nether_max + 1,
|
||||||
flags = "all_floors",
|
flags = "all_floors",
|
||||||
height = 3,
|
height = 2,
|
||||||
max_height = 5,
|
height_max = 8,
|
||||||
decoration = "mcl_crimson:twisting_vines",
|
decoration = "mcl_crimson:twisting_vines",
|
||||||
})
|
})
|
||||||
minetest.register_decoration({
|
minetest.register_decoration({
|
||||||
|
|
|
@ -10,6 +10,13 @@ local adjacents = {
|
||||||
vector.new(0,-1,0)
|
vector.new(0,-1,0)
|
||||||
}
|
}
|
||||||
|
|
||||||
|
local plane_adjacents = {
|
||||||
|
vector.new(1,0,0),
|
||||||
|
vector.new(-1,0,0),
|
||||||
|
vector.new(0,0,1),
|
||||||
|
vector.new(0,0,-1),
|
||||||
|
}
|
||||||
|
|
||||||
local function set_node_no_bedrock(pos,node)
|
local function set_node_no_bedrock(pos,node)
|
||||||
local n = minetest.get_node(pos)
|
local n = minetest.get_node(pos)
|
||||||
if n.name == "mcl_core:bedrock" then return end
|
if n.name == "mcl_core:bedrock" then return end
|
||||||
|
@ -92,7 +99,7 @@ mcl_structures.register_structure("water_lake",{
|
||||||
offset = 0,
|
offset = 0,
|
||||||
scale = 0.000032,
|
scale = 0.000032,
|
||||||
spread = {x = 250, y = 250, z = 250},
|
spread = {x = 250, y = 250, z = 250},
|
||||||
seed = 734341353,
|
seed = 756641353,
|
||||||
octaves = 3,
|
octaves = 3,
|
||||||
persist = 0.001,
|
persist = 0.001,
|
||||||
flags = "absvalue",
|
flags = "absvalue",
|
||||||
|
@ -112,9 +119,9 @@ mcl_structures.register_structure("basalt_column",{
|
||||||
num_spawn_by = 2,
|
num_spawn_by = 2,
|
||||||
noise_params = {
|
noise_params = {
|
||||||
offset = 0,
|
offset = 0,
|
||||||
scale = 0.01,
|
scale = 0.02,
|
||||||
spread = {x = 250, y = 250, z = 250},
|
spread = {x = 250, y = 250, z = 250},
|
||||||
seed = 78375213,
|
seed = 7225213,
|
||||||
octaves = 5,
|
octaves = 5,
|
||||||
persist = 0.1,
|
persist = 0.1,
|
||||||
flags = "absvalue",
|
flags = "absvalue",
|
||||||
|
@ -130,16 +137,50 @@ mcl_structures.register_structure("basalt_column",{
|
||||||
end)
|
end)
|
||||||
if #nn < 1 then return false end
|
if #nn < 1 then return false end
|
||||||
for i=1,pr:next(1,#nn) do
|
for i=1,pr:next(1,#nn) do
|
||||||
local dst=vector.distance(pos,nn[i])
|
if minetest.get_node(vector.offset(nn[i],0,-1,0)).name ~= "air" then
|
||||||
for ii=0,pr:next(1,15)-dst do
|
local dst=vector.distance(pos,nn[i])
|
||||||
set_node_no_bedrock(vector.new(nn[i].x,nn[i].y + ii,nn[i].z),{name="mcl_blackstone:basalt"})
|
for ii=0,pr:next(2,14)-dst do
|
||||||
|
set_node_no_bedrock(vector.new(nn[i].x,nn[i].y + ii,nn[i].z),{name="mcl_blackstone:basalt"})
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
||||||
|
return true
|
||||||
|
end
|
||||||
|
})
|
||||||
|
mcl_structures.register_structure("basalt_pillar",{
|
||||||
|
place_on = {"mcl_blackstone:blackstone","mcl_blackstone:basalt"},
|
||||||
|
noise_params = {
|
||||||
|
offset = 0,
|
||||||
|
scale = 0.001,
|
||||||
|
spread = {x = 250, y = 250, z = 250},
|
||||||
|
seed = 783213,
|
||||||
|
octaves = 5,
|
||||||
|
persist = 0.1,
|
||||||
|
flags = "absvalue",
|
||||||
|
},
|
||||||
|
flags = "all_floors",
|
||||||
|
y_max = mcl_vars.mg_nether_max,
|
||||||
|
y_min = mcl_vars.mg_lava_nether_max + 1,
|
||||||
|
biomes = { "BasaltDelta" },
|
||||||
|
place_func = function(pos,def,pr)
|
||||||
|
local nn = minetest.find_nodes_in_area(vector.offset(pos,-2,-1,-2),vector.offset(pos,2,-1,2),{"air","mcl_blackstone:basalt","mcl_blackstone:blackstone"})
|
||||||
|
table.sort(nn,function(a, b)
|
||||||
|
return vector.distance(vector.new(pos.x,0,pos.z), a) < vector.distance(vector.new(pos.x,0,pos.z), b)
|
||||||
|
end)
|
||||||
|
if #nn < 1 then return false end
|
||||||
|
for i=1,pr:next(1,#nn) do
|
||||||
|
if minetest.get_node(vector.offset(nn[i],0,-1,0)).name ~= "air" then
|
||||||
|
local dst=vector.distance(pos,nn[i])
|
||||||
|
for ii=0,pr:next(19,34)-dst do
|
||||||
|
set_node_no_bedrock(vector.new(nn[i].x,nn[i].y + ii,nn[i].z),{name="mcl_blackstone:basalt"})
|
||||||
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
return true
|
return true
|
||||||
end
|
end
|
||||||
})
|
})
|
||||||
|
|
||||||
mcl_structures.register_structure("netherlavapool",{
|
mcl_structures.register_structure("lavadelta",{
|
||||||
place_on = {"mcl_blackstone:blackstone","mcl_blackstone:basalt"},
|
place_on = {"mcl_blackstone:blackstone","mcl_blackstone:basalt"},
|
||||||
spawn_by = {"mcl_blackstone:basalt","mcl_blackstone:blackstone"},
|
spawn_by = {"mcl_blackstone:basalt","mcl_blackstone:blackstone"},
|
||||||
num_spawn_by = 2,
|
num_spawn_by = 2,
|
||||||
|
@ -157,7 +198,7 @@ mcl_structures.register_structure("netherlavapool",{
|
||||||
y_min = mcl_vars.mg_lava_nether_max + 1,
|
y_min = mcl_vars.mg_lava_nether_max + 1,
|
||||||
biomes = { "BasaltDelta" },
|
biomes = { "BasaltDelta" },
|
||||||
place_func = function(pos,def,pr)
|
place_func = function(pos,def,pr)
|
||||||
local nn = minetest.find_nodes_in_area(vector.offset(pos,-15,-1,-15),vector.offset(pos,15,-1,15),{"mcl_blackstone:basalt","mcl_blackstone:blackstone"})
|
local nn = minetest.find_nodes_in_area_under_air(vector.offset(pos,-10,-1,-10),vector.offset(pos,10,-1,10),{"mcl_blackstone:basalt","mcl_blackstone:blackstone"})
|
||||||
table.sort(nn,function(a, b)
|
table.sort(nn,function(a, b)
|
||||||
return vector.distance(vector.new(pos.x,0,pos.z), a) < vector.distance(vector.new(pos.x,0,pos.z), b)
|
return vector.distance(vector.new(pos.x,0,pos.z), a) < vector.distance(vector.new(pos.x,0,pos.z), b)
|
||||||
end)
|
end)
|
||||||
|
|
Loading…
Reference in a new issue