Menu
CoddyTech

Un bloque que cae

Lección 10 de 40 del curso Crea juegos con Pygame de Coddy.

Algo que cae es algo cuya y aumenta en cada fotograma. Convierte también el bloque en un Rect y suma a su y en cada iteración del bucle:

block = pygame.Rect(220, 0, 20, 20)

while running:
    # eventos y teclas
    block.y += 3
    # rellenar, dibujar

A 60 fotogramas por segundo, 3 píxeles por fotograma equivalen a 180 píxeles por segundo. La ventana tiene 360 píxeles de alto, así que el bloque tarda dos segundos en llegar al fondo.

El bloque sigue cayendo después de salir de la ventana. Todavía nada lo detiene; la siguiente lección hará que vuelva.

challenge icon

Desafío

Fácil
  1. Debajo de la cesta, crea block = pygame.Rect(220, 0, 20, 20).
  2. En el bucle, después de que se mueva la cesta, suma 3 a block.y.
  3. Dibuja el bloque en rojo (235, 80, 80) después de la cesta.

Pruébalo tú mismo

import pygame

pygame.init()
screen = pygame.display.set_mode((480, 360))
pygame.display.set_caption("Catch the Blocks")
clock = pygame.time.Clock()

basket = pygame.Rect(200, 330, 80, 16)

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

    keys = pygame.key.get_pressed()
    if keys[pygame.K_LEFT]:
        basket.x -= 8
    if keys[pygame.K_RIGHT]:
        basket.x += 8
    basket.clamp_ip(screen.get_rect())

    screen.fill((30, 30, 46))
    pygame.draw.rect(screen, (80, 160, 255), basket)
    pygame.display.flip()
    clock.tick(60)

pygame.quit()
quiz iconPonte a prueba

Esta lección incluye un breve cuestionario. Empieza la lección para responderlo y registrar tu progreso.

Todas las lecciones de Crea juegos con Pygame

Practica por tu cuenta: Playground de Pygame