from File import File_chaine import tkinter as tk from PIL import Image, ImageTk import sqlite3 class Carte: def __init__(self, couleur, valeur, img_path): self.valeur = valeur self.couleur = couleur self.image = img_path def compare(self, other): self.other = other.valeur if self.valeur > self.other : return 1 elif self.valeur < self.other : return -1 elif self.valeur == self.other : return 0 return None def __str__(self) -> str: return str(self.valeur) + ' de ' + self.couleur class Jeux: def __init__(self, nb) -> None: self.paquet = [] self.nombre_carte = nb if self.nombre_carte != 32 and self.nombre_carte != 52: raise ValueError("Saissisez 32 ou 54 cartes") # Création du paquet de carte en fonction du nombre de carte conn = sqlite3.connect('bdd.db') c = conn.cursor() if self.nombre_carte == 32: c.execute('SELECT * FROM Cartes WHERE belote=True') else: 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])) def distribute(self, joueur) -> File_chaine: for i in range(nbcarte): mcarte1 = paquet - 1 #enlever moitie val mcarte2 = paquet # le reste du paquet if joueur == j1 : return File_chaine(mcarte1) elif joueur == j2 : return File_chaine(mcarte2) def jeu(self): j1 = distribute(1) j2 = distribute(2) while not j1.estvide() or j2.estvide() : j1tete = j1.tete() j2tete = j2.tete() if j1tete.valeur() > j2tete.valeur() : j1.enfiler(j1tete) j1.enfiler(j2tete) elif j1tete.valeur() < j2tete.valeur() : j2.enfiler(j1tete) j2.enfiler(j2tete) elif j1tete.valeur() == j2tete.valeur() : j1.depiler() j2.depiler() if j1.estvide() == True : # j1 a perdu pass else: # j2 a perdu pass class Gui: def __init__(self) -> None: self.win = tk.Tk() self.images = [] image = Image.open('photo/5.png') test = ImageTk.PhotoImage((image)) self.images.append(tk.Label(image=test)) self.images[0].pack() # self.display_card(jeu.paquet[0]) self.win.mainloop() def display_card(self, carte :Carte) -> None: image = Image.open('photo/5.png') test = ImageTk.PhotoImage((image)) self.images.append(tk.Label(image=test)) self.images[0].pack() jeu = Jeux(32) gui = Gui()