--- 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 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); }