diff --git a/.github/FUNDING.yml b/.github/FUNDING.yml new file mode 100644 index 00000000..5e36a149 --- /dev/null +++ b/.github/FUNDING.yml @@ -0,0 +1,2 @@ +github: [Adivise] +ko_fi: nanotect \ No newline at end of file diff --git a/commands/filters/3d.js b/commands/filters/3d.js index d9584df7..2c9d530b 100644 --- a/commands/filters/3d.js +++ b/commands/filters/3d.js @@ -1,4 +1,4 @@ -const { MessageEmbed } = require('discord.js'); +const { EmbedBuilder } = require('discord.js'); const delay = require('delay'); module.exports = { @@ -15,11 +15,11 @@ module.exports = { const queue = client.distube.getQueue(message); if (!queue) msg.edit(`There is nothing in the queue right now!`) const { channel } = message.member.voice; - if (!channel || message.member.voice.channel !== message.guild.me.voice.channel) return msg.edit("You need to be in a same/voice channel.") + if (!channel || message.member.voice.channel !== message.guild.members.me.voice.channel) return msg.edit("You need to be in a same/voice channel.") - client.distube.setFilter(message, "3d") + queue.filters.add("3d"); - const embed = new MessageEmbed() + const embed = new EmbedBuilder() .setAuthor({ text: 'Turned on: 3d', iconURL: 'https://cdn.discordapp.com/emojis/758423098885275748.gif'}) .setColor('#000001'); diff --git a/commands/filters/bassboost.js b/commands/filters/bassboost.js index f8c4d11f..f108cc03 100644 --- a/commands/filters/bassboost.js +++ b/commands/filters/bassboost.js @@ -1,4 +1,4 @@ -const { MessageEmbed } = require('discord.js'); +const { EmbedBuilder } = require('discord.js'); const delay = require('delay'); module.exports = { @@ -15,11 +15,11 @@ module.exports = { const queue = client.distube.getQueue(message); if (!queue) msg.edit(`There is nothing in the queue right now!`) const { channel } = message.member.voice; - if (!channel || message.member.voice.channel !== message.guild.me.voice.channel) return msg.edit("You need to be in a same/voice channel.") + if (!channel || message.member.voice.channel !== message.guild.members.me.voice.channel) return msg.edit("You need to be in a same/voice channel.") - client.distube.setFilter(message, "bassboost") + queue.filters.add("bassboost") - const embed = new MessageEmbed() + const embed = new EmbedBuilder() .setAuthor({ name: 'Turned on: Bassboost', iconURL: 'https://cdn.discordapp.com/emojis/758423098885275748.gif'}) .setColor('#000001'); diff --git a/commands/filters/earrape.js b/commands/filters/earrape.js index 8786ca38..2f7508de 100644 --- a/commands/filters/earrape.js +++ b/commands/filters/earrape.js @@ -1,4 +1,4 @@ -const { MessageEmbed } = require('discord.js'); +const { EmbedBuilder } = require('discord.js'); module.exports = { config: { @@ -14,11 +14,11 @@ module.exports = { const queue = client.distube.getQueue(message); if (!queue) msg.edit(`There is nothing in the queue right now!`) const { channel } = message.member.voice; - if (!channel || message.member.voice.channel !== message.guild.me.voice.channel) return msg.edit("You need to be in a same/voice channel.") + if (!channel || message.member.voice.channel !== message.guild.members.me.voice.channel) return msg.edit("You need to be in a same/voice channel.") queue.setVolume(1000) - const embed = new MessageEmbed() + const embed = new EmbedBuilder() .setColor("#000001") .setDescription(`\`🔊\` | **Volume charge to:** \`Earrape\``); diff --git a/commands/filters/earwax.js b/commands/filters/earwax.js index a60f9134..0263799a 100644 --- a/commands/filters/earwax.js +++ b/commands/filters/earwax.js @@ -1,4 +1,4 @@ -const { MessageEmbed } = require('discord.js'); +const { EmbedBuilder } = require('discord.js'); const delay = require('delay'); module.exports = { @@ -15,11 +15,11 @@ module.exports = { const queue = client.distube.getQueue(message); if (!queue) msg.edit(`There is nothing in the queue right now!`) const { channel } = message.member.voice; - if (!channel || message.member.voice.channel !== message.guild.me.voice.channel) return msg.edit("You need to be in a same/voice channel.") + if (!channel || message.member.voice.channel !== message.guild.members.me.voice.channel) return msg.edit("You need to be in a same/voice channel.") - client.distube.setFilter(message, "earwax") + queue.filters.add("earwax") - const embed = new MessageEmbed() + const embed = new EmbedBuilder() .setAuthor({ name: 'Turned on: Earwax', iconURL: 'https://cdn.discordapp.com/emojis/758423098885275748.gif'}) .setColor('#000001'); diff --git a/commands/filters/echo.js b/commands/filters/echo.js index 44eefeb2..b7e4a5ae 100644 --- a/commands/filters/echo.js +++ b/commands/filters/echo.js @@ -1,4 +1,4 @@ -const { MessageEmbed } = require('discord.js'); +const { EmbedBuilder } = require('discord.js'); const delay = require('delay'); module.exports = { @@ -15,11 +15,11 @@ module.exports = { const queue = client.distube.getQueue(message); if (!queue) msg.edit(`There is nothing in the queue right now!`) const { channel } = message.member.voice; - if (!channel || message.member.voice.channel !== message.guild.me.voice.channel) return msg.edit("You need to be in a same/voice channel.") + if (!channel || message.member.voice.channel !== message.guild.members.me.voice.channel) return msg.edit("You need to be in a same/voice channel.") - client.distube.setFilter(message, "echo") + queue.filters.add("echo") - const embed = new MessageEmbed() + const embed = new EmbedBuilder() .setAuthor({ name: 'Turned on: Echo', iconURL: 'https://cdn.discordapp.com/emojis/758423098885275748.gif'}) .setColor('#000001'); diff --git a/commands/filters/filter.js b/commands/filters/filter.js index e24fd522..43fc5a15 100644 --- a/commands/filters/filter.js +++ b/commands/filters/filter.js @@ -1,4 +1,4 @@ -const { MessageEmbed } = require('discord.js'); +const { EmbedBuilder } = require('discord.js'); const delay = require('delay'); module.exports = { @@ -15,15 +15,19 @@ module.exports = { const queue = client.distube.getQueue(message); if (!queue) msg.edit(`There is nothing in the queue right now!`) const { channel } = message.member.voice; - if (!channel || message.member.voice.channel !== message.guild.me.voice.channel) return msg.edit("You need to be in a same/voice channel.") + if (!channel || message.member.voice.channel !== message.guild.members.me.voice.channel) return msg.edit("You need to be in a same/voice channel.") - if (args[0] === "off" && queue.filters?.length) queue.setFilter(false) - else if (Object.keys(client.distube.filters).includes(args[0])) queue.setFilter(args[0]) - else if (args[0]) msg.edit(`Invalid filter!`) + const filter = args[0]; - const embed = new MessageEmbed() + if (filter === "off" && queue.filters.size) queue.filters.clear(); + else if (Object.keys(client.distube.filters).includes(filter)) { + if (queue.filters.has(filter)) queue.filters.remove(filter) + else queue.filters.add(filter) + } else if (args[0]) msg.edit(`Invalid filter!`) + + const embed = new EmbedBuilder() .setAuthor({ name: `Currently Filter`, iconURL: `https://cdn.discordapp.com/emojis/741605543046807626.gif`}) - .setDescription(`\🎲 **Filter:** \`${queue.filters.join(", ") || "Normal"}\``) + .setDescription(`\🎲 **Filter:** \`${queue.filters.names.join(", ") || "Normal"}\``) .setFooter({ text: `🔩 **Example:** \`${client.prefix}filter 3d\``}) .setTimestamp() .setColor('#000001'); diff --git a/commands/filters/flanger.js b/commands/filters/flanger.js index 43a5fe54..93083e59 100644 --- a/commands/filters/flanger.js +++ b/commands/filters/flanger.js @@ -1,4 +1,4 @@ -const { MessageEmbed } = require('discord.js'); +const { EmbedBuilder } = require('discord.js'); const delay = require('delay'); module.exports = { @@ -15,11 +15,11 @@ module.exports = { const queue = client.distube.getQueue(message); if (!queue) msg.edit(`There is nothing in the queue right now!`) const { channel } = message.member.voice; - if (!channel || message.member.voice.channel !== message.guild.me.voice.channel) return msg.edit("You need to be in a same/voice channel.") + if (!channel || message.member.voice.channel !== message.guild.members.me.voice.channel) return msg.edit("You need to be in a same/voice channel.") - client.distube.setFilter(message, "flanger") + queue.filters.add("flanger") - const embed = new MessageEmbed() + const embed = new EmbedBuilder() .setAuthor({ name: 'Turned on: Flanger', iconURL: 'https://cdn.discordapp.com/emojis/758423098885275748.gif'}) .setColor('#000001'); diff --git a/commands/filters/gate.js b/commands/filters/gate.js index 6f688af9..f18343c2 100644 --- a/commands/filters/gate.js +++ b/commands/filters/gate.js @@ -1,4 +1,4 @@ -const { MessageEmbed } = require('discord.js'); +const { EmbedBuilder } = require('discord.js'); const delay = require('delay'); module.exports = { @@ -15,11 +15,11 @@ module.exports = { const queue = client.distube.getQueue(message); if (!queue) msg.edit(`There is nothing in the queue right now!`) const { channel } = message.member.voice; - if (!channel || message.member.voice.channel !== message.guild.me.voice.channel) return msg.edit("You need to be in a same/voice channel.") + if (!channel || message.member.voice.channel !== message.guild.members.me.voice.channel) return msg.edit("You need to be in a same/voice channel.") - client.distube.setFilter(message, "gate") + queue.filters.add("gate") - const embed = new MessageEmbed() + const embed = new EmbedBuilder() .setAuthor({ name:'Turned on: Gate', iconURL: 'https://cdn.discordapp.com/emojis/758423098885275748.gif'}) .setColor('#000001'); diff --git a/commands/filters/haas.js b/commands/filters/haas.js index c9d06c62..0a6a63cb 100644 --- a/commands/filters/haas.js +++ b/commands/filters/haas.js @@ -1,4 +1,4 @@ -const { MessageEmbed } = require('discord.js'); +const { EmbedBuilder } = require('discord.js'); const delay = require('delay'); module.exports = { @@ -15,11 +15,11 @@ module.exports = { const queue = client.distube.getQueue(message); if (!queue) msg.edit(`There is nothing in the queue right now!`) const { channel } = message.member.voice; - if (!channel || message.member.voice.channel !== message.guild.me.voice.channel) return msg.edit("You need to be in a same/voice channel.") + if (!channel || message.member.voice.channel !== message.guild.members.me.voice.channel) return msg.edit("You need to be in a same/voice channel.") - client.distube.setFilter(message, "haas") + queue.filters.add("haas") - const embed = new MessageEmbed() + const embed = new EmbedBuilder() .setAuthor({ name: 'Turned on: Haas', iconURL: 'https://cdn.discordapp.com/emojis/758423098885275748.gif'}) .setColor('#000001'); diff --git a/commands/filters/karaoke.js b/commands/filters/karaoke.js index d32ee5aa..43a4fb8a 100644 --- a/commands/filters/karaoke.js +++ b/commands/filters/karaoke.js @@ -1,4 +1,4 @@ -const { MessageEmbed } = require('discord.js'); +const { EmbedBuilder } = require('discord.js'); const delay = require('delay'); module.exports = { @@ -15,11 +15,11 @@ module.exports = { const queue = client.distube.getQueue(message); if (!queue) msg.edit(`There is nothing in the queue right now!`) const { channel } = message.member.voice; - if (!channel || message.member.voice.channel !== message.guild.me.voice.channel) return msg.edit("You need to be in a same/voice channel.") + if (!channel || message.member.voice.channel !== message.guild.members.me.voice.channel) return msg.edit("You need to be in a same/voice channel.") - client.distube.setFilter(message, "karaoke") + queue.filters.add("karaoke") - const embed = new MessageEmbed() + const embed = new EmbedBuilder() .setAuthor({ name: 'Turned on: Karaoke', iconURL: 'https://cdn.discordapp.com/emojis/758423098885275748.gif'}) .setColor('#000001'); diff --git a/commands/filters/mcompand.js b/commands/filters/mcompand.js index 6c87d396..89b6454d 100644 --- a/commands/filters/mcompand.js +++ b/commands/filters/mcompand.js @@ -1,4 +1,4 @@ -const { MessageEmbed } = require('discord.js'); +const { EmbedBuilder } = require('discord.js'); const delay = require('delay'); module.exports = { @@ -15,11 +15,11 @@ module.exports = { const queue = client.distube.getQueue(message); if (!queue) msg.edit(`There is nothing in the queue right now!`) const { channel } = message.member.voice; - if (!channel || message.member.voice.channel !== message.guild.me.voice.channel) return msg.edit("You need to be in a same/voice channel.") + if (!channel || message.member.voice.channel !== message.guild.members.me.voice.channel) return msg.edit("You need to be in a same/voice channel.") - client.distube.setFilter(message, "mcompand") + queue.filters.add("mcompand") - const embed = new MessageEmbed() + const embed = new EmbedBuilder() .setAuthor({ name: 'Turned on: Mcompand', iconURL: 'https://cdn.discordapp.com/emojis/758423098885275748.gif'}) .setColor('#000001'); diff --git a/commands/filters/nightcore.js b/commands/filters/nightcore.js index 8209b9dc..a168a291 100644 --- a/commands/filters/nightcore.js +++ b/commands/filters/nightcore.js @@ -1,4 +1,4 @@ -const { MessageEmbed } = require('discord.js'); +const { EmbedBuilder } = require('discord.js'); const delay = require('delay'); module.exports = { @@ -15,11 +15,11 @@ module.exports = { const queue = client.distube.getQueue(message); if (!queue) msg.edit(`There is nothing in the queue right now!`) const { channel } = message.member.voice; - if (!channel || message.member.voice.channel !== message.guild.me.voice.channel) return msg.edit("You need to be in a same/voice channel.") + if (!channel || message.member.voice.channel !== message.guild.members.me.voice.channel) return msg.edit("You need to be in a same/voice channel.") - client.distube.setFilter(message, "nightcore") + queue.filters.add("nightcore") - const embed = new MessageEmbed() + const embed = new EmbedBuilder() .setAuthor({ name: 'Turned on: Nightcore', iconURL: 'https://cdn.discordapp.com/emojis/758423098885275748.gif'}) .setColor('#000001'); diff --git a/commands/filters/phaser.js b/commands/filters/phaser.js index 22879de1..2052a4c5 100644 --- a/commands/filters/phaser.js +++ b/commands/filters/phaser.js @@ -1,4 +1,4 @@ -const { MessageEmbed } = require('discord.js'); +const { EmbedBuilder } = require('discord.js'); const delay = require('delay'); module.exports = { @@ -15,11 +15,11 @@ module.exports = { const queue = client.distube.getQueue(message); if (!queue) msg.edit(`There is nothing in the queue right now!`) const { channel } = message.member.voice; - if (!channel || message.member.voice.channel !== message.guild.me.voice.channel) return msg.edit("You need to be in a same/voice channel.") + if (!channel || message.member.voice.channel !== message.guild.members.me.voice.channel) return msg.edit("You need to be in a same/voice channel.") - client.distube.setFilter(message, "phaser") + queue.filters.add("phaser") - const embed = new MessageEmbed() + const embed = new EmbedBuilder() .setAuthor({ name: 'Turned on: Phaser', iconURL: 'https://cdn.discordapp.com/emojis/758423098885275748.gif'}) .setColor('#000001'); diff --git a/commands/filters/reset.js b/commands/filters/reset.js index a2b0f35b..c2cebedf 100644 --- a/commands/filters/reset.js +++ b/commands/filters/reset.js @@ -1,4 +1,4 @@ -const { MessageEmbed } = require('discord.js'); +const { EmbedBuilder } = require('discord.js'); const delay = require('delay'); module.exports = { @@ -15,12 +15,12 @@ module.exports = { const queue = client.distube.getQueue(message); if (!queue) msg.edit(`There is nothing in the queue right now!`) const { channel } = message.member.voice; - if (!channel || message.member.voice.channel !== message.guild.me.voice.channel) return msg.edit("You need to be in a same/voice channel.") + if (!channel || message.member.voice.channel !== message.guild.members.me.voice.channel) return msg.edit("You need to be in a same/voice channel.") - client.distube.setFilter(message, false) + queue.filters.clear(); queue.setVolume(50) - const embed = new MessageEmbed() + const embed = new EmbedBuilder() .setAuthor({ name: 'Filter has been: Reseted', iconURL: 'https://cdn.discordapp.com/emojis/758423098885275748.gif'}) .setColor('#000001'); diff --git a/commands/filters/reverse.js b/commands/filters/reverse.js index 54878407..a65351ee 100644 --- a/commands/filters/reverse.js +++ b/commands/filters/reverse.js @@ -1,4 +1,4 @@ -const { MessageEmbed } = require('discord.js'); +const { EmbedBuilder } = require('discord.js'); const delay = require('delay'); module.exports = { @@ -15,11 +15,11 @@ module.exports = { const queue = client.distube.getQueue(message); if (!queue) msg.edit(`There is nothing in the queue right now!`) const { channel } = message.member.voice; - if (!channel || message.member.voice.channel !== message.guild.me.voice.channel) return msg.edit("You need to be in a same/voice channel.") + if (!channel || message.member.voice.channel !== message.guild.members.me.voice.channel) return msg.edit("You need to be in a same/voice channel.") - client.distube.setFilter(message, "reverse") + queue.filters.add("reverse") - const embed = new MessageEmbed() + const embed = new EmbedBuilder() .setAuthor({ name: 'Turned on: Reverse', iconURL: 'https://cdn.discordapp.com/emojis/758423098885275748.gif'}) .setColor('#000001'); diff --git a/commands/filters/surround.js b/commands/filters/surround.js index 227cc977..ceb90847 100644 --- a/commands/filters/surround.js +++ b/commands/filters/surround.js @@ -1,4 +1,4 @@ -const { MessageEmbed } = require('discord.js'); +const { EmbedBuilder } = require('discord.js'); const delay = require('delay'); module.exports = { @@ -15,11 +15,11 @@ module.exports = { const queue = client.distube.getQueue(message); if (!queue) msg.edit(`There is nothing in the queue right now!`) const { channel } = message.member.voice; - if (!channel || message.member.voice.channel !== message.guild.me.voice.channel) return msg.edit("You need to be in a same/voice channel.") + if (!channel || message.member.voice.channel !== message.guild.members.me.voice.channel) return msg.edit("You need to be in a same/voice channel.") - client.distube.setFilter(message, "surround") + queue.filters.add("surround") - const embed = new MessageEmbed() + const embed = new EmbedBuilder() .setAuthor({ name: 'Turned on: Surround', iconURL: 'https://cdn.discordapp.com/emojis/758423098885275748.gif'}) .setColor('#000001'); diff --git a/commands/filters/tremolo.js b/commands/filters/tremolo.js index d98df557..496e7205 100644 --- a/commands/filters/tremolo.js +++ b/commands/filters/tremolo.js @@ -1,4 +1,4 @@ -const { MessageEmbed } = require('discord.js'); +const { EmbedBuilder } = require('discord.js'); const delay = require('delay'); module.exports = { @@ -15,11 +15,11 @@ module.exports = { const queue = client.distube.getQueue(message); if (!queue) msg.edit(`There is nothing in the queue right now!`) const { channel } = message.member.voice; - if (!channel || message.member.voice.channel !== message.guild.me.voice.channel) return msg.edit("You need to be in a same/voice channel.") + if (!channel || message.member.voice.channel !== message.guild.members.me.voice.channel) return msg.edit("You need to be in a same/voice channel.") - client.distube.setFilter(message, "tremolo") + queue.filters.add("tremolo") - const embed = new MessageEmbed() + const embed = new EmbedBuilder() .setAuthor({ name: 'Turned on: Tremolo', iconURL: 'https://cdn.discordapp.com/emojis/758423098885275748.gif'}) .setColor('#000001'); diff --git a/commands/filters/vaporwave.js b/commands/filters/vaporwave.js index 78c864e5..0459032d 100644 --- a/commands/filters/vaporwave.js +++ b/commands/filters/vaporwave.js @@ -1,4 +1,4 @@ -const { MessageEmbed } = require('discord.js'); +const { EmbedBuilder } = require('discord.js'); const delay = require('delay'); module.exports = { @@ -15,11 +15,11 @@ module.exports = { const queue = client.distube.getQueue(message); if (!queue) msg.edit(`There is nothing in the queue right now!`) const { channel } = message.member.voice; - if (!channel || message.member.voice.channel !== message.guild.me.voice.channel) return msg.edit("You need to be in a same/voice channel.") + if (!channel || message.member.voice.channel !== message.guild.members.me.voice.channel) return msg.edit("You need to be in a same/voice channel.") - client.distube.setFilter(message, "vaporwave") + queue.filters.add("vaporwave") - const embed = new MessageEmbed() + const embed = new EmbedBuilder() .setAuthor({ name: 'Turned on: Vaporwave', iconURL: 'https://cdn.discordapp.com/emojis/758423098885275748.gif'}) .setColor('#000001'); diff --git a/commands/music/autoplay.js b/commands/music/autoplay.js index 04bb1239..67e9e3e4 100644 --- a/commands/music/autoplay.js +++ b/commands/music/autoplay.js @@ -1,4 +1,4 @@ -const { MessageEmbed } = require("discord.js"); +const { EmbedBuilder } = require("discord.js"); module.exports = { config: { @@ -14,22 +14,22 @@ module.exports = { const queue = client.distube.getQueue(message); if (!queue) msg.edit(`There is nothing in the queue right now!`) const { channel } = message.member.voice; - if (!channel || message.member.voice.channel !== message.guild.me.voice.channel) return msg.edit("You need to be in a same/voice channel.") + if (!channel || message.member.voice.channel !== message.guild.members.me.voice.channel) return msg.edit("You need to be in a same/voice channel.") if (!queue.autoplay) { client.distube.toggleAutoplay(message); - const embed = new MessageEmbed() - .setColor(message.client.color) - .setDescription(`\`⏯\` Activate **Autoplay** mode.`) + const embed = new EmbedBuilder() + .setColor("#000001") + .setDescription(`\`⏯\` Activate **Autoplay** mode.`); msg.edit({ content: ' ', embeds: [embed] }); } else { client.distube.toggleAutoplay(message); - const embed = new MessageEmbed() - .setColor(message.client.color) - .setDescription(`\`⏯\` Disable **Autoplay** mode.`) + const embed = new EmbedBuilder() + .setColor("#000001") + .setDescription(`\`⏯\` Disable **Autoplay** mode.`); msg.edit({ content: ' ', embeds: [embed] }); } diff --git a/commands/music/join.js b/commands/music/join.js index 43eaf97f..450503e8 100644 --- a/commands/music/join.js +++ b/commands/music/join.js @@ -1,4 +1,4 @@ -const { MessageEmbed, Permissions } = require("discord.js"); +const { EmbedBuilder, PermissionsBitField } = require("discord.js"); module.exports = { config: { @@ -12,21 +12,21 @@ module.exports = { const msg = await message.channel.send("Processing....."); const { channel } = message.member.voice; - if (!message.guild.me.permissions.has([Permissions.FLAGS.CONNECT, Permissions.FLAGS.SPEAK])) return msg.edit({ embed: { description: "I don't have perm `CONNECT` or `SPEAK` to execute command!", color: "#000001" } }); - if (!message.guild.me.permissionsIn(channel).has([Permissions.FLAGS.CONNECT, Permissions.FLAGS.SPEAK])) return msg.edit({ embed : { description: `I don't have perm \`CONNECT\` or \`SPEAK\` in ${channel.name} to join voice!`, color: "#000001" } }); + if (!message.guild.members.cache.get(client.user.id).permissionsIn(channel).has(PermissionsBitField.Flags.Connect)) return message.channel.send(`I don't have perm \`CONNECT\` in ${channel.name} to join voice!`); + if (!message.guild.members.cache.get(client.user.id).permissionsIn(channel).has(PermissionsBitField.Flags.Speak)) return message.channel.send(`I don't have perm \`SPEAK\` in ${channel.name} to join voice!`); - const clientVoice = message.guild.me.voice.channel; + const clientVoice = message.guild.members.me.voice.channel; const memberVoice = message.member.voice.channel; if (clientVoice) { if (clientVoice !== memberVoice) { - const embed = new MessageEmbed() + const embed = new EmbedBuilder() .setColor("#000001") .setDescription(`You must be in the same channel as ${message.client.user}`); return msg.edit({ content: ' ', embeds: [embed] }); } else { - const embed = new MessageEmbed() + const embed = new EmbedBuilder() .setColor("#000001") .setDescription(`I'm already on your voice channel`); @@ -36,7 +36,7 @@ module.exports = { if (memberVoice) { client.distube.voices.join(memberVoice) .then(voice => { - const embed = new MessageEmbed() + const embed = new EmbedBuilder() .setColor('#000001') .setDescription(`\`🔊\` | **Joined:** \`${memberVoice.name}\``) @@ -48,7 +48,7 @@ module.exports = { } else { - const embed = new MessageEmbed() + const embed = new EmbedBuilder() .setColor("#000001") .setDescription(`You must be in a voice channel!`); diff --git a/commands/music/leave.js b/commands/music/leave.js index 6beeda5e..b0b5bbcc 100644 --- a/commands/music/leave.js +++ b/commands/music/leave.js @@ -1,4 +1,4 @@ -const { MessageEmbed } = require("discord.js"); +const { EmbedBuilder } = require("discord.js"); module.exports = { config: { @@ -11,8 +11,9 @@ module.exports = { run: async (client, message, args) => { const msg = await message.channel.send("Processing....."); const queue = client.distube.getQueue(message); + if (!queue) return msg.edit(`There is nothing in the queue right now!`) - const clientVoice = message.guild.me.voice.channel; + const clientVoice = message.guild.members.me.voice.channel; const memberVoice = message.member.voice.channel; if (clientVoice === memberVoice) { @@ -23,7 +24,7 @@ module.exports = { client.distube.voices.leave(message.guild); } - const embed = new MessageEmbed() + const embed = new EmbedBuilder() .setDescription(`\`🚫\` | **Left:** | \`${memberVoice.name}\``) .setColor('#000001') diff --git a/commands/music/loop.js b/commands/music/loop.js index 6290ef84..19da8991 100644 --- a/commands/music/loop.js +++ b/commands/music/loop.js @@ -1,4 +1,4 @@ -const { MessageEmbed } = require("discord.js"); +const { EmbedBuilder } = require("discord.js"); module.exports = { config: { @@ -14,18 +14,18 @@ module.exports = { const queue = client.distube.getQueue(message); if (!queue) msg.edit(`There is nothing in the queue right now!`) const { channel } = message.member.voice; - if (!channel || message.member.voice.channel !== message.guild.me.voice.channel) return msg.edit("You need to be in a same/voice channel.") + if (!channel || message.member.voice.channel !== message.guild.members.me.voice.channel) return msg.edit("You need to be in a same/voice channel.") if (queue.repeatMode === 0) { client.distube.setRepeatMode(message, 1); - const embed = new MessageEmbed() + const embed = new EmbedBuilder() .setColor("#000001") .setDescription(`\`🔁\` | **Song is loop:** \`Current\``) msg.edit({ content: ' ', embeds: [embed] }); } else { client.distube.setRepeatMode(message, 0); - const embed = new MessageEmbed() + const embed = new EmbedBuilder() .setColor("#000001") .setDescription(`\`🔁\` | **Song is unloop:** \`Current\``) diff --git a/commands/music/loopqueue.js b/commands/music/loopqueue.js index 23682c73..ebf1e0e5 100644 --- a/commands/music/loopqueue.js +++ b/commands/music/loopqueue.js @@ -1,4 +1,4 @@ -const { MessageEmbed } = require("discord.js"); +const { EmbedBuilder } = require("discord.js"); module.exports = { config: { @@ -14,18 +14,18 @@ module.exports = { const queue = client.distube.getQueue(message); if (!queue) msg.edit(`There is nothing in the queue right now!`) const { channel } = message.member.voice; - if (!channel || message.member.voice.channel !== message.guild.me.voice.channel) return msg.edit("You need to be in a same/voice channel.") + if (!channel || message.member.voice.channel !== message.guild.members.me.voice.channel) return msg.edit("You need to be in a same/voice channel.") if (queue.repeatMode === 2) { client.distube.setRepeatMode(message, 0); - const embed = new MessageEmbed() + const embed = new EmbedBuilder() .setColor("#000001") .setDescription(`\`🔁\` | **Song is unloop:** \`All\``) msg.edit({ content: ' ', embeds: [embed] }); } else { client.distube.setRepeatMode(message, 2); - const embed = new MessageEmbed() + const embed = new EmbedBuilder() .setColor("#000001") .setDescription(`\`🔁\` | **Song is loop:** \`All\``) diff --git a/commands/music/lyrics.js b/commands/music/lyrics.js index a3f11b8b..75dfe0e6 100644 --- a/commands/music/lyrics.js +++ b/commands/music/lyrics.js @@ -1,5 +1,5 @@ const lyricsfinder = require('lyrics-finder'); -const { MessageEmbed } = require('discord.js'); +const { EmbedBuilder } = require('discord.js'); module.exports = { config: { @@ -15,7 +15,7 @@ module.exports = { const queue = client.distube.getQueue(message); if (!queue) msg.edit(`There is nothing in the queue right now!`) const { channel } = message.member.voice; - if (!channel || message.member.voice.channel !== message.guild.me.voice.channel) return msg.edit("You need to be in a same/voice channel.") + if (!channel || message.member.voice.channel !== message.guild.members.me.voice.channel) return msg.edit("You need to be in a same/voice channel.") let song = args.join(" "); let CurrentSong = queue.songs[0]; @@ -30,7 +30,7 @@ module.exports = { console.log(err); msg.edit("Couldn't find any lyrics for that song!"); } - let lyricsEmbed = new MessageEmbed() + let lyricsEmbed = new EmbedBuilder() .setColor('#000001') .setTitle(`Lyrics`) .setDescription(`**${song}**\n${lyrics}`) diff --git a/commands/music/nowplaying.js b/commands/music/nowplaying.js index 812df8cd..679c71cd 100644 --- a/commands/music/nowplaying.js +++ b/commands/music/nowplaying.js @@ -1,4 +1,4 @@ -const { MessageEmbed } = require("discord.js"); +const { EmbedBuilder } = require("discord.js"); module.exports = { config: { @@ -14,22 +14,23 @@ module.exports = { const queue = client.distube.getQueue(message); if (!queue) msg.edit(`There is nothing in the queue right now!`) const { channel } = message.member.voice; - if (!channel || message.member.voice.channel !== message.guild.me.voice.channel) return msg.edit("You need to be in a same/voice channel.") + if (!channel || message.member.voice.channel !== message.guild.members.me.voice.channel) return msg.edit("You need to be in a same/voice channel.") const uni = `${queue.songs[0].playing ? '⏸️ |' : '🔴 |'}`; const part = Math.floor((queue.currentTime / queue.songs[0].duration) * 30); - const embed = new MessageEmbed() + const embed = new EmbedBuilder() .setAuthor({ name: queue.songs[0].playing ? 'Song Pause...' : 'Now Playing...', iconURL: "https://cdn.discordapp.com/emojis/741605543046807626.gif"}) .setColor('#000001') .setDescription(`**[${queue.songs[0].name}](${queue.songs[0].url})**`) .setThumbnail(`${queue.songs[0].thumbnail}`) - .addField('Uploader:', `[${queue.songs[0].uploader.name}](${queue.songs[0].uploader.url})`, true) - .addField('Requester:', `${queue.songs[0].user}`, true) - .addField('Volume:', `${queue.volume}%`, true) - .addField('Views', `${queue.songs[0].views}`, true) - .addField('Likes:', `${queue.songs[0].likes}`, true) - .addField(`Current Duration: \`[${queue.formattedCurrentTime} / ${queue.songs[0].formattedDuration}]\``, `\`\`\`${uni} ${'─'.repeat(part) + '🎶' + '─'.repeat(30 - part)}\`\`\``) + .addFields({ name: 'Uploader:', value: `[${queue.songs[0].uploader.name}](${queue.songs[0].uploader.url})`, inline: true }) + .addFields({ name: 'Requester:', value: `${queue.songs[0].user}`, inline: true }) + .addFields({ name: 'Volume:', value: `${queue.volume}%`, inline: true }) + .addFields({ name: 'Views', value: `${queue.songs[0].views}`, inline: true }) + .addFields({ name: 'Likes:', value: `${queue.songs[0].likes}`, inline: true }) + .addFields({ name: 'Filters:', value: `${queue.filters.names.join(', ') || "Normal"}`, inline: true }) + .addFields({ name: `Current Duration: \`[${queue.formattedCurrentTime} / ${queue.songs[0].formattedDuration}]\``, value: `\`\`\`${uni} ${'─'.repeat(part) + '🎶' + '─'.repeat(30 - part)}\`\`\``, inline: false }) .setTimestamp() msg.edit({ content: ' ', embeds: [embed] }); diff --git a/commands/music/pause.js b/commands/music/pause.js index bfdb9fa1..daf2c7c2 100644 --- a/commands/music/pause.js +++ b/commands/music/pause.js @@ -1,4 +1,4 @@ -const { MessageEmbed } = require("discord.js"); +const { EmbedBuilder } = require("discord.js"); module.exports = { config: { @@ -14,17 +14,17 @@ module.exports = { const queue = client.distube.getQueue(message); if (!queue) msg.edit(`There is nothing in the queue right now!`) const { channel } = message.member.voice; - if (!channel || message.member.voice.channel !== message.guild.me.voice.channel) return msg.edit("You need to be in a same/voice channel.") + if (!channel || message.member.voice.channel !== message.guild.members.me.voice.channel) return msg.edit("You need to be in a same/voice channel.") if (queue.paused) { - const embed = new MessageEmbed() + const embed = new EmbedBuilder() .setColor("#000001") .setDescription(`\`⏯\` | **Song has been:** \`Paused\``); msg.edit({ content: ' ', embeds: [embed] }); } else { client.distube.pause(message); - const embed = new MessageEmbed() + const embed = new EmbedBuilder() .setColor("#000001") .setDescription(`\`⏯\` | **Song has been:** \`Paused\``); diff --git a/commands/music/play.js b/commands/music/play.js index 1fe5d555..a5266876 100644 --- a/commands/music/play.js +++ b/commands/music/play.js @@ -1,4 +1,4 @@ -const { Permissions } = require("discord.js"); +const { PermissionsBitField } = require("discord.js"); module.exports = { config: { @@ -15,8 +15,8 @@ module.exports = { const { channel } = message.member.voice; if (!channel) return message.channel.send("You need to be in voice channel.") - if (!message.guild.me.permissions.has([Permissions.FLAGS.CONNECT, Permissions.FLAGS.SPEAK])) return msg.edit({ embed: { description: "I don't have perm `CONNECT` or `SPEAK` to execute command!", color: "#000001" } }); - if (!message.guild.me.permissionsIn(channel).has([Permissions.FLAGS.CONNECT, Permissions.FLAGS.SPEAK])) return msg.edit({ embed : { description: `I don't have perm \`CONNECT\` or \`SPEAK\` in ${channel.name} to join voice!`, color: "#000001" } }); + if (!message.guild.members.cache.get(client.user.id).permissionsIn(channel).has(PermissionsBitField.Flags.Connect)) return message.channel.send(`I don't have perm \`CONNECT\` in ${channel.name} to join voice!`); + if (!message.guild.members.cache.get(client.user.id).permissionsIn(channel).has(PermissionsBitField.Flags.Speak)) return message.channel.send(`I don't have perm \`SPEAK\` in ${channel.name} to join voice!`); const string = args.join(" "); if (!string) { diff --git a/commands/music/playskip.js b/commands/music/playskip.js index 90b3cefb..5349fd43 100644 --- a/commands/music/playskip.js +++ b/commands/music/playskip.js @@ -14,8 +14,8 @@ module.exports = { const { channel } = message.member.voice; if (!channel) return message.channel.send("You need to be in voice channel.") - if (!message.guild.me.permissions.has([Permissions.FLAGS.CONNECT, Permissions.FLAGS.SPEAK])) return msg.edit({ embed: { description: "I don't have perm `CONNECT` or `SPEAK` to execute command!", color: "#000001" } }); - if (!message.guild.me.permissionsIn(channel).has([Permissions.FLAGS.CONNECT, Permissions.FLAGS.SPEAK])) return msg.edit({ embed : { description: `I don't have perm \`CONNECT\` or \`SPEAK\` in ${channel.name} to join voice!`, color: "#000001" } }); + if (!message.guild.members.cache.get(client.user.id).permissionsIn(channel).has(PermissionsBitField.Flags.Connect)) return message.channel.send(`I don't have perm \`CONNECT\` in ${channel.name} to join voice!`); + if (!message.guild.members.cache.get(client.user.id).permissionsIn(channel).has(PermissionsBitField.Flags.Speak)) return message.channel.send(`I don't have perm \`SPEAK\` in ${channel.name} to join voice!`); const string = args.join(" "); if (!string) { diff --git a/commands/music/previous.js b/commands/music/previous.js index a7391c5b..d7b14353 100644 --- a/commands/music/previous.js +++ b/commands/music/previous.js @@ -1,4 +1,4 @@ -const { MessageEmbed } = require("discord.js"); +const { EmbedBuilder } = require("discord.js"); module.exports = { config: { @@ -14,10 +14,10 @@ module.exports = { const queue = client.distube.getQueue(message); if (!queue) msg.edit(`There is nothing in the queue right now!`) const { channel } = message.member.voice; - if (!channel || message.member.voice.channel !== message.guild.me.voice.channel) return msg.edit("You need to be in a same/voice channel.") + if (!channel || message.member.voice.channel !== message.guild.members.me.voice.channel) return msg.edit("You need to be in a same/voice channel.") if (queue.previousSongs.length == 0) { - const embed = new MessageEmbed() + const embed = new EmbedBuilder() .setColor("#000001") .setDescription("\`🚨\` | **There are no** `Previous` **songs**") @@ -25,7 +25,7 @@ module.exports = { } else { await client.distube.previous(message) .then(song => { - const embed = new MessageEmbed() + const embed = new EmbedBuilder() .setColor("#000001") .setDescription("\`⏮\` | **Song has been:** `Previous`") diff --git a/commands/music/queue.js b/commands/music/queue.js index f7327840..90e0dbd5 100644 --- a/commands/music/queue.js +++ b/commands/music/queue.js @@ -1,4 +1,4 @@ -const { MessageEmbed } = require("discord.js"); +const { EmbedBuilder } = require("discord.js"); const pagequeue = require('../../structures/pagequeue.js'); module.exports = { @@ -13,7 +13,7 @@ module.exports = { const queue = client.distube.getQueue(message); if (!queue) message.channel.send(`There is nothing in the queue right now!`) const { channel } = message.member.voice; - if (!channel || message.member.voice.channel !== message.guild.me.voice.channel) return message.channel.send("You need to be in a same/voice channel.") + if (!channel || message.member.voice.channel !== message.guild.members.me.voice.channel) return message.channel.send("You need to be in a same/voice channel.") const pagesNum = Math.ceil(queue.songs.length / 10); if(pagesNum === 0) pagesNum = 1; @@ -31,7 +31,7 @@ module.exports = { const pages = []; for (let i = 0; i < pagesNum; i++) { const str = songStrings.slice(i * 10, i * 10 + 10).join(''); - const embed = new MessageEmbed() + const embed = new EmbedBuilder() .setAuthor({ name: `Queue - ${message.guild.name}`, iconURL: message.guild.iconURL({ dynamic: true })}) .setThumbnail(queue.songs[0].thumbnail) .setColor('#000001') diff --git a/commands/music/replay.js b/commands/music/replay.js index 5e6c9795..5d7170a4 100644 --- a/commands/music/replay.js +++ b/commands/music/replay.js @@ -1,4 +1,4 @@ -const { MessageEmbed } = require("discord.js"); +const { EmbedBuilder } = require("discord.js"); module.exports = { config: { @@ -14,11 +14,11 @@ module.exports = { const queue = client.distube.getQueue(message); if (!queue) msg.edit(`There is nothing in the queue right now!`) const { channel } = message.member.voice; - if (!channel || message.member.voice.channel !== message.guild.me.voice.channel) return msg.edit("You need to be in a same/voice channel.") + if (!channel || message.member.voice.channel !== message.guild.members.me.voice.channel) return msg.edit("You need to be in a same/voice channel.") await queue.seek(0) - const embed = new MessageEmbed() + const embed = new EmbedBuilder() .setColor("#000001") .setDescription("\`🔁\` | **Song has been:** `Replay`") diff --git a/commands/music/resume.js b/commands/music/resume.js index 31da1dd8..26421770 100644 --- a/commands/music/resume.js +++ b/commands/music/resume.js @@ -1,4 +1,4 @@ -const { MessageEmbed } = require("discord.js"); +const { EmbedBuilder } = require("discord.js"); module.exports = { config: { @@ -14,18 +14,18 @@ module.exports = { const queue = client.distube.getQueue(message); if (!queue) msg.edit(`There is nothing in the queue right now!`) const { channel } = message.member.voice; - if (!channel || message.member.voice.channel !== message.guild.me.voice.channel) return msg.edit("You need to be in a same/voice channel.") + if (!channel || message.member.voice.channel !== message.guild.members.me.voice.channel) return msg.edit("You need to be in a same/voice channel.") if (queue.paused) { await client.distube.resume(message); - const embed = new MessageEmbed() + const embed = new EmbedBuilder() .setColor("#000001") .setDescription(`\`⏯\` | **Song has been:** \`Resumed\``); msg.edit({ embeds: [embed] }); } else { - const embed = new MessageEmbed() + const embed = new EmbedBuilder() .setColor("#000001") .setDescription(`\`⏯\` | **Queue has been:** \`Resumed\``); diff --git a/commands/music/shuffle.js b/commands/music/shuffle.js index 2b4becd1..208fee1e 100644 --- a/commands/music/shuffle.js +++ b/commands/music/shuffle.js @@ -1,4 +1,4 @@ -const { MessageEmbed } = require('discord.js'); +const { EmbedBuilder } = require('discord.js'); module.exports = { config: { @@ -14,11 +14,11 @@ module.exports = { const queue = client.distube.getQueue(message); if (!queue) msg.edit(`There is nothing in the queue right now!`) const { channel } = message.member.voice; - if (!channel || message.member.voice.channel !== message.guild.me.voice.channel) return msg.edit("You need to be in a same/voice channel.") + if (!channel || message.member.voice.channel !== message.guild.members.me.voice.channel) return msg.edit("You need to be in a same/voice channel.") await client.distube.shuffle(message); - let embed = new MessageEmbed() + let embed = new EmbedBuilder() .setColor('#000001') .setDescription(`\`🔀\` | **Song has been:** \`Shuffle\``); diff --git a/commands/music/skip.js b/commands/music/skip.js index ae9c5822..b07981d0 100644 --- a/commands/music/skip.js +++ b/commands/music/skip.js @@ -1,4 +1,4 @@ -const { MessageEmbed } = require("discord.js"); +const { EmbedBuilder } = require("discord.js"); module.exports = { config: { @@ -14,10 +14,10 @@ module.exports = { const queue = client.distube.getQueue(message); if (!queue) msg.edit(`There is nothing in the queue right now!`) const { channel } = message.member.voice; - if (!channel || message.member.voice.channel !== message.guild.me.voice.channel) return msg.edit("You need to be in a same/voice channel.") + if (!channel || message.member.voice.channel !== message.guild.members.me.voice.channel) return msg.edit("You need to be in a same/voice channel.") if (queue.songs.length === 1 && queue.autoplay === false) { - const embed = new MessageEmbed() + const embed = new EmbedBuilder() .setColor("#000001") .setDescription("\`🚨\` | **There are no** `Songs` **in queue**") @@ -25,7 +25,7 @@ module.exports = { } else { client.distube.skip(message) .then(song => { - const embed = new MessageEmbed() + const embed = new EmbedBuilder() .setColor("#000001") .setDescription("\`⏭\` | **Song has been:** `Skipped`") diff --git a/commands/music/skipto.js b/commands/music/skipto.js index c25d530b..029f632c 100644 --- a/commands/music/skipto.js +++ b/commands/music/skipto.js @@ -1,4 +1,4 @@ -const { MessageEmbed } = require("discord.js"); +const { EmbedBuilder } = require("discord.js"); module.exports = { config: { @@ -14,10 +14,10 @@ module.exports = { const queue = client.distube.getQueue(message); if (!queue) msg.edit(`There is nothing in the queue right now!`) const { channel } = message.member.voice; - if (!channel || message.member.voice.channel !== message.guild.me.voice.channel) return msg.edit("You need to be in a same/voice channel.") + if (!channel || message.member.voice.channel !== message.guild.members.me.voice.channel) return msg.edit("You need to be in a same/voice channel.") if (isNaN(args[0])) { - const embed = new MessageEmbed() + const embed = new EmbedBuilder() .setColor("#000001") .setDescription(`Please enter a valid number!`); @@ -26,7 +26,7 @@ module.exports = { await client.distube.jump(message, parseInt(args[0])) .then(queue => { - const embed = new MessageEmbed() + const embed = new EmbedBuilder() .setColor("#000001") .setDescription(`\`⏭\` | **Skipto:** ${args[0]}`) diff --git a/commands/music/volume.js b/commands/music/volume.js index dc08fb3d..e0cb6490 100644 --- a/commands/music/volume.js +++ b/commands/music/volume.js @@ -1,4 +1,4 @@ -const { MessageEmbed } = require("discord.js"); +const { EmbedBuilder } = require("discord.js"); module.exports = { config: { @@ -14,12 +14,12 @@ module.exports = { const queue = client.distube.getQueue(message); if (!queue) msg.edit(`There is nothing in the queue right now!`) const { channel } = message.member.voice; - if (!channel || message.member.voice.channel !== message.guild.me.voice.channel) return msg.edit("You need to be in a same/voice channel.") + if (!channel || message.member.voice.channel !== message.guild.members.me.voice.channel) return msg.edit("You need to be in a same/voice channel.") const volume = parseInt(args[0]); if (!volume) { - const embed = new MessageEmbed() + const embed = new EmbedBuilder() .setColor("#000001") .setDescription(`Current **volume** : \`${queue.volume}\`%`) @@ -27,7 +27,7 @@ module.exports = { } if (isNaN(volume)) { - const embed = new MessageEmbed() + const embed = new EmbedBuilder() .setColor("#000001") .setDescription(`Please enter a valid number`); @@ -38,7 +38,7 @@ module.exports = { client.distube.setVolume(message, volume); - const embed = new MessageEmbed() + const embed = new EmbedBuilder() .setColor("#000001") .setDescription(`\`🔊\` | **Change volume to:** \`${args[0]}\`%`) diff --git a/commands/utilities/filterlist.js b/commands/utilities/filterlist.js index cb6e9ba2..28c12d48 100644 --- a/commands/utilities/filterlist.js +++ b/commands/utilities/filterlist.js @@ -1,4 +1,4 @@ -const { MessageEmbed } = require("discord.js"); +const { EmbedBuilder } = require("discord.js"); module.exports = { config: { @@ -11,27 +11,27 @@ module.exports = { }, run: async (client, message) => { const msg = await message.channel.send("Processing..."); - const embed = new MessageEmbed() + const embed = new EmbedBuilder() .setColor('#000001') .setAuthor({ name: `Filter List`, iconURL: message.guild.iconURL({ dynamic: true })}) .setDescription(`**Displays all filters that the bot has.**`) .setThumbnail(client.user.displayAvatarURL({ dynamic: true, size: 2048 })) - .addField('** **', `\`3d\``, true) - .addField('** **', `\`bassboost\``, true) - .addField('** **', `\`echo\``, true) - .addField('** **', `\`karaoke\``, true) - .addField('** **', `\`nightcore\``, true) - .addField('** **', `\`vaporwave\``, true) - .addField('** **', `\`flanger\``, true) - .addField('** **', `\`gate\``, true) - .addField('** **', `\`haas\``, true) - .addField('** **', `\`reverse\``, true) - .addField('** **', `\`surround\``, true) - .addField('** **', `\`mcompand\``, true) - .addField('** **', `\`phaser\``, true) - .addField('** **', `\`tremolo\``, true) - .addField('** **', `\`earwax\``, true) - .setFooter({ text: `Example: ${client.prefix}filter bassboost`}) + .addFields({ name: '** **', value: `\`3d\``, inline: true }) + .addFields({ name: '** **', value: `\`bassboost\``, inline: true }) + .addFields({ name: '** **', value: `\`echo\``, inline: true }) + .addFields({ name: '** **', value: `\`karaoke\``, inline: true }) + .addFields({ name: '** **', value: `\`nightcore\``, inline: true }) + .addFields({ name: '** **', value: `\`vaporwave\``, inline: true }) + .addFields({ name: '** **', value: `\`flanger\``, inline: true }) + .addFields({ name: '** **', value: `\`gate\``, inline: true }) + .addFields({ name: '** **', value: `\`haas\``, inline: true }) + .addFields({ name: '** **', value: `\`reverse\``, inline: true }) + .addFields({ name: '** **', value: `\`surround\``, inline: true }) + .addFields({ name: '** **', value: `\`mcompand\``, inline: true }) + .addFields({ name: '** **', value: `\`phaser\``, inline: true }) + .addFields({ name: '** **', value: `\`tremolo\``, inline: true }) + .addFields({ name: '** **', value: `\`earwax\``, inline: true }) + .setFooter({ text: `Example: ${client.prefix}filter bassboost` }) .setTimestamp() msg.edit({ content: ' ', embeds: [embed] }) diff --git a/commands/utilities/help.js b/commands/utilities/help.js index cfae72f1..c9d19baa 100644 --- a/commands/utilities/help.js +++ b/commands/utilities/help.js @@ -1,4 +1,4 @@ -const { MessageEmbed } = require("discord.js"); +const { EmbedBuilder } = require("discord.js"); const { readdirSync } = require("fs"); const { stripIndents } = require("common-tags"); const chalk = require("chalk"); @@ -13,23 +13,22 @@ module.exports = { accessableby: "Members" }, run: async (client, message, args) => { - console.log(chalk.magenta(`[COMMAND] Help used by ${message.author.tag} from ${message.guild.name}`)); - const embed = new MessageEmbed() + const embed = new EmbedBuilder() .setColor('#000001') - .setAuthor({ name: `${message.guild.me.displayName} Help Command!`, iconURL: message.guild.iconURL({ dynamic: true })}) + .setAuthor({ name: `${message.guild.members.me.displayName} Help Command!`, iconURL: message.guild.iconURL({ dynamic: true })}) .setThumbnail(client.user.displayAvatarURL({ dynamic: true, size: 2048 })); if(!args[0]) { const categories = readdirSync("./commands/") embed.setDescription(`The bot prefix is: **${client.prefix}**`) - embed.setFooter({ text: `© ${message.guild.me.displayName} | Total Commands: ${client.commands.size}`, iconURL: client.user.displayAvatarURL({ dynamic: true })}); + embed.setFooter({ text: `© ${message.guild.members.me.displayName} | Total Commands: ${client.commands.size}`, iconURL: client.user.displayAvatarURL({ dynamic: true })}); categories.forEach(category => { const dir = client.commands.filter(c => c.config.category === category) const capitalise = category.slice(0, 1).toUpperCase() + category.slice(1) try { - embed.addField(`❯ ${capitalise} [${dir.size}]:`, dir.map(c => `\`${c.config.name}\``).join(" ")) + embed.addFields({ name: `❯ ${capitalise} [${dir.size}]:`, value: dir.map(c => `\`${c.config.name}\``).join(" "), inline: false }) } catch(e) { console.log(e) } diff --git a/commands/utilities/invite.js b/commands/utilities/invite.js index 871547a5..ad7f2322 100644 --- a/commands/utilities/invite.js +++ b/commands/utilities/invite.js @@ -1,4 +1,4 @@ -const { MessageEmbed, MessageActionRow, MessageButton } = require("discord.js"); +const { EmbedBuilder, ActionRowBuilder, ButtonBuilder, ButtonStyle } = require("discord.js"); module.exports = { config: { @@ -9,20 +9,20 @@ module.exports = { accessableby: "Members" }, run: async (client, message, args) => { - const embed = new MessageEmbed() + const embed = new EmbedBuilder() .setColor("#000001") .setAuthor({ name: "Invite!"}) .setDescription("```Invite me to your server!```") .setTimestamp() .setFooter({ text: `Requested by ${message.author.tag}`, iconURL: message.author.displayAvatarURL()}); - const row = new MessageActionRow() + const row = new ActionRowBuilder() .addComponents( - new MessageButton() + new ButtonBuilder() .setLabel("Invite") .setURL(`https://discord.com/api/oauth2/authorize?client_id=${client.user.id}&permissions=0&scope=bot`) .setEmoji("🔗") - .setStyle("LINK") + .setStyle(ButtonStyle.Link) ) message.channel.send({ embeds: [embed], components: [row] }); diff --git a/commands/utilities/stopbot.js b/commands/utilities/stopbot.js index 9aa03eb7..b1f36f7b 100644 --- a/commands/utilities/stopbot.js +++ b/commands/utilities/stopbot.js @@ -1,5 +1,5 @@ const chalk = require('chalk'); -const { MessageEmbed } = require('discord.js'); +const { EmbedBuilder } = require('discord.js'); module.exports = { config: { @@ -12,7 +12,7 @@ module.exports = { run: async (client, message, args) => { if(message.author.id != client.owner) return message.channel.send("You not the client the owner!") - const restart = new MessageEmbed() + const restart = new EmbedBuilder() .setDescription("**Account has been**: `Shutting down...`") .setColor("#000001"); diff --git a/disspace.js b/disspace.js index 26e6665d..d0bf24f0 100644 --- a/disspace.js +++ b/disspace.js @@ -1,15 +1,19 @@ -const { Client, Collection } = require("discord.js"); +const { Client, Collection, GatewayIntentBits } = require("discord.js"); const { DisTube } = require('distube'); const { SoundCloudPlugin } = require('@distube/soundcloud'); const { SpotifyPlugin } = require('@distube/spotify'); -const { YtDlpPlugin } = require("@distube/yt-dlp"); - class MainClient extends Client { constructor() { super({ shards: "auto", - intents: 32767, + intents: [ + GatewayIntentBits.Guilds, + GatewayIntentBits.GuildMembers, + GatewayIntentBits.GuildMessages, + GatewayIntentBits.GuildVoiceStates, + GatewayIntentBits.MessageContent, + ], allowedMentions: { parse: ["roles", "users", "everyone"], repliedUser: false @@ -33,13 +37,12 @@ class MainClient extends Client { emptyCooldown: 60, leaveOnFinish: true, leaveOnStop: true, - youtubeDL: false, plugins: [ new SoundCloudPlugin(), new SpotifyPlugin({ emitEventsAfterFetching: true }), - new YtDlpPlugin()], + ] }); ["aliases", "commands"].forEach(x => client[x] = new Collection()); diff --git a/events/client/ready.js b/events/client/ready.js index 0f2ef0e1..5b7512a0 100644 --- a/events/client/ready.js +++ b/events/client/ready.js @@ -19,9 +19,12 @@ module.exports = async (client) => { `${client.prefix}help | ${guilds} servers`, `${client.prefix}play | ${users} users`, `${client.prefix}filterlist | ${channels} channels`, - ] + ]; - setInterval(() => { - client.user.setActivity(`${activities[Math.floor(Math.random() * activities.length)]}`, { type: 'WATCHING' }); - }, 15000) + setInterval(() => { + client.user.setPresence({ + activities: [{ name: `${activities[Math.floor(Math.random() * activities.length)]}`, type: 2 }], + status: 'online', + }); + }, 15000) } diff --git a/events/client/voiceStateUpdate.js b/events/client/voiceStateUpdate.js index 16ad826d..809d4d8b 100644 --- a/events/client/voiceStateUpdate.js +++ b/events/client/voiceStateUpdate.js @@ -14,9 +14,9 @@ module.exports = async (client, oldState, newState) => { (oldState.selfVideo && !newState.selfVideo) ) if (!oldState.channelId && newState.channelId) { - if(newState.channel.type == "GUILD_STAGE_VOICE" && newState.guild.me.voice.suppress){ + if(newState.channel.type == "GUILD_STAGE_VOICE" && newState.guild.members.me.voice.suppress){ try{ - await newState.guild.me.voice.setSuppressed(false); + await newState.guild.members.me.voice.setSuppressed(false); }catch (e){ console.log(String(e).grey) } @@ -27,9 +27,9 @@ module.exports = async (client, oldState, newState) => { return } if (oldState.channelId && newState.channelId) { - if(newState.channel.type == "GUILD_STAGE_VOICE" && newState.guild.me.voice.suppress){ + if(newState.channel.type == "GUILD_STAGE_VOICE" && newState.guild.members.me.voice.suppress){ try{ - await newState.guild.me.voice.setSuppressed(false); + await newState.guild.members.me.voice.setSuppressed(false); }catch (e){ console.log(String(e).grey) } diff --git a/events/distube/addList.js b/events/distube/addList.js index de3974f5..c3f34539 100644 --- a/events/distube/addList.js +++ b/events/distube/addList.js @@ -1,7 +1,7 @@ -const { MessageEmbed } = require("discord.js"); +const { EmbedBuilder } = require("discord.js"); module.exports = async (client, queue, playlist) => { - const embed = new MessageEmbed() + const embed = new EmbedBuilder() .setDescription(`**Queued • [${playlist.name}](${playlist.url})** \`${queue.formattedDuration}\` (${playlist.songs.length} tracks) • ${playlist.user}`) .setColor('#000001') diff --git a/events/distube/addSong.js b/events/distube/addSong.js index fba48450..3f826e08 100644 --- a/events/distube/addSong.js +++ b/events/distube/addSong.js @@ -1,7 +1,7 @@ -const { MessageEmbed } = require("discord.js"); +const { EmbedBuilder } = require("discord.js"); module.exports = async (client, queue, song) => { - let embed = new MessageEmbed() + let embed = new EmbedBuilder() .setDescription(`**Queued • [${song.name}](${song.url})** \`${song.formattedDuration}\` • ${song.user}`) .setColor('#000001') diff --git a/events/distube/empty.js b/events/distube/empty.js index 6178f0f9..6e5dad3b 100644 --- a/events/distube/empty.js +++ b/events/distube/empty.js @@ -1,7 +1,7 @@ -const { MessageEmbed } = require("discord.js"); +const { EmbedBuilder } = require("discord.js"); module.exports = async (client, queue) => { - const embed = new MessageEmbed() + const embed = new EmbedBuilder() .setColor('#000001') .setDescription(`**Channel is Empty!**`) diff --git a/events/distube/finish.js b/events/distube/finish.js index 7306f390..740241d2 100644 --- a/events/distube/finish.js +++ b/events/distube/finish.js @@ -1,7 +1,7 @@ -const { MessageEmbed } = require("discord.js"); +const { EmbedBuilder } = require("discord.js"); module.exports = async (client, queue) => { - const embed = new MessageEmbed() + const embed = new EmbedBuilder() .setDescription(`\`📛\` | **Song has been:** \`Ended\``) .setColor('#000001') diff --git a/events/distube/playSong.js b/events/distube/playSong.js index d4f6009a..0cbc9584 100644 --- a/events/distube/playSong.js +++ b/events/distube/playSong.js @@ -1,4 +1,4 @@ -const { MessageEmbed, MessageActionRow, MessageButton } = require("discord.js"); +const { EmbedBuilder, ActionRowBuilder, ButtonBuilder, ButtonStyle } = require("discord.js"); module.exports = async (client, queue, track) => { var newQueue = client.distube.getQueue(queue.id) @@ -7,7 +7,7 @@ module.exports = async (client, queue, track) => { const nowplay = await queue.textChannel.send(data) const filter = (message) => { - if (message.guild.me.voice.channel && message.guild.me.voice.channelId === message.member.voice.channelId) return true; + if (message.guild.members.me.voice.channel && message.guild.members.me.voice.channelId === message.member.voice.channelId) return true; else { message.reply({ content: "You need to be in a same/voice channel.", ephemeral: true }); } @@ -23,14 +23,14 @@ module.exports = async (client, queue, track) => { } if (queue.paused) { await client.distube.resume(message.guild.id); - const embed = new MessageEmbed() + const embed = new EmbedBuilder() .setColor("#000001") .setDescription(`\`⏯\` | **Song has been:** \`Resumed\``); message.reply({ embeds: [embed], ephemeral: true }); } else { await client.distube.pause(message.guild.id); - const embed = new MessageEmbed() + const embed = new EmbedBuilder() .setColor("#000001") .setDescription(`\`⏯\` | **Song has been:** \`Paused\``); @@ -41,7 +41,7 @@ module.exports = async (client, queue, track) => { collector.stop(); } if (queue.songs.length === 1 && queue.autoplay === false) { - const embed = new MessageEmbed() + const embed = new EmbedBuilder() .setColor("#000001") .setDescription("\`🚨\` | **There are no** `Songs` **in queue**") @@ -49,7 +49,7 @@ module.exports = async (client, queue, track) => { } else { await client.distube.skip(message) .then(song => { - const embed = new MessageEmbed() + const embed = new EmbedBuilder() .setColor("#000001") .setDescription("\`⏭\` | **Song has been:** `Skipped`") @@ -64,7 +64,7 @@ module.exports = async (client, queue, track) => { await client.distube.stop(message.guild.id); - const embed = new MessageEmbed() + const embed = new EmbedBuilder() .setDescription(`\`🚫\` | **Song has been:** | \`Stopped\``) .setColor('#000001'); @@ -76,14 +76,14 @@ module.exports = async (client, queue, track) => { } if (queue.repeatMode === 0) { client.distube.setRepeatMode(message.guild.id, 1); - const embed = new MessageEmbed() + const embed = new EmbedBuilder() .setColor("#000001") .setDescription(`\`🔁\` | **Song is loop:** \`Current\``) message.reply({ embeds: [embed], ephemeral: true }); } else { client.distube.setRepeatMode(message.guild.id, 0); - const embed = new MessageEmbed() + const embed = new EmbedBuilder() .setColor("#000001") .setDescription(`\`🔁\` | **Song is unloop:** \`Current\``) @@ -94,14 +94,14 @@ module.exports = async (client, queue, track) => { collector.stop(); } if (queue.previousSongs.length == 0) { - const embed = new MessageEmbed() + const embed = new EmbedBuilder() .setColor("#000001") .setDescription("\`🚨\` | **There are no** `Previous` **songs**") message.reply({ embeds: [embed], ephemeral: true }); } else { await client.distube.previous(message) - const embed = new MessageEmbed() + const embed = new EmbedBuilder() .setColor("#000001") .setDescription("\`⏮\` | **Song has been:** `Previous`") @@ -118,55 +118,55 @@ module.exports = async (client, queue, track) => { } function disspace(nowQueue, nowTrack) { - const embeded = new MessageEmbed() + const embeded = new EmbedBuilder() .setAuthor({ name: `Starting Playing...`, iconURL: 'https://cdn.discordapp.com/emojis/741605543046807626.gif' }) .setThumbnail(nowTrack.thumbnail) .setColor('#000001') .setDescription(`**[${nowTrack.name}](${nowTrack.url})**`) - .addField(`Uploader:`, `**[${nowTrack.uploader.name}](${nowTrack.uploader.url})**`, true) - .addField(`Requester:`, `${nowTrack.user}`, true) - .addField(`Current Volume:`, `${nowQueue.volume}%`, true) - .addField(`Filters:`, `${nowQueue.filters.join(", ") || "Normal"}`, true) - .addField(`Autoplay:`, `${nowQueue.autoplay ? "Activated" : "Not Active"}`, true) - .addField(`Total Duration:`, `${nowQueue.formattedDuration}`, true) - .addField(`Current Duration: \`[0:00 / ${nowTrack.formattedDuration}]\``, `\`\`\`🔴 | 🎶──────────────────────────────\`\`\``) + .addFields({ name: `Uploader:`, value: `**[${nowTrack.uploader.name}](${nowTrack.uploader.url})**`, inline: true }) + .addFields({ name: `Requester:`, value: `${nowTrack.user}`, inline: true }) + .addFields({ name: `Current Volume:`, value: `${nowQueue.volume}%`, inline: true }) + .addFields({ name: `Filters:`, value: `${nowQueue.filters.names.join(", ") || "Normal"}`, inline: true }) + .addFields({ name: `Autoplay:`, value: `${nowQueue.autoplay ? "Activated" : "Not Active"}`, inline: true }) + .addFields({ name: `Total Duration:`, value: `${nowQueue.formattedDuration}`, inline: true }) + .addFields({ name: `Current Duration: \`[0:00 / ${nowTrack.formattedDuration}]\``, value:`\`\`\`🔴 | 🎶──────────────────────────────\`\`\``, inline: false }) .setTimestamp() - const row = new MessageActionRow() + const row = new ActionRowBuilder() .addComponents( - new MessageButton() + new ButtonBuilder() .setCustomId("pause") .setLabel(`Pause`) .setEmoji("⏯") - .setStyle("SUCCESS") + .setStyle(ButtonStyle.Success) ) .addComponents( - new MessageButton() + new ButtonBuilder() .setCustomId("previous") .setLabel(`Previous`) .setEmoji("⬅") - .setStyle("PRIMARY") + .setStyle(ButtonStyle.Primary) ) .addComponents( - new MessageButton() + new ButtonBuilder() .setCustomId("stop") .setLabel(`Stop`) .setEmoji("✖") - .setStyle("DANGER") + .setStyle(ButtonStyle.Danger) ) .addComponents( - new MessageButton() + new ButtonBuilder() .setCustomId("skip") .setLabel(`Skip`) .setEmoji("➡") - .setStyle("PRIMARY") + .setStyle(ButtonStyle.Primary) ) .addComponents( - new MessageButton() + new ButtonBuilder() .setCustomId("loop") .setLabel(`Loop`) .setEmoji("🔄") - .setStyle("SUCCESS") + .setStyle(ButtonStyle.Success) ) return { embeds: [embeded], diff --git a/events/distube/searchNoResult.js b/events/distube/searchNoResult.js index 8b48f2b1..72a2e9d2 100644 --- a/events/distube/searchNoResult.js +++ b/events/distube/searchNoResult.js @@ -1,7 +1,7 @@ -const { MessageEmbed } = require("discord.js"); +const { EmbedBuilder } = require("discord.js"); module.exports = async (client, query, queue) => { - const embed = new MessageEmbed() + const embed = new EmbedBuilder() .setColor("#000001") .setDescription(`No result found for ${query}!`) diff --git a/events/distube/searchResult.js b/events/distube/searchResult.js index ed2b39c0..7c82752e 100644 --- a/events/distube/searchResult.js +++ b/events/distube/searchResult.js @@ -1,8 +1,8 @@ -const { MessageEmbed } = require("discord.js"); +const { EmbedBuilder } = require("discord.js"); module.exports = async (client, message, result, query) => { let i = 0 - let embed = new MessageEmbed() + let embed = new EmbedBuilder() .setColor("#000001") .setTitle(`Song Selection...`) .setDescription(`${result.map(song => `**(${++i}.) [${song.name}](${song.url})** - \`${song.formattedDuration}\``).join("\n")}`) diff --git a/events/guild/messageCreate.js b/events/guild/messageCreate.js index 142b4918..12c26ece 100644 --- a/events/guild/messageCreate.js +++ b/events/guild/messageCreate.js @@ -1,4 +1,4 @@ -const { Permissions, MessageEmbed } = require("discord.js"); +const { PermissionsBitField, EmbedBuilder } = require("discord.js"); module.exports = async (client, message) => { if(message.author.bot || message.channel.type === "dm") return; @@ -7,7 +7,7 @@ module.exports = async (client, message) => { const mention = new RegExp(`^<@!?${client.user.id}>( |)$`); if (message.content.match(mention)) { - const embed = new MessageEmbed() + const embed = new EmbedBuilder() .setColor("#000001") .setDescription(`**My prefix is: \`${PREFIX}\`**`); message.channel.send({ embeds: [embed] }) @@ -21,14 +21,16 @@ module.exports = async (client, message) => { const command = client.commands.get(cmd) || client.commands.get(client.aliases.get(cmd)); if(!command) return; - if(!message.guild.me.permissions.has(Permissions.FLAGS.SEND_MESSAGES)) return await message.author.dmChannel.send({ content: `I don't have perm **\`SEND_MESSAGES\`** permission in <#${message.channelId}> to execute command!` }).catch(() => {}); - if(!message.guild.me.permissions.has(Permissions.FLAGS.EMBED_LINKS)) return await message.channel.send({ content: `I don't have perm **\`EMBED_LINKS\`** to execute command!` }).catch(() => {}); + if(!message.guild.members.me.permissions.has(PermissionsBitField.Flags.SendMessages)) return await message.author.dmChannel.send({ content: `I don't have perm **\`SEND_MESSAGES\`** permission in <#${message.channelId}> to execute command!` }).catch(() => {}); + if(!message.guild.members.me.permissions.has(PermissionsBitField.Flags.EmbedLinks)) return await message.channel.send({ content: `I don't have perm **\`EMBED_LINKS\`** to execute command!` }).catch(() => {}); + console.log(`[COMMAND] ${command.config.name} executed by ${message.author.tag}`); + try { command.run(client, message, args); } catch (error) { console.log(error); - const embed = new MessageEmbed() + const embed = new EmbedBuilder() .setColor("#000001") .setDescription("There was an error executing that command."); diff --git a/package.json b/package.json index b758de71..756f9789 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "disspacex", - "version": "3.7.3", + "version": "1.0.0b", "description": "✈ Join Discord: https://discord.gg/SNG3dh3MbR", "main": "index.js", "scripts": { @@ -10,14 +10,13 @@ "license": "MIT", "dependencies": { "@discordjs/voice": "^0.7.5", - "@distube/soundcloud": "^1.1.0", - "@distube/spotify": "^1.2.1", - "@distube/yt-dlp": "^1.1.3", + "@distube/soundcloud": "^1.2.1", + "@distube/spotify": "^1.3.2", "chalk": "^4.1.2", "common-tags": "^1.8.2", "delay": "^5.0.0", - "discord.js": "^13.6.0", - "distube": "^3.3.4", + "discord.js": "^14.1.2", + "distube": "^4.0.3", "dotenv": "^14.3.2", "ffmpeg-static": "^4.4.1", "figlet": "^1.5.2", diff --git a/structures/pagequeue.js b/structures/pagequeue.js index 71532c77..8de30c76 100644 --- a/structures/pagequeue.js +++ b/structures/pagequeue.js @@ -1,18 +1,18 @@ -const { MessageActionRow, MessageButton } = require('discord.js') +const { ActionRowBuilder, ButtonBuilder, ButtonStyle } = require('discord.js') module.exports = async (client, message, pages, timeout, queueLength, queueDuration) => { if (!message && !message.channel) throw new Error('Channel is inaccessible.'); if (!pages) throw new Error('Pages are not given.'); - const row1 = new MessageButton() + const row1 = new ButtonBuilder() .setCustomId('back') .setLabel('⬅') - .setStyle('SECONDARY') - const row2 = new MessageButton() + .setStyle(ButtonStyle.Secondary) + const row2 = new ButtonBuilder() .setCustomId('next') .setLabel('➡') - .setStyle('SECONDARY') - const row = new MessageActionRow() + .setStyle(ButtonStyle.Secondary) + const row = new ActionRowBuilder() .addComponents(row1, row2) let page = 0; @@ -32,7 +32,7 @@ module.exports = async (client, message, pages, timeout, queueLength, queueDurat curPage.edit({ embeds: [pages[page].setFooter({ text: `Page • ${page + 1}/${pages.length} | ${queueLength} • Songs | ${queueDuration} • Total duration`})], components: [row] }) }); collector.on('end', () => { - const disabled = new MessageActionRow() + const disabled = new ActionRowBuilder() .addComponents(row1.setDisabled(true), row2.setDisabled(true)) curPage.edit({ embeds: [pages[page].setFooter({ text: `Page • ${page + 1}/${pages.length} | ${queueLength} • Songs | ${queueDuration} • Total duration`})], components: [disabled] }) });