diff --git a/lib/Structures/Server.js b/lib/Structures/Server.js index cae5136e4..e4ba60519 100644 --- a/lib/Structures/Server.js +++ b/lib/Structures/Server.js @@ -159,6 +159,11 @@ var Server = (function (_Equality) { var _user = this.members.get("id", voiceState.user_id); var channel = this.channels.get("id", voiceState.channel_id); + this.memberMap[_user.id] = this.memberMap[_user.id] || {}; + this.memberMap[_user.id].mute = voiceState.mute || this.memberMap[_user.id].mute; + this.memberMap[_user.id].selfMute = voiceState.self_mute || this.memberMap[_user.id].selfMute; + this.memberMap[_user.id].deaf = voiceState.deaf || this.memberMap[_user.id].deaf; + this.memberMap[_user.id].selfDeaf = voiceState.self_deaf || this.memberMap[_user.id].selfDeaf; if (_user && channel) { this.eventVoiceJoin(_user, channel); } else { @@ -219,10 +224,6 @@ var Server = (function (_Equality) { channel.members.add(user); user.voiceChannel = channel; - this.memberMap[user.id].mute = data.mute || this.memberMap[user.id].mute; - this.memberMap[user.id].selfMute = data.self_mute || this.memberMap[user.id].selfMute; - this.memberMap[user.id].deaf = data.deaf || this.memberMap[user.id].deaf; - this.memberMap[user.id].selfDeaf = data.self_deaf || this.memberMap[user.id].selfDeaf; this.client.emit("voiceJoin", channel, user); }; diff --git a/src/Structures/Server.js b/src/Structures/Server.js index 160ede0f8..b2f69fcc1 100644 --- a/src/Structures/Server.js +++ b/src/Structures/Server.js @@ -94,6 +94,11 @@ export default class Server extends Equality { for (var voiceState of data.voice_states) { let user = this.members.get("id", voiceState.user_id); let channel = this.channels.get("id", voiceState.channel_id); + this.memberMap[user.id] = this.memberMap[user.id] || {}; + this.memberMap[user.id].mute = voiceState.mute || this.memberMap[user.id].mute; + this.memberMap[user.id].selfMute = voiceState.self_mute || this.memberMap[user.id].selfMute; + this.memberMap[user.id].deaf = voiceState.deaf || this.memberMap[user.id].deaf; + this.memberMap[user.id].selfDeaf = voiceState.self_deaf || this.memberMap[user.id].selfDeaf; if (user && channel) { this.eventVoiceJoin(user, channel); } else { @@ -182,10 +187,6 @@ export default class Server extends Equality { channel.members.add(user); user.voiceChannel = channel; - this.memberMap[user.id].mute = data.mute || this.memberMap[user.id].mute; - this.memberMap[user.id].selfMute = data.self_mute || this.memberMap[user.id].selfMute; - this.memberMap[user.id].deaf = data.deaf || this.memberMap[user.id].deaf; - this.memberMap[user.id].selfDeaf = data.self_deaf || this.memberMap[user.id].selfDeaf; this.client.emit("voiceJoin", channel, user); }