Y_TIMERS

Započeo V01D
20. Feb. 2020.
12,712
pregleda
16
postova
Skrilew
6
Godfather
20. Feb. 2020.
Y_TIMERS
Posto vidim da ljudi idalje, iz bog zna kog razloga, koriste SetTimer i SetTimerEx, odlucio sam napraviti cool tutorial na temu Y_Timers koji su definitivno laksa i bolja varijanta..

NAMENJENO POCETNICIMA

Ovaj include se nalazi unutar YSI!

Pa da pocnemo..
POZIVANJE TIMERA

Pre svega, kako pozivamo najobcniji timer
Za pozivanje koristimo "defer"
defer NekiTimer(vrednosti koje zelimo preneti);


Ovo deluje zbunjujuce, ali sada cu pokazati upotrebu u tipa robu banke..
CMD:robbanka(playerid, params[])
{
defer BankaRobTimer(playerid);
TogglePlayerControllable(playerid, 0);
SendClientMessage(playerid, 0x1874CDFF, "Zapoceo si pljacku banke!Ukoliko izadjes, pljacka ce se prekinuti!");
return 1;
}


Iznad se nalazi najprostija komanda za rob banke.. Pre svega, defer sluzi kao i SetTimer, pritom kod njega ne moramo da definisemo timer, vec samo da ga "upotrebimo"
Unutar
( )
mozemo videti "playerid", znaci da prenosimo varijablu playerid, takodje mozemo preneti bilo koju varijablu i da pritom moze da se iskoristi unutar samog timera..

Kako oznaciti kraj timera??
timer BankaRobTimer(playerid)
{
        TogglePlayerControllable(playerid, 1);
        SendClientMessage(playerid, 0x1874CDFF, "Uspesno si opljackao banku!");
        GivePlayerMoney(playerid, 90000);
}


Za to koristimo "timer", prosto, brzo, lako i jednostavno 😄

Sta ovo sve znaci??

timer BankaRobTimer(playerid) ->
                      timer -> Naznacavamo da je timer, da ne objasnjavam previse xD
                      BankaRobTimer -> Ovde navodimo ime timera
                      -> Broj u milisekundama nakon koga ce se timer zavrsiti
                      (playerid) -> varijabla koju smo preneli u timer

Sve ovo unutar timera :
TogglePlayerControllable(playerid, 1);
        SendClientMessage(playerid, 0x1874CDFF, "Uspesno si opljackao banku!");
        GivePlayerMoney(playerid, 90000);


Je zapravo ono sto se desi kada se timer zavrsi..
PTASK

Ovo je zanimljiva stvar, za sta sluzi PTASK?

PTASK je timer koji vrti za svakog igraca posebno, nesto nalik onoga sto vidjate na mnogo modova za PlayerTD-ove, banka, plata..

To je jedan nacin na koji moze da se koristi, on se ponavlja neogranicen broj puta ukoliko se ne zaustavi..
ptask TimerIgrac(playerid)
{
    new banka, zlato, plata, level;
    format(banka, 10, "%d$", PlayerInfo);
    PlayerTextDrawSetString(playerid,BankaTD, banka);
    format(zlato, 10, "%dg", PlayerInfo);
    PlayerTextDrawSetString(playerid, ZlatoTD, zlato);
    format(plata, 10, "%d$", PlayerInfo);
    PlayerTextDrawSetString(playerid, PlataTD, plata);
    format(level, 5, "%d", PlayerInfo);
    PlayerTextDrawSetString(playerid, LevelTD, level);
}


Ovo je jedan primer, na svaku jednu sekundu da se igracu "update-uju" tdovi za platu, zlato, level i novac u banci.. Ukoliko samo odradite ovo, timer ce sam da se automatski pokrene kada igrac udje na server, tako da ne morate da brinete gde ce te ga staviti itd itd..
TASK

Task je ista stvar kao i PTASK, ponavljajuci timer koji vrti za sve igrace.. Ovo bi mozda biti neke server poruke ili tako nesto, zavisi sta preferirate.

Takodje se koristi isto kao i PTASK, samo bez varijabli
task ImeTimera()

STOPIRANJE TIMERA

Ukoliko ipak zelite da zaustavite odredjeni timer, ide malo na cudniji nacin :/

new Timer:NovoImeTimera; //Prvo cemo napraviti novu varijablu NovoImeTimera

NovoImeTimera = defer NasTimer(playerid); //Zatim cemo pokrenuti timer

stop NasTimer; //Koristimo "stop" da bi ga zaustavili kada to nama odgovara


