How to check if a user has a specific role in on_message?

前端 未结 1 1561
旧巷少年郎
旧巷少年郎 2020-12-12 05:09

Currently I have a bot will give you a role if you do a command. I want to make the bot check if the user that does the command has a specific role. As of now I\'ve only see

相关标签:
1条回答
  • 2020-12-12 05:54

    To check for roles in on_message, you can access the author's roles attribute.

    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)
    

    For commands, see the linked dupe answer.

    0 讨论(0)
提交回复
热议问题