diff --git a/abms.lua b/abms.lua index 0e7f612..c628180 100644 --- a/abms.lua +++ b/abms.lua @@ -330,40 +330,24 @@ minetest.register_abm({ end }) +if false then minetest.register_abm({ - nodenames = {"fun_caves:casket"}, - interval = 2, - chance = 10, - catch_up = false, - action = function(pos, node, aoc, active_object_count_wider) - -- do not spawn if too many active entities in area - if active_object_count_wider > 5 then - return - end - - local meta = minetest.get_meta(pos) - local ready = meta:get_string('formspec') - if ready ~= '' then - return - end - - local objs = minetest.get_objects_inside_radius(pos, 7) - for i = 1, #objs do - if objs[i]:is_player() then - local p1 = vector.subtract(pos, 3) - local p2 = vector.add(pos, 3) - local nodes = minetest.find_nodes_in_area_under_air(p1, p2, {'fun_caves:pyramid_1'}) - if nodes and #nodes > 0 then - if math.random(3) == 1 then - minetest.add_entity(nodes[math.random(#nodes)], 'mobs_monster:stone_monster') - else - minetest.add_entity(nodes[math.random(#nodes)], 'fun_caves:sand_monster') - end - end + nodenames = {"fun_caves:pyramid_1"}, + interval = 1, + chance = 1, + action = function(pos, node) + local p = table.copy(pos) + for i = 1, 20 do + p.y = p.y + 1 + local node = minetest.get_node_or_nil(p) + if not node or node.name ~= 'air' then + return end end + minetest.set_node(pos, {name = 'default:sandstone'}) end }) +end local no_tree_grow = {'fun_caves:bark', 'fun_caves:leaves'} local wood_nodes = {{name = 'fun_caves:diamondwood'}, {name = 'fun_caves:ironwood'}, {name = 'fun_caves:sap'}, {name = 'fun_caves:tree'}} diff --git a/mobs.lua b/mobs.lua index 1bc44ea..291758b 100644 --- a/mobs.lua +++ b/mobs.lua @@ -629,6 +629,12 @@ if minetest.registered_entities["mobs_monster:sand_monster"] then mobs:register_spawn("fun_caves:sand_monster", {"default:sand"}, 20, 0, 4000, 3, -50) mobs:register_egg("fun_caves:sand_monster", "Deep Sand Monster", "default_sand.png", 1) + + mobs:register_spawn("fun_caves:sand_monster", {"fun_caves:pyramid_1"}, 20, 0, 150, 5, 31000) +end + +if minetest.registered_entities["mobs_monster:stone_monster"] then + mobs:register_spawn("mobs_monster:stone_monster", {"fun_caves:pyramid_1"}, 20, 0, 300, 5, 31000) end -- Change the original, rather than making a copy.