Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/apache/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
I';我试图用我的discord机器人发出命令,用两个随机不同的答案回答这个问题(discord.js)_Discord_Discord.js - Fatal编程技术网

I';我试图用我的discord机器人发出命令,用两个随机不同的答案回答这个问题(discord.js)

I';我试图用我的discord机器人发出命令,用两个随机不同的答案回答这个问题(discord.js),discord,discord.js,Discord,Discord.js,所以我一直想弄明白这一点,但我弄不明白,有人能告诉我我做错了什么吗。顺便说一句,此命令和其他所有命令都是新命令 const Discord=require(“Discord.js”); const bot=new Discord.Client(); 常量前缀=“!”; const token=“token”; const randomMessage=[“是,这是一个突然的时刻”,“不是,这不是一个突然的时刻,停止过度反应”]; bot.on(“就绪”,()=>{ log(`${bot.user.

所以我一直想弄明白这一点,但我弄不明白,有人能告诉我我做错了什么吗。顺便说一句,此命令和其他所有命令都是新命令

const Discord=require(“Discord.js”);
const bot=new Discord.Client();
常量前缀=“!”;
const token=“token”;
const randomMessage=[“是,这是一个突然的时刻”,“不是,这不是一个突然的时刻,停止过度反应”];
bot.on(“就绪”,()=>{
log(`${bot.user.username}online`);
});
bot.on(“消息”,msg=>{
如果(msg.content==“这是一个糟糕的时刻吗?”){
var response=randomMessage[Math.floor(Math.random()*randomMessage.length)];
msg.channel.send(响应);
}
否则如果(msg.content==“您在线吗?”){
msg.reply(“我在线,准备成为一个傻瓜”);
}});
bot.on(“消息”,msg=>{
如果(!msg.content.startsWith(前缀)| | msg.author.bot)返回;
const args=msg.content.slice(prefix.length.split(+/);
const命令=args.shift().toLowerCase();
如果(命令==“ping”){
msg.channel.send(“pong!”);
}
});
bot.login(令牌);

您的代码有两个问题

  • 您有多个消息事件。所有命令都应在一个事件内执行。否则,这可能会导致内存泄漏
  • 您错误地定义了数组。数组是用括号而不是括号定义的
  • 改变

    const randomMessage=(“是,这是一个紧急时刻”,“不是,这不是紧急时刻,停止过度反应”)


    const randomMessage=[“是,这是一个突发事件”,“不是,这不是突发事件,停止过度反应”]

    尝试将第一个
    onMessage
    事件中的部分移动到第二个
    事件中。一般来说,您不需要两个相同的事件。请分享您可能收到的任何错误消息。