Projekt Snake
Das Fenster
Um die Arbeitsweise von pygame
besser zu verstehen, erweitern wir
zunächst die Spielschleife:
...
def spielschleife_aufrufen():
print('in spielschleife_aufrufen')
global spielen
while spielen:
for event in pygame.event.get():
# Ausgeben aller Aktivitaeten, die innerhalb des Fensters stattfinden
print(event)
# wenn das x im Fenster gedrueckt wird, soll das Fenster zugehen
if event.type == pygame.QUIT:
spielen = False
...
Alle Aktivitäten, die in einem mit pygame
erzeugten Fenster
passieren, können über die Funktion pygame.event.get()
abgefragt werden. Innerhalb unserer while
-Schleife fragen wir
permanent die im Fenster stattfindenden Aktivitäten ab und geben diese mit der
print()
-Funktion in Zeile 8 aus.
In Zeile 10 fangen wir ein speziellesevent ab, nämlich der Klick auf das Kreuz im Fenster:
Auch die Tastatur wird überwacht. Nachfolgendes Beispiel aus der Kommandozeile:
Die ersten 4 Einträge zeigen meine Mausbewegung, dann hat der Mauszeiger das Fenster verlassen und der Buchstabe "q" wurde eingegeben.
Das führt zu 3 events
, einmal dem KeyDown
, also dem
Herunterdrücken der Taste "q", dem event TextInput
mit "q" und dem
event KeyUp
für das Loslassen der Taste "q".
Das envent Quit
nutzen wir, um die Abbruchbedingung für die
Schleife zu setzen (Zeilen 10 bis 11).
Probiert es aus, macht Euch vertraut mit den events
.
Inhaltsverzeichnis:
1. Vorwort2. Das Projekt
3. Vorarbeiten
4. Projekt Snake
4.1. Der Funktionsumfang
4.2. Die Planung der Umsetzung
4.3. Das Coden
4.3.1. Das Grundgerüst
4.3.2. Das Fenster
4.3.3. Der Schlangenkopf
4.3.4. Die Bewegung der Schlange
4.3.5. Kleine Verbesserungen
4.3.6. Das Futter platzieren
4.3.7. Die Schlange wächst
4.3.8. Den Spielstand ausgeben
4.3.9. Die Wiederholung
4.3.10. Der finale Stand
5. Abschluss