import { Command, CommandoMessage, CommandoClient } from 'discord.js-commando'; //@ts-ignore import emoji from 'emoji-random'; module.exports = class VolumeVoice extends Command { constructor(client: CommandoClient) { super(client, { name: 'volume', aliases: ['vol'], group: 'voice', memberName: 'volume', description: 'Changes volume of any currently playing audio.', guildOnly: true, args: [ { key: 'wantedVol', prompt: 'What would volume you like? (1 to 200)', type: 'integer', validate: (wantedVol: number) => wantedVol >= 1 && wantedVol <= 200 } ], examples: [ 'uwu!volume 20', 'uwu!vol 50' ], clientPermissions: ['SPEAK', 'CONNECT', 'SEND_MESSAGES', 'READ_MESSAGE_HISTORY'], userPermissions: ['SEND_MESSAGES', 'READ_MESSAGE_HISTORY'], throttling: { usages: 5, duration: 30 }, }); } run(msg: CommandoMessage, { wantedVol }: any) { var voiceChannel = msg.member.voice.channel; if (!voiceChannel) return msg.reply('Please join a channel and try again. ' + emoji.random()); //@ts-ignore if (typeof msg.guild.musicData.songDispatcher == 'undefined' || //@ts-ignore msg.guild.musicData.songDispatcher == null) { return msg.reply('There isn\'t any audio playing right now. ' + emoji.random()); } const volume = wantedVol / 100; //@ts-ignore msg.guild.musicData.volume = volume; //@ts-ignore msg.guild.musicData.songDispatcher.setVolume(volume); return msg.reply(`Volume is now: **${wantedVol}%**. ` + emoji.random()); } };