GMX-Sequenz

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 ich habe mir eine GMX-Sequenz gemacht aber bei 3 Sekunden spinnt das rum.


    hier mal Screens:



    Hier das Script:



    ocmd:restart(playerid,params[])
    {
    if(IsPlayerAnAdmin(playerid,5))
    {
    if(OnDuty[playerid] == 1)
    {
    SendClientMessageToAll(-1,"");
    SendClientMessageToAll(-1,"");
    SendClientMessageToAll(-1,"");
    SendClientMessageToAll(-1,"");
    SendClientMessageToAll(-1,"");
    SendClientMessageToAll(-1,"");
    SendClientMessageToAll(-1,"");
    SendClientMessageToAll(ROT,"GMX-Sequenz wurde gestartet! GMX wird in einer Minute durchgeführt!");
    SendClientMessageToAll(GRÜN,"Bitte keine Überweisungen mehr tätigen, alles was in der nächsten Minute passiert fällt weg!");
    SendClientMessageToAll(GRÜN,"Und wird {FF0000FF}NICHT erstattet!!!");
    SendClientMessageToAll(-1,"");
    SendClientMessageToAll(GRÜN,"Für die GMX-Sequenz wurden alle Personen gefreezt.");
    SetTimer("restart", 30000, true);
    for(new i = 0; i < MAX_PLAYERS;i++)
    {
    TogglePlayerControllable(playerid, 0);
    }
    }
    else
    {
    SendClientMessage(playerid,ROT,"Bitte ADuty gehen um diesen Befehl nutzen zu können.");
    }
    }
    else
    {
    ERROR
    }
    return 1;
    }


    forward restart();
    public restart()
    {
    SendClientMessageToAll(-1,"GMX in 30 Sekunden!");
    SetTimer("restart1", 20000, true);
    }


    forward restart1();
    public restart1()
    {
    SendClientMessageToAll(-1,"GMX in 10 Sekunden!");
    SetTimer("restart2", 5000, true);
    }


    forward restart2();
    public restart2()
    {
    SendClientMessageToAll(-1,"GMX in 5 Sekunden!");
    SetTimer("restart3", 1000, true);
    }


    forward restart3();
    public restart3()
    {
    SendClientMessageToAll(-1,"GMX in 4 Sekunden!");
    SetTimer("restart4", 1000, true);
    }


    forward restart4();
    public restart4()
    {
    SendClientMessageToAll(-1,"GMX in 3 Sekunden!");
    SetTimer("restart5", 5000, true);
    }


    forward restart5();
    public restart5()
    {
    SendClientMessageToAll(-1,"GMX in 2 Sekunden!");
    SetTimer("restart6", 5000, true);
    }


    forward restart6();
    public restart6()
    {
    SendClientMessageToAll(-1,"GMX in 1 Sekunden!");
    SetTimer("restart7", 5000, true);
    }


    forward restart7();
    public restart7()
    {
    SendClientMessageToAll(-1,"GMX... Bitte Reloggen. Der Server wird bald wieder erreichbar sein!");
    SetTimer("restart8", 250,true);
    }


    forward restart8();
    public restart8()
    {
    for(new i = 0; i < MAX_PLAYERS;i++)
    {
    if(GetPVarInt(playerid,"loggedin")==1)
    {
    SpielerSpeichern(playerid);
    }
    Kick(i);
    SendRconCommand("gmx");
    }
    }


    Ich hoffe Ihr wisst weiter.

  • Schau dir das mal an:


    forward restart4();
    public restart4()
    {
    SendClientMessageToAll(-1,"GMX in 3 Sekunden!");
    SetTimer("restart5", 5000, true);
    }


    forward restart5();
    public restart5()
    {
    SendClientMessageToAll(-1,"GMX in 2 Sekunden!");
    SetTimer("restart6", 5000, true);
    }


    forward restart6();
    public restart6()
    {
    SendClientMessageToAll(-1,"GMX in 1 Sekunden!");
    SetTimer("restart7", 5000, true);
    }


    Von 5000 auf 1000 stellen und es müssten dann funktionieren obwohl man das einfacher gestalten könnte.
    Und die Timer nicht wiederholen lassen deshalb einfach überall auf false setzen.