23 public const AUDIO_LISTENER_TYPE_CAMERA = 0;
24 public const AUDIO_LISTENER_TYPE_PLAYER = 1;
26 public function __construct(
28 private string $parent,
29 private ?
float $xPosition,
30 private ?
float $yPosition,
31 private ?
float $zPosition,
32 private ?
float $pitch,
34 private ?
float $rotationSpeed,
35 private ?
bool $snapToTarget,
36 private ?
Vector2 $horizontalRotationLimit,
37 private ?
Vector2 $verticalRotationLimit,
38 private ?
bool $continueTargeting,
39 private ?
float $blockListeningRadius,
42 private ?
float $radius,
43 private ?
float $yawLimitMin,
44 private ?
float $yawLimitMax,
45 private ?
int $audioListenerType,
46 private ?
bool $playerEffects,
48 private ?ControlScheme $controlScheme,
51 public function getName() :
string{
return $this->name; }
53 public function getParent() :
string{
return $this->parent; }
55 public function getXPosition() : ?
float{
return $this->xPosition; }
57 public function getYPosition() : ?
float{
return $this->yPosition; }
59 public function getZPosition() : ?
float{
return $this->zPosition; }
61 public function getPitch() : ?
float{
return $this->pitch; }
63 public function getYaw() : ?
float{
return $this->yaw; }
65 public function getRotationSpeed() : ?
float {
return $this->rotationSpeed; }
67 public function getSnapToTarget() : ?
bool {
return $this->snapToTarget; }
69 public function getHorizontalRotationLimit() : ?
Vector2{
return $this->horizontalRotationLimit; }
71 public function getVerticalRotationLimit() : ?
Vector2{
return $this->verticalRotationLimit; }
73 public function getContinueTargeting() : ?
bool{
return $this->continueTargeting; }
75 public function getBlockListeningRadius() : ?
float{
return $this->blockListeningRadius; }
77 public function getViewOffset() : ?
Vector2{
return $this->viewOffset; }
79 public function getEntityOffset() : ?
Vector3{
return $this->entityOffset; }
81 public function getRadius() : ?
float{
return $this->radius; }
83 public function getYawLimitMin() : ?
float{
return $this->yawLimitMin; }
85 public function getYawLimitMax() : ?
float{
return $this->yawLimitMax; }
87 public function getAudioListenerType() : ?
int{
return $this->audioListenerType; }
89 public function getPlayerEffects() : ?
bool{
return $this->playerEffects; }
93 public function getControlScheme() : ?ControlScheme{
return $this->controlScheme; }
116 $aimAssist = $in->
readOptional(fn() => CameraPresetAimAssist::read($in));
129 $horizontalRotationLimit,
130 $verticalRotationLimit,
132 $blockListeningRadius,
146 $out->putString($this->name);
147 $out->putString($this->parent);
153 $out->
writeOptional($this->rotationSpeed, $out->putLFloat(...));
154 $out->
writeOptional($this->snapToTarget, $out->putBool(...));
157 $out->
writeOptional($this->continueTargeting, $out->putBool(...));
158 $out->
writeOptional($this->blockListeningRadius, $out->putLFloat(...));
162 $out->
writeOptional($this->yawLimitMin, $out->putLFloat(...));
163 $out->
writeOptional($this->yawLimitMax, $out->putLFloat(...));
164 $out->
writeOptional($this->audioListenerType, $out->putByte(...));
165 $out->
writeOptional($this->playerEffects, $out->putBool(...));
167 $out->
writeOptional($this->controlScheme, fn(ControlScheme $v) => $out->putByte($v->value));