на
import disnake
from disnake.ext import commands
bot = commands.Bot(command_prefix='!')
@bot.command(usage="!ban <@user> <причина=необязательно>")
@commands.has_permissions(ban_members=True)
async def ban(ctx, member: disnake.Member, *, reason="Нарушение правил"):
# Отправляем сообщение в канал о бане
await ctx.send(f"Администратор {ctx.author.mention} забанил пользователя {member.mention}", delete_after=5)
# Баним пользователя
await member.ban(reason=reason)
# Формируем сообщение для ЛС забаненного
dm_message = f"Вы были забанены! Причина: {reason}. Модератор: {ctx.author.name}"
try:
# Отправляем сообщение в ЛС
await member.send(dm_message)
except disnake.Forbidden:
# Если ЛС закрыты, игнорируем ошибку
print(f"Не удалось отправить ЛС пользователю {member.name}, возможно, у него закрыты ЛС.")
# Удаляем команду из чата
await ctx.message.delete()
# Запуск бота (не забудьте добавить свой токен)
bot.run('YOUR_BOT_TOKEN')
Всё работает игрока банит, но мне нужно сделать так чтобы после бана игроку которого забанили написал бот сообщение в ЛС о том что "Вы были забанены! причина: *там будет писаться причина которую написал модер при команде !ban. То есть (!ban @testuser Оскорбления) и мне надо чтобы слово "оскорбление" появилось после причина. А если не написать причину то просто будет Нарушение правил. Дальше Модератор: тут будет ник игрока который написал команду !ban.
Фух надеюсь написал всё понятно. Буду рад каждому кто напишет для меня такой код. Всем добра и удачи! И заранее спасибо.