Viewer class for the Mystery Master Logic Puzzle Solver.

Michael Benson

2021-08-31

Implements

Constructors

  • Initializes viewer.

    Parameters

    • okAllPuzzles: boolean = false

      Flag to load and solve all puzzles.

    • okSavePuzzle: boolean = false

      Flag to save puzzle parts to files.

    • okSaveSolved: boolean = false

      Flag to save solved parts to files.

    Returns Viewer

Properties

okRechart: boolean = false
puzzle: Puzzle = null
solver: Solver = null

Methods

  • Returns string

  • Determines nouns based on clicked cell and Grid Verb. Called by UIX.clickGridCell.

    Parameters

    • t1: number

      Zero-based index of noun type 1.

    • n1: number

      Zero-based index of noun 1.

    • t2: number

      Zero-based index of noun type 2.

    • n2: number

      Zero-based index of noun 2.

    • v: number

      Zero-based number of the current verb.

    Returns void

  • Sets "Pause Next" flag to true. Called when user clicks Pause button.

    Returns void

  • Stops solving puzzle. Called when user clicks Quit button.

    Returns void

  • Resets viewer. Called when user clicks Reset button.

    Returns void

  • Calls the callback function set by the solver.
    Called by sayPause and when user clicks Resume button.

    Returns void

  • Invokes the solver to solve the logic puzzle. Called when user clicks Solve button, or setPuzzle if autoRun is true.

    Returns void

  • Event 05. Updates UI when mark is entered.

    Parameters

    Returns void

  • Event 08. Updates UI when potential mark contradicts an existing mark.

    Parameters

    • msg: string

      Message.

    Returns void

  • Event 09. Updates UI when mark violates a fact.

    Parameters

    • msg: string

      Message.

    • mark: Mark

      Mark.

    • fact: Fact

      Fact.

    Returns void

  • Event 11. Updates UI when mark violates a law.

    Parameters

    • msg: string

      Message.

    • mark: Mark

      Mark.

    Returns void

  • Event 03. Updates UI when level changes.

    Parameters

    • msg: string

      Message.

    Returns void

  • Event 12. Updates UI when rule updates one or more nouns.

    Parameters

    Returns void

  • Event 06. Updates UI when mark is removed.

    Parameters

    • msg: string

      Message.

    • mark: Mark

      Mark.

    Returns void

  • Event 10. Updates UI when mark violates a rule.

    Parameters

    • msg: string

      Message.

    • mark: Mark

      Mark.

    • rule: Rule

      Rule.

    Returns void

  • Event 04. Updates UI when solution is found.

    Parameters

    • msg: string

      Message.

    • elapsedTime: number

      Elapsed time in milliseconds.

    Returns void

  • Event 01. Updates UI when solver starts solving a puzzle.

    Parameters

    • msg: string

      Message.

    Returns void

  • Event 02. Updates UI when solver stops solving a puzzle.

    Parameters

    • msg: string

      Message.

    • elapsedTime: number

      Elapsed time in milliseconds.

    Returns void

  • Event 07. Updates UI when mark is validated.

    Parameters

    • msg: string

      Message.

    • mark: Mark

      Mark.

    Returns void

  • Sets and validates the puzzle. Also solves if autorun is true.
    Called by Node.js script (server) or web page (browser).

    Parameters

    Returns void

  • Toggles enabled property of fact given its one-based number. If no marks are entered, also overrides initEnabled property of fact. Called by UIX.toggleFact.

    Parameters

    • num: number

      One-based number of fact.

    Returns void

  • Toggles enabled property of rule given its one-based number. If no marks are entered, also overrides initEnabled property of rule. Called by UIX.toggleRule.

    Parameters

    • num: number

      One-based number of rule.

    Returns void

  • Returns string

  • Undo marks back to and including last mark entered by user. Called by UIX.undoUserMark.

    Returns void

  • Updates the Chart form. Called by UIX.updateChartCol1.

    Parameters

    • icol: number

      One-based number of first noun type to display.

    Returns void

  • Sets an option. Called by setup.updateField.

    Parameters

    • key: string

      Key.

    • val: boolean

      Value.

    Returns void