Lectores como tú ayudan a apoyar a MUO. Cuando realiza una compra utilizando enlaces en nuestro sitio, podemos ganar una comisión de afiliado. Leer más.

Battlefield2, World of Tanks, The Sims4 y Freedom Force son algunos de los miles de increíbles juegos que se desarrollaron con Python.

Tkinter, la interfaz estándar de Python para el kit de herramientas Tk GUI, es un módulo poderoso que hace que la creación de interfaces gráficas de usuario sea fácil y divertida. Utilice este módulo para desarrollar un juego de colores alucinante. Además, aprenda a usar el módulo en el camino.

¿Qué es el juego de colores?

En Color Game, el programa muestra el nombre de un color en la pantalla pero en un color de fuente diferente. Por ejemplo, muestra la palabra Amarillo usando un color de fuente rojo y el jugador tiene que escribir el color del texto.

Este desajuste de información junto con el temporizador crea una multitud de confusión y crea una experiencia de juego entretenida.

El módulo Tkinter y Random

instagram viewer

Para construir el Juego de colores, usarás el tkinter módulo y el aleatorio módulo. Tkinter es un módulo GUI multiplataforma, simple y fácil de usar que puede usar para crear interfaces gráficas de usuario rápidamente.

Tiene algunas herramientas útiles, como los widgets de etiquetas y entradas, y administradores de diseño, como el paquete, la cuadrícula y el lugar. Las funciones proporcionadas son bastante sencillas, lo que facilita a los programadores novatos diseñar aplicaciones sin mucho esfuerzo. Para instalar tkinter en su sistema, ejecute el siguiente comando en la terminal:

pip instalar tkinter

El módulo aleatorio es una biblioteca integrada con la que puede generar opciones aleatorias. Utilizando este módulo, puedes desarrollar juegos de cricket de mano, juegos de adivinanzas de números, juegos mágicos de ocho bolas, generadores de contraseñas aleatorias, y muchos más.

Cómo construir un juego de colores usando Python

El código fuente del Color Game está disponible en un repositorio GitHub y es gratis para su uso bajo la Licencia MIT.

Comience importando el tkinter y el módulo aleatorio. Guarde el nombre de los colores como una lista de cadenas e inicialice el puntaje variable a 0 y tiempo restante a 60

de tkinter importar *
importar aleatorio

colores = ['Rojo', 'Verde', 'Azul', 'Negro', 'Rosa', 'Blanco', 'Púrpura', 'Amarillo', 'Marrón']
puntuación = 0
tiempo_restante = 60

Defina una función llamada comenzarJuego() eso toma evento como argumento de entrada. La función ejecuta dos tareas. En primer lugar, comprueba si el tiempo restante es igual a 60 Si es así, llama y ejecuta el cuenta regresiva() función. En segundo lugar, llama a la siguientecolor() función que mezcla aleatoriamente y muestra el color y la puntuación cuando el juego está en progreso.

definitivamentecomenzar el juego(evento):
si tiempo_restante == 60:
cuenta regresiva()
siguienteColor()

Defina una función llamada siguienteColor() y hacer referencia a las variables globalmente. Si el tiempo restante es mayor que 0, fije el foco en el campo de entrada usando el focus_set() método en la etiqueta de entrada (almacenado en variable mi) definido en la última mitad del código.

Utilizar el conseguir() método para recuperar el texto actual de la entrada como una cadena y convertirlo en minúsculas para evitar la discrepancia entre mayúsculas y minúsculas. Si esto es igual al color que se muestra en la pantalla, aumente la puntuación en uno. Utilizar el borrar() función desde el 0 hasta el último índice en el widget de entrada para borrar el contenido.

definitivamentesiguienteColor():
global puntaje
global tiempo restante
si tiempo_restante > 0:
e.focus_set()
si e.get().lower() == colores[1].más bajo():
puntuación += 1
e.eliminar(0, FIN)

Utilizar el barajar() función para reordenar los elementos de la lista y mostrar la etiqueta de color con el texto como el primer color de la lista y el color de fuente como el segundo color de la lista. Utilizar el configuración() función en partituraEtiqueta (que solicita presionar Enter) para mostrar la puntuación mientras el juego está en sesión.

 random.shuffle (colores)
