Centralize all conversion-related stuff under TypeConverter

instead of having singletons for everything, which are a nightmare to manage for multi version
This commit is contained in:
Dylan K. Taylor
2023-05-03 16:33:17 +01:00
parent 5e462db0f8
commit 01f340985a
26 changed files with 88 additions and 130 deletions

View File

@ -67,7 +67,7 @@ use pocketmine\math\Facing;
use pocketmine\math\Vector3;
use pocketmine\nbt\tag\IntTag;
use pocketmine\nbt\tag\StringTag;
use pocketmine\network\mcpe\convert\RuntimeBlockMapping;
use pocketmine\network\mcpe\convert\TypeConverter;
use pocketmine\network\mcpe\NetworkBroadcastUtils;
use pocketmine\network\mcpe\protocol\BlockActorDataPacket;
use pocketmine\network\mcpe\protocol\ClientboundPacket;
@ -1062,7 +1062,7 @@ class World implements ChunkManager{
public function createBlockUpdatePackets(array $blocks) : array{
$packets = [];
$blockMapping = RuntimeBlockMapping::getInstance();
$blockMapping = TypeConverter::getInstance()->getBlockTranslator();
foreach($blocks as $b){
if(!($b instanceof Vector3)){