Tacho Fehler (Falsche Geschwindigkeit)

Wichtiger Hinweis: Bitte ändert nicht manuell die Schriftfarbe auf schwarz sondern belasst es bei der Standardeinstellung. Somit tragt ihr dazu bei dass euer Text auch bei Verwendung unseren dunklen Forenstils noch lesbar ist!

Tipp: Ihr wollt längere Codeausschnitte oder Logfiles bereitstellen? Benutzt unseren eigenen PasteBin-Dienst Link
  • Hey,
    ich habe mir einen Tacho erstellt, der mir jetzt eine falsche Geschwindigkeit anzeigt. Ein Landstalker z.B. fährt nur 160 km/h, auf meinem Server allerdings 180 km/h. Er hat nach 1 Sekunde auch schon ca. 80 km/h erreicht.
    Hier der Code:
    public UpdateTacho()
    {
    for(new i = 0; i < MAX_PLAYERS; i++)
    {
    if(IsPlayerConnected(i) && IsPlayerInAnyVehicle(i))
    {
    new Float:Entfernung, Float:Geschwindigkeit;
    GetVehiclePos(GetPlayerVehicleID(i), X1[i], Y1[i], Z1[i]);
    Entfernung = floatsqroot(floatpower(floatabs(floatsub(X1[i], X2[i])), 2)+floatpower(floatabs(floatsub(Y1[i], Y2[i])), 2)+floatpower(floatabs(floatsub(Z1[i], Z2[i])), 2));
    Geschwindigkeit = (Entfernung / (TACHOTIMER/1000)) * 3.6;
    new Tachostring[20];
    format(Tachostring, sizeof(Tachostring), "Km/h: %d", floatround(Geschwindigkeit));
    TextDrawSetString(Tacho[i], Tachostring);
    GetVehiclePos(GetPlayerVehicleID(i), X2[i], Y2[i], Z2[i]);
    TextDrawShowForPlayer(i, Tacho[i]);
    }
    else
    {
    TextDrawHideForPlayer(i, Tacho[i]);
    }
    }
    return 1;
    }



    OnGameModeInit:
    //Tacho
    for( new x = 0;x<MAX_PLAYERS;x++)
    {
    Tacho[x] = TextDrawCreate(357.0000,340.0000,"");
    TextDrawLetterSize(Tacho[x],0.4,1.1);
    TextDrawFont(Tacho[x],1);
    TextDrawSetShadow(Tacho[x],2);
    TextDrawSetOutline(Tacho[x],1);
    }
    SetTimer("UpdateTacho",TACHOTIMER,1);


    TACHOTIMER ist 1000.


    Was mache ich falsch? Oder ist das richtig mit der Geschwindigkeit?


    Mfg Maksimo007

    2 Mal editiert, zuletzt von Maksimo007 ()