mirror of
				https://github.com/warengroup/eximiabots-radiox.git
				synced 2025-10-31 22:21:34 +00:00 
			
		
		
		
	Discord.js V14 compatibility
This commit is contained in:
		| @@ -1,4 +1,4 @@ | |||||||
| import Discord, { Client, Collection } from "discord.js"; | import { Client, Collection, IntentsBitField } from "discord.js"; | ||||||
| import Datastore from "./client/classes/Datastore.js"; | import Datastore from "./client/classes/Datastore.js"; | ||||||
| import Radio from "./client/classes/Radio.js"; | import Radio from "./client/classes/Radio.js"; | ||||||
| import Stations from "./client/classes/Stations.js"; | import Stations from "./client/classes/Stations.js"; | ||||||
| @@ -12,7 +12,7 @@ import path from "path"; | |||||||
|  |  | ||||||
| const events = "./client/events/"; | const events = "./client/events/"; | ||||||
|  |  | ||||||
| const GatewayIntents = new Discord.IntentsBitField(); | const GatewayIntents = new IntentsBitField(); | ||||||
| GatewayIntents.add( | GatewayIntents.add( | ||||||
|     1 << 0, // GUILDS |     1 << 0, // GUILDS | ||||||
|     1 << 7, // GUILD_VOICE_STATES |     1 << 7, // GUILD_VOICE_STATES | ||||||
|   | |||||||
| @@ -1,4 +1,4 @@ | |||||||
| import Discord from "discord.js"; | import { EmbedBuilder } from "discord.js"; | ||||||
|  |  | ||||||
| module.exports = { | module.exports = { | ||||||
|     name: 'bug', |     name: 'bug', | ||||||
| @@ -10,7 +10,7 @@ module.exports = { | |||||||
|         message.bugTitle = client.messages.bugTitle.replace("%client.user.username%", client.user.username); |         message.bugTitle = client.messages.bugTitle.replace("%client.user.username%", client.user.username); | ||||||
|         message.bugDescription = client.messages.bugDescription.replace("%client.config.supportGuild%", client.config.supportGuild); |         message.bugDescription = client.messages.bugDescription.replace("%client.config.supportGuild%", client.config.supportGuild); | ||||||
|  |  | ||||||
|         const embed = new Discord.MessageEmbed() |         const embed = new EmbedBuilder() | ||||||
|             .setTitle(message.bugTitle) |             .setTitle(message.bugTitle) | ||||||
|             .setThumbnail("https://cdn.discordapp.com/emojis/" + client.messageEmojis["logo"].replace(/[^0-9]+/g, '')) |             .setThumbnail("https://cdn.discordapp.com/emojis/" + client.messageEmojis["logo"].replace(/[^0-9]+/g, '')) | ||||||
|             .setColor(client.config.embedColor) |             .setColor(client.config.embedColor) | ||||||
|   | |||||||
| @@ -1,4 +1,4 @@ | |||||||
| import Discord from "discord.js"; | import { EmbedBuilder } from "discord.js"; | ||||||
|  |  | ||||||
| module.exports = { | module.exports = { | ||||||
|     name: 'invite', |     name: 'invite', | ||||||
| @@ -7,7 +7,7 @@ module.exports = { | |||||||
|     execute(interaction, client) { |     execute(interaction, client) { | ||||||
|         let message = {}; |         let message = {}; | ||||||
|         message.inviteTitle = client.messages.inviteTitle.replace("%client.user.username%", client.user.username); |         message.inviteTitle = client.messages.inviteTitle.replace("%client.user.username%", client.user.username); | ||||||
|         const embed = new Discord.MessageEmbed() |         const embed = new EmbedBuilder() | ||||||
|             .setTitle(message.inviteTitle) |             .setTitle(message.inviteTitle) | ||||||
|             .setColor(client.config.embedColor) |             .setColor(client.config.embedColor) | ||||||
|             .setURL("https://discord.com/api/oauth2/authorize?client_id=" + client.user.id + "&permissions=2184465408&scope=applications.commands%20bot") //View Channels, Send Messages, Embed Links, Use External Emojis, Use Slash Commands, Connect, Speak, Use Voice Activity |             .setURL("https://discord.com/api/oauth2/authorize?client_id=" + client.user.id + "&permissions=2184465408&scope=applications.commands%20bot") //View Channels, Send Messages, Embed Links, Use External Emojis, Use Slash Commands, Connect, Speak, Use Voice Activity | ||||||
|   | |||||||
| @@ -1,4 +1,4 @@ | |||||||
| import Discord from "discord.js"; | import { EmbedBuilder } from "discord.js"; | ||||||
|  |  | ||||||
| module.exports = { | module.exports = { | ||||||
|     name: 'list', |     name: 'list', | ||||||
| @@ -26,7 +26,7 @@ module.exports = { | |||||||
|                 stations = stations.replace('**#**', `**${i + 1}.**`); |                 stations = stations.replace('**#**', `**${i + 1}.**`); | ||||||
|             } |             } | ||||||
|  |  | ||||||
|             let embed = new Discord.MessageEmbed() |             let embed = new EmbedBuilder() | ||||||
|                 .setTitle(client.messages.listTitle) |                 .setTitle(client.messages.listTitle) | ||||||
|                 .setThumbnail("https://cdn.discordapp.com/emojis/" + client.messageEmojis["list"].replace(/[^0-9]+/g, '')) |                 .setThumbnail("https://cdn.discordapp.com/emojis/" + client.messageEmojis["list"].replace(/[^0-9]+/g, '')) | ||||||
|                 .setColor(client.config.embedColor) |                 .setColor(client.config.embedColor) | ||||||
|   | |||||||
| @@ -1,4 +1,4 @@ | |||||||
| import Discord from "discord.js"; | import { ActionRowBuilder, EmbedBuilder, SelectMenuBuilder } from "discord.js"; | ||||||
| import Streamer from "../classes/Streamer.js"; | import Streamer from "../classes/Streamer.js"; | ||||||
| const _importDynamic = new Function('modulePath', 'return import(modulePath)'); | const _importDynamic = new Function('modulePath', 'return import(modulePath)'); | ||||||
| const fetch = (...args) => _importDynamic('node-fetch').then(({default: fetch}) => fetch(...args)); | const fetch = (...args) => _importDynamic('node-fetch').then(({default: fetch}) => fetch(...args)); | ||||||
| @@ -72,9 +72,9 @@ module.exports = { | |||||||
|             } |             } | ||||||
|         ); |         ); | ||||||
|  |  | ||||||
|         const menu = new Discord.MessageActionRow() |         const menu = new ActionRowBuilder() | ||||||
|         .addComponents( |         .addComponents( | ||||||
|             new Discord.MessageSelectMenu() |             new SelectMenuBuilder() | ||||||
|                 .setCustomId('maintenance') |                 .setCustomId('maintenance') | ||||||
|                 .setPlaceholder('Select action') |                 .setPlaceholder('Select action') | ||||||
|                 .addOptions(options) |                 .addOptions(options) | ||||||
| @@ -90,7 +90,7 @@ module.exports = { | |||||||
|  |  | ||||||
|         client.funcs.logger('Maintenance', options.find(option => option.value == action).label); |         client.funcs.logger('Maintenance', options.find(option => option.value == action).label); | ||||||
|  |  | ||||||
|         const embed = new Discord.MessageEmbed() |         const embed = new EmbedBuilder() | ||||||
|             .setTitle(client.messages.maintenanceTitle) |             .setTitle(client.messages.maintenanceTitle) | ||||||
|             .setColor(client.config.embedColor) |             .setColor(client.config.embedColor) | ||||||
|             .setDescription(options.find(option => option.value == action).label) |             .setDescription(options.find(option => option.value == action).label) | ||||||
|   | |||||||
| @@ -23,7 +23,7 @@ module.exports = { | |||||||
|             radio.textChannel = interaction.channel; |             radio.textChannel = interaction.channel; | ||||||
|             radio.startTime = date.getTime(); |             radio.startTime = date.getTime(); | ||||||
|  |  | ||||||
|             if(interaction.isCommand()) { |             if(interaction.isChatInputCommand()) { | ||||||
|                 client.funcs.play(client, interaction, interaction.guild, station); |                 client.funcs.play(client, interaction, interaction.guild, station); | ||||||
|             } |             } | ||||||
|             if(interaction.isButton()) { |             if(interaction.isButton()) { | ||||||
|   | |||||||
| @@ -1,4 +1,4 @@ | |||||||
| import Discord from "discord.js"; | import { EmbedBuilder } from "discord.js"; | ||||||
|  |  | ||||||
| module.exports = { | module.exports = { | ||||||
|     name: 'nowplaying', |     name: 'nowplaying', | ||||||
| @@ -18,7 +18,7 @@ module.exports = { | |||||||
|             message.nowplayingDescription = message.nowplayingDescription.replace("%radio.station.owner%" + "\n", radio.station.name != radio.station.owner ? radio.station.owner + "\n" : ""); |             message.nowplayingDescription = message.nowplayingDescription.replace("%radio.station.owner%" + "\n", radio.station.name != radio.station.owner ? radio.station.owner + "\n" : ""); | ||||||
|             message.nowplayingDescription = message.nowplayingDescription.replace("%client.funcs.msToTime(completed)%", client.funcs.msToTime(completed)); |             message.nowplayingDescription = message.nowplayingDescription.replace("%client.funcs.msToTime(completed)%", client.funcs.msToTime(completed)); | ||||||
|  |  | ||||||
|             const embed = new Discord.MessageEmbed() |             const embed = new EmbedBuilder() | ||||||
|                 .setTitle(client.messages.nowplayingTitle) |                 .setTitle(client.messages.nowplayingTitle) | ||||||
|                 .setThumbnail((radio.station.logo || "https://cdn.discordapp.com/emojis/" + client.messageEmojis["play"].replace(/[^0-9]+/g, ''))) |                 .setThumbnail((radio.station.logo || "https://cdn.discordapp.com/emojis/" + client.messageEmojis["play"].replace(/[^0-9]+/g, ''))) | ||||||
|                 .setColor(client.config.embedColor) |                 .setColor(client.config.embedColor) | ||||||
|   | |||||||
| @@ -1,3 +1,4 @@ | |||||||
|  | import { PermissionFlagsBits } from "discord.js"; | ||||||
| const { | const { | ||||||
|     getVoiceConnection, |     getVoiceConnection, | ||||||
|     joinVoiceChannel |     joinVoiceChannel | ||||||
| @@ -51,13 +52,13 @@ module.exports = { | |||||||
|             ephemeral: true |             ephemeral: true | ||||||
|         }); |         }); | ||||||
|         const permissions = voiceChannel.permissionsFor(interaction.client.user); |         const permissions = voiceChannel.permissionsFor(interaction.client.user); | ||||||
|         if (!permissions.has("CONNECT")) { |         if (!permissions.has(PermissionFlagsBits.Connect)) { | ||||||
|             return interaction.reply({ |             return interaction.reply({ | ||||||
|                 content: client.messageEmojis["error"] + client.messages.noPermsConnect, |                 content: client.messageEmojis["error"] + client.messages.noPermsConnect, | ||||||
|                 ephemeral: true |                 ephemeral: true | ||||||
|             }); |             }); | ||||||
|         } |         } | ||||||
|         if (!permissions.has("SPEAK")) { |         if (!permissions.has(PermissionFlagsBits.Speak)) { | ||||||
|             return interaction.reply({ |             return interaction.reply({ | ||||||
|                 content: client.messageEmojis["error"] + client.messages.noPermsSpeak, |                 content: client.messageEmojis["error"] + client.messages.noPermsSpeak, | ||||||
|                 ephemeral: true |                 ephemeral: true | ||||||
|   | |||||||
| @@ -23,7 +23,7 @@ module.exports = { | |||||||
|             radio.textChannel = interaction.channel; |             radio.textChannel = interaction.channel; | ||||||
|             radio.startTime = date.getTime(); |             radio.startTime = date.getTime(); | ||||||
|  |  | ||||||
|             if(interaction.isCommand()) { |             if(interaction.isChatInputCommand()) { | ||||||
|                 client.funcs.play(client, interaction, interaction.guild, station); |                 client.funcs.play(client, interaction, interaction.guild, station); | ||||||
|             } |             } | ||||||
|             if(interaction.isButton()) { |             if(interaction.isButton()) { | ||||||
|   | |||||||
| @@ -1,4 +1,4 @@ | |||||||
| import Discord from "discord.js"; | import { EmbedBuilder } from "discord.js"; | ||||||
|  |  | ||||||
|  |  | ||||||
| module.exports = { | module.exports = { | ||||||
| @@ -26,7 +26,7 @@ module.exports = { | |||||||
|             statistics = "[Open Dashboard](https://eximiabots.waren.io/radiox/" + interaction.guild.id + "/stats?info=" + Buffer.from(JSON.stringify(currentGuild), 'utf8').toString('base64') + "&globalInfo=" + Buffer.from(JSON.stringify(global), 'utf8').toString('base64') + ")" + "\n"; |             statistics = "[Open Dashboard](https://eximiabots.waren.io/radiox/" + interaction.guild.id + "/stats?info=" + Buffer.from(JSON.stringify(currentGuild), 'utf8').toString('base64') + "&globalInfo=" + Buffer.from(JSON.stringify(global), 'utf8').toString('base64') + ")" + "\n"; | ||||||
|         } |         } | ||||||
|  |  | ||||||
|         const embed = new Discord.MessageEmbed() |         const embed = new EmbedBuilder() | ||||||
|             .setTitle(client.messages.statisticsTitle) |             .setTitle(client.messages.statisticsTitle) | ||||||
|             .setThumbnail("https://cdn.discordapp.com/emojis/" + client.messageEmojis["statistics"].replace(/[^0-9]+/g, '')) |             .setThumbnail("https://cdn.discordapp.com/emojis/" + client.messageEmojis["statistics"].replace(/[^0-9]+/g, '')) | ||||||
|             .setColor(client.config.embedColor) |             .setColor(client.config.embedColor) | ||||||
|   | |||||||
| @@ -1,4 +1,4 @@ | |||||||
| import Discord from "discord.js"; | import { EmbedBuilder } from "discord.js"; | ||||||
|  |  | ||||||
| module.exports = { | module.exports = { | ||||||
|     name: 'status', |     name: 'status', | ||||||
| @@ -10,15 +10,17 @@ module.exports = { | |||||||
|         message.statusTitle = client.messages.statusTitle.replace("%client.user.username%", client.user.username); |         message.statusTitle = client.messages.statusTitle.replace("%client.user.username%", client.user.username); | ||||||
|         let uptime = client.funcs.msToTime(client.uptime); |         let uptime = client.funcs.msToTime(client.uptime); | ||||||
|  |  | ||||||
|         const embed = new Discord.MessageEmbed() |         const embed = new EmbedBuilder() | ||||||
|             .setTitle(message.statusTitle) |             .setTitle(message.statusTitle) | ||||||
|             .setThumbnail("https://cdn.discordapp.com/emojis/" + client.messageEmojis["logo"].replace(/[^0-9]+/g, '')) |             .setThumbnail("https://cdn.discordapp.com/emojis/" + client.messageEmojis["logo"].replace(/[^0-9]+/g, '')) | ||||||
|             .setColor(client.config.embedColor) |             .setColor(client.config.embedColor) | ||||||
|             .addField(client.messages.statusField1, uptime, false) |             .addFields( | ||||||
|             .addField(client.messages.statusField2, client.config.version, false) |                 { name: client.messages.statusField1, value: uptime }, | ||||||
|             .addField(client.messages.statusField3, Date.now() - interaction.createdTimestamp + "ms", false) |                 { name: client.messages.statusField2, value: client.config.version }, | ||||||
|             .addField(client.messages.statusField4, client.ws.ping + "ms", false) |                 { name: client.messages.statusField3, value: Date.now() - interaction.createdTimestamp + "ms" }, | ||||||
|             .addField(client.messages.statusField5, client.config.hostedBy, false) |                 { name: client.messages.statusField4, value: client.ws.ping }, | ||||||
|  |                 { name: client.messages.statusField5, value: client.config.hostedBy }, | ||||||
|  |             ) | ||||||
|             .setImage('https://waren.io/berriabot-temp-sa7a36a9xm6837br/images/empty-3.png') |             .setImage('https://waren.io/berriabot-temp-sa7a36a9xm6837br/images/empty-3.png') | ||||||
|             .setFooter({ |             .setFooter({ | ||||||
|                 text: client.messages.footerText, |                 text: client.messages.footerText, | ||||||
|   | |||||||
| @@ -1,4 +1,4 @@ | |||||||
| import Discord from "discord.js"; | import { EmbedBuilder } from "discord.js"; | ||||||
|  |  | ||||||
| module.exports = { | module.exports = { | ||||||
|     name: 'stop', |     name: 'stop', | ||||||
| @@ -11,11 +11,14 @@ module.exports = { | |||||||
|             radio.connection?.destroy(); |             radio.connection?.destroy(); | ||||||
|             client.funcs.logger('Radio', interaction.guild.id + " / " + 'Stop'); |             client.funcs.logger('Radio', interaction.guild.id + " / " + 'Stop'); | ||||||
|  |  | ||||||
|             const embed = new Discord.MessageEmbed() |             const embed = new EmbedBuilder() | ||||||
|                 .setTitle(client.user.username) |                 .setTitle(client.user.username) | ||||||
|                 .setThumbnail("https://cdn.discordapp.com/emojis/" + client.messageEmojis["stop"].replace(/[^0-9]+/g, '')) |                 .setThumbnail("https://cdn.discordapp.com/emojis/" + client.messageEmojis["stop"].replace(/[^0-9]+/g, '')) | ||||||
|                 .setColor(client.config.embedColor) |                 .setColor(client.config.embedColor) | ||||||
|                 .addField(client.messages.nowplayingTitle, "-", true) |                 .addFields({ | ||||||
|  |                     name: client.messages.nowplayingTitle, | ||||||
|  |                     value: "-" | ||||||
|  |                 }) | ||||||
|                 .setImage('https://waren.io/berriabot-temp-sa7a36a9xm6837br/images/empty-3.png') |                 .setImage('https://waren.io/berriabot-temp-sa7a36a9xm6837br/images/empty-3.png') | ||||||
|                 .setFooter({ |                 .setFooter({ | ||||||
|                     text: client.messages.footerText, |                     text: client.messages.footerText, | ||||||
|   | |||||||
| @@ -1,16 +1,18 @@ | |||||||
|  | import { PermissionFlagsBits } from "discord.js"; | ||||||
|  |  | ||||||
| module.exports = { | module.exports = { | ||||||
|     name: 'interactionCreate', |     name: 'interactionCreate', | ||||||
|     async execute(client, interaction) { |     async execute(client, interaction) { | ||||||
|  |  | ||||||
|         const permissions = interaction.channel.permissionsFor(interaction.client.user); |         const permissions = interaction.channel.permissionsFor(interaction.client.user); | ||||||
|         if (!permissions.has('VIEW_CHANNEL')) return; |         if (!permissions.has(PermissionFlagsBits.ViewChannel)) return; | ||||||
|  |  | ||||||
|         if (!permissions.has('EMBED_LINKS')) return interaction.reply({ |         if (!permissions.has(PermissionFlagsBits.EmbedLinks)) return interaction.reply({ | ||||||
|             content: client.messageEmojis["error"] + client.messages.noPermsEmbed, |             content: client.messageEmojis["error"] + client.messages.noPermsEmbed, | ||||||
|             ephemeral: true |             ephemeral: true | ||||||
|         }); |         }); | ||||||
|  |  | ||||||
|         if(interaction.isCommand()){ |         if(interaction.isChatInputCommand()){ | ||||||
|             const commandName = interaction.commandName; |             const commandName = interaction.commandName; | ||||||
|             const command = client.commands.get(commandName); |             const command = client.commands.get(commandName); | ||||||
|             if (!command) return; |             if (!command) return; | ||||||
|   | |||||||
| @@ -1,4 +1,5 @@ | |||||||
| import Discord from "discord.js"; | import { EmbedBuilder, PermissionFlagsBits } from "discord.js"; | ||||||
|  |  | ||||||
| module.exports = { | module.exports = { | ||||||
|     name: 'messageCreate', |     name: 'messageCreate', | ||||||
|     async execute(client, message) { |     async execute(client, message) { | ||||||
| @@ -25,13 +26,13 @@ module.exports = { | |||||||
|         const command = client.commands.get(commandName) || client.commands.find(cmd => cmd.aliases && cmd.aliases.includes(commandName)); |         const command = client.commands.get(commandName) || client.commands.find(cmd => cmd.aliases && cmd.aliases.includes(commandName)); | ||||||
|         if (!command && message.content !== `${prefix}`) return; |         if (!command && message.content !== `${prefix}`) return; | ||||||
|         const permissions = message.channel.permissionsFor(message.client.user); |         const permissions = message.channel.permissionsFor(message.client.user); | ||||||
|         if (!permissions.has('EMBED_LINKS')) return message.channel.send(client.messages.noPermsEmbed); |         if (!permissions.has(PermissionFlagsBits.EmbedLinks)) return message.channel.send(client.messages.noPermsEmbed); | ||||||
|         try { |         try { | ||||||
|             let newMessage = {}; |             let newMessage = {}; | ||||||
|  |  | ||||||
|             newMessage.messageCommandsDeprecatedTitle = client.messages.messageCommandsDeprecatedTitle.replace("%client.user.username%", client.user.username); |             newMessage.messageCommandsDeprecatedTitle = client.messages.messageCommandsDeprecatedTitle.replace("%client.user.username%", client.user.username); | ||||||
|  |  | ||||||
|             const embed = new Discord.MessageEmbed() |             const embed = new EmbedBuilder() | ||||||
|                 .setTitle(newMessage.messageCommandsDeprecatedTitle) |                 .setTitle(newMessage.messageCommandsDeprecatedTitle) | ||||||
|                 .setThumbnail("https://cdn.discordapp.com/emojis/" + client.messageEmojis["logo"].replace(/[^0-9]+/g, '')) |                 .setThumbnail("https://cdn.discordapp.com/emojis/" + client.messageEmojis["logo"].replace(/[^0-9]+/g, '')) | ||||||
|                 .setColor(client.config.embedColor) |                 .setColor(client.config.embedColor) | ||||||
|   | |||||||
| @@ -1,3 +1,4 @@ | |||||||
|  | import { PermissionFlagsBits } from "discord.js"; | ||||||
| const { | const { | ||||||
|     getVoiceConnection, |     getVoiceConnection, | ||||||
|     joinVoiceChannel |     joinVoiceChannel | ||||||
| @@ -22,7 +23,7 @@ module.exports = { | |||||||
|             } |             } | ||||||
|  |  | ||||||
|             const newPermissions = newState.channel.permissionsFor(newState.client.user); |             const newPermissions = newState.channel.permissionsFor(newState.client.user); | ||||||
|             if (!newPermissions.has("CONNECT") || !newPermissions.has("SPEAK") || !newPermissions.has("VIEW_CHANNEL")) { |             if (!newPermissions.has(PermissionFlagsBits.Connect) || !newPermissions.has(PermissionFlagsBits.Speak) || !newPermissions.has(PermissionFlagsBits.ViewChannel)) { | ||||||
|                 try { |                 try { | ||||||
|                     setTimeout( |                     setTimeout( | ||||||
|                         async () => ( |                         async () => ( | ||||||
|   | |||||||
| @@ -1,7 +1,6 @@ | |||||||
| module.exports = function check(client, interaction, command) { | module.exports = function check(client, interaction, command) { | ||||||
|     let message = {}; |     let message = {}; | ||||||
|     const radio = client.radio.get(interaction.guild.id); |     const radio = client.radio.get(interaction.guild.id); | ||||||
|     const permissions = interaction.channel.permissionsFor(interaction.user); |  | ||||||
|     if(client.config.maintenanceMode){ |     if(client.config.maintenanceMode){ | ||||||
|         interaction.reply({ |         interaction.reply({ | ||||||
|             content: client.messageEmojis["error"] + client.messages.maintenance, |             content: client.messageEmojis["error"] + client.messages.maintenance, | ||||||
|   | |||||||
| @@ -1,4 +1,4 @@ | |||||||
| import Discord from "discord.js"; | import { ActionRowBuilder, SelectMenuBuilder } from "discord.js"; | ||||||
|  |  | ||||||
| module.exports = function listStations(client, interaction){ | module.exports = function listStations(client, interaction){ | ||||||
|     let stations = new Array(); |     let stations = new Array(); | ||||||
| @@ -14,9 +14,9 @@ module.exports = function listStations(client, interaction){ | |||||||
|         options.push(station); |         options.push(station); | ||||||
|     }); |     }); | ||||||
|  |  | ||||||
|     const menu = new Discord.MessageActionRow() |     const menu = new ActionRowBuilder() | ||||||
|         .addComponents( |         .addComponents( | ||||||
|             new Discord.MessageSelectMenu() |             new SelectMenuBuilder() | ||||||
|                 .setCustomId('play') |                 .setCustomId('play') | ||||||
|                 .setPlaceholder('Nothing selected') |                 .setPlaceholder('Nothing selected') | ||||||
|                 .addOptions(options) |                 .addOptions(options) | ||||||
|   | |||||||
| @@ -1,4 +1,4 @@ | |||||||
| import Discord from "discord.js"; | import { ActionRowBuilder, ButtonBuilder, ButtonStyle, EmbedBuilder } from "discord.js"; | ||||||
|  |  | ||||||
| module.exports = async function play(client, interaction, guild, station) { | module.exports = async function play(client, interaction, guild, station) { | ||||||
|     let message = {}; |     let message = {}; | ||||||
| @@ -13,47 +13,50 @@ module.exports = async function play(client, interaction, guild, station) { | |||||||
|     message.nowplayingDescription = message.nowplayingDescription.replace("**", ""); |     message.nowplayingDescription = message.nowplayingDescription.replace("**", ""); | ||||||
|     message.nowplayingDescription = message.nowplayingDescription.replace("**", ""); |     message.nowplayingDescription = message.nowplayingDescription.replace("**", ""); | ||||||
|  |  | ||||||
|     const embed = new Discord.MessageEmbed() |     const embed = new EmbedBuilder() | ||||||
|         .setTitle(client.user.username) |         .setTitle(client.user.username) | ||||||
|         .setThumbnail((radio.station.logo || "https://cdn.discordapp.com/emojis/" + client.messageEmojis["play"].replace(/[^0-9]+/g, ''))) |         .setThumbnail((radio.station.logo || "https://cdn.discordapp.com/emojis/" + client.messageEmojis["play"].replace(/[^0-9]+/g, ''))) | ||||||
|         .setColor(client.config.embedColor) |         .setColor(client.config.embedColor) | ||||||
|         .addField(client.messages.nowplayingTitle, message.nowplayingDescription, true) |         .addFields({ | ||||||
|  |             name: client.messages.nowplayingTitle, | ||||||
|  |             value: message.nowplayingDescription | ||||||
|  |         }) | ||||||
|         .setImage('https://waren.io/berriabot-temp-sa7a36a9xm6837br/images/empty-3.png') |         .setImage('https://waren.io/berriabot-temp-sa7a36a9xm6837br/images/empty-3.png') | ||||||
|         .setFooter({ |         .setFooter({ | ||||||
|             text: client.messages.footerText, |             text: client.messages.footerText, | ||||||
|             iconURL: "https://cdn.discordapp.com/emojis/" + client.messageEmojis["eximiabots"].replace(/[^0-9]+/g, '') |             iconURL: "https://cdn.discordapp.com/emojis/" + client.messageEmojis["eximiabots"].replace(/[^0-9]+/g, '') | ||||||
|         }); |         }); | ||||||
|  |  | ||||||
|     const buttons = new Discord.MessageActionRow() |     const buttons = new ActionRowBuilder() | ||||||
|         .addComponents( |         .addComponents( | ||||||
|             new Discord.MessageButton() |             new ButtonBuilder() | ||||||
|                 .setCustomId('list') |                 .setCustomId('list') | ||||||
|                 .setEmoji(client.messageEmojis["list"]) |                 .setEmoji(client.messageEmojis["list"]) | ||||||
|                 .setStyle('SECONDARY') |                 .setStyle(ButtonStyle.Secondary) | ||||||
|         ) |         ) | ||||||
|         .addComponents( |         .addComponents( | ||||||
|             new Discord.MessageButton() |             new ButtonBuilder() | ||||||
|                 .setCustomId('prev') |                 .setCustomId('prev') | ||||||
|                 .setEmoji(client.messageEmojis["prev"]) |                 .setEmoji(client.messageEmojis["prev"]) | ||||||
|                 .setStyle('SECONDARY') |                 .setStyle(ButtonStyle.Secondary) | ||||||
|         ) |         ) | ||||||
|         .addComponents( |         .addComponents( | ||||||
|             new Discord.MessageButton() |             new ButtonBuilder() | ||||||
|                 .setCustomId('stop') |                 .setCustomId('stop') | ||||||
|                 .setEmoji(client.messageEmojis["stop"]) |                 .setEmoji(client.messageEmojis["stop"]) | ||||||
|                 .setStyle('SECONDARY') |                 .setStyle(ButtonStyle.Secondary) | ||||||
|         ) |         ) | ||||||
|         .addComponents( |         .addComponents( | ||||||
|             new Discord.MessageButton() |             new ButtonBuilder() | ||||||
|                 .setCustomId('next') |                 .setCustomId('next') | ||||||
|                 .setEmoji(client.messageEmojis["next"]) |                 .setEmoji(client.messageEmojis["next"]) | ||||||
|                 .setStyle('SECONDARY') |                 .setStyle(ButtonStyle.Secondary) | ||||||
|         ) |         ) | ||||||
|         .addComponents( |         .addComponents( | ||||||
|             new Discord.MessageButton() |             new ButtonBuilder() | ||||||
|                 .setCustomId('statistics') |                 .setCustomId('statistics') | ||||||
|                 .setEmoji(client.messageEmojis["statistics"]) |                 .setEmoji(client.messageEmojis["statistics"]) | ||||||
|                 .setStyle('SECONDARY') |                 .setStyle(ButtonStyle.Secondary) | ||||||
|         ); |         ); | ||||||
|  |  | ||||||
|     if(!radio.message){ |     if(!radio.message){ | ||||||
|   | |||||||
		Reference in New Issue
	
	Block a user
	 Christer Warén
					Christer Warén