mirror of
https://github.com/BluemediaDev/muse.git
synced 2025-04-18 20:43:55 +02:00
Refactor unskip command as slash command
This commit is contained in:
parent
1890f264ac
commit
29c32ce65e
1 changed files with 21 additions and 1 deletions
|
@ -1,12 +1,17 @@
|
||||||
import {Message} from 'discord.js';
|
import {CommandInteraction, Message} from 'discord.js';
|
||||||
import {TYPES} from '../types.js';
|
import {TYPES} from '../types.js';
|
||||||
import {inject, injectable} from 'inversify';
|
import {inject, injectable} from 'inversify';
|
||||||
import PlayerManager from '../managers/player.js';
|
import PlayerManager from '../managers/player.js';
|
||||||
import errorMsg from '../utils/error-msg.js';
|
import errorMsg from '../utils/error-msg.js';
|
||||||
import Command from '.';
|
import Command from '.';
|
||||||
|
import {SlashCommandBuilder} from '@discordjs/builders';
|
||||||
|
|
||||||
@injectable()
|
@injectable()
|
||||||
export default class implements Command {
|
export default class implements Command {
|
||||||
|
public readonly slashCommand = new SlashCommandBuilder()
|
||||||
|
.setName('unskip')
|
||||||
|
.setDescription('goes back in the queue by one song');
|
||||||
|
|
||||||
public name = 'unskip';
|
public name = 'unskip';
|
||||||
public aliases = ['back'];
|
public aliases = ['back'];
|
||||||
public examples = [
|
public examples = [
|
||||||
|
@ -21,6 +26,21 @@ export default class implements Command {
|
||||||
this.playerManager = playerManager;
|
this.playerManager = playerManager;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public async executeFromInteraction(interaction: CommandInteraction): Promise<void> {
|
||||||
|
const player = this.playerManager.get(interaction.guild!.id);
|
||||||
|
|
||||||
|
try {
|
||||||
|
await player.back();
|
||||||
|
|
||||||
|
await interaction.reply('back \'er up\'');
|
||||||
|
} catch (_: unknown) {
|
||||||
|
await interaction.reply({
|
||||||
|
content: errorMsg('no song to go back to'),
|
||||||
|
ephemeral: true,
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
public async execute(msg: Message, _: string []): Promise<void> {
|
public async execute(msg: Message, _: string []): Promise<void> {
|
||||||
const player = this.playerManager.get(msg.guild!.id);
|
const player = this.playerManager.get(msg.guild!.id);
|
||||||
|
|
||||||
|
|
Loading…
Add table
Reference in a new issue