diff --git a/example/src/App.tsx b/example/src/App.tsx index cb89a9a..45c2c98 100644 --- a/example/src/App.tsx +++ b/example/src/App.tsx @@ -10,7 +10,7 @@ function App() { const gameManager = useGame({ cols, rows }, useKeyBindings); const { containerRef, gameStatus, scoreManager } = gameManager; - const { timeValue, keystrokes, finalScore } = scoreManager; + const { timeValue, keystrokes, optimalSteps, efficiency, finalScore } = scoreManager; const formatTime = (ms: number) => { const seconds = Math.floor(ms / 1000); @@ -23,28 +23,41 @@ function App() {

VIMazing vim-maze v{version} example

- {(gameStatus === "started" || gameStatus === "has-key" || gameStatus === "game-won") && ( -
-
-
Time
-
{formatTime(timeValue)}
-
-
-
Keystrokes
-
{keystrokes}
-
- {gameStatus === "game-won" && finalScore && ( - <> -
-
-
Final Score
-
{finalScore}
-
- - )} -
- )} -
+ {(gameStatus === "started" || gameStatus === "has-key" || gameStatus === "game-won") && ( +
+
+
Time
+
{formatTime(timeValue)}
+
+
+
Keystrokes
+
{keystrokes}
+
+ {optimalSteps > 0 && ( + <> +
+
+
Optimal Steps
+
{optimalSteps}
+
+
+
Efficiency
+
{efficiency}%
+
+ + )} + {gameStatus === "game-won" && finalScore && ( + <> +
+
+
Final Score
+
{finalScore}
+
+ + )} +
+ )} +