super edit thay mama

This commit is contained in:
Alex D
2023-04-24 17:55:03 +03:00
parent 4731006753
commit cb8fb7d359
13 changed files with 51 additions and 47 deletions
+11 -11
View File
@@ -8,39 +8,39 @@ class MuteCommands(commands.Cog):
def __init__(self, bot):
self.bot = bot
@commands.slash_command(description="Заглушает по всему серверу на указанное время.")
@commands.slash_command(name="mute", description="Заглушает по всему серверу на указанное время.")
@commands.has_permissions(manage_roles=True)
async def mute(self, ctx: disnake.AppCommandInteraction, member: disnake.Member, time: int, *, reason=None):
if disnake.utils.get(ctx.author.roles, id=1060541642450411560):
guild = ctx.guild
mutedRole = disnake.utils.get(guild.roles, name="Muted")
muted_role = disnake.utils.get(guild.roles, name="Muted")
if not mutedRole:
mutedRole = await guild.create_role(name="Muted")
if not muted_role:
muted_role = await guild.create_role(name="Muted")
# Проверка роли на каждый чат
for channel in guild.channels:
await channel.set_permissions(mutedRole, speak=False, send_messages=False)
await channel.set_permissions(muted_role, speak=False, send_messages=False)
await member.add_roles(mutedRole, reason=reason)
await member.add_roles(muted_role, reason=reason)
await ctx.send(f"{member.mention} был замучен на {time} секунд. Причина: {reason}.")
await asyncio.sleep(time)
await member.remove_roles(mutedRole)
await member.remove_roles(muted_role)
await ctx.send(f"{member.mention} больше не замучен.")
else:
await ctx.send(f'{ctx.author.mention}, у вас нет роли <@&1060541642450411560>.')
@commands.slash_command(description="Снимает мут с указанного пользователя.")
@commands.slash_command(name="unmute", description="Снимает мут с указанного пользователя.")
@commands.has_permissions(manage_roles=True)
async def unmute(self, ctx: disnake.AppCommandInteraction, member: disnake.Member):
if disnake.utils.get(ctx.author.roles, id=1060541642450411560):
mutedRole = disnake.utils.get(ctx.guild.roles, name="Muted")
muted_role = disnake.utils.get(ctx.guild.roles, name="Muted")
if mutedRole not in member.roles:
if muted_role not in member.roles:
await ctx.send(f"{member.mention} не замучен.")
return
await member.remove_roles(mutedRole)
await member.remove_roles(muted_role)
await ctx.send(f"{member.mention} больше не замучен.")
else:
await ctx.send(f'{ctx.author.mention}, у вас нет роли <@&1060541642450411560>.')