You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

121 lines
4.0 KiB

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")