public function encode()
{
$this->reset();
$this->putByte($this->type);
$this->putUnsignedVarInt(count($this->entries));
foreach ($this->entries as $d) {
if ($this->type === self::TYPE_ADD) {
$this->putUUID($d[0]);
$this->putEntityId($d[1]);
$this->putString($d[2]);
$this->putString($d[3]);
$this->putString($d[4]);
} elseif ($this->type === self::TYPE_REMOVE) {
$this->putUUID($d[0]);
} else {
$this->putUUID($d[0]);
$this->putLong($d[1]);
$this->putString($d[2]);
$this->putString($d[3]);
$this->putString($d[4]);
}
}
}