GuildMembersChunk packet handler hotfix (#1125)

* GuildMembersChunk packet handler hotfix

* Add limit, resolve properly if a query is used

* Document new GuildMemberChunk param
This commit is contained in:
Programmix
2017-01-24 13:55:36 -08:00
committed by Amish Shah
parent 4b2053133d
commit c1a5bee61f
2 changed files with 6 additions and 4 deletions

View File

@@ -347,9 +347,10 @@ class Guild {
* Fetches all the members in the guild, even if they are offline. If the guild has less than 250 members,
* this should not be necessary.
* @param {string} [query=''] Limit fetch to members with similar usernames
* @param {number} [limit=0] Maximum number of members to request
* @returns {Promise<Guild>}
*/
fetchMembers(query = '') {
fetchMembers(query = '', limit = 0) {
return new Promise((resolve, reject) => {
if (this.memberCount === this.members.size) {
// uncomment in v12
@@ -362,12 +363,12 @@ class Guild {
d: {
guild_id: this.id,
query,
limit: 0,
limit,
},
});
const handler = (members, guild) => {
if (guild.id !== this.id) return;
if (this.memberCount === this.members.size) {
if (this.memberCount === this.members.size || members.length < 1000) {
this.client.removeListener(Constants.Events.GUILD_MEMBERS_CHUNK, handler);
// uncomment in v12
// resolve(this.members)