En este tutorial, aprenderá a mostrar y actualizar las puntuaciones de los juegos en Pygame, una popular biblioteca de Python para el desarrollo de juegos. Al final, podrá crear un juego de salto simple y mostrar la puntuación del jugador en la pantalla a medida que avanza. El juego rastrea la entrada del teclado para que puedas mover al jugador hacia la izquierda y hacia la derecha usando las teclas de flecha.
Crear un juego simple
Antes de que pueda mostrar y actualizar las puntuaciones en Pygame, primero deberá crear un juego con el que trabajar. En este tutorial, creará un juego simple en el que un jugador puede moverse hacia la izquierda o hacia la derecha. Pero antes de eso, deberías haber pip instalado en su dispositivo. Después de instalar pip, ejecute el siguiente comando para instalar el módulo pygame:
pepita instalar Pygame
Para comenzar, importa los módulos necesarios y configura la estructura básica del juego:
importar pygame, sistema
pygame.init()# Configurar la ventana
pantalla = pygame.display.set_mode((750, 450))# Configurar el reloj del juego
reloj = pygame.hora. Reloj()# Configurar el personaje del jugador
jugador = pygame. Rect(100, 200, 50, 50)# Establecer el obstáculo
obstáculo = pygame. Rect(200, 200, 50, 50)# Configurar el bucle del juego
mientrasVerdadero:
# Manejar eventos
para evento en pygame.event.get():
si evento.tipo == pygame. ABANDONAR:
pygame.quit()
sys.exit()si evento.tipo == pygame. TECLADO:
si evento.clave == pygame. K_IZQUIERDA:
jugador.x -= 10
elif evento.clave == pygame. K_DERECHO:
jugador.x += 10
# Actualizar el estado del juego
# Dibuja el juego
pantalla.llenar((0, 0, 0))
pygame.draw.rect (pantalla, (255, 0, 0), jugador)
pygame.draw.rect (pantalla, (0, 255, 0), obstáculo)
# Actualizar la pantalla
pygame.display.flip()
# Limitar la velocidad de fotogramas
reloj.tick(60)
Con este código esqueleto, tu juego básico es jugable. Presiona hacia la izquierda o hacia la derecha para mover el personaje del jugador, representado por el cuadrado rojo.
Visualización y actualización de la puntuación del juego
Ahora que tiene un juego básico configurado, agregue un sistema de puntuación y muestre la puntuación en la pantalla.
Configuración de Pygame para la representación de texto
Para mostrar texto en Pygame, primero debemos importar los módulos necesarios e inicializar el módulo de fuente. Para hacer esto, use el siguiente código en la parte superior de su secuencia de comandos:
importar Pygame
importar sistema
importar sistema operativo
pygame.init()
pygame.fuente.init()
El módulo pygame.font le permite usar las capacidades de representación de texto de Pygame, y la función pygame.init() inicializa el módulo de fuentes.
Creación de un sistema de puntuación básico
A continuación, cree un sistema de puntuación básico para su juego. Para hacerlo, declare e inicialice dos variables: score y score_increment. La variable de puntuación hará un seguimiento de la puntuación actual del jugador, y la variable score_increment especificará cuánto debe aumentar la puntuación cada vez que el jugador toca un obstáculo.
Agregue el siguiente código en la parte superior de su secuencia de comandos, debajo de las importaciones:
puntuación = 0
score_increment = 10
A continuación, actualice la puntuación a medida que avanza el juego. En el bucle del juego, puedes comprobar si el personaje del jugador está chocando con el obstáculo. Si lo son, incremente la puntuación en la cantidad especificada en la variable score_increment.
Actualice el bucle del juego para incluir el siguiente código:
# Actualizar el estado del juego
si player.colliderect (obstáculo):
puntuación += incremento_puntuación
Este código verifica si el personaje del jugador está chocando con el obstáculo. Si lo son, incrementa la puntuación en la cantidad especificada.
Visualización de la partitura en la pantalla con el módulo de fuentes
Ahora que tenemos un sistema de puntuación básico, mostremos la puntuación en la pantalla usando el módulo de fuente.
Primero, configuremos el objeto de fuente agregando el siguiente código en la parte superior del bucle del juego:
# Configurar el objeto de fuente
fuente = pygame.fuente. Fuente(Ninguno, 36)
Este código crea un objeto de fuente con un tamaño de 36 píxeles y sin una familia de fuentes especificada. Puede personalizar la fuente y el tamaño de fuente especificando un archivo y tamaño de fuente diferente en la función Fuente().
A continuación, dibujemos la partitura en la pantalla. Agrega el siguiente código al bucle del juego, después de que hayas actualizado el estado del juego y hayas llenado la pantalla:
# Dibuja la partitura en la pantalla
score_text = fuente.render(Puntuación f: {puntaje}', Verdadero, (255, 255, 255))
pantalla.blit (puntuación_texto, (10, 10))
Este código utiliza el método render() del objeto de fuente para crear una superficie de texto que contiene la partitura y, a continuación, proyecta (dibuja) la superficie de texto en la pantalla en la posición (10, 10).
Personalización de la apariencia del texto de la partitura
Finalmente, personalice la apariencia del texto de la partitura eligiendo una fuente y tamaño de fuente y cambiando el color del texto.
Para elegir una fuente y un tamaño de fuente específicos, pase el archivo de fuente y el tamaño como argumentos a la función Font():
fuente = pygame.fuente. Fuente('arial.ttf', 48)
Tu puedes fácilmente descargar diferentes archivos de fuentes desde Internet. Después de la descarga, simplemente coloque el archivo de fuente en la raíz de su directorio de trabajo.
Para cambiar el color del texto, pasa una tupla de color como tercer argumento al método render():
score_text = fuente.render(Puntuación f: {puntaje}', Verdadero, (0, 255, 0))
¡Y eso es! Con estos cambios, ahora debería tener un sistema de puntaje de juego completamente funcional que muestre el puntaje en la pantalla y lo actualice a medida que el jugador avanza en el juego. Puede personalizar aún más la apariencia del texto de la partitura experimentando con diferentes familias de fuentes, tamaños y colores.
Seguimiento de puntuación en el juego
A continuación se muestra el código de trabajo completo, también puede encontrar el código en este GitHub repositorio
importar Pygame
importar sistema operativopygame.init()
pygame.fuente.init()puntuación = 0
score_increment = 10# Configurar la ventana
pantalla = pygame.display.set_mode((750, 450))# Configurar el reloj del juego
reloj = pygame.hora. Reloj()# Configurar el personaje del jugador
jugador = pygame. Rect(100, 200, 50, 50)# Establecer el obstáculo
obstáculo = pygame. Rect(200, 200, 50, 50)# Configurar el bucle del juego
mientrasVerdadero:
fuente = pygame.fuente. Fuente(Ninguno, 36)
# Manejar eventos
para evento en pygame.event.get():
si evento.tipo == pygame. ABANDONAR:
pygame.quit()
sys.exit()
si evento.tipo == pygame. TECLADO:
si evento.clave == pygame. K_IZQUIERDA:
jugador.x -= 10
elif evento.clave == pygame. K_DERECHO:
jugador.x += 10
# Actualizar el estado del juego
si player.colliderect (obstáculo):
puntuación += incremento_puntuación
# Dibuja el juego
pantalla.llenar((0, 0, 0))
pygame.draw.rect (pantalla, (255, 0, 0), jugador)
pygame.draw.rect (pantalla, (0, 255, 0), obstáculo)
# Dibuja la partitura en la pantalla
score_text = fuente.render(Puntuación f: {puntaje}', Verdadero, (255, 255, 255))
pantalla.blit (puntuación_texto, (10, 10))
# Actualizar la pantalla
pygame.display.flip()
# Limitar la velocidad de fotogramas
reloj.tick(60)
Este código crea una ventana con un tamaño de 750x450 píxeles, un personaje de jugador y un obstáculo. Utiliza un bucle de juego para manejar eventos, actualizar el estado y dibujar el juego en la pantalla. También incluye un sistema de puntuación que incrementa la puntuación en diez puntos cada vez que el personaje del jugador choca con el obstáculo, y un objeto de fuente y código de representación de texto para mostrar la puntuación en la pantalla.
En la sección de manejo de eventos, el código también incluye la funcionalidad para mover el personaje del jugador hacia la izquierda y hacia la derecha usando las teclas de flecha.
El bucle del juego incluye un código para actualizar la pantalla y limitar la velocidad de fotogramas a 60 FPS, lo que garantiza que el juego funcione sin problemas.
En general, este código proporciona un ejemplo básico de cómo mostrar y actualizar las puntuaciones de los juegos en Pygame, y puede personalizarse y ampliarse aún más para crear juegos más complejos y atractivos.
Crea diferentes juegos usando Pygame
Pygame es una biblioteca poderosa y fácil de usar para crear juegos en Python. Con su amplio conjunto de características y capacidades, puede crear una amplia gama de juegos, desde simples juegos de salto y plataformas hasta juegos más complejos e inmersivos.
Ya sea que sea un principiante o un desarrollador de juegos experimentado, Pygame es una excelente opción para crear juegos atractivos y divertidos.