Hola buenas, quiero crear un remake del Dragon Ball Z: Buu's Fury de Game Boy Advance, y la animación del Kame Hame Ha, ondea el pelo, mejor voy al grano, quiero hacer que muestre la primera sub-imagen, pero solo al principio y que luego la ignore, para las animaciones tengo un script, algo así:
[gml]
if (keyEnergy)
{
if (intFaceX == -1)
{
sprite_index = sprPlayerKameHameLeft;
if (sprite_index == sprPlayerKameHameLeft) && (image_index == 2)
{
image_index -= 1;
}
}
else if (intFaceX == 1)
{
sprite_index = sprPlayerKameHameRight;
}
else if (intFaceY == -1)
{
sprite_index = sprPlayerKameHameUp;
}
else if (intFaceY == 1)
{
sprite_index = sprPlayerKameHameDown;
}
}[/gml]
En lugar de hacer una sola animación con todas las sub-images juntas, mejor crea un sprite solo con esa primera imagen y crea otra animación aparte con los sprites que quieras repetir el ciclo, así es mucho más fácil.
Y luego estableces esa primera imagen (animacion1) al jugador y después con una alarma le dices cuando pase a la otra animación (animacion2).
[gml]
sprite_index = animacion1;
alarm[0] = 5;
[/gml]
Evento alarm[0]
[gml]
sprite_index = animacion2;
[/gml]
Hay otras formas más óptimas como crear máquinas de estados y/o usar timelines pero es más avanzado.