Yo te puedo ayudar en cualquier problema que tengas, tengo tiempo usando el game maker y tengo un gran dominio sobre el gml (game maker lenguaje). Si quieres mandame un mp con tu correo
1. Solucion a tu problema.... usando D&D
Si usas D&D entonces puedes hacer en el momento cuando presionas de tecla (key press), mira que realmente uses el sprite adecuado. Y en el evento de soltar la tecla (key release) poner el sprite de quedarse quieto. Puede que te confundas de evento, fijate en los nombres
2. Solucion a tu problema.... usando GML
En el evento Step, añade esta linea de codigo, sigue las indicaciones
Código:
if (keyboard_check_direct(vk_left)){ // esta linea comprueba que estas presionando la tecla izquierda
x -= 4; //Esta line mueve el sprite hacia la izquierda atravez del eje "x"
sprite_index = spr_left; //Esta linea cambia el sprite (asegurate de cambiar "spr_Left" por el nombre del exacto sprite que tienes en movimiento hacia la izquierda)
}
if (keyboard_check_release((vk_left)||(vk_up)||(vk_right)||(vk_down))){ //Esta linea comprueba si sueltas las teclas izquierda o arriba o derecha o abajo y ejecuta las acciones
x -= 0; //Esta linea deja quieto al sprite atravez del eje "x"
y -= 0; //Esta linea deja quieto al sprite atravez del eje "y"
sprite_index = spr_Stand; //Esta linea cambia el sprite (asegurate de cambiar "spr_Stand" por el nombre del exacto sprite que tienes para que no se mueva)
}