diff --git a/src/useGame/useGame.ts b/src/useGame/useGame.ts index 259a2f4..986d86d 100755 --- a/src/useGame/useGame.ts +++ b/src/useGame/useGame.ts @@ -46,7 +46,7 @@ export function useGame(optionsOrCols: GameOptions | number, rows?: number, plat }, }); - const scoreManager = useScore({ gameStatus }); + const scoreManager = useScore({ gameStatus, keyLog: keyBindings.keyLog }); // Wrap renderBoard to match Unified API signature const renderBoardWrapped = () => { diff --git a/src/useScore/useScore.ts b/src/useScore/useScore.ts index a512f18..674d0c3 100755 --- a/src/useScore/useScore.ts +++ b/src/useScore/useScore.ts @@ -1,12 +1,13 @@ import { useTimer } from "./hooks/useTimer"; import { useScoreTime } from "./useScoreTime"; -import type { GameStatus } from "../types"; +import type { GameStatus, KeyLogEntry } from "../types"; export type UseScoreParams = { gameStatus: GameStatus; + keyLog: KeyLogEntry[]; }; -export function useScore({ gameStatus }: UseScoreParams) { +export function useScore({ gameStatus, keyLog }: UseScoreParams) { const timer = useTimer(); const { timeValue, startTimer, stopTimer, resetTimer } = timer; @@ -14,7 +15,7 @@ export function useScore({ gameStatus }: UseScoreParams) { return { timeValue, - totalKeystrokes: 0, // TODO: Track from keyBindings + totalKeystrokes: keyLog.length, finalScore: null, // TODO: Calculate on game-won startTimer, stopTimer,