Skip to the content

Jarajaraジャラジャラ

Draw mahjong tiles, arrange racks and stacked boards, and play seeded Awase alone or at a shared table.

Jarajara is the Japanese sound of mahjong tiles rattling together. About the name

Contents

Reference · Awase solitaire

runHintfunction

Ask for a hint: the new game with it counted and the pair named, or null where none is left to use or no pair can be taken. Given the slot the player has chosen, it looks for that tile's match first (hintFor): found says whether the pair is that match (match), another pair because the chosen tile has none (other), or any pair (any).

Import it

import { runHint } from "@johnmorrisdotca/jarajara/awase";

Definition

function runHint(run: AwaseRun, chosen?: number | null): { run: AwaseRun; pair: [number, number]; found: Exclude<HintKind, "none">; } | null

Parameters

NameTypeDescription
runAwaseRun

The current immutable native challenge run.

chosen (optional)number | null | undefined

The selected tile slot, or null without a selection.

Returns

{ run: AwaseRun; pair: [number, number]; found: Exclude<HintKind, "none">; } | null

Ask for a hint: the new game with it counted and the pair named, or null where none is left to use or no pair can be taken. Given the slot the player has chosen, it looks for that tile's match first (hintFor): found says whether the pair is that match (match), another pair because the chosen tile has none (other), or any pair (any).

Examples

import { generateAwase, runHint, startRun } from "@johnmorrisdotca/jarajara/awase";
import { freePairs, geometryOf, layoutFor } from "@johnmorrisdotca/jarajara";

const deal = generateAwase(4,"easy",2026);
const layout = layoutFor(4)!;
const geometry = geometryOf(layout);
const cells = deal.givens;
const pair = freePairs(geometry,cells,"group")[0];
const run = startRun(deal,{},0);
console.log(runHint(run)?.pair);
[ 4, 7 ]

What it prints (run when this page was built)

View sourceEdit on GitHubMade from the source of @johnmorrisdotca/jarajara 1.7.0.