Documentation
¶
Index ¶
- Variables
- func New(mode Mode, puzzle Puzzle) (game.Gamer, error)
- type Cage
- type Cell
- type KeyMap
- type Mode
- type Model
- func (m Model) GetDebugInfo() string
- func (m Model) GetFullHelp() [][]key.Binding
- func (m Model) GetSave() ([]byte, error)
- func (m Model) Init() tea.Cmd
- func (m Model) IsSolved() bool
- func (m Model) Reset() game.Gamer
- func (m Model) SetTitle(t string) game.Gamer
- func (m Model) Update(msg tea.Msg) (game.Gamer, tea.Cmd)
- func (m Model) View() string
- type Puzzle
- type Save
Constants ¶
This section is empty.
Variables ¶
View Source
var DefaultKeyMap = KeyMap{ CursorKeyMap: game.DefaultCursorKeyMap, FillValue: key.NewBinding( key.WithKeys("1", "2", "3", "4", "5", "6", "7", "8", "9"), key.WithHelp("1-9", "Fill"), ), Clear: key.NewBinding( key.WithKeys("backspace", "delete"), key.WithHelp("bkspc", "Clear"), ), }
View Source
var Definition = game.Definition{ Name: "Ripple Effect", Description: "Place digits in cages without violating ripple distance.", Aliases: []string{"ripple"}, Modes: Modes, DailyModes: DailyModes, Help: HelpContent, Import: func(data []byte) (game.Gamer, error) { return ImportModel(data) }, }
View Source
var HelpContent string
View Source
var Modes = []list.Item{ NewMode("Mini 5x5", "Small board with compact cages.", 5, 3, 0.76), NewMode("Easy 6x6", "Gentle introduction to ripple spacing.", 6, 3, 0.72), NewMode("Medium 7x7", "Balanced cages and row pressure.", 7, 4, 0.68), NewMode("Hard 8x8", "Denser ripple interactions.", 8, 4, 0.64), NewMode("Expert 9x9", "Wide board with longer deduction chains.", 9, 5, 0.60), }
Functions ¶
Types ¶
type Model ¶
type Model struct {
// contains filtered or unexported fields
}
func ImportModel ¶
func (Model) GetDebugInfo ¶
func (Model) GetFullHelp ¶
type Puzzle ¶
func GeneratePuzzle ¶
Click to show internal directories.
Click to hide internal directories.