Balkan SA:MP

PAWN skriptanje, gamemodovi, filterskripte, include fajlovi, mape, pluginovi => Razgovor u vezi PAWN - skriptanja => Temu započeo: Huan Escobar poslato Avgust 23, 2016, 15:51:56 POSLE PODNE

Naslov: [POMOC] Uslov
Poruka od: Huan Escobar poslato Avgust 23, 2016, 15:51:56 POSLE PODNE
Skripta koju koristim: UP
Detaljan opis problema: Napravio sam cmd /stuck za odglavljivanje igraca. I pokusavam da napravim timer da moze tu cmd da koristi svakih 30 sekundi i ne ide mi ako moze neko da mi objasni kako bio bih zahvalan. Hvala!
Dio skripte: /
Neke slike/video za lakse dobivanje pomoci(neobavezno): /
Naslov: Odg: [POMOC] Uslov
Poruka od: Tosic ツ poslato Avgust 23, 2016, 16:11:51 POSLE PODNE
Postavi tu CMD ovde
Naslov: Odg: [POMOC] Uslov
Poruka od: Huan Escobar poslato Avgust 23, 2016, 16:19:22 POSLE PODNE
CMD:stuck(playerid,params[],help)
{
    #pragma unused help
    if(UlogovanProvjera[playerid] == 0) return SCM(playerid,-1,"Moras se ulogovati da bi koristio ovu komandu!");
   new string[128], igrac;
   if(StavljeneLisice[playerid] == 1) return SCM(playerid,-1,"Ne mozes dok imas lisice!");
   if(IgracTazovan[playerid] == 1) return SCM(playerid,-1,"Ne mozes dok si tazovan!");
   if(Zavezan[playerid] == 1) return SCM(playerid, -1, "Ne mozes dok si zavezan");
   if(PlayerInfo[playerid][pZatvor] != 0) return SCM(playerid, -1, "Ne mozes dok si u zatvoru");
    new Float:slx, Float:sly, Float:slz;
   GetPlayerPos(playerid, slx, sly, slz);
   SetPlayerPos(playerid, slx, sly, slz+2);
   TogglePlayerControllable(igrac, 1);
   format(string,sizeof(string),"[DEBUG] Uspesno ste se odbagovali!");
   SCM(playerid,0xFF6347AA,string);
   return 1;
}
Naslov: Odg: [POMOC] Uslov
Poruka od: MEDO poslato Avgust 23, 2016, 16:19:25 POSLE PODNE
Jednostavno, ovo stavis na pocetak
[pawn]new stuckTimerZaIgraca[MAX_PLAYERS]; // definišeš varijablu koja će čuvati za svakog igrača da li je koristio stuck ili ne
forward stuckTimer(playerid);//ovo je timer[/pawn]

Pod onplayerconnect ovo
[pawn]stuckTimerZaIgraca[playerid] = 0; // postavljas mu ovu varijablu na 0 da se ne bi ubagovalo[/pawn]

u svojoj komandi stuck dodas ovako nesto
[pawn]if(stuckTimerZaIgraca[playerid] != 0) return SendClientMessage(playerid, -1, "Morate sačekati 30 sekundi prije ponovnog koristenja"); // provjera, ako varijabla nije jednaka 0 onda ce ispisati ovu poruku ukoliko jest onda ce se izvristi kod ispod
   stuckTimerZaIgraca[playerid] = 1;
   SetTimerEx("stuckTimer", 30000, false, "i", playerid); // pokreces timer[/pawn]

i na kraju timer sam dodas ga ispod komande
[pawn]public stuckTimer(playerid)
{
   stuckTimerZaIgraca[playerid] = 0;

}[/pawn]