discord.py,同时使用斜杠命令和前缀
Posted
技术标签:
【中文标题】discord.py,同时使用斜杠命令和前缀【英文标题】:discord.py, using slash command and prefix at the same time 【发布时间】:2021-10-02 04:18:54 【问题描述】:如何在 Discord 中同时运行带前缀的斜线命令?像 mee6 这样的大型机器人可以同时使用前缀 !
和 /
,我认为只有一种方法可以在 discord.py 上使用 slahscommands,那就是使用 discord-py-slash-commands,我尝试了很多方法,但都不起作用,我尝试同时使用两个@,如@cog_ext.cog_slash 和@commands.command,但对我来说这是合乎逻辑的,但这只是因为我是python 的初学者。当我在两个单独的齿轮中运行它们时,它会在斜杠命令This interaction failed
或其他某种错误上显示,所以我的问题是是否可以在一个命令上运行斜杠命令和前缀,例如帮助(所以我!help 和 /help),如果是,我该怎么做?
【问题讨论】:
你的第一个问题已经结束,你不应该转发它。 Stack Overflow 不是代码提供服务,您至少需要显示一些 effort 并阅读 How to ask a good question。你有没有想出任何代码? 【参考方案1】:您需要编写两次命令,一次使用@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
【讨论】:
谢谢,这是我的错误,我想是我的耐心,因为我已经尝试过了,但是当我将命令置于不和谐状态时它又失败了,但我又忘记邀请机器人了(或者我需要等待)。对不起,不必要的帖子。以上是关于discord.py,同时使用斜杠命令和前缀的主要内容,如果未能解决你的问题,请参考以下文章