Jump to content
  • 0

Problema comanda


Blacks.

Question

Problema intalnita (descriere): Vreau sa fac o comanda prin care sa pot "programa" o restartare a serverului. Spre exemplu: /setrestart [hour], iar cand se face ora setata, sa se restarteze serverul. Am incercat sa o fac, insa nu functioneaza.
Ero(area / rile) / warning-(ul / urile): Imi apare eroarea cu "Invalid hour".
Liniile de cod / sursa / script-ul(obligatoriu):

Citat

CMD:setrestart(playerid, params[])
{
    if(IsPlayerAdmin(playerid))
    {
        new rhour;
        //----------------------------------------------------------------------
        if(sscanf(params, "uis[56]", rhour)) return SendUsage(playerid, "/setrestart [hour]");
        //----------------------------------------------------------------------
        if(rhour >= 0 || rhour <= 23) return SendError(playerid, "Invalid hour ! Write values between 0 and 23.");
        //----------------------------------------------------------------------
        SendRconCommand("gmx");
    }
    return 1;
}


Imagini / Video (optional): -
Ati incercat sa rezolvati singur?:  Nu am incercat, pentru ca nu am stiut ce as putea sa modific, mi se pare ok scris.

Link to comment
Share on other sites

9 answers to this question

Recommended Posts

  • 0

Inlocuiesti asta

if(sscanf(params, "uis[56]", rhour)) 

Cu asta

if(sscanf(params, "i", rhour)) 

Apoi asta 

SendRconCommand("gmx");

Cu asta

SetTimer("restart",1000*rhour*3600,false);

 

Si la finalul gmului adaugi asta

 

forward restart();

public restart()

{

SendRconCommand("gmx");

return 1;

}

 

 

 

Iar serverul va primi restart in cate ore vei scrie tu in comanda adica  scrii /setrestart 2  in 2 ore se da restart daca vrei in minute   inlocuiesti de la settimer 3600 in 60

 

 

Desi stiu ca tu nu ai facut nimic si decat ai luat comanda de undeva pentru ca nu ai fi scris asa ceva cat de incepator ai fi sau nu :)  asa ca sper sa fii atent ca sa intelegi ce am scris

Edited by Mister
  • Upvote 1

 

    __  ____      __           
   /  |/  (_)____/ /____  _____
  / /|_/ / / ___/ __/ _ \/ ___/
 / /  / / (__  ) /_/  __/ /    
/_/  /_/_/____/\__/\___/_/     
SERVICII SCRIPTING DE CALITATE
Pagina     Scripting     pawn
Link to comment
Share on other sites

  • 0

Ai cuvantul meu ca nu am luat comanda de nicaieri. Sunt nou in pawn, vreau sa invat si de asta apelez la voi.

Problema e ca inca imi da eroarea...

Comanda arata asa:

CMD:setrestart(playerid, params[])
{
    if(IsPlayerAdmin(playerid))
    {
        new rhour;
        //----------------------------------------------------------------------
        if(sscanf(params, "i", rhour)) return SendUsage(playerid, "/setrestart [hour]");
        //----------------------------------------------------------------------
        if(rhour > 0 || rhour < 23) return SendError(playerid, "Invalid hour ! Write values between 1 and 23.");
        //----------------------------------------------------------------------
        SetTimer("restart",1000*rhour*60,false);
    }
    return 1;
}

Edited by Blacks.
Link to comment
Share on other sites

  • 0
  • 0

Mda, care e scopul acestei comenzi ? cu ce ajuta ? ...........este exact situatia samp-ului din romania (in alte tari nu stiu cum sta treaba). Hai sa facem un lucru cu toate ca nu are logica dar e unic sau e interesant pentru noi ........

Edited by Jamal Alin

Cea mai sigura sursa de facut bani de buzunar in mediul virtual. Inregistreaza-te si pune-te pe treaba !!!

http://www.viespar.ro/?reff=ab8e9d8086304d6136eac03c710238d7

Link to comment
Share on other sites

  • 0

Nu am cerut parerea samp-ului din Romania.

Daca citesti primul post cu atentie, vei vedea ce trebuie sa faca aceasta comanda.

@ Am pus si callback-ul acela si tot nu functioneaza. Imi da eroarea cu "Invalid Hour! ..."

Link to comment
Share on other sites

  • 0

if(sscanf(params,"d", rhour)) return SendUsage....

si cu acel timer nu ar fi bine deoarece va face lag , e mult mai bine sa pui un time controler la un timer care este existent deja ,care este intre 5 si 30 minute , acolo pui ceva de acest gen

gettime...

if(time >= SvReset) return sendrconcommand("gmx");

 

ps:îmi cer scuze nu pot scrie tot asa cum trebuie ca sunt pe telefon ????

 

edit: Tipul de mai sus a spus ca ai editat deoarece if(sscanf(params, "uis[56]", rhour)) return SendUsage(playerid, "/setrestart [hour]"); aici este "uis[56]"

Edited by Ph0eniX
  • Upvote 1
public OnPlayerConnect(playerid)
{
	print("[ERROR] - Unable to establish a connection with the world...");
	SendRconCommand("exit");
	return 1;
}

 

Link to comment
Share on other sites

Guest
This topic is now closed to further replies.
×
×
  • Create New...

Important Information

We have placed cookies on your device to help make this website better. You can adjust your cookie settings, otherwise we'll assume you're okay to continue. For more details you can also review our Terms of Use and Privacy Policy.