feature: Add MessageFlags and AllowedMentions to message modify (#1724)

* feature: Add MessageFlags and AllowedMentions to Modify

* Change exception message
This commit is contained in:
Paulo
2020-12-23 12:47:20 -03:00
committed by GitHub
parent c683b2901d
commit 225550dc5a
10 changed files with 108 additions and 27 deletions

View File

@@ -58,6 +58,9 @@ namespace Discord.WebSocket
/// <inheritdoc />
public MessageReference Reference { get; private set; }
/// <inheritdoc />
public MessageFlags? Flags { get; private set; }
/// <summary>
/// Returns all attachments included in this message.
/// </summary>
@@ -156,6 +159,9 @@ namespace Discord.WebSocket
MessageId = model.Reference.Value.MessageId
};
}
if (model.Flags.IsSpecified)
Flags = model.Flags.Value;
}
/// <inheritdoc />

View File

@@ -15,7 +15,7 @@ namespace Discord.WebSocket
[DebuggerDisplay(@"{DebuggerDisplay,nq}")]
public class SocketUserMessage : SocketMessage, IUserMessage
{
private bool _isMentioningEveryone, _isTTS, _isPinned, _isSuppressed;
private bool _isMentioningEveryone, _isTTS, _isPinned;
private long? _editedTimestampTicks;
private IUserMessage _referencedMessage;
private ImmutableArray<Attachment> _attachments = ImmutableArray.Create<Attachment>();
@@ -29,7 +29,7 @@ namespace Discord.WebSocket
/// <inheritdoc />
public override bool IsPinned => _isPinned;
/// <inheritdoc />
public override bool IsSuppressed => _isSuppressed;
public override bool IsSuppressed => Flags.HasValue && Flags.Value.HasFlag(MessageFlags.SuppressEmbeds);
/// <inheritdoc />
public override DateTimeOffset? EditedTimestamp => DateTimeUtils.FromTicks(_editedTimestampTicks);
/// <inheritdoc />
@@ -74,10 +74,6 @@ namespace Discord.WebSocket
_editedTimestampTicks = model.EditedTimestamp.Value?.UtcTicks;
if (model.MentionEveryone.IsSpecified)
_isMentioningEveryone = model.MentionEveryone.Value;
if (model.Flags.IsSpecified)
{
_isSuppressed = model.Flags.Value.HasFlag(API.MessageFlags.Suppressed);
}
if (model.RoleMentions.IsSpecified)
_roleMentions = model.RoleMentions.Value.Select(x => guild.GetRole(x)).ToImmutableArray();