diff options
| author | historia <[not public]> | 2026-10-06 12:57:23 -0400 |
|---|---|---|
| committer | historia <[not public]> | 2026-10-06 12:57:23 -0400 |
| commit | 9666676766bf21364f4fc4d0d1d336e72f2a91b4 (patch) | |
| tree | 0cade34091d7602790dc38cd44053f0b74bbadf2 /internal/game/game.go | |
| parent | 4bc1daaf259e0c19c5fe4a12ec8bc7f6e5a735c1 (diff) | |
| download | thehouseoficarus-9666676766bf21364f4fc4d0d1d336e72f2a91b4.tar.gz | |
refactor: split casino.go, dedup helpers, remove audit docs
Diffstat (limited to 'internal/game/game.go')
| -rw-r--r-- | internal/game/game.go | 17 |
1 files changed, 17 insertions, 0 deletions
diff --git a/internal/game/game.go b/internal/game/game.go index df8dab2..448dcce 100644 --- a/internal/game/game.go +++ b/internal/game/game.go @@ -597,6 +597,23 @@ func (g *Game) reprompt(sess *net.Session) { } } +// rawArgsFrom returns the whitespace-separated arguments following verb in +// rawInput, preserving their original case. Dispatch lowercases args before +// handlers run, so free-text handlers (option/alias/say/global/prompt) use +// this instead of the lowercased args slice. +func rawArgsFrom(rawInput, verb string) []string { + fields := strings.Fields(rawInput) + for i, f := range fields { + if strings.EqualFold(f, verb) { + return fields[i+1:] + } + } + if len(fields) == 0 { + return nil + } + return fields[1:] +} + func (g *Game) handleGameCommand(sess *net.Session, input string) { if input == "" { g.reprompt(sess) |
