Class HydraulicHammerHead

java.lang.Object
io.github.pylonmc.rebar.block.RebarBlock
io.github.pylonmc.pylon.content.machines.hydraulics.HydraulicHammerHead
All Implemented Interfaces:
io.github.pylonmc.rebar.block.base.RebarBreakHandler, io.github.pylonmc.rebar.block.base.RebarDirectionalBlock, io.github.pylonmc.rebar.block.base.RebarEntityHolderBlock, io.github.pylonmc.rebar.block.base.RebarFluidBlock, io.github.pylonmc.rebar.block.base.RebarFluidBufferBlock, io.github.pylonmc.rebar.block.base.RebarInventoryBlock, io.github.pylonmc.rebar.block.base.RebarLogisticBlock, io.github.pylonmc.rebar.block.base.RebarNoVanillaInventoryBlock, io.github.pylonmc.rebar.block.base.RebarProcessor, 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 HydraulicHammerHead extends io.github.pylonmc.rebar.block.RebarBlock implements io.github.pylonmc.rebar.block.base.RebarTickingBlock, io.github.pylonmc.rebar.block.base.RebarFluidBufferBlock, io.github.pylonmc.rebar.block.base.RebarInventoryBlock, io.github.pylonmc.rebar.block.base.RebarVirtualInventoryBlock, io.github.pylonmc.rebar.block.base.RebarProcessor, io.github.pylonmc.rebar.block.base.RebarLogisticBlock, io.github.pylonmc.rebar.block.base.RebarDirectionalBlock
  • 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.RebarFluidBufferBlock

    io.github.pylonmc.rebar.block.base.RebarFluidBufferBlock.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.RebarLogisticBlock

    io.github.pylonmc.rebar.block.base.RebarLogisticBlock.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

    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 double
     
    final int
     
    final io.github.pylonmc.rebar.item.builder.ItemStackBuilder
     
    final double
     
    final double
     
    final int
     

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

    Companion

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

    Companion

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

    Companion

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

    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
    HydraulicHammerHead(@NotNull org.bukkit.block.Block block, @NotNull io.github.pylonmc.rebar.block.context.BlockCreateContext context)
     
    HydraulicHammerHead(@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
     
    @Nullable org.bukkit.entity.ItemDisplay
     
    @Nullable org.bukkit.entity.ItemDisplay
     
    static @NotNull org.joml.Matrix4f
    getHeadTransformation(double translationY)
     
    static @NotNull org.joml.Matrix4f
    getTipTransformation(double translationY)
     
    @NotNull Map<@NotNull String, @NotNull xyz.xenondevs.invui.inventory.VirtualInventory>
     
    @Nullable io.github.pylonmc.rebar.waila.WailaDisplay
    getWaila(@NotNull org.bukkit.entity.Player player)
     
    void
    onBreak(@NotNull List<@NotNull org.bukkit.inventory.ItemStack> drops, @NotNull io.github.pylonmc.rebar.block.context.BlockBreakContext context)
     
    void
     
    void
     
    void
    updateHammerTip(org.bukkit.inventory.ItemStack newItem)
     

    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, 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.RebarBreakHandler

    postBreak, preBreak

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

    getFacing, setFacing

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

    createFluidPoint, createFluidPoint, createFluidPoint, createFluidPoint, getFluidPointDisplay, getFluidPointDisplayOrThrow

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

    addFluid, canSetFluid, createFluidBuffer, deleteFluidBuffer, fluidAmount, fluidAmountRequested, fluidCapacity, fluidSpaceRemaining, getSuppliedFluids, hasFluid, onFluidAdded, onFluidRemoved, removeFluid, setFluid, setFluidCapacity

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

    onInventoryOpen, onItemMoveFrom, onItemMoveTo

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

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

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

    getTickInterval, isAsync, setAsync, setTickInterval
  • Field Details

    • goDownTimeTicks

      public final int goDownTimeTicks
    • speed

      public final double speed
    • hydraulicFluidPerCraft

      public final double hydraulicFluidPerCraft
    • buffer

      public final double buffer
    • tickInterval

      public final int tickInterval
    • hammerStack

      public final io.github.pylonmc.rebar.item.builder.ItemStackBuilder hammerStack
  • Constructor Details

    • HydraulicHammerHead

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

      public HydraulicHammerHead(@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
    • updateHammerTip

      public void updateHammerTip(org.bukkit.inventory.ItemStack newItem)
    • tick

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

      public void onBreak(@NotNull @NotNull List<@NotNull org.bukkit.inventory.ItemStack> drops, @NotNull @NotNull io.github.pylonmc.rebar.block.context.BlockBreakContext context)
      Specified by:
      onBreak in interface io.github.pylonmc.rebar.block.base.RebarBreakHandler
      Specified by:
      onBreak in interface io.github.pylonmc.rebar.block.base.RebarFluidBlock
      Specified by:
      onBreak in interface io.github.pylonmc.rebar.block.base.RebarVirtualInventoryBlock
    • getHammerHead

      @Nullable public @Nullable org.bukkit.entity.ItemDisplay getHammerHead()
    • getHammerTip

      @Nullable public @Nullable org.bukkit.entity.ItemDisplay getHammerTip()
    • getHeadTransformation

      @NotNull public static @NotNull org.joml.Matrix4f getHeadTransformation(double translationY)
    • getTipTransformation

      @NotNull public static @NotNull org.joml.Matrix4f getTipTransformation(double translationY)
    • getWaila

      @Nullable public @Nullable io.github.pylonmc.rebar.waila.WailaDisplay getWaila(@NotNull @NotNull org.bukkit.entity.Player player)
      Overrides:
      getWaila in class io.github.pylonmc.rebar.block.RebarBlock
    • createGui

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

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