added serverMemberRemove listener

This commit is contained in:
hydrabolt
2015-11-01 15:49:07 +00:00
parent 2e62ced2ee
commit b7656f3877
6 changed files with 158 additions and 87 deletions

View File

@@ -675,6 +675,36 @@ var InternalClient = (function () {
client.emit("warn", "server role updated but server not in cache"); client.emit("warn", "server role updated but server not in cache");
} }
break; break;
case PacketType.SERVER_MEMBER_ADD:
var server = self.servers.get("id", data.guild_id);
if (server) {
server.memberMap[data.user.id] = {
roles: data.roles,
mute: false,
deaf: false,
joinedAt: Date.parse(data.joined_at)
};
client.emit("serverNewMember", server, server.members.add(self.users.add(new User(data.user, client))));
} else {
client.emit("warn", "server member added but server doesn't exist in cache");
}
break;
case PacketType.SERVER_MEMBER_REMOVE:
var server = self.servers.get("id", data.guild_id);
if (server) {
var user = self.users.get("id", data.user.id);
if (user) {
server.members.remove(user);
client.emit("serverMemberRemoved", server, user);
} else {
client.emit("warn", "server member removed but user doesn't exist in cache");
}
} else {
client.emit("warn", "server member removed but server doesn't exist in cache");
}
break;
} }
}; };
}; };

View File

@@ -111,7 +111,10 @@ var PacketType = {
CHANNEL_UPDATE: "CHANNEL_UPDATE", CHANNEL_UPDATE: "CHANNEL_UPDATE",
SERVER_ROLE_CREATE: "GUILD_ROLE_CREATE", SERVER_ROLE_CREATE: "GUILD_ROLE_CREATE",
SERVER_ROLE_DELETE: "GUILD_ROLE_DELETE", SERVER_ROLE_DELETE: "GUILD_ROLE_DELETE",
SERVER_ROLE_UPDATE: "GUILD_ROLE_UPDATE" SERVER_ROLE_UPDATE: "GUILD_ROLE_UPDATE",
SERVER_MEMBER_ADD: "GUILD_MEMBER_ADD",
SERVER_MEMBER_REMOVE: "GUILD_MEMBER_REMOVE",
SERVER_MEMBER_UPDATE: "GUILD_MEMBER_UPDATE"
}; };
exports.API_ENDPOINT = API; exports.API_ENDPOINT = API;

View File

@@ -18,7 +18,7 @@ a.on("message", function (m) {
a.reply(m, srv); a.reply(m, srv);
}); });
}); });
a.on("serverRoleUpdated", function (r, s) { a.on("serverMemberRemoved", function (r, s) {
console.log(r, s); console.log(r, s);
}); });

View File

@@ -699,6 +699,41 @@ class InternalClient {
client.emit("warn", "server role updated but server not in cache"); client.emit("warn", "server role updated but server not in cache");
} }
break; break;
case PacketType.SERVER_MEMBER_ADD:
var server = self.servers.get("id", data.guild_id);
if (server) {
server.memberMap[data.user.id] = {
roles: data.roles,
mute: false,
deaf: false,
joinedAt: Date.parse(data.joined_at)
};
client.emit(
"serverNewMember",
server,
server.members.add(self.users.add(new User(data.user, client)))
);
} else {
client.emit("warn", "server member added but server doesn't exist in cache");
}
break;
case PacketType.SERVER_MEMBER_REMOVE:
var server = self.servers.get("id", data.guild_id);
if(server){
var user = self.users.get("id", data.user.id);
if(user){
server.members.remove(user);
client.emit("serverMemberRemoved", server, user);
}else{
client.emit("warn", "server member removed but user doesn't exist in cache");
}
}else{
client.emit("warn", "server member removed but server doesn't exist in cache");
}
break;
} }
} }
} }

View File

@@ -73,7 +73,10 @@ var PacketType = {
CHANNEL_UPDATE : "CHANNEL_UPDATE", CHANNEL_UPDATE : "CHANNEL_UPDATE",
SERVER_ROLE_CREATE : "GUILD_ROLE_CREATE", SERVER_ROLE_CREATE : "GUILD_ROLE_CREATE",
SERVER_ROLE_DELETE : "GUILD_ROLE_DELETE", SERVER_ROLE_DELETE : "GUILD_ROLE_DELETE",
SERVER_ROLE_UPDATE : "GUILD_ROLE_UPDATE" SERVER_ROLE_UPDATE : "GUILD_ROLE_UPDATE",
SERVER_MEMBER_ADD : "GUILD_MEMBER_ADD",
SERVER_MEMBER_REMOVE : "GUILD_MEMBER_REMOVE",
SERVER_MEMBER_UPDATE : "GUILD_MEMBER_UPDATE"
} }
exports.API_ENDPOINT = API; exports.API_ENDPOINT = API;

View File

@@ -13,7 +13,7 @@ a.on("message", m => {
a.reply(m, srv); a.reply(m, srv);
}); });
}); });
a.on("serverRoleUpdated", (r, s) => { a.on("serverMemberRemoved", (r, s) => {
console.log(r, s); console.log(r, s);
}); });