v1.2: Log zeigt gewaehlte Sequenz (nie zweimal dieselbe), Anleitung vor Moduswahl (jede Runde), Roll-Sound-Kanal reserviert (Fix kein Sound), frueheres Abbremsen + Snap-Fenster 160px, 10s Cooldown am Ende, Sprueche nach Prozent (sayings.py), 56 Tests.

This commit is contained in:
Project Bridge committed 2026-11-01 11:38:16 +00:00
1 parent d970185e75
commit e3a0c5a57d
11 files changed
+319 -37

No files matched your search

+15 -4
View File
@@ -35,14 +35,24 @@ starten (beim ersten Mal ggf. Rechtsklick → Öffnen wegen Gatekeeper).
## Ablauf
1. **Tutorialbild** (nur beim Programmstart) – weiter mit A / Space
1. **Tutorialbild** (jede Runde, auch nach einem Ergebnis) – weiter mit A / Space
2. **Stufenauswahl**: Easy / Normal / Hard (Hard = Tempo des Altstands)
3. **Ampel-Start** (rot/gelb/grün + Reissverschluss), dann läuft die Runde
4. **Ergebnis**: Stufe und Beladung in Prozent, „Nochmals?" → A startet neu
bei der Stufenauswahl
4. **Ergebnis**: Stufe, Prozent und ein Spruch – dazu **10 Sekunden Cooldown**,
damit man nicht versehentlich weiterspringt. Danach startet A eine neue
Runde (wieder ab Punkt 1).
Beendet wird ausschliesslich mit **Esc** (Controller: B).
Beim Start jeder Runde steht im Terminal, welche Sequenz gezogen wurde, z. B.:
```
Runde 1: Sequenz 4/6 (16 Koffer, Start: 3x2, 3x1, 2x2, 2x1, 4x2 …), Stufe Normal
Runde 2: Sequenz 3/6 (19 Koffer, Start: 4x2, 4x1, 3x1, 2x1, 1x1 …), Stufe Normal
```
Dieselbe Sequenz kommt nie zweimal direkt hintereinander.
## Steuerung
| Aktion | Tastatur | Controller (Xbox-Layout) |
@@ -71,12 +81,13 @@ loader_game/
sequences.py Einlesen und Validieren der Sequenzdatei
case.py Koffer: Geometrie, Textur, Bewegung
trailer.py Stapelregeln im Auflieger (reine Logik)
sayings.py Sprüche zum Ergebnis (nach Prozent gestuft)
input_map.py Tastatur/Controller → Action
scene.py Zeichnen
menu.py Stufenauswahl
intro.py Tutorialbild, Ampel, Reissverschluss
game.py Zustandsmaschine einer Runde
tests/test_logic.py 48 Tests (ohne Fenster)
tests/test_logic.py 56 Tests (ohne Fenster)
docs/ANALYSE.md Analyse Altstand + Fehlerliste
old_version/ eingefrorener Altstand (nicht versioniert)
```