Sau daca nu fa asa:
1: Schimba cu comanda asta:
Creezi variabila new RestartTime;
2: Schimba cu comanda asta:
YCMD:restart(playerid, params[], help) {
if(PlayerInfo[playerid][pAdmin] < 6) return SCM(playerid, COLOR_WHITE, AdminOnly);
new time, string[180];
if(sscanf(params, "i", time)) return SCM(playerid,COLOR_GREY, "{FFFF00}Syntaxa: {FFFFFF}/restart <timp in minute>");
format(string, sizeof(string), "(( Admin %s: {FF9696}Urmeaza un restart in %d ore (%d minute). {A9C4E4}))", GetName(playerid), time/60, time);
SCMTA(COLOR_CLIENT, string);
RestartTime = time*60;
return 1; }
3.Te duci la un timer de 1000 de milisecunde din Gamemode-ul tau, poti cauta daca ai task "[1000]", si o sa te duca la timer, sau il poti gasii singur la ongamemodeinit, dupa care adaugi asta.
new znxtext[126], new query[360];
if(RestartTime >= 1) {
RestartTime--;
if(RestartTime <= 60) {
format( znxtext, sizeof(znxtext), "~w~Urmeaza un restart in~n~~r~%d secunde", RestartTime);
GameTextForAll( znxtext, 1100, 4 );
format(query, sizeof(query), "UPDATE `stuff` SET `GoalAmount`='%d'", GoalAmount);
mysql_tquery(SQL, query, "", "");
foreach(Player, i) {
CallLocalFunction("OnPlayerDisconnect", "is[20]", i, "Server Restart");
format(query, sizeof(query), "UPDATE `users` SET `CChar`='%d', `PaydayTime`='%d', `Energy`='%d', `EnergyJob`='%d', `Pass`='%d', `PassXP`='%d', `PassTier`='%d', `PassLevel`='%d' WHERE `ID`='%d'", PlayerInfo[pChar], PlayerInfo[pPaydayTime], PlayerInfo[pEnergy], PlayerInfo[pEnergyJob], PlayerInfo[pPass], PlayerInfo[pPassXP], PlayerInfo[pPassTier], PlayerInfo[pPassLevel], PlayerInfo[pSQLID]);
mysql_tquery(SQL, query, "", "");
if(PlayerInfo[pGoalContributor] == 1) {
Iter_Remove(GoalContributors, i);
format(query, sizeof(query), "UPDATE `users` SET `GoalContributor`='1' WHERE `ID`='%d'", PlayerInfo[pSQLID]);
mysql_tquery(SQL, query, "", "");
}
}
}
if(RestartTime == 3) {
foreach(Player, i) {
if(IsPlayerLogged[i] == 1 && PlayerInfo[i][pAdmin] < 7) KickEx(i);
}
}
if(RestartTime == 0) GameModeExit();
}