docs: ticket 14 (kampfformeln) aufloesen, nachtraege an 01 07 08 11, registry-liste und initiative ins glossar
This commit is contained in:
@@ -162,6 +162,25 @@ nicht auswertbar — die Funktion wüsste nicht, gegen wen geschlagen wird. Der
|
||||
Dazu kommt `events: Vec<Event>` als Feld in `Game`: Ticket 08 arbeitet Events als Warteschlange ab,
|
||||
weil synchrones Feuern über `self.quests` iterieren müsste, während `self.apply` erneut läuft.
|
||||
|
||||
### Nachtrag aus Ticket 14
|
||||
|
||||
**`enemies` ist der laufende Kampf, nicht die Etage.** Das stand oben nie ausdrücklich da und wäre
|
||||
sonst falsch geraten worden: Bei Grid-Erkundung mit Menü-Kampf griffe sonst der Skelettkrieger drei
|
||||
Räume weiter jeden Zug mit an. Leer bedeutet kein Kampf; gefüllt wird die Liste von der Etage (10).
|
||||
|
||||
Zwei neue Felder am `Creature`:
|
||||
|
||||
- `initiative: i32` — einmal beim Betreten des Kampfes gewürfelt. Bewusst ein Zahlenwert am Wesen und
|
||||
keine Reihenfolgeliste aus `CreatureRef`: Die wäre eine **zweite** Indexliste mit demselben
|
||||
Ungültigkeitsproblem beim Tod eines Gegners.
|
||||
- `cooldowns: HashMap<AbilityId, u32>` — Abklingzeiten in Zügen.
|
||||
|
||||
Dazu der RNG-Seed als Feld in `Game`, damit Nachladen nicht neu würfelt.
|
||||
|
||||
Und die Antwort auf die Frage, die 07 offen an 14 gereicht hatte: **Tote Gegner werden am Ende von
|
||||
`Game::execute` entfernt**, nach dem Leerarbeiten der Event-Warteschlange. Innerhalb eines Zuges
|
||||
bleiben Indizes stabil.
|
||||
|
||||
### Auflagen an andere Tickets
|
||||
|
||||
- **08 Event- und Trigger-System**: Form von `QuestProgress`; das Bedingungsvokabular, das 01 bereits
|
||||
|
||||
Reference in New Issue
Block a user