[text] ClasseGuerrier

Viewer

copydownloadembedprintName: ClasseGuerrier
  1. class Guerrier():
  2.     """
  3.     Classe représentant un Guerrier. Hérite de Personnage.
  4.     Attributes:
  5.         force_defaut (int): La valeur par défaut de la force
  6.         force_max (int): La valeur maximum de la force
  7.         perte_force_defaut (int): La perte de force lors d'une attaque
  8.         gain_force_defaut (int): Le gain de force lors d'une resitution d'énergie
  9.         force (int): La force courante du guerrier
  10.     """
  11.     guerrier = Guerrier()
  12.     force_defaut = int(20)  # déclaration d'un attribut
  13.     force_max = int(80)  # déclaration d'un attribut
  14.     perte_force_defaut = int(2)  # déclaration d'un attribut
  15.     gain_force_defaut = int(10)  # déclaration d'un attribut
  16.     force = int(0)  # déclaration d'un attribut
  17.  
  18.  
  19.     def __init__(self, nom, energie_depart, energie, force): # valider les {}
  20.         """
  21.         Le constructeur du Guerrier. Il doit initialiser le nom, l’énergie de départ, l’énergie courante et la force. 
  22.         NB : pensez à optimiser votre code et utiliser le constructeur de la classe parente.
  23.         Args:
  24.             nom (str): Le nom du guerrier 
  25.             energie_depart (int): L'énergie de départ du guerrier 
  26.             energie (int): L'énergie courante du guerrier 
  27.             force (int): La force du guerrier 
  28.         """
  29.         super().__init__(nom, energie_depart)
  30.         self.energie = energie
  31.         self.force = force
  32.  
  33.     def to_string(self):
  34.         """
  35.         Retourne une chaîne du genre : "Le guerrier, nom de Personnage, a une énergie de valeur de 
  36.         l’énergie et une force de valeur de la force."
  37.  
  38.         Returns (str): La chaîne représentant le guerrier. 
  39.         """
  40.         #valider le nom
  41.         print("Le guerrier {0}, a une énergie de {1} et une force de {2}".format(self.nom, self.energie, self.force))
  42.  
  43.  
  44.     def valider_force(self, force):
  45.         """
  46.         Valide si la force en paramètre est valide (entre 0 et force_max inclusivement).
  47.         Args:
  48.             force (int): La force à valider 
  49.  
  50.         Returns (bool): True si la force est valide, False sinon
  51.         """
  52.         if 0 >= len(self.force) <= 80 :
  53.             return True
  54.         else:
  55.             return False
  56.  
  57.     def crier(self):
  58.         """
  59.         Retourne le cri du guerrier : "Vous allez goûter à la puissance de mon épée!"
  60.         Returns (str): Le cri du guerrier
  61.         """
  62.         cri_du_guerrier="Vous allez goûter à la puissance de mon épée!"
  63.         return cri_du_guerrier
  64.  
  65.     def attaquer(self, force_attaque):
  66.         """
  67.         Lorsqu’un guerrier se fait attaquer, son énergie est diminuée de la force de l’attaque.  
  68.         Si la force de l’attaque est plus grande que son énergie, l’énergie du guerrier devient 0 (il meurt).
  69.         Lors d’une attaque, la force du guerrier est aussi modifiée.  Elle est diminuée, à chaque attaque, 
  70.         de la valeur de perte_force_defaut jusqu’à concurrence de 0.  Si le guerrier meurt pendant l’attaque, 
  71.         sa force est aussi mise à 0.
  72.         Args:
  73.             force_attaque (int): La force de l'attaque 
  74.         """
  75.  
  76.     def reset_energie(self):
  77.         """
  78.         Permet de remettre l’énergie courante du guerrier à sa valeur de départ (héritage) et 
  79.         augmente sa force (la valeur de force) par la valeur de gain_force_defaut jusqu’à concurrence de 
  80.         la force maximale sans jamais la dépasser.       
  81.         """
  82.  
  83.     # setter et getter, a vous de compléter

Editor

You can edit this paste and save as new: