Делаю варн систему, а именно застрял на анварнах (снятие предупреждений)
Всё работает, кроме условия, если упоминание пользователя отсутсвует.
Уже и так, и сяк код крутил - не хочет
Вот сам код на анварн:
@bot.command(aliases=['uw', 'unwarn'])
@commands.has_permissions(manage_messages=True)
async def unwarning(ctx, member: discord.Member=None, unit=None):
logs=bot.get_channel(айди канала)
await ctx.message.delete()
#Embeds
emb1=discord.Embed(timestamp=ctx.message.created_at, colour=discord.Color.from_rgb(47, 49, 54))
emb1.set_author(name=member.name, icon_url=member.avatar_url )
emb1.set_footer(text="{}".format(ctx.author.name), icon_url=ctx.author.avatar_url, )
emb1.add_field(name='♢ С пользователя снято 1 предупреждение.', value="Будьте внимательны в следующий раз и прочтите <#айди канала>")
emb1r=discord.Embed(timestamp=ctx.message.created_at, colour=discord.Color.orange())
emb1r.set_author(name=member.name, icon_url=member.avatar_url )
emb1r.set_footer(text="{}".format(ctx.author.name), icon_url=ctx.author.avatar_url, )
emb1r.add_field(name='♢ Пользователь имеет предупреждение #1', value="Вы хотите снять больше предупреждений, чем имеет пользователь на данный момент.")
emb2=discord.Embed(timestamp=ctx.message.created_at, colour=discord.Color.from_rgb(47, 49, 54))
emb2.set_author(name=member.name, icon_url=member.avatar_url )
emb2.set_footer(text="{}".format(ctx.author.name), icon_url=ctx.author.avatar_url, )
emb2.add_field(name='♢ С пользователя снято 2 предупреждения.', value="Будьте внимательны в следующий раз и прочтите <#айди канала>")
emb2r=discord.Embed(timestamp=ctx.message.created_at, colour=discord.Color.orange())
emb2r.set_author(name=member.name, icon_url=member.avatar_url )
emb2r.set_footer(text="{}".format(ctx.author.name), icon_url=ctx.author.avatar_url, )
emb2r.add_field(name='♢ Пользователь имеет предупреждение #2', value="Вы хотите снять больше предупреждений, чем имеет пользователь на данный момент.")
emb3=discord.Embed(timestamp=ctx.message.created_at, colour=discord.Color.from_rgb(47, 49, 54))
emb3.set_author(name=member.name, icon_url=member.avatar_url )
emb3.set_footer(text="{}".format(ctx.author.name), icon_url=ctx.author.avatar_url, )
emb3.add_field(name='♢ С пользователя снято 3 предупреждения.', value="Будьте внимательны в следующий раз и прочтите <#айди канала>")
embu=discord.Embed(timestamp=ctx.message.created_at, colour=discord.Color.orange())
embu.set_author(name=member.name, icon_url=member.avatar_url )
embu.set_footer(text="{}".format(ctx.author.name), icon_url=ctx.author.avatar_url, )
embu.add_field(name='♢ Укажите кол-во предупреждений.', value="Я не могу снять все предупреждения!")
embm=discord.Embed(timestamp=ctx.message.created_at, colour=discord.Color.orange())
embm.set_author(name=member.name, icon_url=member.avatar_url )
embm.set_footer(text="{}".format(ctx.author.name), icon_url=ctx.author.avatar_url, )
embm.add_field(name='♢ Укажите пользователя.', value="Я не могу снять предупреждения с того, о ком вы подумали, но кого не написали :(.")
embm1=discord.Embed(timestamp=ctx.message.created_at, colour=discord.Color.orange())
embm1.set_author(name=member.name, icon_url=member.avatar_url )
embm1.set_footer(text="{}".format(ctx.author.name), icon_url=ctx.author.avatar_url, )
embm1.add_field(name='♢ Укажите пользователя.', value="Вы не можете снять предупреждения с себя!")
await ctx.channel.purge(limit=0)
#Roles
warn1r=ctx.guild.get_role(айди роли)
warn2r=ctx.guild.get_role(айди роли)
warn3r=ctx.guild.get_role(айди роли)
#Action
if member:
if member == ctx.author:
await ctx.send(embed=embm1)
else:
if unit == "1":
if warn1r in member.roles:
await member.remove_roles(warn1r)
elif warn2r in member.roles:
await member.remove_roles(warn2r)
await member.add_roles(warn1r)
elif warn3r in member.roles:
await member.remove_roles(warn3r)
await member.add_roles(warn2r)
await ctx.send(embed=emb1, delete_after=10)
await logs.send(embed=emb1)
elif unit == "2":
if warn1r in member.roles:
await ctx.send(embed=emb1r, delete_after=10)
elif warn2r in member.roles:
await member.remove_roles(warn2r)
await ctx.send(embed=emb2, delete_after=10)
await logs.send(embed=emb2)
elif warn3r in member.roles:
await member.remove_roles(warn3r)
await member.add_roles(warn1r)
await ctx.send(embed=emb2, delete_after=10)
await logs.send(embed=emb2)
elif unit == "3":
if warn1r in member.roles:
await ctx.send(embed=emb1r, delete_after=10)
elif warn2r in member.roles:
await ctx.send(embed=emb2r, delete_after=10)
elif warn3r in member.roles:
await member.remove_roles(warn3r)
await ctx.send(embed=emb3, delete_after=10)
await logs.send(embed=emb3)
else:
await ctx.send(embed=embu, delete_after=10)
if member is None:
await ctx.send(embed=embm, delete_after=10)