UNPKG

@haelp/teto

Version:

A typescript-based controllable TETR.IO client.

214 lines 6.62 kB
import type { Game as GameTypes } from "../.."; export interface Game { "game.ready": GameTypes.Ready; "game.abort": void; "game.match": { gamemode: GameTypes.GameMode; modename: string; rb: { type: string; options: { ft: number; wb: number; gp: number; }; leaderboard: GameTypes.Leaderboard[]; }; rrb: { type: string; options: {}; scoreboard: { id: string; username: string; active: boolean; naturalorder: number; shadows: any[]; shadowedBy: (null | string)[]; alive: boolean; lifetime: number; stats: { apm: number | null; pps: number | null; vsscore: number | null; garbagesent: number; garbagereceived: number; kills: number; altitude: number; rank: number; targetingfactor: number; targetinggrace: number; btb: number; revives: number; escapeartist: number; blockrationing_app: number; blockrationing_final: number; }; }[]; }; }; "game.start": void; "game.advance": { scoreboard: { id: string; username: string; active: boolean; naturalorder: number; shadows: []; shadowedBy: [null, null]; alive: boolean; lifetime: number; stats: { apm: number; pps: number; vsscore: number; garbagesent: number; garbagereceived: number; kills: 1; altitude: 0; rank: 1; targetingfactor: 3; targetinggrace: 0; }; }[]; }; "game.score": { refereedata: { ft: number; wb: number; modename: string; }; leaderboard: GameTypes.Leaderboard[]; victor: string; }; "game.end": { leaderboard: GameTypes.Leaderboard[]; currentboard: GameTypes.Leaderboard[]; xpPerUser: number; }; "game.replay.state": { gameid: number; data: "early" | "wait"; }; "game.replay.ige": { gameid: number; iges: GameTypes.IGE[]; }; "game.replay.board": { boards: { 0: { board: { /** Board state */ b: GameTypes.BoardSquare[][]; /** Frame number or turn */ f: number; /** Game status or flag */ g: number; /** Board width */ w: number; /** Board height */ h: number; }; gameid: number; }; 1: { board: { /** Board state */ b: GameTypes.BoardSquare[][]; /** Frame number or turn */ f: number; /** Game status or flag */ g: number; /** Board width */ w: number; /** Board height */ h: number; }; gameid: number; }; }; }; "game.replay": { gameid: number; provisioned: number; frames: GameTypes.Replay.Frame[]; }; "game.replay.end": { gameid: number; data: { gameoverreason: GameTypes.GameOverReason; killer: { gameid: number; type: "sizzle"; username: null | string; }; }; }; "game.spectate": { id: number; data: { players: { userid: string; gameid: number; alive: boolean; naturalorder: number; options: GameTypes.ReadyOptions; }[]; match: { gamemode: string; modename: string; rb: { type: "elimination"; options: { ft: number; wb: number; gp: number; }; leaderboard: { id: string; username: string; active: boolean; naturalorder: number; shadows: any[]; shadowedBy: (null | any)[]; wins: number; stats: { apm: number | null; pps: number | null; vsscore: number | null; garbagesent: number; garbagereceived: number; kills: number; altitude: number; rank: number; targetingfactor: number; targetinggrace: number; btb: number; revives: number; }; }[]; }; rrb: { type: string; options: Record<string, unknown>; scoreboard: { sb: { stats: { rank: number; altitude: number; btb: number; revives: number; }; allies: any[]; gameid: number; specCount: number; speedrun: boolean; nearWR: boolean; lovers: boolean; }[]; }; }; }; }; }; } //# sourceMappingURL=game.d.ts.map