【问题标题】:discord.py, using slash command and prefix at the same timediscord.py,同时使用斜杠命令和前缀
【发布时间】: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。你有没有想出任何代码?

标签: python discord discord.py


【解决方案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


【讨论】:

  • 谢谢,这是我的错误,我想是我的耐心,因为我已经尝试过了,但是当我将命令置于不和谐状态时它又失败了,但我又忘记邀请机器人了(或者我需要等待)。对不起,不必要的帖子。
猜你喜欢
  • 2022-11-30
  • 2019-11-09
  • 2021-02-07
  • 2023-01-15
  • 2023-02-08
  • 2023-02-26
  • 2023-01-26
  • 1970-01-01
  • 2021-03-06
相关资源
最近更新 更多