javascript - 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的值......
解决方案
推荐阅读
- sql - ORACLE SQL - 每个 ID 的最大技术密钥的更新语句
- python-3.x - Python 捕获 Tornado Web 服务器中的所有错误
- python - Pandas groupby 标识另一列中具有最大值的元素
- python - 可以通过 Postman 连接,但不能通过 python 脚本连接
- node.js - 如何在node.js中使用for循环从mongodb获取多个用户的emailID
- python - 没有线检测的霍夫变换实现
- xamarin - 如何在 xamarin 表单的 TabBar 的 Tab 中提供页面参考?
- python - 非规范化坐标数据 Tensorflow,Tflite - Python
- c++ - 在 for 循环中将结构添加到 QList
- javascript - 使用 RegEx 准确查找随机字符串中的字母