使用 discord.py 更改角色层次结构

2022-01-15 00:00:00 python discord discord.py

问题描述

我想在 discord.py 中创建一个新角色.

I want to create a new role in discord.py.

但我希望这个角色位于(比方说)角色的第三个位置.我怎样才能做到这一点?

But I want this role to be in the (let's say) 3rd spot of the roles. How can I achieve this?


解决方案

你会使用 Role.edit,传递一个position值,该值必须低于你最高角色的位置.

You would use Role.edit, passing a position value, which must be lower than the position of your highest role.

@bot.command()
async def moverole(ctx, role: discord.Role, pos: int):
    try:
        await role.edit(position=pos)
        await ctx.send("Role moved.")
    except discord.Forbidden:
        await ctx.send("You do not have permission to do that")
    except discord.HTTPException:
        await ctx.send("Failed to move role")
    except discord.InvalidArgument:
        await ctx.send("Invalid argument")

相关文章