【问题标题】:How to make python discord bot give role to pinged user如何让 python discord bot 赋予被 ping 用户角色
【发布时间】:2022-01-09 20:56:20
【问题描述】:

到目前为止,我想使用这样的行,但不是消息作者,而是我想要 @username ,被 ping 的人获得角色,我只希望这个命令可供具有特定角色的人使用(例如管理员角色)

@client.event
async def on_message(message):
    if message.author == client.user:
        return
    if message.content == 'give me admin':
        role = get(message.server.roles, name='Admin')
        await client.add_roles(message.author, role)

【问题讨论】:

  • 你能分享你为满足这个新要求而编写的代码吗?我们不会为您编写代码,但如果您向我们展示您的尝试(作为minimal reproducible example)以及您遇到困难的地方,我们可以提供帮助 - 请参阅How to Ask

标签: python discord discord.py


【解决方案1】:
@client.event
async def on_message(message):
    if message.author == client.user:
        return
    if message.guild is None:
        return
    admin_role = get(message.guild.roles, name="Admin")
    if admin_role not in message.author.roles:
        return
    try:
        member = message.mentions[0]
    except IndexError:
        return
    await member.add_roles(admin_role)

管理员可以 ping 成员,例如 @User#1234,机器人会将管理员角色添加到被 ping 的成员。

【讨论】:

    猜你喜欢
    • 2021-08-09
    • 2021-10-11
    • 1970-01-01
    • 2020-02-26
    • 2021-06-14
    • 2021-04-15
    • 2018-10-11
    • 2020-02-26
    • 1970-01-01
    相关资源
    最近更新 更多