Act#

Bis jetzt hast du gelernt, wie man Worlds erstellt und Actors darin platziert. Jetzt ist es Zeit, alles zum Leben zu erwecken:

Die Methode act()#

Die Methode act() steuert das Verhalten deiner World und aller enthaltenen Actors. Sie wird in jedem Frame (also bei jedem world.step) aufgerufen und läuft, bis das Programm beendet wird.

Erster Actor

Beispiel: Bewegender Actor#

Wenn du einen Actor erstellst, kannst du seine Methode act() definieren und mit dem Decorator @register registrieren:

from miniworlds import World, Actor

world = World(500, 500)
world.add_background("images/sky.jpg")

player = Actor((90, 90))
player.add_costume("images/ship.png")

@player.register  # Registers the act method. This is required for it to be called regularly.
def act(self):
    self.y = self.y - 1  # Moves the actor upward along the y-axis

world.run()

Erklärung#

  • Die Methode act() bewegt den player in jedem Frame um eine Einheit nach oben.

  • Neu ist hier die Verwendung von self, wodurch das Objekt auf sich selbst zugreifen kann. Die Zeile self.y = self.y - 1 bedeutet, dass das Objekt player seine eigene y-Koordinate um 1 verringert.

:::{seealso} For more on methods and how to use self, see here. :::