[Pomoc] /upit ili /pomoc & /report


Započeo Stiki Iki, Jun 09, 2013, 15:51:36 POSLE PODNE

prethodna tema - sledeća tema

0 članova i 1 gost pregledaju ovu temu.

Skripta koju koristim: Ne bitno.
Detaljan opis problema: Ne znam da napravim ovo.
Npr. drug i ja smo na serveru.I sad ja posaljem,upit,pomoc,report,i onda on hoce da ukuca i da mu pise da je preostalo jos toliko sekundi,dakle da moze stici samo jedan upit,pomoc,report na serveru u minuti,a ne vise njih i ne od jednog igraca vec od svih igraca.Ako jedan posalje report itd,da ostali ne mogu za jos 1 min.Znaci trebam postaviti tajmer za sve igrace,ali kako,nadam se da ste me razumjeli..
Dio skripte: /
Neke slike:

Citat: Viktor_ poslato Jun 09, 2013, 15:54:30 POSLE PODNE
Report
CMD:report(playerid, params[])
{
    new text[80];
    /*if(PlayerInfo[playerid][Utisan] == 1)
    {
	    new string[128];
	    format(string, sizeof(string), "ClioX | Vi ste utisani! | Sekundi koliko ste jos utisani: %d", PlayerInfo[playerid][UtisanVreme], (PlayerInfo[playerid][UtisanVreme]/60));
	    SendClientMessage(playerid, COLOR_YELLOW, string);
    	return 1;
    }*/
    if(IgracLogovan[playerid] == 0)
	{
		SendClientMessage(playerid, COLOR_MUTERED, "(WorldAc) {CCCCCC}Nisi logiran!");
		return 1;
	}
	if(sscanf(params, "s[80]", text)) return Koristi(playerid, "/report [text]");
	for(new i; i < strlen(text); i++)
	{
	    if(!strcmp(text[i], "{")) text[i] = '[';
	    if(!strcmp(text[i], "}")) text[i] = ']';
	}
	new string[129];
	new Ime[MAX_PLAYER_NAME];
	GetPlayerName(playerid, Ime, sizeof(Ime));
 	format(string,256," |R| %s[%d]: %s",Ime,playerid,text);
  	SendAdminMessage(COLOR_ORANGE, string);
  	format(string, sizeof(string), "*Vas report glasi: %s", text);
	SendClientMessage(playerid,COLOR_WHITE, string);
	SendClientMessage(playerid,COLOR_YELLOW,"*Vegas Gaming FreeRoam: Hvala na upitu,admini ce odgovoriti u najkracem roku!");
	return 1;
}


pomoc

CMD:pomoc(playerid, params[])
{
    new text[80];
    /*if(PlayerInfo[playerid][Utisan] == 1)
    {
	    new string[128];
	    format(string, sizeof(string), "ClioX | Vi ste utisani! | Sekundi koliko ste jos utisani: %d", PlayerInfo[playerid][UtisanVreme], (PlayerInfo[playerid][UtisanVreme]/60));
	    SendClientMessage(playerid, COLOR_YELLOW, string);
    	return 1;
    }*/
    if(IgracLogovan[playerid] == 0)
	{
		SendClientMessage(playerid, COLOR_MUTERED, "(WorldAc) {CCCCCC}Nisi logiran!");
		return 1;
	}
	if(sscanf(params, "s[80]", text)) return Koristi(playerid, "/pomoc [text]");
	for(new i; i < strlen(text); i++)
	{
	    if(!strcmp(text[i], "{")) text[i] = '[';
	    if(!strcmp(text[i], "}")) text[i] = ']';
	}
	new string[129];
	new Ime[MAX_PLAYER_NAME];
	GetPlayerName(playerid, Ime, sizeof(Ime));
 	format(string,256," |P| %s[%d]: %s",Ime,playerid,text);
  	SendGSMessage(COLOR_ORANGE, string);
  	format(string, sizeof(string), "*Vasa pomoc glasi: %s", text);
	SendClientMessage(playerid,COLOR_WHITE, string);
	SendClientMessage(playerid,COLOR_YELLOW,"*Vegas Gaming FreeRoam: Hvala na upitu,gamesageovi ce odgovoriti u najkracem roku!");
	return 1;
}

Imam komande!
Ali treba mi ono samo kad posalje drug upit,i da niko ne moze poslati vise upit i to dok ne prodje jedan minut.Sad ste me valjda razumeli!

pax95

//Nova promenljiva
new bool:PoslatReport = false;


//Uslov u komandi:
if(PoslatReport) return SendClientMessage(playerid,-1,"Ne mozete sada slati report");

//u komandu:
PoslatReport = true;
SetTimer("ReportTimer",60000,false);//Mislim da je to minut...

//Funkcija
forward ReportTimer();
public ReportTimer()
{
PoslatReport = false;
return 1;
}


EDIT:
@Viktor_
Ne treba samo vaditi komande iz modova i lepiti ih po forumu...
Poslednja Izmena: Jun 09, 2013, 15:59:51 POSLE PODNE od [BC:RP] Mr.Gagi

pax95

Citat: Viktor_ poslato Jun 09, 2013, 16:02:00 POSLE PODNE
new Report[MAX_PLAYERS];
- definisi na vrh

pod ongamemodeinit:

Report[playerid] = 0;


if(gettime() < Report[playerid]) return SCM(playerid, GRAD2, "Ovu komandu možete koristiti svakih 60 sekundi!");
Report[playerid] = gettime() + 60;
pod komandu
To je opet uslov za sve igrace, njemu treba da samo jedan report od svih igraca u jednoj minuti moze dobiti, ali dobra je ideja za sistem to mi se svidja. A sto se tice onog iznad nisam ni rekao da si ukrao komande samo sam rekao nema koristi on od toga da uzima tudje komande sa tudjim promenljivima...


Nemoj pametovat covjeku nego mu pokazi da sljedeci put zna

//Nova promenljiva
new bool:PoslatUpit = false;


//Uslov u komandi:
if(PoslatUpit) return SendClientMessage(playerid,-1,"Ne mozete sada slati upit");

//u komandu:
PoslatUpit = true;
SetTimer("UpitTimer",60000,false);//Mislim da je to minut...

//Funkcija
forward UpitTimer();
public UpitTimer()
{
PoslatUpit = false;
return 1;
}


ovako druze, uzeo sam od gagija isto je znaci samo upit



Viktore,nemoj da mi pametujes,pocetnik sam,umjesto da lepo pojasnis da sledeci put znam ti tu zezaš nešto.
P.S LOCK ovo moderatori.