Ejemplo n.º 1
0
def voltaMenu():
    global state,tabuleiro

    cnv = draw.criaTopCnv("c")
    top = draw.criaTopCnv("t")
    cnv.destroy()
    cnv = draw.criaTopCnv("nc")
    tabuleiro = [0 for x in tabuleiro]
    draw.desenhaMenu()
Ejemplo n.º 2
0
def atualizaProgresso():
    global numTentativaAtual, botaoProsseguir, botaoSalvarJogo, tentativaAtual
    cnv = draw.criaTopCnv("c")
    dicas = []
    dicas = gameRules.checaResposta(tentativaAtual)
    draw.desenhaPinos(dicas,numTentativaAtual)
    botaoProsseguir.configure(state="disabled")

    if (False not in dicas and len(dicas) == 4):
        botaoSalvarJogo.configure(state="disabled") 
        popup_window("vitoria")
        changeState("Fim")
        return

    salvaTentativaAtual()

    numTentativaAtual += 1
    
    if (numTentativaAtual == (numCores-2) * 2):
        botaoSalvarJogo.configure(state = "disabled") 
        popup_window("derrota")
        changeState("Fim")
        return

    tentativaAtual = [0 for x in tentativaAtual]
Ejemplo n.º 3
0
def clickEvent(event):
    global numTentativaAtual, corSelecionada

    cnv = draw.criaTopCnv("c")

    if (checkState() != "Jogo"):
        return

    cId = event.widget.find_closest(event.x, event.y)

    init = (numCores + 1) + (numTentativaAtual * (numCores - 2 + 1))  #(numCores+2) * numTentativaAtual

    if(cId[0] > 0 and cId[0] <= numCores): #
        corSelecionada = cnv.itemcget(cId[0], "fill")

        for i in range(1, numCores+1):
            if cnv.itemcget(i,"outline")=="gold":
               cnv.itemconfigure(i, outline = "black") 
        cnv.itemconfigure(cId[0], outline = "gold")
        cnv.dtag(numCores, corSelecionada)
        cnv.addtag_withtag(retCor(cId[0]), numCores)
        return
       
    #Verifica se o id do objeto clicado esta na fileira correspondente a tentativa
    if cId[0] >= init and cId[0] <= init + numCores - 3 and corSelecionada != "gray":
        cnv.itemconfigure(cId[0], fill = corSelecionada)
        tentativaAtual[cId[0]-init] = retCor(corSelecionada)
        controleBotoesJogo(True, tentativaAtual)

    return
Ejemplo n.º 4
0
def keyEvent(event):
    cnv = draw.criaTopCnv("c")
    if len(event.char) == 1 and ord(event.char) == 27 and checkState() == "Jogo":
        for i in range(1,numCores+1):
            if cnv.itemcget(i,"outline") == "gold":
               cnv.itemconfigure(i, outline = "black") 
        cnv.dtag(numCores + 1, cnv.gettags(numCores + 1))
        cnv.addtag_withtag("gray", numCores + 1)
    return
Ejemplo n.º 5
0
def comecaJogo(esc):  
    global numTentativaAtual, numCores, corSelecionada, tentativaAtual, senha, tabuleiro

    corSelecionada = "gray"

    cnv = draw.criaTopCnv("c")
    top = draw.criaTopCnv("t")

    numCores = gameRules.defineDificuldade(esc)

    tentativaAtual = [0 for x in range(0, numCores - 2)]

    if(checkState() != "Salvo"):
        senha = gameRules.geraSenha()
        tabuleiro = gameRules.tabuleiroVazio()
        numTentativaAtual = 0

    draw.limpaMenu()
    draw.desenhaPalheta(numCores)
    draw.desenhaTabuleiro(tabuleiro)
Ejemplo n.º 6
0
def controleBotoesJogo(existe, tent):
    global botaoProsseguir, botaoSalvarJogo, senha, tabuleiro, numTentativaAtual

    cnv = draw.criaTopCnv("c")

    if (existe == False):
        botaoProsseguir = tk.Button(cnv, text='Prosseguir', font='Arial 10 bold', height=4, width=15, border=5, command=atualizaProgresso,state="disabled")
        botaoProsseguir.place(x=785, y=450)
        botaoSalvarJogo = tk.Button(cnv, text='Salvar Partida', font='Arial 10 bold', height = 4, width = 15, border=5, command=lambda: salvaJogo())
        botaoSalvarJogo.place(x=785, y=350)

    elif (existe == True):
        if(0 not in tent):
            botaoProsseguir.configure(state= "normal") 
Ejemplo n.º 7
0
from view import draw
import tkinter as tk

# André C. de Andrade - 2012498
# Laura M. da Glória Luz -2010709
# Paulo de Tarso Fernandes - 2011077

# Criação da janela principal

draw.criaTopCnv(0)
top = draw.criaTopCnv("t")
cnv = draw.criaTopCnv("c")

# Criação de um canvas na janela principal

top.title('Master Mind')

draw.desenhaMenu()

cnv.pack()

top.mainloop()