24 public const NETWORK_ID = ProtocolInfo::MODAL_FORM_RESPONSE_PACKET;
26 public const CANCEL_REASON_CLOSED = 0;
31 public ?
string $formData;
32 public ?
int $cancelReason;
37 private static function create(
int $formId, ?
string $formData, ?
int $cancelReason) : self{
39 $result->formId = $formId;
40 $result->formData = $formData;
41 $result->cancelReason = $cancelReason;
45 public static function response(
int $formId,
string $formData) : self{
46 return self::create($formId, $formData, null);
49 public static function cancel(
int $formId,
int $cancelReason) : self{
50 return self::create($formId, null, $cancelReason);
54 $this->formId = VarInt::readUnsignedInt($in);
55 $this->formData = CommonTypes::readOptional($in, CommonTypes::getString(...));
56 $this->cancelReason = CommonTypes::readOptional($in, Byte::readUnsigned(...));
60 VarInt::writeUnsignedInt($out, $this->formId);
62 CommonTypes::writeOptional($out, $this->formData, CommonTypes::putString(...));
63 CommonTypes::writeOptional($out, $this->cancelReason, Byte::writeUnsigned(...));
67 return $handler->handleModalFormResponse($this);