首页 > 解决方案 > Discord 机器人在再次使用命令之前显示剩余冷却时间

问题描述

let cooldown = -1


let cooldownString = `${guild.id}-${member.id}-${commands[0]}`
    if (cooldown > 0 && recentlyRan.includes(cooldownString))
      return message.channel.send(new Discord.MessageEmbed().setTitle(`SLOW DOWN`).setColor(`BLACK`).setDescription(new Date()-cooldown/1000))
    if (cooldown > 0) {
      recentlyRan.push(cooldownString)

      setTimeout(() => {
        recentlyRan = recentlyRan.filter((string) => {
          return string !== cooldownString
        })

      }, 1000 * cooldown)
    }

现在这是在我的 commandBase 文件夹中,所以当我在不同的文件中使用新命令时,我会根据需要放置一个冷却时间值此代码有效,如果未满足所需的冷却时间,它会限制用户发送消息但是

我试图显示使用此命令的剩余时间,例如冷却时间值为 10 秒,用户使用该命令并尝试再次使用它,它说您在使用此命令之前还有 7 秒

现在这给了我一个-160的值......

标签: javascriptnode.jsdiscorddiscord.js

解决方案


推荐阅读