【问题标题】:How can I code my discord bot to add roles?如何编码我的不和谐机器人以添加角色?
【发布时间】:2021-01-15 01:32:53
【问题描述】:

我希望我的 discord 机器人为我服务器中的成员点名。这是我尝试过的,但它不起作用。

import discord
import os
from discord.ext import commands
from discord.utils import get

ROLE = '758778940977709056'

@client.command
async def addrole(ctx, member : discord.Member):
    role = get(member.guild.roles, name=ROLE)
    await member.add_roles(role)
    print(f'{member} was given {role}')

【问题讨论】:

  • 您能提供更多细节吗?它以什么方式不起作用?它做什么而不是工作?有没有给出错误?

标签: python python-3.x asynchronous discord discord.py


【解决方案1】:

您似乎添加了角色的id 而不是名称。 id 和 name 是不同的东西。当使用utils.get & name kwarg 时,将角色的实际名称放入(如"Contributor")。

role = get(member.guild.roles, name="name_of_your_role")

【讨论】:

    【解决方案2】:

    您的服务器中是否有任何名为“ROLE”的角色?如果是,您只需添加括号。否则,用你想赋予用户的角色来命名它,但你仍然需要添加括号。

    【讨论】:

    • 是的,我忘记添加了。 ROLE = '758778940977709056
    • 现在您告诉我们角色的名称是 758778940977709056 将角色的 ID 更改为角色的名称,它应该可以工作
    猜你喜欢
    • 2020-12-15
    • 1970-01-01
    • 2021-09-03
    • 1970-01-01
    • 2021-01-22
    • 1970-01-01
    • 2019-02-02
    • 1970-01-01
    • 2022-09-27
    相关资源
    最近更新 更多