Implemented asVector3(), asPosition() and asLocation()

Squash merge, closes #973
This commit is contained in:
Matt 2017-06-07 16:40:45 +08:00 committed by SOFe
parent 9cc27b2719
commit f0d12a0b30
No known key found for this signature in database
GPG Key ID: A0379676C4D9D5D9
3 changed files with 27 additions and 0 deletions

View File

@ -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;
}

View File

@ -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.

View File

@ -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
*