storedItemHolder

@JvmName(name = "storedItemHolderBlockSide")
fun storedItemHolder(inventory: Pair<VirtualInventory, NetworkConnectionType>, vararg inventories: Pair<VirtualInventory, NetworkConnectionType>, blockedSides: Set<BlockSide>, defaultInventoryConfig: () -> Map<BlockFace, VirtualInventory>? = null, defaultConnectionConfig: () -> Map<BlockFace, NetworkConnectionType>? = null): DefaultItemHolder

Retrieves the ItemHolder previously stored or creates a new one, registers it in the holders map, and adds drop providers for ItemHolder.insertFilters and ItemHolder.extractFilters.

The item holder uses the inventories and connection types provided (inventory, inventories).

The blockedSides define which sides of the tile-entity can never be used for item transfer.

If the ItemHolder is created for the first time, defaultInventoryConfig and defaultConnectionConfig are used to determine the correct VirtualInventory and NetworkConnectionType for each side. If defaultInventoryConfig is null, the merged inventory will be used for all sides.

If defaultConnectionConfig is null, each side will be assigned the highest possible connection type.


@JvmName(name = "storedItemHolderBlockFace")
fun storedItemHolder(inventory: Pair<VirtualInventory, NetworkConnectionType>, vararg inventories: Pair<VirtualInventory, NetworkConnectionType>, blockedFaces: Set<BlockFace> = emptySet(), defaultInventoryConfig: () -> Map<BlockFace, VirtualInventory>? = null, defaultConnectionConfig: () -> Map<BlockFace, NetworkConnectionType>? = null): DefaultItemHolder

Retrieves the ItemHolder previously stored or creates a new one, registers it in the holders map, and adds drop providers for ItemHolder.insertFilters and ItemHolder.extractFilters.

The item holder uses the inventories and connection types provided (inventory, inventories).

The blockedFaces define which faces of the tile-entity can never be used for item transfer.

If the ItemHolder is created for the first time, defaultInventoryConfig and defaultConnectionConfig are used to determine the correct VirtualInventory and NetworkConnectionType for each side. If defaultInventoryConfig is null, the merged inventory will be used for all sides.

If defaultConnectionConfig is null, each side will be assigned the highest possible connection type.


@JvmName(name = "storedItemHolderBlockSide")
fun storedItemHolder(inventory: Pair<NetworkedInventory, NetworkConnectionType>, vararg inventories: Pair<NetworkedInventory, NetworkConnectionType>, mergedInventory: NetworkedInventory? = null, blockedSides: Set<BlockSide>, defaultInventoryConfig: () -> Map<BlockFace, NetworkedInventory> = { CUBE_FACES.associateWithTo(enumMap()) { inventory.first } }, defaultConnectionConfig: () -> Map<BlockFace, NetworkConnectionType>? = null): DefaultItemHolder

Retrieves the ItemHolder previously stored or creates a new one, registers it in the holders map, and adds drop providers for ItemHolder.insertFilters and ItemHolder.extractFilters.

The item holder uses the inventories and connection types provided (inventory, inventories).

The blockedSides define which sides of the tile-entity can never be used for item transfer.

If the ItemHolder is created for the first time, defaultInventoryConfig and defaultConnectionConfig are used to determine the correct NetworkedInventory and NetworkConnectionType for each side.

If defaultConnectionConfig is null, each side will be assigned the highest possible connection type.


@JvmName(name = "storedItemHolderBlockFace")
fun storedItemHolder(inventory: Pair<NetworkedInventory, NetworkConnectionType>, vararg inventories: Pair<NetworkedInventory, NetworkConnectionType>, mergedInventory: NetworkedInventory? = null, blockedFaces: Set<BlockFace> = emptySet(), defaultInventoryConfig: () -> Map<BlockFace, NetworkedInventory> = { CUBE_FACES.associateWithTo(enumMap()) { inventory.first } }, defaultConnectionConfig: () -> Map<BlockFace, NetworkConnectionType>? = null): DefaultItemHolder

Retrieves the ItemHolder previously stored or creates a new one, registers it in the holders map, and adds drop providers for ItemHolder.insertFilters and ItemHolder.extractFilters.

The item holder uses the inventories and connection types provided (inventory, inventories).

The blockedFaces define which faces of the tile-entity can never be used for item transfer.

If the ItemHolder is created for the first time, defaultInventoryConfig and defaultConnectionConfig are used to determine the correct NetworkedInventory and NetworkConnectionType for each side.

If defaultConnectionConfig is null, each side will be assigned the highest possible connection type.