discord.py-如果角色具有用户没有的权限,则该命令用于修改无法使用的角色

时间:2019-04-15 17:20:47

标签: python discord.py discord.py-rewrite

我正在使用discord.py-rewrite库制作Discord BOT,但遇到了问题。 实际上,我正在执行一个命令,该命令可以删除我们指定角色中的所有权限。但是我希望该命令仅对具有Manage Roles权限的成员可用,但是成员还必须具有他们正在修改的角色的所有权限。 例如,具有拥有 Manage Roles权限但没有没有 View Audit Log权限将无法执行的成员具有 具有View Audit Log权限的角色的此命令。 现在有人请问我该如何处理?

1 个答案:

答案 0 :(得分:0)

获取角色和作者的Permissions,然后确认角色权限是作者权限的子集:

@bot.command()
@has_permissions(manage_roles=True)
async def remove_role(ctx, *, role: Role):
    if role.permissions <= ctx.author.permissions_in(ctx.message.channel):
        ...
    else:
        await ctx.send("You are missing permissions")
相关问题