Tachoproblem

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
  • Hallo, und zwar habe ich ein Problem, mir wird nur 0km/h angezeigt
    getPlayerSpeed(playerid)
    {
    new Float:x,Float:y,Float:z, Float:rtn;
    if(IsPlayerInAnyVehicle(playerid))
    {
    GetVehicleVelocity(GetPlayerVehicleID(playerid),x,y,z);
    }
    else
    {
    GetPlayerVelocity(playerid,x,y,z);
    }
    rtn = floatsqroot(x*x + y*y + z*z);
    return floatround(rtn * 100 * 1.61);
    }


    Unter OnPlayerStateChange
    if(newstate==PLAYER_STATE_DRIVER)
    new string[128];
    format(string,sizeof(string),"%i km/h",getPlayerSpeed(playerid));
    Textdraw2[playerid] = CreatePlayerTextDraw(playerid, 370.625000, 168.583389, string);
    PlayerTextDrawLetterSize(playerid, Textdraw2[playerid], 0.449999, 1.600000);
    PlayerTextDrawAlignment(playerid, Textdraw2[playerid], 1);
    PlayerTextDrawColor(playerid, Textdraw2[playerid], -1);
    PlayerTextDrawSetShadow(playerid, Textdraw2[playerid], 0);
    PlayerTextDrawSetOutline(playerid, Textdraw2[playerid], 1);
    PlayerTextDrawBackgroundColor(playerid, Textdraw2[playerid], 51);
    PlayerTextDrawFont(playerid, Textdraw2[playerid], 1);
    PlayerTextDrawSetProportional(playerid, Textdraw2[playerid], 1);
    PlayerTextDrawShow(playerid,PlayerText:Textdraw2[playerid]);



    Ist jetzt mein erstes Tacho, drum nicht wundern^^

  • Beitrag von Fernando_Jizuya ()

    Dieser Beitrag wurde gelöscht, Informationen über den Löschvorgang sind nicht verfügbar.
  • Du erstellst zwar dein Textdraw, er wird aber nirgends geupdatet, deshalb bleibt der Wert natürlich auf 0.


    Tu' mal folgendes unter OnPlayerUpdate oder mach dir 'nen Timer:


    new str[32];
    //OnPlayerUpdate oder Timer:
    format(str,sizeof(str),"%i km/h",getPlayerSpeed(playerid));
    PlayerTextDrawSetString(playerid, Textdraw2[playerid],str);

    20€ geschenkt - bei Fragen gerne PN an mich


    Mehr über reCyclix
    reCyclix - more than recycling
    reyCyclix ist ein polnisches Recyclingunternehmen, welches jedem die Möglichkeit bietet, sich an ihrem Geschäftsmodell gewinnbringend zu beteiligen. Normalerweise passiert das, in dem man eine beliebige Summe in Kunststoffmüll investiert, allerdings schenkt reCyclix zur Zeit noch jedem neuem Nutzer 20€, die zur Investition genutzt werden können.

  • Muss ich dann das Textdraw bei OnPlayerStateChange auch noch formatieren ?
    Und was wird bei OnPlayerUpdate gemacht? wird da automatisch jede Sekunde oder sowas das Callback neu ausgeführt?


    1) Wenn es direkt angezeigt werden soll, ja.
    2) Ich würde dir raten es in einen Timer (der jede 100ms aufgerufen wird, oder 200ms) zu packen, denn OnPlayerUpdate wird ca. 30-50 mal pro Sekunde aufgerufen, das ist nicht wirklich sinnvoll.