GetPlayerCameraFrontVector
Description:
Function GetPlayerCameraFrontVector return the current direction of player's aiming in 3-D space, the coords are relative to the camera position, see GetPlayerCameraPos.
Function GetPlayerCameraFrontVector was added in 0.3a and will not work in earlier versions! |
|
Parameters:
(playerid, &Float:x, &Float:y, &Float:z)
int | playerid | The ID of the player you want to obtain the camera front vector of. |
float | X | A float to store the X coordinate, passed by reference. |
float | Y | A float to store the Y coordinate, passed by reference. |
float | Z | A float to store the Z coordinate, passed by reference. |
Return Values:
The position is stored in the specified variables.
Examples:
// A simple command to manipulate this vector using the // positions from GetPlayerCameraPos. This command will create // a hydra missile in the direction of where the player is looking. public OnPlayerCommandText(playerid, cmdtext[]) { if (!strcmp(cmdtext, "/test camera vector")) { new Float:fPX, Float:fPY, Float:fPZ, Float:fVX, Float:fVY, Float:fVZ, Float:object_x, Float:object_y, Float:object_z; // Change me to change the scale you want. A larger scale increases the distance from the camera. // A negative scale will inverse the vectors and make them face in the opposite direction. const Float:fScale = 5.0; GetPlayerCameraPos(playerid, fPX, fPY, fPZ); GetPlayerCameraFrontVector(playerid, fVX, fVY, fVZ); object_x = fPX + floatmul(fVX, fScale); object_y = fPY + floatmul(fVY, fScale); object_z = fPZ + floatmul(fVZ, fScale); CreateObject(345, object_x, object_y, object_z, 0.0, 0.0, 0.0); return 1; } return 0; }
Related Functions
The following functions may be useful, as they are related to this function in one way or another.
- GetPlayerCameraPos: Find out where the player's camera is.