aboutsummaryrefslogtreecommitdiffhomepage
path: root/patches/server/0416-Don-t-require-FACING-data.patch
diff options
context:
space:
mode:
Diffstat (limited to 'patches/server/0416-Don-t-require-FACING-data.patch')
-rw-r--r--patches/server/0416-Don-t-require-FACING-data.patch37
1 files changed, 37 insertions, 0 deletions
diff --git a/patches/server/0416-Don-t-require-FACING-data.patch b/patches/server/0416-Don-t-require-FACING-data.patch
new file mode 100644
index 0000000000..98d0ef923f
--- /dev/null
+++ b/patches/server/0416-Don-t-require-FACING-data.patch
@@ -0,0 +1,37 @@
+From 0000000000000000000000000000000000000000 Mon Sep 17 00:00:00 2001
+From: Mariell Hoversholm <[email protected]>
+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 f25e28098df0a21fd1ae55f5527cddcef9a36b0d..f28705547a62da790f5df071400986aacba39367 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
+
+ // CraftBukkit start
+ private boolean dropper;
+@@ -27,15 +28,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);
+