Class MutableCompressionItemHandler
java.lang.Object
com.petrolpark.core.recipe.compression.CompressionItemHandler
com.petrolpark.core.recipe.compression.MutableCompressionItemHandler
- All Implemented Interfaces:
net.neoforged.neoforge.common.util.INBTSerializable<net.minecraft.nbt.CompoundTag>,net.neoforged.neoforge.items.IItemHandler
A
CompressionItemHandler whose IItemCompressionSequence is set by the first Item to be added
and can changed be by emptying.-
Field Summary
Fields inherited from class com.petrolpark.core.recipe.compression.CompressionItemHandler
capacity, count, sequence -
Constructor Summary
Constructors -
Method Summary
Modifier and TypeMethodDescriptionprotected Optional<net.minecraft.world.item.ItemStack> createNewSequenceAndStore(net.minecraft.world.item.ItemStack stack, boolean simulate) Attempts to create a newIItemCompressionSequenceif there isn't already one, and store the given Item Stack in it.voiddeserializeNBT(net.minecraft.core.HolderLookup.Provider provider, net.minecraft.nbt.CompoundTag nbt) net.minecraft.world.item.ItemStackextractItem(int slot, int amount, boolean simulate) net.minecraft.world.item.ItemStackinsertItem(int slot, net.minecraft.world.item.ItemStack stack, boolean simulate) net.minecraft.world.item.ItemStackinsertItem(net.minecraft.world.item.ItemStack stack, boolean simulate) protected UnaryOperator<IItemCompressionSequence> onNewSequence(boolean simulate) Allows filtering and any other response to the newIItemCompressionSequenceonce it is (going to be) set.net.minecraft.nbt.CompoundTagserializeNBT(net.minecraft.core.HolderLookup.Provider provider) Methods inherited from class com.petrolpark.core.recipe.compression.CompressionItemHandler
getBaseItemCount, getCapacity, getFreeSpace, getSlotLimit, getSlots, getStackInSlot, insertItem, isItemValid, validateSlotIndex
-
Constructor Details
-
MutableCompressionItemHandler
public MutableCompressionItemHandler(int capacity)
-
-
Method Details
-
insertItem
public net.minecraft.world.item.ItemStack insertItem(@Nonnull net.minecraft.world.item.ItemStack stack, boolean simulate) - Overrides:
insertItemin classCompressionItemHandler
-
insertItem
public net.minecraft.world.item.ItemStack insertItem(int slot, @Nonnull net.minecraft.world.item.ItemStack stack, boolean simulate) - Specified by:
insertItemin interfacenet.neoforged.neoforge.items.IItemHandler- Overrides:
insertItemin classCompressionItemHandler
-
createNewSequenceAndStore
protected Optional<net.minecraft.world.item.ItemStack> createNewSequenceAndStore(net.minecraft.world.item.ItemStack stack, boolean simulate) Attempts to create a newIItemCompressionSequenceif there isn't already one, and store the given Item Stack in it.- Parameters:
stack-simulate-- Returns:
- Optional containing remainder Item Stack if the addition was handled, or empty Optional if it still needs to be
-
onNewSequence
Allows filtering and any other response to the newIItemCompressionSequenceonce it is (going to be) set. Called when reading this handler from NBT and when setting the newIItemCompressionSequencewhen an Item is first inserted- Parameters:
simulate-- Returns:
- Operator on the newly set
IItemCompressionSequence
-
extractItem
public net.minecraft.world.item.ItemStack extractItem(int slot, int amount, boolean simulate) - Specified by:
extractItemin interfacenet.neoforged.neoforge.items.IItemHandler- Overrides:
extractItemin classCompressionItemHandler
-
serializeNBT
public net.minecraft.nbt.CompoundTag serializeNBT(@Nonnull net.minecraft.core.HolderLookup.Provider provider) - Specified by:
serializeNBTin interfacenet.neoforged.neoforge.common.util.INBTSerializable<net.minecraft.nbt.CompoundTag>- Overrides:
serializeNBTin classCompressionItemHandler
-
deserializeNBT
public void deserializeNBT(@Nonnull net.minecraft.core.HolderLookup.Provider provider, @Nonnull net.minecraft.nbt.CompoundTag nbt) - Specified by:
deserializeNBTin interfacenet.neoforged.neoforge.common.util.INBTSerializable<net.minecraft.nbt.CompoundTag>- Overrides:
deserializeNBTin classCompressionItemHandler
-