Package codechicken.lib.inventory
Class InventoryUtils
java.lang.Object
codechicken.lib.inventory.InventoryUtils
-
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionstatic booleanareStacksIdentical(net.minecraft.world.item.ItemStack stack1, net.minecraft.world.item.ItemStack stack2) static booleancanExtractStack(net.minecraftforge.items.IItemHandler handler, int slot) static booleancanInsertStack(net.minecraftforge.items.IItemHandler handler, int slot, net.minecraft.world.item.ItemStack stack) static booleancanStack(net.minecraft.world.item.ItemStack stack1, net.minecraft.world.item.ItemStack stack2) static voidconsumeItem(net.minecraft.world.Container inv, int slot) Consumes one item from slot in inv with support for containers.static intcountMatchingStacks(net.minecraftforge.items.IItemHandler handler, net.minecraft.world.item.ItemStack filter, boolean insert) Counts the matching stacks.static net.minecraft.world.item.ItemStackdecrStackSize(net.minecraft.world.Container inv, int slot, int size) Static default implementation for IInventory methodstatic voiddropOnClose(net.minecraft.world.entity.player.Player player, net.minecraft.world.Container inv) Drops all items from inv using removeStackFromSlotstatic intfitStackInSlot(InventoryRange inv, int slot, net.minecraft.world.item.ItemStack stack) static intfitStackInSlot(net.minecraft.world.Container inv, int slot, net.minecraft.world.item.ItemStack stack) static net.minecraft.world.item.ItemStackgetExtractableStack(InventoryRange inv, int slot) Gets the stack in slot if it can be extractedstatic net.minecraft.world.item.ItemStackgetExtractableStack(net.minecraft.world.Container inv, int slot) static intgetInsertableQuantity(net.minecraftforge.items.IItemHandler handler, net.minecraft.world.item.ItemStack stack) static intgetInsertibleQuantity(InventoryRange inv, net.minecraft.world.item.ItemStack stack) Gets the maximum quantity of an item that can be inserted into invstatic intgetInsertibleQuantity(net.minecraft.world.Container inv, net.minecraft.world.item.ItemStack stack) static intincrStackSize(net.minecraft.world.item.ItemStack base, int addition) static intincrStackSize(net.minecraft.world.item.ItemStack base, net.minecraft.world.item.ItemStack addition) static intinsertItem(InventoryRange inv, net.minecraft.world.item.ItemStack stack, boolean simulate) static intinsertItem(net.minecraft.world.Container inv, net.minecraft.world.item.ItemStack stack, boolean simulate) static net.minecraft.world.item.ItemStackinsertItem(net.minecraftforge.items.IItemHandler handler, net.minecraft.world.item.ItemStack insert, boolean simulate) static voidreadItemStacksFromTag(net.minecraft.world.item.ItemStack[] items, net.minecraft.nbt.ListTag tagList) NBT item loading function with support for stack sizes > 32Kstatic net.minecraft.world.item.ItemStackremoveStackFromSlot(net.minecraft.world.Container inv, int slot) Static default implementation for IInventory methodstatic intstackSize(net.minecraft.world.Container inv, int slot) Gets the size of the stack in a slot.static net.minecraft.nbt.ListTagwriteItemStacksToTag(net.minecraft.world.item.ItemStack[] items) NBT item saving functionstatic net.minecraft.nbt.ListTagwriteItemStacksToTag(net.minecraft.world.item.ItemStack[] items, int maxQuantity) NBT item saving function with support for stack sizes > 32K
-
Constructor Details
-
InventoryUtils
public InventoryUtils()
-
-
Method Details
-
decrStackSize
@Nonnull public static net.minecraft.world.item.ItemStack decrStackSize(net.minecraft.world.Container inv, int slot, int size) Static default implementation for IInventory method -
removeStackFromSlot
public static net.minecraft.world.item.ItemStack removeStackFromSlot(net.minecraft.world.Container inv, int slot) Static default implementation for IInventory method -
incrStackSize
public static int incrStackSize(@Nonnull net.minecraft.world.item.ItemStack base, @Nonnull net.minecraft.world.item.ItemStack addition) - Returns:
- The quantity of items from addition that can be added to base
-
incrStackSize
public static int incrStackSize(@Nonnull net.minecraft.world.item.ItemStack base, int addition) - Returns:
- The quantity of items from addition that can be added to base
-
writeItemStacksToTag
public static net.minecraft.nbt.ListTag writeItemStacksToTag(net.minecraft.world.item.ItemStack[] items) NBT item saving function -
writeItemStacksToTag
public static net.minecraft.nbt.ListTag writeItemStacksToTag(net.minecraft.world.item.ItemStack[] items, int maxQuantity) NBT item saving function with support for stack sizes > 32K -
readItemStacksFromTag
public static void readItemStacksFromTag(net.minecraft.world.item.ItemStack[] items, net.minecraft.nbt.ListTag tagList) NBT item loading function with support for stack sizes > 32K -
getInsertibleQuantity
public static int getInsertibleQuantity(InventoryRange inv, @Nonnull net.minecraft.world.item.ItemStack stack) Gets the maximum quantity of an item that can be inserted into inv -
getInsertibleQuantity
public static int getInsertibleQuantity(net.minecraft.world.Container inv, @Nonnull net.minecraft.world.item.ItemStack stack) -
fitStackInSlot
public static int fitStackInSlot(InventoryRange inv, int slot, net.minecraft.world.item.ItemStack stack) -
fitStackInSlot
public static int fitStackInSlot(net.minecraft.world.Container inv, int slot, @Nonnull net.minecraft.world.item.ItemStack stack) -
insertItem
public static int insertItem(InventoryRange inv, @Nonnull net.minecraft.world.item.ItemStack stack, boolean simulate) - Parameters:
simulate- If set to true, no items will actually be inserted- Returns:
- The number of items unable to be inserted
-
insertItem
public static int insertItem(net.minecraft.world.Container inv, @Nonnull net.minecraft.world.item.ItemStack stack, boolean simulate) -
getExtractableStack
Gets the stack in slot if it can be extracted -
getExtractableStack
public static net.minecraft.world.item.ItemStack getExtractableStack(net.minecraft.world.Container inv, int slot) -
areStacksIdentical
public static boolean areStacksIdentical(@Nonnull net.minecraft.world.item.ItemStack stack1, @Nonnull net.minecraft.world.item.ItemStack stack2) -
canStack
public static boolean canStack(@Nonnull net.minecraft.world.item.ItemStack stack1, @Nonnull net.minecraft.world.item.ItemStack stack2) -
consumeItem
public static void consumeItem(net.minecraft.world.Container inv, int slot) Consumes one item from slot in inv with support for containers. -
stackSize
public static int stackSize(net.minecraft.world.Container inv, int slot) Gets the size of the stack in a slot. Returns 0 on empty stacks -
dropOnClose
public static void dropOnClose(net.minecraft.world.entity.player.Player player, net.minecraft.world.Container inv) Drops all items from inv using removeStackFromSlot -
canInsertStack
public static boolean canInsertStack(net.minecraftforge.items.IItemHandler handler, int slot, net.minecraft.world.item.ItemStack stack) -
canExtractStack
public static boolean canExtractStack(net.minecraftforge.items.IItemHandler handler, int slot) -
insertItem
public static net.minecraft.world.item.ItemStack insertItem(net.minecraftforge.items.IItemHandler handler, net.minecraft.world.item.ItemStack insert, boolean simulate) -
countMatchingStacks
public static int countMatchingStacks(net.minecraftforge.items.IItemHandler handler, net.minecraft.world.item.ItemStack filter, boolean insert) Counts the matching stacks. Checks for insertion or extraction.- Parameters:
handler- The inventory.filter- What we are checking for.insert- If we are checking for insertion or extraction.- Returns:
- The total number of items of the specified filter type.
-
getInsertableQuantity
public static int getInsertableQuantity(net.minecraftforge.items.IItemHandler handler, net.minecraft.world.item.ItemStack stack)
-