33 private array $entities,
34 private array $blocks,
35 private array $blockTags,
36 private array $entityTypeFamilies,
37 private ?
int $defaultEntityPriority,
38 private ?
int $defaultBlockPriority
44 public function getEntities() : array{ return $this->entities; }
49 public function getBlocks() : array{ return $this->blocks; }
61 public function getDefaultEntityPriority() : ?int{ return $this->defaultEntityPriority; }
63 public function getDefaultBlockPriority() : ?int{ return $this->defaultBlockPriority; }
65 public static function read(ByteBufferReader $in) : self{
67 for($i = 0, $len = VarInt::readUnsignedInt($in); $i < $len; ++$i){
68 $entities[] = CameraAimAssistCategoryPriority::read($in);
72 for($i = 0, $len = VarInt::readUnsignedInt($in); $i < $len; ++$i){
73 $blocks[] = CameraAimAssistCategoryPriority::read($in);
77 for($i = 0, $len = VarInt::readUnsignedInt($in); $i < $len; ++$i){
78 $blockTags[] = CameraAimAssistCategoryPriority::read($in);
81 $entityTypeFamilies = [];
82 for($i = 0, $len = VarInt::readUnsignedInt($in); $i < $len; ++$i){
83 $entityTypeFamilies[] = CameraAimAssistCategoryPriority::read($in);
86 $defaultEntityPriority = CommonTypes::readOptional($in, LE::readSignedInt(...));
87 $defaultBlockPriority = CommonTypes::readOptional($in, LE::readSignedInt(...));
93 $defaultEntityPriority,
98 public function write(ByteBufferWriter $out) : void{
99 VarInt::writeUnsignedInt($out, count($this->entities));
100 foreach($this->entities as $entity){
101 $entity->write($out);
104 VarInt::writeUnsignedInt($out, count($this->blocks));
105 foreach($this->blocks as $block){
109 VarInt::writeUnsignedInt($out, count($this->blockTags));
110 foreach($this->blockTags as $tag){
114 VarInt::writeUnsignedInt($out, count($this->entityTypeFamilies));
115 foreach($this->entityTypeFamilies as $family){
116 $family->write($out);
119 CommonTypes::writeOptional($out, $this->defaultEntityPriority, LE::writeSignedInt(...));
120 CommonTypes::writeOptional($out, $this->defaultBlockPriority, LE::writeSignedInt(...));