diff options
Diffstat (limited to 'src/commands/definitions.js')
| -rw-r--r-- | src/commands/definitions.js | 89 |
1 files changed, 89 insertions, 0 deletions
diff --git a/src/commands/definitions.js b/src/commands/definitions.js new file mode 100644 index 0000000..626fcc6 --- /dev/null +++ b/src/commands/definitions.js @@ -0,0 +1,89 @@ +const { SlashCommandBuilder } = require('discord.js'); + +module.exports = [ + new SlashCommandBuilder() + .setName('play') + .setDescription('Play music from YouTube') + .addStringOption(option => + option.setName('query') + .setDescription('YouTube URL or search query') + .setRequired(true) + ), + new SlashCommandBuilder() + .setName('pause') + .setDescription('Pause the current song'), + new SlashCommandBuilder() + .setName('resume') + .setDescription('Resume the paused song'), + new SlashCommandBuilder() + .setName('skip') + .setDescription('Skip the current song'), + new SlashCommandBuilder() + .setName('clear') + .setDescription('Clear the entire queue'), + new SlashCommandBuilder() + .setName('loop') + .setDescription('Toggle loop mode') + .addStringOption(option => + option.setName('mode') + .setDescription('Loop mode') + .setRequired(false) + .addChoices( + { name: 'Off', value: 'off' }, + { name: 'Song', value: 'song' }, + { name: 'Queue', value: 'queue' } + ) + ), + new SlashCommandBuilder() + .setName('quit') + .setDescription('Leave the voice channel'), + new SlashCommandBuilder() + .setName('queue') + .setDescription('Show the music queue'), + new SlashCommandBuilder() + .setName('volume') + .setDescription('Adjust volume') + .addSubcommand(subcommand => + subcommand + .setName('set') + .setDescription('Set volume to a specific value') + .addIntegerOption(option => + option.setName('value') + .setDescription('Volume (0-100)') + .setRequired(true) + .setMinValue(0) + .setMaxValue(100) + ) + ) + .addSubcommand(subcommand => + subcommand + .setName('inc') + .setDescription('Increase volume') + .addIntegerOption(option => + option.setName('amount') + .setDescription('Amount to increase (default: 10)') + .setMinValue(1) + .setMaxValue(100) + ) + ) + .addSubcommand(subcommand => + subcommand + .setName('dec') + .setDescription('Decrease volume') + .addIntegerOption(option => + option.setName('amount') + .setDescription('Amount to decrease (default: 10)') + .setMinValue(1) + .setMaxValue(100) + ) + ), + new SlashCommandBuilder() + .setName('seek') + .setDescription('Skip forward or backward in the current song') + .addIntegerOption(option => + option.setName('seconds') + .setDescription('Seconds to skip (use negative to go back)') + .setRequired(true) + ), + +]; |
