Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- const Discord = require("discord.js");
- const ms = require("ms");
- module.exports.run = async (bot, message, args) => {
- message.delete();
- if (!message.member.hasPermission("MANAGE_MESSAGES"))
- return message.channel.send({
- embed: {
- color: Math.floor(Math.random() * 16777214) + 1,
- description: `${message.author} ❗ You don't have permissions.`
- }
- });
- let mutee = message.mentions.members.first();
- if (!mutee)
- return message.channel.send(`Please Choose a specific user`);
- if (!message.member.hasPermission("MANAGE_MESSAGES, ADMINISTRATOR"))
- return message.channel.send(`You can't prison this member.`);
- let notime = args[1];
- if (!notime)
- return message.channel.send(`Please set time for the prison.`);
- let noreason = args.slice(1).join(" ");
- if (!noreason)
- return message.channel.send(`Please add a reason to the prison.`);
- let toprison =
- message.guild.members.find(m => m.toString() == args[0]) ||
- message.guild.members.get(args[0]);
- if (!toprison) return message.channel.send(mutee);
- if (toprison.hasPermissions("MANAGE_ROLES"))
- return message.channel.send(`You don't have permissions.`);
- let prisonrole = message.guild.roles.find(role => role.name == "Prison");
- if (!prisonrole) {
- try {
- prisonrole = await message.guild.createRole({
- name: "Prison",
- color: "#000000",
- permissions: []
- });
- message.guild.channel.forEach(async (channel, id) => {
- await channel.overwritePermissions(prisonrole, {
- SEND_MESSAGES: true,
- ADD_REACTIONS: false
- });
- });
- } catch (e) {
- console.log(e.stack);
- }
- }
- let prisontime = args[1];
- if (!prisontime) return message.channel.send(notime);
- if (isNaN(ms(prisontime))) return message.channel.send(notime);
- let reason = args.slice(2).join(" ");
- if (!reason) return message.channel.send(noreason);
- let prisonembed = new Discord.RichEmbed()
- .setAuthor(toprison.user.username, toprison.user.displayAvatarURL)
- .setColor("DARK_GOLD")
- .setTitle("**Prison**")
- .addField("Prisoned User", `${toprison} with ID ${toprison.id}`)
- .addField("Prisoned In", message.channel)
- .addField("Length", prisontime)
- .addField("Reason", reason);
- let unprisonembed = new Discord.RichEmbed()
- .setAuthor(toprison.user.username, toprison.user.displayAvatarURL)
- .setTitle("**UnPrison**")
- .setColor("GREEN")
- .addField("UnPrisoned User", toprison)
- .addField("Reason", "Auto");
- let logchannel = message.guild.channels.get("638413285838028822");
- await toprison.addRole(prisonrole.id).then(() => {
- message.delete();
- mutee.send(`Hey, you have been prisoned in ${message.guild.name} for ${reason}`).catch(err => console.log(err));
- });;;
- await toprison.removeRole("425363744340836373");
- logchannel.send(prisonembed);
- setTimeout(async function() {
- logchannel.send(unprisonembed);
- await toprison.removeRole(prisonrole.id).then(() => {
- message.delete();
- mutee.send("Hey, you have been unprisoned in ${message.guild.name}").catch(err => console.log(err));;
- });;
- await toprison.addRole("425363744340836373");
- }, ms(prisontime));
- };
- exports.conf = {
- enable: true,
- aliases: []
- };
- exports.help = {
- name: "prison",
- usage: "prison <user> <time> <reason>",
- desc: "Send user to prison with length time"
- };
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement