Advertisement
Earthcomputer

permban.js

Jul 26th, 2018
436
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. var nick;
  2.  
  3. function suffixFilter(suffix) {
  4.     return suffix.length + nick.length + 1 <= 32;
  5. }
  6.  
  7. var BANNED_SUFFIXES = [
  8.     "(banned)",
  9.     "[b&]",
  10.     "(permbanned)",
  11.     "(ban later)",
  12.     "(banned for laziness)"
  13. ];
  14.  
  15. function printUsage() {
  16.     channel.message("```\n//permban <@user>\n```");
  17. }
  18.  
  19. var args = message.getContent().split(" ");
  20. if (args.length != 2) {
  21.     printUsage();
  22. } else {
  23.     var match = /^<@!?(\d+)>$/.exec(args[1]);
  24.     if (!match) {
  25.         printUsage();
  26.     } else {
  27.         var user = guild.getUser(match[1]);
  28.         if (!user) {
  29.             printUsage();
  30.         } else {
  31.             nick = user.getNickname() ? user.getNickname() : user.getName();
  32.             var suffixes = BANNED_SUFFIXES.filter(suffixFilter);
  33.             if (!suffixes) {
  34.                 channel.message("Unable to ban :(");
  35.             } else {
  36.                 var suffix = suffixes[Math.floor(Math.random() * suffixes.length)];
  37.                 if (!manager.nickname(user, nick + " " + suffix)) {
  38.                     channel.message("Cannot ban " + nick);
  39.                 } else {
  40.                     channel.message("Banned " + nick);
  41.                 }
  42.             }
  43.         }
  44.     }
  45. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement