more fixes and tweaks

This commit is contained in:
Jesse
2026-08-01 12:00:27 -04:00
parent d1f689d4fc
commit f00255ce31
7 changed files with 94 additions and 8 deletions
+6 -2
View File
@@ -302,9 +302,13 @@ export function describeIntent(s: GameState, i: Intent): string {
const pending = s.clock.pendingDecision;
const who = pending ? trainName(s, pending.train) : 'the train';
const ahead = pending ? trainName(s, pending.occupiedBy) : 'the train ahead';
// NOT "risks a collision, −5". A rear-end on a Mainline card is described by §10 and is what
// ABS Signals exists to prevent, but no such collision is implemented — granting clearance is
// currently free. Saying otherwise invents a consequence the engine will never deliver.
// See implications.md §10 Q13.
return i.allow
? `ALLOW — ${who} follows ${ahead} into the same Subdivision (risks a collision, −5 Revenue)`
: `HOLD — ${who} waits where it is: safe, but it loses the Stage`;
? `ALLOW — ${who} follows ${ahead} onto the same Mainline card, closing up behind it`
: `HOLD — ${who} waits where it is, losing the Stage but keeping the line clear`;
}
case 'draw.fromDepartment': {
// Naming the card is the whole point of a FACE-UP slot: "slot 2" tells a player nothing, and