import random
from tkinter import *
premios_iniciais = ["Carro", "Viagem", "TV", "Computador", "Bicicleta"]
premios_restantes = premios_iniciais.copy()
botoes = []
def revelar_premio(escolha):
global premios_restantes
if len(premios_restantes) == 0:
resultado_texto.config(text="Todos os prêmios já foram revelados!")
return
premio = premios_restantes.pop(0)
resultado_texto.config(text=f"Você escolheu a porta {escolha}. E seu prémio é... {premio}!")
botoes[escolha - 1].config(state=DISABLED)
def limpar():
resultado_texto.config(text="")
def resetar_premios():
global premios_restantes
premios_restantes = premios_iniciais.copy()
random.shuffle(premios_restantes) # Embaralha a lista de prêmios para nova distribuição
resultado_texto.config(text="Lista de prêmios resetada!")
for botao in botoes:
botao.config(state=NORMAL)
root = Tk()
root.geometry("500x500")
root.resizable(0, 0)
root.config(bg="#103030")
root.title("Jogo de Prémio")
titulo = Label(root, text="Jogo de Prémio", font=("Arial", 35, "bold"), bg="#103030", fg="#49e3e3")
titulo.place(relx=0.15, rely=0.05)
texto_sub1 = Label(root, text="Escolha uma opção:", font=("Arial", 20, "bold"), bg="#103030", fg="#49e3e3")
texto_sub1.place(relx=0.1, rely=0.2)
for i in range(1, 6):
botao = Button(root, text=str(i), bd=2, bg='#107db2', fg='white', font=('verdana', 12, 'bold'),
command=lambda i=i: revelar_premio(i))
botao.place(relx=0.03 + (i - 1) * 0.18, rely=0.3, relwidth=0.15, relheight=0.1)
botoes.append(botao)
but_limpar = Button(root, text="Limpar", bd=2, bg='#107db2', fg='white', font=('verdana', 12, 'bold'), command=limpar)
but_limpar.place(relx=0.4, rely=0.5, relwidth=0.25, relheight=0.1)
but_resetar = Button(root, text="Novo Sorteio", bd=2, bg='#107db2', fg='white', font=('verdana', 12, 'bold'),
command=resetar_premios)
but_resetar.place(relx=0.1, rely=0.5, relwidth=0.25, relheight=0.1)
but_sair = Button(root, text="Sair", bd=2, bg='#107db2', fg='white', font=('verdana', 12, 'bold'), command=root.destroy)
but_sair.place(relx=0.7, rely=0.5, relwidth=0.25, relheight=0.1)
resultado_texto = Label(root, font=("Arial", 12, "bold"), bg="#cfe2f3")
resultado_texto.place(relx=0.05, rely=0.68, relwidth=0.9, relheight=0.3)
resetar_premios()
root.mainloop()