[Hilfe] SendClientMessages mit verzögerung dazwischen

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
  • Hey,
    ich bin schon seit ein paar stunden am versuchen folgendes zu scripten:


    Ich will das wenn man zb. /test eingibt, eine SendClientMessage kommt, dann 10 sekunden gewartet wird, dann wieder die 10 sekunden warten, eine nachricht usw.. Soweit bin ich jetzt:


    forward cclear(playerid);
    forward sek(playerid);


    SetTimer("sek",10000,false);


    public cclear(playerid)
    {
    SCM(playerid,Weiß,"");
    SCM(playerid,Weiß,"");
    SCM(playerid,Weiß,"");
    SCM(playerid,Weiß,"");
    SCM(playerid,Weiß,"");
    SCM(playerid,Weiß,"");
    SCM(playerid,Weiß,"");
    SCM(playerid,Weiß,"");
    SCM(playerid,Weiß,"");
    SCM(playerid,Weiß,"");
    return 1;
    }


    public sek(playerid)
    {
    cclear(playerid);
    }


    ocmd:test(playerid,params[])
    {
    SCM(playerid,Rot,"test");
    sek(playerid);
    SCM(playerid,Rot,"test2");
    sek(playerid);
    return 1;
    }


    Was passiert ist: Wenn ich ingame /test eingebe, schreibt er test,schreibt 10 leere zeilen, schreibt test2 und wieder die 10 leeren zeilen. Soll er ja alles auch.. aber die verzögerung fehlt :(


    Bitte helft mir..


    LG


    //edit Hab die überschrift vergessen ;)


    //edit Also SCM hab ich so gemacht das SendClientMessage == SCM ist..

  • ocmd:test(playerid,params[])
    {
    SCM(playerid,Rot,"test");
    SetTimerEx("ShowMessage", 1000, 0, "dd", playerid, 0);
    return 1;
    }


    forward ShowMessage(playerid, num);
    public ShowMessage(playerid, num)
    {
    switch(num)
    {
    case 0: SCM(playerid,Rot,"test0");
    case 1: SCM(playerid,Rot,"test1");
    case 2: SCM(playerid,Rot,"test2");
    }
    num++;
    if(num <= 2) SetTimerEx("ShowMessage", 1000, 0, "dd", playerid, num);
    return 1;
    }