from random import randint class Personnage : def __init__(self, nom, cat) : self.nom = nom self.pdv = 20 self.exp = 1 self.cat = cat if self.cat == "guerrier": self.inventaire = ["épée","potion"] if self.cat == "magicien": self.inventaire = ["bâton","potion"] if self.cat == "voleur": self.inventaire = ["dague","potion"] if self.cat == "elfe": self.inventaire = ["arc","potion"] def jet_attaque(self): """revoie le jet d'attaque""" lance = randint(1, 20) if self.cat == "guerrier": return lance + self.exp * 10 if self.cat == "magicien": return lance + self.exp * 10 if self.cat == "voleur": return lance + self.exp * 3 if self.cat == "elfe": return lance + self.exp * 8 def jet_defence(self): """revoie le jet de défence""" lance = randint(1, 20) if self.cat == "guerrier": return lance + self.exp * 8 if self.cat == "magicien": return lance + self.exp * 7 if self.cat == "voleur": return lance + self.exp * 9 if self.cat == "elfe": return lance + self.exp * 10 def change_pdv(self, nb_pdv): """on ajoute un entier positif ou négatif aux points de vie du perso""" self.pdv = self.pdv + nb_pdv def change_exp(self, nb_exp): """on ajoute un entier positif à l'experience du perso""" self.exp = self.exp + nb_exp def affiche_carracteristiques(self): print("nom perso , catégorie perso, points de vie perso, expérience perso") def affiche_inventaire(self): if self.cat == "guerrier": print("le personnage a : épée, potion ") if self.cat == "magicien": print("le personnage a : bâton, potion ") if self.cat == "voleur": print("le personnage a : dague, potion ") if self.cat == "elfe": print("le personnage a : arc, potion") def jeu (): joueur_1_nom = input("quel est le nom du joueur 1 ?") joueur_1_cat = input("de quel categorie est le joueur 1 ? ; 1= guerrier 2= magicien 3= voleur 4= elfe") if joueur_1_cat == "1": joueur_1_cat = "guerrier" if joueur_1_cat == "2": joueur_1_cat = "magicien" if joueur_1_cat == "3": joueur_1_cat = "voleur" if joueur_1_cat == "4": joueur_1_cat = "elfe" joueur_2_nom = input("quel est le nom du joueur 2 ?") joueur_2_cat = input("de quel categorie est le joueur 2 ? ; 1= guerrier 2= magicien 3= voleur 4= elfe") if joueur_2_cat == "1": joueur_2_cat = "guerrier" if joueur_2_cat == "2": joueur_2_cat = "magicien" if joueur_2_cat == "3": joueur_2_cat = "voleur" if joueur_2_cat == "4": joueur_2_cat = "elfe" joueur_1 = Personnage (joueur_1_nom,joueur_1_cat) joueur_2 = Personnage (joueur_2_nom,joueur_2_cat) while joueur_1.pdv > 0 and joueur_2.pdv > 0 : j1A = joueur_1.jet_attaque() j2B = joueur_2.jet_defence() if j1A > j2B: joueur_1.affiche_caracteristique() joueur_2.affiche_caracteristique() else j1A < j2B: joueur_1.affiche_caracteristique() joueur_2.affiche_caracteristique() j2A = joueur_2.jet_attaque() j1B = joueur_1.jet defence() if j2A > j1B: joueur_1.affiche_caracteristique() joueur_2.affiche_caracteristique() else j2A < j1B: joueur_1.affiche_caracteristique() joueur_2.affiche_caracteristique() #perso1 = Personnage("toto", "guerrier") #return affiche_inventaire #perso2 = Personnage("bob", "elfe")