import { SlashCommandBuilder, MessageFlags } from "discord.js" import type { ChatInputCommandInteraction } from "discord.js" import { useQueue } from "discord-player" import { t } from "@/utils/i18n" export const data = new SlashCommandBuilder() .setName("volume") .setDescription("Change the music volume") .setDescriptionLocalizations({ fr: "Modifie le volume de la musique" }) .addIntegerOption(option => option .setName("volume") .setDescription("The volume to set (%)") .setDescriptionLocalizations({ fr: "Le volume à mettre (%)" }) .setRequired(true) .setMinValue(0) .setMaxValue(100) ) export async function execute(interaction: ChatInputCommandInteraction) { const volume = interaction.options.getInteger("volume", true) const queue = useQueue(interaction.guild?.id ?? "") if (!queue) return interaction.followUp({ content: t(interaction.locale, "player.no_queue_search_instead"), flags: MessageFlags.Ephemeral}) queue.node.setVolume(volume) return interaction.reply(t(interaction.locale, "player.volume_changed", { volume: volume.toString() })) }