SyntaxIsHere

Untitled

Oct 14th, 2018
65
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 2.46 KB | None | 0 0
  1. const Discord = require("discord.js");
  2. const ms = require("ms");
  3.  
  4. module.exports.run = async (bot, message, args) => {
  5.  
  6.  
  7. if (!message.member.hasPermission("MANAGE_MESSAGES")) return message.reply("No can do.");
  8. if (args[0] == "help") {
  9. message.reply("Usage: sy.tempmute <user> <1s/m/h/d>");
  10. return;
  11. }
  12. let tomute = message.guild.member(message.mentions.users.first() || message.guild.members.get(args[0]));
  13. if (!tomute) return message.reply("Please Give A User");
  14. if (tomute.hasPermission("MANAGE_MESSAGES")) return message.reply("I Cannot Mute This User");
  15. let reason = args.slice(2).join(" ");
  16. if (!reason) return message.reply("Please Give A Reason");
  17.  
  18. let muterole = message.guild.roles.find(`name`, "muted");
  19. //start of create role
  20. if (!muterole) {
  21. try {
  22. muterole = await message.guild.createRole({
  23. name: "muted",
  24. color: "#000000",
  25. permissions: []
  26. })
  27. message.guild.channels.forEach(async (channel, id) => {
  28. await channel.overwritePermissions(muterole, {
  29. SEND_MESSAGES: false,
  30. ADD_REACTIONS: false
  31. });
  32. });
  33. } catch (e) {
  34. console.log(e.stack);
  35. }
  36. }
  37. //end of create role
  38. let mutetime = args[1];
  39. if (!mutetime) return message.reply("Please Give A Time");
  40.  
  41. message.delete().catch(O_o => {});
  42.  
  43. try {
  44. await tomute.send(`Hello, You Have Been Muted For ${mutetime}`)
  45. } catch (e) {
  46. message.channel.send(`User Muted For ${mutetime}`)
  47. }
  48.  
  49. let muteembed = new Discord.RichEmbed()
  50. .setDescription(`Muted By ${message.author}`)
  51. .setColor("RANDOM")
  52. .addField("User Muted:", tomute)
  53. .addField("Muted In The Channel", message.channel)
  54. .addField("Muted At", message.createdAt)
  55. .addField("Mute Time", mutetime)
  56. .addField("Reason", reason);
  57.  
  58. let incidentschannel = message.guild.channels.find(`name`, "mod-log");
  59. if (!incidentschannel) return message.reply("Cant Find Mod-Log");
  60. incidentschannel.send(muteembed);
  61. message.channel.send(`<@${tomute.id}> Has Been Muted For ${mutetime}`)
  62. await (tomute.addRole(muterole.id));
  63.  
  64. setTimeout(function() {
  65. tomute.removeRole(muterole.id);
  66. message.channel.send(`<@${tomute.id}> Has Been Unmuted !`);
  67. }, ms(mutetime));
  68. }
Add Comment
Please, Sign In to add comment