|
@@ -96,7 +96,7 @@ namespace Discord.Rest |
|
|
|
|
|
|
|
|
public static async Task RemoveReactionAsync(ulong channelId, ulong messageId, ulong userId, IEmote emote, BaseDiscordClient client, RequestOptions options) |
|
|
public static async Task RemoveReactionAsync(ulong channelId, ulong messageId, ulong userId, IEmote emote, BaseDiscordClient client, RequestOptions options) |
|
|
{ |
|
|
{ |
|
|
await client.ApiClient.RemoveReactionAsync(channelId, messageId, userId, emote is Emote e ? $"{e.Name}:{e.Id}" : emote.Name, options).ConfigureAwait(false); |
|
|
|
|
|
|
|
|
await client.ApiClient.RemoveReactionAsync(channelId, messageId, userId, emote is Emote e ? $"{e.Name}:{e.Id}" : UrlEncode(emote.Name), options).ConfigureAwait(false); |
|
|
} |
|
|
} |
|
|
|
|
|
|
|
|
public static async Task RemoveReactionAsync(IMessage msg, ulong userId, IEmote emote, BaseDiscordClient client, RequestOptions options) |
|
|
public static async Task RemoveReactionAsync(IMessage msg, ulong userId, IEmote emote, BaseDiscordClient client, RequestOptions options) |
|
@@ -214,10 +214,13 @@ namespace Discord.Rest |
|
|
while (true) |
|
|
while (true) |
|
|
{ |
|
|
{ |
|
|
index = text.IndexOf('<', index); |
|
|
index = text.IndexOf('<', index); |
|
|
if (index == -1) break; |
|
|
|
|
|
|
|
|
if (index == -1) |
|
|
|
|
|
break; |
|
|
int endIndex = text.IndexOf('>', index + 1); |
|
|
int endIndex = text.IndexOf('>', index + 1); |
|
|
if (endIndex == -1) break; |
|
|
|
|
|
if (CheckWrappedCode()) break; |
|
|
|
|
|
|
|
|
if (endIndex == -1) |
|
|
|
|
|
break; |
|
|
|
|
|
if (CheckWrappedCode()) |
|
|
|
|
|
break; |
|
|
string content = text.Substring(index, endIndex - index + 1); |
|
|
string content = text.Substring(index, endIndex - index + 1); |
|
|
|
|
|
|
|
|
if (MentionUtils.TryParseUser(content, out ulong id)) |
|
|
if (MentionUtils.TryParseUser(content, out ulong id)) |
|
@@ -264,8 +267,10 @@ namespace Discord.Rest |
|
|
while (true) |
|
|
while (true) |
|
|
{ |
|
|
{ |
|
|
index = text.IndexOf("@everyone", index); |
|
|
index = text.IndexOf("@everyone", index); |
|
|
if (index == -1) break; |
|
|
|
|
|
if (CheckWrappedCode()) break; |
|
|
|
|
|
|
|
|
if (index == -1) |
|
|
|
|
|
break; |
|
|
|
|
|
if (CheckWrappedCode()) |
|
|
|
|
|
break; |
|
|
var tagIndex = FindIndex(tags, index); |
|
|
var tagIndex = FindIndex(tags, index); |
|
|
if (tagIndex.HasValue) |
|
|
if (tagIndex.HasValue) |
|
|
tags.Insert(tagIndex.Value, new Tag<IRole>(TagType.EveryoneMention, index, "@everyone".Length, 0, guild?.EveryoneRole)); |
|
|
tags.Insert(tagIndex.Value, new Tag<IRole>(TagType.EveryoneMention, index, "@everyone".Length, 0, guild?.EveryoneRole)); |
|
@@ -277,8 +282,10 @@ namespace Discord.Rest |
|
|
while (true) |
|
|
while (true) |
|
|
{ |
|
|
{ |
|
|
index = text.IndexOf("@here", index); |
|
|
index = text.IndexOf("@here", index); |
|
|
if (index == -1) break; |
|
|
|
|
|
if (CheckWrappedCode()) break; |
|
|
|
|
|
|
|
|
if (index == -1) |
|
|
|
|
|
break; |
|
|
|
|
|
if (CheckWrappedCode()) |
|
|
|
|
|
break; |
|
|
var tagIndex = FindIndex(tags, index); |
|
|
var tagIndex = FindIndex(tags, index); |
|
|
if (tagIndex.HasValue) |
|
|
if (tagIndex.HasValue) |
|
|
tags.Insert(tagIndex.Value, new Tag<IRole>(TagType.HereMention, index, "@here".Length, 0, guild?.EveryoneRole)); |
|
|
tags.Insert(tagIndex.Value, new Tag<IRole>(TagType.HereMention, index, "@here".Length, 0, guild?.EveryoneRole)); |
|
|