Saludos makeros:

   Pregunta:
    ¿Cómo puedo desde un objeto dibujar muchos "sprites" y sus subimágenes?  ???

  Explicación:
    Necesito evitar la super población de objetos dentro de un "room" en un juego. Para ello intento dibujar desde un solo objeto varios "sprites". El problema radica cuando esos "sprites" también tienen subimágenes. Puedo seleccionar la subimagen que quiero mostrar con facilidad, pero no puedo lograr una animación coherente entre el mostrar una subimagen y otra.

  ¿Álguien tendrá algún modo, algoritmo, idea de como implementar esto?  ???

Mi Algoritmo:
   El algoritmo que uso es el siguiente:  ;)
   1*  Crear un arreglo con todos los "sprites", sus posiciones (x,y), la cantidad de subimágenes.
   2*  En el evento "draw" recorrer dicho arreglo y uno por uno dibujar cada "sprite" en su posición con su respectiva subimagen.

   El problema radica que cuando dibujo nuevamente todos los "sprites" y paso a las subimágenes siguientes no se nota como una animación coherente.  :'(

   Espero me ayuden y que no me borren este tema nuevamente.  :D 


Explicate, cómo que no podés lograr una animación coherente??




Duda, un objeto se encarga de dibujar varios sprites a la vez en diferentes posiciones del room? o cada objeto toma un sprite diferente que dibujar al azar? 
   Metroid Gravity      -Trailer aqui-

Me refiero, makero Texic:

  a que no puedo encontrar una manera sencilla de controlar las velocidades de las animaciones individualmente.

   Por ejemplo:

   quiero que la animación del "sprite_1" sea lenta
   la animación del "sprite_2" sea rápida
   y que la animación del "sprite_3" sea condicional a una variable.

   ¿Entiendes?


Cita de: FrogGer en Mayo 10, 2012, 12:30:59 AM
Duda, un objeto se encarga de dibujar varios sprites a la vez en diferentes posiciones del room? o cada objeto toma un sprite diferente que dibujar al azar?

Makero FrogGer:

  Es solo un objeto que tiene una lista de "sprites". Los muestra en distintos lugares del "room" ya que en el arreglo también están las coordenadas de cada "sprite", la cantidad de subimágenes, etc.

  Solo deseo saber una algoritmo para controlar las animaciones de dichos "sprites" de forma personalizada para cada uno.

  ¿Comprenden...?


Ah, pues meté en otro array las velocidades de los sprites
En otro array, el de las subímagenes sumás ese valor cada step, y al dibujarlo dibujalo con floor(nro_subimagen)




En el campo subimg va la subimagen, así que deberías hacer esto:

En el create:
[gml]
subimg_1=0
subimg_2=0
subimg_3=0
[/gml]
En Step:
[gml]
subimg_1+=1//Más chico el número más lento se mueve
subimg_2+=0.7
subimg_2+=0.5

if subimg_1>5 //5=Nº de subimagenes del sprite 1
if subimg_2>7 //7=Nº de subimagenes del sprite 2
if subimg_3>9 //9=Nº de subimagenes del sprite 3
[/gml]
y en el draw en la parte que elijes la subimg pe pones subimg_1, subimg_3, subimg_2 respectivamente
El Manual

- Ley de la gravitación selectiva: toda herramienta se caerá donde produzca el mayor daño.
- Si todo parece estar bien, es obvio que uno no encontró el problema
- Todo aquello que se corte a medida resultara ser demasiado corto.
- Todo archivo borrado era necesario, todo archivo conservado es inutil
- Cuando a usted se le ocurra la solución ideal, alguien habrá resuelto ya el problema.

                                                               Murphy


Sí, claro.  :D

   Pensé en esa posibilidad, solo esperaba que álguien propusiera algo más facil.  8)

  Gracias hermanito Mgbu!   ;)


Te tengo una implementación más sencilla y practica usando parte de la solución planteada por Mgbu, te dejo un ejemplo para que lo veas. Usa un script muy fácil de usar, en todo caso, cualquier duda me preguntas :D

   Metroid Gravity      -Trailer aqui-

Probaste con ponerle al draw_sprite, a donde iria el image_single ponerle -1, y con poner antes del draw_sprite un image_speed creo que funcionaría bien!
Yo no fu?!

Cita de: Exe_mas en Mayo 10, 2012, 07:18:33 PM
Probaste con ponerle al draw_sprite, a donde iria el image_single ponerle -1, y con poner antes del draw_sprite un image_speed creo que funcionaría bien!

¡Por supuesto!  :-X

  Esa es la forma básica de dibujar un "sprite" y sus subimágenes, pero no funciona cuando quieres dibujar múltiples "sprites" con sus subimágenes a diferentes velocidades.  :D

  Esta noche revisaré el ejemplo enviado por el makero FrogGer, muchas gracias.