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