## 문제 - 타이머가 0초가 되어도 다음 라운드로 넘어가지 않음 - 정답을 맞춰도 다음 라운드로 전환되지 않음 - WebSocket 메시지의 중첩된 데이터 구조가 제대로 파싱되지 않음 - 연결되지 않은 상태에서 메시지 전송 시 불필요한 에러 표시 ## 해결 - WebSocket 이벤트 핸들러에서 `data.data || data` 패턴으로 중첩 데이터 처리 - 메시지 타입 대소문자 모두 처리 (round_end, ROUND_END 등) - 타이머 자동 스킵 시 stale closure 문제 해결 (useRef 사용) - 연결 안 된 상태에서 에러 대신 조용히 실패 처리 - 게임 중 채팅 메시지 비눗방울 애니메이션 추가 ## 변경 파일 - `useChatWebSocket.js`: 모든 게임 이벤트 핸들러 수정 - `chatWebSocketService.js`: 메시지 타입 대소문자 처리 - `GameModePanel.jsx`: 타이머 ref 사용, 비눗방울 애니메이션 - `ChatRoomPage.jsx`: 새로운 props 전달 - `ChatRoomModal.jsx`: 새로운 props 전달
문제
해결
data.data || data패턴으로 중첩 데이터 처리변경 파일
useChatWebSocket.js: 모든 게임 이벤트 핸들러 수정chatWebSocketService.js: 메시지 타입 대소문자 처리GameModePanel.jsx: 타이머 ref 사용, 비눗방울 애니메이션ChatRoomPage.jsx: 새로운 props 전달ChatRoomModal.jsx: 새로운 props 전달