Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- import os
- from random import shuffle
- from guizero import App, Box, Picture, PushButton, Text
- # importa la función randint
- from random import randint
- # Establece la ruta a la carpeta del emoji en tu computadora.
- emojis_dir = "emojis"
- # Crea una lista de las ubicaciones de las imagenes de los emojis.
- emojis = [os.path.join(emojis_dir, f) for f in os.listdir(
- emojis_dir) if os.path.isfile(os.path.join(emojis_dir, f))]
- # Baraja los emojis
- shuffle(emojis)
- def coincide_emoji(coincide):
- if coincide:
- resultado.value = "Correcto"
- else:
- resultado.value = "Falso"
- iniciar_ronda()
- def iniciar_ronda():
- # Por cada una de las imagenes en la lista.
- for imagen in imagenes:
- # hace que la imagen sea un emoji aleatorio.
- imagen.image = emojis.pop()
- for boton in botones:
- # hace que la imagen dentro del botón sea un emoji aleatorio.
- boton.image = emojis.pop()
- # Establece el comando al que se llamará y se le pasa el valor de
- # False ya que ninguno de estos emojis será el coincidente.
- boton.update_command(coincide_emoji, [False])
- # escoge un nuevo emoji
- emoji_coincidente = emojis.pop()
- # selecciona un número al azar entre el 0 y el 8
- imagen_aleatoria = randint(0,8)
- # change the image feature of the Picture with this index in the list of pictures to the new emoji
- imagenes[imagen_aleatoria].image = emoji_coincidente
- boton_aleatorio = randint(0,8)
- # change the image feature of the PushButton with this index in the list of buttons to the new emoji
- botones[boton_aleatorio].image = emoji_coincidente
- # Establece el comando al que se llamara, y le pasa el valor de True ya que este es el
- # emoji coincidente.
- botones[boton_aleatorio].update_command(coincide_emoji, [True])
- def contador():
- temporizador.value = int(temporizador.value) - 1
- if int(temporizador.value) == 0:
- # resetea el temporizador
- temporizador.value = 30
- # Inicia la apliación
- raiz = App("Juego de emojis")
- resultado = Text(raiz)
- # Crea una caja para albergar a las dos cuadriculas.
- caja_del_juego = Box(raiz)
- # Crea una caja que será el contenedor de las cuadrículas
- pictures_box = Box(caja_del_juego, layout="grid")
- # Crea una caja que será el contendor de los botones
- buttons_box = Box(caja_del_juego, layout="grid")
- # Crea una lista vacia a la cual se añadirán las imagenes de los emojis.
- # Primero crearemos los objetos, los métemos en la lista y luego le añadimos
- # las imagenes.
- imagenes = []
- botones = []
- for x in range(0, 3):
- for y in range(0, 3):
- # Pone las imagenes en la lista.
- imagen = Picture(pictures_box, grid=[x, y])
- imagenes.append(imagen)
- # Pone los botones en la lista.
- boton = PushButton(buttons_box, grid=[x,y])
- botones.append(boton)
- # Añadir en las caracteristicas_adicionales
- caracteristicas_adicionales = Box(raiz)
- temporizador = Text(caracteristicas_adicionales, text="Preparado.")
- iniciar_ronda()
- # inicia el temporizador
- temporizador.value = 30
- temporizador.repeat(1000, contador)
- raiz.display()
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement