Julio 29, 2015, 06:54:40 AM Ultima modificación: Julio 29, 2015, 07:33:03 AM por LeanGM
Buenas, quería saber como cambiar los sprites de un objeto al moverse hacia arriba, abajo, izq y der. Ojo, no digo al presionar las teclas, digo cuando un objeto se mueve.
Desde ya gracias :D

Depende de cómo muevas ese objeto. Por ejemplo, si se usa vspeed, entonces se preguntaría:

"si el signo de vspeed es negativo, activa el sprite de movimiento hacia arriba". Esto es:
[gml]
if (sign(vspeed) < 0)
     sprite_index = spr_arriba
[/gml]

Otra manera, que no depende de vspeed/hspeed sería: "si la variable xprevious es menor a x, entonces la dirección del movimiento es hacia la derecha", o sea:
[gml]
if (x > xprevious)
     sprite_index = spr_derecha
[/gml]

Hola penumbra, muchas gracias, me funciona perfecto  :D  :D

Para ir a la izquierda simplemente haz esto:

if (x < xprevious)
     sprite_index = spr_izquierda


para arriba:

if (y < yprevious)
     sprite_index = spr_arriba


para abajo:

if (y > yprevious)
     sprite_index = spr_abajo


y para ir a la derecha si bien ya se dijo mas arriba, lo vuelvo a poner:

if (x > xprevious)
     sprite_index = spr_derecha