diff options
Diffstat (limited to 'src/commands/voice/volume.js')
| -rw-r--r-- | src/commands/voice/volume.js | 45 |
1 files changed, 45 insertions, 0 deletions
diff --git a/src/commands/voice/volume.js b/src/commands/voice/volume.js new file mode 100644 index 0000000..96a6de3 --- /dev/null +++ b/src/commands/voice/volume.js @@ -0,0 +1,45 @@ +const { Command } = require('discord.js-commando'); +const emoji = require('emoji-random'); + +module.exports = class VolumeVoice extends Command { + constructor(client) { + super(client, { + name: 'volume', + aliases: ['vol'], + group: 'voice', + memberName: 'volume', + description: 'Changes volume of any currentaly playing audio.', + guildOnly: true, + args: [ + { + key: 'wantedVol', + prompt: 'What would volume you like? (1 to 200)', + type: 'integer', + validate: wantedVol => 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'], + }); + } + run(msg, { wantedVol }) { + var voiceChannel = msg.member.voice.channel; + if (!voiceChannel) return msg.reply('Please join a 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()); + } + + const volume = wantedVol / 100; + msg.guild.musicData.volume = volume; + msg.guild.musicData.songDispatcher.setVolume(volume); + msg.reply(`Volume is now: **${wantedVol}%**. ` + emoji.random()); + } +};
\ No newline at end of file |