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

Public Member Functions

 clearSpawnCompoundCache ()
 
 close ()
 
 copyDataFromItem (Item $item)
 
 getBlock ()
 
 getCleanedNBT ()
 
 getPosition ()
 
 getRenderUpdateBugWorkaroundStateProperties (Block $block)
 
 getSerializedSpawnCompound ()
 
 getSpawnCompound ()
 
 isClosed ()
 
 isDirty ()
 
 onBlockDestroyed ()
 
 readSaveData (CompoundTag $nbt)
 
 saveNBT ()
 
 setDirty (bool $dirty=true)
 

Public Attributes

bool $closed = false
 
const TAG_ID = "id"
 
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

Definition at line 34 of file Spawnable.php.

Member Function Documentation

◆ addAdditionalSpawnData()

◆ clearSpawnCompoundCache()

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

Definition at line 52 of file Spawnable.php.

◆ close()

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

Definition at line 129 of file Tile.php.

◆ copyDataFromItem()

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

Definition at line 92 of file Tile.php.

◆ getBlock()

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

Definition at line 98 of file Tile.php.

◆ getCleanedNBT()

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

Definition at line 82 of file Tile.php.

◆ getPosition()

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

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.

Returns
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 ( )
final

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 ( )
final

Definition at line 86 of file Spawnable.php.

◆ isClosed()

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

Definition at line 106 of file Tile.php.

◆ isDirty()

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

Definition at line 41 of file Spawnable.php.

◆ onBlockDestroyed()

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

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 ( )
protectedinherited

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.

◆ saveNBT()

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

Definition at line 70 of file Tile.php.

◆ setDirty()

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

Definition at line 48 of file Spawnable.php.

◆ writeSaveData()

Member Data Documentation

◆ $closed

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

Definition at line 50 of file Tile.php.

◆ $position

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

Definition at line 49 of file Tile.php.

◆ $timings

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

Definition at line 51 of file Tile.php.

◆ TAG_ID

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

Definition at line 44 of file Tile.php.

◆ TAG_X

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

Definition at line 45 of file Tile.php.

◆ TAG_Y

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

Definition at line 46 of file Tile.php.

◆ TAG_Z

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

Definition at line 47 of file Tile.php.


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