Ну, эм. Какие команды именно? Могу всего три команды тебе написать как пример:
1. Бан:
@bot.slash_commands(name="ban", description="Забанить участника")
@commands.has_permissions(ban_members=True) # Устанавливаем права
async def ban(self, inter: disnake.ApplicationCommandInteraction, user: disnake.Member, reason: str)):
await inter.response.defer()
if user == inter.author: # Тот, кто использовал команду, не может забанить себя
return
await inter.guild.ban(reason=reason, user=user) # Баним участника на сервере
await inter.send(f"{user.mention} забанен по причине {reason}")
2. Мут (с помощью таймаута):
@commands.slash_command(name="мут", description="Выдать мут участнику")
@commands.has_permissions(moderate_members=True) # Устанавливаем права
async def mute(self, inter: disnake.ApplicationCommandInteraction,
user: disnake.Member, reason: str, seconds:int, minutes:int, hours:int):
await inter.response.defer()
total_seconds = hours * 3600 + minutes * 60 + seconds
time_string = ""
if hours > 0:
time_string += f"{hours} часов "
if minutes > 0:
time_string += f"{minutes} минут "
if seconds > 0:
time_string += f"{seconds} секунд"
if time_string == "":
time_string = "0 дней"
if total_seconds > 0:
await user.timeout(duration=total_seconds, reason=f"Замьючен по причине {reason}")
await inter.send(f"{user} замьючен по причине {reason}")
else:
await inter.send("Вы должны указать время мута!", ephemeral=True)
3. Кик:
@commands.slash_command(name="кик", description="Выгнать участника из сервера")
@commands.has_permissions(kick_members=True) # Устанавливаем права
async def kick(self, inter: disnake.ApplicationCommandInteraction, user: disnake.Member, reason: str):
await inter.response.defer()
if user == inter.author.id:
return
await inter.guild.kick(reason=reason, user=user)
await inter.send(f"{user} выгнан из сервера по причине {reason}")
Это всего лишь пример, тебе всё равно придётся дописывать.
Если есть вопросы или ошибки в коде, пиши, да.