const { MessageEmbed } = require('discord.js') const { promptMessage } = require('../../handler/function') module.exports = { name: ">kick", usage: "<@tag> / ", description: "Kicks a user", run : async (client, message, args) => { let user = message.mentions.members.first() || message.guild.members.cache.get(args[0]) const roleColor = message.guild.me.displayHexColor === '#000000' ? '#ffffff' : message.guild.me.displayHexColor; const newPerms = new MessageEmbed() .setTitle(' You don\'t have permissions to use this command') .setColor('RED') if(!message.member.hasPermission('KICK_MEMBERS')) return message.channel.send(newPerms); else { let member = message.mentions.members.first() || message.guild.members.cache.get(args[0]) if(member) { const promptEmbed = new MessageEmbed() .setColor("GREEN") .setAuthor(`This verification becomes invalid after 30s.`) .setDescription(`Do you want to ban **${member.user.tag}**?\nReason: ** ${args.slice(1).join(" ")}** `) .setThumbnail(member.user.displayAvatarURL({ dynamic: true })) await message.channel.send(promptEmbed).then(async msg => { const embed = new MessageEmbed() .setColor(roleColor) .setTitle("* Kicked.*") .setDescription(`**User** :${member.user.tag}\n**ID** : ${user.id}\n**Reason** : ${args.slice(1).join(" ")}`) .setThumbnail(member.user.displayAvatarURL({ dynamic: true })) .setFooter(`Action performed by ${message.author.tag}`,message.author.displayAvatarURL({ dynamic: true })) const reason = new MessageEmbed() .setColor('RED') .setTitle(`Kicked from ${message.guild.name}`) .setDescription(`Reason : ${args.slice(1).join(" ")}`) const emoji = await promptMessage(msg, message.author, 30, ["737707220451459112", "737707220502052905"]); if (emoji == "737707220451459112") { msg.delete(); await user.send(reason) await member.kick() message.channel.send(embed) .catch(err => { if (err) return message.channel.send(`Well.... the ban didn't work out. Here's the error ${err}`) }); }else if (emoji == "737707220502052905") { msg.delete(); message.reply('Ban is cancelled') .then(m => m.delete(10000)); } }) } } } }