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.

83 lines
2.4 KiB

3 weeks ago
from random import randint
3 weeks ago
class Personnage:
2 weeks ago
def __init__(self, nom, cat):
3 weeks ago
pdv = 20
exp = 1
self.nom = nom
self.pdv = pdv
self.exp = exp
self.cat = cat
3 weeks ago
2 weeks ago
if self.cat == "guerrier":
self.inventaire = ["épée","potion"]
self.coef_at = 10
self.coef_def = 8
3 weeks ago
2 weeks ago
elif self.cat == "magicien":
self.inventaire = ["baton","potion"]
self.coef_at = 10
self.coef_def = 7
3 weeks ago
2 weeks ago
elif self.cat == "voleur":
self.inventaire = ["dague","potion"]
self.coef_at = 3
self.coef_def = 9
3 weeks ago
2 weeks ago
elif self.cat == "elfe":
self.inventaire = ["arc","potion"]
self.coef_at = 8
self.coef_def = 10
3 weeks ago
3 weeks ago
def jet_attaque (self):
2 weeks ago
lancer_dés = randint (1,20)
3 weeks ago
attaque = lancer_dés + self.coef_at * self.exp
return attaque
def jet_defence (self):
2 weeks ago
lancer_dés = randint (1,20)
defence = lancer_dés + self.exp * self.coef_def
3 weeks ago
return defence
1 week ago
def change_pdv (self, nb_pdv):
2 weeks ago
self.pdv = self.pdv + nb_pdv
return self.pdv
1 week ago
def change_exp (self, nb_exp):
2 weeks ago
nb_exp = int(x)
self.exp = self.exp + nb_exp
return self.exp
def affiche_caracteristiques (self):
print ("Je suis", self.nom, "je suis un", self.cat, "j'ai", self.pdv,"point de vie et", self.exp, "point d'experience")
2 weeks ago
def affiche_inventaire (self):
print ("j'ai", self.inventaire)
#p = Personnage("pierrot","guerrier")
def jouer():
nomP1 = input("joueur 1 votre nom")
catP1 =input ("quel est la catégorie du jouer 1")
p1 = Personnage (nomP1, catP1)
nomP2 = input("joueur 2 votre nom")
catP2 =input ("quel est la catégorie du jouer 2")
p2 = Personnage (nomP2, catP2)
while p1.pdv > 0 and p2.pdv > 0:
1 week ago
ja = p1.jet_attaque()
jd = p2.jet_defense()
if ja > jd :
p2.change_pdv(-randint(1,8)) #p2 perd des point de vie
elif jd > ja :
p1..change_pdv(-randint(1,4))
2 weeks ago
if p1.pdv > 0 and p2.pdv > 0:
1 week ago
ja = p2.jet_attaque()
jd = p1.jet_defense()
if ja > jd :
p2.change_pdv(-randint(1,8)) #p2 perd des point de vie
elif jd > ja :
p1..change_pdv(-randint(1,4))