From f80cbb1079de635fef5cc61d17449e6c4913a406 Mon Sep 17 00:00:00 2001 From: HybridDog Date: Thu, 28 May 2015 10:52:47 +0200 Subject: [PATCH] :cat2: --- mapgen.lua | 26 ++++++++++++++------------ 1 file changed, 14 insertions(+), 12 deletions(-) diff --git a/mapgen.lua b/mapgen.lua index 14a11d2..0bf2a25 100644 --- a/mapgen.lua +++ b/mapgen.lua @@ -106,6 +106,9 @@ minetest.register_on_generated(function(minp, maxp, seed) break end end + if biome_allowed then + break + end end if not biome_allowed then return @@ -189,21 +192,20 @@ minetest.register_on_generated(function(minp, maxp, seed) if in_biome then - for b = minp.y,maxp.y,1 do --remove usual stuff - local p_pos = area:index(x, b, z) - local d_p_pos = data[p_pos] - for _,nam in ipairs(c.USUAL_STUFF) do - if d_p_pos == nam then - data[p_pos] = c.air - break - end - end - end - local ground_y = nil --Definition des Bodens: -- for y=maxp.y,0,-1 do for y=maxp.y,1,-1 do - if find_ground(data[area:index(x, y, z)], c.GROUND) then + local p_pos = area:index(x, y, z) + local d_p_pos = data[p_pos] + for _,nam in pairs(c.USUAL_STUFF) do --remove usual stuff + if d_p_pos == nam then + data[p_pos] = c.air + p_pos = nil + break + end + end + if p_pos --else search ground_y + and find_ground(d_p_pos, c.GROUND) then ground_y = y break end