En el evento step:
if (image_index = 7){
image_index = 8;
}
if (image_index = 8){
image_sprite = 7;
}
if (image_index != 7 && image_index != 8){
image_speed = 1;
}
Por ejemplo tengo un sprite de 9 frames, en la que los primeros 7 se reproducirán y después el ciclo se hará infinito entre el frame 7 y 8.
Pero ¿Como le hago para establecer un tiempo de cambio?
Porque al llegar a los frames 7 y 8, todo pasa tan rápido que solo se aprecia el frame 7.
Intente con image_speed, pero hizo que se repitieran de nuevo todos los frames del sprite.
Y a mi lo que me interesa es que los primeros frames se reproduzcan solo una vez, y que luego solo cambie del frame 8 al 9 y viceversa, a una velocidad que se puedan apreciar ambas.
No se si me explique?
La manera más fácil de lograr lo que quieres sería usar dos sprites, uno con los primeros 7 frames, y cuando ese sprite llegue a su fin, cambiar de sprite a uno que sólo contenga los frames 7 y 8.
Si de todas maneras, prefieres usar un único sprite:
[gml]
if image_index < 7
image_speed = 0.5
else
{
salto = true
image_speed = 0.05 //Velocidad muy baja, para que se aprecien los dos últimos
}
if (salto) and (image_index < 7)
image_index = 7 //saltar a la subimagen 8
[/gml]
No lo he probado, pero en esencia la idea me parece correcta. la variable salto se debe inicializar en 0 en CREATE para que funcione.