use pocketmine\network\mcpe\handler\PacketHandler; use function file_get_contents; class BiomeDefinitionListPacket extends DataPacket implements ClientboundPacket{ public const NETWORK_ID = ProtocolInfo::BIOME_DEFINITION_LIST_PACKET; /** @var string|null */ private static $DEFAULT_NBT_CACHE = null; /** @var string */ public $namedtag; protected function decodePayload() : void{ $this->namedtag = $this->getRemaining(); } protected function encodePayload() : void{ $this->put( $this->namedtag ?? self::$DEFAULT_NBT_CACHE ?? (self::$DEFAULT_NBT_CACHE = file_get_contents(\pocketmine\RESOURCE_PATH . '/vanilla/biome_definitions.nbt')) ); } public function handle(PacketHandler $handler) : bool{ return $handler->handleBiomeDefinitionList($this); } }