Есть такой код:
async def report(ctx, member: discord.Member, *, arg):
role = ctx.guild.get_role(999999999999) # Представьте, что 9999999 id роли модератора
members = ctx.guild.members
await ctx.channel.send('Your complaint was sent to moderators!', delete_after=10)
for member in members:
if role in member.roles:
await member.send(f'{ctx.author.mention} оставил жалобу на {member.mention} с причиной:\n**{arg}**')
await ctx.message.delete()
Что делает код:
Когда мы пишем $report @user причина, всем людям у которых есть роль модератор, т.е. id 999999999999, им отправляется личное сообщение, что @Автор оставил жалобу на @Нарушителя с причиной: Причина.
И тут такая проблема, что вместо имени Нарушителя, в лс отправляется имя модератора, которому отправляется в лс это сообщение.
Т.е. если модератора зовут к примеру John, то он получает в лс это:
@Автор оставил жалобу на @John, хотя он оставлял на другого.
Вот, как это исправить, уже 2-ой день пытаюсь это сделать.
Мне нужно, чтоб модератор получал в ЛС вот это, и без всяких багов: