hives spread out 20 blocks apart but wont be placed if competing hive nearby

This commit is contained in:
tenplus1 2021-03-07 08:26:49 +00:00
parent 08cb1f1995
commit 3e8a2d6b19
2 changed files with 13 additions and 5 deletions

View File

@ -691,16 +691,23 @@ minetest.register_abm({
minetest.register_abm({
nodenames = {"group:leaves"},
neighbors = {"air"},
interval = 800,
chance = 10,
interval = 300,
chance = 4,
action = function(pos)
if floor(pos.x / 40) ~= pos.x / 40
or floor(pos.z / 40) ~= pos.z / 40
or floor(pos.y / 5) ~= pos.y / 5 then return end
if floor(pos.x / 20) ~= pos.x / 20
or floor(pos.z / 20) ~= pos.z / 20
or floor(pos.y / 3) ~= pos.y / 3 then return end
local p = {x = pos.x, y = pos.y - 1, z = pos.z}
-- skip if nearby hive found
if minetest.find_node_near(p, 25, {"bees:hive_artificial", "bees:hive_wild",
"bees:hive_industrial"}) then
return
end
local nod = minetest.get_node_or_nil(p)
local def = nod and minetest.registered_nodes[nod.name]

View File

@ -14,6 +14,7 @@ FEATURES
- Make wild hive abm less intensive (thanks VanessaE)
- Added 9x Lucky Blocks
- Smokers have 200 uses before breaking
- Hives are spread out 20 blocks apart, 3 high and only spawn when no other hives around
2.2.2
- Pipeworks compatibility (Industrial beehive)