From 9666676766bf21364f4fc4d0d1d336e72f2a91b4 Mon Sep 17 00:00:00 2001 From: historia <[not public]> Date: Tue, 6 Oct 2026 12:57:23 -0400 Subject: refactor: split casino.go, dedup helpers, remove audit docs --- internal/casino/cash_hunt.go | 7 +++++++ 1 file changed, 7 insertions(+) (limited to 'internal/casino/cash_hunt.go') diff --git a/internal/casino/cash_hunt.go b/internal/casino/cash_hunt.go index a07b09a..c04d644 100644 --- a/internal/casino/cash_hunt.go +++ b/internal/casino/cash_hunt.go @@ -267,6 +267,13 @@ func (t *cashHuntTable) action(n, action string) []Event { if len(f) != 1 { return []Event{t.private(n, "Choose a square with pick N or a number from 1 to 100.")} } + // A non-numeric action while a hunt is live (e.g. the stop path's + // leave_after token) must not fall through to the square parser. + if t.active { + if _, err := strconv.Atoi(f[0]); err != nil { + return []Event{t.private(n, "Finish your hunt before leaving.")} + } + } square, err := strconv.Atoi(f[0]) if err != nil || square < 1 || square > CashHuntSquares { return []Event{t.private(n, "Choose a square from 1 to 100.")} -- cgit v1.2.3