1
0
mirror of https://github.com/musix-org/musix-oss synced 2024-12-22 21:13:18 +00:00
musix-oss/commands/loop.js

28 lines
1.4 KiB
JavaScript
Raw Normal View History

2024-02-09 09:53:30 +00:00
const { PermissionFlagsBits } = require('discord.js');
2019-10-10 13:43:04 +00:00
module.exports = {
name: 'loop',
description: 'loop command.',
alias: 'loop',
2019-10-10 13:43:04 +00:00
cooldown: 10,
2024-02-09 09:53:30 +00:00
async execute(message, args, client, prefix) {
2019-10-10 13:43:04 +00:00
const serverQueue = client.queue.get(message.guild.id);
const permissions = message.channel.permissionsFor(message.author);
2024-02-09 09:53:30 +00:00
const voiceChannel = message.member.voice.channel;
if (!serverQueue) return message.channel.send(':x: There is nothing playing.');
2024-02-09 09:53:30 +00:00
if (voiceChannel !== serverQueue.voiceChannel) return message.channel.send(':x: I\'m sorry but you need to be in the same voice channel as Musix to loop the queue!');
if (client.global.db.guilds[message.guild.id].permissions === true) {
if (client.global.db.guilds[message.guild.id].dj) {
if (!message.member.roles.cache.has(client.global.db.guilds[message.guild.id].djrole)) return message.channel.send(':x: You need the `DJ` role to loop the queue!');
} else if (!permissions.has(PermissionFlagsBits.ManageChannels)) return message.channel.send(':x: You need the `MANAGE_MESSAGES` permission to loop the queue!');
}
if (!serverQueue.looping) {
serverQueue.looping = true;
message.channel.send(':repeat: Looping the queue now!');
} else {
serverQueue.looping = false;
message.channel.send(':repeat: No longer looping the queue!');
}
2019-10-10 13:43:04 +00:00
}
};