我想让主持人做!Host然后机器人做 您希望什么时间开始? 用户响应17:00 CET 机器人然后做什么游戏模式 用户响应正常2v2或类似的内容 Bot Response您想接待谁 用户响应@NaP Bot Response Bot然后替换下面的值
if (m == '.nap tournament' || m == '.tournament info' || m == '.nap t' || m == '.nap tourny' || m == '.ti') {
message.channel.send({
embed: {
color: 000000,
author: {
name: bot.user.username,
icon_url: bot.user.avatarURL
},
title: "**Nap Weekly Tournament**",
description: "Every Week We Have A Tournament For All The Nappies!!!",
fields: [{
name: "**Time**",
value: "Saterdays at 17:00 CET or 5:00 pm CET."
},
{
name: "**Gamemode**",
value: "Normal 2v2"
},
{
name: "**Tournament Host**",
value: "<@!" + 'Whoister#7002' +
">"
}
],
timestamp: new Date(),
footer: {
icon_url: bot.user.avatarURL,
text: "Arrara bot"
}
}
});
答案 0 :(得分:0)
我建议使用discord.js中内置的RichEmbed类,因为它看起来更干净并且也很容易使用,这是一个示例:
const embed = new Discord.RichEmbed()
.setTitle("This is your title, it can hold 256 characters")
.setAuthor("Author Name", "https://i.imgur.com/lm8s41J.png")
.setColor(0x00AE86)
.setDescription("Embed description here")
message.channel.send({embed});
这里是查看您可以添加到嵌入中的其他内容的链接:https://discord.js.org/#/docs/main/stable/class/RichEmbed
然后,为了处理您想要的用户响应,我将使用消息收集器https://discord.js.org/#/docs/main/stable/class/TextChannel?scrollTo=createMessageCollector
您也可以在此处找到示例,可以将过滤器设置为用户ID,例如const filter = m => m.author.id === message.author.id
。您也可以使用maxMatches设置在发出end
事件之前收集的最大邮件数。 channel.createMessageCollector(filter, { maxMatches: 2 }); //Will collect 2 messages and then emit 'end' event
。发出的另一个事件是collect
,它在每次响应返回与您的过滤器匹配时发出,并且要获取该响应的内容,可以使用诸如collector.on('collect', m => console.log("Collected:" + m.content));
之类的东西。您可以创建多个收集器,并在两者之间发送一条消息以首先提示用户,然后获取他们的输入。