Timer bei SendClientMessagr

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
  • Hi ich wollte mal Fragen wie ich eine Nachricht für eine gewisse Zeit lang stehen lassen kann.


    Also diese Nachricht:
    SendClientMessage(playerid, COLOR_YELLOW,"Ausweis wird gedruckt...");



    Soll 4 Minuten so stehen bleiben ehe die nächste Nachricht kommt...

    Meine Ziele
    350 Posts [X]

    375 Posts [X]

    400 Posts []

    425 Posts []

    450 Posts []



  • Willst du dass man 4 Minuten lang keine Nachrichten per SendClientMessage "empfangen" kann?



    new scm[MAX_PLAYERS] = 1;
    stock SendClientMessageEx(playerid,farbe,text[])
    {
    if(scm[playerid] == 0)return 1;
    return SendClientMessage(playerid,farbe,text);
    }
    #define SendClientMessage SendClientMessageEx


    stock BlockMessage(playerid,block)
    {
    scm[playerid] = block;
    return 1;
    }

    jetzt könntest du nach der Nachricht einfach BlockMessage(playerid,0); machen und nach 4 Minuten BlockMessage(playerid,1);
    Hab die Funktion noch nicht getestet..

  • Ich meine diese Nachricht soll 4 Sekunden stehen bleiben und dann erst soll kommen SendClientMessage(playerid, COLOR_YELLOW,"Okay nun hast du deinen Perso.");

    Meine Ziele
    350 Posts [X]

    375 Posts [X]

    400 Posts []

    425 Posts []

    450 Posts []



  • Dann startest du einen Timer für den Spieler der sich nicht wiederholt, diesen stellst du auf 4 Sekunden und sendest dann in dem Timer die Nachricht.
    Es gibt eine Sleep Funktion aber diese sollte man nicht nutzen da Samp nur SingleThread ist und somit alles gestoppt währe für 4 Sekunden (Also nichtmal die Spieler würden sich bewegen)

  • SetTimerEx("wartezeit",4000,false,"i",playerid); // Nachdem die erste Nachricht versendet wurde.

    forward wartezeit(playerid); // Ganz oben


    public wartezeit(playerid) // Irgendwo unten hin.
    {
    SendClientMessage(playerid,COLOR_YELLOW,"Dein Ausweis wurde erfolgreich gedruckt!");
    return 1;
    }