wie sich Figuren im Gitter, d.h.. von Zelle zur Zelle zum verfolgten Objekt bewegen können.
MUSTERBEISPIELE
Beispiel1: Ein Hai verfolgt Nemo
Der Nemo schwimmt horizontal hin und her und wird vom Hai verfolgt. Der Hai bewegt sich von Zelle zur Zelle jeweils in Richtung der aktuellen Nemo-Position.
Der Hai kann bei jedem Schritt eine der 8 möglichen benachbarten Zellen wählen. Die optimale Richtung wird mit der Methode getCompassDirectionTo() bestimmt.
Als Parameter erhält diese Methode die Position des verfolgten Objekts.
Damit der Hai den Nemo nicht sofort packt, bewegen wir den Hai nur jeden fünften Simulationszyklus.
Der Verfolger kann bei jedem Schritt eine der 8 möglichen benachbarten Zellen wählen. Die optimale Richtung wird mit der Methode getCompassDirectionTo() bestimmt. Um den Verfolger lansamer zu bewegen, kannst du in seiner Methode act() die Bewegung nur in jedem fünften Simulationszyklus ausführen.
ZUM SELBST LÖSEN
1.
Erzeuge einen Actor Fly() (fly.gif ), welcher mit den Cursortasten bewegt werden kann. Die Fliege wird durch den Actor Frog (frog.gif) verfolgt. Erzeuge ein Spielfeld mit 20 horizontalen und 20 vertikalen Zellen der Grösse 30 und grauen Gitterliniern.
Für die Verfolgung kannst du als Vorlage den Programmcode aus dem Beispiel 1 verwenden. Wenn der Frosch die Zelle, in der sich die Fliege befindet, erreicht hat, wird die Fliege gefressen.