Discord.py:如何将特定命令限制为角色或具有特定权限的人?

2024-06-17 11:59:21 发布

您现在位置:Python中文网/ 问答频道 /正文

有人能告诉你如何限制,例如,下面的命令允许一个名为“版主”的角色,或者只限制有kick权限的人吗?我不太明白这是怎么回事

@client.command()
async def kick(ctx, member:discord.Member)
    await member.kick()
    await ctx.send(f'{member.mention} has been kicked.')

Tags: 命令clientsend权限角色asyncdefawait
1条回答
网友
1楼 · 发布于 2024-06-17 11:59:21

要将命令限制为名为“主持人”或“管理员”的特定角色,请使用has\u any\u role

@client.command(pass_context=True)
@commands.has_any_role("Moderator", "Admin")
async def kick(ctx, member: discord.Member, *, reason=None):
    await member.kick(reason=reason)
    await ctx.channel.send(f'{member.mention} has been kicked.')

要将命令限制为角色的某些权限,例如,如果角色具有管理员权限,则您使用的具有\u权限

@client.command(pass_context=True)
@commands.has_permissions(administrator=True)
async def kick(ctx, member: discord.Member, *, reason=None):
    await member.kick(reason=reason)
    await ctx.channel.send(f'{member.mention} has been kicked.')

相关问题 更多 >