From 143020a21da2c63208a2914d8ff2f64e3d0440e0 Mon Sep 17 00:00:00 2001 From: Caleb Denio Date: Thu, 17 Sep 2026 13:50:57 -0600 Subject: [PATCH] use "enum" for solve state --- game/game.go | 26 ++++++++++++++------------ 1 file changed, 14 insertions(+), 12 deletions(-) diff --git a/game/game.go b/game/game.go index 1bd3adb..3568ad6 100644 --- a/game/game.go +++ b/game/game.go @@ -12,15 +12,22 @@ import ( "github.com/cjdenio/crossword/puz" ) +type SolveState int + +const ( + Unsolved SolveState = iota + FilledNotSolved + Solved +) + type State struct { Puzzle *puz.Puzzle PuzzleState []rune SelectedCell int SelectedClue *puz.Clue - Goodbye bool LastKeySequence string DebugMode bool - SolveState int + SolveState SolveState } func (state *State) MoveCursor(direction int) { @@ -217,10 +224,10 @@ func (state *State) RenderUI(w io.Writer) int { uiHeight += 1 switch state.SolveState { - case 1: + case FilledNotSolved: fmt.Fprintf(w, "\r\n%s\r\n", AnsiRed("The puzzle was filled, but at least 1 letter is incorrect...")) uiHeight += 2 - case 2: + case Solved: fmt.Fprintf(w, "\r\n%s\r\n", AnsiGreen("The puzzle was solved!")) uiHeight += 2 } @@ -230,11 +237,6 @@ func (state *State) RenderUI(w io.Writer) int { uiHeight += 2 } - if state.Goodbye { - fmt.Fprint(w, "\r\nsee ya\r\n") - uiHeight += 2 - } - return uiHeight } @@ -403,13 +405,13 @@ func (state *State) HandleInput(buffer []byte) (exited bool) { if state.GridFilled() { if state.CheckPuzzle() { - state.SolveState = 2 + state.SolveState = Solved return true } else { - state.SolveState = 1 + state.SolveState = FilledNotSolved } } else { - state.SolveState = 0 + state.SolveState = Unsolved } }