Interface Furnace

All Superinterfaces:
BlockInventoryHolder, BlockState, Container, InventoryHolder, Lockable, Metadatable, Nameable, PersistentDataHolder, TileState
All Known Subinterfaces:
BlastFurnace, Smoker

public interface Furnace extends Container
Represents a captured state of a furnace.
  • Method Details

    • getBurnTime

      short getBurnTime()
      Get burn time.
      Returns:
      Burn time
    • setBurnTime

      void setBurnTime(short burnTime)
      Set burn time. A burn time greater than 0 will cause this block to be lit, whilst a time less than 0 will extinguish it.
      Parameters:
      burnTime - Burn time
    • getCookTime

      short getCookTime()
      Get cook time. This is the amount of time the item has been cooking for.
      Returns:
      Cook time
    • setCookTime

      void setCookTime(short cookTime)
      Set cook time. This is the amount of time the item has been cooking for.
      Parameters:
      cookTime - Cook time
    • getCookTimeTotal

      int getCookTimeTotal()
      Get cook time total. This is the amount of time the item is required to cook for.
      Returns:
      Cook time total
    • setCookTimeTotal

      void setCookTimeTotal(int cookTimeTotal)
      Set cook time. This is the amount of time the item is required to cook for.
      Parameters:
      cookTimeTotal - Cook time total
    • getRecipesUsed

      @NotNull Map<CookingRecipe<?>,Integer> getRecipesUsed()
      Get the recipes used in this furnace. Note: These recipes used are reset when the result item is manually taken from the furnace.
      Returns:
      An immutable map with the recipes used and the times used
    • getInventory

      @NotNull FurnaceInventory getInventory()
      Description copied from interface: Container
      Gets the inventory of the block represented by this block state.

      If the block was changed to a different type in the meantime, the returned inventory might no longer be valid.

      If this block state is not placed this will return the captured inventory snapshot instead.

      Specified by:
      getInventory in interface Container
      Specified by:
      getInventory in interface InventoryHolder
      Returns:
      the inventory
    • getSnapshotInventory

      @NotNull FurnaceInventory getSnapshotInventory()
      Description copied from interface: Container
      Gets the captured inventory snapshot of this container.

      The returned inventory is not linked to any block. Any modifications to the returned inventory will not be applied to the block represented by this block state up until BlockState.update(boolean, boolean) has been called.

      Specified by:
      getSnapshotInventory in interface Container
      Returns:
      the captured inventory snapshot