Browse Source

version 3.1415926535897

master
BARRAUX Arthur 3 years ago
parent
commit
84374dff7e
  1. 21
      main_tk.py

21
main_tk.py

@ -3,6 +3,7 @@ import tkinter as tk
from tkinter import messagebox
class Machine_a_sous:
"""classe principale gérant le casino"""
def __init__(self):
self.argent = 0
self.nombres = []
@ -28,7 +29,6 @@ class Machine_a_sous:
return self.nombres
def gain(self):
print('hello')
print(self.mise, self.argent, self.bank)
print(self.nombres)
if len(set(self.nombres)) == 1 and 9 in self.nombres:
@ -48,12 +48,14 @@ class Machine_a_sous:
return self.gains
def affiche(self):
"""affiche le les trois rouleaux"""
print(f"premier rouleau : {self.nombres[0]},deuxième rouleaux : {self.nombres[1]},troisième rouleaux {self.nombres[2]}")
print(f"Vous avez gagné {self.gains} jetons")
print(f"\nIl vous reste {self.argent} jetons, et il reste {self.bank} jetons dans le bac de la machine.\n")
class Game_gui:
"""Interface graphique du casino"""
def __init__(self):
self.bg_color = '#777777'
self.fen = tk.Tk()
@ -61,11 +63,14 @@ class Game_gui:
self.fen.title('Bellagio')
self.fen.config(background=self.bg_color)
self.name_frame = ['banque', 'mise', 'argent']
# liste des cadres des infos
self.frame = [tk.LabelFrame(self.fen, background=self.bg_color, labelanchor='n', text=i) for i in self.name_frame]
self.name_info = [machine.bank, 0, machine.argent]
#liste des infos
self.info = [tk.Label(self.frame[i], background=self.bg_color, text=self.name_info[i], width=8, font=('Helvetica', 36, 'bold')) for i in range(3)]
self.column = [1, 2, 5]
# grid des cadres
for i in range(3):
if i != 1:
self.frame[i].grid(column=self.column[i], row=1, padx=24)
@ -77,14 +82,15 @@ class Game_gui:
self.entry_mise.insert(0, 'Entrez votre mise entre 0 et 100')
self.entry_mise.grid(columnspan=3, column=2, row=3)
self.rouleaus = [tk.Label(self.fen, width=4, pady=150, text=0, background=self.bg_color, fg='#db0000', font=('Helvetica', 36, 'bold')) for i in range(3)]
self.rouleaux = [tk.Label(self.fen, width=4, pady=150, text=0, background=self.bg_color, fg='#db0000', font=('Helvetica', 36, 'bold')) for i in range(3)]
for i in range(3):
self.rouleaus[i].grid(column=i+2, row=2)
self.rouleaux[i].grid(column=i+2, row=2)
self.fen.bind('<Return>', self.play)
self.fen.mainloop()
def play(self, event):
"""méthode qui gère le fonctionnement du jeu grace à la classe Machine_à_sous"""
machine.mise = int(self.entry_mise.get())
mise_state = machine.saisie()
if mise_state == "quit":
@ -99,13 +105,15 @@ class Game_gui:
self.fen.destroy()
def maj_graph(self):
"""Rafraîchi l'affichage des infos et rouleaux"""
for rouleau in range(3):
self.rouleaus[rouleau].config(text=machine.nombres[rouleau])
self.rouleaux[rouleau].config(text=machine.nombres[rouleau])
for i in range(len(self.info)):
self.info[i].config(text=self.name_info[i])
class Menu_gui:
"""Interface graphique du menu (règles et argent)"""
def __init__(self):
self.fen = tk.Tk()
self.bg_color = '#777777'
@ -128,12 +136,13 @@ class Menu_gui:
self.fen.mainloop()
def get_argent(self, event):
"""récupère l'argent saisie par l'utilisateur"""
machine.argent = int(self.entry_mise.get())
self.fen.destroy()
class Fdj:
# Test pour savoir si le joueur à le droit de rentrer dans le casino
"""#Test pour savoir si le joueur est majeur et à le droit de rentrer dans le casino"""
def __init__(self):
self.est_majeur = False
@ -155,7 +164,7 @@ class Fdj:
self.fen.mainloop()
def get_rep(self, event):
# indique si le joueur est majeur
"""indique si le joueur est majeur"""
if self.entry.get() == "oui":
self.est_majeur = True
self.fen.destroy()

Loading…
Cancel
Save