From 0715d7db9662da182a7218de2a7118af3d62be7e Mon Sep 17 00:00:00 2001 From: Waterball <46353821+Waterball12@users.noreply.github.com> Date: Wed, 28 Apr 2021 14:59:31 +0100 Subject: [PATCH] Feature: Add missing property to MESSAGE_REACTION_ADD event (#1801) * Add guild member property for reaction * Use the guild member provided by the event when present --- src/Discord.Net.WebSocket/API/Gateway/Reaction.cs | 4 +++- src/Discord.Net.WebSocket/DiscordSocketClient.cs | 8 ++++++++ 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/src/Discord.Net.WebSocket/API/Gateway/Reaction.cs b/src/Discord.Net.WebSocket/API/Gateway/Reaction.cs index 62de456e2..a0a740868 100644 --- a/src/Discord.Net.WebSocket/API/Gateway/Reaction.cs +++ b/src/Discord.Net.WebSocket/API/Gateway/Reaction.cs @@ -1,4 +1,4 @@ -using Newtonsoft.Json; +using Newtonsoft.Json; namespace Discord.API.Gateway { @@ -12,5 +12,7 @@ namespace Discord.API.Gateway public ulong ChannelId { get; set; } [JsonProperty("emoji")] public Emoji Emoji { get; set; } + [JsonProperty("member")] + public Optional Member { get; set; } } } diff --git a/src/Discord.Net.WebSocket/DiscordSocketClient.cs b/src/Discord.Net.WebSocket/DiscordSocketClient.cs index b43db5d98..520f69073 100644 --- a/src/Discord.Net.WebSocket/DiscordSocketClient.cs +++ b/src/Discord.Net.WebSocket/DiscordSocketClient.cs @@ -1384,6 +1384,14 @@ namespace Discord.WebSocket ? Optional.Create() : Optional.Create(cachedMsg); + if (data.Member.IsSpecified) + { + var guild = (channel as SocketGuildChannel)?.Guild; + + if (guild != null) + user = guild.AddOrUpdateUser(data.Member.Value); + } + var optionalUser = user is null ? Optional.Create() : Optional.Create(user);