仅限管理员命令

时间:2018-06-03 15:22:56

标签: python-3.x discord.py

只有选定的用户ID才有权使用此命令。如下所示,只有在此列表中添加的用户ID才能获得使用该命令的权限。

def is_any_user(ids):
    async def predicate(ctx):
        return ctx.author.id in ids
    return commands.check(predicate)

LIST_OF_ADMINS = [3557657657647676, 36567565756766767, 343657687786435432]

@bot.command(pass_context=True)
@is_any_user(LIST_OF_ADMINS)
async def hello(ctx):
     await bot.say("Hello {}".format(ctx.message.author.mention))

1 个答案:

答案 0 :(得分:0)

您可以编写自己的支票来装饰命令

def is_any_user(ids):
    def predicate(ctx):
        return ctx.message.author.id in ids
    return commands.check(predicate)

LIST_OF_ADMINS = ['3557657657647676', '36567565756766767', '343657687786435432']

@bot.command(pass_context=True)
@is_any_user(LIST_OF_ADMINS)
async def hello(ctx):
     await bot.say("Hello {}".format(ctx.message.author.mention))

您可以在commands分机in the rewrite documentation

中详细了解支票