Spielprogrammierung mit Java
HomeAufgabenDruckenJava-Online

Aufgabe A6: Tastatur-Events


Frosch mit Tasten steuern

Wir gehen wie bis anhin von der letzten Aufgabe aus. In diesem Beispiel soll nun der Frosch mittels der Pfeiltasten gesteuert werden. Falls er das Spielfeld verlässt soll er am auf der anderen Seite wieder auftauchen. Wird er von einem Auto erfasst, ist das Spiel zu Ende und alle Autos, sowie der Frosch werden vom Spielfeld entfernt. Anschliessend wird "Game Over" angezeigt.

 

Du kannst das Endprodukt hier als Beispiel ansehen:

Endprodukt ansehen

 

Als Vorlage kannst du dein eigenes Programm aus Aufgabe 5 oder folgendes Beispiel verwenden:

JGameA6.java im Online-Editor bearbeiten

 

 

 

Schritt 1: Mit Pfeiltasten steuern

Erweitere die act()-Methode des Frosches mit einer Switch-Anweisung in welcher die Pfeiltasten abgefragt werden und entsprechend darauf reagiert wird.

Schritt 2: Auf der anderen Seite wieder Auftauchen

Sobald der Frosch das Spielfeld verlassen würde, soll er auf der gegenüberliegenden Seite wieder auftauchen. Folgender Code kann dabei von Nutzen sein:

Location loc = getNextMoveLocation();

und

if(loc.x == -1)
  setLocation(new Location(10, getY()));


Schritt 3: Game Over

Falls der Frosch von einem Auto erfasst wird, sollen alle Actors (d.h. alle Autos und der Frosch) vom Spielfeld verschwinden. Anschliessend wird das Sprite gameover.gif angezeigt.

Extra: Spielzeit messen

In diesem Extra sollst du messen wie lange ein Spieler oder eine Spielerin den Frosch im Spielfeld bewegen kann ohne von einem Auto erfasst zu werden. Dies soll mit der Methode setTitle in der Titelleiste des GameGrids angezeigt werden. Folgender Code kann dir bei Spielzeitmessen helfen:

long start = System.currentTimeMillis(); //Gibt die aktuelle Zeit in Millisekunden an

Extra anzeigen

Extra 2: Beide Spuren befahren

In dieser zweiten Extraaufgabe sollst du auf der zweiten Spur drei weitere Autos fahren lassen, damit das Überqueren der Strasse noch schwieriger wird.

Extra 2 anzeigen