Comunidad Game Maker

Ayuda => Preguntas y respuestas => Mensaje iniciado por: Karasuman en Diciembre 15, 2011, 03:59:51 PM

Título: (Solucionado)Ayuda con las teclas de moviemiento 2D
Publicado por: Karasuman en Diciembre 15, 2011, 03:59:51 PM
Bueno primero que nada saludos y ahora les aclaro mi problema, lo que ocurre es que yo muevo mi personaje con las flechas izq/der, y no se si les a pasado que al presionarlas al mismo tiempo el personaje se queda quieto y reproduciendo el sprite del personaje caminando. Me gustaria saber como solucionarlo.

TECLAS:
FLECHA IZQ=MOVERSE A LA IZQUIERDA
FLECHA DER=MOVERSE A LA DERECHA
FLECHA ABAJO=AGACHARSE
A=DISPARAR
S=SALTAR
W=ESPADAZO

Les dejo el link del exe:http://www.megaupload.com/?d=FQI4K39G (http://www.megaupload.com/?d=FQI4K39G)

La variable swcaminar no influye en nada.

En el event keypress right:
if swcaminar=0 and in_air=0 and place_free(x+3,y) and place_meeting(x,y+1,obj_piso){    
   swcaminar=1
   image_index=0
   image_speed=0.8
   sprite_index=spr_shadow_caminando
   image_xscale=1

  }
x+=3

En el event keypress left:

if swcaminar=0 and in_air=0 and place_free(x-3,y) and place_meeting(x,y+1,obj_piso){    
   swcaminar=1
   image_index=0
   image_speed=0.8
   sprite_index=spr_shadow_caminando
   image_xscale=-1
}
x-=3


Título: Re: Ayuda con las teclas de moviemiento 2D
Publicado por: Jucarave en Diciembre 15, 2011, 05:00:24 PM
lo que tienes que hacer es que en el evento de tecla derecha, compruebe si esta presionando la izquierda y viceversa:

[gml]//Evento keypress right
if (keyboard_check(vk_left)){ sprite_index = spr_Quieto; exit; } //Esto comprueba si esta presionando la tecla izquierda en el evento del derecho, y si es as? le da el sprite "spr_Quieto" y deja de ejecutar

x += 4;
sprite_index = spr_Caminar;
image_xscale = 1;
...
[/gml]

[gml]//Evento keypress left
if (keyboard_check(vk_right)){ sprite_index = spr_Quieto; exit; } //Esto comprueba si esta presionando la tecla derecha en el evento del izquierdo, y si es as? le da el sprite "spr_Quieto" y deja de ejecutar

x -= 4;
sprite_index = spr_Caminar;
image_xscale = -1;
...
[/gml]


Saludos.
Título: Re: (Solucionado)Ayuda con las teclas de moviemiento 2D
Publicado por: Karasuman en Diciembre 15, 2011, 05:13:37 PM
vale men, la probe y funciono, no se me habia ocurrido de esa manera  :-[.
Título: Re: (Solucionado)Ayuda con las teclas de moviemiento 2D
Publicado por: dark_servant en Diciembre 16, 2011, 02:51:46 PM
tambi?n pudiste haber usado la funci?n que simula que soltaste la tecla para evitar el molesto moonwalk.

//no al moon walk XDD
if keyboard_check_pressed(vk_right)
{keyboard_clear(vk_left)}

if keyboard_check_pressed(vk_left)
{keyboard_clear(vk_right)}

salu2 :P