我正在尝试向我的Discord机器人添加一个8ball功能,但是当我尝试运行代码时,它说有一个意外的令牌“,”。当我删除逗号时,它说有一个意外的令牌功能。以下是功能:
bot.on('message', function (user, userID, channelID, message, evt), function (doMagic8BallVoodoo)) {
var rand = ['Yes', 'No', 'No, eat a dick.', 'YAS!', 'Ask again later.', 'shlap shlap shlap', 'Get mega memed, bitch.'];
这是8ball命令:
case '8ball':
bot.sendMessage({
to: channelID
message: 'Flat Earth says:' + (doMagic8Ballvoodoo)));
});
编辑:我对代码做了一些更改。我现在可以运行脚本,但机器人会响应除8ball之外的所有命令。这是所有命令:
case 'flatearth':
bot.sendMessage({
to: channelID,
message: 'The earth is flat.'
});
break;
case 'roundearth':
bot.sendMessage({
to: channelID,
message: 'You fool. You absolute buffoon. The earth is flat, you fucking plebeian.'
});
break;
case '8ball':
}
function doMagic8BallVoodoo() {
var rand = ['Yes', 'No', 'No, eat a dick.', 'YAS!', 'Ask again later.', 'shlap shlap shlap', 'Get mega memed, bitch.'];
return rand[Math.floor(Math.random()*rand.length)];
}
};
})
编辑2:我修改了8ball代码,这就是它的样子:
case '8ball':
bot.sendMessage({
to: channelID,
message: 'Flat Earth says:' (doMagic8Ballvoodoo())
}
function doMagic8BallVoodoo() {
var rand = ['Yes', 'No', 'No, eat a dick.', 'YAS!', 'Ask again later.', 'shlap shlap shlap', 'Get mega memed, bitch.'];
return rand[Math.floor(Math.random()*rand.length)];
});
break;
}
};
})
我知道我做错了,因为我不断收到语法错误(当我把这个8ball代码放到编辑器中时,它说“意外的令牌”)在这部分代码中的第11行。我也不确定8ball功能的位置,我应该将其与其他功能保持一致,还是在8ball命令之前还是......?
答案 0 :(得分:1)
你的问题在47行和48行。你需要在第47行的末尾加一个逗号,你需要从第48行的末尾删除两个末端的parens和分号。你似乎也有一个太多的末尾parens也接近第20行的末尾。