@@ -29,6 +29,7 @@ import {
29
29
import {
30
30
useAuthStore ,
31
31
useMuteStore ,
32
+ useTimeoutStore ,
32
33
} from "src/store.js"
33
34
import {
34
35
useLayoutStore ,
@@ -79,9 +80,10 @@ export function Game() {
79
80
function Board ( { gameState, setGameState} ) {
80
81
let [ cursor_x , setCursor_x ] = useState ( - 1 )
81
82
let [ cursor_y , setCursor_y ] = useState ( - 1 )
82
- let [ countdown , setCountdown ] = useState ( 9 )
83
- let countdownRef = useRef ( )
84
- countdownRef . current = countdown
83
+ let timeout = useTimeoutStore ( state => state . timeout )
84
+ let setTimeout = useTimeoutStore ( state => state . setTimeout )
85
+ let timeoutRef = useRef ( )
86
+ timeoutRef . current = timeout
85
87
let [ ctrlKeyDown , setCtrlKeyDown ] = useState ( false )
86
88
let zoom = useViewStateStore ( state => state . zoom )
87
89
let { gameId} = useParams ( )
@@ -110,12 +112,12 @@ function Board({gameState, setGameState}) {
110
112
if ( intervalIdRef . current ) {
111
113
clearInterval ( intervalIdRef . current )
112
114
}
113
- setCountdown ( 10 )
115
+ setTimeout ( 10 )
114
116
intervalIdRef . current = setInterval ( ( ) => {
115
- setCountdown ( countdown => countdown - 1 )
117
+ setTimeout ( timeoutRef . current - 1 )
116
118
} , 1000 )
117
119
118
- } , [ ] )
120
+ } , [ setTimeout ] )
119
121
120
122
useEffect ( ( ) => {
121
123
resetCountdown ( )
@@ -250,9 +252,9 @@ function Board({gameState, setGameState}) {
250
252
251
253
useEffect ( ( ) => {
252
254
if ( ! showMoveNumbers ) {
253
- paintLastMove ( context , lastMove , countdown )
255
+ paintLastMove ( context , lastMove , timeout )
254
256
}
255
- } , [ showMoveNumbers , context , lastMove , countdown ] )
257
+ } , [ showMoveNumbers , context , lastMove , timeout ] )
256
258
257
259
let onMouseMove = useCallback ( ( e ) => {
258
260
if ( dragging ) {
@@ -343,7 +345,7 @@ function Board({gameState, setGameState}) {
343
345
if ( showMoveNumbers ) {
344
346
paintMoveNumbers ( context , board )
345
347
} else {
346
- paintLastMove ( context , lastMove , countdownRef . current )
348
+ paintLastMove ( context , lastMove , timeoutRef . current )
347
349
}
348
350
if ( currentPlayer ( gameState ) !== auth . name ) {
349
351
return
0 commit comments