flowers: Light check optimisation in mushroom spread

This commit is contained in:
HybridDog 2019-03-31 23:20:28 +02:00 committed by Paramat
parent 88d79881b8
commit b20725026e
1 changed files with 5 additions and 4 deletions

View File

@ -221,8 +221,10 @@ minetest.register_node("flowers:mushroom_brown", {
-- Mushroom spread and death
function flowers.mushroom_spread(pos, node)
if minetest.get_node_light(pos, nil) == 15 then
minetest.remove_node(pos)
if minetest.get_node_light(pos, 0.5) > 3 then
if minetest.get_node_light(pos, nil) == 15 then
minetest.remove_node(pos)
end
return
end
local positions = minetest.find_nodes_in_area_under_air(
@ -234,8 +236,7 @@ function flowers.mushroom_spread(pos, node)
end
local pos2 = positions[math.random(#positions)]
pos2.y = pos2.y + 1
if minetest.get_node_light(pos, 0.5) <= 3 and
minetest.get_node_light(pos2, 0.5) <= 3 then
if minetest.get_node_light(pos2, 0.5) <= 3 then
minetest.set_node(pos2, {name = node.name})
end
end