From 5c0b8ad4ee0045477c67c6d6e37ae77bffaf4972 Mon Sep 17 00:00:00 2001 From: BlackHole Date: Tue, 16 Jul 2013 22:34:50 +0200 Subject: [PATCH] Call EntityChangeBlockEvent for Fire Arrows hitting TNT Adds BUKKIT-4355 diff --git a/src/main/java/net/minecraft/server/BlockTNT.java b/src/main/java/net/minecraft/server/BlockTNT.java index 9acd4f2..312b4c8 100644 --- a/src/main/java/net/minecraft/server/BlockTNT.java +++ b/src/main/java/net/minecraft/server/BlockTNT.java @@ -54,7 +54,7 @@ public class BlockTNT extends Block { public boolean interact(World world, int i, int j, int k, EntityHuman entityhuman, int l, float f, float f1, float f2) { if (entityhuman.by() != null && entityhuman.by().id == Item.FLINT_AND_STEEL.id) { - this.a(world, i, j, k, 1, entityhuman); + this.a(world, i, j, k, 1, (EntityLiving) entityhuman); // Spigot - Fix decompile error! world.setAir(i, j, k); entityhuman.by().damage(1, entityhuman); return true; @@ -68,6 +68,11 @@ public class BlockTNT extends Block { EntityArrow entityarrow = (EntityArrow) entity; if (entityarrow.isBurning()) { + // CraftBukkit start + if (org.bukkit.craftbukkit.event.CraftEventFactory.callEntityChangeBlockEvent(entityarrow, i, j, k, 0, 0).isCancelled()) { + return; + } + // CraftBukkit end this.a(world, i, j, k, 1, entityarrow.shooter instanceof EntityLiving ? (EntityLiving) entityarrow.shooter : null); world.setAir(i, j, k); } -- 1.8.1.2