discord.py 冷却时间错误不允许引发其他错误

discord.py Cooldown error doesn't allow other errors to be raised

我有这段代码用于冷却时间并将错误发送给用户。这是我的代码:


@bot.event
async def on_command_error(ctx, error):
    if isinstance(error, commands.CommandOnCooldown):

        if error.retry_after>3600:
            embed=discord.Embed(title='Cooldown!', description=f"This command can be used in **{round(error.retry_after/3600)}h**   !".format(error.retry_after))
            await ctx.send(embed=embed)
            return


        if error.retry_after>60:
            embed=discord.Embed(title='Cooldown!', description=f"This command can be used in **{round(error.retry_after/60)}m**!".format(error.retry_after))
            await ctx.send(embed=embed)
            return

        else:
            embed=discord.Embed(title='Cooldown!', description=f"This command can be used in **{round(error.retry_after)}s**!".format(error.retry_after))
            await ctx.send(embed=embed)

但是当我添加这个时,Visual Studio 代码中的终端不会出现其他错误,例如 MissingRequirements。有谁知道为什么或如何解决这个问题?

错误处理程序检查错误是否为 CommandOnCooldown 错误。如果不是,错误将被忽略。添加另一个 else 语句:

@bot.event
async def on_command_error(ctx, error):
    if isinstance(error, commands.CommandOnCooldown):

         if error.retry_after>3600:
         ....

         else:
         ....
    else:
         Stuff the bot should do on a different error come here