@Kirill_Safe

Как сделать кнопку с выбором ролей?

Здравствуйте, видел в других ботах выбор роли, фото ниже
Искал по интернету и в доках нашел только такой пример:
Код
class RoleDropdown(discord.ui.Select):
    def __init__(self, roles):
        options = [discord.SelectOption(label=role.name, value=str(role.id)) for role in roles if not role.is_bot_managed()]
        super().__init__(placeholder="Выберите роль", min_values=1, max_values=1, options=options)

    async def callback(self, interaction: discord.Interaction):
        role_id = int(self.values[0])
        role = interaction.guild.get_role(role_id)
        if role:
            await interaction.response.send_message(f"Вы выбрали роль: {role.name}", ephemeral=True)
        else:
            await interaction.response.send_message("Роль не найдена.", ephemeral=True)

class RoleDropdownView(discord.ui.View):
    def __init__(self, roles):
        super().__init__()
        self.add_item(RoleDropdown(roles))

@bot.command()
async def roles(ctx):
    roles = ctx.guild.roles[1:]  # Исключаем @everyone роль
    if roles:
        view = RoleDropdownView(roles)
        await ctx.send("Вот все роли:", view=view)
    else:
        await ctx.send("На сервере нет ролей.")

Как сделать вот так же?
Прошу либо указать в доках либо пример такого кода

66afa5fc112bc022825235.png
  • Вопрос задан
  • 50 просмотров
Решения вопроса 1
fenrir1121
@fenrir1121 Куратор тега discord.py
Начни с документации
Это стандартный селектор discord.ui.RoleSelect
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

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

Похожие вопросы