Skip to content

Commit 2510d2b

Browse files
committed
Revert "Wrap game time into a subcomponent (#194)"
This reverts commit 67288b2.
1 parent 7228b0e commit 2510d2b

2 files changed

Lines changed: 9 additions & 16 deletions

File tree

src/components/GameSidebar.js

Lines changed: 7 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -48,20 +48,15 @@ const useStyles = makeStyles((theme) => ({
4848
},
4949
}));
5050

51-
function GameTime({ startedAt, endedAt, pause }) {
52-
const time = useMoment(endedAt ? 0 : 500);
51+
function GameSidebar({ game, scores, leaderboard, pause, endedAt }) {
52+
const classes = useStyles();
53+
const { pathname } = useLocation();
54+
const time = useMoment(500);
5355
const gameTime = endedAt || time;
5456
const pauseEnd = pause?.end ?? gameTime;
5557
const pauseTime =
5658
(pause?.previous ?? 0) +
5759
(pause?.start < pauseEnd ? pauseEnd - pause.start : 0);
58-
// Hide the sub-second time resolution while game is active.
59-
return <>{formatTime(gameTime - startedAt - pauseTime, !endedAt)}</>;
60-
}
61-
62-
function GameSidebar({ game, scores, leaderboard, pause, endedAt }) {
63-
const classes = useStyles();
64-
const { pathname } = useLocation();
6560

6661
return (
6762
<Paper className={classes.sidebar}>
@@ -87,11 +82,9 @@ function GameSidebar({ game, scores, leaderboard, pause, endedAt }) {
8782
/>
8883
)}
8984
<Typography variant="h4" align="center">
90-
<GameTime
91-
startedAt={game.startedAt}
92-
endedAt={endedAt}
93-
pause={pause}
94-
/>
85+
{/* Hide the sub-second time resolution while game is active to
86+
avoid stressing beginners. */}
87+
{formatTime(gameTime - game.startedAt - pauseTime, !endedAt)}
9588
</Typography>
9689
</div>
9790
<Divider style={{ margin: "8px 0" }} />

src/hooks/useMoment.js

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -8,11 +8,11 @@ function useMoment(delay = 1000) {
88
const [offset] = useFirebaseRef(".info/serverTimeOffset");
99

1010
useEffect(() => {
11-
if (!delay) return;
12-
1311
const id = setInterval(() => {
1412
setTime(moment(Date.now() + offset));
1513
}, delay);
14+
15+
// Clear any intervals that saw stale offsets
1616
return () => clearInterval(id);
1717
}, [offset, delay]);
1818

0 commit comments

Comments
 (0)