From b8724822b6c73333db4437b4834e9afba0436daa Mon Sep 17 00:00:00 2001 From: Auke Kok Date: Thu, 10 Mar 2016 13:00:03 -0800 Subject: [PATCH] Make the flame with a nodetimer instead. This is more robust, and won't remove other nodes placed at the same pos accidentally. --- init.lua | 15 +++++---------- 1 file changed, 5 insertions(+), 10 deletions(-) diff --git a/init.lua b/init.lua index 7c71ead..c14c96e 100644 --- a/init.lua +++ b/init.lua @@ -187,20 +187,15 @@ minetest.register_node("lightning:dying_flame", { sunlight_propagates = true, damage_per_second = 4, groups = {dig_immediate = 3}, + on_timer = function(pos) + minetest.remove_node(pos) + end, drop = "", on_construct = function(pos) - minetest.after(0, fire.on_flame_add_at, pos) - minetest.after(rng:next(20, 40), minetest.remove_node, pos) + minetest.get_node_timer(pos):start(rng:next(20, 40)) + minetest.after(0.5, fire.on_flame_add_at, pos) end, - - on_destruct = function(pos) - minetest.after(0, fire.on_flame_remove_at, pos) - minetest.after(rng:next(20, 40), minetest.remove_node, pos) - end, - - on_blast = function() - end, -- unaffected by explosions })