Bajar vida por timers? - Printable Version
+- SA-MP Forums Archive (
https://sampforum.blast.hk)
+-- Forum: Non-English (
https://sampforum.blast.hk/forumdisplay.php?fid=9)
+--- Forum: Languages (
https://sampforum.blast.hk/forumdisplay.php?fid=33)
+---- Forum: Español/Spanish (
https://sampforum.blast.hk/forumdisplay.php?fid=29)
+---- Thread: Bajar vida por timers? (
/showthread.php?tid=553623)
Bajar vida por timers? -
Smoke123 - 30.12.2014
Bueno podrian ayudarme a crear un timers que baje la vida? Por ejemplo crear un timer,y que cada 30 segundos la vida baje de 10 en 10 hasta que el player muera.?
Respuesta -
Ygzeb - 30.12.2014
Serнa algo asн:
En la primeras variables, definimos:
pawn Код:
new Timer1[MAX_PLAYERS];
forward Life(playerid);
En la funciуn donde ejecutaremos el timer:
pawn Код:
Timer1[playerid] = SetTimerEx("Life", 30000, true, "i", playerid); // Ejecutamos el timer.
Fuera de cualquier funciуn:
pawn Код:
public Life(playerid) // Funciуn del timer.
{
new Float: Health; // Creamos la variable de vida del jugador.
GetPlayerHealth(playerid, Health); // Obtenemos la vida del jugador.
SetPlayerHealth(playerid, Health - 10.0); // Restamos 10 de vida al jugador.
return 1;
}
Y en OnPlayerDeath, OnPlayerDisconnect, OnPlayerConnect y en OnPlayerSpawn (por seguridad eliminamos el timer en todas las funciones bбsicas, ya que si se continъa ejecutando la vida del jugador continuarб bajando):
pawn Код:
KillTimer(Timer1[playerid]); // Eliminamos el timer (esto es muy importante, de no eliminarlo el timer continuarб ejecutбndose).
Es importante colocarlo en OnPlayerDisconnect, ya que si el jugador se desconecta y otro jugador entra, al nuevo jugador le continuarб bajando vida.
Suerte amigo
Respuesta: Respuesta -
Smoke123 - 30.12.2014
Quote:
Originally Posted by Ygzeb
Serнa algo asн:
En la primeras variables, definimos:
pawn Код:
new Timer1[MAX_PLAYERS]; forward Life(playerid);
En la funciуn donde ejecutaremos el timer:
pawn Код:
Timer1[playerid] = SetTimerEx("Life", 30000, true, "i", playerid); // Ejecutamos el timer.
Fuera de cualquier funciуn:
pawn Код:
public Life(playerid) // Funciуn del timer. { new Float: Health; // Creamos la variable de vida del jugador. GetPlayerHealth(playerid, Health); // Obtenemos la vida del jugador. SetPlayerHealth(playerid, Health - 10.0); // Restamos 10 de vida al jugador. return 1; }
Y en OnPlayerDeath, OnPlayerDisconnect, OnPlayerConnect y en OnPlayerSpawn (por seguridad eliminamos el timer en todas las funciones bбsicas, ya que si se continъa ejecutando la vida del jugador continuarб bajando):
pawn Код:
KillTimer(Timer1[playerid]); // Eliminamos el timer (esto es muy importante, de no eliminarlo el timer continuarб ejecutбndose).
Es importante colocarlo en OnPlayerDisconnect, ya que si el jugador se desconecta y otro jugador entra, al nuevo jugador le continuarб bajando vida.
Suerte amigo 
|
Muchas gracias,ya lo logre.