SPIGOT-2000: Picking up items to shield slot working inconsistently when inventory is full

By: PurkkaKoodari <purkka@purkka.codes>
This commit is contained in:
CraftBukkit/Spigot
2019-06-06 01:32:32 +03:00
parent 223b5e4c95
commit 672c7bfa97
3 changed files with 26 additions and 0 deletions

View File

@@ -56,5 +56,22 @@ public class PlayerInventoryTest extends AbstractTestingBase {
assertEquals(1, inventory.canHold(itemStack1Coal));
assertEquals(2, inventory.canHold(itemStack32Coal));
assertEquals(2, inventory.canHold(itemStack64Coal));
// free space for 32 items in non-empty off-hand slot
inventory.setItem(inventory.items.size() - 1, itemStackApple);
inventory.setItem(inventory.items.size() - 2, itemStackApple);
inventory.setItem(inventory.items.size() + inventory.armor.size(), itemStack32Coal);
assertEquals(1, inventory.canHold(itemStack1Coal));
assertEquals(32, inventory.canHold(itemStack32Coal));
assertEquals(32, inventory.canHold(itemStack64Coal));
// free space for 1 item in non-empty off-hand slot and another slot
inventory.setItem(inventory.items.size() - 1, itemStack63Coal);
inventory.setItem(inventory.items.size() + inventory.armor.size(), itemStack63Coal);
assertEquals(1, inventory.canHold(itemStack1Coal));
assertEquals(2, inventory.canHold(itemStack32Coal));
assertEquals(2, inventory.canHold(itemStack64Coal));
}
}