aboutsummaryrefslogtreecommitdiff
path: root/commands
diff options
context:
space:
mode:
authorAndrew Lee <alee14498@protonmail.com>2022-07-05 21:03:55 -0400
committerAndrew Lee <alee14498@protonmail.com>2022-07-05 21:03:55 -0400
commit7630b6ca8445cc8f6fc5dfb5284ab23b7c26be46 (patch)
tree165153666dd6b6c6ba9a4965c9255a7a4d36d6ce /commands
parentce752e213a0b3515c48b2fa04407a220eed2d788 (diff)
downloadDLAP-7630b6ca8445cc8f6fc5dfb5284ab23b7c26be46.tar.gz
DLAP-7630b6ca8445cc8f6fc5dfb5284ab23b7c26be46.tar.bz2
DLAP-7630b6ca8445cc8f6fc5dfb5284ab23b7c26be46.zip
Removed control command; Added functionality to leave, skip, status
Diffstat (limited to 'commands')
-rw-r--r--commands/control.js36
-rw-r--r--commands/leave.js6
-rw-r--r--commands/skip.js7
-rw-r--r--commands/status.js13
4 files changed, 19 insertions, 43 deletions
diff --git a/commands/control.js b/commands/control.js
deleted file mode 100644
index 435c102..0000000
--- a/commands/control.js
+++ /dev/null
@@ -1,36 +0,0 @@
-/**************************************************************************
- *
- * DLAP Bot: A Discord bot that plays local audio tracks.
- * (C) Copyright 2022
- * Programmed by Andrew Lee
- *
- * 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 <https://www.gnu.org/licenses/>.
- *
- ***************************************************************************/
-
-import { SlashCommandBuilder } from '@discordjs/builders'
-import { controlPanel } from '../AudioBackend.js'
-import config from '../config.json' assert {type: 'json'}
-
-let runOnce = false
-
-export default {
- data: new SlashCommandBuilder()
- .setName('control')
- .setDescription('Controlling the music'),
- async execute(interaction, bot) {
- if (![config.botOwner].includes(interaction.user.id)) return await interaction.reply({ content: "You do not have permissions to execute this command.", ephemeral: true });
- await controlPanel(interaction, bot);
- },
-}; \ No newline at end of file
diff --git a/commands/leave.js b/commands/leave.js
index e1fa67d..5024488 100644
--- a/commands/leave.js
+++ b/commands/leave.js
@@ -20,13 +20,15 @@
***************************************************************************/
import { SlashCommandBuilder } from '@discordjs/builders'
+import { destroyAudio } from "../AudioBackend.js";
export default {
data: new SlashCommandBuilder()
.setName('leave')
.setDescription('Leaves the voice chat'),
async execute(interaction) {
-
-
+ console.log('Leaving voice channel...');
+ await destroyAudio(interaction);
+ return await interaction.reply({content:'Leaving voice channel', ephemeral:true});
},
}; \ No newline at end of file
diff --git a/commands/skip.js b/commands/skip.js
index 11a0c83..4860209 100644
--- a/commands/skip.js
+++ b/commands/skip.js
@@ -20,12 +20,15 @@
***************************************************************************/
import { SlashCommandBuilder } from '@discordjs/builders'
+import { audio, player, searchAudio } from "../AudioBackend.js";
export default {
data: new SlashCommandBuilder()
.setName('skip')
.setDescription('Skips the track'),
- async execute(interaction) {
-
+ async execute(interaction, bot) {
+ player.stop();
+ await searchAudio(bot, interaction);
+ return await interaction.reply({content:`Skipping ${audio}`, ephemeral:true});
},
}; \ No newline at end of file
diff --git a/commands/status.js b/commands/status.js
index f36f994..804b046 100644
--- a/commands/status.js
+++ b/commands/status.js
@@ -20,13 +20,20 @@
***************************************************************************/
import { SlashCommandBuilder } from '@discordjs/builders'
-import { readdirSync, readdir } from 'fs'
+import { MessageEmbed } from "discord.js";
+import { audio, playerState } from "../AudioBackend.js";
export default {
data: new SlashCommandBuilder()
.setName('status')
.setDescription('Checks what audio file is playing currently'),
- async execute(interaction) {
-
+ async execute(interaction, bot) {
+ let controlEmbed = new MessageEmbed()
+ .setAuthor({name: `${bot.user.username} Status`, iconURL: bot.user.avatarURL()})
+ .addField('State', playerState)
+ .addField('Currently Playing', audio)
+ //.addField('Next Music', '(a possible feature when queue system is implemented?)')
+ .setColor('#0066ff')
+ interaction.reply({embeds:[controlEmbed], ephemeral:true})
},
}; \ No newline at end of file