Szerző Téma: GetClosestVehicle  (Megtekintve 1882 alkalommal)

Nem elérhető ZeRo

  • 4620
  • Ex Globális Moderátor
    • Profil megtekintése
GetClosestVehicle
« Dátum: 2009. november 11. - 19:03:01 »
0 Show voters
Ezzel a kóddal megkereshetjük a megadott játékoshoz eso legközelebbi jármuvet. A visszatérési érték -1 lesz, ha nem talál jármuvet, viszont a távolság lesz, ha megtalálta a jármuvet.
Szükséges hozzá a GetDistanceFromVehicle függvényem, ami ITT található!
 

stock GetClosestVehicle( playerid ) { //By ZeRo
new Found = -1,
    Float: MaxDistance = 99999.0,
    Float: TheDistance;
for( new index = 0; index < MAX_VEHICLES; index++ ) {
    if( IsPlayerInAnyVehicle( playerid ) ) {
    if( index != GetPlayerVehicleID( playerid ) ) {
       TheDistance = GetDistanceFromVehicle( playerid, index );
       if( TheDistance < MaxDistance ) {
           MaxDistance = TheDistance;
           Found = index;
      }
   }
} else {
    TheDistance = GetDistanceFromVehicle( playerid, index );
    if( TheDistance < MaxDistance ) {
        MaxDistance = TheDistance;
        Found = index;
   }
}
}
return Found;
}

 
Példa: A /clveh parancsra belerakatjuk magunkat a legközelebbi kocsiba:
 

public OnPlayerCommandText( playerid, cmdtext[  ] ) {
    if( strcmp( \"/clveh\", cmdtext, true ) == 0 ) {
        PutPlayerInVehicle( playerid, GetClosestVehicle( playerid ), 0 );
        return 1;
    }
    return 0;
}

 
ZeRo
« Utoljára szerkesztve: 2011. november 22. - 19:49:45 írta APC »

Handoo

  • Vendég
GetClosestVehicle
« Válasz #1 Dátum: 2009. november 12. - 11:55:40 »
0 Show voters
Kösz  :D Grat jó lett  ;)

Nem elérhető ZeRo

  • 4620
  • Ex Globális Moderátor
    • Profil megtekintése
GetClosestVehicle
« Válasz #2 Dátum: 2009. november 13. - 15:54:26 »
0 Show voters
Köszönöm. :)
ZeRo

GetClosestVehicle
« Válasz #3 Dátum: 2010. február 14. - 12:14:24 »
0 Show voters
Khmmm, nekem a GetDistanceFromVehicle függvény linkje nem muködik... Tudnál nekem adni egy másikat? Vagy írd le ide nékem, aztán ha megnéztem mondom a véleményem...  :-X

GetClosestVehicle
« Válasz #4 Dátum: 2010. február 14. - 12:59:30 »
0 Show voters
Próbáld ezt. (Nem teszteltem le)
 
stock Float:GetDistanceFromVehicle(playerid,vehicleid) {
new
    Float:P[3],
    Float:V[3];
GetPlayerPos(playerid,P[0],P[1],P[2]);
GetVehiclePos(vehicleid,V[0],V[1],V[2]);
for(new index=0; index<3; index++)
    P[index]-=V[index];
return _:(P[0]*P[0])+(P[1]*P[1])+(P[2]*P[2]);
}
« Utoljára szerkesztve: 2010. február 15. - 15:31:55 írta Gamestar »

 

SimplePortal 2.3.7 © 2008-2024, SimplePortal