Menu
CoddyTech

Correr a toda velocidad

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

Una variable puede cambiar en cada fotograma, dependiendo de lo que haga el jugador. Aquí, la velocidad depende de si se mantiene presionada la tecla Espacio.

keys = pygame.key.get_pressed()
speed = 4
if keys[pygame.K_SPACE]:
    speed = 8

Cada fotograma empieza con la velocidad normal, 4. Solo un fotograma en el que se mantenga presionada la tecla Espacio la aumenta a 8. Suelta la tecla Espacio y el siguiente fotograma vuelve a 4.

Establece primero el valor normal y después el especial. En el orden contrario, la segunda línea siempre prevalece y la tecla Espacio no hace nada.

challenge icon

Desafío

Fácil

Haz que el jugador corra:

  1. Elimina speed = 4 de antes del bucle.
  2. En el bucle, justo después de keys = pygame.key.get_pressed(), establece speed = 4 y luego establécelo en 8 si se mantiene presionada la barra espaciadora.

Pruébalo tú mismo

import pygame

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

x, y = 220, 160
speed = 4

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]:
        x -= speed
    if keys[pygame.K_RIGHT]:
        x += speed
    if keys[pygame.K_UP]:
        y -= speed
    if keys[pygame.K_DOWN]:
        y += speed

    screen.fill((30, 30, 46))
    pygame.draw.rect(screen, (255, 196, 0), (x, y, 40, 40))
    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