Class SimpleLimitedGroupedItemInv
java.lang.Object
alexiil.mc.lib.attributes.item.impl.DelegatingGroupedItemInv
alexiil.mc.lib.attributes.item.impl.SimpleLimitedGroupedItemInv
- All Implemented Interfaces:
- AbstractItemInvView,- GroupedItemInv,- GroupedItemInvView,- ItemExtractable,- ItemInsertable,- ItemTransferable,- LimitedGroupedItemInv,- LimitedConsumer<net.minecraft.item.ItemStack>
public class SimpleLimitedGroupedItemInv
extends DelegatingGroupedItemInv
implements LimitedGroupedItemInv
- 
Nested Class SummaryNested classes/interfaces inherited from interface alexiil.mc.lib.attributes.item.AbstractItemInvViewAbstractItemInvView.DefaultChangeTrackerNested classes/interfaces inherited from interface alexiil.mc.lib.attributes.item.GroupedItemInvViewGroupedItemInvView.ItemInvStatisticNested classes/interfaces inherited from interface alexiil.mc.lib.attributes.item.LimitedGroupedItemInvLimitedGroupedItemInv.ItemLimitRule
- 
Field SummaryFields inherited from class alexiil.mc.lib.attributes.item.impl.DelegatingGroupedItemInvdelegate
- 
Constructor SummaryConstructors
- 
Method SummaryModifier and TypeMethodDescriptionprotected voidnet.minecraft.item.ItemStackattemptExtraction(ItemFilter filter, int maxAmount, Simulation simulation)net.minecraft.item.ItemStackattemptInsertion(net.minecraft.item.ItemStack stack, Simulation simulation)Inserts the given stack into this insertable, and returns the excess.copy()Creates a copy of thisLimitedGroupedItemInv(with the same backing inventory and the same rules), but not marked as final.Returns anItemFilterto determine ifItemInsertable.attemptInsertion(ItemStack, Simulation)will accept a stack.getRule(ItemFilter filter)Marks this object as final, and disallows any further changes to this.Methods inherited from class alexiil.mc.lib.attributes.item.impl.DelegatingGroupedItemInvaddListener, attemptAnyExtraction, getChangeValue, getStatistics, getStoredStacks, getTotalCapacityMethods inherited from class java.lang.Objectclone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, waitMethods inherited from interface alexiil.mc.lib.attributes.item.AbstractItemInvViewgetChangeValueMethods inherited from interface alexiil.mc.lib.attributes.item.GroupedItemInvcreateLimitedGroupedInv, filteredMethods inherited from interface alexiil.mc.lib.attributes.item.GroupedItemInvViewaddListener, addListener, getAmount, getAmount, getCapacity, getGroupedView, getSpace, getStatistics, getStatistics, getStoredStacks, getTotalCapacity, isEmptyMethods inherited from interface alexiil.mc.lib.attributes.item.ItemExtractableattemptAnyExtraction, couldExtractAnything, extract, extract, extract, getPureExtractableMethods inherited from interface alexiil.mc.lib.attributes.item.ItemInsertablegetPureInsertable, insert, offer, offer, wouldAccept, wouldPartiallyAcceptMethods inherited from interface alexiil.mc.lib.attributes.item.LimitedGroupedItemInvasUnmodifiable, getAllRule, getRule, reset
- 
Constructor Details- 
SimpleLimitedGroupedItemInv
 
- 
- 
Method Details- 
markFinalDescription copied from interface:LimitedGroupedItemInvMarks this object as final, and disallows any further changes to this. If this is called thenLimitedGroupedItemInv.asUnmodifiable()will return this object.- Specified by:
- markFinalin interface- LimitedGroupedItemInv
- Returns:
- this.
 
- 
assertMutableprotected void assertMutable()
- 
copyDescription copied from interface:LimitedGroupedItemInvCreates a copy of thisLimitedGroupedItemInv(with the same backing inventory and the same rules), but not marked as final.- Specified by:
- copyin interface- LimitedGroupedItemInv
 
- 
attemptExtractionpublic net.minecraft.item.ItemStack attemptExtraction(ItemFilter filter, int maxAmount, Simulation simulation)Description copied from interface:ItemExtractable- Specified by:
- attemptExtractionin interface- ItemExtractable
- Overrides:
- attemptExtractionin class- DelegatingGroupedItemInv
- maxAmount- The maximum number of items that can be extracted. Negative numbers throw an exception.
- simulation- If- Simulation.SIMULATEthen this should return the same result that a call with- Simulation.ACTIONwould do, but without modifying anything else.
- Returns:
- A new, independent ItemStackthat was extracted.
 
- 
attemptInsertionpublic net.minecraft.item.ItemStack attemptInsertion(net.minecraft.item.ItemStack stack, Simulation simulation)Description copied from interface:ItemInsertableInserts the given stack into this insertable, and returns the excess.- Specified by:
- attemptInsertionin interface- ItemInsertable
- Overrides:
- attemptInsertionin class- DelegatingGroupedItemInv
- Parameters:
- stack- The incoming stack. Must not be modified by this call.
- simulation- If- Simulation.SIMULATEthen this shouldn't modify anything.
- Returns:
- the excess ItemStackthat wasn't accepted. This will be independent of this insertable, however it might be the given stack instead of a completely new object.
 
- 
getInsertionFilterDescription copied from interface:ItemInsertableReturns anItemFilterto determine ifItemInsertable.attemptInsertion(ItemStack, Simulation)will accept a stack. The default implementation is a call toattemptInsertion(stack,Simulation.SIMULATE), and it is only useful to override this if the resulting filter contains information that might be usable by the caller.- Specified by:
- getInsertionFilterin interface- ItemInsertable
- Overrides:
- getInsertionFilterin class- DelegatingGroupedItemInv
- Returns:
- A filter to determine if ItemInsertable.attemptInsertion(ItemStack, Simulation)will accept the entirety of a given stack.
 
- 
getRule- Specified by:
- getRulein interface- LimitedGroupedItemInv
- Returns:
- An LimitedGroupedItemInv.ItemLimitRulethat applies to every item that matches the given filter.
 
 
-