Задать вопрос
@Gioplens

Как сделать РП команду Discord.py?

я написал скрипт, который делает РП действие по отношению к другому человеку, но это только по ID пользователя в Discord. А я хотел бы чтоб это выглядело примерно так: ".slap @user" а у меня только так ".slap ID"
Подскажите мне значения, которые в коде надо исправить на то, чтоб получить рп действие по пингу человеку
Сам код:
@bot.command()
async def slap(ctx, member_id:int):
    member = ctx.guild.get_member(member_id)
    emb = discord.Embed(title=None, description = f"На весь чат был шум от  {ctx.author.mention} пощечины {member.mention} по лицу!", color=0x3498db)
    emb.set_image(url="тут указано")
    await ctx.send( embed = emb )
  • Вопрос задан
  • 181 просмотр
Подписаться 1 Простой 2 комментария
Решения вопроса 1
@vladislavlisitsyn
Во первых, более удобнo будет использовать слеш команды.
В вашем случае, вы сами указали в параметрих команды id

Исправленый код:
@client.command()
async def slap(ctx, member: discord.Member = None):
    if member is None:
        await ctx.send(embed=discord.Embed(title='[ERROR] Slap', description='Укажите пользователя'))
    else:
        emb = discord.Embed(title=None, description = f"На весь чат был шум. {ctx.author.mention} дал пощечену {member.mention} по лицу!", color=0x3498db)
        emb.set_image(url="тут указано")
        await ctx.send(embed=emb)


Там от себя чуть чуть добавил)
Ответ написан
Пригласить эксперта
Ответы на вопрос 1
fenrir1121
@fenrir1121 Куратор тега discord.py
Начни с документации
Подскажите мне значения

async def slap(ctx, member_id:int)

У вас оно даже подписано как id, тогда как можно принимать сразу Member'а
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы