Tasti freccia
Fa parte della sezione Il game loop del percorso Pygame di Coddy. Lezione 5 di 32.
Per muovere il quadrato, conserva la sua posizione in alcune variabili e disegnalo lì a ogni fotogramma. Modifica le variabili e nel fotogramma successivo il quadrato apparirà da un'altra parte.
pygame.key.get_pressed() ti dice quali tasti sono premuti in questo momento. Indicizzalo con una costante di tasto, come pygame.K_RIGHT: il risultato è True mentre quel tasto è premuto.
x = 100
while running:
# eventi
keys = pygame.key.get_pressed()
if keys[pygame.K_RIGHT]:
x += 4
# riempi, poi disegna in xTieni premuto il tasto freccia destra e il quadrato si sposterà di 4 pixel a ogni fotogramma, cioè 240 pixel al secondo a 60 fotogrammi al secondo. I tasti freccia sono K_LEFT, K_RIGHT, K_UP e K_DOWN. Su significa un valore di y più piccolo.
Crea le variabili prima del ciclo. Una variabile impostata all'interno del ciclo riparte da capo a ogni fotogramma.
Sfida
FacileSposta il quadrato con i tasti freccia:
- Prima del ciclo, imposta
x, y = 220, 160espeed = 4. - Nel ciclo, dopo gli eventi, leggi i tasti con
pygame.key.get_pressed(). Ogni tasto freccia tenuto premuto modificaxoydispeed. - Disegna il quadrato in
(x, y, 40, 40).
Provalo tu
import pygame
pygame.init()
screen = pygame.display.set_mode((480, 360))
pygame.display.set_caption("Move the Square")
clock = pygame.time.Clock()
running = True
while running:
for event in pygame.event.get():
if event.type == pygame.QUIT:
running = False
screen.fill((30, 30, 46))
pygame.draw.rect(screen, (255, 196, 0), (220, 160, 40, 40))
pygame.display.flip()
clock.tick(60)
pygame.quit()
Tutte le lezioni di Il game loop
1Muovi un quadrato
Apri una finestraRiempi lo sfondoEsercitati da solo: Playground Pygame