Class GroupedItemInvFixedWrapper
java.lang.Object
alexiil.mc.lib.attributes.item.impl.GroupedItemInvViewFixedWrapper
alexiil.mc.lib.attributes.item.impl.GroupedItemInvFixedWrapper
- All Implemented Interfaces:
AbstractItemInvView
,GroupedItemInv
,GroupedItemInvView
,ItemExtractable
,ItemInsertable
,ItemTransferable
,LimitedConsumer<net.minecraft.item.ItemStack>
,OpenWrapper
public class GroupedItemInvFixedWrapper extends GroupedItemInvViewFixedWrapper implements GroupedItemInv
A
GroupedItemInv
wrapper over a FixedItemInv
. This implementation is the naive implementation where
every insertion operation will look at every slot in the target inventory in order to insert into the most
appropriate slot first. As such the use of this class is discouraged whenever a more efficient version can be used
(unless the target inventory has a very small size
).-
Nested Class Summary
Nested classes/interfaces inherited from interface alexiil.mc.lib.attributes.item.AbstractItemInvView
AbstractItemInvView.DefaultChangeTracker
Nested classes/interfaces inherited from interface alexiil.mc.lib.attributes.item.GroupedItemInvView
GroupedItemInvView.ItemInvStatistic
-
Constructor Summary
Constructors Constructor Description GroupedItemInvFixedWrapper(FixedItemInv inv)
-
Method Summary
Modifier and Type Method Description net.minecraft.item.ItemStack
attemptExtraction(ItemFilter filter, int maxCount, Simulation simulation)
net.minecraft.item.ItemStack
attemptInsertion(net.minecraft.item.ItemStack stack, Simulation simulation)
Inserts the given stack into this insertable, and returns the excess.Methods inherited from class alexiil.mc.lib.attributes.item.impl.GroupedItemInvViewFixedWrapper
addListener, addListener, getChangeValue, getStatistics, getStoredStacks, getTotalCapacity, getWrapped
Methods inherited from class java.lang.Object
clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait
Methods inherited from interface alexiil.mc.lib.attributes.item.GroupedItemInv
createLimitedGroupedInv, filtered
Methods inherited from interface alexiil.mc.lib.attributes.item.GroupedItemInvView
addListener, addListener, getAmount, getAmount, getCapacity, getGroupedView, getSpace, getStatistics, getStatistics, getStoredStacks, getTotalCapacity, isEmpty
Methods inherited from interface alexiil.mc.lib.attributes.item.ItemExtractable
attemptAnyExtraction, couldExtractAnything, extract, extract, extract, getPureExtractable
Methods inherited from interface alexiil.mc.lib.attributes.item.ItemInsertable
getInsertionFilter, getPureInsertable, insert, offer, offer, wouldAccept, wouldPartiallyAccept
-
Constructor Details
-
Method Details
-
attemptInsertion
public net.minecraft.item.ItemStack attemptInsertion(net.minecraft.item.ItemStack stack, Simulation simulation)Description copied from interface:ItemInsertable
Inserts the given stack into this insertable, and returns the excess.- Specified by:
attemptInsertion
in interfaceItemInsertable
- Parameters:
stack
- The incoming stack. Must not be modified by this call.simulation
- IfSimulation.SIMULATE
then this shouldn't modify anything.- Returns:
- the excess
ItemStack
that wasn't accepted. This will be independent of this insertable, however it might be the given stack instead of a completely new object.
-
attemptExtraction
public net.minecraft.item.ItemStack attemptExtraction(ItemFilter filter, int maxCount, Simulation simulation)Description copied from interface:ItemExtractable
- Specified by:
attemptExtraction
in interfaceItemExtractable
maxCount
- The maximum number of items that can be extracted. Negative numbers throw an exception.simulation
- IfSimulation.SIMULATE
then this should return the same result that a call withSimulation.ACTION
would do, but without modifying anything else.- Returns:
- A new, independent
ItemStack
that was extracted.
-