Упоминание пользователей во внедрении

#node.js #discord.js

#node.js #discord.js

Вопрос:

В настоящее время я создаю команду объятия. Я пытаюсь заставить моего бота упомянуть пользователя, который использовал команду, и того, которого пользователь упомянул при использовании команды, моя главная проблема в том, что бот отправляет сообщение «@user обнял @user» за пределами встраивания, вот код, который я использую

 const messages = ["https://media.tenor.com/images/c6f27ebfd8657a83794329468c27197f/tenor.gif"]
module.exports = {
    name: 'embed',
    description: "hug embed",
    execute(message, args){
const randomMessage = messages[Math.floor(Math.random() * messages.length)]
const hugged = message.mentions.users.first();
const reply = message.reply(`has hugged! <@${hugged.id}>`);
if(!hugged) return message.reply('please mention who you want to hug');
    let embeddedHug = new Discord.MessageEmbed()
      .setDescription(reply)
      .setImage(randomMessage)
    message.channel.send(embeddedHug);
}
    }
  

Есть предложения, почему бот отправляет его вне встраивания?

Ответ №1:

Вы делаете это неправильно.

message.reply() используется для отправки обычного сообщения и автоматического упоминания автора в начале сообщения.

Это то, что вы хотите.

 const hugged = message.mentions.users.first();
const embedMessage = `<@!${message.author.id}> has hugged <@!${hugged.id}>`;

let embeddedHug = new Discord.MessageEmbed()
      .setDescription(embedMessage)
      .setImage(randomMessage)
message.channel.send(embeddedHug);
  

Комментарии:

1. Большое вам спасибо, я новичок в этом, поэтому я просто стараюсь изо всех сил и провожу много исследований, прежде чем спрашивать здесь