因此,如果我实现了 bot.event,bot.command 就不起作用,但如果我评论或删除 bot.event,bot.command 就可以正常工作。在这里,bot.command 不起作用,但 bot.event 起作用:# bot.pyimport osfrom discord.ext import commandsfrom dotenv import load_dotenvload_dotenv()TOKEN = os.getenv('DISCORD_TOKEN')bot = commands.Bot(command_prefix='dedmu ')@bot.eventasync def on_ready(): print(f'{bot.user.name} has connected to Discord!')@bot.eventasync def on_message(message): if message.author == bot.user: return if message.content.lower() == 'testt': await message.channel.send('it works')@bot.command(name='test')async def test(ctx, arg): await ctx.send(arg)bot.run(TOKEN)如果我用 bot.event 注释这两个函数,则 bot.command 可以完美工作。它出什么问题了?:<
1 回答
手掌心
TA贡献1942条经验 获得超3个赞
因为你有一个on_message
活动。当您的机器人中有on_message
事件时,您需要await bot.process_commands(message)
在事件代码的最后一行添加on_message
。否则它将阻止命令工作。
添加回答
举报
0/150
提交
取消