package game import ( "fmt" "strings" "thehouseoficarus/internal/net" ) func (g *Game) executePrompt(sess *net.Session, args []string, rawInput string) { if len(args) == 0 { g.doPrompt(sess, "") } else { msgStart := strings.Index(strings.ToLower(rawInput), "prompt ") + 7 if msgStart >= 7 && msgStart < len(rawInput) { g.doPrompt(sess, rawInput[msgStart:]) } else { g.doPrompt(sess, strings.Join(args, " ")) } } } func (g *Game) doPrompt(sess *net.Session, input string) { p := sess.Player if input == "" { prompt := p.Prompt if prompt == "" { prompt = "> " } sess.WriteLine(fmt.Sprintf("\nPrompt: %s", prompt)) sess.WriteLine("Use 'prompt ' to change. Use 'prompt none' for blank. Use 'prompt reset' to restore default.") return } if input == "reset" { p.Prompt = "> " g.AccountStore.SaveCharacter(p) sess.WriteLine("\nPrompt reset to default.") return } if input == "none" { p.Prompt = " " g.AccountStore.SaveCharacter(p) sess.WriteLine("\nPrompt set to blank.") return } p.Prompt = input g.AccountStore.SaveCharacter(p) sess.WriteLine(fmt.Sprintf("\nPrompt set to: %s", input)) }