Class CargoInteractor

java.lang.Object
io.github.pylonmc.rebar.block.RebarBlock
io.github.pylonmc.pylon.content.machines.cargo.CargoInteractor
All Implemented Interfaces:
io.github.pylonmc.rebar.block.base.RebarDirectionalBlock, io.github.pylonmc.rebar.block.base.RebarMultiblock, net.kyori.adventure.key.Keyed, org.bukkit.Keyed
Direct Known Subclasses:
CargoExtractor, CargoInserter

public abstract class CargoInteractor extends io.github.pylonmc.rebar.block.RebarBlock implements io.github.pylonmc.rebar.block.base.RebarDirectionalBlock, io.github.pylonmc.rebar.block.base.RebarMultiblock
  • Nested Class Summary

    Nested Classes
    Modifier and Type
    Class
    Description
    class 
     

    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.RebarDirectionalBlock

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

    Fields
    Modifier and Type
    Field
    Description
    static final List<org.bukkit.Material>
     
    static final org.bukkit.NamespacedKey
     
    final Map<String, io.github.pylonmc.rebar.logistics.LogisticGroup>
     
    protected @Nullable String
     

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

    Companion

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

    Companion
  • Constructor Summary

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

    Modifier and Type
    Method
    Description
    boolean
     
    @NotNull Set<@NotNull io.github.pylonmc.rebar.util.position.ChunkPosition>
     
    @NotNull org.bukkit.block.Block
     
    @Nullable String
     
    boolean
    isPartOfMultiblock(@NotNull org.bukkit.block.Block otherBlock)
     
    abstract boolean
    isValidGroup(@NotNull io.github.pylonmc.rebar.logistics.LogisticGroup group)
     
    void
     
    void
     
    void
    setTargetLogisticGroup(@Nullable String targetLogisticGroup)
     
    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.RebarDirectionalBlock

    getFacing, setFacing

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

    getBlock, isFormedAndFullyLoaded, onMultiblockFormed, onMultiblockRefreshed, onMultiblockUnformed
  • Field Details

    • TARGET_LOGISTIC_GROUP_KEY

      public static final org.bukkit.NamespacedKey TARGET_LOGISTIC_GROUP_KEY
    • GROUP_MATERIALS

      public static final List<org.bukkit.Material> GROUP_MATERIALS
    • targetLogisticGroup

      @Nullable protected @Nullable String targetLogisticGroup
    • targetGroups

      public final Map<String, io.github.pylonmc.rebar.logistics.LogisticGroup> targetGroups
  • Constructor Details

    • CargoInteractor

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

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

    • postInitialise

      public void postInitialise()
      Overrides:
      postInitialise in class io.github.pylonmc.rebar.block.RebarBlock
    • write

      public void write(@NotNull @NotNull org.bukkit.persistence.PersistentDataContainer pdc)
      Overrides:
      write in class io.github.pylonmc.rebar.block.RebarBlock
    • getTargetBlock

      @NotNull public @NotNull org.bukkit.block.Block getTargetBlock()
    • refreshTargetInfo

      public void refreshTargetInfo()
    • getChunksOccupied

      @NotNull public @NotNull Set<@NotNull io.github.pylonmc.rebar.util.position.ChunkPosition> getChunksOccupied()
      Specified by:
      getChunksOccupied in interface io.github.pylonmc.rebar.block.base.RebarMultiblock
    • checkFormed

      public boolean checkFormed()
      Specified by:
      checkFormed in interface io.github.pylonmc.rebar.block.base.RebarMultiblock
    • isPartOfMultiblock

      public boolean isPartOfMultiblock(@NotNull @NotNull org.bukkit.block.Block otherBlock)
      Specified by:
      isPartOfMultiblock in interface io.github.pylonmc.rebar.block.base.RebarMultiblock
    • isValidGroup

      public abstract boolean isValidGroup(@NotNull @NotNull io.github.pylonmc.rebar.logistics.LogisticGroup group)
    • setTargetLogisticGroup

      public void setTargetLogisticGroup(@Nullable @Nullable String targetLogisticGroup)
    • getTargetLogisticGroup

      @Nullable public @Nullable String getTargetLogisticGroup()