Takodje, NasTimer koristimo kao i obican timer, pozivamo ga, zatim koristimo "timer" da bi oznacili sta ce se desiti kada se zavrsi
"Stop" koristimo kada zelimo da timer prestane a pritom ne dodje do kraja, tako da ukoliko ga "stopiramo", ono sto smo stavili da se desi u "timer" se nece ni desiti..
ZAKLJUCAK

Po meni, jako korisna stvar, pogotovo za pocetnike, takodje je mnogo "optimizovanija" nego SetTimer i SetTimerEx..
Svako ima svoje misljenje..
Prvi mi je tutorial, tako da prihvatam svaku kritiku.. Tutorial je takodje namenjen pocetnicima, tako da sam se potrudio pojasnim uz razne primere, sto bolje mogu.
Hvala na citanju <3 😁
ᗪ乇Ҝ丂卂
5
Underboss
20. Feb. 2020.
posluzice pocetnicima
Garadooo
5
Forum Don
20. Feb. 2020.
eto @daddy. mozda naucim  😄
@tema fino objasnjeno  😉
Jaksic
5
Underboss
20. Feb. 2020.
V01D wrote on February 20, 2020, 10:35 pm:
Y_TIMERS
Posto vidim da ljudi idalje, iz bog zna kog razloga, koriste SetTimer i SetTimerEx, odlucio sam napraviti cool tutorial na temu Y_Timers koji su definitivno laksa i bolja varijanta..

NAMENJENO POCETNICIMA

Ovaj include se nalazi unutar YSI!

Pa da pocnemo..
POZIVANJE TIMERA

Pre svega, kako pozivamo najobcniji timer
Za pozivanje koristimo "defer"
defer NekiTimer(vrednosti koje zelimo preneti);


Ovo deluje zbunjujuce, ali sada cu pokazati upotrebu u tipa robu banke..
CMD:robbanka(playerid, params[])
{
defer BankaRobTimer(playerid);
TogglePlayerControllable(playerid, 0);
SendClientMessage(playerid, 0x1874CDFF, "Zapoceo si pljacku banke!Ukoliko izadjes, pljacka ce se prekinuti!");
return 1;
}


Iznad se nalazi najprostija komanda za rob banke.. Pre svega, defer sluzi kao i SetTimer, pritom kod njega ne moramo da definisemo timer, vec samo da ga "upotrebimo"
Unutar
( )
mozemo videti "playerid", znaci da prenosimo varijablu playerid, takodje mozemo preneti bilo koju varijablu i da pritom moze da se iskoristi unutar samog timera..

Kako oznaciti kraj timera??
timer BankaRobTimer(playerid)
{
        TogglePlayerControllable(playerid, 1);
        SendClientMessage(playerid, 0x1874CDFF, "Uspesno si opljackao banku!");
        GivePlayerMoney(playerid, 90000);
}


Za to koristimo "timer", prosto, brzo, lako i jednostavno 😄

Sta ovo sve znaci??

timer BankaRobTimer(playerid) ->
                      timer -> Naznacavamo da je timer, da ne objasnjavam previse xD
                      BankaRobTimer -> Ovde navodimo ime timera
                      -> Broj u milisekundama nakon koga ce se timer zavrsiti
                      (playerid) -> varijabla koju smo preneli u timer

Sve ovo unutar timera :
TogglePlayerControllable(playerid, 1);
        SendClientMessage(playerid, 0x1874CDFF, "Uspesno si opljackao banku!");
        GivePlayerMoney(playerid, 90000);


Je zapravo ono sto se desi kada se timer zavrsi..
PTASK

Ovo je zanimljiva stvar, za sta sluzi PTASK?

PTASK je timer koji vrti za svakog igraca posebno, nesto nalik onoga sto vidjate na mnogo modova za PlayerTD-ove, banka, plata..

To je jedan nacin na koji moze da se koristi, on se ponavlja neogranicen broj puta ukoliko se ne zaustavi..
ptask TimerIgrac(playerid)
{
    new banka, zlato, plata, level;
    format(banka, 10, "%d$", PlayerInfo);
    PlayerTextDrawSetString(playerid,BankaTD, banka);
    format(zlato, 10, "%dg", PlayerInfo);
    PlayerTextDrawSetString(playerid, ZlatoTD, zlato);
    format(plata, 10, "%d$", PlayerInfo);
    PlayerTextDrawSetString(playerid, PlataTD, plata);
    format(level, 5, "%d", PlayerInfo);
    PlayerTextDrawSetString(playerid, LevelTD, level);
}


Ovo je jedan primer, na svaku jednu sekundu da se igracu "update-uju" tdovi za platu, zlato, level i novac u banci.. Ukoliko samo odradite ovo, timer ce sam da se automatski pokrene kada igrac udje na server, tako da ne morate da brinete gde ce te ga staviti itd itd..
TASK

