Textdraw Datum eintragen

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,
    wie kann ich in mein Textdraw dass aktuelle Datum eintragen?


    Textdraw0[playerid] = CreatePlayerTextDraw(playerid, 559.000000, 6.000000, " ");
    PlayerTextDrawBackgroundColor(playerid, Textdraw0[playerid], 255);
    PlayerTextDrawFont(playerid, Textdraw0[playerid], 2);
    PlayerTextDrawLetterSize(playerid, Textdraw0[playerid], 0.270000, 1.200000);
    PlayerTextDrawColor(playerid, Textdraw0[playerid], -16776961);
    PlayerTextDrawSetOutline(playerid, Textdraw0[playerid], 1);
    PlayerTextDrawSetProportional(playerid, Textdraw0[playerid], 1);
    PlayerTextDrawSetSelectable(playerid, Textdraw0[playerid], 0);

  • Danke @Canna


    wie kann ich bei der Uhrzeit noch Sekunden ranhängen?


    forward UpdateUhrzeit(playerid);
    public UpdateUhrzeit(playerid)
    {
    new Hour,Minute,Sec,String[256];
    gettime(Hour,Minute,Sec);
    if(Hour<9 && Minute<9){format(String,sizeof(String),"0%d:0%d",Hour,Minute);}
    else if(Hour>9 && Minute<9){format(String,sizeof(String),"%d:0%d",Hour,Minute);}
    else if(Hour<9 && Minute>9){format(String,sizeof(String),"0%d:%d",Hour,Minute);}
    else{format(String,sizeof(String),"%d:%d",Hour,Minute);}
    PlayerTextDrawSetString(playerid, TimeDraw[playerid],String);
    SetWorldTime(Hour);
    return 1;
    }

  • forward UpdateUhrzeit();
    public UpdateUhrzeit()
    {
    new hour,minute,sec,string[16];
    gettime(hour,minute,sec);
    format(string,sizeof(string),"%02d:%02d:%02d",hour,minute,sec);
    for(new i = 0; i < MAX_PLAYERS; i++) if(IsPlayerConnected(i) && !IsPlayerNPC(i)) PlayerTextDrawSetString(i, TimeDraw[i], string);
    SetWorldTime(hour);
    return 1;
    }


    Timer bei OnGameModeInit so starten:
    SetTimer("UpdateUhrzeit", 333, true);
    333 entspricht einer drittel Sekunde, so läuft der Sekundenzähler recht flüssig und überspringt keine Zahl.

    3HZXdYd.png

    Einmal editiert, zuletzt von Jeffry ()

  • Oki danke :)


    Noch eine Frage warum werden die Textdraws nicht beim einsteigen erstellt?


    public OnPlayerEnterVehicle(playerid, vehicleid, ispassenger)
    {
    if(GetPlayerState(playerid) == PLAYER_STATE_DRIVER)
    {
    SendClientMessage(playerid, COLOR_GELB, "Info: "HTML_WEIS"Du kannst das Fahrzeug "HTML_GELB"mit der Taste 2 oder mit /motor "HTML_WEIS"starten!");
    PlayerTextDrawShow(playerid, Tacho1[playerid]);
    PlayerTextDrawShow(playerid, Tacho2[playerid]);
    PlayerTextDrawShow(playerid, Tacho3[playerid]);
    PlayerTextDrawShow(playerid, Tacho4[playerid]);
    PlayerTextDrawShow(playerid, Tacho5[playerid]);
    PlayerTextDrawShow(playerid, Tacho6[playerid]);
    PlayerTextDrawShow(playerid, Tacho7[playerid]);
    PlayerTextDrawShow(playerid, Tacho8[playerid]);
    PlayerTextDrawShow(playerid, Tacho9[playerid]);
    PlayerTextDrawShow(playerid, Tacho10[playerid]);
    PlayerTextDrawShow(playerid, Tacho11[playerid]);
    PlayerTextDrawShow(playerid, Tacho12[playerid]);
    }
    return 1;
    }

  • do.de - Domain-Offensive - Domains für alle und zu super Preisen
  • Schreibe den Code zu OnPlayerStateChange, da bei OnPlayerEnterVehicle der GetPlayerState noch außerhalb des Fahrzeugs ist.
    OnPlayerEnterVehicle wird genau dann aufgerufen, wenn du die Taste zum Einsteigen drückst, da bist du ja noch nicht im Fahrzeug.

  • Funktioniert immernoch nicht :(


    public OnPlayerStateChange(playerid, newstate, oldstate)
    {
    if(GetPlayerState(playerid) == PLAYER_STATE_DRIVER)
    {
    SendClientMessage(playerid, COLOR_GELB, "Info: "HTML_WEIS"Du kannst das Fahrzeug "HTML_GELB"mit der Taste 2 oder mit /motor "HTML_WEIS"starten!");


    new tachocarname[24];
    new vehicleid = GetPlayerVehicleID(playerid);
    format(tachocarname, sizeof(tachocarname), "%s", vehName[vehicleid]);
    PlayerTextDrawSetString(playerid, Tacho8[playerid], tachocarname);


    PlayerTextDrawShow(playerid, Tacho1[playerid]);
    PlayerTextDrawShow(playerid, Tacho2[playerid]);
    PlayerTextDrawShow(playerid, Tacho3[playerid]);
    PlayerTextDrawShow(playerid, Tacho4[playerid]);
    PlayerTextDrawShow(playerid, Tacho5[playerid]);
    PlayerTextDrawShow(playerid, Tacho6[playerid]);
    PlayerTextDrawShow(playerid, Tacho7[playerid]);
    PlayerTextDrawShow(playerid, Tacho8[playerid]);
    PlayerTextDrawShow(playerid, Tacho9[playerid]);
    PlayerTextDrawShow(playerid, Tacho10[playerid]);
    PlayerTextDrawShow(playerid, Tacho11[playerid]);
    PlayerTextDrawShow(playerid, Tacho12[playerid]);
    }
    return 1;
    }

  • Funktioniert immer noch nicht :(


    public OnPlayerStateChange(playerid, newstate, oldstate)
    {
    if(newstate == PLAYER_STATE_DRIVER)
    {
    SendClientMessage(playerid, COLOR_GELB, "Info: "HTML_WEIS"Du kannst das Fahrzeug "HTML_GELB"mit der Taste 2 oder mit /motor "HTML_WEIS"starten!");


    new tcn[24];
    new mID = GetVehicleModel(GetPlayerVehicleID(playerid));
    format(tcn, sizeof(tcn), "%s", VehicleNames[mID]);
    PlayerTextDrawSetString(playerid, Tacho8[playerid], tcn);


    PlayerTextDrawShow(playerid, Tacho1[playerid]);
    PlayerTextDrawShow(playerid, Tacho2[playerid]);
    PlayerTextDrawShow(playerid, Tacho3[playerid]);
    PlayerTextDrawShow(playerid, Tacho4[playerid]);
    PlayerTextDrawShow(playerid, Tacho5[playerid]);
    PlayerTextDrawShow(playerid, Tacho6[playerid]);
    PlayerTextDrawShow(playerid, Tacho7[playerid]);
    PlayerTextDrawShow(playerid, Tacho8[playerid]);
    PlayerTextDrawShow(playerid, Tacho9[playerid]);
    PlayerTextDrawShow(playerid, Tacho10[playerid]);
    PlayerTextDrawShow(playerid, Tacho11[playerid]);
    PlayerTextDrawShow(playerid, Tacho12[playerid]);
    }
    return 1;
    }

  • Nein denke ich nicht, ich habe die TextDraws bei OnPlayerconnect reingemacht, und beim OnPlayerStateChange sie anzeigen lassen und das ging problemlos.


    Mach mal diese Zeilen weg und schau ob es dann geht:



    new tcn[24];
    new mID = GetVehicleModel(GetPlayerVehicleID(playerid));
    format(tcn, sizeof(tcn), "%s", VehicleNames[mID]);
    PlayerTextDrawSetString(playerid, Tacho8[playerid], tcn);

    Mit freundlichen Grüßen,
    Dachdecker