Class CargoExtractor

java.lang.Object
io.github.pylonmc.rebar.block.RebarBlock
io.github.pylonmc.pylon.content.machines.cargo.CargoInteractor
io.github.pylonmc.pylon.content.machines.cargo.CargoExtractor
All Implemented Interfaces:
io.github.pylonmc.rebar.block.base.RebarBreakHandler, io.github.pylonmc.rebar.block.base.RebarCargoBlock, io.github.pylonmc.rebar.block.base.RebarCulledBlock, io.github.pylonmc.rebar.block.base.RebarDirectionalBlock, io.github.pylonmc.rebar.block.base.RebarEntityCulledBlock, io.github.pylonmc.rebar.block.base.RebarEntityHolderBlock, io.github.pylonmc.rebar.block.base.RebarInventoryBlock, io.github.pylonmc.rebar.block.base.RebarLogisticBlock, io.github.pylonmc.rebar.block.base.RebarMultiblock, io.github.pylonmc.rebar.block.base.RebarNoVanillaInventoryBlock, io.github.pylonmc.rebar.block.base.RebarTickingBlock, io.github.pylonmc.rebar.block.base.RebarVanillaInventoryBlock, io.github.pylonmc.rebar.block.base.RebarVirtualInventoryBlock, net.kyori.adventure.key.Keyed, org.bukkit.Keyed

