coloco esto en step
if image_index > image_number-1
{image_speed=0
image_index=6}
else
{image_speed=0.2}
pero no funciona , la animacion tiene 7 frames
si coloco
if image_index >5
{image_speed=0
image_index=6}
else
{image_speed=0.2}
si funciona, alguna idea?
En tu caso las imagenes van del numero 0 al 6, no existe una imagen numero 7, asi que la condicion nunca se cumple y la animacion no se detiene.
(En ambos casos el resultado es el mismo, la animacion no se detiene, porque decis que en el segundo ejemplo si funciona ?)
si no entiendo el primer codigo muestra la animacion incompleta y muy rapida y el segundo si funciona.
el primer codigo lo uso en otras partes de juego y funciona bien pero aqui (el segundo tenia un error por que lo escribi y no lo copie)
entonces como se plantearia bien el primer codigo?
Intenta con esto
[gml]
if image_index>(image_number-1) {image_speed=0} else {image_speed=0.06}
[/gml]
Alser tan pocas imagenes tienes que poner valores chicos a image_speed
Creo que como dice el compa es que el gamemaker en image_number solo acepta valores de 0 en adelante asi que si tienes 7imagenes seria de esta forma
Image_index= lo que necesitas
Image_number=elvalor que estara
If image_index >image_number
{Se ejecuta lo que quieres}
Mi pregunta es el -1 para que lo usas o que funcion hace en el codigo la verdad creo que el unico error seria el -1 ya que siendo image_number no puedes usar valores menores a cero. si es asi me imagino que se ejecutarian todas las imagenes del sprite
image_number te da el numero de imagenes en un sprite y no se puede cambiar.
El -1 es para elegir la ultima imagen del sprite, si un sprite tiene 7 imagenes la ultima imagen es la numero 6 ya que se empieza por 0 y no 1 (0-1-2-3-4-5-6).
a ok eso no sabia gracias