@bot.slash_command(name='partnership', description='Заключить партнерство. | Пиар менеджеры.')
@commands.has_any_role(1128699829955088495) # ID роли пиарменеджера
async def pn(ctx, partner: disnake.Member = commands.Param(description="Партнёр."),
text=commands.Param(description="Текст партнёрства."),
link=commands.Param(description="Ссылка на сервер партнёра..")):
blacklist = [788424538656210965,853235519676874772] # Ваш черный список с ID участников
# Проверяем, находится ли автор команды в черном списке
if ctx.author.id in blacklist:
emoji = '⛔'
message = f'{emoji} Вы находитесь в черном списке и не можете использовать эту команду.'
await ctx.send(message)
return
if not isinstance(partner, disnake.Member):
await ctx.response.send_message(
content="Ошибка: параметр 'partner' должен быть участником сервера.",
ephemeral=True
)
return
if not isinstance(text, str):
await ctx.response.send_message(
content="Ошибка: параметр 'text' должен быть текстом.",
ephemeral=True
)
return
if not isinstance(link, str):
await ctx.response.send_message(
content="Ошибка: параметр 'link' должен быть строкой.",
ephemeral=True
)
return
emb = disnake.Embed(
description=f"**Партнёр: {partner}** \n**Описание сервера:** {text}\n**Ссылка:** {link}",
color=0x2f3236
)
emb.set_author(name=f"Партнёрство от {ctx.author.name}")
emb.set_footer(text="Ссылка на сервер партнёра: " + link)
channel = bot.get_channel(1128699947148115968) # Айди канала партнёрств
await channel.send(embed=emb)
await ctx.response.send_message(
content="Партнёрство успешно отправлено!",
ephemeral=True
)