命令没有定义? (尝试制作具有随机响应的不和谐机器人)

时间:2020-05-14 07:48:09

标签: node.js discord discord.js

如果您键入命令,我正在尝试制作一个能给出随机响应的机器人,但我做得不好:它说命令未定义?

这是代码:

const PREFIX = 'ly?';
if (command === 'topic') {
  function randomMessage() {
    var randomNumber = Math.round(Math.random() * 2); // 0, 1, 2, 3, 4 or 5
    switch (randomNumber) {
      case 0:
        return 'Helfdlo!';
      case 1:
        return 'Byfde!';
      case 2:
        return 'Ranfddom';
      case 3:
        return 'Hefdllo!';
      case 4:
        return 'Bfdye!';
      case 5:
        return 'Ranfddom';
    }
  }
}

我在做什么错?谢谢

1 个答案:

答案 0 :(得分:0)

if(command === 'topic')

命令未预定义。你必须自己做。在您的PREFIX ='ly?'下方添加此代码;

  const args = message.content.slice(PREFIX.length).trim().split(/ +/g);
  const command = args.shift().toLowerCase();

应该这样做。

而且,Math.round(Math.random()* 2)不会输出0-5之间的数字,而是输出0-2之间的数字。如果您希望数字介于0到5之间,请使用“ Math.round(Math.random()* 5)”或Math.floor“ Math.random()* 6”