From ffdf68ba0c2f2f39a447e093ea809be945497125 Mon Sep 17 00:00:00 2001 From: "baptist.guillaume" Date: Fri, 22 Sep 2023 15:43:44 +0200 Subject: [PATCH] =?UTF-8?q?projet=20termin=C3=A9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- JDR.py | 59 ++++++++++++++++++++++++++++++++++++++-------------------- 1 file changed, 39 insertions(+), 20 deletions(-) diff --git a/JDR.py b/JDR.py index b974b34..d6790c5 100755 --- a/JDR.py +++ b/JDR.py @@ -40,10 +40,10 @@ class Personnage: return defense def change_pdv(self, nb_pdv): - pdv += nb_pdv + self.pdv += nb_pdv def change_exp(self, nb_exp): - exp += nb_exp + self.exp += nb_exp def affiche_caracteristiques(self): #Permet d'afficher les caracteristiques de votre personnage print("Le nom de votre personnage est:", self.nom,".") @@ -58,36 +58,55 @@ class Personnage: nomP1 = input("Joueur 1, quel est votre nom ?: ") nomP2 = input("Joueur 2, quel est votre nom ?: ") catP1 = input("Joueur 1, choisissez votre catégorie entre guerrier, mage, voleur et elfe: ") -while not catP1 == "guerrier" and catP1 == "mage" and catP1 == "voleur" and catP1 == "elfe": +while not catP1 in ["guerrier", "mage", "voleur","elfe"]: catP1 = input("Joueur 1, choisissez votre catégorie entre guerrier, mage, voleur et elfe: ") catP2 = input("Joueur 2, choisissez votre catégorie entre guerrier, mage, voleur et elfe: ") -while not catP2 == "guerrier" and catP2 == "mage" and catP2 == "voleur" and catP2 == "elfe": - catP1 = input("Joueur 1, choisissez votre catégorie entre guerrier, mage, voleur et elfe: ") +while not catP2 in ["guerrier", "mage", "voleur","elfe"]: + catP2 = input("Joueur 2, choisissez votre catégorie entre guerrier, mage, voleur et elfe: ") P1 = Personnage(nomP1, catP1) P2 = Personnage(nomP2, catP2) -while P1.pdv > 0 or P2.pdv > 0: + +print("-----------------------------") +while P1.pdv > 0 and P2.pdv > 0: + print("---Phase 1 du tour---") atkP1 = P1.jet_attaque() defP2 = P2.jet_defense() if atkP1 > defP2: - nb_pdv = randint(1,8) - P2.change_pdv(-nb_pdv) + perte_pdv = -randint(1,8) + print(nomP1, "attaque", nomP2, "!!!", nomP2,"vient de perdre", -perte_pdv, "point(s) de vie.") + P2.change_pdv(perte_pdv) else: - nb_pdv = randint(1,4) - P1.change_pdv(-nb_pdv) - - P1_affiche_caracteristiques() + perte_pdv = -randint(1,4) + print(nomP2, "arrive à se défendre de l'attaque de", nomP1,"!!!", nomP1,"vient de perdre", -perte_pdv, "point(s) de vie.") + P1.change_pdv(perte_pdv) + P1.affiche_caracteristiques() P2.affiche_caracteristiques() + if P1.pdv > 0 and P2.pdv <= 0: + P1.change_exp(1) + print("Le joueur", nomP1, "a gagné.") + elif P1.pdv <= 0 and P2.pdv > 0: + P2.change_exp(1) + print("Le joueur", nomP2, "a gagné.") + print("-----------------------------") + print("---Phase 2 du tour---") defP1 = P1.jet_defense() atkP2 = P2.jet_attaque() if atkP2 > defP1: - nb_pdv = randint(-1,-8) - P1.change_pdv(-nb_pdv) + perte_pdv = -randint(1,8) + print(nomP2, "attaque", nomP1, "!!!", nomP1,"vient de perdre", -perte_pdv, "point(s) de vie.") + P1.change_pdv(perte_pdv) else: - nb_pdv = randint(-1,-4) - P2.change_pdv(-nb_pdv) - - if P1.pdv > 0 and P2.pdv == 0: + perte_pdv = -randint(1,4) + print(nomP1, "arrive à se défendre de l'attaque de", nomP2, "!!!", nomP2,"vient de perdre", -perte_pdv, "point(s) de vie.") + P2.change_pdv(perte_pdv) + P1.affiche_caracteristiques() + P2.affiche_caracteristiques() + if P1.pdv > 0 and P2.pdv <= 0: P1.change_exp(1) - elif P1.pdv == 0 and P2.pdv > 0: - P2.change_exp(1) \ No newline at end of file + print("Le joueur", nomP1, "a gagné.") + elif P1.pdv <= 0 and P2.pdv > 0: + P2.change_exp(1) + print("Le joueur", nomP2, "a gagné.") + print("-----------------------------") + print("-----------------------------") \ No newline at end of file