BARRAUX Arthur 2 years ago
parent
commit
fc8155c415
  1. 49
      main.py

49
main.py

@ -6,11 +6,9 @@ import random
class Carte:
def __init__(self, couleur, valeur, img_path):
def __init__(self, couleur, valeur):
self.valeur = valeur
self.couleur = couleur
image = Image.open(img_path)
self.image = ImageTk.PhotoImage((image))
def compare(self, other):
if self.valeur > other.valeur:
@ -20,6 +18,8 @@ class Carte:
return 0
def __str__(self) -> str:
if self.valeur > 10:
return str(['Valet', 'Dame', 'Roi', 'As'][self.valeur-10]) + ' de ' + self.couleur
return str(self.valeur) + ' de ' + self.couleur
@ -39,7 +39,9 @@ class Jeux:
c.execute('SELECT * FROM Carte')
data = c.fetchall()
for i, carte in enumerate(data):
self.paquet.append(Carte(data[i][0], data[i][1], data[i][3]))
self.paquet.append(Carte(data[i][0], data[i][1]))
self.jeu()
def distribute(self) -> File_chaine:
@ -61,16 +63,19 @@ class Jeux:
if self.j1.est_vide():
# self.j1 a perdu donc self.j2 gagne toutes les cartes
print(self.j1, self.j2)
print("Désolée l'ordinateur à gagné")
else:
print(self.j1, self.j2)
print("Bravo vous avez gagné")
def bataille(self, buffer_draw=[File_chaine(), File_chaine()]):
# print('buffer', buffer_draw[0], buffer_draw[1], sep='\n')
print('Vous: {} Il vous reste {} cartes'.format(self.j1.tete(), self.j1.taille()), "L'ordinateur: {} Il reste {} cartes à l'ordinateur".format(self.j2.tete(), self.j2.taille()), sep='\n')
input()
j1_active_carte, j2_active_carte = self.j1.tete(), self.j2.tete()
if j1_active_carte.compare(j2_active_carte) == 0 :
try:
print()
print("Egalitée !!")
print()
# envers
buffer_draw[0].enfiler(self.j1.defiler()) # carte du dessus
buffer_draw[0].enfiler(self.j1.defiler()) # carte a l'envers
@ -83,33 +88,23 @@ class Jeux:
pass
elif j1_active_carte.compare(j2_active_carte) == 1 :
print()
print("Vous gagnez la carte")
print()
while not buffer_draw[0].est_vide():
self.j1.enfiler(buffer_draw[0].defiler())
self.j1.enfiler(buffer_draw[1].defiler())
self.j1.enfiler(self.j2.defiler())
self.j1.enfiler(self.j1.defiler())
elif j1_active_carte.compare(j2_active_carte) == -1 :#self.j1.tete().compare(self.j2.tete()) == -1 :
print()
print("Lordinateur gagne la carte")
print()
while not buffer_draw[0].est_vide():
self.j2.enfiler(buffer_draw[0].defiler())
self.j2.enfiler(buffer_draw[1].defiler())
self.j2.enfiler(self.j1.defiler())
self.j2.enfiler(self.j2.defiler())
class App:
def __init__(self) -> None:
self.win = tk.Tk()
self.jeu = Jeux(32)
self.jeu.jeu()
self.images = []
# self.display_card(self.jeu.paquet[12])
self.win.mainloop()
def display_card(self, carte :Carte) -> None:
self.images.append(tk.Label(image=carte.image))
self.images[-1].pack()
gui = App()
jeu = Jeux(int(input("Choississez 32 ou 52 cartes: ")))
Loading…
Cancel
Save