SDraw
Умник
Функция на нахождения угла камеры относительно плоскости 0XY. Углы узнаются по принципу GTA SA (N - 0, W - 90, S - 180, E - 270).
Входные параметры: вектора камеры, взятые через GetPlayerCameraFrontVector.
Выходной параметр: искомый угол
Пример использования:
Автор: SDraw
PHP:
forward PlanarZAngleOfCamera(Float:x,Float:y,&Float:ang);
public PlanarZAngleOfCamera(Float:x,Float:y,Float:z,&Float:ang)
{
new Float:angl = atan(floatdiv(y,x));
if(x >= 0.0 && y >= 0.0 || x >= 0.0 && y <= 0.0) ang = angl + 270.0;
else if(x <= 0.0 && y >= 0.0 || x <= 0.0 && y <= 0.0) ang = angl + 90.0;
return 1;
}
Выходной параметр: искомый угол
Пример использования:
PHP:
new Float:p[3];
GetPlayerCameraFrontVector(playerid,p[0],p[1],p[2]);
PlanarZAngleOfCamera(p[0],p[1],p[2]);
printf("Angle is %f",p[2]);
Последнее редактирование:
