keyLeft = keyboard_check(vk_left) or keyboard_check(ord("Q")); keyRight = keyboard_check(vk_right) or keyboard_check(ord("D")); keyUp = keyboard_check(vk_up) or keyboard_check(ord("Z")); keyDown = keyboard_check(vk_down) or keyboard_check(ord("S")); // Déplacement du joueur deplaceHorizontal = keyRight - keyLeft; deplaceVertical = keyDown - keyUp; if ((deplaceHorizontal > 0 && !place_meeting(x+1, y, oWall)) || (deplaceHorizontal < 0 && !place_meeting(x-1, y, oWall))) { x += deplaceHorizontal; } if ((deplaceVertical > 0 && !place_meeting(x, y+1, oWall)) || (deplaceVertical < 0 && !place_meeting(x, y-1, oWall))) { y += deplaceVertical; } seDeplace = (deplaceHorizontal != 0 or deplaceVertical != 0); // Animation des sprites if (seDeplace) { sprite_index = sPlayerRun; //image_speed = 1; if (deplaceHorizontal = 0) { if (deplaceVertical = 1) { image_index = compteurFrames % nbFrames; indexImageInfo = 0; } else { image_index = compteurFrames % nbFrames + 2 * nbFrames; indexImageInfo = 2; } } else if (deplaceHorizontal = 1) { indexImageInfo = 1; image_index = compteurFrames % nbFrames + nbFrames; } else { indexImageInfo = 3; image_index = compteurFrames % nbFrames + 3*nbFrames; } compteurFrames += 0.25; } else { sprite_index = sPlayer; image_index = indexImageInfo; }