label.config (fg=str (colores[1]), texto=cadena (colores[0]))
scoreLabel.config (texto="Puntaje: " + str (puntuación))

Defina una función llamada cuenta regresiva() que hace referencia a la variable de tiempo restante y la decrementa en uno. Utilizar el configuración() función en el etiqueta de tiempo para mostrar el tiempo restante en la pantalla y el después() función de devolución de llamada cuenta regresiva función después de un retraso de 1000 milisegundos o un segundo.

definitivamentecuenta regresiva():
global tiempo restante
si tiempo_restante > 0:
tiempo_restante -= 1
timeLabel.config (texto="Tiempo restante: " + str (tiempo_restante))
etiqueta de tiempo.después(1000, cuenta regresiva)

Inicialice la instancia de tkinter y muestre la ventana raíz. Establezca el título, las dimensiones en píxeles y el color de fondo de la ventana.

raíz = Tk()
raíz.título("Juego de colores con un toque")
raíz.geometría("750x450")
root.configure (fondo='Naranja')

Utilizar el Etiqueta widget para instruir al jugador sobre las instrucciones del juego. Acepta la ventana principal en la que lo colocaría. El texto debe mostrar el tipo y tamaño de fuente junto con el color de fondo de la etiqueta. Utilizar el embalar() función para organizar el widget de etiqueta en bloques antes de colocarlos en el widget principal.

Del mismo modo, defina la etiqueta de puntuación para indicarle al usuario que presione Ingresar para comenzar el juego, así como una etiqueta de tiempo para mostrar el tiempo restante. Asegúrese de que todas las etiquetas tengan un color de fondo naranja, para que se mezclen con el fondo. Defina una etiqueta vacía que contendrá los nombres de los colores en el siguienteColor() función.

instrucciones = Etiqueta (raíz, texto="Escribe el color de la palabra no el texto ;)", fuente=('Arial', 24), bg="naranja")
instrucciones.paquete()
scoreLabel = Etiqueta (raíz, texto="Presiona Enter para comenzar", fuente=('Arial', 24), bg="naranja")
scoreLabel.pack()
timeLabel = Etiqueta (raíz, texto="Tiempo restante: " + str (tiempo_restante), fuente=('Arial', 24), bg="naranja")
etiqueta de tiempo.pack()
etiqueta = Etiqueta (raíz, fuente=('Arial', 90), bg="naranja")

Como se mencionó anteriormente, use el widget de entrada para capturar la respuesta del jugador. Un paso importante es vincular la tecla Intro con un evento en la ventana de tkinter para que cuando el jugador la presione, se ejecute una función en particular.

Para lograr esto, pasa el llave y la comenzarJuego() funcionan como parámetros para el unir() función. Además, utilice el embalar() y focus_set() métodos para organizar y establecer el enfoque en la etiqueta de entrada una vez que presione la tecla Intro.

e = Entrada (fuente=20)
root.bind('', comenzar el juego)
e.paquete()
e.focus_set()

El bucle principal() La función le dice a Python que ejecute el ciclo de eventos tkinter y escuche los eventos (como presionar un botón) hasta que cierre la ventana.

raíz.mainloop()

Reúna todo el código y tendrá el Juego de colores con un toque diferente listo para jugar al alcance de su mano.

Salida del juego de colores usando Python

Al ejecutar el programa Color Game, aparece una ventana en la pantalla. Al presionar Enter, comienza la cuenta regresiva y el jugador debe comenzar a escribir el color de la palabra. Por cada respuesta correcta, la puntuación aumenta en uno y, al final, muestra la puntuación final.

Desarrollo de juegos usando Python

Python es un lenguaje fantástico para el desarrollo de juegos. El lenguaje no solo es fácil de entender y usar, sino que también permite a los desarrolladores de juegos de todos los niveles de experiencia crear impresionantes mundos de juego que son interesantes y entretenidos.

Además, los creadores tienen una amplia gama de opciones a la hora de dar vida a las ideas, gracias a las diversas plataformas de desarrollo de juegos disponibles en el mercado, como PyGame o Kivy.