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.
69 lines
2.2 KiB
69 lines
2.2 KiB
# coding=utf-8
|
|
from random import randint, choice
|
|
from personnage import Personnage
|
|
from interface import *
|
|
from base_de_donnee 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()
|
|
|
|
# 2v ne fonctionnent plus -- ajouter nom base
|
|
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(joueur1.nom)
|
|
else:
|
|
gameOver()
|
|
|
|
if __name__ == "__main__":
|
|
main()
|