Как проверить, играет ли пользователь определенную роль в on_message? - PullRequest
0 голосов
/ 28 мая 2018

В настоящее время у меня бот даст вам роль, если вы выполните команду.Я хочу, чтобы бот проверил, выполняет ли пользователь, выполняющий команду, определенную роль.На данный момент я видел только, как люди делают это с разрешениями.Базовые примеры тоже были бы великолепны!

if message.content.lower().startswith('/role'):
    user = message.author
    role = discord.utils.get(user.server.roles, id="437923291047526402")
    await client.add_roles(user, role)

1 Ответ

0 голосов
/ 29 мая 2018

Чтобы проверить наличие ролей в on_message, вы можете получить доступ к атрибуту ролей автора.

if message.content.lower().startswith('/role'):
    user = message.author

    if message.channel.is_private or discord.utils.get(user.roles, name="admin") is None:
        return

    role = discord.utils.get(user.server.roles, id="437923291047526402")
    await client.add_roles(user, role)

Команды см. В ответе с ответом dupe.

...