如何防止我的机器人获得角色

时间:2021-02-22 11:20:24

标签: python discord discord.py bots

伙计们,我正在开发一个反应角色不和谐机器人,但是每当我设置一个反应时,我的机器人也会获得该角色,我该如何防止?我不希望我的机器人获得所有角色

这是我的代码rn。

@client.event
async def on_raw_reaction_add(payload):
for role_id, msg_id, emoji in client.reaction_roles:
  if msg_id == payload.message_id and emoji == str(payload.emoji.name.encode("utf-8")):
   await payload.member.add_roles(client.get_guild(payload.guild_id).get_role(role_id))

编辑: 所以我在我的代码中添加了一个 if 语句,但显然这是错误的。那么你能说出它是如何工作的吗??

@client.event
async def on_raw_reaction_add(payload):
  for role_id, msg_id, emoji in client.reaction_roles:
    if msg_id == payload.message_id and emoji == str(payload.emoji.name.encode("utf-8")):
      if payload.member== client.user:
        return
      else:
        await payload.member.add_roles(client.get_guild(payload.guild_id).get_role(role_id))

1 个答案:

答案 0 :(得分:1)

简单,忽略反应加法器是你的机器人的情况!

@client.event
async def on_raw_reaction_add(payload):
   if payload.user_id = client.user.id:
       return
   #other stuff here