【问题标题】:How to detect how many pings are in a message DISCORD JS?如何检测消息 DISCORD JS 中有多少 ping?
【发布时间】:2022-01-23 08:22:21
【问题描述】:

如何检测消息中的 ping 次数? 我不知道从哪里开始。我正在尝试创建一个反袭击机器人,我想检测是否有人在一条消息中 ping 5 个人

【问题讨论】:

    标签: javascript discord discord.js


    【解决方案1】:

    计算消息中唯一用户提及的简单代码。

    let count = 0;
    for(const user of msg.mentions.users) {
        count++;
    }
    if(count>4) {
        msg.delete();
    }
    

    【讨论】:

    • 这有点多余。仅使用 Array.from(msg.mentions.users).length-1 循环遍历所有内容是没有意义的
    【解决方案2】:

    您可以使用message.mentions.users 看到有多少人被 ping 过,如下所示:

    Array.from(message.mentions.users).length
    

    它可能比你需要的多 1,因为 Javascript 字符串从 0 开始。如果是这样,只需添加一个 -1。

    Array.from(message.mentions.users).length-1
    

    请搜索这些东西。我可以在几秒钟内在 Discord.js documentation 上找到它。

    【讨论】:

      【解决方案3】:

      MessageMentions#user 返回一个 discord.js 集合,您可以通过简单地使用 message.mentions.users.size 来获取集合的长度,这适用于任何提及,例如

      • .角色
      • .members
      • .channels

      你可以检测使用

      if(message.mentions.members.size > n) {
        message.delete();
      }
      

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2020-12-23
        • 1970-01-01
        • 1970-01-01
        • 2020-11-22
        • 2021-11-15
        • 2021-07-17
        • 2019-09-16
        • 2021-12-26
        相关资源
        最近更新 更多