fix(memory-quiz): persist playMode setting across game switches
The socket-server was missing playMode when creating the initial session for memory-quiz games. It was only loading selectedCount, displayTime, and selectedDifficulty from the saved config, causing playMode to always reset to the default 'cooperative' even when 'competitive' was saved. Now includes playMode in the initial state config: - selectedCount - displayTime - selectedDifficulty - playMode (NEW) This ensures the playMode setting persists when users: 1. Set playMode to 'competitive' 2. Go back to game selection 3. Select memory-quiz again 4. PlayMode is still 'competitive' (not reset to 'cooperative') 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude <noreply@anthropic.com>
This commit is contained in:
@@ -92,12 +92,13 @@ export function initializeSocketServer(httpServer: HTTPServer) {
|
||||
turnTimer: matchingConfig.turnTimer || 30,
|
||||
})
|
||||
} else if (room.gameName === 'memory-quiz') {
|
||||
// Access nested gameConfig: { 'memory-quiz': { selectedCount, displayTime, selectedDifficulty } }
|
||||
// Access nested gameConfig: { 'memory-quiz': { selectedCount, displayTime, selectedDifficulty, playMode } }
|
||||
const memoryQuizConfig = (room.gameConfig as any)?.['memory-quiz'] || {}
|
||||
initialState = validator.getInitialState({
|
||||
selectedCount: memoryQuizConfig.selectedCount || 5,
|
||||
displayTime: memoryQuizConfig.displayTime || 2.0,
|
||||
selectedDifficulty: memoryQuizConfig.selectedDifficulty || 'easy',
|
||||
playMode: memoryQuizConfig.playMode || 'cooperative',
|
||||
})
|
||||
} else {
|
||||
// Fallback for other games
|
||||
|
||||
Reference in New Issue
Block a user