@tamb/gamegrid
    Preparing search index...

    Interface HiderActionArgs

    Inputs for chooseHiderAction. Leave taunt off unless the caller has something to do with the "taunt" result.

    import type { HiderActionArgs } from "@tamb/gamegrid/npc";

    const args: HiderActionArgs = {
    matrix,
    isWalkable,
    self: [2, 2],
    threats: [[5, 2]],
    difficulty: "normal",
    };
    import type { HiderActionArgs } from "@tamb/gamegrid/npc";

    const args: HiderActionArgs = {
    matrix,
    isWalkable,
    self: [2, 1],
    threats: [[4, 1]],
    difficulty: "smart",
    legal: ["left", "right"],
    canTauntNow: true,
    taunt: true,
    rng: () => 0,
    };
    interface HiderActionArgs {
        canTauntNow?: boolean;
        difficulty: Difficulty;
        isWalkable: IsWalkable;
        legal?: Direction[];
        matrix: Cell[][];
        rng?: () => number;
        self: Coord;
        taunt?: boolean;
        threats: Coord[];
    }
    Index
    canTauntNow?: boolean

    Caller already applied its cooldown. Omitted means not ready.

    difficulty: Difficulty
    isWalkable: IsWalkable
    legal?: Direction[]

    Steps the caller will accept. Omit to use every open neighbor. An empty list means the caller will not move, which is how a move limit is applied without this module knowing the rule.

    matrix: Cell[][]
    rng?: () => number
    self: Coord
    taunt?: boolean

    When omitted or false, the result is never "taunt". Pass true to allow the taunt rolls.

    threats: Coord[]