mirror of
https://github.com/PaperMC/Paper.git
synced 2025-01-31 12:41:25 +01:00
Don't require FACING data
This commit is contained in:
parent
a7e8ccc630
commit
17cde37876
@ -1,6 +1,6 @@
|
|||||||
--- a/net/minecraft/core/dispenser/DefaultDispenseItemBehavior.java
|
--- a/net/minecraft/core/dispenser/DefaultDispenseItemBehavior.java
|
||||||
+++ b/net/minecraft/core/dispenser/DefaultDispenseItemBehavior.java
|
+++ b/net/minecraft/core/dispenser/DefaultDispenseItemBehavior.java
|
||||||
@@ -6,11 +6,25 @@
|
@@ -6,47 +6,114 @@
|
||||||
import net.minecraft.world.item.ItemStack;
|
import net.minecraft.world.item.ItemStack;
|
||||||
import net.minecraft.world.level.Level;
|
import net.minecraft.world.level.Level;
|
||||||
import net.minecraft.world.level.block.DispenserBlock;
|
import net.minecraft.world.level.block.DispenserBlock;
|
||||||
@ -12,6 +12,7 @@
|
|||||||
+// CraftBukkit end
|
+// CraftBukkit end
|
||||||
|
|
||||||
public class DefaultDispenseItemBehavior implements DispenseItemBehavior {
|
public class DefaultDispenseItemBehavior implements DispenseItemBehavior {
|
||||||
|
+ private Direction enumdirection; // Paper - cache facing direction
|
||||||
|
|
||||||
private static final int DEFAULT_ACCURACY = 6;
|
private static final int DEFAULT_ACCURACY = 6;
|
||||||
|
|
||||||
@ -26,7 +27,19 @@
|
|||||||
public DefaultDispenseItemBehavior() {}
|
public DefaultDispenseItemBehavior() {}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@@ -27,26 +41,77 @@
|
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);
|
Position iposition = DispenserBlock.getDispensePosition(pointer);
|
||||||
ItemStack itemstack1 = stack.split(1);
|
ItemStack itemstack1 = stack.split(1);
|
||||||
|
|
||||||
|
Loading…
Reference in New Issue
Block a user