From f4776cce45fba4380d6652fef5b9a6fbf78f8e16 Mon Sep 17 00:00:00 2001 From: 8cy <50817549+8cy@users.noreply.github.com> Date: Wed, 15 Apr 2020 02:58:49 -0700 Subject: The Uwufication --- src/commands/voice/skipto.js | 43 +++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 43 insertions(+) create mode 100644 src/commands/voice/skipto.js (limited to 'src/commands/voice/skipto.js') diff --git a/src/commands/voice/skipto.js b/src/commands/voice/skipto.js new file mode 100644 index 0000000..f43d56c --- /dev/null +++ b/src/commands/voice/skipto.js @@ -0,0 +1,43 @@ +const { Command } = require('discord.js-commando'); +const emoji = require('emoji-random'); + +module.exports = class SkipToVoice extends Command { + constructor(client) { + super(client, { + name: 'skipto', + group: 'voice', + memberName: 'skipto', + description: 'Skip to a certain song in the current queue.', + guildOnly: true, + args: [{ + key: 'songNumber', + prompt: 'What song would you like to skip to in the current queue?', + type: 'integer' + }], + examples: ['uwu!skipto 5'], + clientPermissions: ['SPEAK', 'CONNECT', 'SEND_MESSAGES', 'READ_MESSAGE_HISTORY'], + userPermissions: ['SEND_MESSAGES', 'READ_MESSAGE_HISTORY'], + }); + } + run(msg, { songNumber }) { + if (songNumber < 1 && songNumber >= msg.guild.musicData.queue.length) { + return msg.reply('Please enter a valid song. ' + emoji.random()); + } + var voiceChannel = msg.member.voice.channel; + if (!voiceChannel) return msg.reply('Please join channel and try again. ' + emoji.random()); + + if ( + typeof msg.guild.musicData.songDispatcher == 'undefined' || + msg.guild.musicData.songDispatcher == null + ) { + return msg.reply('There isn\'t any audio playing right now. ' + emoji.random()); + } + + if (msg.guild.musicData.queue < 1) + return msg.reply('There aren\'t any songs in the current queue. ' + emoji.random()); + + msg.guild.musicData.queue.splice(0, songNumber - 1); + msg.guild.musicData.songDispatcher.end(); + return; + } +}; \ No newline at end of file -- cgit v1.2.3