Pfeiltasten
Lektion 5 von 41 im Kurs Spiele mit Pygame erstellen von Coddy.
Um das Quadrat zu bewegen, speichere seine Position in Variablen und zeichne 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() zeigt dir, 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 sind K_LEFT, K_RIGHT, K_UP und K_DOWN. Nach oben bedeutet einen kleineren y-Wert.
Lege die Variablen vor der Schleife an. Eine Variable, die innerhalb der Schleife gesetzt wird, beginnt in jedem Frame von vorn. x, y = 100, 50 setzt zwei Namen in einer Zeile: x erhält den Wert 100 und y den Wert 50.
Aufgabe
EinfachBewege das Quadrat mit den Pfeiltasten.
- Lege vor der Schleife
x, y = 220, 160undspeed = 4fest. - Lies in der Schleife nach den Ereignissen
pygame.key.get_pressed()aus. Jede gedrückte Pfeiltaste verändertxoderyumspeed. - Zeichne das Quadrat an der Position
(x, y, 40, 40).
Klicke auf „Spielen“ und halte die Pfeiltasten gedrückt: Das Quadrat bewegt sich. Klicke dann auf „Prüfen“.
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()
Alle Lektionen in Spiele mit Pygame erstellen
Übe selbstständig: Pygame-Playground