Pause resume loop

This commit is contained in:
Myx
2023-06-23 10:34:55 +02:00
committed by Azaaxin
parent d9408907dd
commit f09c13ac03
9 changed files with 197 additions and 59 deletions

View File

@@ -1,24 +1,42 @@
class MusicQueue {
constructor() {
this.queue = new Map();
constructor() {
this.queue = new Map();
this.looping = new Map();
}
addToQueue(guildId, song) {
if (!this.queue.has(guildId)) {
this.queue.set(guildId, []);
}
getQueue(guildId) {
if (!this.queue.has(guildId)) {
this.queue.set(guildId, []);
}
return this.queue.get(guildId);
this.queue.get(guildId).push(song);
}
removeFromQueue(guildId) {
if (!this.queue.has(guildId)) {
return;
}
addToQueue(guildId, song) {
const serverQueue = this.getQueue(guildId);
serverQueue.push(song);
}
removeFromQueue(guildId) {
const serverQueue = this.getQueue(guildId);
const serverQueue = this.queue.get(guildId);
if (this.looping.has(guildId) && this.looping.get(guildId)) {
serverQueue.push(serverQueue.shift());
} else {
serverQueue.shift();
}
}
module.exports = new MusicQueue();
getQueue(guildId) {
if (!this.queue.has(guildId)) {
return [];
}
return this.queue.get(guildId);
}
setLooping(guildId, looping) {
this.looping.set(guildId, looping);
}
}
module.exports = new MusicQueue();