Bueno resulta que tengo un sprite con dos subimagenes...

El sprite es de mi personaje lanzando el rayo que hace poco pregunte como se hacia en un tema...

Ya tengo el rayo creado...

Pero la imagen consta de dos subimagens, yo lo que kiero es que el rayo se cree en la segunda (la 1)

Y le pongo...

if (image_single = 1)
         {Codigo de crear el rayo)


o

if (image_index = 1)
         {Codigo de crear el rayo)


Pero resulta que ninguna de las dos funciona... y el rayo se crear en la primera... (cuando la primera es la imagen del personaje preparando el rayo... no tirandolo...

Alguna sugerencia? como se hace?...

Ademas el sprite sigue reproduciendose... como se hace para que pare?... se me ocurre algo de "image_speed = 0" pero no se donde ponerlo...

PD: Sin crear un nuevo objeto porfavor...

Para parar el sprite cuando acabe, pon en el evento animation end:
image_single=image_number-1


Luego.. para eso que dices que quieres que lo cree en el momento en que la subimagen sea la 1 y no la 0 es if(image_index==1){} deberia funcionar.. pero parece que si solo hay dos subimagenes como que va todo muy rapido y en un step estas en la subimagen 0 y en el siguiente en la 1.. o que velocidad tiene?

usa image_speed para controlar la velocidad de cambio de sprites y hacerlo mas facil para ti.

Cita de: bonachiu en Diciembre 15, 2009, 09:46:37 AM
Para parar el sprite cuando acabe, pon en el evento animation end:
image_single=image_number-1

El tema es que el objeto es TODO EL LUCHADOR... osea al presionar las teclas de combate lo unico que cambia es su sprite... por lo que si yo presiono el boton para pu?os... al terinar esa animacion va a lanzar un rayo... y seria raro no? o.O

No hay una forma de llamar al "Animation end"... solo en ese codigo... creo que en el manual habia algo... ahora lo busco...

Citar
Luego.. para eso que dices que quieres que lo cree en el momento en que la subimagen sea la 1 y no la 0 es if(image_index==1){} deberia funcionar.. pero parece que si solo hay dos subimagenes como que va todo muy rapido y en un step estas en la subimagen 0 y en el siguiente en la 1.. o que velocidad tiene?

Ok probare poniendo == yo le ponia solamente =


Cita de: elviskelley en Diciembre 15, 2009, 03:18:25 PM
usa image_speed para controlar la velocidad de cambio de sprites y hacerlo mas facil para ti.

Si eso ya lo hice... la iamgen tarda 2 segundos en total... pero sigue asi... lanzando desde el principio...

Pues usa el evento animation end

y dentro pones (llamemos al sprite de lanzar rayos: spr_lanza_Rayos:
if(sprite_index==spr_lanza_Rayos){}

asi solo funcionara cuando el sprite de lanzar rayos acabe; por lo del doble == no te preocupes, en game maker se soporta con un solo igual en comparaciones, en otros lenguajes ya no..

Ok gracias despues lo probare si funciona gracias y sino supongo que volvere aca a preguntar...