PocketMine-MP 5.14.2 git-50e2c469a547a16a23b2dc691e70a51d34e29395
pocketmine\block\tile\ItemFrame Class Reference
+ Inheritance diagram for pocketmine\block\tile\ItemFrame:
+ Collaboration diagram for pocketmine\block\tile\ItemFrame:

Public Member Functions

 __construct (World $world, Vector3 $pos)
 clearSpawnCompoundCache ()
 close ()
 copyDataFromItem (Item $item)
 getBlock ()
 getCleanedNBT ()
 getItem ()
 getItemDropChance ()
 getItemRotation ()
 getPosition ()
 getRenderUpdateBugWorkaroundStateProperties (Block $block)
 getSerializedSpawnCompound ()
 getSpawnCompound ()
 hasItem ()
 isClosed ()
 isDirty ()
 onBlockDestroyed ()
 readSaveData (CompoundTag $nbt)
 saveNBT ()
 setDirty (bool $dirty=true)
 setItem (?Item $item)
 setItemDropChance (float $chance)
 setItemRotation (int $rotation)

Public Attributes

bool $closed = false
const TAG_ID = "id"
const TAG_ITEM = "Item"
const TAG_ITEM_DROP_CHANCE = "ItemDropChance"
const TAG_ITEM_ROTATION = "ItemRotation"
const TAG_X = "x"
const TAG_Y = "y"
const TAG_Z = "z"

Protected Member Functions

 addAdditionalSpawnData (CompoundTag $nbt)
 onBlockDestroyedHook ()
 writeSaveData (CompoundTag $nbt)

Protected Attributes

Position $position
TimingsHandler $timings

Detailed Description

See also

Definition at line 38 of file tile/ItemFrame.php.

Constructor & Destructor Documentation

◆ __construct()

