Hilfe Bei Server neustart mit timer

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 brauche hier bei hilfe
    hier kommen immer errors und ich wollte sowas rein scripten wenn der countdown begint soll der server ein passwort rein machen das nach dem restart weg geht wäre nett wenn ihr mir hellfen würdet


    : error 029: invalid expression, assumed zero
    : error 004: function "Restart1" is not implemented
    : warning 225: unreachable code
    : error 029: invalid expression, assumed zero
    : error 004: function "Restart2" is not implemented
    : error 029: invalid expression, assumed zero
    : error 004: function "Restart3" is not implemented


    forward Restart1();
    forward Restart2();
    forward Restart3();



    if(strcmp(cmd, "/gmxcd", true) == 0)
    {
    if(IsPlayerConnected(playerid))
    {
    if (PlayerInfo[playerid][pAdmin] >= 1339)
    {
    SCMTA(RED,"[ServerGuard]:Serverneustart in 3 Minuten!");
    SCMTA(RED,"[ServerGuard]:Serverneustart in 3 Minuten!");
    SCMTA(RED,"[ServerGuard]:Serverneustart in 3 Minuten!");
    SCMTA(RED,"[ServerGuard]:Serverneustart in 3 Minuten!");
    SetTimer("Restart1",60000,0);
    return 1;
    public Restart1()
    SCMTA(RED,"[ServerGuard]:Serverneustart in 2 Minuten!");
    SCMTA(RED,"[ServerGuard]:Serverneustart in 2 Minuten!");
    SCMTA(RED,"[ServerGuard]:Serverneustart in 2 Minuten!");
    SCMTA(RED,"[ServerGuard]:Serverneustart in 2 Minuten!");
    SetTimer("Restart2",60000,0);
    return 1;
    public Restart2()
    SCMTA(RED,"[ServerGuard]:Serverneustart in 1 Minute!");
    SCMTA(RED,"[ServerGuard]:Serverneustart in 1 Minute!");
    SCMTA(RED,"[ServerGuard]:Serverneustart in 1 Minute!");
    SCMTA(RED,"[ServerGuard]:Serverneustart in 1 Minute!");
    SetTimer("Restart3",60000,0);
    public Restart3()
    SCM(playerid, RED, "[ServerGuard]:Server Startet Jetzt Neu!!!!!");
    SCM(playerid, RED, "[ServerGuard]:Server Startet Jetzt Neu!!!!!");
    SCM(playerid, RED, "[ServerGuard]:Server Startet Jetzt Neu!!!!!");
    SCM(playerid, RED, "[ServerGuard]:Server Startet Jetzt Neu!!!!!");
    SCM(playerid, RED, "[ServerGuard]:Server Startet Jetzt Neu!!!!!");
    SCM(playerid, RED, "[ServerGuard]:Server Startet Jetzt Neu!!!!!");
    SaveStuff();
    GameModeExit();
    }
    else
    {
    SendClientMessage(playerid, COLOR_GRAD1, "Das darfst du nicht tun !");
    }
    }
    return 1;
    }

  • Das kann s gar nicht funktionieren, mach einen Timer, bsp Gmxtimer, setz das interval auf 59976 (wegen überschneidungen), erstell eine globale Variable, bei dem befehl setzt du die variable auf 3, dann machst du den Timet, wiederholung true und jedes mal beim Abruf des Timers die variable verkleinern, bis 0 übrig is und dann den Server restarten lassen

  • forward GMXTimer();
    new GMXVar = -1;//Auf -1 setzen weil der Server bei 0 neugestartet wird


    //Bei OnPlayerCommandText
    if(strcmp(cmd, "/gmxcd", true) == 0)
    {
    if(PlayerInfo[playerid][pAdmin] >= 1339)
    {
    GMXVar = 3;//Auf 3 setzen damit im Timer runtergezählt wird
    SCMTA(RED,"[ServerGuard]: Der Server startet in 3 Minuten neu!");
    SetTimer("GMXTimer", 1000*60, true);// Timer starten
    }
    else
    {
    SendClientMessage(playerid, COLOR_GRAD1, "Das darfst du nicht!");
    }
    return 1;
    }


    //Außerhalb von OnPlayerCommandText
    public GMXTimer()
    {
    GMXVar--;//GMXVar um 1 verringern

    switch(GMXVar)//Das selbe wie if(GMXVar == ...) nur einfacher
    {
    case 2:
    {
    SCMTA(RED,"[ServerGuard]: Der Server startet in 2 Minuten neu!");
    }
    case 1:
    {
    SCMTA(RED,"[ServerGuard]: Der Server startet in 1 Minute neu!");
    }
    case 0:
    {
    SCMTA(RED,"[ServerGuard]: Der Server startet neu!");
    //Speichern etc.
    SendRconCommand("gmx");
    }
    }
    }

  • Ich verstehe manche Leute hier nicht :S


    Er fragt ob er es einfach Kopieren soll, und dann Einfügen. Daraufhin schreibt Azure.Jr dass er es am Handy geschrieben hat, und er es anpassen soll.
    Dann schreibt der nächste direkt den richtigen Code... Daraus soll er es lernen, eigenständig zu scripten :huh:

  • wie außerhalb//Außerhalb von OnPlayerCommandText
    public GMXTimer()
    {
    GMXVar--;//GMXVar um 1 verringern


    switch(GMXVar)//Das selbe wie if(GMXVar == ...) nur einfacher
    {
    case 2:
    {
    SCMTA(RED,"[ServerGuard]: Der Server startet in 2 Minuten neu!");
    }
    case 1:
    {
    SCMTA(RED,"[ServerGuard]: Der Server startet in 1 Minute neu!");
    }
    case 0:
    {
    SCMTA(RED,"[ServerGuard]: Der Server startet neu!");
    //Speichern etc.
    SendRconCommand("gmx");
    }
    }
    }[]