UNPKG

@hiddentao/clockwork-engine

Version:

A TypeScript/PIXI.js game engine for deterministic, replayable games with built-in rendering

43 lines 1.5 kB
import type { GameEventManager } from "./GameEventManager"; import type { AnyGameEvent, GameConfig, GameRecording } from "./types"; export declare class GameRecorder { protected recording: GameRecording | null; protected isRecording: boolean; protected eventManager: GameEventManager | null; protected deltaTicks: number[]; protected totalTicks: number; /** * Start recording a game session * Begins recording from the current event manager */ startRecording(eventManager: GameEventManager, gameConfig: GameConfig, descriptionOrMetadata?: string | Record<string, any>, additionalMetadata?: Record<string, any>): void; /** * Record any game event * Only records if currently recording */ recordEvent(event: AnyGameEvent): void; /** * Record tick update with deltaTicks and totalTicks * Only records if currently recording */ recordFrameUpdate(deltaTicks: number, totalTicks: number): void; /** * Stop recording * Recording data remains available via getCurrentRecording() */ stopRecording(): void; /** * Check if currently recording */ isCurrentlyRecording(): boolean; /** * Get the current recording (without stopping it) * Useful for inspecting recording state */ getCurrentRecording(): GameRecording | null; /** * Reset the recorder, clearing any existing recording */ reset(): void; } //# sourceMappingURL=GameRecorder.d.ts.map