Bewegung der Spielfigur
In diesem Abschnitt lernst Du, wie man Attribute nicht nur auf bestimmte Werte setzen, sondern um bestimmte Werte erhöhen bzw. erniedrigen kann.Programm zum Ausprobieren
Starte das folgende Programm und drücke mehrfach hintereinander irgendeine Taste.
WIDTH = 800
HEIGHT = 600
TITLE = "Reaktion auf den Benutzer"
raumschiff = Actor("raumschiff_gruen.png")
raumschiff.x=400
raumschiff.y=300
def draw():
screen.blit("sterne",(0,0))
raumschiff.draw()
def on_key_down():
raumschiff.x += 20
raumschiff.angle -= 45
Erklärung
Die beiden Zeichenkombinationen +=
und -=
sorgen dafür, dass sich das entsprechende Attribut um den hinten
angegeben Wert erhöht bzw. erniedrigt.
raumschiff.x += 20
erhöht den Wert von raumschiff.x
um 20.
Mit genau der gleichen Wirkung könnte man übrigens auch schreiben
raumschiff.x = raumschiff.x + 20
Welche Schreibweise man verwendet, ist vor allem eine Frage des persönlichen Geschmacks.
Aufgabe 1: Bewegung nach unten
Schreibe ein Programm so, dass das Raumschiff am Anfang in der linken oberen Ecke des Fensters sitzt. Die Spitze des Raumschiffs soll nach unten schauen. Bei jedem Tastendruck soll sich das Raumschiff um 10 Pixel nach unten bewegen.
Aufgabe 2: Schräge Bewegungen
Schreibe ein Programm so, dass das Raumschiff am Anfang in der linken oberen Ecke des Fensters sitzt. Die Spitze des Raumschiffs soll in Richtung der rechten unteren Ecke schauen (da musst Du ein bisschen mit den Winkeln herumprobieren). Bei jedem Tastendruck soll sich das Raumschiff dann um 8 Pixel nach rechts und um 6 Pixel nach unten bewegen.
Aufgabe 3: Meteoriten auf Kollisionskurs
Schreibe ein Programm mit zwei Meteoriten. Am Anfang soll der eine in der linken oberen Ecke sitzen und nach rechts schauen, der andere soll in der rechten oberen Ecke sitzen und nach links schauen. Bei jedem Tastendruck soll sich der erste Meteorit 10 Pixel nach rechts und der zweite um 7 Pixel nach links bewegen.