From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001 From: Mariell Hoversholm Date: Sun, 23 Aug 2020 19:01:04 +0200 Subject: [PATCH] Don't require FACING data diff --git a/src/main/java/net/minecraft/core/dispenser/DefaultDispenseItemBehavior.java b/src/main/java/net/minecraft/core/dispenser/DefaultDispenseItemBehavior.java index c90bce6777d24821758d1830e6c6c6c72e19703f..39c96f5db6e90a470404c6387fa0c1d5531822e5 100644 --- a/src/main/java/net/minecraft/core/dispenser/DefaultDispenseItemBehavior.java +++ b/src/main/java/net/minecraft/core/dispenser/DefaultDispenseItemBehavior.java @@ -14,6 +14,7 @@ import org.bukkit.event.block.BlockDispenseEvent; // CraftBukkit end public class DefaultDispenseItemBehavior implements DispenseItemBehavior { + private Direction enumdirection; // Paper - cache facing direction private static final int DEFAULT_ACCURACY = 6; @@ -29,15 +30,16 @@ public class DefaultDispenseItemBehavior implements DispenseItemBehavior { @Override public final ItemStack dispense(BlockSource pointer, ItemStack stack) { + enumdirection = pointer.state().getValue(DispenserBlock.FACING); // Paper - cache facing direction ItemStack itemstack1 = this.execute(pointer, stack); this.playSound(pointer); - this.playAnimation(pointer, (Direction) pointer.state().getValue(DispenserBlock.FACING)); + this.playAnimation(pointer, enumdirection); // Paper - cache facing direction return itemstack1; } protected ItemStack execute(BlockSource pointer, ItemStack stack) { - Direction enumdirection = (Direction) pointer.state().getValue(DispenserBlock.FACING); + // Paper - cached enum direction Position iposition = DispenserBlock.getDispensePosition(pointer); ItemStack itemstack1 = stack.split(1);