Class Kiln

java.lang.Object
io.github.pylonmc.rebar.block.RebarBlock
io.github.pylonmc.pylon.content.machines.smelting.Kiln
All Implemented Interfaces:
io.github.pylonmc.rebar.block.base.RebarBreakHandler, 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.RebarInventoryBlock, io.github.pylonmc.rebar.block.base.RebarMultiblock, io.github.pylonmc.rebar.block.base.RebarNoVanillaInventoryBlock, io.github.pylonmc.rebar.block.base.RebarRecipeProcessor<KilnRecipe>, io.github.pylonmc.rebar.block.base.RebarSimpleMultiblock, 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 Kiln extends io.github.pylonmc.rebar.block.RebarBlock implements io.github.pylonmc.rebar.block.base.RebarSimpleMultiblock, io.github.pylonmc.rebar.block.base.RebarInventoryBlock, io.github.pylonmc.rebar.block.base.RebarRecipeProcessor<KilnRecipe>, io.github.pylonmc.rebar.block.base.RebarDirectionalBlock, io.github.pylonmc.rebar.block.base.RebarVirtualInventoryBlock, io.github.pylonmc.rebar.block.base.RebarTickingBlock
  • Nested Class Summary

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

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

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

    io.github.pylonmc.rebar.block.base.RebarRecipeProcessor.Companion, io.github.pylonmc.rebar.block.base.RebarRecipeProcessor.RecipeProcessorData<T>

    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

    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 io.github.pylonmc.rebar.item.builder.ItemStackBuilder
     
    static final org.bukkit.NamespacedKey
     
    static final org.bukkit.NamespacedKey
     
    final io.github.pylonmc.rebar.item.builder.ItemStackBuilder
     
    final double
     
    final double
     
    final double
     
    double
     
    static final org.bukkit.NamespacedKey
     
    final xyz.xenondevs.invui.item.AbstractItem
     
    final io.github.pylonmc.rebar.item.builder.ItemStackBuilder
     
    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.RebarInventoryBlock

    Companion

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

    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

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

    Companion
  • Constructor Summary

    Constructors
    Constructor
    Description
    Kiln(@NotNull org.bukkit.block.Block block, @NotNull io.github.pylonmc.rebar.block.context.BlockCreateContext context)
     
    Kiln(@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
     
    @NotNull Map<@NotNull org.joml.Vector3i, @NotNull io.github.pylonmc.rebar.block.base.RebarSimpleMultiblock.MultiblockComponent>
     
    @NotNull org.bukkit.block.Block
     
    @NotNull Map<String, xyz.xenondevs.invui.inventory.VirtualInventory>
     
    @Nullable io.github.pylonmc.rebar.waila.WailaDisplay
    getWaila(@NotNull org.bukkit.entity.Player player)
     
    void
     
    void
    onMultiblockUnformed(boolean partUnloaded)
     
    void
    onRecipeFinished(@NonNull KilnRecipe recipe)
     
    void
     
    void
     
    void
     
    boolean
    tryStartRecipe(@NonNull KilnRecipe recipe)
     
    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, 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

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

    getGuiTitle

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

    getBlock, isFormedAndFullyLoaded, onMultiblockRefreshed

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

    onInventoryOpen, onItemMoveFrom, onItemMoveTo

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

    finishRecipe, getCurrentRecipe, getLastRecipe, getRecipeProgress, getRecipeProgressItem, getRecipeTicksRemaining, getRecipeTimeTicks, isProcessingRecipe, progressRecipe, setRecipeProgressItem, setRecipeType, startRecipe, stopRecipe

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

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

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

    getTickInterval, isAsync, setAsync, setTickInterval

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

    onBreak
  • Field Details

    • TEMPERATURE_KEY

      public static final org.bukkit.NamespacedKey TEMPERATURE_KEY
    • FUEL_TICKS_TOTAL_KEY

      public static final org.bukkit.NamespacedKey FUEL_TICKS_TOTAL_KEY
    • FUEL_TICKS_REMAINING_KEY

      public static final org.bukkit.NamespacedKey FUEL_TICKS_REMAINING_KEY
    • tickInterval

      public final int tickInterval
    • minTemperature

      public final double minTemperature
    • maxTemperature

      public final double maxTemperature
    • heatingRate

      public final double heatingRate
    • burningStack

      public final io.github.pylonmc.rebar.item.builder.ItemStackBuilder burningStack
    • fuelStack

      public final io.github.pylonmc.rebar.item.builder.ItemStackBuilder fuelStack
    • temperatureStack

      public final io.github.pylonmc.rebar.item.builder.ItemStackBuilder temperatureStack
    • temperatureItem

      public final xyz.xenondevs.invui.item.AbstractItem temperatureItem
    • temperature

      public double temperature
  • Constructor Details

    • Kiln

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

      public Kiln(@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
    • getComponents

      @NotNull public @NotNull Map<@NotNull org.joml.Vector3i, @NotNull io.github.pylonmc.rebar.block.base.RebarSimpleMultiblock.MultiblockComponent> getComponents()
      Specified by:
      getComponents in interface io.github.pylonmc.rebar.block.base.RebarSimpleMultiblock
    • tick

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

      public void tryConsumeFuel()
    • tryStartRecipe

      public boolean tryStartRecipe(@NonNull KilnRecipe recipe)
    • tryStartRecipe

      public void tryStartRecipe()
    • createGui

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

      public void onRecipeFinished(@NonNull KilnRecipe recipe)
      Specified by:
      onRecipeFinished in interface io.github.pylonmc.rebar.block.base.RebarRecipeProcessor<KilnRecipe>
    • onMultiblockFormed

      public void onMultiblockFormed()
      Specified by:
      onMultiblockFormed in interface io.github.pylonmc.rebar.block.base.RebarMultiblock
      Specified by:
      onMultiblockFormed in interface io.github.pylonmc.rebar.block.base.RebarSimpleMultiblock
    • onMultiblockUnformed

      public void onMultiblockUnformed(boolean partUnloaded)
      Specified by:
      onMultiblockUnformed in interface io.github.pylonmc.rebar.block.base.RebarMultiblock
      Specified by:
      onMultiblockUnformed in interface io.github.pylonmc.rebar.block.base.RebarSimpleMultiblock
    • getLight

      @NotNull public @NotNull org.bukkit.block.Block getLight()
    • getVirtualInventories

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