如果您键入命令,我正在尝试制作一个能给出随机响应的机器人,但我做得不好:它说命令未定义?
这是代码:
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';
}
}
}
我在做什么错?谢谢
答案 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”