discord.py,同时使用斜杠命令和前缀

时间:2021-07-26 07:53:34

标签: python discord discord.py

如何在 Discord 中同时运行带有前缀的斜杠命令?像 mee6 这样的大型机器人可以同时使用前缀 !/,我认为只有一种方法可以在 discord.py 上使用 slahscommands,那就是使用 {{3} ,我尝试了很多方法,但都没有奏效,我尝试同时使用两个 @ 像 @cog_ext.cog_slash 和 @commands.command 但对我来说这是合乎逻辑的,但这只是因为我python的初学者。当我在两个单独的齿轮中运行它们时,它会在斜杠命令 This interaction failed 或某种其他错误上显示,所以我的问题是是否可以在一个命令上运行斜杠命令和前缀,例如 help(所以我可以做 !help 和 /help),如果可以,我该怎么做?

1 个答案:

答案 0 :(得分:0)

您需要编写两次命令,一次使用 @commands.command,另一次使用 @cog_ext.cog_slash

也许如果命令函数很长或者你只是不想要它两次,你可以把它放到另一个你用两个命令调用的函数中

async def cmd(author):
    # do your commands stuff here

@commands.command(name="cmd")
async def command_cmd(ctx):
    await cmd(ctx.author) # call the cmd function

@cog_ext.cog_slash(name="cmd") # I'm not 100% sure if it works like that since i 
async def slash_cmd(ctx):      # 
    await cmd(ctx.author) # call the cmd function