Discordbot javascript对提及做出反应

时间:2020-03-20 12:26:38

标签: javascript discord discord.js

我是Java语言的新手,我想做一个不和谐的机器人。 我有一个已经运行了一些命令的机器人,现在我想添加一些东西,只要有人标记了某个东西,它就会发布响应。

client.on('message', message => {
  var user = "123456479879541";
  if(message.mentions.users.id === user) {
    message.channel.send('ok');
  }
});

我该怎么做才能使其正常工作?

2 个答案:

答案 0 :(得分:1)

Message.mentions.users是一个集合。您需要确定您的ID是否在集合中。您正在比较相等性,由于用户不是集合,因此相等性总是错误的。用.has替换。然后您可以对消息添加反应。为此,有一个指南here描述了如何获得unicode反应,如下所示。

  var user = "123456479879541";
  if(message.mentions.users.has(user)) {
    message.channel.reply('ok');
    message.react('?');
  }

答案 1 :(得分:-1)

您应该使用Message#react()

例如,基本上可以做到:

client.on('message', message => {
var user = "123456479879541";
const reaction = message.guild.emojis.find(emoji => emoji.name === 'EMOJI NAME')
    if(message.mentions.users.has(user)) {
        message.channel.reply('ok');
        message.react(reaction)
}});
相关问题