From 1f1a1e81ddef3d9b7be555ce7f428866743dea57 Mon Sep 17 00:00:00 2001 From: Fernando Carmona Varo Date: Sun, 13 Nov 2016 16:08:07 +0100 Subject: [PATCH] TNT: Gunpowder (and tnt.burn) will trigger the on_ignite of nodes The previous behaviour is kept as fallback for compatibility, for when the on_ignite is not defined in the node. --- init.lua | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/init.lua b/init.lua index 9870f89..e5ad5b1 100644 --- a/init.lua +++ b/init.lua @@ -260,13 +260,15 @@ end function tnt.burn(pos, nodename) local name = nodename or minetest.get_node(pos).name - local group = minetest.get_item_group(name, "tnt") - if group > 0 then + local def = minetest.registered_nodes[name] + if not def then + return + elseif def.on_ignite then + def.on_ignite(pos) + elseif minetest.get_item_group(name, "tnt") > 0 then minetest.sound_play("tnt_ignite", {pos = pos}) minetest.set_node(pos, {name = name .. "_burning"}) minetest.get_node_timer(pos):start(1) - elseif name == "tnt:gunpowder" then - minetest.set_node(pos, {name = "tnt:gunpowder_burning"}) end end