Skip to content

Commit a8848de

Browse files
fix disconnection on rejoin
1 parent 79269a9 commit a8848de

1 file changed

Lines changed: 10 additions & 2 deletions

File tree

src/renderer/Voice.tsx

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -426,15 +426,23 @@ const Voice: React.FC<VoiceProps> = function ({
426426
) => {
427427
console.log('Connect called - Lobby:', lobbyCode, 'PlayerId:', playerId, 'ClientId', clientId);
428428

429-
socket.emit('leave');
429+
// We shouldn't always leave...
430+
// only leave if our lobby code has changed
431+
// socket.emit('leave');
430432

431433
if (lobbyCode === 'MENU') {
434+
// leave the prox lobby
435+
socket.emit('leave');
436+
432437
Object.keys(peerConnections).forEach((k) => {
433438
disconnectPeer(k);
434439
});
435440
setSocketClients({});
436441
currentLobby = lobbyCode;
437442
} else if (currentLobby !== lobbyCode) {
443+
// ensure clean reconnection
444+
socket.emit('leave');
445+
438446
socket.emit('join', lobbyCode, playerId, clientId);
439447
currentLobby = lobbyCode;
440448
}
@@ -728,8 +736,8 @@ const Voice: React.FC<VoiceProps> = function ({
728736
myPlayer.id,
729737
gameState.clientId
730738
);
731-
console.log( `PlayerId Changed: ${myPlayer?.id}` );
732739
}
740+
console.log( `PlayerId Changed: ${myPlayer?.id}`, myPlayer );
733741
}, [myPlayer?.id]);
734742

735743
const playerSocketIds: {

0 commit comments

Comments
 (0)