Tetris

Version 6: Landen von Figuren

In dieser Übung geht es darum, gelandete Figuren ins Spielfeld zu integrieren.

Klassen

Sequenzdiagramm
API-Dokumentation

Aufgaben

  1. Fügen Sie in der Klasse Field eine Liste von Blöcken hinzu und implementieren Sie die Methoden getBlocks und addBlocks und clear, mit denen die Blöcke abgefragt, neue Blöcke hinzugefügt bzw. alle Blöcke entfernt werden können.
  2. Passen Sie die Methode detectCollision so an, dass auch geprüft wird, ob die übergebenen Blöcke mit den Blöcken des Spielfelds kollidieren.
  3. Implementieren Sie in der Klasse Game die Methode figureLanded, welche die Blöcke der aktuellen Figur zum Spielfeld hinzufügt, wenn diese nicht weiter nach unten bewegt werden kann, und eine neue Figur erzeugt.
  4. Wenn keine neue Figur mehr im Spielfeld Platz hat, rufen Sie die Methode stop auf, welche die aktuelle Figur löscht und den FigureController beim GUI wieder abmeldet.
  5. Passen Sie die Methode updateGUI so an, dass auch die Blöcke des Spielfelds gezeichnet werden.
Lösung