Итак, я сейчас создаю бота Discord, и я сделал команду ~ play, которая считывает файлы из папки (песни) и сохраняет их в массиве, затем выбирает случайный файл и воспроизводит его в голосовом канале.
Прямо сейчас я хочу создать ~ песни, которые заставят бота отправлять в чат встраивание, содержащее .setTitle("These are that I have:")
, а затем .addField({name: "songs:", value: "*all the songs in the array"})
.
Причина, по которой я хочу, чтобы все песни были Одно значение поля состоит в том, что песен слишком много, а я могу использовать только 25 полей. Я пробовал forEach
в значении и вне поля, но ни один из них не работал.
Вот мой код:
const discord = require("discord.js");
const fs = require("fs");
module.exports.run = async (bot, message, args) => {
const songFiles = fs
.readdirSync("./commands/Workout/")
.filter((file) => file.endsWith(".mp3"));
let songsEmbed = new discord.MessageEmbed()
.setColor("RANDOM")
.setTitle("These are that I have:");
//.addField('Songname:',commandFiles.forEach())//doesn't work
for (i = 0; i < commandFiles.length; i++) {
songsEmbed.addField({ name: "Song name:", value: `${commandFiles[i]},` });
} //That just create field for every song
message.reply(songsEmbed);
};
module.exports.help = {
name: "songs",
};