Browse Source

Mise à jour de 'bataille.py'

master
RASCHELLA Bastien 3 months ago
parent
commit
851cfe99b2
  1. 44
      bataille.py

44
bataille.py

@ -30,7 +30,7 @@ class Jeux:
def __init__(self, nbmax): def __init__(self, nbmax):
i = 0 i = 0
valeurs = [1, 7, 8, 9, 10, 11, 12, 13, 2, 3, 4, 5, 6] valeurs = [1, 7, 8, 9, 10, 11, 12, 13, 2, 3, 4, 5, 6]
couleurs = ["", "", "", ""] couleurs = ["", "", "", ""]
jeu = [] jeu = []
for val in valeurs: for val in valeurs:
if i >= nbmax: if i >= nbmax:
@ -80,6 +80,7 @@ def partie(jeu1, jeu2):
jeu2.enfiler(gain.defiler()) jeu2.enfiler(gain.defiler())
""" """
class partie_TeSt: class partie_TeSt:
def __init__(self, nb_carte = 52): def __init__(self, nb_carte = 52):
jeux = Jeux(nb_carte) jeux = Jeux(nb_carte)
@ -89,6 +90,7 @@ class partie_TeSt:
self.Winner = None self.Winner = None
def play_round(self): def play_round(self):
"Joue un round et change les valeur de facon pertinente, ne renvoie RIEN"
self.Round += 1 self.Round += 1
c1, c2 = self.j1.defiler(), self.j2.defiler() c1, c2 = self.j1.defiler(), self.j2.defiler()
@ -99,17 +101,23 @@ class partie_TeSt:
while resultat == 0 and self.j1.taille() >= 2 and self.j2.taille() >= 2: while resultat == 0 and self.j1.taille() >= 2 and self.j2.taille() >= 2:
if random.randint(1, 2) == 1: gaintable = []
self.Gain.enfiler(self.j1.defiler()) self.Gain.enfiler(self.j1.defiler())
self.Gain.enfiler(self.j2.defiler()) self.Gain.enfiler(self.j2.defiler())
else:
self.Gain.enfiler(self.j2.defiler())
self.Gain.enfiler(self.j1.defiler())
c1, c2 = self.j1.defiler(), self.j2.defiler() c1, c2 = self.j1.defiler(), self.j2.defiler()
self.Gain.enfiler(c1) self.Gain.enfiler(c1)
self.Gain.enfiler(c2) self.Gain.enfiler(c2)
while not self.Gain.est_vide():
gaintable.append(self.Gain.defiler())
random.shuffle(gaintable)
for elem in gaintable:
self.Gain.enfiler(elem)
resultat = c1.compare(c2) resultat = c1.compare(c2)
if resultat == 1: if resultat == 1:
while not self.Gain.est_vide(): while not self.Gain.est_vide():
@ -122,19 +130,37 @@ class partie_TeSt:
if self.j1.est_vide(): if self.j1.est_vide():
self.Winner = "J2" self.Winner = "J2"
else: else:
if j1.taille() < 2 and not j2.taille() < 2: if self.j1.taille() < 2 and not self.j2.taille() < 2:
self.Winner = "J2" self.Winner = "J2"
elif not j1.taille() < 2 and j2.taille() < 2: elif not self.j1.taille() < 2 and self.j2.taille() < 2:
self.Winner = "J1" self.Winner = "J1"
else: else:
self.Winner = "Egalité" self.Winner = "Egalité"
def get_winner(self): def get_winner(self):
"Renvoie le gagnant de la partie, 'Partie en cours...' si aucun gagnant n'est choisi et 'Egalité' si il y a- bah une égalité quoi"
if self.Winner is None: if self.Winner is None:
return "Partie en cours..." return "Partie en cours..."
return self.Winner return self.Winner
def get_cards(self):
"Renvoie la valeur des cartes du jeu 1 et du jeu 2, renvoie none si ils sont vide"
j1_tete, j2_tete = None, None
if not self.j1.est_vide():
j1_tete = self.j1.tete()
if not self.j2.est_vide():
j2_tete = self.j2.tete()
return j1_tete, j2_tete
def get_size(self):
"Renvoie la taille du jeu 1 et du jeu 2"
return self.j1.taille(), self.j2.taille()
if __name__ == "__main__": if __name__ == "__main__":
partie = partie_TeSt(32) print("Bastien is retarded for not commenting his damn code :skull:")
partie = partie_TeSt(16)
while partie.get_winner() == "Partie en cours...": while partie.get_winner() == "Partie en cours...":
partie.play_round() partie.play_round()
print(partie.get_winner())
print(partie.get_cards())
print(partie.get_size())
sleep(0.5)
print(partie.get_winner())

Loading…
Cancel
Save