aboutsummaryrefslogtreecommitdiff
path: root/internal/game/game.go
diff options
context:
space:
mode:
authorhistoria <[not public]>2026-10-06 12:57:23 -0400
committerhistoria <[not public]>2026-10-06 12:57:23 -0400
commit9666676766bf21364f4fc4d0d1d336e72f2a91b4 (patch)
tree0cade34091d7602790dc38cd44053f0b74bbadf2 /internal/game/game.go
parent4bc1daaf259e0c19c5fe4a12ec8bc7f6e5a735c1 (diff)
downloadthehouseoficarus-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.go17
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)