From b02a290e92a3b98d931ed4908ff06206caa45d7a Mon Sep 17 00:00:00 2001
From: rosier8u <basile.rosier6@etu.univ-lorraine>
Date: Tue, 28 Nov 2023 09:49:34 +0100
Subject: [PATCH] modification du dp etat

---
 design_pattern/src/modele/DPState/EtatActif.java  | 13 ++++---------
 design_pattern/src/modele/DPState/EtatBlesse.java | 15 ++++++---------
 .../src/modele/DPState/EtatEndormi.java           | 13 ++++---------
 3 files changed, 14 insertions(+), 27 deletions(-)

diff --git a/design_pattern/src/modele/DPState/EtatActif.java b/design_pattern/src/modele/DPState/EtatActif.java
index 595898a..ccab2be 100644
--- a/design_pattern/src/modele/DPState/EtatActif.java
+++ b/design_pattern/src/modele/DPState/EtatActif.java
@@ -3,18 +3,13 @@ package modele.DPState;
 import modele.Personnage;
 
 public class EtatActif implements Etat{
-    private String nom;
+    private Personnage personnage;
 
-    public EtatActif(){
-        nom = "actif";
+    public EtatActif(Personnage personnage){
+        this.personnage = personnage;
     }
-
-    public String getNom() {
-        return nom;
-    }
-
     @Override
     public void actionTour(Personnage personnage) {
-
+        this.personnage.attaquer(personnage);
     }
 }
diff --git a/design_pattern/src/modele/DPState/EtatBlesse.java b/design_pattern/src/modele/DPState/EtatBlesse.java
index 483a169..2fc61af 100644
--- a/design_pattern/src/modele/DPState/EtatBlesse.java
+++ b/design_pattern/src/modele/DPState/EtatBlesse.java
@@ -4,23 +4,20 @@ import modele.Personnage;
 
 public class EtatBlesse implements Etat{
     private int nbTour;
-    private String nom;
+    private Personnage personnage;
 
-    public EtatBlesse(){
+    public EtatBlesse(Personnage personnage){
         this.nbTour = 2;
-        this.nom = "blesse";
-    }
-
-    public String getNom() {
-        return nom;
+        this.personnage = personnage;
     }
 
     @Override
     public void actionTour(Personnage personnage) {
-        personnage.subir(5);
+        this.personnage.subir(5);
+        this.personnage.attaquer(personnage);
         nbTour--;
         if (nbTour == 0){
-            personnage.setEtat(new EtatActif());
+            this.personnage.setEtat(new EtatActif(this.personnage));
         }
     }
 }
diff --git a/design_pattern/src/modele/DPState/EtatEndormi.java b/design_pattern/src/modele/DPState/EtatEndormi.java
index c35a400..e83438f 100644
--- a/design_pattern/src/modele/DPState/EtatEndormi.java
+++ b/design_pattern/src/modele/DPState/EtatEndormi.java
@@ -4,22 +4,17 @@ import modele.Personnage;
 
 public class EtatEndormi implements Etat{
     private int nbTour;
-    private String nom;
-
-    public EtatEndormi(){
+    private Personnage personnage;
+    public EtatEndormi(Personnage personnage){
         this.nbTour = 3;
-        this.nom = "endormi";
-    }
-
-    public String getNom() {
-        return nom;
+        this.personnage = personnage;
     }
 
     @Override
     public void actionTour(Personnage personnage) {
         nbTour --;
         if (nbTour == 0){
-            personnage.setEtat(new EtatActif());
+            this.personnage.setEtat(new EtatActif(this.personnage));
         }
     }
 }
-- 
GitLab