Create mute.js
This commit is contained in:
parent
940898d14f
commit
9f16cf9f17
1 changed files with 43 additions and 0 deletions
43
commands/Moderation/mute.js
Normal file
43
commands/Moderation/mute.js
Normal file
|
@ -0,0 +1,43 @@
|
|||
exports.run = async (client, message, args, level) => {
|
||||
const user = message.mentions.users.first();
|
||||
parseUser(message, user);
|
||||
const modlog = client.channels.find('name', 'mod-log');
|
||||
const caseNum = await client.caseNumber(client, modlog);
|
||||
const muteRole = client.guilds.get(message.guild.id).roles.find('name', 'muted');
|
||||
if (!modlog) return message.reply('I cannot find a mod-log channel').catch(console.error);
|
||||
if (!muteRole) return message.reply('I cannot find a mute role').catch(console.error);
|
||||
if (message.mentions.users.size < 1) return message.reply('You must mention someone to mute them.').catch(console.error);
|
||||
const reason = args.splice(1, args.length).join(' ') || `Awaiting moderator's input. Use ${settings.prefix}reason ${caseNum} <reason>.`;
|
||||
|
||||
const embed = new RichEmbed()
|
||||
.setColor(0x00AE86)
|
||||
.setTimestamp()
|
||||
.setDescription(`**Action:** Un/mute\n**Target:** ${user.tag}\n**Moderator:** ${message.author.tag}\n**Reason:** ${reason}`)
|
||||
.setFooter(`Case ${caseNum}`);
|
||||
|
||||
if (!message.guild.member(client.user).hasPermission('MANAGE_ROLES_OR_PERMISSIONS')) return message.reply('I do not have the correct permissions.').catch(console.error);
|
||||
|
||||
if (message.guild.member(user).roles.has(muteRole.id)) {
|
||||
message.guild.member(user).removeRole(muteRole).then(() => {
|
||||
client.channels.get(modlog.id).send({embed}).catch(console.error);
|
||||
});
|
||||
} else {
|
||||
message.guild.member(user).addRole(muteRole).then(() => {
|
||||
client.channels.get(modlog.id).send({embed}).catch(console.error);
|
||||
});
|
||||
}
|
||||
};
|
||||
|
||||
exports.conf = {
|
||||
enabled: true,
|
||||
guildOnly: true,
|
||||
aliases: ["unmute"],
|
||||
permLevel: "Moderator"
|
||||
};
|
||||
|
||||
exports.help = {
|
||||
name: "mute",
|
||||
category: "Moderation",
|
||||
description: "Mute or unmute a specified user.",
|
||||
usage: "mute <user> <reason>"
|
||||
};
|
Loading…
Reference in a new issue