RealClock Lost ?

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 Leute ,


    ich habe mir vorhin eine Reallife Uhr erstellt , nur wenn ich nun Ingame gehe , erscheint nicht .



    //Includes
    forward UpdateClock(); //für das Public "UpdateClock"



    //Defines
    new Text:EchtZeitUhr; //Definiert den Textdraw EchtZeitUhr



    public OnGameModeInit()
    {
    EchtZeitUhr = TextDrawCreate(635.000000,2.000000,"13:26");
    TextDrawAlignment(EchtZeitUhr,3);
    TextDrawBackgroundColor(EchtZeitUhr,0x00ffff66);
    TextDrawFont(EchtZeitUhr,3);
    TextDrawLetterSize(EchtZeitUhr,0.899999,1.600000);
    TextDrawColor(EchtZeitUhr,0x0000ffff);
    TextDrawSetOutline(EchtZeitUhr,1);
    TextDrawSetShadow(EchtZeitUhr,9);


    SetTimer("UpdateClock",1000,1); //Erstellt den Timer für die EchtZeitUhr
    return 1;
    }




    public UpdateClock()
    {
    new Hour,Minute,Sec,String[256]; //Definiert die Symbole
    gettime(Hour,Minute,Sec); //Holt sich die aktuelle Zeit (vom Rechner oder Server)
    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);}
    TextDrawSetString(EchtZeitUhr,String); //Updatet den TextDraw mit der Aktuellsten Uhrzeit
    SetWorldTime(Hour); // Setzt die InGame Zeit auf die RealLife Zeit, sodass wenn es in echt Nacht ist, es auch InGame Nacht ist
    return 1;
    }



    Ich hoffe , und ich bitte das ihr mir helft ;)

  • Du musst den Textdraw auch anzeigen lassen ;)


    Wenn der Spieler connectet anzeigen alssen per :

    Code
    ShowTextdrawForPlayer(playerid,<Textdraw>);


    Und wenn er den Server verlässt wieder per HideTextdrawForPlayer auch wieder verschwinden lassen ;)

  • Ok , danke hatte es nun aber auch schon geschafft ;)

  • Warum ist der Timer interval auf 1000ms gesetzt wenn die minute jedoch jede 60000ms geändert wird?
    Sehr ressourcenfressend, setz den timer doch auf 60000ms somit wird er alle 60 sekunden geupdatet, reicht doch? solang du keine sekunden anzeigen willst.

  • aLeX: Immer noch TextDrawShowForPlayer^^ Ich würde aber TextDrawShowForAll nehmen

  • Stimmt :D Ich amch alles aus dem Kopf von daher können auch mal kleingkeiten fehlerhaft sein :D
    TextDrawForAll ist auch eine Möglichkeit aber ich werde das Gefühl nicht los das wenn jemand neues auf den Server Connected den Textdraw nicht zu sehen bekommt ;)