Espero que el titulo sea tal y como deba ser, si no, perdonenme, porque hace mucho que no vengo por aqui y realmente no se como explicar el error.
Bien, este es el problema, hace poco he empezado con game maker y algunos tutoriales de gml y he conseguido un par de cosillas.
Bien, intente hacer con mi propio codigo que al pulsar la tecla espaciadora saltara y cambiara a la animacion de salto, pero el problema viene que cuando pulsas la tecla de salto + cualquier tecla de direccion(derecha o izquierda), cuando llega el personaje al suelo, se queda con la animacion de "Idle" y hasta que no sueltes la tecla de direccion, se mueve con la animacion de Idle.
Bueno ahora mismo pongo el codigo y me gustaria saber si hay alguna forma de arreglarlo.
Gracias.
[gml]
if keyboard_check_pressed(vk_space) && !place_free(x, y+1) {vspeed=-8}
if place_free(x,y+1)
{
if sprite_index = IdleRight
or sprite_index = WalkRight
sprite_index = JumpRight;
image_speed = 0.1

if sprite_index = IdleLeft
or sprite_index = WalkLeft
sprite_index = JumpLeft;
image_speed = 0.1
}
else
{
if sprite_index = JumpRight
sprite_index = IdleRight;
image_speed = 0.3

if sprite_index = JumpLeft
sprite_index = IdleLeft;
image_speed = 0.3
}
[/gml]

#1 Septiembre 11, 2011, 09:34:15 PM Ultima modificación: Septiembre 11, 2011, 09:36:18 PM por LIZARDJUNIOR
hola yo tambien soy principiante pero haber si puedo solucionar tu problema,

has probado esto:

supongamos ke el suelo se llama obj_suelo y ke el personaje  donde has puesto este codigo es obj_personaje

pues a?ade en obj_personaje un evento colision con obj_suelo

en este evento de colision pones sprite_index = personajequieto

personajequieto es el nombre del sprite con la animacion quieta

--------------

cruza los dedos aver si funciona :-[

agrega como comparacion la velocidad vertical, recuerda que si salto la velocidad vertical abra cambiado. solo agrega  and vspeed!=0