【问题标题】:Discord bot reactions arrayDiscord 机器人反应数组
【发布时间】:2021-04-23 20:12:13
【问题描述】:
我试图通过反应数组的索引 0 获得特定反应:
private async void reset(IUserMessage message)
{
message.Reactions.ElementAt(0);
}
但是当我这样做时,我看不到 discord documentation 说它应该包含的计数或表情符号变量。关于如何根据索引从特定反应中获取表情符号变量的任何想法?
问候,
耶勒
【问题讨论】:
标签:
c#
discord
bots
discord.net
【解决方案1】:
我不确定您的 IUserMessage 是否也实现了 IMessage,但以下解决方案适用于 IMessage。您可以使用 message as IMessage 将 IUserMessage 更改为 IMessage。
IMessage.Emotes (docs) 包含一个 IEmote 的字典,ReactionMetadata。您可以使用此字典根据您要查找的索引或 IEmote 获取反应元数据。 ReactionMetadata 包含 ReactionCount,即对该表情的反应次数。
如果您想知道做出反应的用户,您应该使用IMessage.GetReactionUsersAsync(IEmote, Int32, RequestOptions) 方法(docs)。