Elezthem
@Elezthem
Full Stack Developer

Почему бот не пишет что ему нужны права?

Смотрите, я хочу чтобы мой бот присылал о том что если нету прав, но у меня код верный и он не пишет в чат то что нужны права, я сам у бота вырубил все права на сервере и он се равно не пишет как исправить?

elif isinstance(error, commands.BotMissingPermissions):
        missing_perms = ', '.join(error.missing_perms)
        await ctx.send(embed=nextcord.Embed(
            description=f"<a:no:1173982101670985812> У бота недостаточно прав: **`{missing_perms}`**\nПредоставьте их для полноценной работы бота"
        ))


Вот фулл
@bot.event
async def on_command_error(ctx, error):
    print(error)

    if isinstance(error, commands.MissingPermissions):
        missing_perms = ', '.join(error.missing_perms)
        await ctx.send(f"<a:no:1173982101670985812> {ctx.author.mention}, у бота не хватает прав: **`{missing_perms}`** для выполнения этой команды!")
    elif isinstance(error, commands.CommandNotFound):
        await ctx.message.add_reaction("<a:no:1173982101670985812>")
    elif isinstance(error, commands.BotMissingPermissions):
        missing_perms = ', '.join(error.missing_perms)
        await ctx.send(embed=nextcord.Embed(
            description=f"<a:no:1173982101670985812> У бота недостаточно прав: **`{missing_perms}`**\nПредоставьте их для полноценной работы бота"
        ))
    elif isinstance(error, commands.UserInputError):
        command_name = ctx.command.name
        command_brief = ctx.command.brief
        command_usage = ctx.command.usage

        if command_brief is None or command_usage is None:
            await ctx.send(embed=nextcord.Embed(
                description=f"<a:yes:1173982104393105478> Правильное использование команды: `{ctx.prefix}{command_name}` (Пожалуйста, установите brief и usage для этой команды)"
            ))
        else:
            await ctx.send(embed=nextcord.Embed(
                description=f"<a:yes:1173982104393105478> **Правильное** использование команды: `{ctx.prefix}{command_name}` ({command_brief})\n**Пример**: {ctx.prefix}{command_usage}"
            ))

    elif isinstance(error, commands.CommandOnCooldown):
        await ctx.send(embed=nextcord.Embed(
            description=f"<a:no:1173982101670985812> Ваша команда еще на перезарядке **`{ctx.command}`**!\nПодожди еще **`{error.retry_after:.2f}`**"
        ))


Как сделать чтобы он писалв чат о том что нужны права?
  • Вопрос задан
  • 120 просмотров
Решения вопроса 1
Elezthem
@Elezthem Автор вопроса
Full Stack Developer
Уже решил, просто поставил проверку в отдельной команде
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы