Импорт класса

Link to импорт-класса

It might be required for you to import the package if you encounter any issues (like casting an Array), so better be safe than sorry and add the import at the very top of the file.

ZenScript
Copy
import crafttweaker.api.inventory.IInventory;

Name: clear

Clears this inventory of all items.

Return Type: void

ZenScript
Copy
// IInventory.clear() as void

myIInventory.clear();

Name: closeInventory

Marks the inventory as closed, this is used by chests and barrels to determine if they should have a closed texture / model, but other inventories may use it in a different way.

Return Type: void

ZenScript
Copy
// IInventory.closeInventory(player as MCPlayerEntity) as void

myIInventory.closeInventory(player);
ПараметрТипОписание
Параметр
player
Тип
MCPlayerEntity
Описание
The player that opened the inventory.

Name: count

Counts how many of the given Item is in this inventory.

NOTE: This does not work for IItemStacks, so all NBT will be ignored.

Returns: The amount of the Item in this inventory.
Return Type: int

ZenScript
Copy
// IInventory.count(item as MCItemDefinition) as int

myIInventory.count(<item:minecraft:dirt>);
ПараметрТипОписание
Параметр
item
Тип
MCItemDefinition
Описание
The Item to look for.

Name: count

Counts how many ItemStacks in this inventory match the given predicate.

Returns: The amount of ItemStacks in this inventory that match the predicate.
Return Type: int

ZenScript
Copy
// IInventory.count(predicate as Predicate<IItemStack>) as int

myIInventory.count((stack) => stack.amount == 2);
ПараметрТипОписание
Параметр
predicate
Тип
Predicate<IItemStack>
Описание
The predicate to test against

Name: decrStackSize

Decreases the stack size of the stack in the given slot by the given count.

Returns: A new stack with how much was removed.
Return Type: IItemStack

ZenScript
Copy
// IInventory.decrStackSize(index as int, count as int) as IItemStack

myIInventory.decrStackSize(2, 2);
ПараметрТипОписаниеOptionalDefaultValue
Параметр
index
Тип
int
Описание
The slot index to decrement.
Optional
false
DefaultValue
Параметр
count
Тип
int
Описание
How much should be removed.
Optional
true
DefaultValue
1

Link to getInventorySize

Name: getInventorySize

Gets how many slots this inventory has.

Example: A hopper will return 5

Returns: The amount of slots this inventory has.
Return Type: int

ZenScript
Copy
// IInventory.getInventorySize() as int

myIInventory.getInventorySize();

Link to getInventoryStackLimit

Name: getInventoryStackLimit

Gets the max stack size that is allowed in this inventory.

This is nearly always 64, but some inventories like the Beacon and Compostor have a limit of 1.

Returns: The max stack size allowed in the inventory.
Return Type: int

ZenScript
Copy
// IInventory.getInventoryStackLimit() as int

myIInventory.getInventoryStackLimit();

Name: getStackInSlot

Gets the IItemStack in the given slot.

Returns: The IItemStack in the slot.
Return Type: IItemStack

ZenScript
Copy
// IInventory.getStackInSlot(index as int) as IItemStack

myIInventory.getStackInSlot(2);
ПараметрТипОписание
Параметр
index
Тип
int
Описание
The index to get the stack from.

Name: getStacks

Gets the ItemStacks in this inventory that match the given predicate.

Returns: A list of IItemStacks that match the given predicate.
Return Type: stdlib.List<IItemStack>

ZenScript
Copy
// IInventory.getStacks(predicate as Predicate<IItemStack>) as stdlib.List<IItemStack>

myIInventory.getStacks((stack) => stack.amount == 2;);
ПараметрТипОписание
Параметр
predicate
Тип
Predicate<IItemStack>
Описание
The predicate to test against.

Name: hasAny

Checks if this inventory has any of the given Items.

NOTE: This does not work for IItemStacks, so all NBT will be ignored.

Returns: True if this inventory has any of the items. False otherwise.
Return Type: boolean

ZenScript
Copy
// IInventory.hasAny(list as stdlib.List<MCItemDefinition>) as boolean

myIInventory.hasAny([<item:minecraft:diamond>]);
ПараметрТипОписание
Параметр
list
Тип
stdlib.List<MCItemDefinition>
Описание
The Items to look for.

Name: isEmpty

Checks if this inventory is empty.

Returns: True if this inventory is empty. False otherwise.
Return Type: boolean

ZenScript
Copy
// IInventory.isEmpty() as boolean

myIInventory.isEmpty();

Link to isItemValidForSlot

Name: isItemValidForSlot

Checks if the given stack is valid for the given slot index.

Returns: True if the stack is valid. False otherwise.
Return Type: boolean

ZenScript
Copy
// IInventory.isItemValidForSlot(index as int, stack as IItemStack) as boolean

myIInventory.isItemValidForSlot(2, <item:minecraft:dirt>);
ПараметрТипОписание
Параметр
index
Тип
int
Описание
The slot index to check.
Параметр
stack
Тип
IItemStack
Описание
The stack to check.

Link to isUsableByPlayer

Name: isUsableByPlayer

Checks if this IInventory can be used by the player.

Returns: True if the player can use this inventory. False otherwise.
Return Type: boolean

ZenScript
Copy
// IInventory.isUsableByPlayer(player as MCPlayerEntity) as boolean

myIInventory.isUsableByPlayer(player);
ПараметрТипОписание
Параметр
player
Тип
MCPlayerEntity
Описание
The player to check if they can use this inventory.

Name: markDirty

Used by tile entities to ensure that chunks are up to date when they are saved to disk.

Return Type: void

ZenScript
Copy
// IInventory.markDirty() as void

myIInventory.markDirty();

Name: openInventory

Marks the inventory as opened, this is used by chests and barrels to determine if they should have an open texture / model, but other inventories may use it in a different way.

Return Type: void

ZenScript
Copy
// IInventory.openInventory(player as MCPlayerEntity) as void

myIInventory.openInventory(player);
ПараметрТипОписание
Параметр
player
Тип
MCPlayerEntity
Описание
The player that opened the inventory.

Link to removeStackFromSlot

Name: removeStackFromSlot

Removes the IItemStack from the given slot and returns it.

Returns: The removed stack from the slot.
Return Type: IItemStack

ZenScript
Copy
// IInventory.removeStackFromSlot(index as int) as IItemStack

myIInventory.removeStackFromSlot(2);
ПараметрТипОписание
Параметр
index
Тип
int
Описание
The slot index to remove.

Link to setInventorySlotContents

Name: setInventorySlotContents

Sets the contents of the given slot to the given IItemStack.

Return Type: void

ZenScript
Copy
// IInventory.setInventorySlotContents(index as int, stack as IItemStack) as void

myIInventory.setInventorySlotContents(2, <item:minecraft:diamond>);
ПараметрТипОписание
Параметр
index
Тип
int
Описание
The slot index to set.
Параметр
stack
Тип
IItemStack
Описание
The IItemStack to put in the slot.

Свойства

Link to свойства

НазваниеТипИмеет GetterИмеет SetterОписание
Название
inventorySize
Тип
int
Имеет Getter
true
Имеет Setter
false
Описание
Gets how many slots this inventory has.

Example:
A hopper will return 5
Название
inventoryStackLimit
Тип
int
Имеет Getter
true
Имеет Setter
false
Описание
Gets the max stack size that is allowed in this inventory.

This is nearly always 64, but some inventories like the Beacon and Compostor have a limit of 1.
Название
isEmpty
Тип
boolean
Имеет Getter
true
Имеет Setter
false
Описание
Checks if this inventory is empty.