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.
77 lines
2.3 KiB
77 lines
2.3 KiB
# coding=utf-8
|
|
from random import randint
|
|
from base_de_donnee import *
|
|
|
|
class Personnage:
|
|
def __init__(self, base, nom, cat):
|
|
"""initialise le personnage"""
|
|
|
|
self.nom = nom
|
|
self.base = base
|
|
|
|
self.switcher_obj = {
|
|
"guerrier" : "épée",
|
|
"magicien" : "bâton",
|
|
"voleur" : "dague",
|
|
"elfe" : "arc",
|
|
}
|
|
|
|
base.ajout_personnage(nom,cat,20,1, self.switcher_obj.get(cat)+",potion")
|
|
|
|
def jet_attaque(self):
|
|
"""renvoie le jet d'attaque"""
|
|
dé = randint(1,20)
|
|
self.switcher_classe = {
|
|
"guerrier" : 10,
|
|
"magicien" : 10,
|
|
"voleur" : 3,
|
|
"elfe" : 8,
|
|
}
|
|
|
|
self.classe = self.switcher_classe.get(self.get_cat())
|
|
return dé + self.get_exp() * self.classe
|
|
|
|
def jet_defense(self):
|
|
"""renvoie le jet de défense"""
|
|
dé = randint(1,20)
|
|
self.switcher_classe = {
|
|
"guerrier" : 8,
|
|
"magicien" : 7,
|
|
"voleur" : 3,
|
|
"elfe" : 8,
|
|
}
|
|
self.classe = self.switcher_classe.get(self.get_cat())
|
|
return dé + self.get_exp() * self.classe
|
|
|
|
def change_pdv(self, nb_pdv):
|
|
"""change le total de points de vie"""
|
|
self.base.change_pdv(self.nom, nb_pdv)
|
|
|
|
def change_exp(self, nb_exp):
|
|
"""change le nombre de points d'experience"""
|
|
self.base.change_exp(self.nom, nb_exp)
|
|
|
|
def get_pdv(self):
|
|
"""renvoie le nombre de point de vie du personnage"""
|
|
return self.base.get_pdv(self.nom)
|
|
|
|
def get_exp(self):
|
|
"""renvoie le nombre de point d'exp. du personnage"""
|
|
return self.base.get_exp(self.nom)
|
|
|
|
def get_cat(self):
|
|
"""renvoie la catégorie du personnage"""
|
|
return self.base.get_cat(self.nom)
|
|
|
|
|
|
def affiche_caracteristiques(self):
|
|
"""affiche les caractéristiques du personnage"""
|
|
print("nom : ", self.nom)
|
|
print("catégorie : ", self.get_cat())
|
|
print("points de vie : ", self.get_pdv())
|
|
print("expérience : ", self.get_exp())
|
|
print("")
|
|
|
|
def affiche_inventaire(self):
|
|
"""affiche l'inventaire du personnage"""
|
|
print("inventaire : ", self.base.affiche_inventaire(self.nom))
|