Как назначить роли в последней версии discord.py? - PullRequest
0 голосов
/ 07 апреля 2020

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

@client.command(pass_context=True)
async def claimrank(ctx, role: discord.Role):
    user = ctx.message.author
    await user.add_roles(role='Rookie')

и:

@client.command()
async def claimrank(member):
    role = get(member.guild.roles, name="Rookie")
    await member.add_roles(role)

Что еще хуже, с обеими этими попытками я не получаю никаких ошибок, но код ничего не делает Пожалуйста помоги! Заранее спасибо.

1 Ответ

1 голос
/ 08 апреля 2020

Недавно я получил это из поста. Я напишу код и поищу оригинальный пост.

@client.command(pass_context=True)
async def addrole(ctx):
    user = ctx.message.author 
    role = 'role' #change the role here
    try:
        await user.add_roles(discord.utils.get(user.guild.roles, name=role)) 
    except Exception as e:
        await ctx.send('Cannot assign role. Error: ' + str(e))

Нашел оригинальный пост @Patrick Haugh: Дайте и удалите роли с ботом, Discord.py

...