public class CargoExtractor extends CargoInteractor implements io.github.pylonmc.rebar.block.base.RebarCargoBlock, io.github.pylonmc.rebar.block.base.RebarTickingBlock, io.github.pylonmc.rebar.block.base.RebarInventoryBlock, io.github.pylonmc.rebar.block.base.RebarVirtualInventoryBlock, io.github.pylonmc.rebar.block.base.RebarEntityCulledBlock
  • Nested Class Summary

    Nested Classes
    Modifier and Type
    Class
    Description
    static class 
     
    class 
     

    Nested classes/interfaces inherited from class CargoInteractor

    CargoInteractor.InventoryCycleItem

    Nested classes/interfaces inherited from class io.github.pylonmc.rebar.block.RebarBlock

    io.github.pylonmc.rebar.block.RebarBlock.Companion

    Nested classes/interfaces inherited from interface io.github.pylonmc.rebar.block.base.RebarCargoBlock

    io.github.pylonmc.rebar.block.base.RebarCargoBlock.Companion

    Nested classes/interfaces inherited from interface io.github.pylonmc.rebar.block.base.RebarDirectionalBlock

    io.github.pylonmc.rebar.block.base.RebarDirectionalBlock.Companion

    Nested classes/interfaces inherited from interface io.github.pylonmc.rebar.block.base.RebarInventoryBlock

    io.github.pylonmc.rebar.block.base.RebarInventoryBlock.Companion

    Nested classes/interfaces inherited from interface io.github.pylonmc.rebar.block.base.RebarTickingBlock

    io.github.pylonmc.rebar.block.base.RebarTickingBlock.Companion

    Nested classes/interfaces inherited from interface io.github.pylonmc.rebar.block.base.RebarVirtualInventoryBlock

    io.github.pylonmc.rebar.block.base.RebarVirtualInventoryBlock.Companion
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    final io.github.pylonmc.rebar.item.builder.ItemStackBuilder
     
    final io.github.pylonmc.rebar.item.builder.ItemStackBuilder
     
    static final org.bukkit.NamespacedKey
     
    boolean
     
    static final org.bukkit.NamespacedKey
     
    Set<org.bukkit.inventory.ItemStack>
     
    final io.github.pylonmc.rebar.item.builder.ItemStackBuilder
     
    final io.github.pylonmc.rebar.item.builder.ItemStackBuilder
     
    final int
     

    Fields inherited from class io.github.pylonmc.rebar.block.RebarBlock

    Companion

    Fields inherited from interface io.github.pylonmc.rebar.block.base.RebarCargoBlock

    Companion

    Fields inherited from interface io.github.pylonmc.rebar.block.base.RebarDirectionalBlock

    Companion

    Fields inherited from interface io.github.pylonmc.rebar.block.base.RebarInventoryBlock

    Companion

    Fields inherited from interface io.github.pylonmc.rebar.block.base.RebarTickingBlock

    Companion

    Fields inherited from interface io.github.pylonmc.rebar.block.base.RebarVirtualInventoryBlock

    Companion
  • Constructor Summary

    Constructors
    Constructor
    Description
    CargoExtractor(@NotNull org.bukkit.block.Block block, @NotNull io.github.pylonmc.rebar.block.context.BlockCreateContext context)
     
    CargoExtractor(@NotNull org.bukkit.block.Block block, @NotNull org.bukkit.persistence.PersistentDataContainer pdc)
     
  • Method Summary

    Modifier and Type
    Method
    Description
    @NotNull xyz.xenondevs.invui.gui.Gui
     
    @NotNull Iterable<UUID>
     
    @NotNull Map<String, xyz.xenondevs.invui.inventory.VirtualInventory>
     
    boolean
    isValidGroup(@NotNull io.github.pylonmc.rebar.logistics.LogisticGroup group)
     
    void
    onDuctConnected(@NotNull io.github.pylonmc.rebar.event.RebarCargoConnectEvent event, @NotNull org.bukkit.event.EventPriority priority)
     
    void
    onDuctDisconnected(@NotNull io.github.pylonmc.rebar.event.RebarCargoDisconnectEvent event, @NotNull org.bukkit.event.EventPriority priority)
     
    void
     
    void
     
    void
    write(@NotNull org.bukkit.persistence.PersistentDataContainer pdc)
     

    Methods inherited from class io.github.pylonmc.rebar.block.RebarBlock

    getBlock, getBlockTextureEntity, getBlockTextureItem, getBlockTextureProperties, getDefaultItem, getDefaultWailaTranslationKey, getDisableBlockTextureEntity, getDropItem, getKey, getLoreTranslationKey, getNameTranslationKey, getPickItem, getRebarBlock, getRebarBlockKeyKey, getRebarBlockPositionKey, getRebarBlockTextureEntityKey, getSchema, getSettings, getWaila, isVanillaBlock, postLoad, refreshBlockTextureItem, register, scheduleBlockTextureItemRefresh, setDisableBlockTextureEntity, setupBlockTexture, writeDebugInfo

    Methods inherited from class Object

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

    Methods inherited from interface org.bukkit.Keyed

    getKey, key

    Methods inherited from interface io.github.pylonmc.rebar.block.base.RebarBreakHandler

    postBreak, preBreak

    Methods inherited from interface io.github.pylonmc.rebar.block.base.RebarCargoBlock

    addCargoLogisticGroup, getCargoLogisticGroup, getCargoLogisticGroups, getCargoTransferRate, removeCargoLogisticGroup, setCargoTransferRate, tickCargo, tickCargoFace, updateDirectlyConnectedFaces

    Methods inherited from interface io.github.pylonmc.rebar.block.base.RebarDirectionalBlock

    getFacing, setFacing

    Methods inherited from interface io.github.pylonmc.rebar.block.base.RebarEntityCulledBlock

    isCulledAsync, isVisible, onCulled, onVisible

    Methods inherited from interface io.github.pylonmc.rebar.block.base.RebarEntityHolderBlock

    addEntity, addEntity, areAllHeldEntitiesLoaded, getBlock, getHeldEntities, getHeldEntity, getHeldEntity, getHeldEntityOrThrow, getHeldEntityOrThrow, getHeldEntityUuid, getHeldEntityUuidOrThrow, getHeldRebarEntity, getHeldRebarEntity, getHeldRebarEntityOrThrow, isHeldEntityPresent, tryRemoveAllEntities, tryRemoveEntity, whenHeldRebarEntityLoads, whenHeldRebarEntityLoads

    Methods inherited from interface io.github.pylonmc.rebar.block.base.RebarInventoryBlock

    getGuiTitle

    Methods inherited from interface io.github.pylonmc.rebar.block.base.RebarLogisticBlock

    createLogisticGroup, createLogisticGroup, createLogisticGroup, createLogisticGroup, getBlock, getLogisticGroup, getLogisticGroupOrThrow, getLogisticGroups

    Methods inherited from interface io.github.pylonmc.rebar.block.base.RebarMultiblock

    getBlock, isFormedAndFullyLoaded, onMultiblockFormed, onMultiblockRefreshed, onMultiblockUnformed

    Methods inherited from interface io.github.pylonmc.rebar.block.base.RebarNoVanillaInventoryBlock

    onInventoryOpen, onItemMoveFrom, onItemMoveTo

    Methods inherited from interface io.github.pylonmc.rebar.block.base.RebarTickingBlock

    getTickInterval, isAsync, setAsync, setTickInterval

    Methods inherited from interface io.github.pylonmc.rebar.block.base.RebarVirtualInventoryBlock

    onBreak
  • Field Details

    • ITEMS_TO_FILTER_KEY

      public static final org.bukkit.NamespacedKey ITEMS_TO_FILTER_KEY
    • IS_WHITELIST_KEY

      public static final org.bukkit.NamespacedKey IS_WHITELIST_KEY
    • transferRate

      public final int transferRate
    • mainStack

      public final io.github.pylonmc.rebar.item.builder.ItemStackBuilder mainStack
    • outputStack

      public final io.github.pylonmc.rebar.item.builder.ItemStackBuilder outputStack
    • ductStack

      public final io.github.pylonmc.rebar.item.builder.ItemStackBuilder ductStack
    • filterGuiStack

      public final io.github.pylonmc.rebar.item.builder.ItemStackBuilder filterGuiStack
    • itemsToFilter

      public Set<org.bukkit.inventory.ItemStack> itemsToFilter
    • isWhitelist

      public boolean isWhitelist
  • Constructor Details

    • CargoExtractor

      public CargoExtractor(@NotNull @NotNull org.bukkit.block.Block block, @NotNull @NotNull io.github.pylonmc.rebar.block.context.BlockCreateContext context)
    • CargoExtractor

      public CargoExtractor(@NotNull @NotNull org.bukkit.block.Block block, @NotNull @NotNull org.bukkit.persistence.PersistentDataContainer pdc)
  • Method Details

    • write

      public void write(@NotNull @NotNull org.bukkit.persistence.PersistentDataContainer pdc)
      Overrides:
      write in class CargoInteractor
    • postInitialise

      public void postInitialise()
      Overrides:
      postInitialise in class CargoInteractor
    • onDuctConnected

      public void onDuctConnected(@NotNull @NotNull io.github.pylonmc.rebar.event.RebarCargoConnectEvent event, @NotNull @NotNull org.bukkit.event.EventPriority priority)
      Specified by:
      onDuctConnected in interface io.github.pylonmc.rebar.block.base.RebarCargoBlock
    • onDuctDisconnected

      public void onDuctDisconnected(@NotNull @NotNull io.github.pylonmc.rebar.event.RebarCargoDisconnectEvent event, @NotNull @NotNull org.bukkit.event.EventPriority priority)
      Specified by:
      onDuctDisconnected in interface io.github.pylonmc.rebar.block.base.RebarCargoBlock
    • createGui

      @NotNull public @NotNull xyz.xenondevs.invui.gui.Gui createGui()
      Specified by:
      createGui in interface io.github.pylonmc.rebar.block.base.RebarInventoryBlock
    • tick

      public void tick()
      Specified by:
      tick in interface io.github.pylonmc.rebar.block.base.RebarTickingBlock
    • isValidGroup

      public boolean isValidGroup(@NotNull @NotNull io.github.pylonmc.rebar.logistics.LogisticGroup group)
      Specified by:
      isValidGroup in class CargoInteractor
    • getVirtualInventories

      @NotNull public @NotNull Map<String, xyz.xenondevs.invui.inventory.VirtualInventory> getVirtualInventories()
      Specified by:
      getVirtualInventories in interface io.github.pylonmc.rebar.block.base.RebarVirtualInventoryBlock
    • getCulledEntityIds

      @NotNull public @NotNull Iterable<UUID> getCulledEntityIds()
      Specified by:
      getCulledEntityIds in interface io.github.pylonmc.rebar.block.base.RebarEntityCulledBlock