我是Java语言的新手,我想做一个不和谐的机器人。 我有一个已经运行了一些命令的机器人,现在我想添加一些东西,只要有人标记了某个东西,它就会发布响应。
client.on('message', message => {
var user = "123456479879541";
if(message.mentions.users.id === user) {
message.channel.send('ok');
}
});
我该怎么做才能使其正常工作?
答案 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)
}});