Вот хочу создать команду тест в discord.py ну и думаю понятно в чём её смысл. Я хочу как-нибудь это сделать через Select menu из dislash.py. Вот как-то так:
from dislash import InteractionClient, SelectMenu, SelectOption
...
inter_client = InteractionClient(bot)
...
@bot.command()
async def test(ctx, correct = None, b = None,c = None ,d = None):
await ctx.channel.purge(limit = 1)
if correct == None and b == None:
await ctx.send(f'{author.mention},Добавь верный вариант ответа и второй вариант ответа')
return
elif correct != None and b == None:
await ctx.send(f'{author.mention} Добавь второй вариант ответа!')
return
elif correct != None and b != None and c == None:
msg = await ctx.send(
f"{author.mention}, Создал тест!\n{name}",
components=[
SelectMenu(
custom_id="t1",
placeholder="Выбери правильный ответ!",
max_values=2,
options=[
SelectOption(f"{correct}", "Ей"),
SelectOption(f"{b}", "Йе")
]
)
]
)
inter = await msg.wait_for_dropdown()
labels = [option.label for option in inter.select_menu.selected_options]
if len(labels) > 1:
#Вот здесь надо отправить человеку в лс что надо выбрать один ответ
elif correct in labels:
#Вот здесь надо отправить тому кто выбрал правильный ответ в лс что он молодец!
else:
#Вот здесь надо отправить тому кто выбрал неправильный ответ в лс то что он ответил неправильно
...
И ещё надо сделать так чтобы это меню было многоразовым. Чтобы один человек выбрал и другой потом смог выбрать.