gameSessionState.ts 657 B

123456789101112131415161718
  1. export type GameSessionStatus = 'idle' | 'running' | 'finished' | 'failed'
  2. export type GameSessionEndReason = 'completed' | 'timed_out' | 'cancelled' | null
  3. export type GuidanceState = 'searching' | 'distant' | 'approaching' | 'ready'
  4. export type GameModeState = Record<string, unknown> | null
  5. export interface GameSessionState {
  6. status: GameSessionStatus
  7. endReason: GameSessionEndReason
  8. startedAt: number | null
  9. endedAt: number | null
  10. completedControlIds: string[]
  11. skippedControlIds: string[]
  12. currentTargetControlId: string | null
  13. inRangeControlId: string | null
  14. score: number
  15. guidanceState: GuidanceState
  16. modeState: GameModeState
  17. }