2.9 KiB
2.9 KiB
Spiel
kern
Simuliert einen vollständigen TFT-Spielzug mit Gegnern, Shop und Kampf
- game_id ist 8-stelliger Hex-String
- Board enthält Einheiten mit Items
- Shop enthält Odds und Kosten
- XP zeigt Fortschritt zum Levelaufstieg
- Augment-Angebot erscheint in passenden Runden
- Kampf endet automatisch mit Zustandsänderungen bei allen Beteiligten
- Spieler HP auf 0
- Letzte Runde vorbei
- buy_xp als Aktion
- pick_augment als Aktion
- lock als Aktion
- next als Aktion
- Augment-Auswahl zeigt gewählte Augmente
- Shop zeigt Upgrade-Hinweis für 2- und 3-Sterneinheit
- Spielstand enthält reroll_cost und xp_cost
- Spielstand enthält shop_locked und shop_odds
- Spielstand enthält xp und xp_needed
- Spielstand enthält streak
- Spielstand enthält Log der letzten 8 Einträge
- Spielstand enthält placement
- autoplay als eigene Funktion
Gegner einblenden
Blickt in die Board-Aufstellung eines Gegners
- Nur für Nicht-Spieler
- Gegner muss lebendig sein
- Gegner braucht Einheiten auf dem Board
- LMB auf lebenden Gegner
- Scout-Bereich mit Einheiten-Icon erscheint
- Erneuter Klick blendet Scout aus
Runde fortsetzen
Wechselt zur nächsten Spielphase oder löst den Kampf aus
- Nächste Phase einleiten
- Kampf ▶ im PvP-Modus auslösen
- Kampf-Button klicken
- Spielzustand fortgeschritten
Spiel starten
Beginnt ein neues Spiel mit initialem Spielstand
- Generiert eindeutige game_id
- Lädt statische Spieldaten
- Initialisiert Spieler und Bots
- Antwortet mit vollständigem Spielstand
- LMB auf "Neues Spiel"
- Anfrage an Backend abwarten
- Splash-Bildschirm verschwindet, Spiel-Layout erscheint
Spielaktion ausführen
Führt Aktionen wie Kaufen, Verkaufen und Bewegen im Spiel aus
- 404 bei unbekannter Spiel-ID
- 400 bei unbekannter Aktion
- 400 bei ungültiger Aktion
- 400 bei fehlenden Parametern
- POST an Spielaktion-Endpunkt mit action=buy und slot=0
- 200 miterialisierter Spielstand zurück
- Aktion ungültig → 400 mit Fehlermeldung
Spiele automatisch spielen
Spielstand abrufen
Gibt den aktuellen Spielstand als JSON zurück
- Unbekannte game_id wirft HTTP 404
- GET auf ungültige game_id
- HTTP 404 mit Fehlermeldung
- GET auf gültige game_id
- HTTP 200 mit Spielstand