在discord.py中显示设置前缀的命令(重写)

时间:2020-10-20 21:07:07

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

我正在尝试创建一个帮助命令,该命令将嵌入程序中机器人的当前服务器前缀发送出去。我在尝试弄清楚如何编写代码时遇到了麻烦,希望获得帮助。我已经尝试过:

@bot.command()
async def help(ctx):
    embed = discord.Embed(
        title='Help', description='', colour=discord.Colour.blue())
    embed.set_footer(text='Have fun!')

    prefix = command_prefix

    embed.add_field(
        name='Prefix',
        value=
        f'The current prefix for this server is {prefix}',
        inline=True)

    await ctx.send(embed=embed)

但是当我这样做时,我得到了错误:

raise CommandInvokeError(exc) from exc
discord.ext.commands.errors.CommandInvokeError: Command raised an exception: NameError: name 'command_prefix' is not defined

我不确定自己在做什么错,任何帮助将不胜感激。 (:

1 个答案:

答案 0 :(得分:0)

您应该创建一个前缀变量,然后可以在help命令中显示该变量,并在以后进行更改:

prefix="!!"
bot = commands.Bot(command_prefix=prefix)

@bot.command()
async def help(ctx):
    embed = discord.Embed(
        title='Help', description='', colour=discord.Colour.blue())
    embed.set_footer(text='Have fun!')

    embed.add_field(
        name='Prefix',
        value=
        f'The current prefix for this server is {prefix}',
        inline=True)

    await ctx.send(embed=embed)