TNT: Only burn visually connected powder (#1857)
authorSmallJoker <SmallJoker@users.noreply.github.com>
Sat, 29 Jul 2017 16:09:15 +0000 (18:09 +0200)
committerGitHub <noreply@github.com>
Sat, 29 Jul 2017 16:09:15 +0000 (18:09 +0200)
mods/tnt/init.lua

index 5500d6419a0923145ef7062b5de772347666f970..606ab6afe9b7d3cfb753208faa7e85dbe9664f38 100644 (file)
@@ -513,17 +513,17 @@ minetest.register_node("tnt:gunpowder_burning", {
        on_timer = function(pos, elapsed)
                for dx = -1, 1 do
                for dz = -1, 1 do
-               for dy = -1, 1 do
-                       if not (dx == 0 and dz == 0) then
-                               tnt.burn({
-                                       x = pos.x + dx,
-                                       y = pos.y + dy,
-                                       z = pos.z + dz,
-                               })
+                       if math.abs(dx) + math.abs(dz) == 1 then
+                               for dy = -1, 1 do
+                                       tnt.burn({
+                                               x = pos.x + dx,
+                                               y = pos.y + dy,
+                                               z = pos.z + dz,
+                                       })
+                               end
                        end
                end
                end
-               end
                minetest.remove_node(pos)
        end,
        -- unaffected by explosions