Szerző Téma: SetTimerEx  (Megtekintve 778 alkalommal)

SetTimerEx
« Dátum: 2013. Július 20. - 19:38:58 »
0 Show voters
SetTimerEx
 
Leírás:
Egy idõzítõt, avagy más néven timert hozhatunk létre ezzel a függvénnyel ami egy bizonyos idõ lejárta után meghívódik. Az \'Ex\' jelölés azt jelenti, hogy meg adhatunk neki paramétereket is (pl:playerid és hasonlók).
Pareméterek:
 
(funcname[], interval, repeating, const format[], {Float,_}:...)

 
funcname[]   Az idõzitõnk neve
interval   Az adott idõ milliszekundumban.   (1 másodperc = 1000 milliszekundum).
repeating   Ismétlõdjön-e a timer. true vagy1 ismétlõdik | false vagy 0 nem ismétlõdik és csak egyszer hívódik meg. Az adott Timert KillTimer() függvényel lehet leállítani.
format[]   Az adott formátum amelyet megadhatunk a timerünknek paraméterként.
{Float,_}:... A meghatározatlan számú argumentum (ez kell kövesse a többi paramétert)
Visszatérési érték
A Timer Id-ja amit elindítottunk. Ha a Timer ideje 0, akkor a timer sose fog meghívódni.
Formátumok
- Placeholderek avagy helyhordozók
i    Integert (egész számot) adhatunk meg vele.
d    Ugyan az mint, az \"i\", itt is egész számot adhatunk meg vele.
a    Egy tömböt adhatunk meg vele. Egy paraméter kell csak mellé \"i\" amivel a tömb méretét állítjuk be.
s    Stringet (karakterláncot) adhatunk meg vele)
f    Floatot (lebegõpontos változót, magyarosan tizedes törtet) adhatunk meg vele.
b    Boolean (igaz hamis - 1/0) paramétert adhatunk meg vele
!Megjegyzés:
-A egy Timer ID-t sose lehet kétszer használni egyszerre. Elõször meg kell szüntetni KillTimer() függvénnyel azután már lehet használni.
-Ez a függvény muszáj meghívódjon és emiatt publicot használunk, ami azt eredményezi, hogy forwardelve kell legyen.
Példa:
 
SetTimerEx(\"EndAntiSpawnKill\", 5000, false, \"i\", playerid);
// EndAntiSpawnKill - A funkció lehivása
// 5000 - 5 másodperc mulva indul a timer
// false - Nem ismétlõdik
// \"i\" - Egész szám
// playerid - Játékos ID az elõzõ paraméterbõl

 
Példa:
 
//Ez az esemény az OnPlayerSpawn-nál fog lezajlani ezért ide rakunk timert.
public OnPlayerSpawn(playerid)
{
    // Anti spawn (5 másodperc)
    // Végtelen életet kap
    SetPlayerHealth(playerid, 999999);
    // Értesiti a playert
    SendClientMessage(playerid, -1, \"Kaptál 5 másodperc godmodot\");
    // 5 másdperc mulva kikapcsol a végtelen élet
    SetTimerEx(\"EndAntiSpawnKill\", 5000, false, \"i\", playerid);
}
forward EndAntiSpawnKill(playerid);
// az idõzitõ meghívja a hozzá tartozó publicot amikor vége a timernek mi történjen. 
public EndAntiSpawnKill(playerid)
{
    // 5 másodperc mulva visszakapja a 100 életét
    SetPlayerHealth(playerid, 100);
    // Elküldünk egy üzenetet a Timer lejártakor
    SendClientMessage(playerid, -1, \"Végtelen élet kikapcsolva\");
    return 1;
}

 
Kapcsolódó függvények:
 
SetTimer: http://wiki.sa-mp.com/wiki/SetTimer
KillTimer: http://wiki.sa-mp.com/wiki/KillTimer
CallLocalFunction: http://wiki.sa-mp.com/wiki/CallLocalFunction
CallRemoteFunction: http://wiki.sa-mp.com/wiki/CallRemoteFunction
 
« Utoljára szerkesztve: 2013. Július 30. - 15:20:59 írta SnooP »

 

SimplePortal 2.3.7 © 2008-2024, SimplePortal