from random import randrange import time class Character(): 'Classe de personnage' def __init__(self, health, power): self.health = health self.power = power self.damage = randrange(2,7) * self.power self.armor = randrange(1,3) * self.power def Fight(player, ennemy): turn_count = 1 while player.health > 0 and ennemy.health > 0: print("Tour %s\n====================\n" % (str(turn_count))) 'Calcul des forces et défenses' player_damage = randrange(2,7) * player.power player_armor = randrange(1,3) * player.power ennemy_damage = randrange(2,7) * ennemy.power ennemy_armor = randrange(1,3) * ennemy.power 'Calculs de Fight' damage_to_ennemy = player_damage - ennemy_armor if damage_to_ennemy > 0: ennemy.health -= damage_to_ennemy print("Vous faites %s dégâts à votre ennemi." % (damage_to_ennemy)) if damage_to_ennemy <= 0: print("Vous ne faites aucun dégât !") damage_to_player = ennemy_damage - player_armor if damage_to_player > 0: player.health -= damage_to_player print("Votre ennemi vous fait %s dégâts." % (damage_to_player)) if damage_to_player <= 0: print("Votre ennemi ne vous fait aucun dégât !") 'Résultats' print("Il vous reste %s points de vie, et à votre ennemi %s.\n" % (player.health, ennemy.health)) turn_count += 1 time.sleep(1) 'Sorties de boucle' if player.health <= 0: print("Vous avez succombé.") if ennemy.health <= 0: print("Vous avez triomphé !") def Difficulty(): match input("Quelle difficulté voulez-vous ?\n\ MERCI DE CHOISIR UN CHIFFRE\n \ > Facile [1]\n \ > Moyen [2]\n \ > Difficile [3]\n \ > Hardcore [4]\n \ > "): case "1" | "Facile" | "&" | "F" | "f": print("\nLa difficulté sera sur \"Facile\"") return 1 case "2" | "Moyen" | "é" | "M" | "m": print("\nLa difficulté sera sur \"Moyen\"") return 2 case "3" | "Difficile" | "\"" | "D" | "d": print("\nLa difficulté sera sur \"Difficile\"") return 3 case "4" | "Hardcore" | "\'" | "H" | "h": print("\nLa difficulté sera sur \"Hardcore\"") return 4 case _: print("\nMerci de donner un objectif clair.\n") return Difficulty() def EnnemyHealth(): match input("Combien de points de vie voulez-vous pour votre ennemi ?\n\ MERCI DE CHOISIR UN CHIFFRE\n \ > 25 [1]\n \ > 50 [2]\n \ > 75 [3]\n \ > 100 [4]\n \ > "): case "1" | "25" | "&": return 25 case "2" | "50" | "é": return 50 case "3" | "75" | "\"": return 75 case "4" | "100" | "\'": return 100 case _: print("\nMerci de rester dans les clous.\n") return EnnemyHealth() moi = Character(100, 3) 'Bloc ennemi' ennemy_power = Difficulty() ennemy_health = EnnemyHealth() lui = Character(ennemy_health, ennemy_power) 'Combat 1' Fight(moi, lui)