#javascript #node.js #discord #discord.js
#javascript #node.js #Discord #discord.js
Вопрос:
Я довольно новичок в javascript и использую Discord.js создать одного или двух ботов Discord. Я работаю над функцией, которая отправляет сообщение при пинге на моем сервере discord. Я пробовал несколько вещей, и ни одна из них не сработала.
У меня есть это до сих пор, он обнаруживает, когда любой пользователь пингуется, а не только я.
client.on('message', (message) => {
if (message.mentions.members.first()) {
message.channel.send('Do not ping this user.');
}
});
Ответ №1:
Вы можете сравнить идентификаторы пользователей. Как получить идентификаторы пользователей.
if (message.mentions.users.first().id === 'Your ID') // if the person mentioned was you
return message.channel.send('Do not mention this user');
Кроме того, как следует из названия, Collection.first()
будет извлекаться первый элемент коллекции. Это означает, что if
оператор вернет значение true только в том случае, если первым упоминанием был вы. Например:
User: 'Hello @you' // detected
User: 'Hello @notYou and @you' // not detected
Чтобы обойти это, вы можете использовать Collection.has()
:
// will return true if *any* of the mentions were you
if (message.mentions.users.has('Your ID'))
return message.channel.send('Do not mention this user');