首页 > 解决方案 > 定时器到时如何执行命令

问题描述

我最近一直在处理这段代码,我在这里找到了: Discord.js reply to message then wait for reply

我想知道当计时器关闭而没有任何答案时,脚本是否有任何方法可以运行命令。

我试过把命令放在收集器的代码块之外,我试过放一个if (timer > 10000),但没有用。

if (command === 'spec') {
  message.author.send("See or Change?");
  const collector = new Discord.MessageCollector(message.channel, m => m.author.id === message.author.id, {
    time: 10000
  });
  console.log(collector);
  collector.on('collect', message => {
    if (message.content == "See") {
      message.channel.send("You Want To See Someones Spec OK!");
    } else if (message.content == "Change") {
      message.channel.send("You Want To Change Your Spec OK!");
    }
  });
}

当时间结束时,我希望脚本更改使用它的用户的昵称。

标签: timerbotsdiscorddiscord.js

解决方案


您可以收听收集器的结束事件并检查收集的消息的大小。

collector.on('end', collected => {
  if (collected.size === 0) {
    // do something
  }
});

推荐阅读