From 9ae1761d34fa1a5e0c5d279f223019af95595546 Mon Sep 17 00:00:00 2001 From: RogueException Date: Tue, 3 Nov 2015 14:59:13 -0400 Subject: [PATCH] Set IsMentioningMe to true if your role is mentioned --- src/Discord.Net/Models/Message.cs | 10 ++++++---- 1 file changed, 6 insertions(+), 4 deletions(-) diff --git a/src/Discord.Net/Models/Message.cs b/src/Discord.Net/Models/Message.cs index 0787ae579..c39ad08d1 100644 --- a/src/Discord.Net/Models/Message.cs +++ b/src/Discord.Net/Models/Message.cs @@ -177,6 +177,7 @@ namespace Discord internal void Update(MessageInfo model) { + var server = Server; if (model.Attachments != null) { Attachments = model.Attachments @@ -212,12 +213,9 @@ namespace Discord MentionedUsers = model.Mentions .Select(x => _client.Users[x.Id, Channel.Server?.Id]) .ToArray(); - IsMentioningMe = model.Mentions - .Any(x => x.Id == _client.CurrentUserId); } if (model.Content != null) { - var server = Server; string text = model.Content; RawText = text; @@ -235,7 +233,11 @@ namespace Discord MentionedChannels = mentionedChannels; MentionedRoles = mentionedRoles; } - } + + IsMentioningMe = model.Mentions + .Any(x => x.Id == _client.CurrentUserId) || + (server != null && MentionedRoles.Any(x => server.CurrentUser.HasRole(x))); + } public override bool Equals(object obj) => obj is Message && (obj as Message).Id == Id; public override int GetHashCode() => Id.GetHashCode();