PYTHON 187
Module_jeu.py Guest on 7th October 2020 08:07:59 PM
  1. main.py:
  2.  
  3.  
  4. import random
  5. import time
  6. from module_jeu import *
  7.  
  8. class Personnage:
  9.     """ personnage de type générique """
  10.  
  11.     points_de_vie = 100
  12.     points_de_vie_max = 100
  13.     potion_de_vie = False
  14.     mage_liste = []
  15.     heure_de_coucher = 0
  16.     coucher = False
  17.     liste_equipe = ["verte","rouge","bleue"]
  18.     def __init__(self, nom, espece, equipe="rouge"):
  19.         if equipe==None:
  20.             self.equipe=self.liste_equipe[random.randint(0,2)]
  21.         self.nom = nom
  22.         self.espece = espece
  23.         self.equipe = equipe
  24.         if self.espece == "guerrier":
  25.             self.points_attaque = 5
  26.             self.points_defense = 3
  27.             self.stamina = 13
  28.         if self.espece == "archer":
  29.             self.points_attaque = 5
  30.             self.points_defense = 7
  31.             self.stamina = 10
  32.         if self.espece == "mage":
  33.             self.points_attaque = 3
  34.             self.points_defense = 3
  35.             self.stamina = 8
  36.             self.potion_de_vie = True
  37.             self.mage_liste.append(self)
  38.         self.stamina_max = self.stamina
  39.         print("le joueur {0} a été créé il est de l'équipe {1} et de l'espece {2}".format(self.nom, self.equipe, self.espece))
  40.  
  41.  
  42.  
  43. ___________________________________________________________________________________________________________________________________________________
  44.  
  45. ___________________________________________________________________________________________________________________________________________________
  46.  
  47.  
  48. ___________________________________________________________________________________________________________________________________________________
  49. ___________________________________________________________________________________________________________________________________________________
  50. module_jeu.py:
  51.  
  52.  
  53. def inlife(self):
  54.         if self.points_de_vie <= 0:
  55.             print("le joueur {0} est mort".format(self.nom))
  56.             return False
  57.         return True
  58.  
  59.  
  60. def meme_equipe(self, joueur):
  61.     if self.equipe == joueur.equipe:
  62.         return True
  63.     return False
  64.  
  65. def attaquer(self, adversaire, nombre_decoup=1):
  66.     if self.coucher:
  67.         print("le joueur {0} dort il ne peut pas attaquer !".format(self.nom))
  68.         return
  69.     if adversaire.inlife() and self.inlife():
  70.         if self.meme_equipe(adversaire):
  71.             print(
  72.                 "le joueur {0} et le joueur {1} sont tout les deux de l'equipe {2} un joueur ne peux pas attaquer un joueur de son equipe !".format(
  73.                     self.nom, adversaire.nom, self.equipe))
  74.             return
  75.         coups_portes = 0
  76.         for coup in range(nombre_decoup):
  77.             if self.stamina == 0:
  78.                 break
  79.             coups_portes += 1
  80.             self.stamina -= 1
  81.             adversaire.points_de_vie -= (self.points_attaque - adversaire.points_defense)
  82.  
  83.         print("le joueur {0} donne {1} coup(s) au joueur {3} il reste {2} de vie au joueur {3}".format(self.nom,
  84.                                                                                                        coups_portes,
  85.                                                                                                        adversaire.points_de_vie,
  86.                                                                                                        adversaire.nom))
  87.         adversaire.inlife()
  88.         if self.stamina == 0:
  89.             print("le joueur {0} n'a plus de stamina il ne peut plus attaquer (une sieste s'impose !)".format(
  90.                 self.nom))
  91.     if random.randint(0, 5) == 1:
  92.         time.sleep(3)
  93.         print("\n\n\nil y a une reunion de mages dans la foret le(s) joueur(s) suivant doivent y aller :")
  94.         for player in self.mage_liste:
  95.             if player.espece == "mage":
  96.                 print(player.nom)
  97.  
  98. def repos(self):
  99.     if self.heure_de_coucher != 0:
  100.         print("le joueur{0} dort deja !".format(self.nom))
  101.         return
  102.     if self.points_de_vie == self.points_de_vie_max and self.stamina == self.stamina_max:
  103.         print("le joueur {0} a deja ses points de vie et sa stamina au max il n'est pas fatigué".format(self.nom))
  104.         return
  105.     self.heure_de_coucher = int(time.time())
  106.     self.coucher = True
  107.  
  108. def reveil(self):
  109.     if self.heure_de_coucher == 0:
  110.         print("le joueur {0} est ne dort pas !".format(self.nom))
  111.         return
  112.     temps_de_sommeil = int(time.time() - self.heure_de_coucher)
  113.     self.heure_de_coucher = 0
  114.     self.points_de_vie = int(self.points_de_vie * random.uniform(1.10, 1.25))
  115.     if self.stamina <= 2:
  116.         self.stamina = random.randint(int(self.stamina_max / 4), int(self.stamina_max / 2))
  117.     self.stamina = self.stamina * 2
  118.     if self.points_de_vie > self.points_de_vie_max:
  119.         self.points_de_vie = self.points_de_vie_max
  120.     if self.stamina > self.stamina_max:
  121.         self.stamina = self.stamina_max
  122.     print(
  123.         "le joueur {0} s'est reposé pendant {1} heures, il posséde maintenant {2} point de vie et {3} de stamina".format(
  124.             self.nom, temps_de_sommeil / 50, self.points_de_vie, self.stamina))
  125.     self.coucher=False
  126.  
  127. def revive(self, mort):
  128.     if mort.points_de_vie > 0:
  129.         print("le joueur {0} n'est pas mort".format(mort.nom))
  130.         return
  131.     if self.potion_de_vie:
  132.         if self.equipe != mort.equipe:
  133.             print(
  134.                 "le joueur {0} ({1}) et le joueur {2} ({3}) ne sont pas de la même équipe il faut etre de la même equipe pour revive !".format(
  135.                     self.nom, self.equipe, mort.nom, mort.equipe))
  136.             return
  137.         mort.points_de_vie = self.points_de_vie_max
  138.         mort.points_de_vie = self.stamina_max
  139.         print(
  140.             "le joueur {0} revient à la vie avec {2} points de vie et toute sa stamina ! (il peut remercier {1}!)\nle joueur {1} ne possede plus de potion de vie".format(
  141.                 mort.nom, self.nom, mort.points_de_vie))
  142.         self.potion_de_vie = False
  143.     elif self.espece != "mage":
  144.         print(
  145.             "seul les mages peuvent faire revivre ou alors vous pouvez en trouver en vous baladans dans la foret")
  146.     else:
  147.         print("vous ne pouvez utiliser qu'une seul fois votre potion de vie")
  148.  
  149. def info(self):
  150.     if self.potion_de_vie:
  151.         stamina = 1
  152.     else:
  153.         stamina = 0
  154.     print(
  155.         "le joueur {0} est un {1} et il possede:\n{2} points de vie \n{3} points d'attaque\n{4} de stamina\n{5} potion de vie\nil est de l'equipe{6}".format(
  156.             self.nom, self.espece, self.points_de_vie, self.stamina, self.points_attaque, stamina, self.equipe))
  157.  
  158. def balade(self):
  159.     if self.coucher:
  160.         print("le joueur {0} dort encore il ne peux pas se balader".format(self.nom))
  161.         return
  162.     if self.espece == "mage":
  163.         if self.potion_de_vie and random.randint(0, 1):
  164.             self.points_de_vie = False
  165.             print(
  166.                 "vous vous trouvez face à un loup vous vous enfuyez mais dans votre fuite vous faites tomber votre potion de vie")
  167.  
  168.     if random.randint(0, 1):
  169.         gouter = input(
  170.             "Oh ! on dirais bien qu'un mage qui passait par là a fait tomber une potion voulez vous la gouter ? (o/n)")
  171.         if gouter == "o":
  172.             if random.randint(0, 1):
  173.                 self.points_de_vie -= 75
  174.                 if self.points_de_vie < 0: self.points_de_vie = 0
  175.                 print("cette potion etait un poison ! vous perdez 75 hp vous en avez maintenant {0}".format(
  176.                     self.points_de_vie))
  177.                 self.inlife()
  178.             else:
  179.                 print(
  180.                     "wouaw vous venez de trouver une potion de vie vous pouvez maintenant faire revivre un joueur tel un mage !")
  181.                 self.potion_de_vie = True

Paste is for source code and general debugging text.

Login or Register to edit, delete and keep track of your pastes and more.

Raw Paste

Login or Register to edit or fork this paste. It's free.