SpadesViewtype
What the seat to move can see: its own hand, every bid, the tricks taken and the cards played.
Import it
import type { SpadesView } from "@johnmorrisdotca/toranpu/spades";
Definition
type SpadesView = {
seat: number;
hand: readonly CardId[];
phase: SpadesGame["phase"];
bids: readonly (number | null)[];
tricks: readonly number[];
trick: readonly SpadesPlay[];
seen: ReadonlySet<CardId>;
playable: readonly CardId[];
};
Members
| Name | Type | Description |
|---|---|---|
seat | number | |
hand | readonly string[] | |
phase | SpadesPhase | |
bids | readonly (number | null)[] | |
tricks | readonly number[] | |
trick | readonly SpadesPlay[] | |
seen | ReadonlySet<string> | Every card already played this deal, finished tricks and the one on the table. |
playable | readonly string[] |
Examples
import { CARD_GAME_TABLES, newGame } from "@johnmorrisdotca/toranpu";
import type { SpadesView } from "@johnmorrisdotca/toranpu/spades";
import { spadesView } from "@johnmorrisdotca/toranpu/spades";
const names = Array.from({ length: CARD_GAME_TABLES.spades.defaultPlayers }, (_, seat) => `Seat ${seat + 1}`);
const game = newGame("spades", { players: names, seed: 42 })!;
const value: SpadesView = spadesView(game);
console.log(value.hand.length);13What it prints (run when this page was built)