Use‐Case‐Spiel - Robust-Games/robust GitHub Wiki
Use Cases
Inhaltsverzeichnis
- Spiel starten
- Bewegen
- Schießen
- Hindernis zerstören
- Spiel beenden
- Panzer bewegen
- Schuss abgeben
- Ziel auswählen
- Schuss abbrechen
- Schaden erhalten
- Panzer sterben
- Map Grenzen verlassen
- Aktionpoints leer
- Spieler beendet Zug vorzeitig
- Healthpoints leer
- Healthpoints nehmen ab
- Objekt zerstört
- Objekt verletzt
- Schuss verfehlt Ziel
- Schuss trifft Objekt
- Treffer ohne Schaden
- Schuss trifft leeres Feld
- Spiel beendet
Spiel starten
Use Case Name: Spiel starten
Akteur: Spieler
Ziel: Spieler betritt das Spiel, wird einem Match zugewiesen, Panzer erscheint auf der Map
Vorbedingung: Spieler ist angemeldet und bereit
Nachbedingung: Spiel beginnt, Spieler kann Aktionen ausführen
Ablauf:
- Spieler startet Spiel
- System weist Match zu
- Panzer wird positioniert
Bewegen
Use Case Name: Bewegen
Akteur: Spieler
Ziel: Spieler bewegt Panzer auf erlaubtes Feld
Vorbedingung: Spieler hat Aktionpoints verfügbar
Nachbedingung: Panzer hat neue Position, Aktionpoints verringert
Ablauf:
- Spieler wählt Bewegungsrichtung
- System prüft Zielposition (frei von Bergen, Gebäuden, anderen Panzern)
- Panzer bewegt sich dorthin
- Aktionpoints werden reduziert
Schießen
Use Case Name: Schießen
Akteur: Spieler
Ziel: Spieler schießt auf Ziel, verursacht Schaden oder zerstört Hindernis
Vorbedingung: Spieler hat Aktionpoints verfügbar
Nachbedingung: Ziel erleidet Schaden oder wird zerstört, Aktionpoints verringert
Ablauf:
- Spieler wählt Ziel (Feld, Berg, Gebäude, Panzer)
- System berechnet Treffer und Schaden
- Ziel wird entsprechend aktualisiert
- Aktionpoints werden reduziert
Hindernis zerstören
Use Case Name: Hindernis zerstören
Akteur: Spieler
Ziel: Hindernis wird durch Schuss zerstört oder beschädigt
Vorbedingung: Hindernis ist im Schussbereich
Nachbedingung: Hindernis ist entfernt oder beschädigt
Ablauf:
- Spieler zielt auf Hindernis
- System berechnet Treffer
- Hindernis wird entsprechend zerstört oder beschädigt
Spiel beenden
Use Case Name: Spiel beenden
Akteur: Spieler
Ziel: Spiel endet, Sieger wird ermittelt
Vorbedingung: Ein Panzer hat 0 Healthpoints oder Zeit ist abgelaufen
Nachbedingung: Spielstatus „beendet“, Ergebnis angezeigt
Ablauf:
- System prüft Spielende-Bedingungen
- System bestimmt Sieger
- Ergebnis wird angezeigt
Panzer bewegen
Use Case Name: Panzer bewegen
Akteur: Spieler
Ziel: Panzer an neue Position bewegen
Vorbedingung: Spiel läuft, Spieler ist am Zug
Ablauf:
- Spieler wählt Bewegungsrichtung
- System prüft Kollision
- Panzer wird bewegt
Schuss abgeben
Use Case Name: Schuss abgeben
Akteur: Spieler
Ziel: Schuss auf Ziel abfeuern
Vorbedingung: Panzer hat Munition, Spieler hat Ziel ausgewählt
Ablauf:
- Spieler wählt Ziel
- Spieler feuert Schuss
- System berechnet Treffer
- Schaden wird angewendet
Ziel auswählen
Use Case Name: Ziel auswählen
Akteur: Spieler
Ziel: Objekt oder Gegner als Ziel bestimmen
Vorbedingung: Spiel läuft, Ziel ist erreichbar
Ablauf:
- Spieler wählt Objekt oder Gegner
- System markiert Ziel
Schuss abbrechen
Use Case Name: Schuss abbrechen
Akteur: Spieler
Ziel: Schuss abbrechen und neu entscheiden
Vorbedingung: Schuss noch nicht ausgelöst
Ablauf:
- Spieler bricht Schuss ab
- Spieler wählt neues Ziel oder Bewegung
Schaden erhalten
Use Case Name: Schaden erhalten
Akteur: Spieler
Ziel: Panzer nimmt Schaden auf
Vorbedingung: Panzer wird getroffen
Ablauf:
- System berechnet Schaden
- Lebenspunkte des Panzers werden reduziert
Panzer sterben
Use Case Name: Panzer sterben
Akteur: Spieler
Ziel: Panzer wird zerstört
Vorbedingung: Lebenspunkte ≤ 0
Ablauf:
- System zeigt Panzer als zerstört
- Spieler scheidet aus Spiel aus
Map Grenzen verlassen
Use Case Name: Panzer verlässt Map
Akteur: Spieler
Ziel: Panzer bleibt innerhalb der Spielfeldgrenzen
Vorbedingung: Panzer ist auf der Map
Ablauf:
- Spieler steuert Panzer in Richtung Rand
- System erkennt, dass Bewegung außerhalb der Map liegt
- System verhindert Bewegung oder korrigiert Position
Aktionpoints leer
Use Case Name: Aktionpoints leer
Akteur: Spieler
Ziel: Spieler kann keine weiteren Aktionen ausführen
Vorbedingung: Aktionpoints = 0
Nachbedingung: Zug des Spielers endet automatisch
Ablauf:
- Spieler versucht Aktion auszuführen
- System erkennt, dass Aktionpoints = 0
- System verhindert Ausführung und beendet den Zug
Spieler beendet Zug vorzeitig
Use Case Name: Spieler beendet Zug vorzeitig
Akteur: Spieler
Ziel: Spieler überspringt verbleibende Aktionen und gibt Zug ab
Vorbedingung: Spieler hat noch Aktionpoints
Nachbedingung: Zug ist beendet, Aktionpoints verfallen ggf.
Ablauf:
- Spieler klickt „Zug beenden“
- System beendet Zug trotz verbleibender Aktionpoints
Healthpoints leer
Use Case Name: Healthpoints leer
Akteur: System
Ziel: Panzer wird zerstört, Spieler verliert
Vorbedingung: Healthpoints <= 0
Nachbedingung: Spieler verliert das Spiel
Ablauf:
- Schaden wird angewendet
- System prüft Healthpoints
- Bei <= 0: Panzer wird entfernt, Spiel wird beendet
Healthpoints nehmen ab
Use Case Name: Healthpoints nehmen ab
Akteur: System
Ziel: Panzer oder Objekt nimmt Schaden
Vorbedingung: Treffer durch Schuss
Nachbedingung: Healthpoints des getroffenen Objekts sind reduziert
Ablauf:
- Schuss trifft Objekt
- System berechnet Schaden
- Healthpoints werden reduziert
Objekt zerstört
Use Case Name: Objekt zerstört
Akteur: System
Ziel: Objekt wird vollständig entfernt
Vorbedingung: Objekt hat keine Healthpoints mehr
Nachbedingung: Objekt wird von der Map entfernt
Ablauf:
- Schaden reduziert Healthpoints auf 0
- System entfernt Objekt aus der Map
Objekt verletzt
Use Case Name: Objekt verletzt
Akteur: System
Ziel: Objekt überlebt, aber mit reduzierten Healthpoints
Vorbedingung: Objekt wird getroffen
Nachbedingung: Objekt bleibt bestehen, Healthpoints sinken
Ablauf:
- Treffer verursacht Schaden
- System aktualisiert Healthpoints
Schuss verfehlt Ziel
Use Case Name: Schuss verfehlt Ziel
Akteur: Spieler
Ziel: Objekt bleibt unversehrt
Vorbedingung: Spieler schießt auf Objekt, trifft aber nicht
Ablauf:
- Spieler schießt
- System berechnet Fehlschuss
- Keine Änderung am Ziel