[英]How to detect message content Discord.js?
我正在为我的服务器编写一个 Discord 机器人的代码,我目前对一个神奇的 8 球功能 go 数字感到困惑。 我试图让它检查 8 球命令后是否有消息,如果没有,则向同一频道发送一条消息,告诉用户向它提供一条消息来回答。
这是我的代码:
if (commandName === '8ball') {
message.author.get(args[0]);
const message = args.join(' ').slice(0);
if (message.length < 10) message.channel.reply; 'You need to give me a question to anser, bud.';
const messages = [
'8ball messages here'
];
const pEmbed = new Discord.MessageEmbed()
.setTimestamp('')
.setColor(`${bedcolor}`)
.randomMessage = messages[Math.floor(Math.random() * messages.length)];
return message.reply(pEmbed);
它返回一个错误,说它无法在初始化之前访问消息,并且尽管代码在那里也不会嵌入。 我是 Javascript 的新手,我试图将随机代码拼接在一起以使其工作,所以我可能在这里做错了。 我很感激任何人关于如何至少制作此代码 function 并了解有关 JS 的更多信息的建议,这样我就不必“拼接”随机代码。
考虑到您使用的是 Discord V13,您需要执行message.channel.send({embeds: [pEmbed]})
到 function,而不是message.channel.send(pEmbed)
它是版本 13 的新功能添加。
你还需要做randomMessage = messages[Math.floor(Math.random() * messages.length)];
然后以 state .setDescription(`Answer: ${randomMessage}`)
为例
快乐的编码。 如果您遇到问题,请告诉我。
尝试这个:
function someFunctionName() {
var messages = ['...','...']
return messages[Math.floor(Math.random()*rand.length)];
}
const pEmbed = new Discord.MessageEmbed()
.setColor(`${bedcolor}`)
.setDescription(someFunctionName())
return message.reply(pEmbed);
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.