const client = require("../../main"); const { MessageEmbed } = require("discord.js"); const config = require("../../Structures/config.json"); const status = (queue) => `Volume: \`${queue.volume}%\` | Loop: \`${ queue.repeatMode ? queue.repeatMode === 2 ? "All Queue" : "This Song" : "Off" }\` | Autoplay: \`${queue.autoplay ? "On" : "Off"}\``; client.distube .on("playSong", (queue, song) => queue.textChannel.send({ embeds: [ new MessageEmbed() .setColor(config.COLOR_1) .setThumbnail( song.thumbnail ? song.thumbnail : "https://thumbs.dreamstime.com/b/error-page-not-found-vector-vinyl-music-broken-graphic-error-page-not-found-vector-vinyl-music-broken-graphic-background-156624909.jpg" ) .setDescription( `🎧 Playing \`${song.name}\` - \`${song.formattedDuration} [${ song.duration } seconds]\`\nRequested by: ${song.user}\n${status(queue)}` ), ], }) ) .on("addSong", (queue, song) => queue.textChannel.send({ embeds: [ new MessageEmbed() .setColor(config.COLOR_1) .setTimestamp() .setDescription( `Added ${song.name} - \`${song.formattedDuration}\` to the queue by ${song.user}` ), ], }) ) .on("addList", (queue, playlist) => queue.textChannel.send({ embeds: [ new MessageEmbed() .setColor(config.COLOR_1) .setTimestamp() .setDescription( `Added \`${playlist.name}\` playlist (${ playlist.songs.length } songs) to queue\n${status(queue)}` ), ], }) ) .on("error", (channel, e) => { channel.send({ embeds: [ new MessageEmbed() .setColor(config.COLOR_RED) .setDescription( `An error encountered: ${e.toString().slice(0, 1974)}` ), ], }); console.error(e); }) .on("empty", (queue) => queue.textChannel.send({ embeds: [ new MessageEmbed() .setColor(config.COLOR_1) .setDescription("Leaving empty channel"), ], }) ) .on("searchNoResult", (message, query) => message.channel.send({ embeds: [ new MessageEmbed() .setColor(config.COLOR_RED) .setDescription(`No result found for \`${query}\`!`), ], }) ) .on("finish", (queue) => queue.textChannel.send({ embeds: [ new MessageEmbed() .setColor(config.COLOR_1) .setTimestamp() .setDescription(`Finished. Leaving channel`), ], }) );