Эта команда Ban не работает ... Как исправить? - PullRequest
0 голосов
/ 04 августа 2020

Вот моя команда запрета! Каждый раз, когда я хочу кого-то забанить, это не go через другого! Честно говоря, он не делает ничего, кроме «если»! Пожалуйста, помогите!

@bot.command() #ban (verified works)
@commands.has_permissions(ban_members = True)
async def ban(ctx, member : discord.Member, *, reason = None):
    if member == ctx.author or member.id == bot.user.id:
        await ctx.send("Unfortunatly I cannot do that!")
        return
    else:
        await ctx.send('Banned the member {}'.format(ctx.member.mention))
        await member.ban(reason = reason)
        await ctx.message.delete()
    

1 Ответ

1 голос
/ 05 августа 2020

Я рекомендую не использовать роль, чтобы проверить, может ли пользователь использовать команду, а попробуйте использовать что-то вроде этого:

@client.command()
@commands.has_permissions(ban_members=True)
async def ban(ctx, member : discord.Member,*,reason=None):
    try:
        await member.ban(reason=reason)
        embed = discord.Embed(description=f":white_check_mark: succesfully banned {member.mention}!",color=0x00ced1)
        await ctx.send(embed=embed)
    except:
        e2 = discord.Embed(description="You don't have permission to use this command",color=0xff0000)
        await ctx.send(embed=e2)

Это позволяет вам использовать бота на нескольких серверах, которые не обязательно иметь одинаковые роли, а также сужает его до определенного разрешения.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...