Actor – jetzt kommen die Figuren ins Spiel

Das Spielfeld ist schön und gut – aber damit etwas passiert, brauchen wir dringend Spielfiguren, die sich darauf bewegen.

Für Spielfiguren stellt uns die Bibliothek die ganz wichtige Klasse Actor zur Verfügung. Um eine Spielfigur auf unser Spielfeld zu bringen, sind zwei Schritte nötig:

  1. Erzeuge ein Objekt der Klasse Actor.

  2. Füge es mit der Methode addActor() dem Spielfeld hinzu.

Eine Spielfigur ist schnell erzeugt. Für unser Korallenriff wollen wir einen Fisch als Figur haben. Das geht so:

fisch = Actor("sprites/babelfish.gif")

Beim Erzeugen wird also nur der Name der verwendeten Bilddatei angegeben. Hier verwenden wir wieder ein mitgeliefertes Bild.

Nun muss der Fisch noch ins Spielfenster. Das geht so:

feld.addActor(fisch,Location(300,300))

Die Position des Actors (also die x- und y-Koordinaten) ist bei gamegrid ein eigenes Objekt. Wir müssen sie daher mit Location(x-Position, y-Position) einfügen. Hier wird der Fisch an Position x:300, y:300 gesetzt – das ist genau die Mitte des Spielfelds.

Insgesamt sieht das Programm also zum Beispiel so aus:

from gamegrid import *
feld = GameGrid(600,600,1,None,"sprites/reef.gif",False)
feld.setTitle("Korallenriff")
fisch = Actor("sprites/babelfish.gif")
feld.addActor(fisch,Location(300,300))
feld.show()
Hurra, der Fisch ist da!

Abbildung 17.4    Hurra, der Fisch ist da!

Das wäre jetzt also geschafft: Es ist ein Spielfenster erstellt, und eine Spielfigur (der Fisch) ist darin platziert.

[ ! ]  Achtung: Der Nullpunkt liegt links oben

Die Koordinaten im Spielfeld von gamegrid funktionieren anders als bei gturtle. In gamegrid wird immer von links oben gezählt. Das heißt, die Koordinate x:0, y:0 ist ganz links oben. Nach rechts und nach unten werden die Zahlen dann größer. Ganz rechts unten wäre also x:600, y:600.