bubbletwist/README.md

77 lines
2.7 KiB
Markdown

# Bubble-Twist
Bubble-Twist ist ein Puzzle-Spiel, das auf dem beliebten Candy Crush basiert. In diesem Spiel
besteht das Ziel darin, benachbarte Steine durch anklicken zu vertauschen, um eine Reihe von drei
oder mehr
gleichfarbigen Steinen zu bilden und so Punkte zu sammeln und Bonuszeit zu erhalten.
Getestet auf Web, Windows & Android!
## Installation
Stelle sicher, dass du [Flutter](https://flutter.dev) auf deinem System installiert hast.
1. Klone das Repository:
```bash
git clone https://gitty.informatik.hs-mannheim.de/3011340/bubbletwist.git
```
2. Wechsle in das Projektverzeichnis:
```bash
cd bubbletwist
```
3. Installiere die Abhängigkeiten:
```bash
flutter pub get
```
4. Starte die App:
```bash
flutter run
```
## Spielanleitung
### Ziel des Spiels
Vertausche benachbarte Steine, um eine Reihe von drei oder mehr gleichfarbigen Steinen zu bilden. Je
mehr Steine du in einer Reihe hast, desto mehr Punkte erhältst du. Das Spiel endet, wenn die Zeit
abgelaufen ist.
### Steuerung
- **Tippen**: Tippe auf einen Stein, um ihn auszuwählen. Tippe anschließend auf einen benachbarten
Stein, um die beiden Steine zu vertauschen.
## Spielmerkmale
- **8x8 Gitter**: Ein Spielfeld mit 8 Reihen und 8 Spalten.
- **Verschiedene Farben**: Steine in verschiedenen Farben (Rot, Grün, Blau, Gelb, Pink).
- **Punkteanzeige**: Verfolge deinen Punktestand während des Spiels.
- **Timer**: Ein Timer zeigt an, wie viel Zeit noch übrig ist.
- **Game Over-Bildschirm**: Zeigt deinen Endpunktestand und ermöglicht die Eingabe deines Namens zur
Speicherung des Highscores.
- **Highscore-Liste**: Speichert die besten Spieler und ihre Punktzahlen lokal und zeigt sie nach
dem Spiel an.
## Highscore-Funktion
Nach dem Ende eines Spiels kannst du deinen Namen eingeben und deine Punktzahl in die
Highscore-Liste eintragen. Die Highscore-Liste zeigt die Namen und Punktzahlen der besten Spieler
an.
## Screenshots
<img src="screenshots/start_screen.jpg" alt="Startbildschirm" width="300">
<img src="screenshots/game_screen.jpg" alt="Spielbildschirm" width="300">
<img src="screenshots/game_over_screen.jpg" alt="Game Over Bildschirm" width="300">
<img src="screenshots/scoreboard_screen.jpg" alt="Highscore-Liste" width="300">
## Spezial-Steine
Das Spiel bietet die Möglichkeit Spzial-Steine zu erhalten, wenn man bspw. eine 4er oder 5er Kette
erzielt.
Dies erleichtert das Spiel jedoch ungemein, für eine sinnvolle Verwendung müsste Zeit in Balancing
gesteckt werden, welche leider fehlt. Gruundsätzlich können die Spezial-Steine aktuell in der baord.dart (Zeile 18) aktiviert
werden, durch setzten von
```dart
specialStonesEnabled = true;
```