diff --git a/objects/oPlayer/Create_0.gml b/objects/oPlayer/Create_0.gml
index 1c94493..1bfc686 100644
--- a/objects/oPlayer/Create_0.gml
+++ b/objects/oPlayer/Create_0.gml
@@ -5,4 +5,5 @@ inv = 0; //timer invinsiblité
indexImageInfo = 0;
compteurFrames = 0;
-attack = 10;
\ No newline at end of file
+attack = 10;
+isAttack = false; // permet de savoir si le joueur a appuyé sur la touche attaquer ou pas
\ No newline at end of file
diff --git a/objects/oPlayer/KeyPress_74.gml b/objects/oPlayer/KeyPress_74.gml
index f77a3e7..887bca0 100644
--- a/objects/oPlayer/KeyPress_74.gml
+++ b/objects/oPlayer/KeyPress_74.gml
@@ -1,10 +1,11 @@
// Attaque au corp à corp
//jouer l'animation
-
- tailleEpee = 30; // à définir
- checkCote = image_index / 8; // récupère où regarde le personnage
- inst = noone;
+isAttack = true;
+compteurFrames = 0;
+tailleEpee = 30; // à définir
+checkCote = image_index / 8; // récupère où regarde le personnage
+inst = noone;
if (sprite_index == sPlayerRun) {
if (checkCote <= 1) {
diff --git a/objects/oPlayer/Step_0.gml b/objects/oPlayer/Step_0.gml
index 054dc3e..47012d5 100644
--- a/objects/oPlayer/Step_0.gml
+++ b/objects/oPlayer/Step_0.gml
@@ -10,40 +10,52 @@ depth = -bbox_bottom;
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*spd;
-}
-
-if ((deplaceVertical > 0 && !place_meeting(x, y+1, oWall))
- || (deplaceVertical < 0 && !place_meeting(x, y-1, oWall))) {
- y += deplaceVertical*spd;
-}
-
-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;
+if (isAttack) {
+ sprite_index = sPlayerAttackSlash;
+ image_speed = 1;
+ if (compteurFrames == 0) {
+ image_index = indexImageInfo * 4;
+ } else if (compteurFrames > 4) {
+ isAttack = false;
}
- compteurFrames += 0.25*spd;
+ compteurFrames += 0.25;
} else {
- sprite_index = sPlayer;
- image_index = indexImageInfo;
+
+ if ((deplaceHorizontal > 0 && !place_meeting(x+1, y, oWall))
+ || (deplaceHorizontal < 0 && !place_meeting(x-1, y, oWall))) {
+ x += deplaceHorizontal*spd;
+ }
+
+ if ((deplaceVertical > 0 && !place_meeting(x, y+1, oWall))
+ || (deplaceVertical < 0 && !place_meeting(x, y-1, oWall))) {
+ y += deplaceVertical*spd;
+ }
+
+ 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*spd;
+ } else {
+ sprite_index = sPlayer;
+ image_index = indexImageInfo;
+ }
}
\ No newline at end of file