export interface GamePresentationState { activeControlIds: string[] activeControlSequences: number[] activeStart: boolean completedStart: boolean activeFinish: boolean completedFinish: boolean revealFullCourse: boolean activeLegIndices: number[] completedLegIndices: number[] completedControlIds: string[] completedControlSequences: number[] progressText: string punchableControlId: string | null punchButtonEnabled: boolean punchButtonText: string punchHintText: string } export const EMPTY_GAME_PRESENTATION_STATE: GamePresentationState = { activeControlIds: [], activeControlSequences: [], activeStart: false, completedStart: false, activeFinish: false, completedFinish: false, revealFullCourse: false, activeLegIndices: [], completedLegIndices: [], completedControlIds: [], completedControlSequences: [], progressText: '0/0', punchableControlId: null, punchButtonEnabled: false, punchButtonText: '打点', punchHintText: '等待进入检查点范围', }