diff --git a/MAVENProject/src/main/java/entity/Character.java b/MAVENProject/src/main/java/entity/Character.java
index d3c27838c0ad1094f209e3b6fc8a25495f7e727a..f98ce0277a76cc1ca90608c212493f5fb06edfd0 100644
--- a/MAVENProject/src/main/java/entity/Character.java
+++ b/MAVENProject/src/main/java/entity/Character.java
@@ -37,7 +37,8 @@ public class Character extends Entity{
 
         this.tableCommande = new HashMap<>();
         tableCommande.put("CommandX",(double)0);
-        tableCommande.put("CommandZ",(double)0);       
+        tableCommande.put("CommandZ",(double)0);
+        tableCommande.put("CommandAttack",(double)0); // 1 si attack, 0 sinon   
     }
 
     @Override
@@ -124,7 +125,7 @@ public class Character extends Entity{
     @Override
     public void attaque(){
         for (Monster monster : Jeu.getMonsterList()){
-            if (HitBox.collision(this.hitBox, monster.getHitBox())){
+            if (HitBox.collision(this.hitBox, monster.getHitBox()) && tableCommande.get("CommandAttack") == 1){
                 //le Math.max est la juste pour que la vie du perso ne tombe pas en-dessous de zero
                 monster.setNbLifePoints(Math.max(monster.getNbLifePoints()-attackStat,0));
             }
@@ -146,6 +147,8 @@ public class Character extends Entity{
                 System.out.println(tableCommande.get("CommandZ"));
             }      
         }
+
+        if (commandeJeu.get("Attack"))tableCommande.replace("CommandAttack", (double)1);
     }
 
     public void resetCommand(){
@@ -157,6 +160,7 @@ public class Character extends Entity{
     public void evolveCharacter(){
         getGameCommand();
         deplacements();
+        attaque();
         collisionGestion();
         updateVoisinage();
         this.setHitBox(new HitBox(this.getCoord(),entityHEIGHT,entityWIDTH)); // mise à jour moins crade pour l'instant
@@ -183,4 +187,8 @@ public class Character extends Entity{
     public void updateVoisinage(){
         voisinage = new HitBox(coord, 600, 600);
     }
+
+    public Boolean death(){
+        return false;
+    }
 }
diff --git a/MAVENProject/src/main/java/entity/Entity.java b/MAVENProject/src/main/java/entity/Entity.java
index ea3ad977ded5cb58e88a9c7fac93717497ed7052..db7e35d404138a90c053c820fa525c34648f7aa2 100644
--- a/MAVENProject/src/main/java/entity/Entity.java
+++ b/MAVENProject/src/main/java/entity/Entity.java
@@ -88,4 +88,5 @@ public abstract class Entity {
         
     }
    
+    public Boolean death(){return false;}
 }
diff --git a/MAVENProject/src/main/java/entity/Monster.java b/MAVENProject/src/main/java/entity/Monster.java
index 865d77a5bb38b53fce5451c215652bc0d5a9f8aa..8b54a6afdddede6509bf2e3636cbb60e7b7ccc1d 100644
--- a/MAVENProject/src/main/java/entity/Monster.java
+++ b/MAVENProject/src/main/java/entity/Monster.java
@@ -2,7 +2,6 @@ package entity;
 
 import environnement.Coordonnees;
 import environnement.HitBox;
-
 import static jeu.Jeu.getGameCharacter;
 
 import java.util.List;
@@ -43,10 +42,23 @@ public class Monster extends Entity{
         deplacements();
         attaque();
         this.setHitBox(new HitBox(this.getCoord(),entityHEIGHT,entityWIDTH));
+        
     }
 
     public static void evolveAllMonsters(List<Monster> liste){ // evolution de tous les monstres
-        for (Monster monster : liste)monster.evolveMonster();
+        if (!liste.isEmpty()){
+            for (Monster monster : liste)monster.evolveMonster();
+        }
+        int i = 0;
+        while (i < liste.size()){
+            if (liste.get(i).death())liste.remove(i);
+            else i++;
+        }
+
+    }
+
+    public Boolean death(){
+        return nbLifePoints == 0;
     }
     
 }
diff --git a/MAVENProject/src/main/java/jeu/Jeu.java b/MAVENProject/src/main/java/jeu/Jeu.java
index d33bb27acb1edcdfc704cc08a763aed146535f1f..4444bf3191429ab882fa68c40ab2adbd8bbe6498 100644
--- a/MAVENProject/src/main/java/jeu/Jeu.java
+++ b/MAVENProject/src/main/java/jeu/Jeu.java
@@ -114,7 +114,7 @@ public class Jeu implements Game{
         obstacleTableCollisionCharac.add(NONE);
         obstacleTableCollisionCharac.add(NONE);
 
-        monsterList.add(new Monster(new Coordonnees(1000, sol.getHitbox().getExtremites().get("HautGauche").getZ()-30), 1000, 30, 60, 1,3));
+        monsterList.add(new Monster(new Coordonnees(1000, sol.getHitbox().getExtremites().get("HautGauche").getZ()-30), 1000, 30, 60, 1,1));
 
     }
 
@@ -137,7 +137,6 @@ public class Jeu implements Game{
         gameCharacter.evolveCharacter();
         //monstres evoluent dans le jeu
         Monster.evolveAllMonsters(monsterList);
-        System.out.println(gameCharacter.getNbLifePoints());
 
         //animation du perso dans le jeu (definir la bonne frame a cet instant)
         animation(Attack, Right, Left);