Я создаю нового бота (мой третий раз, но это было давно), и я создаю простую команду запрета.Это строка за строкой, такая же, как и у других моих команд, с добавлением декоратора @commands.has_permissions()
и вставкой для отображения запрета.Однако после добавления нескольких отпечатков, показывающих, куда он попадает, он не проходит мимо await user.ban()
.
# ---BAN---
@client.command(name="ban", pass_ctx=True)
@commands.has_permissions(ban_members=True)
async def ban(ctx, user: discord.User=None, *, reason: str=None):
if not user:
await ctx.send("Specify a user")
return
embed = discord.Embed (
color = discord.Color.magenta()
)
embed.add_field(name=f"{user} was banned!", value=f"For reason: {reason}", inline=False)
await user.ban()
await ctx.send(embed=embed)
@ban.error
async def ban_error(ctx, error):
if isinstance(error, BadArgument):
await ctx.send("Please specify a **valid** user!")
Не выдается никакой ошибки, а только достигает await user.ban()
перед простой остановкой.Мой пользователь как-то не прав или я совершил очевидную ошибку?