SPIGOT-4556: Fix plugins closing inventory during drop events

This commit is contained in:
md_5 2018-12-31 10:13:02 +11:00
parent 5be2ddcbd5
commit c4a67eed99

View File

@ -126,7 +126,20 @@
} }
} }
} else if (inventoryclicktype == InventoryClickType.SWAP && j >= 0 && j < 9) { } else if (inventoryclicktype == InventoryClickType.SWAP && j >= 0 && j < 9) {
@@ -565,6 +637,7 @@ @@ -356,8 +428,11 @@
PlayerInventory playerinventory = entityhuman.inventory;
if (!playerinventory.getCarried().isEmpty()) {
- entityhuman.drop(playerinventory.getCarried(), false);
+ // CraftBukkit start - SPIGOT-4556
+ ItemStack carried = playerinventory.getCarried();
playerinventory.setCarried(ItemStack.a);
+ entityhuman.drop(carried, false);
+ // CraftBukkit end
}
}
@@ -565,6 +640,7 @@
if (inventorycraftresult.a(world, entityplayer, irecipe) && irecipe != null) { if (inventorycraftresult.a(world, entityplayer, irecipe) && irecipe != null) {
itemstack = irecipe.craftItem(iinventory); itemstack = irecipe.craftItem(iinventory);
} }