diff options
Diffstat (limited to 'src/main/java/net/minecraft/server/PlayerInventory.java')
-rw-r--r-- | src/main/java/net/minecraft/server/PlayerInventory.java | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/src/main/java/net/minecraft/server/PlayerInventory.java b/src/main/java/net/minecraft/server/PlayerInventory.java index e0f0914a..decdc49a 100644 --- a/src/main/java/net/minecraft/server/PlayerInventory.java +++ b/src/main/java/net/minecraft/server/PlayerInventory.java @@ -43,7 +43,7 @@ public class PlayerInventory implements IInventory { private int firstPartial(ItemStack itemstack) { for (int i = 0; i < this.items.length; ++i) { - if (this.items[i] != null && this.items[i].id == itemstack.id && this.items[i].isStackable() && this.items[i].count < this.items[i].getMaxStackSize() && this.items[i].count < this.getMaxStackSize() && (!this.items[i].usesData() || this.items[i].getData() == itemstack.getData())) { + if (this.items[i] != null && this.items[i].id == itemstack.id && this.items[i].isStackable() && this.items[i].count < this.items[i].getMaxStackSize() && this.items[i].count < this.getMaxStackSize() && (!this.items[i].usesData() || this.items[i].getData() == itemstack.getData()) && ItemStack.equals(this.items[i], itemstack)) { return i; } } @@ -104,6 +104,9 @@ public class PlayerInventory implements IInventory { } else { if (this.items[k] == null) { this.items[k] = new ItemStack(i, 0, itemstack.getData()); + if (itemstack.hasTag()) { + this.items[k].setTag((NBTTagCompound) itemstack.getTag().clone()); + } } int l = j; |