Das Raumschiff
Nun geht es sofort weiter. Wir brauchen ein Raumschiff, das sich nach links und rechts bewegen kann – und später vielleicht auch ein wenig nach oben und unten. Wir erstellen eine Klasse Raumschiff:
class Raumschiff(Actor):
pass
Das reicht erst mal – die Klasse ist von Actor abgeleitet und wird später erweitert, wenn es zu den Kollisionen kommt.
Das Raumschiff wird dann als Objekt erstellt:
raumschiff = Raumschiff("sprites/spaceship.gif")
feld.addActor(raumschiff,Location(300,586))
Und so sieht es dann aus – unten in der Mitte das hübsche kleine Raumschiff.
Abbildung 20.2 Das Raumschiff ist einsatzbereit.
Nun brauchen wir noch eine Tastatursteuerung für das Raumschiff. Die wird genauso programmiert wie die im Breakball-Spiel. Zuerst fügst du dem Spielfeld eine Ereignisfunktion für die Tastatur hinzu:
feld.addKeyRepeatListener(tasteGedrueckt)
Dann schreibst du die Funktion tasteGedrueckt(), die auswertet, welche Taste gedrückt wurde:
def tasteGedrueckt(tastencode):
xpos = raumschiff.getX()
if tastencode == 37:
if xpos > 20:
raumschiff.setX(xpos - 5)
elif tastencode == 39:
if xpos < 580:
raumschiff.setX(xpos + 5)
Erläuterungen dazu findest du im Kapitel 19 (Breakball), wo es exakt genauso gemacht wird.
Wenn du das Programm jetzt startest, kannst du bereits das Raumschiff mit den Pfeiltasten nach rechts und links bewegen.