pocketmine\block\tile\ItemFrame::__construct ( World  $world,
Vector3  $pos 

Reimplemented from pocketmine\block\tile\Tile.

Definition at line 47 of file tile/ItemFrame.php.

Member Function Documentation

◆ addAdditionalSpawnData()

pocketmine\block\tile\ItemFrame::addAdditionalSpawnData ( CompoundTag  $nbt)

An extension to getSpawnCompound() for further modifying the generic tile NBT.

Reimplemented from pocketmine\block\tile\Spawnable.

Definition at line 104 of file tile/ItemFrame.php.

References pocketmine\nbt\tag\CompoundTag\setTag().

+ Here is the call graph for this function:

◆ clearSpawnCompoundCache()

pocketmine\block\tile\Spawnable::clearSpawnCompoundCache ( )

Definition at line 52 of file Spawnable.php.

◆ close()

pocketmine\block\tile\Tile::close ( )

Definition at line 129 of file Tile.php.

◆ copyDataFromItem()

pocketmine\block\tile\Tile::copyDataFromItem ( Item  $item)

Definition at line 92 of file Tile.php.

◆ getBlock()

pocketmine\block\tile\Tile::getBlock ( )

Definition at line 98 of file Tile.php.

◆ getCleanedNBT()

pocketmine\block\tile\Tile::getCleanedNBT ( )

Definition at line 82 of file Tile.php.

◆ getItem()

pocketmine\block\tile\ItemFrame::getItem ( )

Definition at line 76 of file tile/ItemFrame.php.

◆ getItemDropChance()

pocketmine\block\tile\ItemFrame::getItemDropChance ( )

Definition at line 96 of file tile/ItemFrame.php.

◆ getItemRotation()

pocketmine\block\tile\ItemFrame::getItemRotation ( )

Definition at line 88 of file tile/ItemFrame.php.

◆ getPosition()

pocketmine\block\tile\Tile::getPosition ( )

Definition at line 102 of file Tile.php.

◆ getRenderUpdateBugWorkaroundStateProperties()

pocketmine\block\tile\Spawnable::getRenderUpdateBugWorkaroundStateProperties ( Block  $block)

The Bedrock client won't re-render a block if the block's state properties didn't change. This is a problem when the tile may affect the block's appearance. For example, a cauldron's liquid changes colour based on the dye inside.

This is worked around in vanilla by modifying one of the block's state properties to a different value, and then changing it back again. Since we don't want to litter core implementation with hacks like this, we brush it under the rug into Tile.

ByteTag[]|IntTag[]|StringTag[] @phpstan-return array<string, IntTag|StringTag|ByteTag>

Reimplemented in pocketmine\block\tile\Cauldron, and pocketmine\block\tile\FlowerPot.

Definition at line 68 of file Spawnable.php.

◆ getSerializedSpawnCompound()

pocketmine\block\tile\Spawnable::getSerializedSpawnCompound ( )

Returns encoded NBT (varint, little-endian) used to spawn this tile to clients. Uses cache where possible, populates cache if it is null.

@phpstan-return CacheableNbt<\pocketmine\nbt\tag\CompoundTag>

Definition at line 78 of file Spawnable.php.

◆ getSpawnCompound()

pocketmine\block\tile\Spawnable::getSpawnCompound ( )

Definition at line 86 of file Spawnable.php.

◆ hasItem()

pocketmine\block\tile\ItemFrame::hasItem ( )

Definition at line 72 of file tile/ItemFrame.php.

◆ isClosed()

pocketmine\block\tile\Tile::isClosed ( )

Definition at line 106 of file Tile.php.

◆ isDirty()

pocketmine\block\tile\Spawnable::isDirty ( )

Definition at line 41 of file Spawnable.php.

◆ onBlockDestroyed()

pocketmine\block\tile\Tile::onBlockDestroyed ( )

Called when the tile's block is destroyed.

Definition at line 117 of file Tile.php.

References pocketmine\block\tile\onBlockDestroyedHook().

+ Here is the call graph for this function:

◆ onBlockDestroyedHook()

pocketmine\block\tile\Tile::onBlockDestroyedHook ( )

Override this method to do actions you need to do when this tile is destroyed due to block being broken.

Reimplemented in pocketmine\block\tile\Chest, pocketmine\block\tile\Jukebox, and pocketmine\block\tile\ShulkerBox.

Definition at line 125 of file Tile.php.

◆ readSaveData()

pocketmine\block\tile\ItemFrame::readSaveData ( CompoundTag  $nbt)

Reimplemented from pocketmine\block\tile\Tile.

Definition at line 52 of file tile/ItemFrame.php.

◆ saveNBT()

pocketmine\block\tile\Tile::saveNBT ( )

Definition at line 70 of file Tile.php.

◆ setDirty()

pocketmine\block\tile\Spawnable::setDirty ( bool  $dirty = true)

Definition at line 48 of file Spawnable.php.

◆ setItem()

pocketmine\block\tile\ItemFrame::setItem ( ?Item  $item)

Definition at line 80 of file tile/ItemFrame.php.

◆ setItemDropChance()

pocketmine\block\tile\ItemFrame::setItemDropChance ( float  $chance)

Definition at line 100 of file tile/ItemFrame.php.

◆ setItemRotation()

pocketmine\block\tile\ItemFrame::setItemRotation ( int  $rotation)

Definition at line 92 of file tile/ItemFrame.php.

◆ writeSaveData()

pocketmine\block\tile\ItemFrame::writeSaveData ( CompoundTag  $nbt)

Writes additional save data to a CompoundTag, not including generic things like ID and coordinates.

Reimplemented from pocketmine\block\tile\Tile.

Definition at line 64 of file tile/ItemFrame.php.

References pocketmine\nbt\tag\CompoundTag\setTag().

+ Here is the call graph for this function:

Member Data Documentation

◆ $closed

bool pocketmine\block\tile\Tile::$closed = false

Definition at line 50 of file Tile.php.

◆ $position

Position pocketmine\block\tile\Tile::$position

Definition at line 49 of file Tile.php.

◆ $timings

TimingsHandler pocketmine\block\tile\Tile::$timings

Definition at line 51 of file Tile.php.


const pocketmine\block\tile\Tile::TAG_ID = "id"

Definition at line 44 of file Tile.php.


const pocketmine\block\tile\ItemFrame::TAG_ITEM = "Item"

Definition at line 41 of file tile/ItemFrame.php.


const pocketmine\block\tile\ItemFrame::TAG_ITEM_DROP_CHANCE = "ItemDropChance"

Definition at line 40 of file tile/ItemFrame.php.


const pocketmine\block\tile\ItemFrame::TAG_ITEM_ROTATION = "ItemRotation"

Definition at line 39 of file tile/ItemFrame.php.


const pocketmine\block\tile\Tile::TAG_X = "x"

Definition at line 45 of file Tile.php.


const pocketmine\block\tile\Tile::TAG_Y = "y"

Definition at line 46 of file Tile.php.


const pocketmine\block\tile\Tile::TAG_Z = "z"

Definition at line 47 of file Tile.php.

The documentation for this class was generated from the following file: