cpd_David_und_Yusuf/README.md

95 lines
4.2 KiB
Markdown
Raw Normal View History

2024-05-10 22:02:23 +02:00
# Werwolf - Flutter App
2024-04-09 22:58:19 +02:00
2024-05-10 22:02:23 +02:00
## Beschreibung
Die "Werwolf" Flutter App ist ein Projekt, das im Rahmen eines Gruppenprojekts von David Miller und Yusuf Can Özdemirkan entwickelt wurde. Das Ziel der App ist es, das bekannte Partyspiel "Werwolf" digital zu imitieren und eine benutzerfreundliche Plattform für Spieler bereitzustellen, um das Spiel ohne komplizierte Anmeldungen oder Einstellungen zu genießen.
## Funktionalitäten
2024-06-18 16:14:09 +02:00
- **Anmeldungsfreier Zugang**: Spieler müssen sich nicht anmelden, sondern können direkt über ein Formular mit mehreren Feldern teilnehmen. Siehe Bild: Werwolf Spiel
![Werwolf Spiel](images/spielerliste.png)
2024-06-18 02:15:30 +02:00
- **Spielerregistrierung**: Das Formular ermöglicht es Spielern, sich einzutragen, wobei eine beliebige Anzahl von Spielern möglich ist (ab 6 Spieler).
2024-06-18 16:14:09 +02:00
- **Konfiguration der Spielrunde**: Vor Beginn des Spiels können Konfigurationen vorgenommen werden, wie die Anzahl und Art der speziellen Rollen im Spiel. Siehe Bild: Settings
![Settings](images/settings.png)
- **Enthüllung der Rollen**: Nachdem alle Spieler eingetragen sind und die Konfigurationen abgeschlossen sind, wird der Name der ersten Person angezeigt. (Siehe Bild Spieler) Durch Anklicken der Karte wird dann die Rolle dieser Person aufgedeckt. Dieser Vorgang wird für jede Person wiederholt, bis alle Spieler und ihre Rollen angezeigt wurden. (Siehe Bild Rolle)
![Spieler](images/spieler.png)
![Rolle](images/rolle.png)
- **Spielaktionen**: Die App bietet Funktionen, um den Tod von Spielern festzulegen und andere Spielaktionen durchzuführen. Siehe die Bilder Tag, Nacht und Tote Spieler für die Spielaktionen.
![Tag](images/spielfeld_tag.png)
![Nacht](images/spielfeld_nacht.png)
![Tote Spieler](images/tote_spieler.png)
- **Weiteres**: Der Moderator kann mit dem betätigen der Informationstaste die Rollen der Spieler nachschauen und wenn die Dorfbewohner/Werwölfe oder der Joker gewinnt wird ein Screen angezeigt.
![Moderator](spielerrollen_fuer_moderator.png)
![Win](images/winscreen.png)
2024-05-10 22:02:23 +02:00
2024-06-18 02:15:30 +02:00
## Plattformunterstützung und Tests
Die Applikation benutzt keine plattformspezifischen Funktionen oder Bibliotheken, sollte daher überall laufen. Wir haben die App unter folgenden Plattformen getestet:
- **Android**
- **iOS**
2024-06-18 16:14:09 +02:00
- **MacOS**
2024-06-18 02:15:30 +02:00
### Besondere Hinweise zum Testen
- **Integrationstests**: Um die Integrationstests auszuführen, folge den untenstehenden Anweisungen zur Installation der Abhängigkeiten und zum Ausführen der Tests.
- **Zusätzliche Parameter für Build/Test**: Keine besonderen Parameter erforderlich.
## Installation und Ausführung
### Voraussetzungen
- Flutter SDK (Version >= 3.4.3)
- Abhängigkeiten in `pubspec.yaml`
### Installation
1. Klone das Repository:
git clone https://gitty.informatik.hs-mannheim.de/2011708/cpd_David_und_Yusuf
2. Wechsle in das Projektverzeichnis:
cd cpd_David_und_Yusuf
3. Installiere die Abhängigkeiten:
flutter pub get
### Ausführen der App
2024-06-18 16:14:09 +02:00
- **Android/iOS/MacOS**:
2024-06-18 02:15:30 +02:00
flutter run
## Tests
### Unit- und Widget-Tests ausführen
flutter test
### Integrationstests ausführen
1. Erstelle eine Datei `test_driver/integration_test.dart` mit folgendem Inhalt:
import 'package:integration_test/integration_test_driver.dart';
Future<void> main() => integrationDriver();
2. Erstelle eine Datei `integration_test/app_test.dart` mit deinen Integrationstests (siehe vorherige Anweisungen).
3. Führe den Integrationstest aus:
flutter drive --driver=test_driver/integration_test.dart --target=integration_test/app_test.dart
### Shell-Skript zur Installation und Ausführung
Füge folgendes Skript `run_app.sh` hinzu, um die App zu installieren und auszuführen:
#!/bin/sh
Klone das Repository
git clone https://gitty.informatik.hs-mannheim.de/2011708/cpd_David_und_Yusuf
Wechsle in das Projektverzeichnis
cd cpd_David_und_Yusuf
Installiere die Abhängigkeiten
flutter pub get
Starte die App
flutter run
2024-05-10 22:02:23 +02:00
## Gitty Repository
2024-05-10 23:26:51 +02:00
Das Projekt wird auf Gitty von der Hochschule gehostet. Hier ist der Link zum Repository:
2024-05-10 22:02:23 +02:00
[Gitty Repository](https://gitty.informatik.hs-mannheim.de/2011708/cpd_David_und_Yusuf)
## Kontakt
Für Fragen, Feedback oder Unterstützung kontaktieren Sie bitte:
- Yusuf Can Özdemirkan, 1813055: yusufcan.oezdemirkan@stud.hs-mannheim.de
2024-06-18 02:15:30 +02:00
- David Miller, 2011708: 2011708@stud.hs-mannheim.de