Comunidad Game Maker

Ayuda => Preguntas y respuestas => Mensaje iniciado por: GaryVega en Enero 05, 2018, 06:06:51 AM

Título: Mi animacion solo muestra la primer imagen
Publicado por: GaryVega en Enero 05, 2018, 06:06:51 AM
Gracias a la ayuda de este foro y a la lectura constante de esta seccion e estado clavadisimo en el desarrollo de mis proyectos,
pero con cada avance llegan nuevos problemas.

tengo un objeto que dispara muy bien, la animacion consta de 6 imagenes, pero al implementarla solo me muestra la primera y no entiendo porque, ya implemente el movimiento lateral y salto e hize lo mismo con esta, no entiendo porque no funciona.
ayudenme porfa.
aqui esta mi codigo de animacion

//Go Animate
if (move != 0) image_xscale = move;   //Orientacion del grafico
if (grounded)                         //Grafico de reposo y caminar
{
   if (hsp == 0)
   {
      sprite_index = sprTaylorIdle;
      image_speed  = 0.2;
   }
   else
   {
   if (sprite_index != sprTaylorWalk) image_index = 0; //Indica que siempre se empezara esta animacion desde el principio
   sprite_index = sprTaylorWalk;
   image_speed  = 0.5;
   }
}
else                              //Grafico de salto y caida
{
   if (vsp < 0)
   {
   if (sprite_index != sprTaylorJump) image_index = 0; //Indica que siempre se empezara esta animacion desde el principio
   sprite_index = sprTaylorJump;   //Salto
   image_speed  = 0.35;
   }
   else
   {
   sprite_index = sprTaylorFall;   //Caida
   image_speed  = 0.4;
   }
}

//Grafico de Disparo
if (shooting)
   {
      if (image_index != sprTaylorShoot) image_index = 0 //Indica que siempre se empezara esta animacion desde el principio
      sprite_index = sprTaylorShoot
      image_speed  = 0.5
   }

Título: Re:Mi animacion solo muestra la primer imagen
Publicado por: MateG_ en Enero 05, 2018, 03:59:03 PM
    Si en los otros casos el código te sirvió el único error que veo es que en el código de la animación del disparo en vez de poner:


if (shooting)
   {
      if (sprite_index != sprTaylorShoot) image_index = 0 //Indica que siempre se empezara esta animacion desde el principio
      sprite_index = sprTaylorShoot
      image_speed  = 0.5
   }


pusiste:


if (shooting)
   {
      if (image_index != sprTaylorShoot) image_index = 0 //Indica que siempre se empezara esta animacion desde el principio
      sprite_index = sprTaylorShoot
      image_speed  = 0.5
   }


    Solo eso, que en vez de image_index iría sprite_index. Espero que te sirva ;).
Título: Re:Mi animacion solo muestra la primer imagen
Publicado por: GaryVega en Enero 05, 2018, 07:14:27 PM
no me habia fijado en ese error,
me dedicare a aprender a obserar esas diferencias, pero lo cambie y sigue igual, no entiendo porque aun teniendo el mismo codigo esta animacion no se muestra completa
Título: Re:Mi animacion solo muestra la primer imagen
Publicado por: nonoroman en Enero 06, 2018, 12:41:42 AM
Si ese codigo esta en el STEP, entonces le estas diciendo cada vez que pasa, que image_index es 0.

Y nunca pasara de la imagen 0. porque en cada paso lo asigna asi.

Al menos eso creo. Suerte!!
Título: Re:Mi animacion solo muestra la primer imagen
Publicado por: GaryVega en Enero 06, 2018, 02:17:08 AM
oooh
de echo si esta en el evento step
entonces deberia escribir los movimientos en un evento step y los ataques y disparos en otro evento??
soy muy nueveson en gm