2025-09-13 22:41:12 +02:00
2025-08-01 17:02:46 +02:00
2025-06-27 19:58:59 +02:00
2025-09-13 17:18:06 +02:00
2025-06-27 19:58:59 +02:00
2025-06-27 19:58:59 +02:00
2025-06-27 19:58:59 +02:00
2025-09-03 00:09:29 +02:00
2025-09-13 22:41:12 +02:00
2025-06-27 19:58:59 +02:00
2025-09-08 18:27:22 +02:00

TetrisClone in Java 11 & Swing

von Martin Prokoph

Erstellt für das Modul "Anwendungsorientierte Programmierung" im Studiengang Medieninformatik an der HTWK Leipzig.
Dieser Code wurde vollständig von mir und ohne die Verwendung von LLMs geschrieben.
An einigen Stellen wurde auf Wissen von StackOverflow und Baeldung zugegriffen dies ist immer in den JavaDocs gekennzeichnet. Die Commit-Historie ist auf meinem Gitea einsehbar. Gradle ist als Build-Tool eingerichtet, um elegant Jar-Dateien zu bauen, dabei aber völlig optional.

Können Sie meinen Highscore schlagen?

Screenshot des Tetris-Spiels

Rechtliche Hinweise

»Tetris« ist eine eingetragene Marke von The Tetris Company, Inc.
Die Verwendung des Namens »Tetris« und des Spielkonzepts erfolgen lediglich zu Bildungszwecken.

Testbeispiele

Bewegung

Spiel starten

  1. Nach links verschieben mit A oder
  2. Nach rechts verschieben mit D oder
  3. Schneller nach unten mit S oder
  4. Direkt nach unten mit Leertaste
  5. Rotieren mit W oder

Bei jeder Bewegung sollte vor dem Umsetzen geprüft werden, ob die neue Position valide (Nicht überschneidend und nicht außerhalb des Spielraums) ist.

Logik

Sobald eine Reihe vervollständigt wird, sollte sie verschwinden.
Wenn die Teile über den oberen Rand ragen, soll das Spiel beendet werden.
Im Vorschaufenster sollte immer das nächste Tetrominio angezeigt werden. Screenshot, der zeigt, welche Zeilen verschwinden sollen

Highscores

Sobald das Spiel beendet wird und der Score den aktuell höchsten Score überschreitet, sollte eine Aufforderung zum Eingeben des Namens erscheinen. Nach dem Bestätigen erscheint der Name in der Highscore-Liste und wird über Spielsitzungen hinweg gespeichert. Screenshot des Highscore-Dialogs

Benutzeroberfläche

Die Darstellung der Benutzeroberfläche kann in den Einstellungen angepasst werden. Dabei lässt sich die Sprache und die GUI-Skalierung auswählen. Ansonsten sind auch noch Einstellungen zur Lautstärke und Schwierigkeit vorhanden.

Sounds und Musik

Sofern die Lautstärke angemessen eingestellt und ein Lautsprecher angeschlossen ist, sollten beim Absetzen der Tetrominos, sowie beim Vervollständigen einer/mehrerer Reihen Töne zu hören sein. Auch Musik sollte abgespielt werden, sobald das Spiel gestartet wird. Töne und Musik wurden im Zrythm-DAW erzeugt.

Description
Who doesn't love Tetris?
Readme GPL-3.0 15 MiB
Languages
Java 100%