我当前正在尝试让某人ping通我的机器人,但当我得到消息中提到的列表时,所有元素类型均为。我正在尝试在事件on_message中使用if,这是我的代码:
@client.event
async def on_message(message):
if discord.User.id(343113425158668289) in message.mentions:
await message.add_reaction('?')
await client.process_commands(message)
但是这给我一个错误:TypeError:'member_descriptor'对象不可调用 我想将自己的ID与列表中的ID进行比较,并在机器人检测到我的ping时添加响应。 有没有人有办法解决吗 ? (对不起,如果我的英语不好,那不是我的母语) 我正在使用python 3.7.1
答案 0 :(得分:1)
@client.event
async def on_message(message):
#For every @member in message
for member in message.mentions:
#look if the member ID is equal to your ID (343113425158668289)
if 343113425158668289 == member.id:
#If you were mentioned add this reaction
await message.add_reaction('?')
await client.process_commands(message)
会员ID是一个普通数字,因此它只是一个整数。 和message.mentions给您列出了提及的成员。 如果他们的Member.ID与您的成员相同,我们必须检查列表中的所有成员。
祝你愉快