Pfeiltasten
Lektion 5 von 40 im Kurs Spiele mit Pygame erstellen von Coddy.
Um das Quadrat zu bewegen, speicherst du seine Position in Variablen und zeichnest es in jedem Frame dort. Ändere die Variablen, und im nächsten Frame wird das Quadrat an einer anderen Stelle angezeigt.
pygame.key.get_pressed() teilt dir mit, welche Tasten gerade gedrückt gehalten werden. Greife mit einer Tastenkonstante wie pygame.K_RIGHT darauf zu: Das Ergebnis ist True, solange diese Taste gedrückt ist.
x = 100
while running:
# Ereignisse
keys = pygame.key.get_pressed()
if keys[pygame.K_RIGHT]:
x += 4
# füllen, dann bei x zeichnenHalte die rechte Pfeiltaste gedrückt, und das Quadrat bewegt sich in jedem Frame um 4 Pixel, also bei 60 Frames pro Sekunde um 240 Pixel pro Sekunde. Die Pfeiltasten heißen K_LEFT, K_RIGHT, K_UP und K_DOWN. Nach oben bedeutet ein kleineres y.
Lege die Variablen vor der Schleife an. Eine innerhalb der Schleife gesetzte Variable wird in jedem Frame zurückgesetzt.
Aufgabe
EinfachBewege das Quadrat mit den Pfeiltasten:
- Lege vor der Schleife
x, y = 220, 160undspeed = 4fest. - Lies in der Schleife nach den Ereignissen die Tasten mit
pygame.key.get_pressed()aus. Jede gedrückt gehaltene Pfeiltaste verändertxoderyumspeed. - Zeichne das Quadrat bei
(x, y, 40, 40).
Probier es selbst
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()
Diese Lektion enthält ein kurzes Quiz. Starte die Lektion, um es zu beantworten und deinen Fortschritt zu speichern.
Alle Lektionen in Spiele mit Pygame erstellen
Übe selbstständig: Pygame-Playground