Balkan SA:MP

San Andreas Multiplayer - www.sa-mp.com => Tutorijali u vezi SA-MPa => Temu započeo: Makenzi poslato Decembar 05, 2018, 20:52:29 POSLE PODNE

Naslov: Kako koristiti "gettime()" kao tajmer?
Poruka od: Makenzi poslato Decembar 05, 2018, 20:52:29 POSLE PODNE
gettime() funkcija kao tajmer!


Pozdrav svima,
danas ću vas naučiti kako da kreirate tajmer pomoću gettime() funkcije.
Ovde ću Vam pokazati nešto kao Anti Spam, ako ovo želite za komande ( anti cmd spam ) nikako to nemojte raditi ispod svake komande, no više o tome u sledećem tutorialu!


Koraci
1. Prvo kreirate pvar ( player variable ):
[pawn]new g_EngineSpam[MAX_PLAYERS];[/pawn]
2. Sada kada se igrac konektuje, refreshujte taj pvar na -1:
[pawn]public OnPlayerConnect(playerid)
{
    g_EngineSpam[playerid] = -1;
    return 1;
}[/pawn]
3. Sada kreiramo komandu ( tj. samo onaj deo koji nam trenutno treba )
[pawn]CMD:engine(playerid, params[])
{
   if(gettime() < g_EngineSpam[playerid]) return SendClientMessage(playerid, -1, "[Anti:Spam] Motor vozila mozete paliti na svake 3 sekunde!");
   {
      g_EngineSpam[playerid] = gettime() + 3; // podesava pvar na 3 sekunde od trenutnog vremena.
      //kod
   }
}[/pawn]


Prošli tutorial: KLIK (http://balkan-samp.com/forum/index.php?topic=126089.0)
Sledeći tutorial: Česte greške početnika. [ Uskoro... ]
Naslov: Odg: Kako koristiti "gettime()" kao tajmer?
Poruka od: Shomyy poslato Decembar 05, 2018, 22:53:18 POSLE PODNE
Veoma korisno, pohvale :)
Naslov: Odg: Kako koristiti "gettime()" kao tajmer?
Poruka od: TrencH poslato Decembar 07, 2018, 00:45:31 PRE PODNE
Mozes i ovako iskoristiti gettime, malo je jednostavniji nacin jer ne moras praviti varijablu  :)



[pawn]CMD:engine(playerid, params[])
{
        if (gettime() < GetPVarInt(playerid, "EngineSpam")) return SCM (playerid, -1, "Greska: Morate sacekati 3 sekunde !");
   {
                SetPVarInt(playerid, "EngineSpam", gettime() + 3);
      //kod
   }
}
[/pawn]