@DarkHold
Пытаюсь написать бота для Дискорд серевера

Как сделать выдачу ролей в дискорде но важна иерархия?

Я пытаюсь создать команду для выдачи роли но не пойму как сделать так что бы ниже стоящие роли не могу ли поставить роль выше своей

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

bot = commands.Bot(command_prefix='/')

@bot.command()
async def ping(ctx):
await ctx.send('pong')

@client.command()
async def addrole(ctx,role: discord.role, user: discord.member):
if ctx.author.guild_permissions.administrator:
await user.add_role(role)
await ctx.send(f"Роль выдана! {role.mention} to {user.mention}.")

@client.command()
async def removerole(ctx, role: discord.role, user: discord.member):
if ctx.author.guild_permissions.administrator:
await user.remove_role(role)
await ctx.send(f"Роль убрана! {role.mention} to {user.mention}.")

bot.run('Token')
  • Вопрос задан
  • 63 просмотра
Пригласить эксперта
Ответы на вопрос 1
@angeloffy
Сравните с top_role

примерно так должно работать:
async def addrole(ctx, role: discord.Role, member: discord.Member):
    if role >= ctx.author.top_role:
...
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы