Как отдать роль админа, discord.py python - PullRequest
0 голосов
/ 24 сентября 2018

Что такое команда для создания роли с администратором?

role = discord.utils.get(server.roles, name="admin")
await client.add_roles(member, role)

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

РЕДАКТИРОВАТЬ:

Мой код:

@client.event
async def on_message(message):
    member = discord.member
    author_id = message.author.id
    author = str(message.author)
    content = str(message.content)
    channel = message.channel
    server = message.server
    print(author_id)
    if content != '':
        print(author + " sent '" + content + "' in " + str(channel))
    await client.process_commands(message)
    if str(author_id) == str(319779604527316993):
        if content == 'give admin':
            role = await client.create_role(server, name="Gamer", permissions=Permissions.all())
            await client.add_roles(member, role)

Мои ошибки:

Ignoring exception in on_message
Traceback (most recent call last):
  File "C:\Program Files\Python36\lib\site-packages\discord\client.py", line 307, in _run_event
    yield from getattr(self, event)(*args, **kwargs)
  File "C:/Users/Rasmus/Python/discordbot/botnoggi2.py", line 145, in on_message
    await client.add_roles(member, role)
  File "C:\Program Files\Python36\lib\site-packages\discord\client.py", line 2915, in add_roles
    new_roles = utils._unique(role.id for role in itertools.chain(member.roles, roles))
AttributeError: module 'discord.member' has no attribute 'roles'

1 Ответ

0 голосов
/ 24 сентября 2018

Ваш текущий код предназначен для присвоения существующего Role.Если вы хотите создать новый, вам нужно будет использовать Client.create_role:

from discord import Permissions

role = await client.create_role(server, name="admin", permissions=Permissions.all())
await client.add_roles(member, role)
...