Files
cmr-mini/miniprogram/game/core/gameSessionState.ts

19 lines
657 B
TypeScript

export type GameSessionStatus = 'idle' | 'running' | 'finished' | 'failed'
export type GameSessionEndReason = 'completed' | 'timed_out' | 'cancelled' | null
export type GuidanceState = 'searching' | 'distant' | 'approaching' | 'ready'
export type GameModeState = Record<string, unknown> | null
export interface GameSessionState {
status: GameSessionStatus
endReason: GameSessionEndReason
startedAt: number | null
endedAt: number | null
completedControlIds: string[]
skippedControlIds: string[]
currentTargetControlId: string | null
inRangeControlId: string | null
score: number
guidanceState: GuidanceState
modeState: GameModeState
}