在嵌入中提及用户

时间:2020-10-02 08:46:03

标签: node.js discord.js

我当前正在执行一个拥抱命令。 我试图让我的机器人提到曾经命令的用户以及该用户在使用命令时提到的用户,我的主要问题是机器人在嵌入内容之外发送了“ @user has拥抱@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 个答案:

答案 0 :(得分:0)

您的操作不正确。

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);