【问题标题】:Discord.py: How can I make a command that i can only do with my user ID?Discord.py:我怎样才能做出只能用我的用户 ID 执行的命令?
【发布时间】:2021-04-06 06:00:26
【问题描述】:

所以我想使用一个只有我能做的命令并链接它,这样我就可以使用我的用户 ID,比如

@commands.has_any_role()

但使用我的用户 ID

【问题讨论】:

    标签: discord.py


    【解决方案1】:

    一个简单的解决方案是检查自己的id,并使用if语句检查用户的id:

    自从我完成 discord.py 以来已经有一段时间了,但这是我的破解:

    
    # Set your id here
    my_id = 1234567890
    
    async def my_command(ctx):
      if ctx.author.id == my_id:
        // do something
    
    

    要为多个命令创建自定义装饰器,只需定义它:

    
    # Set your id here
    my_id = 1234567890
    
    is_me = commands.check(lambda ctx: ctx.author.id == my_id)
    
    @commands.command()
    @is_me
    async def command():
      // do something
    
    

    拥有自定义装饰器的好处是它减少了所需的缩进并且可以应用于多个函数。

    【讨论】:

    • @LightingWave6 我为多个命令添加了另一个解决方案
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-09-06
    • 1970-01-01
    • 2022-01-12
    • 1970-01-01
    • 1970-01-01
    • 2018-07-01
    • 2022-08-19
    相关资源
    最近更新 更多