From 8b91ac5d7e217f5df61e8b79ee8f45e86a10a3cf Mon Sep 17 00:00:00 2001 From: SpaceEEC Date: Fri, 20 Nov 2020 16:19:18 +0100 Subject: [PATCH] fix(MessageReaction*Action): correctly cache incoming members and users (#4969) --- src/client/actions/Action.js | 5 +++-- src/client/actions/MessageReactionAdd.js | 5 ++++- src/client/actions/MessageReactionRemove.js | 3 ++- 3 files changed, 9 insertions(+), 4 deletions(-) diff --git a/src/client/actions/Action.js b/src/client/actions/Action.js index 07ce7ed57..69e3b63a9 100644 --- a/src/client/actions/Action.js +++ b/src/client/actions/Action.js @@ -93,8 +93,9 @@ class GenericAction { if (data.guild_id && data.member && data.member.user) { const guild = this.client.guilds.cache.get(data.guild_id); if (guild) { - const member = this.getMember(data.member, guild); - return member ? member.user : this.getUser(data.member.user); + return guild.members.add(data.member).user; + } else { + return this.client.users.add(data.member.user); } } return this.getUser(data); diff --git a/src/client/actions/MessageReactionAdd.js b/src/client/actions/MessageReactionAdd.js index 54929f661..c7b015190 100644 --- a/src/client/actions/MessageReactionAdd.js +++ b/src/client/actions/MessageReactionAdd.js @@ -8,7 +8,10 @@ const { PartialTypes } = require('../../util/Constants'); { user_id: 'id', message_id: 'id', emoji: { name: '�', id: null }, - channel_id: 'id' } } + channel_id: 'id', + // If originating from a guild + guild_id: 'id', + member: { ..., user: { ... } } } */ class MessageReactionAdd extends Action { diff --git a/src/client/actions/MessageReactionRemove.js b/src/client/actions/MessageReactionRemove.js index a40aa7558..874024657 100644 --- a/src/client/actions/MessageReactionRemove.js +++ b/src/client/actions/MessageReactionRemove.js @@ -7,7 +7,8 @@ const { Events } = require('../../util/Constants'); { user_id: 'id', message_id: 'id', emoji: { name: '�', id: null }, - channel_id: 'id' } } + channel_id: 'id', + guild_id: 'id' } */ class MessageReactionRemove extends Action {