--- a/net/minecraft/server/BlockDispenser.java
+++ b/net/minecraft/server/BlockDispenser.java
@@ -9,6 +9,7 @@
public static final BlockStateBoolean TRIGGERED = BlockStateBoolean.of("triggered");
public static final RegistryDefault<Item, IDispenseBehavior> REGISTRY = new RegistryDefault(new DispenseBehaviorItem());
protected Random d = new Random();
+ public static boolean eventFired = false; // CraftBukkit
protected BlockDispenser() {
super(Material.STONE);
@@ -84,6 +85,7 @@
if (idispensebehavior != IDispenseBehavior.NONE) {
ItemStack itemstack1 = idispensebehavior.a(sourceblock, itemstack);
+ eventFired = false; // CraftBukkit - reset event status
tileentitydispenser.setItem(i, itemstack1.count <= 0 ? null : itemstack1);
}