28 public const NETWORK_ID = ProtocolInfo::CHANGE_MOB_PROPERTY_PACKET;
30 private int $actorUniqueId;
31 private string $propertyName;
32 private bool $boolValue;
33 private string $stringValue;
34 private int $intValue;
35 private float $floatValue;
40 private static function create(
int $actorUniqueId,
string $propertyName,
bool $boolValue,
string $stringValue,
int $intValue,
float $floatValue) :
self{
42 $result->actorUniqueId = $actorUniqueId;
43 $result->propertyName = $propertyName;
44 $result->boolValue = $boolValue;
45 $result->stringValue = $stringValue;
46 $result->intValue = $intValue;
47 $result->floatValue = $floatValue;
51 public static function boolValue(
int $actorUniqueId,
string $propertyName,
bool $value) :
self{
52 return self::create($actorUniqueId, $propertyName, $value,
"", 0, 0);
55 public static function stringValue(
int $actorUniqueId,
string $propertyName,
string $value) :
self{
56 return self::create($actorUniqueId, $propertyName,
false, $value, 0, 0);
59 public static function intValue(
int $actorUniqueId,
string $propertyName,
int $value) :
self{
60 return self::create($actorUniqueId, $propertyName,
false,
"", $value, 0);
63 public static function floatValue(
int $actorUniqueId,
string $propertyName,
float $value) :
self{
64 return self::create($actorUniqueId, $propertyName,
false,
"", 0, $value);
67 public function getActorUniqueId() :
int{
return $this->actorUniqueId; }
69 public function getPropertyName() :
string{
return $this->propertyName; }
71 public function isBoolValue() :
bool{
return $this->boolValue; }
73 public function getStringValue() :
string{
return $this->stringValue; }
75 public function getIntValue() :
int{
return $this->intValue; }
77 public function getFloatValue() :
float{
return $this->floatValue; }
80 $this->actorUniqueId =
CommonTypes::getActorUniqueId($in);
81 $this->propertyName = CommonTypes::getString($in);
82 $this->boolValue = CommonTypes::getBool($in);
83 $this->stringValue = CommonTypes::getString($in);
84 $this->intValue = VarInt::readSignedInt($in);
85 $this->floatValue = LE::readFloat($in);
89 CommonTypes::putActorUniqueId($out, $this->actorUniqueId);
90 CommonTypes::putString($out, $this->propertyName);
91 CommonTypes::putBool($out, $this->boolValue);
92 CommonTypes::putString($out, $this->stringValue);
93 VarInt::writeSignedInt($out, $this->intValue);
94 LE::writeFloat($out, $this->floatValue);
98 return $handler->handleChangeMobProperty($this);