26 protected array $actions = [];
32 return $this->actions;
35 abstract public function getTypeId() : int;
42 $actionCount = VarInt::readUnsignedInt($in);
44 for($i = 0; $i < $actionCount; ++$i){
47 $this->decodeData($in);
55 $actionCount = VarInt::readUnsignedInt($in);
57 for($i = 0; $i < $actionCount; ++$i){
60 $this->decodeData($in);
67 abstract protected function decodeData(ByteBufferReader $in) : void;
69 final public function encodeTransaction(ByteBufferWriter $out) : void{
70 VarInt::writeUnsignedInt($out, count($this->actions));
71 foreach($this->actions as $action){
72 $action->writeTransaction($out);
74 $this->encodeData($out);
77 final public function encodeAuthInput(ByteBufferWriter $out) : void{
78 VarInt::writeUnsignedInt($out, count($this->actions));
79 foreach($this->actions as $action){
80 $action->writeAuthInput($out);
82 $this->encodeData($out);
85 abstract protected function encodeData(ByteBufferWriter $out) : void;