【发布时间】:2021-07-08 13:21:38
【问题描述】:
我有一个消息收集器,我正在尝试使用嵌入中收集的数据作为标题、描述和嵌入颜色。到目前为止,我已经让它工作,以便每个值返回一个单独的嵌入。
我相信这是由于第 38 行中的 forEach,但是我尝试过的所有其他内容(删除该行,什么都不返回,更改为 collectd.messages(value) throws value is not defined,collected.messages throws it not一个函数)不起作用
我不确定将其更改为什么以获得我想要的结果(这是设置嵌入标题的第一个答案,第二个是嵌入描述,第三个是嵌入颜色)。
代码是
module.exports = {
name: "embed",
description: "Sets up a reaction role message!",
async execute(client, message, args, Discord) {
const questions = [
'What is the message title?',
'What is the message description?',
'What is the embed colour?',
]
let counter = 0
const filter = (m) => !m.author.bot
const collector = new Discord.MessageCollector(message.channel, filter, {
max: questions.length,
time: 60000 * 5, // 5m
})
message.channel.send(questions[counter++])
collector.on('collect', (m) => {
if (counter < questions.length) {
m.channel.send(questions[counter++])
}
})
collector.on('end', (collected) => {
console.log(`Collected ${collected.size} messages`)
if (collected.size < questions.length) {
message.reply('The command has timed out')
return
}
let counter = 0
collected.forEach((value) => {
console.log(value.content)
let embed = new Discord.MessageEmbed()
.setTitle(value.content)
.setDescription(value.content)
.setColor(value.content)
let messageEmbed = message.channel.send(embed);
})
})
}
}```
Any help would be greatly appreciated
【问题讨论】:
标签: javascript node.js discord discord.js