36 lines
1.2 KiB
JavaScript
36 lines
1.2 KiB
JavaScript
const { MessageEmbed } = require("discord.js");
|
|
const lyricsFinder = require("lyrics-finder");
|
|
const { LOCALE } = require("../util/Util");
|
|
const i18n = require("i18n");
|
|
|
|
i18n.setLocale(LOCALE);
|
|
|
|
module.exports = {
|
|
name: "lyrics",
|
|
aliases: ["ly"],
|
|
description: i18n.__("lyrics.description"),
|
|
async execute(message) {
|
|
const queue = message.client.queue.get(message.guild.id);
|
|
if (!queue) return message.channel.send(i18n.__("lyrics.errorNotQueue")).catch(console.error);
|
|
|
|
let lyrics = null;
|
|
const title = queue.songs[0].title;
|
|
try {
|
|
lyrics = await lyricsFinder(queue.songs[0].title, "");
|
|
if (!lyrics) lyrics = i18n.__mf("lyrics.lyricsNotFound", { title: title });
|
|
} catch (error) {
|
|
lyrics = i18n.__mf("lyrics.lyricsNotFound", { title: title });
|
|
}
|
|
|
|
let lyricsEmbed = new MessageEmbed()
|
|
.setTitle(i18n.__mf("lyrics.embedTitle", { title: title }))
|
|
.setDescription(lyrics)
|
|
.setColor("#8C52FF")
|
|
.setTimestamp();
|
|
|
|
if (lyricsEmbed.description.length >= 2048)
|
|
lyricsEmbed.description = `${lyricsEmbed.description.substr(0, 2045)}...`;
|
|
return message.channel.send(lyricsEmbed).catch(console.error);
|
|
}
|
|
};
|