from random import randint, choice from personnage import Personnage from interface import * def combat(perso1, perso2): """simule un combat jusqu'à ce que les joueurs n'aient plus de vies""" cls() input("Pressez Entrée pour combattre...") cls() attaquant = perso1 defenseur = perso2 while perso1.pdv > 0 and perso2.pdv > 0: perso1_anciens_pdv = perso1.pdv perso2_anciens_pdv = perso2.pdv if attaquant.jet_attaque() > defenseur.jet_defense(): defenseur.change_pdv(-randint(1,8)) elif attaquant.jet_attaque() < defenseur.jet_defense(): attaquant.change_pdv(-randint(1,4)) #perso1.affiche_caracteristiques() #perso2.affiche_caracteristiques() cls() print("Vous avez\033[36m",perso1.pdv,"\033[0mpoints de vie", end=" ") diff = perso1.pdv - perso1_anciens_pdv if diff < 0: color = 31 else: color = 39 print("(\033["+str(color)+"m"+str(diff)+"\033[0m points)") print("Votre ennemi a\033[36m",perso2.pdv,"\033[0mpoints de vie", end=" ") diff = perso2.pdv - perso2_anciens_pdv if diff < 0: color = 32 else: color = 39 print("(\033["+str(color)+"m"+str(diff)+"\033[0m points)\n") input("[Entrée]") attaquant, defenseur = defenseur , attaquant #changement de l'exp if perso1.pdv > 0: perso1.change_exp(1) else: perso2.change_exp(1) def main(): """programme principal""" intro_bool = input("Voulez-vous l'intro longue ou courte ? (longue/courte) : ") if intro_bool == "longue": (nomJoueur1, catJoueur1) = intro_longue() else: (nomJoueur1, catJoueur1) = intro_courte() joueur1 = Personnage(nomJoueur1, catJoueur1) joueur2 = Personnage("ennemi", choice(["guerrier","magicien","voleur","elfe"])) #le combat ! combat(joueur1, joueur2) #affichage des résultats if joueur1.exp > joueur2.exp: youWon(perso1.nom) else: gameOver() if __name__ == "__main__": main()