Class Quarry

java.lang.Object
io.github.pylonmc.rebar.block.RebarBlock
io.github.pylonmc.pylon.content.machines.hydraulics.Quarry
All Implemented Interfaces:
io.github.pylonmc.rebar.block.base.RebarMultiblock, io.github.pylonmc.rebar.block.base.RebarProcessor, net.kyori.adventure.key.Keyed, org.bukkit.Keyed
Direct Known Subclasses:
DieselQuarry

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

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

    io.github.pylonmc.rebar.block.base.RebarProcessor.Companion, io.github.pylonmc.rebar.block.base.RebarProcessor.ProcessorData
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    static final org.bukkit.NamespacedKey
     
    protected final List<io.github.pylonmc.rebar.util.position.BlockPosition>
     
    static final org.bukkit.NamespacedKey
     
    protected final Set<io.github.pylonmc.rebar.util.position.ChunkPosition>
     
    protected int
     
    static final org.bukkit.NamespacedKey
     
    final int
     

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

    Companion

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

    Companion
  • Constructor Summary

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

    Modifier and Type
    Method
    Description
    boolean
     
    protected abstract @Nullable Integer
    getBreakTicks(@NotNull org.bukkit.block.Block block)
     
    @NotNull Set<io.github.pylonmc.rebar.util.position.ChunkPosition>
     
    boolean
    isPartOfMultiblock(@NotNull org.bukkit.block.Block otherBlock)
     
    void
     
    protected 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, postInitialise, 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

    key

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

    getBlock, isFormedAndFullyLoaded, onMultiblockFormed, onMultiblockUnformed

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

    finishProcess, getProcessProgressItem, getProcessTicksRemaining, getProcessTimeTicks, isProcessing, onProcessFinished, progressProcess, setProcessProgressItem, startProcess, stopProcess
  • Field Details

    • INDEX_KEY

      public static final org.bukkit.NamespacedKey INDEX_KEY
    • BLOCK_POSITIONS_KEY

      public static final org.bukkit.NamespacedKey BLOCK_POSITIONS_KEY
    • CHUNK_POSITIONS_KEY

      public static final org.bukkit.NamespacedKey CHUNK_POSITIONS_KEY
    • radius

      public final int radius
    • blockPositions

      protected final List<io.github.pylonmc.rebar.util.position.BlockPosition> blockPositions
    • chunkPositions

      protected final Set<io.github.pylonmc.rebar.util.position.ChunkPosition> chunkPositions
    • index

      protected int index
  • Constructor Details

    • Quarry

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

      public Quarry(@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 io.github.pylonmc.rebar.block.RebarBlock
    • updateQuarry

      protected void updateQuarry()
    • getChunksOccupied

      @NotNull public @NotNull Set<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
    • onMultiblockRefreshed

      public void onMultiblockRefreshed()
      Specified by:
      onMultiblockRefreshed in interface io.github.pylonmc.rebar.block.base.RebarMultiblock
    • getBreakTicks

      @Nullable protected abstract @Nullable Integer getBreakTicks(@NotNull @NotNull org.bukkit.block.Block block)