Add pyramids.
Needs more monsters.
This commit is contained in:
parent
6bea364511
commit
c2ac5a93be
4 changed files with 167 additions and 10 deletions
27
mapgen.lua
27
mapgen.lua
|
@ -364,7 +364,7 @@ local function generate(p_minp, p_maxp, seed)
|
|||
math.randomseed(minetest.get_perlin(seed_noise):get2d({x=minp.x, y=minp.z}))
|
||||
|
||||
local write = false
|
||||
local write_p2 = false
|
||||
local write_p2, write_p4 = false, false
|
||||
local underzone
|
||||
for _, uz in pairs(fun_caves.underzones) do
|
||||
local avg = (minp.y + maxp.y) / 2
|
||||
|
@ -374,6 +374,7 @@ local function generate(p_minp, p_maxp, seed)
|
|||
end
|
||||
|
||||
local aster = false
|
||||
local true_casket
|
||||
if minp.y > 17200 then
|
||||
-- nop
|
||||
elseif minp.y > 11000 then
|
||||
|
@ -388,21 +389,29 @@ local function generate(p_minp, p_maxp, seed)
|
|||
fun_caves.fortress(minp, maxp, data, area, node)
|
||||
write = true
|
||||
else
|
||||
local write1, write2, write3, h2
|
||||
local write1, write2, write3, write4, h2
|
||||
write1, h2 = fun_caves.cavegen(minp, maxp, data, area, node, heightmap, underzone)
|
||||
if h2 then
|
||||
heightmap = h2
|
||||
end
|
||||
|
||||
write2, write_p2 = fun_caves.decogen(minp, maxp, data, p2data, area, node, heightmap, biome_ids, underzone)
|
||||
local biomemap
|
||||
if fun_caves.use_bi_hi then
|
||||
biomemap = minetest.get_mapgen_object("biomemap")
|
||||
end
|
||||
|
||||
write2, write_p2 = fun_caves.decogen(minp, maxp, data, p2data, area, node, heightmap, biomemap, biome_ids, underzone)
|
||||
write3 = fun_caves.treegen(minp, maxp, data, p2data, area, node)
|
||||
write = write1 or write2 or write3
|
||||
if not write3 then
|
||||
write4, write_p4, true_casket = fun_caves.pyramid(minp, maxp, data, p2data, area, biomemap, biome_ids, node, heightmap)
|
||||
end
|
||||
write = write1 or write2 or write3 or write4
|
||||
end
|
||||
|
||||
|
||||
if write then
|
||||
vm:set_data(data)
|
||||
if write_p2 then
|
||||
if write_p2 or write_p4 then
|
||||
vm:set_param2_data(p2data)
|
||||
end
|
||||
|
||||
|
@ -418,6 +427,13 @@ local function generate(p_minp, p_maxp, seed)
|
|||
end
|
||||
vm:update_liquids()
|
||||
vm:write_to_map()
|
||||
|
||||
if true_casket then
|
||||
vm:update_map()
|
||||
local meta = minetest.get_meta(true_casket)
|
||||
local id = meta:set_string('true', 'true')
|
||||
--print('* True casket at '..minetest.pos_to_string(true_casket))
|
||||
end
|
||||
end
|
||||
|
||||
-- Deal with memory issues. This, of course, is supposed to be automatic.
|
||||
|
@ -435,6 +451,7 @@ dofile(fun_caves.path .. "/cavegen.lua")
|
|||
dofile(fun_caves.path .. "/cloudgen.lua")
|
||||
dofile(fun_caves.path .. "/decogen.lua")
|
||||
dofile(fun_caves.path .. "/fortress.lua")
|
||||
dofile(fun_caves.path .. "/pyramid.lua")
|
||||
dofile(fun_caves.path .. "/treegen.lua")
|
||||
dofile(fun_caves.path .. "/skyseagen.lua")
|
||||
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue