Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- public static void removeItemStack(Player player, ItemStack item, int amount) {
- Inventory inventory = player.getInventory();
- Iterator<Slot> slotIterator = inventory.<Slot>slots().iterator();
- while (slotIterator.hasNext() && amount > 0) {
- Slot slot = slotIterator.next();
- Optional<ItemStack> optionalInventoryItem = slot.peek();
- if (optionalInventoryItem.isPresent()) {
- ItemStack inventoryItem = optionalInventoryItem.get();
- if (ItemStackComparators.IGNORE_SIZE.compare(inventoryItem, item) == 0) {
- int itemQuantity = inventoryItem.getQuantity();
- if (itemQuantity > amount) {
- item.setQuantity(itemQuantity - amount);
- slot.set(item);
- amount = 0;
- } else {
- slot.set(ItemStack.of(ItemTypes.NONE, amount));
- amount -= itemQuantity;
- }
- }
- }
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement