mirror of
https://github.com/danbulant/discord.js
synced 2026-07-08 12:40:50 +00:00
Revise member property handling
This commit is contained in:
parent
af333ef4cc
commit
68c1e122c0
4 changed files with 21 additions and 13 deletions
|
|
@ -2101,14 +2101,14 @@ var InternalClient = (function () {
|
||||||
} else {
|
} else {
|
||||||
server.memberMap[data.user.id] = {};
|
server.memberMap[data.user.id] = {};
|
||||||
}
|
}
|
||||||
server.memberMap[data.user.id].roles = data.roles.map(function (pid) {
|
server.memberMap[data.user.id].roles = data.roles ? data.roles.map(function (pid) {
|
||||||
return server.roles.get("id", pid);
|
return server.roles.get("id", pid);
|
||||||
});
|
}) : server.memberMap[data.user.id].roles;
|
||||||
server.memberMap[data.user.id].mute = data.mute;
|
server.memberMap[data.user.id].mute = data.mute || server.memberMap[data.user.id].mute;
|
||||||
server.memberMap[data.user.id].selfMute = data.self_mute;
|
server.memberMap[data.user.id].selfMute = data.self_mute || server.memberMap[data.user.id].selfMute;
|
||||||
server.memberMap[data.user.id].deaf = data.deaf;
|
server.memberMap[data.user.id].deaf = data.deaf || server.memberMap[data.user.id].deaf;
|
||||||
server.memberMap[data.user.id].selfDeaf = data.self_deaf;
|
server.memberMap[data.user.id].selfDeaf = data.self_deaf || server.memberMap[data.user.id].selfDeaf;
|
||||||
server.memberMap[data.user.id].nick = data.nick || null;
|
server.memberMap[data.user.id].nick = data.nick || server.memberMap[data.user.id].nick || null;
|
||||||
client.emit("serverMemberUpdated", server, user, oldMember);
|
client.emit("serverMemberUpdated", server, user, oldMember);
|
||||||
} else {
|
} else {
|
||||||
client.emit("warn", "server member removed but user doesn't exist in cache");
|
client.emit("warn", "server member removed but user doesn't exist in cache");
|
||||||
|
|
|
||||||
|
|
@ -219,6 +219,10 @@ var Server = (function (_Equality) {
|
||||||
|
|
||||||
channel.members.add(user);
|
channel.members.add(user);
|
||||||
user.voiceChannel = channel;
|
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);
|
this.client.emit("voiceJoin", channel, user);
|
||||||
};
|
};
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -1799,12 +1799,12 @@ export default class InternalClient {
|
||||||
} else {
|
} else {
|
||||||
server.memberMap[data.user.id] = {};
|
server.memberMap[data.user.id] = {};
|
||||||
}
|
}
|
||||||
server.memberMap[data.user.id].roles = data.roles.map(pid => server.roles.get("id", pid));
|
server.memberMap[data.user.id].roles = data.roles ? data.roles.map(pid => server.roles.get("id", pid)) : server.memberMap[data.user.id].roles;
|
||||||
server.memberMap[data.user.id].mute = data.mute;
|
server.memberMap[data.user.id].mute = data.mute || server.memberMap[data.user.id].mute;
|
||||||
server.memberMap[data.user.id].selfMute = data.self_mute;
|
server.memberMap[data.user.id].selfMute = data.self_mute || server.memberMap[data.user.id].selfMute;
|
||||||
server.memberMap[data.user.id].deaf = data.deaf;
|
server.memberMap[data.user.id].deaf = data.deaf || server.memberMap[data.user.id].deaf;
|
||||||
server.memberMap[data.user.id].selfDeaf = data.self_deaf;
|
server.memberMap[data.user.id].selfDeaf = data.self_deaf || server.memberMap[data.user.id].selfDeaf;
|
||||||
server.memberMap[data.user.id].nick = data.nick || null;
|
server.memberMap[data.user.id].nick = data.nick || server.memberMap[data.user.id].nick || null;
|
||||||
client.emit("serverMemberUpdated", server, user, oldMember);
|
client.emit("serverMemberUpdated", server, user, oldMember);
|
||||||
} else {
|
} else {
|
||||||
client.emit("warn", "server member removed but user doesn't exist in cache");
|
client.emit("warn", "server member removed but user doesn't exist in cache");
|
||||||
|
|
|
||||||
|
|
@ -182,6 +182,10 @@ export default class Server extends Equality {
|
||||||
|
|
||||||
channel.members.add(user);
|
channel.members.add(user);
|
||||||
user.voiceChannel = channel;
|
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);
|
this.client.emit("voiceJoin", channel, user);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
Loading…
Reference in a new issue