--- ../work/decompile-bb26c12b/net/minecraft/server/BlockDispenser.java 2014-11-27 08:59:46.521422639 +1100 +++ src/main/java/net/minecraft/server/BlockDispenser.java 2014-11-27 08:42:10.084851043 +1100 @@ -8,6 +8,7 @@ public static final BlockStateBoolean TRIGGERED = BlockStateBoolean.of("triggered"); public static final RegistryDefault M = new RegistryDefault(new DispenseBehaviorItem()); protected Random N = new Random(); + public static boolean eventFired = false; // CraftBukkit protected BlockDispenser() { super(Material.STONE); @@ -78,6 +79,7 @@ if (idispensebehavior != IDispenseBehavior.a) { ItemStack itemstack1 = idispensebehavior.a(sourceblock, itemstack); + eventFired = false; // CraftBukkit - reset event status tileentitydispenser.setItem(i, itemstack1.count == 0 ? null : itemstack1); }