|
|
|
from util.bataille import Jeux, Joueur
|
|
|
|
from lib.Pile import Pile_lst as Pile
|
|
|
|
|
|
|
|
if __name__ == "__main__":
|
|
|
|
jeux = Jeux(32)
|
|
|
|
carte_j1, carte_j2 = jeux.distribue()
|
|
|
|
|
|
|
|
nom = str(input("Entrez votre nom: "))
|
|
|
|
j1 = Joueur(carte_j1, nom)
|
|
|
|
j2 = Joueur(carte_j2, "Bot")
|
|
|
|
print(str(j1.paquet))
|
|
|
|
|
|
|
|
pile_j1 = Pile()
|
|
|
|
pile_j2 = Pile()
|
|
|
|
|
|
|
|
#Tant que les joueurs ont des cartes on continue
|
|
|
|
#TODO: vérifier avant empilage pour cas où égalité alors que l'un n'a plus de cartes
|
|
|
|
|
|
|
|
|
|
|
|
while not j1.paquet.est_vide() and not j2.paquet.est_vide():
|
|
|
|
pile_j1.empiler(j1.tire_carte())
|
|
|
|
pile_j2.empiler(j2.tire_carte())
|
|
|
|
|
|
|
|
#Comparaison du gagnant du duels de cartes
|
|
|
|
gagne = pile_j2.sommet().compare(pile_j1.sommet())
|
|
|
|
print(gagne)
|
|
|
|
print(pile_j1.sommet())
|
|
|
|
print(pile_j2.sommet())
|
|
|
|
|
|
|
|
#si la valeur de self est supérieure à la valeur de other.
|
|
|
|
if gagne == 1:
|
|
|
|
j = j1
|
|
|
|
|
|
|
|
#si la valeur de other est supérieure à la valeur de self.
|
|
|
|
elif gagne == -1:
|
|
|
|
j = j2
|
|
|
|
|
|
|
|
if gagne == 1 or gagne == -1:
|
|
|
|
while not pile_j1.est_vide() and not pile_j2.est_vide():
|
|
|
|
j.paquet.enfiler(pile_j1.depiler())
|
|
|
|
j.paquet.enfiler(pile_j2.depiler())
|
|
|
|
|
|
|
|
#si les deux valeurs sont les mêmes, bataille !
|
|
|
|
else:
|
|
|
|
if not j1.paquet.est_vide() and not j2.paquet.est_vide():
|
|
|
|
pile_j1.empiler(j1.tire_carte())
|
|
|
|
pile_j2.empiler(j2.tire_carte())
|
|
|
|
else:
|
|
|
|
if j1.paquet.est_vide():
|
|
|
|
print("Le perdant est {}".format(j1.nom))
|
|
|
|
elif j2.paquet.est_vide():
|
|
|
|
print("Le perdant est {}".format(j2.nom))
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
if j1.paquet.est_vide() and j2.paquet.est_vide():
|
|
|
|
print("Partie nulle")
|
|
|
|
elif j1.paquet.est_vide():
|
|
|
|
print("Le perdant est {}".format(j1.nom))
|
|
|
|
elif j2.paquet.est_vide():
|
|
|
|
print("Le perdant est {}".format(j2.nom))
|
|
|
|
|
|
|
|
|
|
|
|
|