Package cn.nukkit.blockentity
Class BlockEntityFurnace
java.lang.Object
cn.nukkit.math.Vector3
cn.nukkit.positiontracking.NamedPosition
cn.nukkit.level.Position
cn.nukkit.blockentity.BlockEntity
cn.nukkit.blockentity.BlockEntitySpawnable
cn.nukkit.blockentity.BlockEntityFurnace
- All Implemented Interfaces:
BlockEntityContainer
,BlockEntityNameable
,InventoryHolder
,RecipeInventoryHolder
,Cloneable
- Direct Known Subclasses:
BlockEntityBlastFurnace
,BlockEntitySmoker
public class BlockEntityFurnace
extends BlockEntitySpawnable
implements InventoryHolder, RecipeInventoryHolder, BlockEntityContainer, BlockEntityNameable
- Author:
- MagicDroidX
-
Field Summary
Modifier and TypeFieldDescriptionprotected int
protected int
protected int
protected FurnaceInventory
protected int
protected float
Fields inherited from class cn.nukkit.blockentity.BlockEntity
BANNER, BARREL, BEACON, BED, BEEHIVE, BELL, BLAST_FURNACE, BREWING_STAND, CAMPFIRE, CAULDRON, CHEST, chunk, closed, COMMAND_BLOCK, COMPARATOR, CONDUIT, count, DAYLIGHT_DETECTOR, DISPENSER, DROPPER, ENCHANT_TABLE, END_GATEWAY, END_PORTAL, ENDER_CHEST, FLOWER_POT, FURNACE, GLOW_ITEM_FRAME, HOPPER, id, ITEM_FRAME, JUKEBOX, lastUpdate, LECTERN, LODESTONE, MOB_SPAWNER, movable, MOVING_BLOCK, MUSIC, name, namedTag, NETHER_REACTOR, PISTON_ARM, SCULK_CATALYST, SCULK_SENSOR, SCULK_SHRIEKER, server, SHULKER_BOX, SIGN, SKULL, SMOKER, STRUCTURE_BLOCK, TARGET, timing
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionshort
protected void
void
close()
int
protected int
int
protected String
int
protected String
protected int
获取该物品栏拥有者的物品栏的原料视图,这个视图通常是以InventorySlice
指向的原始物品栏用于存储原料的一部分。
Get the ingredients view of the inventory holder's inventory, which is usually a part of the raw inventory.protected InventoryType
getItem
(int index) 返回一个存储在容器里的物品的Item
对象。
Returns an item that stores in this container, as anItem
object.int
getName()
返回这个事物的名字。
Gets the name of this object.获取该物品栏拥有者的物品栏的产物视图,这个视图通常是以InventorySlice
指向的原始物品栏用于存储结果的一部分。
Get the result view of the inventory holder's inventory, which is usually a part of the raw inventory.int
getSize()
返回这个容器最多能包含的物品数量。
Returns the max number of items that this container can contain.protected int
getSlotIndex
(int index) protected int
float
boolean
hasName()
返回这个事物是否有名字。
Whether this object has a name.protected void
boolean
void
loadNBT()
从方块实体的namedtag中读取数据protected SmeltingRecipe
matchRecipe
(Item raw) void
onBreak()
boolean
onUpdate()
void
saveNBT()
存储方块实体数据到namedtagvoid
setBurnDuration
(int burnDuration) protected void
setBurning
(boolean burning) void
setBurnTime
(int burnTime) void
setCookTime
(int cookTime) void
把一个物品存储进容器。
Sets or stores this item into this container.void
setMaxTime
(int maxTime) void
设置或更改这个事物的名字。
Changes the name of this object, or names it.void
setStoredXP
(float storedXP) Methods inherited from class cn.nukkit.blockentity.BlockEntitySpawnable
getSpawnPacket, getSpawnPacket, spawnTo, spawnToAll, updateCompoundTag
Methods inherited from class cn.nukkit.blockentity.BlockEntity
createBlockEntity, createBlockEntity, createBlockEntity, getBlock, getCleanedNBT, getDefaultCompound, getId, getLevelBlockEntity, getSaveId, init, isMovable, isObservable, onBreak, registerBlockEntity, scheduleUpdate, setDirty
Methods inherited from class cn.nukkit.level.Position
abs, add, add, add, add, ceil, clone, divide, floor, fromObject, fromObject, getChunk, getLevel, getLevelBlock, getLevelBlock, getLevelBlock, getLevelBlockAround, getLevelBlockAtLayer, getLevelBlockState, getLevelBlockState, getLevelName, getLocation, getSide, getSide, getSidePos, getTickCachedLevelBlock, getTickCachedLevelBlockAtLayer, getTypedBlockEntity, getValidLevel, isValid, multiply, round, setComponents, setComponents, setLevel, setStrong, setWeak, subtract, subtract, subtract, subtract, subtract, toString
Methods inherited from class cn.nukkit.positiontracking.NamedPosition
matchesNamedPosition
Methods inherited from class cn.nukkit.math.Vector3
asBlockVector3, asVector3f, cross, distance, distance, distanceManhattan, distanceSquared, distanceSquared, dot, down, down, east, east, equals, getAxis, getChunkSectionY, getChunkVector, getChunkX, getChunkZ, getFloorX, getFloorY, getFloorZ, getForward, getIntermediateWithXValue, getIntermediateWithYValue, getIntermediateWithZValue, getRight, getSideVec, getSouth, getUp, getWest, getX, getY, getZ, hashCode, length, lengthSquared, maxPlainDistance, maxPlainDistance, maxPlainDistance, maxPlainDistance, maxPlainDistance, normalize, north, north, rawHashCode, setComponentsAdding, setComponentsAdding, setX, setY, setZ, south, south, up, up, west, west
-
Field Details
-
inventory
-
burnTime
protected int burnTime -
burnDuration
protected int burnDuration -
cookTime
protected int cookTime -
maxTime
protected int maxTime -
storedXP
-
-
Constructor Details
-
BlockEntityFurnace
-
-
Method Details
-
getInventoryType
-
initBlockEntity
protected void initBlockEntity()- Overrides:
initBlockEntity
in classBlockEntitySpawnable
-
loadNBT
Description copied from class:BlockEntity
从方块实体的namedtag中读取数据- Overrides:
loadNBT
in classBlockEntity
-
getFurnaceName
-
getClientName
-
getName
Description copied from interface:BlockEntityNameable
返回这个事物的名字。
Gets the name of this object.- Specified by:
getName
in interfaceBlockEntityNameable
- Overrides:
getName
in classBlockEntity
- 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 interfaceBlockEntityNameable
- Returns:
- 如果有名字,返回
true
。true
for this object has a name.
-
setName
Description copied from interface:BlockEntityNameable
设置或更改这个事物的名字。
Changes the name of this object, or names it.- Specified by:
setName
in interfaceBlockEntityNameable
- Parameters:
name
- 这个事物的新名字。
The new name of this object.
-
close
public void close()- Overrides:
close
in classBlockEntity
-
onBreak
- Overrides:
onBreak
in classBlockEntity
-
saveNBT
public void saveNBT()Description copied from class:BlockEntity
存储方块实体数据到namedtag- Overrides:
saveNBT
in classBlockEntity
-
isBlockEntityValid
public boolean isBlockEntityValid()- Specified by:
isBlockEntityValid
in classBlockEntity
-
getSize
public int getSize()Description copied from interface:BlockEntityContainer
返回这个容器最多能包含的物品数量。
Returns the max number of items that this container can contain.- Specified by:
getSize
in interfaceBlockEntityContainer
- Returns:
- 最多能包含的物品数量。
The max number.
-
getSlotIndex
protected int getSlotIndex(int index) -
getItem
Description copied from interface:BlockEntityContainer
返回一个存储在容器里的物品的Item
对象。
Returns an item that stores in this container, as anItem
object.- Specified by:
getItem
in interfaceBlockEntityContainer
- Parameters:
index
- 这个物品的索引序号。
The index number of this item.- Returns:
- 这个物品的
Item
对象。
AnItem
object for this item.
-
setItem
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 interfaceBlockEntityContainer
- Parameters:
index
- 这个物品的索引序号。
The index number of this item.item
- 描述这个物品的Item
对象。
TheItem
object that describes this item.
-
getInventory
- Specified by:
getInventory
in interfaceInventoryHolder
-
getIdleBlockId
-
getBurningBlockId
-
setBurning
-
checkFuel
-
matchRecipe
-
getSpeedMultiplier
-
onUpdate
public boolean onUpdate()- Overrides:
onUpdate
in classBlockEntity
-
getSpawnCompound
- Overrides:
getSpawnCompound
in classBlockEntitySpawnable
-
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) -
getStoredXP
-
setStoredXP
-
calculateXpDrop
-
getIngredientView
Description copied from interface:RecipeInventoryHolder
获取该物品栏拥有者的物品栏的原料视图,这个视图通常是以InventorySlice
指向的原始物品栏用于存储原料的一部分。
Get the ingredients view of the inventory holder's inventory, which is usually a part of the raw inventory.- Specified by:
getIngredientView
in interfaceRecipeInventoryHolder
- Returns:
- 原料视图 the ingredients view of the inventory holder's inventory
-
getProductView
Description copied from interface:RecipeInventoryHolder
获取该物品栏拥有者的物品栏的产物视图,这个视图通常是以InventorySlice
指向的原始物品栏用于存储结果的一部分。
Get the result view of the inventory holder's inventory, which is usually a part of the raw inventory.- Specified by:
getProductView
in interfaceRecipeInventoryHolder
- Returns:
- 产物视图 the result view of the inventory holder's inventory
-