Szerző Téma: IsVehicleUpsideDown  (Megtekintve 1477 alkalommal)

Nem elérhető Pedró

  • 3341
  • 2014 © Az év Szkriptere
    • Profil megtekintése
IsVehicleUpsideDown
« Dátum: 2013. november 23. - 20:40:02 »
+3 Show voters
IsVehicleUpsideDown


Sziasztok!

Ezt a függvényt még 1 éve dobtam össze.


A kód történetérõl ebben a témában olvashattok:
LINK

A függvény lényege az, hogy le ellenõrzi, hogy a megadott jármû fejjel lefelé van-e, majd visszatér 0(hamis) vagy 1(igaz) értékkel.



A kód:
 
stock IsVehicleUpsideDown(vehicleid) {
       new Float:p[4];
       if(GetVehicleRotationQuat(vehicleid, p[0], p[1], p[2], p[3])) {
               new Float:angle;
               angle = atan2(2.0 * ((p[2] * p[3]) + (p[1] * p[0])), (-(p[1] * p[1]) - (p[2] * p[2]) + (p[3] * p[3]) + (p[0] * p[0])));
               return (-75.0 <= angle <= 75.0);
       }
       return 0;
}

 



  • Készítõ: Pedró


  • Az anyagok készítõi, amelyeket felhasználtam: ev0lution$YOLO$, Y_Less, Zh3r0


  • Készítés idõpontja: 2012/09/24

« Utoljára szerkesztve: 2013. november 24. - 17:51:54 írta Pedró »

IsVehicleUpsideDown
« Válasz #1 Dátum: 2013. november 23. - 20:59:25 »
+1 Show voters
Ez így nem lesz jó:
 
return (75.0 < angle > -75.0);

 
Erre írd át:
 
return (-75.0 <= angle <= 75.0);

 
Itt a teszt amivel ellenõriztem:



#include 
public
OnFilterScriptInit()
{
for(new i = -100; i < 100; i++)
{
if(teszt(_:i)) printf(\"return 1; i:%d\", i);
}
}
teszt(Float:angle)
{
// return (75.0 < angle > -75.0);
return (-75.0 <= angle <= 75.0);
}

Nem elérhető BoOy

  • 3209
  • 2013-as év szkriptere
    • Profil megtekintése
IsVehicleUpsideDown
« Válasz #2 Dátum: 2013. november 23. - 21:41:11 »
0 Show voters
OFF: Nem ezt használtam a szerverembe? :D Nekem mûködött. :)
Grat szép munka :D

Nem elérhető Pedró

  • 3341
  • 2014 © Az év Szkriptere
    • Profil megtekintése
IsVehicleUpsideDown
« Válasz #3 Dátum: 2013. november 24. - 17:52:41 »
0 Show voters

Ez így nem lesz jó:
 
return (75.0 < angle > -75.0);

 
Erre írd át:
 
return (-75.0 <= angle <= 75.0);

 
Itt a teszt amivel ellenõriztem:



#include 
public
OnFilterScriptInit()
{
for(new i = -100; i < 100; i++)
{
if(teszt(_:i)) printf(\"return 1; i:%d\", i);
}
}
teszt(Float:angle)
{
// return (75.0 < angle > -75.0);
return (-75.0 <= angle <= 75.0);
}

 
 
[/quote]
Köszi.



OFF: Nem ezt használtam a szerverembe? :D Nekem mûködött. :)
Grat szép munka :D
 
[/quote]
De ezt használtad, talán még a te kérésedre készítettem.. :P
Köszi.

IsVehicleUpsideDown
« Válasz #4 Dátum: 2013. november 27. - 13:56:17 »
0 Show voters
Jó lett !

 

SimplePortal 2.3.7 © 2008-2024, SimplePortal