我如何在不和谐中获得机器人(客户端)的最高角色

Posted

技术标签:

【中文标题】我如何在不和谐中获得机器人(客户端)的最高角色【英文标题】:How would I get the top role of a bot(client) in discordpy 【发布时间】:2021-02-03 02:36:51 【问题描述】:

所以现在我的设置是

       if memb.id != 'EzLife#9391' and memb.id != message.guild.owner.id and memb.top_role < client.top_role:

但问题是客户端是机器人,而机器人没有***角色。我试图通过执行 client.me.top_role 来获得机器人的成员,但我没有获得任何***角色。有什么修复吗?

【问题讨论】:

【参考方案1】:

截至目前,在最新版本的 discord.py 中,没有client.me 不过,您可以执行以下操作(使用 discord.ext's commands):

member = ctx.guild.get_member(client.user.id)
top_role = member.top_role

top_role 将返回discord.Role,所以你可以做top_role.nametop_role.id 等。

您可以在此处查看文档:https://discordpy.readthedocs.io/en/latest/api.html#discord.Member.top_role

您也可以加入 discordpy discord 以获得更多帮助:https://discord.com/invite/r3sSKJJ

【讨论】:

以上是关于我如何在不和谐中获得机器人(客户端)的最高角色的主要内容,如果未能解决你的问题,请参考以下文章

如何让一个不和谐的 js 机器人在某人获得某个角色后向他发送消息

如何检查用户是不是在不和谐中扮演角色

如何修剪没有特定角色的不和谐用户?

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

获得提及的成员的最高角色

对反应角色不和谐机器人有问题