from random import randint class Personnage: def __init__(self, nom, cat): self.nom = nom self.hp = 20 self.xp = 1 self.cat = cat if self.cat == 'Guerrier': self.inv = ['Épée', 'Potion'] if self.cat == 'Magicien': self.inv = ['Bâton', 'Potion'] if self.cat == 'Voleur': self.inv = ['Dague', 'Potion'] if self.cat == 'Elfe': self.inv = ['Arc', 'Potion'] def jet_attaque(self): dé = randint(1,20) print("Votre lancer a fait le nombre :", dé) if self.cat == 'Guerrier' or self.cat == 'Magicien': return dé + self.xp * 10 if self.cat == 'Voleur': return dé + self.xp * 3 if self.cat == 'Elfe': return dé + self.xp * 8 def jet_defense(self): pass dé = randint(1,20) print("Votre lancer a fait le nombre :", dé) if self.cat == 'Guerrier': return dé + self.xp * 8 if self.cat == 'Magicien': return dé + self.xp * 7 if self.cat == 'Voleur': return dé + self.xp * 9 if self.cat == 'Elfe': return dé + self.xp * 10 def change_hp(self, nb_hp): self.hp = nb_hp + self.hp def change_xp(self, nb_xp): self.xp = nb_xp + self.xp def affiche_caracteristiques(self): print(f"Votre nom : {self.nom}\n" f"Votre categorie : {self.cat}\n" f"Vos points de vie : {self.hp}\n" f"Votre experience : {self.xp}\n") def affiche_inventaire(self): if self.cat == 'Guerrier': print("Votre personnage a : Épée, Potion") if self.cat == 'Magicien': print("Votre personnage a : Bâton, Potion") if self.cat == 'Voleur': print("Votre personnage a : Dague, Potion") if self.cat == 'Elfe': print("Votre personnage a : Arc, Potion") def attribution(): attaquant_nom = input ("Comment l'attaquant se nomme ?") attaquant_cat = input ("A quelle catégorie voulez vous appartenir ? \n" "Aux guerriers = 1 \n " "Aux magiciens = 2 \n " "Aux Voleurs = 3 \n " "Aux Elfes = 4") if attaquant_cat == "1": attaquant_cat = "Guerrier" if attaquant_cat == "2": attaquant_cat = "Magicien" if attaquant_cat == "3": attaquant_cat = "de Voleur" if attaquant_cat == "4": attaquant_cat = "Elfe" print ("Vous faites maintenant partis des" ,attaquant_cat) defenseur_nom = input ("Puis comment le joueur 2 se nomme ?") defenseur_cat = input ("A quelle catégorie voulez vous appartenir ? \n" "Aux guerriers = 1 \n " "Aux magiciens = 2 \n " "Aux Voleurs = 3 \n " "Aux Elfes = 4") if defenseur_cat == "1": defenseur_cat = "Guerrier" if defenseur_cat == "2": defenseur_cat = "Magicien" if defenseur_cat == "3": defenseur_cat = "Voleur" if defenseur_cat == "4": defenseur_cat = "Elfe" print ("Vous faites maintenant partis des" ,defenseur_cat) attaquant = Personnage(attaquant_nom, attaquant_cat) defenseur = Personnage(defenseur_nom, defenseur_cat) tour(attaquant, defenseur) def tour(attaquant, defenseur): while attaquant.hp == 0 or defenseur.hp == 0 : A_attaque = attaquant.jet_attaque() D_defense = defenseur.jet_defense() if A_attaque > D_defense: attaquant.change_hp - randint(1,8) if A_attaque < D_defense: defenseur.change_hp - randint(1,4) return "vous avez fait le même score" if attaquant.hp == 0: print("le defenseur a gagné la partie") if defenseur.hp == 0: print("l'attaquant a gagné la partie")