Files
Main-tech/cogs/test.py
T
2023-04-23 19:01:06 +03:00

33 lines
1.0 KiB
Python

import asyncio
import disnake
from disnake.ext import commands
class Mute(commands.Cog):
def __init__(self, bot):
self.bot = bot
@commands.slash_command()
@commands.has_permissions(manage_roles=True)
async def mute(self, ctx, member: disnake.Member, time: int, *, reason=None):
guild = ctx.guild
muted_role = disnake.utils.get(guild.roles, name="Muted")
if not muted_role:
muted_role = await guild.create_role(name="Muted")
# Проверка роли на каждый чат
for channel in guild.channels:
await channel.set_permissions(muted_role, speak=False, send_messages=False)
await member.add_roles(muted_role, reason=reason)
await ctx.send(f"{member.mention} был замучен на {time} секунд. Причина: {reason}.")
await asyncio.sleep(time)
await member.remove_roles(muted_role)
await ctx.send(f"{member.mention} больше не замучен.")
def setup(bot):
bot.add_cog(Mute(bot))