Advertisement
ninja-gen

Slowmode.js

Feb 8th, 2020
349
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. const Discord = require("discord.js");
  2. const bot = new Discord.Client();
  3. const sql = require("sqlite");
  4. sql.open("./assets/guildsettings.sqlite");
  5. exports.run = (client, message, args) => {
  6.      if (!message.member.hasPermission("MANAGE_GUILD")) return message.channel.send("You're missing MANAGE_GUILD permission");
  7.      if (!message.guild.member(client.user).hasPermission('MANAGE_MESSAGES')) return message.reply('Sorry, i dont have the perms to do this cmd i need MANAGE_MESSAGES. :x:')
  8.      sql.get(`SELECT * FROM scores WHERE guildId ="${message.guild.id}"`).then(row => {
  9.          if (row.slowmode === "enabled") {
  10.              sql.run(`UPDATE scores SET slowmode = "disabled", casenumber = ${row.casenumber + 1} WHERE guildId = ${message.guild.id}`);
  11.              message.channel.send("Slow mode has been disabled")
  12.              message.channel.setRateLimitPerUser(0)
  13.                   let modlog = message.guild.channels.find('name', row.logschannel);
  14.                     const embed = new Discord.RichEmbed()
  15.                     .setColor(0x00A2E8)
  16.                     .setTitle("Case #" + row.casenumber + " | Action:  Slow Mode Disabled")
  17.                     .addField("Moderator", message.author.tag + " (ID: " + message.author.id + ")")
  18.                     .setFooter("Time used: " + message.createdAt.toDateString())
  19.                     if (!modlog) return;
  20.                     if (row.logsenabled === "disabled") return;
  21.                     return client.channels.get(modlog.id).send({embed});
  22.                 } else {
  23.                     const timetoset = parseInt(args[0])
  24.                     const prefixtouse = row.prefix
  25.                     const usage = new Discord.RichEmbed()
  26.                         .setColor(0x00A2E8)
  27.                         .setThumbnail(client.user.avatarURL)
  28.                         .setTitle("Command: " + prefixtouse + "slowmode")
  29.                         .addField("Usage", prefixtouse + "slowmode <seconds>")
  30.                         .addField("Example", prefixtouse + "slowmode 5")
  31.                         .setDescription("Description: " + "Enables slowmode in the current server and users can only send messages every x seconds");
  32.  
  33.                     if (isNaN(timetoset)) return message.channel.send(usage)
  34.                     if (timetoset.length < 1) return message.channel.send(usage)
  35.                     sql.run(`UPDATE scores SET slowmode = "enabled", slowmodetime = ${timetoset}, casenumber = ${row.casenumber + 1} WHERE guildId = ${message.guild.id}`);
  36.                      message.channel.send("Slow mode has been enabled with the time of " + timetoset + " seconds")
  37.                      message.channel.setRateLimitPerUser(timetoset)
  38.                       let modlog = message.guild.channels.find('name', row.logschannel);
  39.                     const embed = new Discord.RichEmbed()
  40.                     .setColor(0x00A2E8)
  41.                     .setTitle("Case #" + row.casenumber + " | Action:  Slow Mode Enabled")
  42.                     .addField("Moderator", message.author.tag + " (ID: " + message.author.id + ")")
  43.                     .addField("Time", timetoset, true)
  44.                     .setFooter("Time used: " + message.createdAt.toDateString())
  45.                     if (!modlog) return;
  46.                     if (row.logsenabled === "disabled") return;
  47.                     return client.channels.get(modlog.id).send({embed});
  48.  
  49.          }
  50.     })
  51. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement