31 private string $identifier,
32 private array $exclusionList,
33 private array $liquidTargetingList,
34 private array $itemSettings,
35 private ?
string $defaultItemSettings,
36 private ?
string $defaultHandSettings,
39 public function getIdentifier() : string{ return $this->identifier; }
56 public function getDefaultItemSettings() : ?string{ return $this->defaultItemSettings; }
58 public function getDefaultHandSettings() : ?string{ return $this->defaultHandSettings; }
60 public static function read(ByteBufferReader $in) : self{
64 for($i = 0, $len = VarInt::readUnsignedInt($in); $i < $len; ++$i){
65 $exclusionList[] = CommonTypes::getString($in);
68 $liquidTargetingList = [];
69 for($i = 0, $len = VarInt::readUnsignedInt($in); $i < $len; ++$i){
70 $liquidTargetingList[] = CommonTypes::getString($in);
74 for($i = 0, $len = VarInt::readUnsignedInt($in); $i < $len; ++$i){
75 $itemSettings[] = CameraAimAssistPresetItemSettings::read($in);
78 $defaultItemSettings = CommonTypes::readOptional($in, fn() => CommonTypes::getString($in));
79 $defaultHandSettings = CommonTypes::readOptional($in, fn() => CommonTypes::getString($in));
91 public function write(ByteBufferWriter $out) : void{
92 CommonTypes::putString($out, $this->identifier);
94 VarInt::writeUnsignedInt($out, count($this->exclusionList));
95 foreach($this->exclusionList as $exclusion){
96 CommonTypes::putString($out, $exclusion);
99 VarInt::writeUnsignedInt($out, count($this->liquidTargetingList));
100 foreach($this->liquidTargetingList as $liquidTargeting){
101 CommonTypes::putString($out, $liquidTargeting);
104 VarInt::writeUnsignedInt($out, count($this->itemSettings));
105 foreach($this->itemSettings as $itemSetting){
106 $itemSetting->write($out);
109 CommonTypes::writeOptional($out, $this->defaultItemSettings, CommonTypes::putString(...));
110 CommonTypes::writeOptional($out, $this->defaultHandSettings, CommonTypes::putString(...));
__construct(private string $identifier, private array $exclusionList, private array $liquidTargetingList, private array $itemSettings, private ?string $defaultItemSettings, private ?string $defaultHandSettings,)