mirror of
https://git.minetest.land/VoxeLibre/VoxeLibre.git
synced 2024-12-23 00:19:32 +01:00
Generate igloos on snow blocks
This commit is contained in:
parent
24ed86f18c
commit
9c22df853d
2 changed files with 11 additions and 1 deletions
|
@ -891,6 +891,7 @@ local perlin
|
||||||
minetest.register_on_generated(function(minp, maxp, seed)
|
minetest.register_on_generated(function(minp, maxp, seed)
|
||||||
local chunk_has_desert_well = false
|
local chunk_has_desert_well = false
|
||||||
local chunk_has_desert_temple = false
|
local chunk_has_desert_temple = false
|
||||||
|
local chunk_has_igloo = false
|
||||||
if maxp.y >= 2 and minp.y <= 0 then
|
if maxp.y >= 2 and minp.y <= 0 then
|
||||||
-- Generate clay
|
-- Generate clay
|
||||||
-- Assume X and Z lengths are equal
|
-- Assume X and Z lengths are equal
|
||||||
|
@ -988,6 +989,15 @@ minetest.register_on_generated(function(minp, maxp, seed)
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
elseif not chunk_has_igloo and nn == "mcl_core:snowblock" then
|
||||||
|
if math.random(1, 4400) == 1 then
|
||||||
|
-- Check surface
|
||||||
|
local surface = minetest.find_nodes_in_area({x=p.x,y=p.y-1,z=p.z}, {x=p.x+9, y=p.y-1, z=p.z+9}, "mcl_core:snowblock")
|
||||||
|
if #surface >= 63 then
|
||||||
|
mcl_structures.call_struct(p, "igloo")
|
||||||
|
chunk_has_igloo = true
|
||||||
|
end
|
||||||
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
|
@ -171,7 +171,7 @@ end
|
||||||
mcl_structures.generate_igloo_top = function(pos)
|
mcl_structures.generate_igloo_top = function(pos)
|
||||||
-- FIXME: This spawns bookshelf instead of furnace. Fix this!
|
-- FIXME: This spawns bookshelf instead of furnace. Fix this!
|
||||||
-- Furnace does ot work atm because apparently meta is not set. :-(
|
-- Furnace does ot work atm because apparently meta is not set. :-(
|
||||||
local newpos = {x=pos.x,y=pos.y-2,z=pos.z}
|
local newpos = {x=pos.x,y=pos.y-1,z=pos.z}
|
||||||
local path = minetest.get_modpath("mcl_structures").."/build/igloo_top.mts"
|
local path = minetest.get_modpath("mcl_structures").."/build/igloo_top.mts"
|
||||||
minetest.place_schematic(newpos, path, "random", nil, true)
|
minetest.place_schematic(newpos, path, "random", nil, true)
|
||||||
end
|
end
|
||||||
|
|
Loading…
Reference in a new issue