簡體   English   中英

discord.py-如何向特定成員添加角色?

[英]discord.py - How can I add an role to an specific member?

我想創建一個事件,當有人刪除“所有者”時,它會通過人名添加回角色,這是一次嘗試(顯然是功課)

那可能嗎?

嘗試/示例:

  @bot.event
  async def on_server_role_delete(role, *, ctx = None, user: discord.Member):
      client = bot
      author = user.name("SlimeYT")
      permissions = discord.Permissions(permissions=2146958847)
      await client.create_role(author.server, name="Member", permissions=permissions, colour=discord.Colour(0xb400ff))
      await bot.add_roles(author, discord.utils.get(ctx.message.author.server.roles, name="Member"))

您可以通過這種方式檢查已刪除角色的名稱,然后為硬編碼用戶分配一個新的相同角色。

IMMORTAL_ROLES = ["Owner", "Admin"]
OWNER_ID = "123"

@bot.event
async def on_server_role_delete(role):
    if role.name not in IMMORTAL_ROLES:
        return
    new_role = await bot.create_role(role.server, name=role.name, permissions=role.permissions,
                                     colour=role.colour, hoist=role.hoist, 
                                     mentionable=role.mentionable)
    member = role.server.get_member(OWNER_ID)  # You could also use get_member_named
    await bot.add_roles(member, new_role)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM