我有一个用于赏金系统的嵌入机器人,用户可以通过该系统获取人们设置的赏金。使用我的代码,用户可以使用 args 为嵌入设置标题。我试图让他们设置描述,这里的页脚可能是我的代码。任何帮助,将不胜感激。我在想像
!bounty Title + Description这样的东西,但我不确定如何允许用户在描述中输入我可以将机器人设置为 DM 并允许用户输入每个字段,但我想要一些更用户友好和快速的东西.
if (!args[0]) return message.reply('You need to supply the question');
let embed = new Discord.MessageEmbed()
.setTitle(args.join(' '))
.setDescription('Bounty posted by ' + message.author.tag)
.addField('Status', 'Bounty is currently available.')
.setColor('#ffd700')
.attachFiles(new Discord.MessageAttachment('https://i.imgur.com/eGEKp8k.png', 'thumbnail.png'))
.setThumbnail('attachment://thumbnail.png')
.setFooter('Bot created by James (Rock)₇₇₇');
您可以做的是在您的命令中引入某种分隔符。这样您就可以将标题与描述分开。
您首先需要做的是获取分隔符的索引。注意:在这个例子中,我使用了分隔符->
。你可以使用任何你想要的。
let i = args.indexOf("->");
接下来,我们通过从第一个元素args
到分隔符点进行切片来获得标题。
let Title = args.slice(0, i);
接下来我们得到描述。我们通过在分隔符之前切掉部分来获得它。完成后,我们将完全移除分隔符。
let Description = args.slice(i);
Description.shift();
现在我们有了我们的Title
和我们的,Description
我们可以把它们放在我们的嵌入中。注意:请记住,我们现在有两个arrays
作为标题和描述。
let embed = new Discord.MessageEmbed()
.setTitle(Title.join(" "))
.setDescription(`Bounty posted by ${message.author.tag}
${Description.join(" ")}`)
// the rest of your embed
本文收集自互联网,转载请注明来源。
如有侵权,请联系 [email protected] 删除。
我来说两句