const { SlashCommandBuilder, PermissionFlagsBits } = require('discord.js'); const { color } = require('../config/options.json'); module.exports = { name: 'slowmode', description: 'Set the slowmode of a channel.', type: 'slash', data: new SlashCommandBuilder() .setName('slowmode') .setDescription('Set the slowmode of a channel.') .addIntegerOption(option => option .setName('seconds') .setDescription('The amount of seconds to set the slowmode to.')) .addChannelOption(option => option .setName('channel') .setDescription('The channel to set the slowmode of.')) .setDefaultMemberPermissions(PermissionFlagsBits.Administrator) .setDMPermission(false), async execute(interaction) { await interaction.deferReply({ ephermeral: true }); const seconds = interaction.options.getInteger('seconds') ?? 5 const channel = interaction.options.getChannel('channel') ?? interaction.channel const embedColor = Number(color.replace("#", "0x")); if (seconds > 21600) { await channel.setRateLimitPerUser(21600) await interaction.editReply({ embeds: [{ description: `Set the slowmode of ${channel} to 21600 seconds.`, color: embedColor, footer: { text: interaction.guild.name + " | Developed by: @Taken#0001", icon_url: interaction.guild.iconURL({ dynamic: true }) } }] }) return } await interaction.editReply({ embeds: [{ description: `Set the slowmode of ${channel} to ${seconds} seconds.`, color: embedColor, footer: { text: interaction.guild.name + " | Developed by: @Taken#0001", icon_url: interaction.guild.iconURL({ dynamic: true }) } }] }) await channel.setRateLimitPerUser(seconds) } }