如果用户更改了昵称,Discord命令将不起作用

时间:2019-03-30 23:20:40

标签: javascript discord.js mention

如果用户更改了行会的昵称,我的if语句将不起作用。

有人知道我该如何解决吗?

if (message.content.includes(message.mentions.users.first())) {
    let user = message.mentions.users.first();
    if (results.afk === 1) {
        message.channel.send(`${user} is AFK - ${results.reason} (${moment(results.afktime).fromNow()})`);
    }
}

results.afk来自一个mySQL键对象。如果用户未更改其昵称,则以上方法适用。

我创建了一个临时/测试功能:

console.log(message.mentions.users)

        if (message.content.includes(message.mentions.users.first())){
            console.log("Has mention")
        }
  • 如果我提到一个用户没有更改其用户名,则从console.log(message.mentions.users)"Has mention"获取收集数据。

    < / li>
  • 如果我提到某用户不满已经更改了用户名,我只会从console.log(message.mentions.users)获取收集数据。

问题出在(message.content.includes(message.mentions.users.first()))上。如果用户更改了他的昵称,则不会在消息中检测到提及。如果有用户提及(不是@ everyone,@ here #channelname),我需要一种传递if函数的方法。

1 个答案:

答案 0 :(得分:1)

var menu = document.getElementById('menu_img'); 为我解决了这个问题。