summaryrefslogtreecommitdiff
path: root/commands
diff options
context:
space:
mode:
Diffstat (limited to 'commands')
-rw-r--r--commands/leave.js43
-rw-r--r--commands/play.js122
-rw-r--r--commands/queue.js49
-rw-r--r--commands/skip.js62
-rw-r--r--commands/suggestfeature.js2
5 files changed, 1 insertions, 277 deletions
diff --git a/commands/leave.js b/commands/leave.js
deleted file mode 100644
index a2a48d8..0000000
--- a/commands/leave.js
+++ /dev/null
@@ -1,43 +0,0 @@
-/****************************************
- *
- * Leave: Command for AleeBot
- * Copyright (C) 2018 AleeCorp & (your name here)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- *
- * *************************************/
-
-module.exports.run = async (client, message, args) => {
- if (!message.member.voiceChannel) return message.reply('You need a voice channel to perform this action.');
-
- if (!message.guild.me.voiceChannel) return message.reply('Error: The bot isn\'t connected to a voice channel.')
-
- if (message.guild.me.voiceChannelID !== message.member.voiceChannelID) return message.reply('Error: You aren\'t connected in the same voice channel as the bot...');
-
- message.guild.me.voiceChannel.leave();
-
- message.channel.send("Leaving channel...")
-
- };
-
- exports.conf = {
- aliases: [],
- guildOnly: false,
- };
- exports.help = {
- name: 'leave',
- description: 'Leaves voice chat.',
- usage: 'leave',
- category: '- Music Commands',
- }; \ No newline at end of file
diff --git a/commands/play.js b/commands/play.js
deleted file mode 100644
index 06ca7f1..0000000
--- a/commands/play.js
+++ /dev/null
@@ -1,122 +0,0 @@
-/****************************************
- *
- * Play: Command for AleeBot
- * Copyright (C) 2018 AleeCorp & (your name here)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- *
- * *************************************/
-
-module.exports.run = async (client, message, args, ops) => {
- const ytdl = require('ytdl-core');
-
- if (!message.member.voiceChannel) return message.reply('Please connect to a voice channel...');
-
- if (!args[0]) return message.reply('Please input a url.');
-
- let vaildate = await ytdl.validateURL(args[0]);
-
- if (!vaildate) return message.reply('Please input a **valid** url.');
-
- let info = await ytdl.getInfo(args[0]);
-
- let data = ops.active.get(message.guild.id) || {};
-
- if (!data.connection) data.connection = await message.member.voiceChannel.join();
- if (!data.queue) data.queue = [];
- data.guildID = message.guild.id;
-
- data.queue.push({
- songTitle: info.title,
- requester: message.author.tag,
- url: args[0],
- announceChannel: message.channel.id
- });
- if (!data.dispatcher) play(client, ops, data);
- else {
- const { RichEmbed } = require('discord.js');
- const embed = new RichEmbed()
- .setTitle('This music has been added to the queue!')
- .setAuthor(info.title, client.user.avatarURL)
- .setColor(0x00afff)
- .setTimestamp()
- .addField('Title', info.title)
- .addField('Requested by:', message.author.tag)
- .setFooter('AleeBot Music Player');
-
- message.channel.send({embed})
- }
-
- ops.active.set(message.guild.id, data);
-
- };
-
- async function play(client, ops, data) {
- const ytdl = require('ytdl-core');
- const { RichEmbed } = require('discord.js');
- const embed = new RichEmbed()
- .setTitle('Now playing!')
- .setAuthor(data.queue[0].songTitle, client.user.avatarURL)
- .setColor(0x00afff)
- .setTimestamp()
- .addField('Title', data.queue[0].songTitle)
- .addField('Requested by:', data.queue[0].requester)
- // .addField('Link', info.url)
- // .addField('Duration', time)
- .setFooter('AleeBot Music Player');
-
- client.channels.get(data.queue[0].announceChannel).send({embed})
-
- data.dispatcher = await data.connection.playStream(ytdl(data.queue[0].url, { filter: 'audioonly'}));
- data.dispatcher.guildID = data.guildID;
-
- data.dispatcher.once('finish', function () {
- finish(client, ops, this);
- });
-
- };
-
- function finish(client, ops, dispatcher) {
-
- let fetched = ops.active.get(dispatcher.guildID);
-
- fetched.queue.shift();
-
- if (fetched.queue.length > 0) {
-
- ops.active.set(dispatcher.guildID, fetched);
-
- play(client, ops, fetched);
-
- } else {
- ops.active.delete(dispatcher.guildID);
-
- let vc = client.guild.get(dispatcher.guildID).me.voiceChannel;
-
- if (vc) vc.leave();
-
- }
-
- }
-
- exports.conf = {
- aliases: [],
- guildOnly: false,
- };
- exports.help = {
- name: 'play',
- description: 'Plays music.',
- usage: 'play [url]',
- category: '- Music Commands',
- }; \ No newline at end of file
diff --git a/commands/queue.js b/commands/queue.js
deleted file mode 100644
index 67faf91..0000000
--- a/commands/queue.js
+++ /dev/null
@@ -1,49 +0,0 @@
-/****************************************
- *
- * Queue: Command for AleeBot
- * Copyright (C) 2018 AleeCorp & (your name here)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- *
- * *************************************/
-
-module.exports.run = async (client, message, args, ops) => {
-
- let fetched = ops.active.get(message.guild.id);
-
- if (!fetched) return message.reply('Currently, there isn\'t any music playing in this guild.');
-
- let queue = fetched.queue
- let nowPlaying = queue[0];
-
- let resp = `__**Now Playing**__\n**${nowPlaying.songTitle}** -- **Requested By:** *${nowPlaying.requester}*\n\n__**Queue**__\n`;
-
- for (var i = 1; i < queue.length; i++) {
- resp += `${i}. **${queue[i].songTitle}** -- **Requested By:** *${queue[i].requester}*\n`
- }
-
- message.channel.send(resp);
-
- };
-
- exports.conf = {
- aliases: [],
- guildOnly: false,
- };
- exports.help = {
- name: 'queue',
- description: 'Checks what music is in queue.',
- usage: 'queue',
- category: '- Music Commands',
- }; \ No newline at end of file
diff --git a/commands/skip.js b/commands/skip.js
deleted file mode 100644
index c1402cc..0000000
--- a/commands/skip.js
+++ /dev/null
@@ -1,62 +0,0 @@
-/****************************************
- *
- * Skip: Command for AleeBot
- * Copyright (C) 2018 AleeCorp & (your name here)
- *
- * This program is free software: you can redistribute it and/or modify
- * it under the terms of the GNU General Public License as published by
- * the Free Software Foundation, either version 3 of the License, or
- * (at your option) any later version.
- *
- * This program is distributed in the hope that it will be useful,
- * but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
- * GNU General Public License for more details.
- *
- * You should have received a copy of the GNU General Public License
- * along with this program. If not, see <http://www.gnu.org/licenses/>.
- *
- * *************************************/
-
-module.exports.run = async (client, message, args, ops) => {
-
- let fetched = ops.active.get(message.guild.id);
-
- if (!fetched) return message.reply('Currently, there isn\'t any music playing in this guild.');
-
- if (message.member.voiceChannel !== message.guild.me.voiceChannel) return message.reply('Sorry, you are currently not in the same channel as the bot.')
-
- let userCount = message.member.voiceChannel.members.size;
-
- let required = Math.ceil(userCount/2);
-
- if (!fetched.queue[0].voteSkips) fetched.queue[0].voteSkips = [];
-
- if (fetched.queue[0].voteSkips.includes(message.member.id)) return message.reply(`Sorry, you have already voted to skip! ${fetched.queue[0].voteSkips.length}/${required} required.`)
-
- fetched.queue[0].voteSkips.push(message.member.id);
-
- ops.active.set(message.guild.id, fetched);
-
- if (fetched.queue[0].voteSkips.length >= required) {
-
- message.channel.send('Successfully skipped song!');
-
- return fetched.dispatcher.emit('finish');
-
- }
-
- message.channel.send(`Successfully voted to skip! ${fetched.queue[0].voteSkips.length}/${required} required.`)
-
- };
-
- exports.conf = {
- aliases: [],
- guildOnly: false,
- };
- exports.help = {
- name: 'skip',
- description: 'Skips a music.',
- usage: 'skip',
- category: '- Music Commands',
- }; \ No newline at end of file
diff --git a/commands/suggestfeature.js b/commands/suggestfeature.js
index 04db033..dbafc98 100644
--- a/commands/suggestfeature.js
+++ b/commands/suggestfeature.js
@@ -19,7 +19,7 @@
* *************************************/
module.exports.run = async (client, message, args) => {
const { RichEmbed } = require('discord.js');
- client.channels.find('id', '435234655579537418').send(
+ client.channels.find('id', '427495678390960148').send(
new RichEmbed()
.setColor ('#1fd619')
.setTitle('AleeBot Feature Suggestion')