在 discord.py 中添加角色

时间:2021-07-12 13:55:13

标签: python discord.py

我尝试了许多不同的方法,并在 youtube 上进行了搜索,但我尝试的所有方法都不起作用(已过时或不相关),我该如何为提到的用户添加角色?

这是我的代码,看,我在最后的 () 中写了什么。

@client.command()
@commands.has_permissions(kick_members=True)  
async def mute(ctx, member:discord.Member,*,reason=None):
    Embed = discord.Embed(title = f'✅{member} was muted by {ctx.author.name}!',color = 0x00ff00)
    Embed.add_field(name=f'Reason', value=f'{reason}')
    Embed.set_image(url='https://ak.picdn.net/shutterstock/videos/1014234401/thumb/1.jpg')
    await ctx.message.channel.send(embed=Embed)
    await (The command that should add the role "Muted" to the mentioned user)

2 个答案:

答案 0 :(得分:1)

您可以使用:

O(vn)

所以你的代码看起来像这样:

role = discord.utils.get(member.guild.roles, name="Test")
await member.add_roles(role)

答案 1 :(得分:1)

首先你需要从公会的角色中获得角色。

role = ctx.guild.get_role(role_id)

role = discord.utils.get(ctx.guild.roles, name="Muted")

现在您可以为目标成员添加角色

await member.add_roles(role)

你也不需要写

await ctx.message.channel.send()

你可以用

await ctx.send()