Add back method

Closes #133
This commit is contained in:
Androz2091 2020-12-27 00:10:29 +01:00
parent 79f4d5daac
commit 4390ff3e92
3 changed files with 24 additions and 0 deletions

View file

@ -478,6 +478,23 @@ class Player extends EventEmitter {
return queue
}
/**
* Play back the previous song.
* @param {Discord.Message} message
* @returns {Queue}
*/
back (message) {
// Get guild queue
const queue = this.queues.get(message.guild.id)
if (!queue) return this.emit('error', 'NotPlaying', message)
queue.tracks.splice(1, 0, queue.previousTracks.shift())
// End the dispatcher
queue.voiceConnection.dispatcher.end()
queue.lastSkipped = true
// Return the queue
return queue
}
/**
* Get the played song in the server.
* @param {Discord.Message} message

View file

@ -35,6 +35,11 @@ class Queue extends EventEmitter {
* @type {Track[]}
*/
this.tracks = []
/**
* The previous tracks in this queue.
* @type {Track[]}
*/
this.previousTracks = []
/**
* Whether the stream is currently stopped.
* @type {boolean}

2
typings/index.d.ts vendored
View file

@ -33,6 +33,7 @@ declare module 'discord-player' {
public getQueue(message: Message): Queue;
public clearQueue(message: Message): void;
public skip(message: Message): void;
public back(message: Message): void;
public nowPlaying(message: Message): Track;
public setRepeatMode(message: Message): boolean;
public setLoopMode(message: Message, enabled: boolean): boolean
@ -90,6 +91,7 @@ declare module 'discord-player' {
public voiceConnection?: VoiceConnection;
public stream: Stream;
public tracks: Track[];
public previousTracks: Track[];
public stopped: boolean;
public lastSkipped: boolean;
public volume: number;