GTA Közösség - A magyar GTA fórum

San Andreas Multiplayer (SA-MP) => SA-MP: Szerverfejlesztés => Segítségkérés => A témát indította: zeteni - 2012. június 10. - 20:49:06

Cím: Elmagyarázná valaki?
Írta: zeteni - 2012. június 10. - 20:49:06
stock GetPlayerSpeed(playerid)
{
new speed;
if(!IsPlayerInAnyVehicle(playerid)) return -1;
new Float:VelocityX;
new Float:VelocityY;
new Float:VelocityZ;
GetVehicleVelocity(GetPlayerVehicleID(playerid),VelocityX,VelocityY,VelocityZ);
speed = floatround(floatpower((VelocityX*VelocityX)+(VelocityY*VelocityY)+(VelocityZ*VelocityZ),0.5)*217.5);
return speed;
}

 
Sziasztok! Pedro-tól láttam ezt a stock-ot és akárhogy is nézem nem nagyon értem, hogy mi mit csinál. Azt értem, hogy sebességmérõ akar lenni, de valaki leírná, hogy mi micsoda mit csinák? :) Köszönöm!
Cím: Elmagyarázná valaki?
Írta: TengeriMalac - 2012. június 11. - 00:50:47
Ez lekéri a jármû mozgását, és sebességgé alakítja
Használata egyszerû.
Szimplán beilleszted a sebességmérõdbe
 
new string[32];
format(string, sizeof(string), \"Sebesség: %d KM/h\", GetPlayerSpeed(playerid));
SendClientMessage(playerid, -1, string);

 
Hogy melyik Float mit csinál, azt ne kérdezd, mert fogalmam nincs (nem értek hozzá)
A GetVehicleVelocity pedig a gyorsulást méri le.
Cím: Elmagyarázná valaki?
Írta: Norby - 2012. június 11. - 14:41:50
floatround: egy lebegõpontos számot kerekít egész számmá.
floatpowe: ezt hatványozásra használjuk.
Cím: Elmagyarázná valaki?
Írta: TengeriMalac - 2012. június 11. - 15:17:30
Idézetet írta: Norby date=1339418510\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"22686\" data-ipsquote-contentclass=\"forums_Topic
floatround: egy lebegõpontos számot kerekít egész számmá.
floatpowe: ezt hatványozásra használjuk.
 
Akkor a floatroundot jól tippeltem :)
Cím: Elmagyarázná valaki?
Írta: Kovacs_Bela - 2012. június 11. - 17:31:23

#include <a_samp>
new Text:seb = TextDrawCreate(200,200,\"sebesseg\");
new timer[MAX_PLAYERS];
public OnPlayerEnterVehicle(playerid,vehicleid)
{
    new str[128];
    format(str,128,\"%d\",GetPlayerSpeed(playerid));
    TextDrawSetString(seb,str);
    TextDrawShowForPlayer(playerid,seb);
    timer[playerid] = SetTimerEx(\"timercar\",500,true,\"d\",playerid);
    return 1;
}
public OnPlayerExitVehicle(playerid,vehicleid)
{
    KillTimer(timer[playerid]);
    TextDrawHideForPlayer(playerid);
    return 1;
}
public timercar(playerid);
public timercar(playerid)
{
    new str[128];
    format(str,128,\"%d\",GetPlayerSpeed(playerid));
    TextDrawSetString(seb,str);
}
    stock GetPlayerSpeed(playerid)
    {
            new speed;
     
            if(!IsPlayerInAnyVehicle(playerid)) return -1;
     
            new Float:VelocityX;
            new Float:VelocityY;
            new Float:VelocityZ;
     
            GetVehicleVelocity(GetPlayerVehicleID(playerid),VelocityX,VelocityY,VelocityZ);
            speed = floatround(floatpower((VelocityX*VelocityX)+(VelocityY*VelocityY)+(VelocityZ*VelocityZ),0.5)*217.5);
     
            return speed;
    }
Cím: Elmagyarázná valaki?
Írta: Pedró - 2012. június 11. - 19:45:38
Idézetet írta: zeteni date=1339354146\" data-ipsquote-contentapp=\"forums\" data-ipsquote-contenttype=\"forums\" data-ipsquote-contentid=\"22686\" data-ipsquote-contentclass=\"forums_Topic
Pedro
 
hmmm?? h-h tõlem?
amúgy lekérdezed a játékosnak a sebességét..
Cím: Elmagyarázná valaki?
Írta: zeteni - 2012. június 11. - 21:02:19
köszönöm mindenkinek. A norbyéra voltam kiváncsi