Как сделать команду которая будет у отдельного участника забирать определенную роль?

Рейтинг: 0Ответов: 0Опубликовано: 20.08.2023

Я пытался сделать что-то похожее, но выходит ошибка:

@bot.command()
@commands.has_permissions(manage_roles=True, ban_members=True, kick_members=True)
async def toff(ctx, user:discord.Member, role:discord.Role, reason):
    await user.remove_roles(role)
    em = discord.Embed(title="Снятие:", description=f"Участник {user.mention} был снят с должности {role.mention}\nпо причине: {reason}", color=0x1f8b4c)
    await ctx.send(embed=em)

Ошибка:

[2023-08-20 16:34:53] [ERROR   ] discord.ext.commands.bot: Ignoring exception in command toff
Traceback (most recent call last):
  File "C:\Users\matve\Desktop\CreeperBot 1.0\lib\site-packages\discord\ext\commands\core.py", line 235, in wrapped
    ret = await coro(*args, **kwargs)
  File "C:\Users\matve\Desktop\CreeperBot 1.0\main.py", line 69, in toff
    await user.remove_roles(role)
  File "C:\Users\matve\Desktop\CreeperBot 1.0\lib\site-packages\discord\member.py", line 1096, in remove_roles
    await req(guild_id, user_id, role.id, reason=reason)
  File "C:\Users\matve\Desktop\CreeperBot 1.0\lib\site-packages\discord\http.py", line 739, in request
    raise Forbidden(response, data)
discord.errors.Forbidden: 403 Forbidden (error code: 50013): Missing Permissions

The above exception was the direct cause of the following exception:

Traceback (most recent call last):
  File "C:\Users\matve\Desktop\CreeperBot 1.0\lib\site-packages\discord\ext\commands\bot.py", line 1350, in invoke
    await ctx.command.invoke(ctx)
  File "C:\Users\matve\Desktop\CreeperBot 1.0\lib\site-packages\discord\ext\commands\core.py", line 1029, in invoke
    await injected(*ctx.args, **ctx.kwargs)  # type: ignore
  File "C:\Users\matve\Desktop\CreeperBot 1.0\lib\site-packages\discord\ext\commands\core.py", line 244, in wrapped
    raise CommandInvokeError(exc) from exc
discord.ext.commands.errors.CommandInvokeError: Command raised an exception: Forbidden: 403 Forbidden (error code: 50013): Missing Permissions

Ответы

Ответов пока нет.