Class ContainerMultipartAspects<P extends IPartType<P,S>,S extends IPartState<P>,A extends IAspect>

java.lang.Object
net.minecraft.world.inventory.AbstractContainerMenu
org.cyclops.cyclopscore.inventory.container.ContainerExtended
org.cyclops.cyclopscore.inventory.container.InventoryContainer
org.cyclops.cyclopscore.inventory.container.ScrollingInventoryContainer<A>
org.cyclops.integrateddynamics.core.inventory.container.ContainerMultipartAspects<P,S,A>
All Implemented Interfaces:
org.cyclops.cyclopscore.client.gui.component.WidgetScrollBar.IScrollCallback, org.cyclops.cyclopscore.inventory.container.button.IContainerButtonClickAcceptorServer<org.cyclops.cyclopscore.inventory.container.ContainerExtended>, org.cyclops.cyclopscore.inventory.IValueNotifiable, org.cyclops.cyclopscore.inventory.IValueNotifier, org.cyclops.cyclopscore.persist.IDirtyMarkListener
Direct Known Subclasses:
ContainerPartReader, ContainerPartWriter

public abstract class ContainerMultipartAspects<P extends IPartType<P,S>,S extends IPartState<P>,A extends IAspect> extends org.cyclops.cyclopscore.inventory.container.ScrollingInventoryContainer<A> implements org.cyclops.cyclopscore.persist.IDirtyMarkListener
Container for parts.
  • Nested Class Summary

    Nested classes/interfaces inherited from class org.cyclops.cyclopscore.inventory.container.ScrollingInventoryContainer

    org.cyclops.cyclopscore.inventory.container.ScrollingInventoryContainer.IItemPredicate<E>
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    static String
     
    static String
     
    protected final net.minecraft.world.Container
     

    Fields inherited from class org.cyclops.cyclopscore.inventory.container.InventoryContainer

    inventory

    Fields inherited from class org.cyclops.cyclopscore.inventory.container.ContainerExtended

    ITEMBOX, offsetX, offsetY, player

    Fields inherited from class net.minecraft.world.inventory.AbstractContainerMenu

    CARRIED_SLOT_SIZE, containerId, lastSlots, QUICKCRAFT_HEADER_CONTINUE, QUICKCRAFT_HEADER_END, QUICKCRAFT_HEADER_START, QUICKCRAFT_TYPE_CHARITABLE, QUICKCRAFT_TYPE_CLONE, QUICKCRAFT_TYPE_GREEDY, remoteSlots, SLOT_CLICKED_OUTSIDE, slots
  • Constructor Summary

    Constructors
    Constructor
    Description
    ContainerMultipartAspects(net.minecraft.world.inventory.MenuType<?> type, int id, net.minecraft.world.entity.player.Inventory playerInventory, net.minecraft.world.Container inventory, PartTarget target, Optional<IPartContainer> partContainer, P partType, List<A> items)
     
  • Method Summary

    Modifier and Type
    Method
    Description
    protected net.minecraft.world.Container
     
    protected void
    disableSlot(int slotIndex)
     
    protected void
    enableElementAt(int row, int elementIndex, A element)
     
    protected abstract void
    enableSlot(int slotIndex, int row)
     
    abstract int
     
     
    int
     
     
     
     
     
    void
    onScroll(int firstRow)
     
    void
    removed(net.minecraft.world.entity.player.Player player)
     
    boolean
    stillValid(net.minecraft.world.entity.player.Player player)
     
    net.minecraft.world.item.ItemStack
    writeAspectInfo(boolean generateId, net.minecraft.world.item.ItemStack itemStack, net.minecraft.world.level.Level level, IAspect aspect)
     

    Methods inherited from class org.cyclops.cyclopscore.inventory.container.ScrollingInventoryContainer

    additionalApplies, filter, getColumns, getFilteredItemCount, getFilteredItems, getFirstElement, getScrollStepSize, getUnfilteredItemCount, getUnfilteredItems, getVisibleElement, isElementVisible, refreshFilter, updateFilter

    Methods inherited from class org.cyclops.cyclopscore.inventory.container.InventoryContainer

    getContainerInventory, getSizeInventory, isAssertInventorySize

    Methods inherited from class org.cyclops.cyclopscore.inventory.container.ContainerExtended

    addInventory, addPlayerArmorInventory, addPlayerInventory, addSlot, addSlotListener, adjustPhantomSlot, broadcastChanges, clicked, createNewSlot, fillPhantomSlot, getHolderLookupProvider, getNextValueId, getPlayerIInventory, getSlotRange, getSlotStart, getValue, getValueIds, getValueNotifiableType, initializeValues, moveItemStackTo, onButtonClick, onUpdate, putButtonAction, quickMoveStack, registerSyncedVariable, resetQuickCraft, setGuiValueListener, setSlotPosX, setSlotPosY, setValue

    Methods inherited from class net.minecraft.world.inventory.AbstractContainerMenu

    addDataSlot, addDataSlots, broadcastFullState, canDragTo, canItemQuickReplace, canTakeItemForPickAll, checkContainerDataCount, checkContainerSize, clearContainer, clickMenuButton, findSlot, getCarried, getItems, getQuickcraftHeader, getQuickcraftMask, getQuickCraftPlaceCount, getQuickcraftType, getRedstoneSignalFromBlockEntity, getRedstoneSignalFromContainer, getSlot, getStateId, getType, incrementStateId, initializeContents, isValidQuickcraftType, isValidSlotIndex, removeSlotListener, resumeRemoteUpdates, sendAllDataToRemote, setCarried, setData, setItem, setRemoteCarried, setRemoteSlot, setRemoteSlotNoCopy, setSynchronizer, slotsChanged, stillValid, suppressRemoteUpdates, transferState

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

    Methods inherited from interface org.cyclops.cyclopscore.persist.IDirtyMarkListener

    onDirty
  • Field Details

    • BUTTON_SETTINGS

      public static String BUTTON_SETTINGS
    • BUTTON_OFFSETS

      public static String BUTTON_OFFSETS
    • inputSlots

      protected final net.minecraft.world.Container inputSlots
  • Constructor Details

    • ContainerMultipartAspects

      public ContainerMultipartAspects(@Nullable net.minecraft.world.inventory.MenuType<?> type, int id, net.minecraft.world.entity.player.Inventory playerInventory, net.minecraft.world.Container inventory, PartTarget target, Optional<IPartContainer> partContainer, P partType, List<A> items)
  • Method Details

    • getPartType

      public P getPartType()
    • getTarget

      public PartTarget getTarget()
    • getPartContainer

      public IPartContainer getPartContainer()
    • getPartState

      public S getPartState()
    • getAspectPropertyButtons

      public Map<IAspect,String> getAspectPropertyButtons()
    • getAspectBoxHeight

      public abstract int getAspectBoxHeight()
    • constructInputSlotsInventory

      protected net.minecraft.world.Container constructInputSlotsInventory()
    • removed

      public void removed(net.minecraft.world.entity.player.Player player)
      Overrides:
      removed in class org.cyclops.cyclopscore.inventory.container.InventoryContainer
    • disableSlot

      protected void disableSlot(int slotIndex)
    • enableSlot

      protected abstract void enableSlot(int slotIndex, int row)
    • getPageSize

      public int getPageSize()
      Specified by:
      getPageSize in class org.cyclops.cyclopscore.inventory.container.ScrollingInventoryContainer<A extends IAspect>
    • onScroll

      public void onScroll(int firstRow)
      Specified by:
      onScroll in interface org.cyclops.cyclopscore.client.gui.component.WidgetScrollBar.IScrollCallback
      Overrides:
      onScroll in class org.cyclops.cyclopscore.inventory.container.ScrollingInventoryContainer<A extends IAspect>
    • enableElementAt

      protected void enableElementAt(int row, int elementIndex, A element)
      Overrides:
      enableElementAt in class org.cyclops.cyclopscore.inventory.container.ScrollingInventoryContainer<A extends IAspect>
    • stillValid

      public boolean stillValid(net.minecraft.world.entity.player.Player player)
      Overrides:
      stillValid in class org.cyclops.cyclopscore.inventory.container.InventoryContainer
    • writeAspectInfo

      public net.minecraft.world.item.ItemStack writeAspectInfo(boolean generateId, net.minecraft.world.item.ItemStack itemStack, net.minecraft.world.level.Level level, IAspect aspect)