Jogo de cores usando Tkinter em Python
Pré-requisito: Python GUI Tkinter
O TKinter é amplamente utilizado para o desenvolvimento de aplicativos GUI. Junto com os aplicativos, também podemos usar a GUI do Tkinter para desenvolver jogos.
Vamos tentar fazer um jogo usando o Tkinter. Neste jogo, o jogador deve inserir a cor da palavra que aparece na tela e, portanto, a pontuação aumenta em um, o tempo total para jogar este jogo é de 30 segundos. As cores usadas neste jogo são Vermelho, Azul, Verde, Rosa, Preto, Amarelo, Laranja, Branco, Roxo e Marrom. A interface exibirá o nome de cores diferentes em cores diferentes. O jogador deve identificar a cor e inserir o nome correto da cor para ganhar o jogo.
Abaixo está a implementação do jogo acima:
import
tkinter
import
random
colours
=
[
'Red'
,
'Blue'
,
'Green'
,
'Pink'
,
'Black'
,
'Yellow'
,
'Orange'
,
'White'
,
'Purple'
,
'Brown'
]
score
=
0
timeleft
=
30
def
startGame(event):
if
timeleft
=
=
30
:
countdown()
nextColour()
def
nextColour():
global
score
global
timeleft
if
timeleft >
0
:
e.focus_set()
if
e.get().lower()
=
=
colours[
1
].lower():
score
+
=
1
e.delete(
0
, tkinter.END)
random.shuffle(colours)
label.config(fg
=
str
(colours[
1
]), text
=
str
(colours[
0
]))
scoreLabel.config(text
=
"Score: "
+
str
(score))
def
countdown():
global
timeleft
if
timeleft >
0
:
timeleft
-
=
1
timeLabel.config(text
=
"Time left: "
+
str
(timeleft))
timeLabel.after(
1000
, countdown)
root
=
tkinter.Tk()
root.title(
"COLORGAME"
)
root.geometry(
"375x200"
)
instructions
=
tkinter.Label(root, text
=
"Type in the colour"
"of the words, and not the word text!"
,
font
=
(
'Helvetica'
,
12
))
instructions.pack()
scoreLabel
=
tkinter.Label(root, text
=
"Press enter to start"
,
font
=
(
'Helvetica'
,
12
))
scoreLabel.pack()
timeLabel
=
tkinter.Label(root, text
=
"Time left: "
+
str
(timeleft), font
=
(
'Helvetica'
,
12
))
timeLabel.pack()
label
=
tkinter.Label(root, font
=
(
'Helvetica'
,
60
))
label.pack()
e
=
tkinter.Entry(root)
root.bind(
'<Return>'
, startGame)
e.pack()
e.focus_set()
root.mainloop()
Resultado :
Nota: O código acima pode não funcionar no IDE online por causa do módulo TKinter.
As postagens do blog Acervo Lima te ajudaram? Nos ajude a manter o blog no ar!
Faça uma doação para manter o blog funcionando.
70% das doações são no valor de R$ 5,00...
Diógenes Lima da Silva