Comunidad Game Maker

Ayuda => Preguntas y respuestas => Mensaje iniciado por: Yatch en Abril 12, 2010, 05:35:29 AM

Título: Crear loop desde un punto de inicio hasta un punto final
Publicado por: Yatch en Abril 12, 2010, 05:35:29 AM
holas, quiero saber si lo que quiero hacer es posible

tengo un sprite con mas de 50 imagenes en formato gmspr, y quiero cojer una parte de x cantidad de frame, ejemplo empesar loop desde el frame x hasta el frame x que mostraria al personaje caminando , ya se que se puede hacer creando varios sprite por separado, pero lo quiero hacer cargandolo todo desde un archivo.

para que fin?
porque quiero crear un juego que sea editable sin tener que editar el projecto completo, osea que si yo quiero editar el sprite de un personaje solo voy a donde esta el archivo y lo descomprimo y edito todas sus imagenes y asi no hay ke compilar el exe de nuevo. un ejemplo seria el juego Ragnarok Online que funciona a base de sprite y puedes editar todos sus personajes a tu gusto.


----
Solucion por romon_28:


/********************************************/
//  create
animacion_inicio = 8 // inicio de la animacion
animacion_final = 12 // fin de la animacion
animacion = 0
/********************************************/


/********************************************/
//  step
sprite_index = sprite_personaje_1

image_single = animacion_inicio+animacion

if animacion < animacion_final-animacion_inicio
{
animacion += .25 //velosidad dede la imagen
}
else
{
animacion = 0
}
/********************************************/


y esta otra basada en la anterior

Iniciamos las variables
ejemplo en el evento CREATE


image_start = 5 // indicamos donde queremos que inicie el loop
image_end = 12 // indicamos donde queremos que finalize el loop
image = 0


Este es el que hace el loop y va en el evento STEP


sprite_index = sprite0

image_single = image_start+image;

image += .25; // velocidad es igual que image_speed

if (image_single == image_end)
   image = 0;


Título: Re: Crear loop desde un punto de inicio hasta un punto final
Publicado por: soccer2008 en Abril 12, 2010, 08:17:59 PM
lo podr?as hacer con un for e ir aumentando los sprites de acuerdo a la cantidad establecida XD XD
Título: Re: Crear loop desde un punto de inicio hasta un punto final
Publicado por: deathmetal en Abril 13, 2010, 04:49:05 PM
o tambien:

image_speed=1

if image_index=25 // este es el ultimo sprite del ciclo
{ sprite_index=10 //este es el primer sprite del siglo
}

eso hara que cuando llegue a la subimagen 25 (o a la ultima que quieras que llege) se regrese a la 10, (o la primera del ciclo)

y asi tendras tu animacion de solo unas subimagenes
Título: Re: Crear loop desde un punto de inicio hasta un punto final
Publicado por: elviskelley en Abril 13, 2010, 10:56:53 PM
yo los aria en un alrray y aumentaria con un variable sin usar for..

Título: Re: Crear loop desde un punto de inicio hasta un punto final
Publicado por: soccer2008 en Abril 15, 2010, 04:10:40 PM
Cita de: elviskelley en Abril 13, 2010, 10:56:53 PM
yo los aria en un alrray y aumentaria con un variable sin usar for..



Si lo pones en un step se podr?a hacer de dicha forma, pero de la forma de deathmetal me parece bien XD XD XD