Class Crucible

java.lang.Object
io.github.pylonmc.rebar.block.RebarBlock
io.github.pylonmc.pylon.content.machines.simple.Crucible
All Implemented Interfaces:
FluidTankWithDisplayEntity, io.github.pylonmc.rebar.block.base.RebarBreakHandler, io.github.pylonmc.rebar.block.base.RebarCauldron, 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.RebarFluidTank, io.github.pylonmc.rebar.block.base.RebarInteractBlock, io.github.pylonmc.rebar.block.base.RebarLogisticBlock, io.github.pylonmc.rebar.block.base.RebarTickingBlock, net.kyori.adventure.key.Keyed, org.bukkit.Keyed

public final class Crucible extends io.github.pylonmc.rebar.block.RebarBlock implements io.github.pylonmc.rebar.block.base.RebarInteractBlock, FluidTankWithDisplayEntity, io.github.pylonmc.rebar.block.base.RebarDirectionalBlock, io.github.pylonmc.rebar.block.base.RebarCauldron, io.github.pylonmc.rebar.block.base.RebarTickingBlock, io.github.pylonmc.rebar.block.base.RebarLogisticBlock
  • Nested Class Summary

    Nested Classes
    Modifier and Type
    Class
    Description
    static interface 
     

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

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

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

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

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

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

    Fields
    Modifier and Type
    Field
    Description
    final int
     
    final int
     
    static final Map<org.bukkit.Material, Integer>
     

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

    Companion

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

    Companion

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

    Companion

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

    Companion

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

    Companion

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

    Companion

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

    Companion
  • Constructor Summary

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

    Modifier and Type
    Method
    Description
    void
     
    org.joml.Vector3d
     
    org.joml.Vector3d
     
    @Nullable Integer
     
    int
     
    @NotNull io.github.pylonmc.rebar.waila.WailaDisplay
    getWaila(@NotNull org.bukkit.entity.Player player)
     
    boolean
    isAllowedFluid(@NotNull io.github.pylonmc.rebar.fluid.RebarFluid fluid)
     
    void
    onBreak(@NotNull List<org.bukkit.inventory.ItemStack> drops, @NotNull io.github.pylonmc.rebar.block.context.BlockBreakContext context)
     
    void
    onInteract(@NotNull org.bukkit.event.player.PlayerInteractEvent event, @NotNull org.bukkit.event.EventPriority priority)
     
    void
    onLevelChange(@NotNull org.bukkit.event.block.CauldronLevelChangeEvent event, @NotNull org.bukkit.event.EventPriority priority)
     
    void
     
    int
     
    void
     
    boolean
     
    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, 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.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.RebarFluidTank

    addFluid, canAddFluid, canAddFluid, canSetFluid, fluidAmountRequested, getFluidAmount, getFluidCapacity, getFluidSpaceRemaining, getFluidType, getSuppliedFluids, onFluidAdded, onFluidRemoved, removeFluid, setCapacity

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

    isAsync, setAsync, setTickInterval
  • Field Details

    • capacity

      public final int capacity
    • smeltTime

      public final int smeltTime
    • VANILLA_BLOCK_HEAT_MAP

      public static final Map<org.bukkit.Material, Integer> VANILLA_BLOCK_HEAT_MAP
  • Constructor Details

    • Crucible

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

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

    • spaceAvailable

      public int spaceAvailable()
    • onBreak

      public void onBreak(@NotNull @NotNull List<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
    • write

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

      public boolean isAllowedFluid(@NotNull @NotNull io.github.pylonmc.rebar.fluid.RebarFluid fluid)
      Specified by:
      isAllowedFluid in interface io.github.pylonmc.rebar.block.base.RebarFluidTank
    • onInteract

      public void onInteract(@NotNull @NotNull org.bukkit.event.player.PlayerInteractEvent event, @NotNull @NotNull org.bukkit.event.EventPriority priority)
      Specified by:
      onInteract in interface io.github.pylonmc.rebar.block.base.RebarInteractBlock
    • clearInventory

      public void clearInventory()
    • tryDoRecipe

      public boolean tryDoRecipe()
    • onLevelChange

      public void onLevelChange(@NotNull @NotNull org.bukkit.event.block.CauldronLevelChangeEvent event, @NotNull @NotNull org.bukkit.event.EventPriority priority)
      Specified by:
      onLevelChange in interface io.github.pylonmc.rebar.block.base.RebarCauldron
    • fluidDisplayTranslation

      public org.joml.Vector3d fluidDisplayTranslation()
      Specified by:
      fluidDisplayTranslation in interface FluidTankWithDisplayEntity
    • fluidDisplayScale

      public org.joml.Vector3d fluidDisplayScale()
      Specified by:
      fluidDisplayScale in interface FluidTankWithDisplayEntity
    • getWaila

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

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

      public int getTickInterval()
      Specified by:
      getTickInterval in interface io.github.pylonmc.rebar.block.base.RebarTickingBlock
    • postInitialise

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

      @Nullable public @Nullable Integer getHeatFactor()