PocketMine-MP 5.18.2 git-00e39821f06a4b6d728d35053c2621dbb19369ff
pocketmine\data\bedrock\block\upgrade\BlockIdMetaUpgrader Class Reference
+ Collaboration diagram for pocketmine\data\bedrock\block\upgrade\BlockIdMetaUpgrader:

Public Member Functions

 __construct (private array $mappingTable, private LegacyBlockIdToStringIdMap $legacyNumericIdMap)
 
 addIdMetaToStateMapping (string $stringId, int $meta, BlockStateData $stateData)
 
 addIntIdToStringIdMapping (int $intId, string $stringId)
 
 fromIntIdMeta (int $id, int $meta)
 
 fromStringIdMeta (string $id, int $meta)
 

Static Public Member Functions

static loadFromString (string $data, LegacyBlockIdToStringIdMap $idMap, BlockStateUpgrader $blockStateUpgrader)
 

Detailed Description

Handles translating legacy 1.12 block ID/meta into modern blockstates.

Definition at line 35 of file BlockIdMetaUpgrader.php.

Constructor & Destructor Documentation

◆ __construct()

pocketmine\data\bedrock\block\upgrade\BlockIdMetaUpgrader::__construct ( private array  $mappingTable,
private LegacyBlockIdToStringIdMap  $legacyNumericIdMap 
)
Parameters
BlockStateData[][]$mappingTable@phpstan-param array<string, array<int, BlockStateData>> $mappingTable

Definition at line 40 of file BlockIdMetaUpgrader.php.

Member Function Documentation

◆ addIdMetaToStateMapping()

pocketmine\data\bedrock\block\upgrade\BlockIdMetaUpgrader::addIdMetaToStateMapping ( string  $stringId,
int  $meta,
BlockStateData  $stateData 
)

Adds a mapping of legacy block ID and meta to modern blockstate data. This may be needed for upgrading data from stored custom blocks from older versions of PocketMine-MP.

Definition at line 77 of file BlockIdMetaUpgrader.php.

◆ addIntIdToStringIdMapping()

pocketmine\data\bedrock\block\upgrade\BlockIdMetaUpgrader::addIntIdToStringIdMapping ( int  $intId,
string  $stringId 
)

Adds a mapping of legacy block numeric ID to modern string ID. This is used for upgrading blocks from pre-1.2.13 worlds (PM3). It's also needed for upgrading flower pot contents and falling blocks from PM4 worlds.

Definition at line 69 of file BlockIdMetaUpgrader.php.

◆ fromIntIdMeta()

pocketmine\data\bedrock\block\upgrade\BlockIdMetaUpgrader::fromIntIdMeta ( int  $id,
int  $meta 
)
Exceptions
BlockStateDeserializeException

Definition at line 57 of file BlockIdMetaUpgrader.php.

◆ fromStringIdMeta()

pocketmine\data\bedrock\block\upgrade\BlockIdMetaUpgrader::fromStringIdMeta ( string  $id,
int  $meta 
)
Exceptions
BlockStateDeserializeException

Definition at line 48 of file BlockIdMetaUpgrader.php.

◆ loadFromString()

static pocketmine\data\bedrock\block\upgrade\BlockIdMetaUpgrader::loadFromString ( string  $data,
LegacyBlockIdToStringIdMap  $idMap,
BlockStateUpgrader  $blockStateUpgrader 
)
static

Definition at line 84 of file BlockIdMetaUpgrader.php.


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