diff --git a/src/pocketmine/level/Location.php b/src/pocketmine/level/Location.php index dd1c8eef1..dcf282eb8 100644 --- a/src/pocketmine/level/Location.php +++ b/src/pocketmine/level/Location.php @@ -57,6 +57,15 @@ class Location extends Position{ return new Location($pos->x, $pos->y, $pos->z, $yaw, $pitch, $level ?? (($pos instanceof Position) ? $pos->level : null)); } + /** + * Return a Location instance + * + * @return Location + */ + public function asLocation() : Location{ + return new Location($this->x, $this->y, $this->z, $this->yaw, $this->pitch, $this->level); + } + public function getYaw(){ return $this->yaw; } diff --git a/src/pocketmine/level/Position.php b/src/pocketmine/level/Position.php index 4017806d6..615c03096 100644 --- a/src/pocketmine/level/Position.php +++ b/src/pocketmine/level/Position.php @@ -46,6 +46,15 @@ class Position extends Vector3{ return new Position($pos->x, $pos->y, $pos->z, $level); } + /** + * Return a Position instance + * + * @return Position + */ + public function asPosition() : Position{ + return new Position($this->x, $this->y, $this->z, $this->level); + } + /** * Returns the target Level, or null if the target is not valid. * If a reference exists to a Level which is closed, the reference will be destroyed and null will be returned. diff --git a/src/pocketmine/math/Vector3.php b/src/pocketmine/math/Vector3.php index 395ee9c1c..61e78ca11 100644 --- a/src/pocketmine/math/Vector3.php +++ b/src/pocketmine/math/Vector3.php @@ -157,6 +157,15 @@ class Vector3{ } } + /** + * Return a Vector3 instance + * + * @return Vector3 + */ + public function asVector3() : Vector3{ + return new Vector3($this->x, $this->y, $this->z); + } + /** * Returns the Vector3 side number opposite the specified one *