Class SmelteryController

java.lang.Object
io.github.pylonmc.pylon.core.block.PylonBlock
io.github.pylonmc.pylon.base.content.machines.smelting.SmelteryComponent
io.github.pylonmc.pylon.base.content.machines.smelting.SmelteryController
All Implemented Interfaces:
io.github.pylonmc.pylon.core.block.base.PylonBreakHandler, io.github.pylonmc.pylon.core.block.base.PylonGuiBlock, io.github.pylonmc.pylon.core.block.base.PylonInteractBlock, io.github.pylonmc.pylon.core.block.base.PylonMultiblock, io.github.pylonmc.pylon.core.block.base.PylonNoVanillaContainerBlock, io.github.pylonmc.pylon.core.block.base.PylonTickingBlock, io.github.pylonmc.pylon.core.block.base.PylonVanillaContainerBlock

public final class SmelteryController extends SmelteryComponent implements io.github.pylonmc.pylon.core.block.base.PylonGuiBlock, io.github.pylonmc.pylon.core.block.base.PylonMultiblock, io.github.pylonmc.pylon.core.block.base.PylonTickingBlock
  • Nested Class Summary

    Nested classes/interfaces inherited from class io.github.pylonmc.pylon.core.block.PylonBlock

    io.github.pylonmc.pylon.core.block.PylonBlock.Companion

    Nested classes/interfaces inherited from interface io.github.pylonmc.pylon.core.block.base.PylonGuiBlock

    io.github.pylonmc.pylon.core.block.base.PylonGuiBlock.Companion

    Nested classes/interfaces inherited from interface io.github.pylonmc.pylon.core.block.base.PylonTickingBlock

    io.github.pylonmc.pylon.core.block.base.PylonTickingBlock.Companion
  • Field Summary

    Fields
    Modifier and Type
    Field
    Description
    static final double
     
    static final double
     
    static final double
     
    final int
     
    static final double
     
    static final int
     

    Fields inherited from class io.github.pylonmc.pylon.core.block.PylonBlock

    Companion

    Fields inherited from interface io.github.pylonmc.pylon.core.block.base.PylonGuiBlock

    Companion

    Fields inherited from interface io.github.pylonmc.pylon.core.block.base.PylonTickingBlock

    Companion
  • Constructor Summary

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

    Modifier and Type
    Method
    Description
    void
    addFluid(@NotNull io.github.pylonmc.pylon.core.fluid.PylonFluid fluid, double amount)
     
    boolean
     
    @NotNull xyz.xenondevs.invui.gui.Gui
     
    @Nullable kotlin.Pair<io.github.pylonmc.pylon.core.fluid.PylonFluid,Double>
     
    double
     
    @NotNull Set<io.github.pylonmc.pylon.core.util.position.ChunkPosition>
     
    double
    getFluidAmount(@NotNull io.github.pylonmc.pylon.core.fluid.PylonFluid fluid)
     
    @NotNull List<org.bukkit.entity.TextDisplay>
     
    double
     
    double
     
    void
    heatAsymptotically(double dt, double target)
     
    boolean
    isPartOfMultiblock(@NotNull org.bukkit.block.Block otherBlock)
     
    boolean
     
    void
     
    void
     
    void
    onMultiblockUnformed(boolean partUnloaded)
     
    void
    postBreak(@NotNull io.github.pylonmc.pylon.core.block.context.BlockBreakContext context)
     
    void
    removeFluid(@NotNull io.github.pylonmc.pylon.core.fluid.PylonFluid fluid, double amount)
     
    void
     
    void
     
    void
    tick(double deltaSeconds)
     
    void
    write(@NotNull org.bukkit.persistence.PersistentDataContainer pdc)
     

    Methods inherited from class io.github.pylonmc.pylon.base.content.machines.smelting.SmelteryComponent

    getController

    Methods inherited from class io.github.pylonmc.pylon.core.block.PylonBlock

    getBlock, getBlockTextureEntity, getBlockTextureItem, getDefaultItem, getDefaultWailaTranslationKey, getDisableBlockTextureEntity, getDropItem, getKey, getPickItem, getPylonBlock, getSchema, getSettings, getWaila, isVanillaBlock, postLoad, refreshBlockTextureItem, register, setDisableBlockTextureEntity, setupBlockTexture, updateBlockTexture, writeDebugInfo

    Methods inherited from class java.lang.Object

    clone, equals, finalize, getClass, hashCode, notify, notifyAll, toString, wait, wait, wait

    Methods inherited from interface io.github.pylonmc.pylon.core.block.base.PylonBreakHandler

    preBreak

    Methods inherited from interface io.github.pylonmc.pylon.core.block.base.PylonGuiBlock

    getGui, getGuiTitle, getItems, onBreak, onInteract

    Methods inherited from interface io.github.pylonmc.pylon.core.block.base.PylonMultiblock

    getBlock, isFormedAndFullyLoaded

    Methods inherited from interface io.github.pylonmc.pylon.core.block.base.PylonNoVanillaContainerBlock

    onInventoryOpen, onItemMoveFrom, onItemMoveTo

    Methods inherited from interface io.github.pylonmc.pylon.core.block.base.PylonTickingBlock

    getTickInterval, isAsync, setAsync, setTickInterval
  • Field Details

    • TICK_INTERVAL

      public static final int TICK_INTERVAL
    • FLUID_REACTION_PER_SECOND

      public static final double FLUID_REACTION_PER_SECOND
    • HEATING_FACTOR

      public static final double HEATING_FACTOR
    • COOLING_FACTOR

      public static final double COOLING_FACTOR
    • ROOM_TEMPERATURE

      public static final double ROOM_TEMPERATURE
    • maxHeight

      public final int maxHeight
  • Constructor Details

    • SmelteryController

      public SmelteryController(@NotNull @NotNull org.bukkit.block.Block block, @NotNull @NotNull io.github.pylonmc.pylon.core.block.context.BlockCreateContext context)
    • SmelteryController

      public SmelteryController(@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.pylon.core.block.PylonBlock
    • postBreak

      public void postBreak(@NotNull @NotNull io.github.pylonmc.pylon.core.block.context.BlockBreakContext context)
      Specified by:
      postBreak in interface io.github.pylonmc.pylon.core.block.base.PylonBreakHandler
    • createGui

      @NotNull public @NotNull xyz.xenondevs.invui.gui.Gui createGui()
      Specified by:
      createGui in interface io.github.pylonmc.pylon.core.block.base.PylonGuiBlock
    • getChunksOccupied

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

      public boolean checkFormed()
      Specified by:
      checkFormed in interface io.github.pylonmc.pylon.core.block.base.PylonMultiblock
    • onMultiblockFormed

      public void onMultiblockFormed()
      Specified by:
      onMultiblockFormed in interface io.github.pylonmc.pylon.core.block.base.PylonMultiblock
    • onMultiblockRefreshed

      public void onMultiblockRefreshed()
      Specified by:
      onMultiblockRefreshed in interface io.github.pylonmc.pylon.core.block.base.PylonMultiblock
    • onMultiblockUnformed

      public void onMultiblockUnformed(boolean partUnloaded)
      Specified by:
      onMultiblockUnformed in interface io.github.pylonmc.pylon.core.block.base.PylonMultiblock
    • isPartOfMultiblock

      public boolean isPartOfMultiblock(@NotNull @NotNull org.bukkit.block.Block otherBlock)
      Specified by:
      isPartOfMultiblock in interface io.github.pylonmc.pylon.core.block.base.PylonMultiblock
    • addFluid

      public void addFluid(@NotNull @NotNull io.github.pylonmc.pylon.core.fluid.PylonFluid fluid, double amount)
    • removeFluid

      public void removeFluid(@NotNull @NotNull io.github.pylonmc.pylon.core.fluid.PylonFluid fluid, double amount)
    • getFluidAmount

      public double getFluidAmount(@NotNull @NotNull io.github.pylonmc.pylon.core.fluid.PylonFluid fluid)
    • getTotalFluid

      public double getTotalFluid()
    • getBottomFluid

      @Nullable public @Nullable kotlin.Pair<io.github.pylonmc.pylon.core.fluid.PylonFluid,Double> getBottomFluid()
    • heatAsymptotically

      public void heatAsymptotically(double dt, double target)
    • spawnPixels

      public void spawnPixels()
    • getPixels

      @NotNull public @NotNull List<org.bukkit.entity.TextDisplay> getPixels()
    • removePixels

      public void removePixels()
    • tick

      public void tick(double deltaSeconds)
      Specified by:
      tick in interface io.github.pylonmc.pylon.core.block.base.PylonTickingBlock
    • isRunning

      public boolean isRunning()
    • getTemperature

      public double getTemperature()
    • getCapacity

      public double getCapacity()