GoFishGametype
A GAME OF GO FISH: its table and moves (what is kept), and what they make.
One deal is the game; size is 1.
Import it
import type { GoFishGame } from "@johnmorrisdotca/toranpu/go-fish";
Definition
type GoFishGame = KeptCardGame<GoFishMove> & {
phase: "playing" | "over";
hands: CardId[][];
stock: CardId[];
books: CardRank[][];
toPlay: number | null;
log: GoFishEvent[];
};
Members
| Name | Type | Description |
|---|---|---|
size | number | |
players | readonly string[] | |
computers | readonly boolean[] | |
seed | number | |
moves | readonly GoFishMove[] | |
phase | "playing" | "over" | |
hands | string[][] | |
stock | string[] | The pond: the cards not dealt, top card first. |
books | Rank[][] | Each seat's books, one rank each, in the order laid down. |
toPlay | number | null | |
log | GoFishEvent[] | Everything said and shown at the table, in order: what a player (or a computer) remembers from. |
Examples
import { CARD_GAME_TABLES, newGame } from "@johnmorrisdotca/toranpu";
import type { GoFishGame } from "@johnmorrisdotca/toranpu/go-fish";
const names = Array.from({ length: CARD_GAME_TABLES.goFish.defaultPlayers }, (_, seat) => `Seat ${seat + 1}`);
const game = newGame("goFish", { players: names, seed: 42 })!;
const value: GoFishGame = game;
console.log(value.phase);playingWhat it prints (run when this page was built)