Tacho Anzeige Bug

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
  • Ich schildere kurz die Situation, in der der Fehler auftaucht.


    Ich spawne, laufe zu einem Auto, setze mich hinein und die km/h Anzeige steht für eine Sekunde auf ca. 5000-6000.


    Wodran kann das liegen ?


    Ich habe das Pawn Tutorial aus der Pawn Tutorial Reihe von McBastard112 genommen:


    http://www.youtube.com/watch?v…C9AED2CF72514BD2&index=20


    Kennt jemand ein besseres oder weiß, wie ich den Fehler beheben kann ?

    VIVA LA REVOLUCIÓN

  • Ich habe das Problem immer noch, habe es sogar erneut gemacht mit einem anderen Tutorial jetzt. Undzwar eins aus diesem Forum.


    Hier der Code!


    //Tacho ... Unter die Includes
    new Text:Tacho[MAX_PLAYERS];
    #define TACHOTIMER 1000
    forward TachoTimer();
    new Float:X1[MAX_PLAYERS], Float:Y1[MAX_PLAYERS], Float:Z1[MAX_PLAYERS]; //Punkt 1 im Koordinatensystem
    new Float:X2[MAX_PLAYERS], Float:Y2[MAX_PLAYERS], Float:Z2[MAX_PLAYERS]; //Punkt 2 im Koordinatensystem


    public TachoTimer()
    {
    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;
    }


    public OnGameModeInit()
    {
    for(new i = 0; i < MAX_PLAYERS; i++)
    {
    Tacho[i] = TextDrawCreate(300, 370, "Km/h:---");
    TextDrawLetterSize(Tacho[i], 0.4, 1.1);
    TextDrawFont(Tacho[i], 1);
    TextDrawSetShadow(Tacho[i], 2);
    TextDrawSetOutline(Tacho[i],1);
    }
    SetTimer("TachoTimer",TACHOTIMER,1);
    }


    Ich verstehe nicht warum am Anfang für 1 Sekunde immer eine hohe Zahl von 7000 oder so angezeigt wird...

    VIVA LA REVOLUCIÓN