我想知道如何对单个命令而不是对所有其他命令进行命令冷却?如果有人帮我解决这个问题,将不胜感激,谢谢您。
答案 0 :(得分:2)
您将必须创建一个Collection()
,其中将包含已执行命令的用户,然后具有client.setTimeout()
功能,以便在设置的时间后从{{1} },以便他们可以再次使用命令。
以下是this guide中的一个示例:
Collection()
const cooldowns = new Discord.Collection();
if (!cooldowns.has(command.name)) {
cooldowns.set(command.name, new Discord.Collection());
}
const now = Date.now();
const timestamps = cooldowns.get(command.name);
const cooldownAmount = (command.cooldown || 3) * 1000;
if (timestamps.has(message.author.id)) {
// ...
}