From 599fdd6ceb80695e32a761c6a40bb6b270ec199b Mon Sep 17 00:00:00 2001 From: PizZaKatZe Date: Fri, 19 Mar 2021 15:03:55 +0100 Subject: [PATCH] Fix group icons and audio attenuation --- front/src/Phaser/Game/GameScene.ts | 8 ++++---- front/src/WebRtc/SimplePeer.ts | 9 +++++---- 2 files changed, 9 insertions(+), 8 deletions(-) diff --git a/front/src/Phaser/Game/GameScene.ts b/front/src/Phaser/Game/GameScene.ts index ba87ba23..f350aff7 100644 --- a/front/src/Phaser/Game/GameScene.ts +++ b/front/src/Phaser/Game/GameScene.ts @@ -457,16 +457,12 @@ export class GameScene extends ResizableScene implements CenterListener { }); this.connection.onGroupUpdatedOrCreated((groupPositionMessage: GroupCreatedUpdatedMessageInterface) => { - audioManager.decreaseVolume(); this.shareGroupPosition(groupPositionMessage); - this.openChatIcon.setVisible(true); }) this.connection.onGroupDeleted((groupId: number) => { - audioManager.restoreVolume(); try { this.deleteGroup(groupId); - this.openChatIcon.setVisible(false); } catch (e) { console.error(e); } @@ -519,11 +515,15 @@ export class GameScene extends ResizableScene implements CenterListener { onConnect(user: UserSimplePeerInterface) { self.presentationModeSprite.setVisible(true); self.chatModeSprite.setVisible(true); + self.openChatIcon.setVisible(true); + audioManager.decreaseVolume(); }, onDisconnect(userId: number) { if (self.simplePeer.getNbConnections() === 0) { self.presentationModeSprite.setVisible(false); self.chatModeSprite.setVisible(false); + self.openChatIcon.setVisible(false); + audioManager.restoreVolume(); } } }) diff --git a/front/src/WebRtc/SimplePeer.ts b/front/src/WebRtc/SimplePeer.ts index 2baeef11..73a87d14 100644 --- a/front/src/WebRtc/SimplePeer.ts +++ b/front/src/WebRtc/SimplePeer.ts @@ -63,7 +63,7 @@ export class SimplePeer { } public getNbConnections(): number { - return this.PeerConnectionArray.size; + return this.Users.length; } /** @@ -230,9 +230,6 @@ export class SimplePeer { this.closeScreenSharingConnection(userId); - for (const peerConnectionListener of this.peerConnectionListeners) { - peerConnectionListener.onDisconnect(userId); - } const userIndex = this.Users.findIndex(user => user.userId === userId); if(userIndex < 0){ throw 'Couln\'t delete user'; @@ -250,6 +247,10 @@ export class SimplePeer { this.PeerScreenSharingConnectionArray.delete(userId); } } + + for (const peerConnectionListener of this.peerConnectionListeners) { + peerConnectionListener.onDisconnect(userId); + } } /**