allow multiple overlapping planets

master
NatureFreshMilk 2019-06-25 14:47:23 +02:00
parent b6f809316a
commit baf691a10f
1 changed files with 10 additions and 17 deletions

View File

@ -15,6 +15,9 @@ end
minetest.register_on_generated(function(minp, maxp, seed)
local t0 = minetest.get_us_time()
-- search for a planet in range
local planet
for _, pos in ipairs(get_corners(minp, maxp)) do
@ -22,27 +25,17 @@ minetest.register_on_generated(function(minp, maxp, seed)
local distance = vector.distance(pos, p.pos)
if distance < p.radius then
planet = p
-- planet in range
local planetgenfn = planetoidgen.planettypes[planet.type]
if not planetgenfn then
minetest.log("warning", "[planetoidgen] generator not found for type: " .. planet.type)
else
planetgenfn(planet, minp, maxp, seed)
end
end
end
end
-- check if a planet is defined here
if not planet then
return
end
local planetgenfn = planetoidgen.planettypes[planet.type]
if not planetgenfn then
minetest.log("warning", "[planetoidgen] generator not found for type: " .. planet.type)
return
end
local t0 = minetest.get_us_time()
planetgenfn(planet, minp, maxp, seed)
local t1 = minetest.get_us_time()
local micros = t1 -t0