Данная функция позволит поставить авто на колёса
Код: Выделить всё
stock IsVehicleUpsideDown(vehicleid)
{
new Float:quat_w,Float:quat_x,Float:quat_y,Float:quat_z;
GetVehicleRotationQuat(vehicleid,quat_w,quat_x,quat_y,quat_z);
new Float:y = atan2(2*((quat_y*quat_z)+(quat_w*quat_x)),(quat_w*quat_w)-(quat_x*quat_x)-(quat_y*quat_y)+(quat_z*quat_z));
return (y > 90 || y < -90);
}
Пример, если вставить в секундный таймер
Код: Выделить всё
new
v_id = GetPlayerVehicleID ( playerid ) ,
Float:v_angle;
if ( IsVehicleUpsideDown ( v_id ) )
{
GetVehicleZAngle ( v_id , v_angle ) ;
SetVehicleZAngle ( v_id , v_angle ) ;
}