Class CoreDrill

java.lang.Object
io.github.pylonmc.rebar.block.RebarBlock
io.github.pylonmc.pylon.content.machines.simple.CoreDrill
All Implemented Interfaces:
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.RebarGhostBlockHolder, io.github.pylonmc.rebar.block.base.RebarMultiblock, io.github.pylonmc.rebar.block.base.RebarProcessor, io.github.pylonmc.rebar.block.base.RebarSimpleMultiblock, io.github.pylonmc.rebar.block.base.RebarTickingBlock, net.kyori.adventure.key.Keyed, org.bukkit.Keyed
Direct Known Subclasses:
DieselCoreDrill, HydraulicCoreDrill, ManualCoreDrill

public abstract class CoreDrill extends io.github.pylonmc.rebar.block.RebarBlock implements io.github.pylonmc.rebar.block.base.RebarSimpleMultiblock, io.github.pylonmc.rebar.block.base.RebarDirectionalBlock, io.github.pylonmc.rebar.block.base.RebarProcessor, io.github.pylonmc.rebar.block.base.RebarTickingBlock
  • Nested Class Summary

    Nested Classes
    Modifier and Type
    Class
    Description
    static 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

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

    io.github.pylonmc.rebar.block.base.RebarGhostBlockHolder.GhostBlock<E>, io.github.pylonmc.rebar.block.base.RebarGhostBlockHolder.GhostBlockHitbox, io.github.pylonmc.rebar.block.base.RebarGhostBlockHolder.RebarGhostBlock, io.github.pylonmc.rebar.block.base.RebarGhostBlockHolder.VanillaGhostBlock

    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

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

    io.github.pylonmc.rebar.block.base.RebarSimpleMultiblock.Companion, io.github.pylonmc.rebar.block.base.RebarSimpleMultiblock.MultiblockComponent

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

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

    Fields
    Modifier and Type
    Field
    Description
    protected final org.bukkit.Material
     
    protected final io.github.pylonmc.rebar.item.builder.ItemStackBuilder
     
    protected final org.bukkit.inventory.ItemStack
     
    protected final int
     
    protected final int
     
    protected final boolean
     

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

    Companion

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

    Companion

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

    Companion

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

    Companion

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

    Companion
  • Constructor Summary

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

    Modifier and Type
    Method
    Description
    int
     
    @Nullable org.bukkit.entity.ItemDisplay
     
    static @NotNull org.joml.Matrix4f
    getDrillDisplayMatrix(double rotation)
     
    int
     
    int
     
    @Nullable io.github.pylonmc.rebar.waila.WailaDisplay
    getWaila(@NotNull org.bukkit.entity.Player player)
     
    void
     
    void
     
    void
     

    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, isVanillaBlock, postInitialise, postLoad, refreshBlockTextureItem, register, scheduleBlockTextureItemRefresh, setDisableBlockTextureEntity, setupBlockTexture, write, 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.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.RebarGhostBlockHolder

    addGhostBlock, getGhostBlockHitbox, getRebarGhostBlockDisplay, getVanillaGhostBlockDisplay, hasGhostBlockAt, removeGhostBlock

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

    getBlock, isFormedAndFullyLoaded, onMultiblockRefreshed

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

    finishProcess, getProcessProgressItem, getProcessTicksRemaining, getProcessTimeTicks, isProcessing, progressProcess, setProcessProgressItem, startProcess, stopProcess

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

    checkFormed, getChunksOccupied, getComponents, getCulledEntityIds, getHorizontalRadius, getMaxCorner, getMinCorner, getMultiblockBlock, getMultiblockComponent, getMultiblockComponent, getMultiblockComponentOrThrow, getMultiblockComponentOrThrow, getMultiblockDirection, getRotatedPosition, isPartOfMultiblock, onMultiblockFormed, onMultiblockUnformed, setMultiblockDirection, validStructures

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

    getTickInterval, isAsync, setAsync, setTickInterval
  • Field Details

    • rotationDuration

      protected final int rotationDuration
    • rotationsPerCycle

      protected final int rotationsPerCycle
    • spawnBlockParticles

      protected final boolean spawnBlockParticles
    • output

      protected final org.bukkit.inventory.ItemStack output
    • drillMaterial

      protected final org.bukkit.Material drillMaterial
    • drillStack

      protected final io.github.pylonmc.rebar.item.builder.ItemStackBuilder drillStack
  • Constructor Details

    • CoreDrill

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

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

    • getDrillDisplay

      @Nullable public @Nullable org.bukkit.entity.ItemDisplay getDrillDisplay()
    • getDrillDisplayMatrix

      @NotNull public static @NotNull org.joml.Matrix4f getDrillDisplayMatrix(double rotation)
    • startCycle

      public void startCycle()
    • tick

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

      public void onProcessFinished()
      Specified by:
      onProcessFinished in interface io.github.pylonmc.rebar.block.base.RebarProcessor
    • getCycleDuration

      public int getCycleDuration()
    • getWaila

      @Nullable public @Nullable io.github.pylonmc.rebar.waila.WailaDisplay getWaila(@NotNull @NotNull org.bukkit.entity.Player player)
      Specified by:
      getWaila in interface io.github.pylonmc.rebar.block.base.RebarSimpleMultiblock
      Overrides:
      getWaila in class io.github.pylonmc.rebar.block.RebarBlock
    • getRotationDuration

      public int getRotationDuration()
    • getRotationsPerCycle

      public int getRotationsPerCycle()