Version 3.0 sortie, fusion avec JujulBot
This commit is contained in:
		
							
								
								
									
										25
									
								
								src/commands/player/panel.ts
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										25
									
								
								src/commands/player/panel.ts
									
									
									
									
									
										Executable file
									
								
							| @@ -0,0 +1,25 @@ | ||||
| import { SlashCommandBuilder, ChatInputCommandInteraction } from 'discord.js' | ||||
| import { playerGenerate } from '../../utils/player' | ||||
| import getUptime from '../../utils/getUptime' | ||||
| import { useQueue } from 'discord-player' | ||||
|  | ||||
| export default { | ||||
| 	data: new SlashCommandBuilder() | ||||
| 		.setName('panel') | ||||
| 		.setDescription('Générer les infos de la lecture en cours.'), | ||||
| 	async execute(interaction: ChatInputCommandInteraction) { | ||||
| 		let queue = useQueue(interaction.guild?.id ?? '') | ||||
| 		if (!queue) return interaction.followUp({ content: 'Aucune file d\'attente en cours, recherche une musique plutôt !' }) | ||||
| 		 | ||||
| 		let guild = interaction.guild | ||||
| 		if (!guild) return await interaction.reply({ content: 'Cette commande n\'est pas disponible en message privé.', ephemeral: true }) | ||||
|  | ||||
| 		let client = guild.client | ||||
| 		 | ||||
| 		let { embed, components } = await playerGenerate(guild) | ||||
| 		if (components && embed.data.footer) embed.setFooter({ text: `Uptime: ${getUptime(client.uptime)} \n ${embed.data.footer.text}` }) | ||||
| 		else embed.setFooter({ text: `Uptime: ${getUptime(client.uptime)}` }) | ||||
|  | ||||
| 		return interaction.reply({ embeds: [embed] }) | ||||
| 	} | ||||
| } | ||||
| @@ -1,9 +1,8 @@ | ||||
| import { SlashCommandBuilder, ChatInputCommandInteraction, AutocompleteInteraction, GuildMember } from 'discord.js' | ||||
| import { useMainPlayer, useQueue, QueryType } from 'discord-player' | ||||
|  | ||||
| import dbGuild from '../../schemas/guild' | ||||
|  | ||||
| export interface TrackSearchResult { name: string, value: string } | ||||
| interface TrackSearchResult { name: string, value: string } | ||||
|  | ||||
| export default { | ||||
| 	data: new SlashCommandBuilder() | ||||
|   | ||||
							
								
								
									
										19
									
								
								src/commands/player/queue.ts
									
									
									
									
									
										Executable file
									
								
							
							
						
						
									
										19
									
								
								src/commands/player/queue.ts
									
									
									
									
									
										Executable file
									
								
							| @@ -0,0 +1,19 @@ | ||||
| import { SlashCommandBuilder, ChatInputCommandInteraction } from 'discord.js' | ||||
| import { useQueue } from 'discord-player' | ||||
|  | ||||
| export default { | ||||
| 	data: new SlashCommandBuilder() | ||||
| 		.setName('queue') | ||||
| 		.setDescription("Récupérer la file d'attente."), | ||||
| 	async execute(interaction: ChatInputCommandInteraction) { | ||||
| 		let queue = useQueue(interaction.guild?.id ?? '') | ||||
| 		if (!queue) return interaction.reply({ content: 'Aucune file d\'attente en cours, recherche une musique plutôt !' }) | ||||
| 		if (!queue.currentTrack) return interaction.reply({ content: 'Aucune musique en cours de lecture.' }) | ||||
| 	 | ||||
| 		let track = `[${queue.currentTrack.title}](${queue.currentTrack.url})` | ||||
| 		let tracks = queue.tracks.map((track, index) => { return `${index + 1}. [${track.title}](${track.url})` }) | ||||
| 		if (tracks.length === 0) return interaction.reply({ content: `Lecture en cours : ${track} \nAucune musique dans la file d'attente.` }) | ||||
|  | ||||
| 		return interaction.reply({ content: `Lecture en cours : ${track} \nFile d'attente actuelle : \n${tracks.join('\n')}` }) | ||||
| 	} | ||||
| } | ||||
		Reference in New Issue
	
	Block a user