【问题标题】:Python Discord Bot - Reaction RolePython Discord Bot - 反应角色
【发布时间】:2020-08-16 03:26:10
【问题描述】:
我将如何制作反应角色事件。
这是我尝试过的代码
@client.event
async def on_raw_reaction_add(payload):
msgID = 05793080854315018
if payload != None:
if payload.message_id == msgID:
if str(payload.emoji) == "✍️":
await add_roles("cool")
我想做的是让我的机器人检查对特定消息的反应,然后如果用户对正确的表情符号做出反应,就给他们一个角色。
【问题讨论】:
标签:
python
discord
discord.py
【解决方案1】:
假设您使用的是discord.py 1.3.3,您可以使用以下内容更新您的代码,以添加基于特定表情符号的角色。
您需要添加对公会的引用才能引用您希望添加的角色。您还需要将表情符号与payload.emoji 的字符串表示进行比较。可能值得考虑使用emoji.demojize。
试试:
@client.event
async def on_raw_reaction_add(payload=None):
msgID = <your message id: int>
guild = discord.utils.get(client.guilds, name=<your guild name>)
role = discord.utils.get(guild.roles, name='cool')
if payload is not None:
if payload.message_id == msgID:
if str(payload.emoji) == "✍️":
await payload.member.add_roles(role)