Class BlockEntityFurnace

All Implemented Interfaces:
BlockEntityContainer, BlockEntityNameable, InventoryHolder, Cloneable
Direct Known Subclasses:
BlockEntityBlastFurnace, BlockEntitySmoker

public class BlockEntityFurnace extends BlockEntitySpawnable implements InventoryHolder, BlockEntityContainer, BlockEntityNameable
Author:
MagicDroidX
  • Field Details

    • inventory

      protected FurnaceInventory inventory
    • burnTime

      protected int burnTime
    • burnDuration

      protected int burnDuration
    • cookTime

      protected int cookTime
    • maxTime

      protected int maxTime
  • Constructor Details

  • Method Details

    • getInventoryType

      @PowerNukkitOnly protected InventoryType getInventoryType()
    • initBlockEntity

      protected void initBlockEntity()
      Overrides:
      initBlockEntity in class BlockEntitySpawnable
    • getFurnaceName

      @PowerNukkitOnly protected String getFurnaceName()
    • getClientName

      @PowerNukkitOnly protected String getClientName()
    • getName

      public String getName()
      Description copied from interface: BlockEntityNameable
      返回这个事物的名字。
      Gets the name of this object.
      Specified by:
      getName in interface BlockEntityNameable
      Overrides:
      getName in class BlockEntity
      Returns:
      这个事物的名字。
      The name of this object.
    • hasName

      public boolean hasName()
      Description copied from interface: BlockEntityNameable
      返回这个事物是否有名字。
      Whether this object has a name.
      Specified by:
      hasName in interface BlockEntityNameable
      Returns:
      如果有名字,返回 true
      true for this object has a name.
    • setName

      public void setName(String name)
      Description copied from interface: BlockEntityNameable
      设置或更改这个事物的名字。
      Changes the name of this object, or names it.
      Specified by:
      setName in interface BlockEntityNameable
      Parameters:
      name - 这个事物的新名字。
      The new name of this object.
    • close

      public void close()
      Overrides:
      close in class BlockEntity
    • onBreak

      public void onBreak()
      Overrides:
      onBreak in class BlockEntity
    • saveNBT

      public void saveNBT()
      Overrides:
      saveNBT in class BlockEntity
    • loadNBT

      @Since("1.6.0.0-PNX") public void loadNBT()
      Overrides:
      loadNBT in class BlockEntity
    • isBlockEntityValid

      public boolean isBlockEntityValid()
      Specified by:
      isBlockEntityValid in class BlockEntity
    • getSize

      public int getSize()
      Description copied from interface: BlockEntityContainer
      返回这个容器最多能包含的物品数量。
      Returns the max number of items that this container can contain.
      Specified by:
      getSize in interface BlockEntityContainer
      Returns:
      最多能包含的物品数量。
      The max number.
    • getSlotIndex

      protected int getSlotIndex(int index)
    • getItem

      public Item getItem(int index)
      Description copied from interface: BlockEntityContainer
      返回一个存储在容器里的物品的Item对象。
      Returns an item that stores in this container, as an Item object.
      Specified by:
      getItem in interface BlockEntityContainer
      Parameters:
      index - 这个物品的索引序号。
      The index number of this item.
      Returns:
      这个物品的 Item对象。
      An Item object for this item.
    • setItem

      public void setItem(int index, Item item)
      Description copied from interface: BlockEntityContainer
      把一个物品存储进容器。
      Sets or stores this item into this container.

      注意:如果这个容器相应的索引序号已经有了物品,那么新存储的物品将会替换原有的物品。
      Notice: If there is already an item for this index number, the new item being stored will REPLACE the old one.

      Specified by:
      setItem in interface BlockEntityContainer
      Parameters:
      index - 这个物品的索引序号。
      The index number of this item.
      item - 描述这个物品的 Item对象。
      The Item object that describes this item.
    • getInventory

      public FurnaceInventory getInventory()
      Specified by:
      getInventory in interface InventoryHolder
    • getIdleBlockId

      @PowerNukkitOnly protected int getIdleBlockId()
    • getBurningBlockId

      @PowerNukkitOnly protected int getBurningBlockId()
    • setBurning

      @PowerNukkitOnly protected void setBurning(boolean burning)
    • checkFuel

      protected void checkFuel(Item fuel)
    • matchRecipe

      @PowerNukkitOnly protected SmeltingRecipe matchRecipe(Item raw)
    • getSpeedMultiplier

      @PowerNukkitOnly protected int getSpeedMultiplier()
    • onUpdate

      public boolean onUpdate()
      Overrides:
      onUpdate in class BlockEntity
    • getSpawnCompound

      public CompoundTag getSpawnCompound()
      Overrides:
      getSpawnCompound in class BlockEntitySpawnable
    • getBurnTime

      public int getBurnTime()
    • setBurnTime

      public void setBurnTime(int burnTime)
    • getBurnDuration

      public int getBurnDuration()
    • setBurnDuration

      public void setBurnDuration(int burnDuration)
    • getCookTime

      public int getCookTime()
    • setCookTime

      public void setCookTime(int cookTime)
    • getMaxTime

      public int getMaxTime()
    • setMaxTime

      public void setMaxTime(int maxTime)