M10c: vem betalar i kiosken och spärrar utan återvändo
All checks were successful
release / build-release (push) Successful in 2m7s

Björns tillägg 2026-10-24. Med egna kort och fler i sällskapet frågar
kiosken vem som betalar (minigame.Payer: kontant, spelarens kort eller en
följares kort; den som inte har råd nekas, Esc avbryter). Avgiften dras
nu när man passerar spärren in i det betalda området (level.InsideGates),
inte på spärrrutan. Banflaggan oneWayGates: incheckad släpps inte ut igen
förrän man åkt; Enter vid spärren kallar på personal (10 s) som låser upp
korten; ny inpassering kostar igen. På i 005, 007/007b och 008/008b.
Skriptkommandon urge och push. Docs, wiki och skärmdumpar uppdaterade.

Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
This commit is contained in:
2026-10-24 22:12:13 +02:00
parent 4ae6a1d24c
commit f04d6a88f9
26 changed files with 674 additions and 64 deletions

View File

@@ -573,6 +573,45 @@ på **brasse-linux01-runnern** (label `linux-amd64`), aldrig på Pi5:n.
- **Teknik:** vägrutor i banformatet, `Vehicle`-abstraktion i sim som tåg
och buss delar, återanvänd `nav` för busslinjer.
### M10c – Vem betalar, och spärrar utan återvändo ✓ (klar 2026-10-24)
- **Mål:** två av Björns tillägg (2026-10-24) som gör kort- och
spärrhanteringen mer strategisk.
- **Vem betalar:** med fler än en i följet och egna kort väljer man vid
kiosken/automaten vem som betalar – kontant, spelarens kort eller någon
följares kort – så att alla har kvar pengar till spärrarna. Ett litet
väljarminispel (`minigame.Payer`) framför köpet; de som inte har råd
markeras.
- **Spärrar utan återvändo:** banflaggan `oneWayGates`. När man har
checkat in i spärren släpper den inte ut en igen förrän man åkt. Måste
man ut (toalett, kiosk, automat utanför) kallar man på personal med
Enter vid spärren (knappen sitter vid spärren – ett kontor kan komma
senare); det tar tid, sedan är korten upplåsta och man kan gå ut.
Går man in igen dras avgiften igen.
- **Teknik:** `level.InsideGates` (rutorna innanför spärrarna, BFS från
perrongerna), `Run.checkedIn`/`StaffUnlocked`/`Staff`-tillstånd i sim,
prompt och förlopp i inforutan, skriptkommandot `urge` för skärmdumpar.
- **Så blev det:** `minigame.Payer` (kontant / spelarens kort / varje
följares kort med saldo; de som inte har råd i rött och nekas; Esc
avbryter köpet) öppnas av kiosken när banan har egna kort och fler i
sällskapet. Spärrregeln ändrades samtidigt: **avgiften dras när man
passerar spärren in i det betalda området** (`level.InsideGates`, rutorna
som nås från perrongerna utan att korsa en spärr), inte när man står på
spärrrutan – så spärrar som ligger i en gång kostar inget att passera
utifrån. Med `oneWayGates` blir man incheckad vid betalningen; en spärr
man nått inifrån släpper inte ut en (meddelande i inforutan), Enter på
spärren kallar på personal (10 s, förloppsstapel, avbryts om man går),
sedan är korten upplåsta tills man gått ut; ny inpassering kostar igen.
Flaggan är på i 005 Ueno, 007/007b och 008/008b. Skriptkommandona `urge
NAMN` och `push RIKTNING N` för skärmdumparna.
- **Klar när:** väljaren betalar från rätt källa och nekar den som inte
har råd (`minigame.TestPayerPicksSourceAndRefusesPoor`,
`sim.TestKioskAsksWhoPays`); spärren släpper inte ut en, personalen låser
upp efter väntetiden och ny inpassering kostar igen
(`sim.TestOneWayGatesNeedStaff`, `level.TestOneWayGatesAndInside`). ✓
- **Kvar till senare:** ett kontor (egen ruta) som alternativ till knappen
vid spärren; personal som också kan hjälpa med tomt kort.
### M11 – Oändligt läge och New Game+
- Slumpade mål från seed, poäng per mål, egen poänglista. NG+ behåller skills.