import asyncio
from asyncio import sleep
@bot.command()
@commands.has_permissions(manage_roles=True, ban_members=True, kick_members=True)
async def mute(ctx, user: discord.Member, time: int, reason):
role = user.guild.get_role(1234567890) # айди роли которую будет получать юзер
await ctx.send(f'{user} получил мут на {time} минут по причине: {reason}')
await user.add_roles(role)
await user.move_to(None)
await asyncio.sleep(time * 60)
await user.remove_roles(role)
Z.Y.
where " role = user.guild.get_role(1234567890) # 用户将收到的角色的 id " 将 "1234567890" 替换为所需角色的 id
这是代码:
Z.Y.
where " role = user.guild.get_role(1234567890) # 用户将收到的角色的 id " 将 "1234567890" 替换为所需角色的 id
这样当机器人关闭时静音不会重置,我认为您可以使用一个数据库,该数据库将从机器人启动的那一刻起每隔一段时间更新一次,在关闭之前,静音的最后时间值将是保存在数据库中,并且通常有人被静音。此外,当启动机器人时,机器人从数据库中读取 Vanya Ivanov 被静音了 10 分钟,然后他又被静音了 7 分钟(最后保存的值)
不然怎么不知道