我是不和谐机器人制作的新手,我想让机器人对我的信息做出回应,一旦按下该按钮,用户就可以做出反应来担任角色。允许我执行此操作的代码是什么?谢谢。
答案 0 :(得分:0)
这是一个写得很好并且格式正确的问题!为了使漫游器能够检测到对特定消息的反应,您可以采取多种方法。最简单的方法是通过ID,所以我将使用一个简单的命令来完成此操作。
messageIDs = []
@client.event
async def on_raw_reaction_add(payload):
global messageIDs
for messageID in messageIDs:
if messageID == payload.message_id:
user = payload.member
role = "roleName"
await user.add_roles(discord.utils.get(user.guild.roles, name = role))
@client.command()
async def addMessage(ctx, messageID):
global messageIDs
emoji = "?"
channel = ctx.message.channel
try:
msg = await channel.fetch_message(messageID)
except:
await ctx.send("Invalid Message ID!")
return
await msg.add_reaction(emoji)
messageIDs.append(messageID)