buffer->getVarInt(); } public function writeInt(int $v) : void{ $this->buffer->putVarInt($v); } public function readLong() : int{ return $this->buffer->getVarLong(); } public function writeLong(int $v) : void{ $this->buffer->putVarLong($v); } public function readString() : string{ return $this->buffer->get($this->buffer->getUnsignedVarInt()); } public function writeString(string $v) : void{ $len = strlen($v); if($len > 32767){ throw new \InvalidArgumentException("NBT strings cannot be longer than 32767 bytes, got $len bytes"); } $this->buffer->putUnsignedVarInt($len); $this->buffer->put($v); } public function readIntArray() : array{ $len = $this->readInt(); //varint $ret = []; for($i = 0; $i < $len; ++$i){ $ret[] = $this->readInt(); //varint } return $ret; } public function writeIntArray(array $array) : void{ $this->writeInt(count($array)); //varint foreach($array as $v){ $this->writeInt($v); //varint } } }