Paper/Spigot-Server-Patches/0162-Remove-the-item-from-the-correct-hand-when-spawn-egg.patch
Aikar 3faaaab75d Optimize isInvalidYLocation, getType and getBlockData
Some pretty micro optimizations, but this is the hottest method in the server....

This will drastically reduce number of operations to perform getType

the 2 previous patches was squashed into 1
2016-06-22 22:43:02 -04:00

35 lines
1.7 KiB
Diff

From 309155e60dfea8ae854c916ea11bac7420f07cf1 Mon Sep 17 00:00:00 2001
From: Aikar <aikar@aikar.co>
Date: Sat, 18 Jun 2016 01:49:22 -0400
Subject: [PATCH] Remove the item from the correct hand when spawn egg depletes
diff --git a/src/main/java/net/minecraft/server/EntityAgeable.java b/src/main/java/net/minecraft/server/EntityAgeable.java
index 6092346..c1e9cbf 100644
--- a/src/main/java/net/minecraft/server/EntityAgeable.java
+++ b/src/main/java/net/minecraft/server/EntityAgeable.java
@@ -63,7 +63,7 @@ public abstract class EntityAgeable extends EntityCreature {
--itemstack.count;
// CraftBukkit start - allow less than 0 stacks as "infinite"
if (itemstack.count == 0) {
- entityhuman.inventory.setItem(entityhuman.inventory.itemInHandIndex, (ItemStack) null);
+ entityhuman.setHeldItem(enumhand, null); // Paper
}
// CraftBukkit end
}
diff --git a/src/main/java/net/minecraft/server/EntityLiving.java b/src/main/java/net/minecraft/server/EntityLiving.java
index 22333ea..4e424aa 100644
--- a/src/main/java/net/minecraft/server/EntityLiving.java
+++ b/src/main/java/net/minecraft/server/EntityLiving.java
@@ -1407,6 +1407,7 @@ public abstract class EntityLiving extends Entity {
}
}
+ public void setHeldItem(EnumHand enumhand, @Nullable ItemStack itemstack) { a(enumhand, itemstack); } // Paper // OBFHELPER
public void a(EnumHand enumhand, @Nullable ItemStack itemstack) {
if (enumhand == EnumHand.MAIN_HAND) {
this.setSlot(EnumItemSlot.MAINHAND, itemstack);
--
2.9.0