Task je ista stvar kao i PTASK, ponavljajuci timer koji vrti za sve igrace.. Ovo bi mozda biti neke server poruke ili tako nesto, zavisi sta preferirate.

Takodje se koristi isto kao i PTASK, samo bez varijabli
task ImeTimera()

STOPIRANJE TIMERA

Ukoliko ipak zelite da zaustavite odredjeni timer, ide malo na cudniji nacin :/

new Timer:NovoImeTimera; //Prvo cemo napraviti novu varijablu NovoImeTimera

NovoImeTimera = defer NasTimer(playerid); //Zatim cemo pokrenuti timer

stop NasTimer; //Koristimo "stop" da bi ga zaustavili kada to nama odgovara


Takodje, NasTimer koristimo kao i obican timer, pozivamo ga, zatim koristimo "timer" da bi oznacili sta ce se desiti kada se zavrsi
"Stop" koristimo kada zelimo da timer prestane a pritom ne dodje do kraja, tako da ukoliko ga "stopiramo", ono sto smo stavili da se desi u "timer" se nece ni desiti..
ZAKLJUCAK

Po meni, jako korisna stvar, pogotovo za pocetnike, takodje je mnogo "optimizovanija" nego SetTimer i SetTimerEx..
Svako ima svoje misljenje..
Prvi mi je tutorial, tako da prihvatam svaku kritiku.. Tutorial je takodje namenjen pocetnicima, tako da sam se potrudio pojasnim uz razne primere, sto bolje mogu.
Hvala na citanju <3 😁

lepoo.
Skrilew
6
Godfather
20. Feb. 2020.
YumikoJR wrote on February 20, 2020, 10:44 pm:
posluzice pocetnicima

Galardo wrote on February 20, 2020, 10:47 pm:
eto @daddy. mozda naucim  😄
@tema fino objasnjeno  😉

!OverLord wrote on February 20, 2020, 11:04 pm:
lepoo.


Zahvaljujem <3 😄
Ljubisa
4
Shot Caller
20. Feb. 2020.
Lepo objasnjeno, pocetnik sam i shvatio sam sve kako valja. Veoma korisno i jednostavno  😄
RomaNn
6
Made Man
🔥14
20. Feb. 2020.
Poceo sam da koristim ima 2-3 meseca od kada je muma objavio njegov V mod i video sam to , tako da dosta je bolje i lakse nego sa settimer po meni, za vas ne znam, posluzice dosta :]
Skrilew
6
Godfather
20. Feb. 2020.
Ljubisa wrote on February 20, 2020, 11:09 pm:
Lepo objasnjeno, pocetnik sam i shvatio sam sve kako valja. Veoma korisno i jednostavno  😄
RomaNN wrote on February 20, 2020, 11:12 pm:
Poceo sam da koristim ima 2-3 meseca od kada je muma objavio njegov V mod i video sam to , tako da dosta je bolje i lakse nego sa settimer po meni, za vas ne znam, posluzice dosta :]


Hvala, ukoliko imate bilo kakva pitanja ili nesto nije jasno, slobodno ili ovde ili u PM 😄
AhmAA
8
Super Moderator
🔥66
21. Feb. 2020.
Galardo wrote on February 20, 2020, 10:47 pm:
eto @daddy. mozda naucim  😄
@tema fino objasnjeno  😉

Sumnjam
#tema poslužiti će nekima 😉

daddyDOT

Balkan SA:MP Super moderator


Balkan SA:MP

Balkan SA:MP - since 2009

Nikola-.-
6
Kingpin
23. Feb. 2020.
kul
Skrilew
6
Godfather
23. Feb. 2020.
daddy. wrote on February 21, 2020, 7:27 pm:
Sumnjam
#tema poslužiti će nekima 😉


bunta wrote on February 23, 2020, 9:45 am:
kul


Zahvaljujem 😄
Teodor
4
Made Man
23. Feb. 2020.
Thx pomogao si mi
Purda121
5
OG Legend
23. Feb. 2020.
Prekjucer sam poceo bas ovo raditi na mom modu , tako da si oke sve objasnio, fin tutorial 😄
Skrilew
6
Godfather
24. Feb. 2020.
Teodor wrote on February 23, 2020, 10:36 pm:
Thx pomogao si mi
Purdinho wrote on February 23, 2020, 11:17 pm:
Prekjucer sam poceo bas ovo raditi na mom modu , tako da si oke sve objasnio, fin tutorial 😄


Hvala
realnaith
5
Crime Lord
6. Apr. 2023.
Bump

Morate biti prijavljeni da biste odgovorili na ovu temu.

Prijava

© 2026 SmartShark. All rights reserved.

Powered by Momentum|v2026.3.001 Alpha