如何让我的机器人忽略来自具有特定角色的人的消息? (不和谐.py)

Posted

技术标签:

【中文标题】如何让我的机器人忽略来自具有特定角色的人的消息? (不和谐.py)【英文标题】:How do I make my Bot Ignore messages from people with a certain role? (Discord.py) 【发布时间】:2021-10-09 17:32:57 【问题描述】:

如何让我的 Discord.py 机器人忽略来自具有特定角色的人的消息?

我最近为我的 Discord.py 机器人添加了一项功能。

@client.event
async def on_message(message):

    if message.content == "Blocked Word":
        await message.delete()

我想要这样,如果这样的人拥有我自己,具有特定角色,机器人不会删除该消息。

任何帮助将不胜感激!

【问题讨论】:

您可以使用message.author.roles获取成员角色列表 【参考方案1】:

这里有一些简单的代码,可能会回答您的问题: 这建立在@Joshua Nixon 的回答之上

@client.event()
async def on_message(message):
 if 'role' in [role.name for role in message.author.roles]: #checks if the specified role is in the user's roles
   #do something
 else:
   #do something else

【讨论】:

以上是关于如何让我的机器人忽略来自具有特定角色的人的消息? (不和谐.py)的主要内容,如果未能解决你的问题,请参考以下文章

Discord.js v12 如何获取对特定消息做出反应的人的 id?

如何让我的 MDB 忽略来自自身的消息?

如何检查用户是不是具有特定角色 discord.js v12? [复制]

当有人对消息做出反应时,我如何让我的 discord.js 机器人添加角色?

仅当用户获​​得特定角色时的问候消息

如果用户具有特定角色,discord.js 机器人会回复