[Ayuda] Animacion "Crack" Cuando queda poca vida -
narcox - 10.12.2010
Buena, Quisiera que me explicaran como puedo poner la animacion "Crack" Cuando al jugador le quede X cantidad de vida.
Gracias ^^
Re: [Ayuda] Animacion "Crack" Cuando queda poca vida -
Miguel - 10.12.2010
Hola, lo primero que necesitas es algo que se mantenga verificando cuanta vida tiene cada jugador. Esto lo logramos por medio de un "timer" en conjunto de una funciуn, asн:
pawn Код:
public OnGameModeInit()
{
SetTimer("VerificarVida", 999, true); // Esto hace que la funciуn llamada "VerificarVida" se ejecute cada 999 milisegundos por siempre.
return 1;
}
forward VerificarVida();
public VerificarVida() // Esta es la funciуn que el timer va a repetir una y otra vez.
{
return 1;
}
En la funciуn vamos a verificar la vida de cada jugador, y si la misma es menor a
x valor, le aplicaremos la animaciуn una sola vez. Hay un problema, la funciуn se ejecuta una y otra vez, por lo que si la vida del jugador en cuestiуn es menor a
x todas esas veces, la animaciуn tambiйn se aplicarб todas estas veces. Para corregir esto, vamos a utilizar una variable tipo boleana que cambiaremos despuйs de aplicar la animaciуn.
pawn Код:
new bool:EstaMuriendo[MAX_PLAYERS] = {false, ...};
public OnGameModeInit()
{
SetTimer("VerificarVida", 999, true);
return 1;
}
forward VerificarVida();
public VerificarVida()
{
for(new i = 0; i < MAX_PLAYERS; ++ i)
{
if((EstaMuriendo[i] == false)(IsPlayerConnected(i))) // Solo se tratarбn los jugadores que no esten muriendo y que estйn conectados.
{
new
Float:vida;
GetPlayerHealth(i, vida); // Obtenemos la vida y la guardamos en la variable "vida".
if(vida < x) // Sustituir x por la cantidad de vida para aplicar la animaciуn.
{
// Aquн aplicamos la animaciуn.
EstaMuriendo[i] = true; // Ya que ahora el jugador estб muriendo hay que cambiar la variable a "true".
}
}
}
return 1;
}
Ahora lo ъnico que debes recordar es que al terminar de aplicar la animaciуn (cuando ya no estй muriendo) hay que volver a cambiar "EstaMuriendo" a false, asн:
pawn Код:
EstaMuriendo[numero_de_jugador] = false; // Pongo nъmero de jugador porque puede ser cualquier variable o nъmero.
їAlguna pregunta?
Respuesta: [Ayuda] Animacion "Crack" Cuando queda poca vida -
[J]ulian - 10.12.2010
pawn Код:
public OnPlayerUpdate(playerid)
{
new Float:vida;
GetPlayerHealth(i, vida);
if(vida <= 5) return "linea de la animaciуn" // Sin las "".
return 1;
}