feat(progression): Erfahrung, Aufstieg und Punkteverteilung

Toeten gibt Erfahrung (exp_reward stand seit M3 ungelesen an jedem
Gegner), give_exp als zwoelfte Aktion fuer spaetere Quests. Aufstieg in
einer Schleife am Zugende, ein Punkt je Stufe, keine Obergrenze.

Verteilt wird im Charakterbogen — kein zwoelfter Screen. AssignPoints
nimmt alle Punkte auf einmal und kostet damit einen Zug.

luck wirkt jetzt: eine Chance auf einen Zusatzzug auf jeder Beutetabelle.

Drei Befunde:
- strength und constitution las niemand, zwei der fuenf verteilbaren
  Grundwerte waren Fallen. Zwei balance-Knoepfe rechnen sie beim
  Verteilen um.
- Rng::chance(0.0) verbrauchte eine Zahl und verschob den Zufallsstrom.
- Cheat::ClearRoom ging am Todesweg vorbei.
This commit is contained in:
2026-08-12 21:15:25 +02:00
parent b072e5ade3
commit b19492bb51
12 changed files with 421 additions and 45 deletions

View File

@@ -53,6 +53,17 @@ impl Attribute {
Attribute::Resistance,
];
/// Worauf ein Aufstiegspunkt gesetzt werden darf (Ticket 15). Abgeleitete
/// Groessen wie `damage` fehlen bewusst: Punkte direkt dorthin zu setzen
/// umginge das Modifikatorsystem aus Ticket 01.
pub const ASSIGNABLE: [Attribute; 5] = [
Attribute::Strength,
Attribute::Dexterity,
Attribute::Constitution,
Attribute::Charisma,
Attribute::Luck,
];
pub fn name(self) -> &'static str {
match self {
Attribute::Strength => "Stärke",