Jump to content

Cum sa faci un timer explicatie+exemplu.


[RSD]TheBoss

Recommended Posts

Bun am fakut acest tutorial pentru ca am vazut ca is ca multisori care nu stiu sa faka un timer...desi e simplu

si lam mai creat pentru nou veniti in samp(aka incepatori)

Deci explicatia

Timerul este timpul cu care se executa ceva ..exp in 3 secunde se inchide o poarta sau apare un textdraw etc...
Functi
SetTimer("Nume",timp,0 || 1)
Nume-reprezinta Numele timerului practic i dam un nume..
timp-in minisecunde 1 secunda -1000minisecunde cred ca de aici va dati singuri seama 
1/0 -reprezinta daka sa se mai repete sau nu 
1 -da
0-nu
ca sa omoram timerul facem exemplu 
new killtimer;
la OnGameModeInit
killtimer=SetTimer(..);settimerul vostru
KillTimer(Nume)
"Nume"-omoara timerul creat de noi
//aku comanda care trebuie neaparat adaugata la
public OnPlayerCommandText(playerid,cmdtext[])
{
if(strcmp("schimbavremea",cmdtext,true) ==0)
{
SetTimer("Vreme",50000,1);
//numele lam pus Vreme voi il schimbati cum vreti
timp 50 secunde
se repeta actiunea
return 1;
}

return 0;
}
Acum sa facem si un exemplu sa zicem ca la 50 secunde prin o comanda vrem sa se schimbe vremea in vreme frumoasa si facem akum functia timerului si facem un public
forward Vreme; //undeva prin script dar nu in alt calback..
public Vreme()
{
SetWeather(0);
}

New GameMode In Development!-Romania Team Gang War-100%!...Datimi doua Motive afrimative de ce sa-l postez si-l postez...

Link to comment
Share on other sites

Guest PlayON

Practic esti varza :)

SetTimer("Function", false, (5 * 60) * 1000 );

  • "Function" - Este functia care va fi chemata dupa timpul setat in milisecunde.
  • false/true - Timerul nu se v-a mai repeta, se opreste./ Timerul nu se v-a opri, va mere la nesfarsit, pana este distrus de functia KillTimer.
  • (5 * 60) * 1000 - Practic, calculul acesta v-a da 5 minute! Este timpul, si intervalul de timp cand se v-a opri timeru/o va lua de la capat.


forward Function( );

public Function( )

{

    SendClientMessageToAll( -1, "Aceasta functie a fost initiata acum 5 minute!");

}

  • forward Function( ); - Este folosita deoarece orice public are nevoie de un forward.
  • public Function( ) - Este functia pe care o v-om chiema dupa 5 minute.
  • SendClientMessageToAll - Trimitem un mesaj la tot serverul
  • -1 - Este egal cu 0xFFFFFFFF cea ce inseamna culoarea ALBA.
  • Atentie: Un timer are absoluta nevoie de un public

Link to comment
Share on other sites

Guest farse

KillTimer("Nume") fail...epic...

Iau de pe wiki parametrii sa nu gresesc:

Parameters:
(timerid)
timerid	ID of the timer returned by SetTimer and SetTimerEx
Returns	This function doesn't return a specific value

deci acolo zice ID of the timer returnat de catre functiile SetTimer si SetTimerEx.Deci nu numele functiei,ca poti seta,spre exemplu,2 timere pe aceasi functie,si daca ar fi cum ai zice tu,le'ar distruge pe amandoua.

Concluzie:

new timerID=SetTimer/Ex("Functie",intervar,repet,/_:...);

KillTimer(timerID);

Deci,ori il faci cum trebuie,ori ti'l sterg,ca informezi lumea gresit..

Link to comment
Share on other sites

  • 2 weeks later...
Guest RockStar

TheBoss" post="62628" timestamp="1301069079"]

problema e ca stiu scripting :|...cat de cat...dar nu prea ma descurc la capitolul facut tutoriale deci ma las..

Daca te pricepeai bine , il faceai bine . Nu ai cum daca te pricepi sa il faci naspa ca nu sti sa scri un tutorial ;) sa fim seriosi...

Link to comment
Share on other sites

Guest PlayON

TheBoss" post="62766" timestamp="1301131867"]

in OnGameModeInit sau unde vrei tu...

SetTimer("Unban",50000,1);

forward UnBan(playerid)

public UnBan(platerid)

{

SendRconCommand("unbanip Ip..");//

}

Iara, ba daca nu sti scripting, te rog nu-i mai du pe incepatori in eroare!

UnBan are un parametru playerid ceea ce inseamna ca nu trebe sa folosesti SetTimer, ci SetTimerEx!

Link to comment
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Reply to this topic...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

×
×
  • 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.