Доброго времени суток.
Работаю над ботом для дискорда. Решил взяться за реакции/действия с гифками (пример на скриншоте)
img src="
https://habrastorage.org/webt/62/3d/7d/623d7da9e1e..." alt="image"/>
Решил добавить возможность взаимодействий с пользователями, но и оставить возможность
воспользоваться "действием" без упоминания какого-либо юзера.
Столкнулся с проблемой, что работает либо без написаний {member.mention} и member : discord.Member (т.е,
"действие" будет выполняться как на скриншоте без упоминания юзера), либо с вышеперечисленным, но
тогда уже не будет возможности совершить "действие" в одниочку.
Писал реакции через эмбеды.
Вот сам код:
#гифки для "действий"
smoke_gifs = ['https://c.tenor.com/GbIdim1VGIcAAAAC/cowboy-bebop.gif', 'https://c.tenor.com/4AlXS_jcSfEAAAAC/cigarette-smoke.gif',
'https://c.tenor.com/e6fnyOkyodMAAAAC/nana-anime.gif', 'https://c.tenor.com/dNPpY-4GkAQAAAAC/smoking-cowboy-bebop.gif']
@bot.command()
async def smoke(ctx, member: discord.Member):
#emb - "действие" без участия и упоминания пользователя
emb = discord.Embed(title="Реакция: курить",description=f"{ctx.author.mention} курит.",timestamp=ctx.message.created_at, colour=discord.Color.darker_grey())
emb.set_image(url=(random.choice(smoke_gifs)))
emb.set_footer(text="{}".format(ctx.author.name), icon_url=ctx.author.avatar_url)
#emb2 - "действие" совместно с пользователем
emb2 = discord.Embed(title="Реакция: курить",description=f"{ctx.author.mention} курит вместе с {member.mention}",timestamp=ctx.message.created_at, colour=discord.Color.darker_grey())
emb2.set_image(url=(random.choice(smoke_gifs)))
emb2.set_footer(text="{}".format(ctx.author.name), icon_url=ctx.author.avatar_url)
if member.mention in ctx.message:
await ctx.send(embed=emb2)
else:
await ctx.send(embed=emb)