Maj pkgs + fix dep des buttons / commands + Ajout fichiers utils
This commit is contained in:
63
utils/editPlayer.js
Normal file
63
utils/editPlayer.js
Normal file
@@ -0,0 +1,63 @@
|
||||
const { ActionRowBuilder, ButtonBuilder } = require('discord.js')
|
||||
|
||||
module.exports = async (interaction) => {
|
||||
/*let components = [
|
||||
new ActionRowBuilder().addComponents(
|
||||
interaction.message.components[0].components.forEach(button => {
|
||||
return new ButtonBuilder().setCustomId(button.customId).setLabel(button.label).setStyle(button.style).setDisabled(true)
|
||||
})
|
||||
),
|
||||
new ActionRowBuilder().addComponents(
|
||||
interaction.message.components[1].components.forEach(button => {
|
||||
return new ButtonBuilder().setCustomId(button.customId).setLabel(button.label).setStyle(button.style).setDisabled(true)
|
||||
})
|
||||
)
|
||||
]*/
|
||||
let components = [
|
||||
new ActionRowBuilder().addComponents(
|
||||
new ButtonBuilder()
|
||||
.setLabel(interaction.message.components[0].components[0].label)
|
||||
.setStyle(2)
|
||||
.setCustomId(interaction.message.components[0].components[0].customId)
|
||||
.setDisabled(true),
|
||||
new ButtonBuilder()
|
||||
.setLabel('⏹️')
|
||||
.setStyle(2)
|
||||
.setCustomId('stop')
|
||||
.setDisabled(true),
|
||||
new ButtonBuilder()
|
||||
.setLabel('⏭️')
|
||||
.setStyle(2)
|
||||
.setCustomId('skip')
|
||||
.setDisabled(true),
|
||||
new ButtonBuilder()
|
||||
.setLabel('🔉')
|
||||
.setStyle(2)
|
||||
.setCustomId('volume_down')
|
||||
.setDisabled(true),
|
||||
new ButtonBuilder()
|
||||
.setLabel('🔊')
|
||||
.setStyle(2)
|
||||
.setCustomId('volume_up')
|
||||
.setDisabled(true)
|
||||
),
|
||||
new ActionRowBuilder().addComponents(
|
||||
new ButtonBuilder()
|
||||
.setLabel('🔀')
|
||||
.setStyle(2)
|
||||
.setCustomId('shuffle')
|
||||
.setDisabled(true),
|
||||
new ButtonBuilder()
|
||||
.setLabel('🔁')
|
||||
.setStyle(2)
|
||||
.setCustomId('loop')
|
||||
.setDisabled(true),
|
||||
new ButtonBuilder()
|
||||
.setLabel('⏮️')
|
||||
.setStyle(2)
|
||||
.setCustomId('previous')
|
||||
.setDisabled(true)
|
||||
)
|
||||
]
|
||||
interaction.update({ components, content: 'Chargement...' })
|
||||
}
|
||||
74
utils/generatePlayer.js
Normal file
74
utils/generatePlayer.js
Normal file
@@ -0,0 +1,74 @@
|
||||
const { EmbedBuilder, ButtonBuilder, ActionRowBuilder } = require('discord.js')
|
||||
const { useQueue } = require('discord-player')
|
||||
|
||||
module.exports = async (guild) => {
|
||||
let queue = useQueue(guild.id)
|
||||
let embed = new EmbedBuilder().setColor('#ffc370')
|
||||
if (!queue) {
|
||||
embed.setTitle('Aucune session d\'écoute en cours !')
|
||||
return ({ embed, components: null })
|
||||
}
|
||||
let track = queue.currentTrack
|
||||
if (!track) {
|
||||
embed.setTitle('Aucune musique en cours de lecture !')
|
||||
return ({ embed, components: null })
|
||||
}
|
||||
embed.setTitle(track.title)
|
||||
.setAuthor({ name: track.author })
|
||||
.setURL(track.url)
|
||||
.setImage(track.thumbnail)
|
||||
.addFields(
|
||||
{ name: 'Durée', value: track.duration, inline: true },
|
||||
{ name: 'Source', value: track.source === 'youtube' ? 'Youtube' : track.source === 'spotify' ? 'Spotify' : 'Inconnu', inline: true },
|
||||
{ name: 'Volume', value: `${queue.node.volume}%`, inline: true },
|
||||
{ name: queue.node.isPaused() ? 'Progression (en pause)' : 'Progression', value: queue.node.createProgressBar() },
|
||||
{ name: 'Loop', value: queue.repeatMode ? queue.repeatMode === 2 ? "File d'Attente" : "Titre" : "Off", inline: true },
|
||||
{ name: 'Autoplay', value: queue.autoplay ? "On" : "Off", inline: true }
|
||||
)
|
||||
.setDescription(`**Musique suivante :** ${queue.tracks[0] ? queue.tracks[0].title : 'Aucune'}`)
|
||||
.setFooter({ text: `Demandé par ${track.requestedBy.tag}` })
|
||||
|
||||
let components = [
|
||||
new ActionRowBuilder().addComponents(
|
||||
new ButtonBuilder()
|
||||
.setLabel(queue.node.isPaused() ? '▶️' : '⏸️')
|
||||
.setStyle(2)
|
||||
.setCustomId(queue.node.isPaused() ? 'resume' : 'pause'),
|
||||
new ButtonBuilder()
|
||||
.setLabel('⏹️')
|
||||
.setStyle(2)
|
||||
.setCustomId('stop'),
|
||||
new ButtonBuilder()
|
||||
.setLabel('⏭️')
|
||||
.setStyle(2)
|
||||
.setCustomId('skip')
|
||||
.setDisabled(queue.tracks.length !== 0),
|
||||
new ButtonBuilder()
|
||||
.setLabel('🔉')
|
||||
.setStyle(2)
|
||||
.setCustomId('volume_down')
|
||||
.setDisabled(queue.node.volume === 0),
|
||||
new ButtonBuilder()
|
||||
.setLabel('🔊')
|
||||
.setStyle(2)
|
||||
.setCustomId('volume_up')
|
||||
.setDisabled(queue.node.volume === 100)
|
||||
),
|
||||
new ActionRowBuilder().addComponents(
|
||||
new ButtonBuilder()
|
||||
.setLabel('🔀')
|
||||
.setStyle(2)
|
||||
.setCustomId('shuffle'),
|
||||
new ButtonBuilder()
|
||||
.setLabel('🔁')
|
||||
.setStyle(2)
|
||||
.setCustomId('loop'),
|
||||
new ButtonBuilder()
|
||||
.setLabel('⏮️')
|
||||
.setStyle(2)
|
||||
.setCustomId('previous')
|
||||
.setDisabled(queue.previousTracks ? !queue.previousTracks[0] : true)
|
||||
)
|
||||
]
|
||||
return ({ embed, components })
|
||||
}
|
||||
7
utils/getUptime.js
Normal file
7
utils/getUptime.js
Normal file
@@ -0,0 +1,7 @@
|
||||
module.exports = function (uptime) {
|
||||
let days = Math.floor(uptime / 86400000)
|
||||
let hours = Math.floor(uptime / 3600000) % 24
|
||||
let minutes = Math.floor(uptime / 60000) % 60
|
||||
let seconds = Math.floor(uptime / 1000) % 60
|
||||
return `${days}J, ${hours}H, ${minutes}M et ${seconds}S`
|
||||
}
|
||||
10
utils/initSequelize.js
Normal file
10
utils/initSequelize.js
Normal file
@@ -0,0 +1,10 @@
|
||||
const Sequelize = require('sequelize')
|
||||
require('dotenv').config()
|
||||
|
||||
module.exports = new Sequelize(process.env.SEQUELIZE_DATABASE, process.env.SEQUELIZE_USER, process.env.SEQUELIZE_PASSWORD, {
|
||||
host: process.env.SEQUELIZE_HOST,
|
||||
dialect: process.env.SEQUELIZE_DIALECT,
|
||||
dialectOptions: process.env.SEQUELIZE_DIALECTOPTIONS,
|
||||
logging: process.env.SEQUELIZE_LOGGING === 'true',
|
||||
storage: process.env.SEQUELIZE_STORAGE
|
||||
})
|
||||
1
utils/playerButtons.js
Normal file
1
utils/playerButtons.js
Normal file
@@ -0,0 +1 @@
|
||||
module.exports = ['loop', 'pause', 'previous', 'resume', 'shuffle', 'skip', 'stop', 'volume_down', 'volume_up']
|
||||
Reference in New Issue
Block a user