Menu
CoddyTech

Palabras en pantalla

Parte de la sección Python en una ventana de juego del Journey de Pygame de Coddy. Lección 8 de 32.

Pulsa Run: la palabra Comet aparece en la esquina superior izquierda. Tres líneas la colocan allí:

font = pygame.font.Font(None, 36)

    text = font.render("Comet", True, (230, 230, 240))
    screen.blit(text, (20, 20))

La fuente se crea una sola vez, en la parte de configuración: la fuente propia de pygame con tamaño 36. render convierte una cadena en una imagen de color (True suaviza sus bordes), y screen.blit coloca esa imagen en la ventana, con la esquina superior izquierda en (20, 20). Todos los juegos que muestran texto usan estas tres líneas.

Para mostrar el valor de una variable, escribe una cadena f: una f antes de la comilla de apertura y el nombre entre llaves:

f"Comet x: {comet_x}"

Cuando comet_x contiene 58, esto es la cadena Comet x: 58. Sin la f, las llaves y el nombre se muestran tal como están escritos.

challenge icon

Desafío

Intermedio

Haz que la etiqueta muestre dónde está el cometa: cambia "Comet" por f"Comet x: {comet_x}". El número aumenta a medida que vuela el cometa.

Pruébalo tú mismo

import pygame

pygame.init()
screen = pygame.display.set_mode((640, 480))
pygame.display.set_caption("Night Sky")
clock = pygame.time.Clock()

# Prepara todo aquí, antes del bucle del juego.
moon_x = 160
moon_y = 120
comet_x = 40
comet_y = 200
font = pygame.font.Font(None, 36)

running = True
while running:
    for event in pygame.event.get():
        if event.type == pygame.QUIT:
            running = False

    # Haz los cambios aquí, una vez por fotograma.
    comet_x = comet_x + 2

    screen.fill((20, 24, 48))
    # Dibuja aquí, después de rellenar la pantalla.
    pygame.draw.circle(screen, (240, 230, 160), (moon_x, moon_y), 50)
    pygame.draw.circle(screen, (120, 200, 255), (comet_x, comet_y), 8)
    text = font.render("Comet", True, (230, 230, 240))
    screen.blit(text, (20, 20))

    pygame.display.flip()
    clock.tick(60)

pygame.quit()

Todas las lecciones de Python en una ventana de juego

Practica por tu cuenta: Playground de Pygame