Return the surface world.

This commit is contained in:
Duane Robertson 2016-05-19 22:14:31 -05:00
parent 0ad60d974b
commit 6f25d3c388
2 changed files with 178 additions and 202 deletions

View file

@ -10,64 +10,45 @@ if not mobs or not mobs.mod then
end
--fun_caves.ores = {}
minetest.register_on_mapgen_init(function(mgparams)
minetest.set_mapgen_params({mgname="singlenode", flags="nolight"})
--minetest.set_mapgen_params({mgname="singlenode", flags="nolight"})
minetest.set_mapgen_params({flags="nocaves,nodungeons"})
--local ores = {}
--for id, ore_table in pairs(minetest.registered_ores) do
-- local ore = table.copy(ore_table)
-- local ore2 = table.copy(ore_table)
-- table.insert(fun_caves.ores, ore2)
-- ore.y_min = -31000
-- ore.y_max = 31000
-- table.insert(ores, ore)
-- print(dump(ore))
--end
--minetest.clear_registered_ores()
end)
fun_caves.ores = {}
if default then
if default.register_ores then
default.register_ores()
end
if default.register_blobs then
default.register_blobs()
end
if default.register_biomes then
default.register_biomes()
end
if default.register_decorations then
default.register_decorations()
end
if flowers.register_decorations then
flowers.register_decorations()
end
local ores = {}
for id, ore_table in pairs(minetest.registered_ores) do
local ore = table.copy(ore_table)
local ore2 = table.copy(ore_table)
table.insert(fun_caves.ores, ore2)
ore.y_min = -31000
ore.y_max = 31000
table.insert(ores, ore)
end
minetest.clear_registered_ores()
for _, ore in pairs(ores) do
minetest.register_ore(ore)
end
end
function fun_caves.set_ores(biome)
local ores = fun_caves.ores
--print("generating ores based on biome: "..biome)
local y_factor = (math.abs(biome) - 0.4) * -2000
--print("y_factor: "..y_factor)
minetest.clear_registered_ores()
for id, ore_table in pairs(ores) do
local ore = table.copy(ore_table)
if ore.y_max >= y_factor then
--print("using ore: "..ore.ore..", y_max: "..ore.y_max)
ore.y_min = -31000
ore.y_max = 31000
minetest.register_ore(ore)
end
end
end
--function fun_caves.set_ores(biome, y)
-- local ores = fun_caves.ores
--
-- --print("generating ores based on biome: "..biome)
-- local y_factor = (math.abs(biome) - 0.4) * -2000
-- --print("y_factor: "..y_factor)
--
-- minetest.clear_registered_ores()
-- for id, ore_table in pairs(ores) do
-- local ore = table.copy(ore_table)
-- if ore.y_max >= y_factor and y <= ore.y_max then
-- --if ore.y_max >= y_factor then
-- --print("using ore: "..ore.ore..", y_max: "..ore.y_max)
-- ore.y_min = -31000
-- ore.y_max = 31000
-- minetest.register_ore(ore)
-- end
-- end
--end
-- Check if the table contains an element.
@ -130,12 +111,12 @@ dofile(fun_caves.path .. "/mapgen.lua")
dofile(fun_caves.path .. "/mobs.lua")
minetest.register_on_newplayer(fun_caves.respawn)
minetest.register_on_respawnplayer(fun_caves.respawn)
--minetest.register_on_newplayer(fun_caves.respawn)
--minetest.register_on_respawnplayer(fun_caves.respawn)
-- Inserting helps to ensure that fun_caves operates first.
table.insert(minetest.registered_on_generateds, 1, fun_caves.generate)
minetest.register_on_joinplayer(function(player)
player:set_sky("#000000", "plain", {})
end)
--minetest.register_on_joinplayer(function(player)
-- player:set_sky("#000000", "plain", {})
--end)