SHARE
TWEET

Untitled

a guest Jun 18th, 2019 60 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.  
  4. const token = "ton token";
  5. const prefix = "ton préfixe"
  6. var listperm = ["CREATE_INSTANT_INVITE", "KICK_MEMBERS", "BAN_MEMBERS", "ADMINISTRATOR", "MANAGE_CHANNELS", "MANAGE_GUILD",
  7.     "ADD_REACTIONS", "VIEW_AUDIT_LOG", "VIEW_CHANNEL", "SEND_MESSAGES", "SEND_TTS_MESSAGES", "MANAGE_MESSAGES", "EMBED_LINKS", "ATTACH_FILES",
  8.     "READ_MESSAGE_HISTORY", "MENTION_EVERYONE", "USE_EXTERNAL_EMOJIS", "CONNECT", "SPEAK", "MUTE_MEMBERS", "DEAFEN_MEMBERS", "MOVE_MEMBERS",
  9.     "USE_VAD", "PRIORITY_SPEAKER", "CHANGE_NICKNAME", "MANAGE_NICKNAMES", "MANAGE_ROLES", "MANAGE_WEBHOOKS", "MANAGE_EMOJIS"
  10. ]
  11. function getmention(mention){
  12.     if (!mention) return;
  13.     if (mention.startsWith('<@') && mention.endsWith('>')) {
  14.         mention = mention.slice(2, -1);
  15.         if (mention.startsWith('!')) {
  16.             mention = mention.slice(1);
  17.         }
  18.         return bot.users.get(mention);
  19.     }
  20. }
  21.  
  22.  
  23.  
  24. bot.on("message", message => {
  25.     if (message.author.id != bot.user.id) return;
  26.     var args = message.content.split(/ +/);
  27.     switch (args[0]) {
  28.         case `${prefix}8ball`:
  29.         if (message.deletable) message.delete();
  30.             let arg = message.content.split(/ +/).slice(1);
  31.             if (!arg[0]) return;
  32.             const reponses = ["Oe", "Nan", "de fou", "Jsp frère", "Peut-être", "Evidemment", "Evidemment que non", "Comment peux-tu te poser là question?", "Biensur", "Effectivement", "anticonstitutionnellement"];
  33.             let embed = new discord.RichEmbed();
  34.             embed.setAuthor(bot.user.username, bot.user.avatarURL);
  35.             embed.addField(`Question : ${arg.join(" ")}❓`, `Reponse : **${reponses[Math.floor(Math.random()*reponses.length)]}**`);
  36.             embed.setColor("#010101");
  37.             embed.setTimestamp();
  38.             message.channel.send(embed).catch(console.error);
  39.             break;
  40.         case `${prefix}flip`:
  41.         if (message.deletable) message.delete();
  42.             const flip = ["Pile", "Face"];
  43.             let flipembed = new discord.RichEmbed()
  44.                 .setColor("#010101")
  45.                 .addField("FLIP", ` :moneybag: La piece affiche : **${flip[Math.floor(Math.random()*flip.length)]}**`);
  46.             message.channel.send(flipembed).catch(console.error);
  47.             break;
  48.         case `${prefix}ban`:
  49.         if (message.deletable) message.delete();
  50.             if (message.channel.type !== "text") return;
  51.             var mentions = args[1];
  52.             if(!message.guild.member(getmention(mentions)).bannable || !message.guild.member(bot.user).hasPermission("BAN_MEMBERS")) return;
  53.                     var raison = message.content.split(/ +/).slice(2).join(" ") || null;
  54.                     message.guild.member(getmention(mentions)).ban({
  55.                         reason: raison
  56.                     });
  57.             break;
  58.         case `${prefix}kick`:
  59.         if (message.deletable) message.delete();
  60.             if (message.channel.type !== "text") return;
  61.             var mentions = args[1];
  62.             if(!message.guild.member(getmention(mentions)).kickable || !message.guild.member(bot.user).hasPermission("KICK_MEMBERS")) return;
  63.                     var raison = message.content.split(/ +/).slice(2).join(" ") || null;
  64.                     message.guild.member(getmention(mentions)).kick({
  65.                         reason: raison
  66.                     });
  67.             break;
  68.         case `${prefix}unban`:
  69.         if (message.deletable) message.delete();
  70.             if (message.channel.type !== "text") return;
  71.             if (!args[1]) return;
  72.             if (!message.member.hasPermission("BAN_MEMBERS")) return;
  73.                     message.guild.fetchBans().then(ee => {
  74.                         ee.forEach(unbanmember => {
  75.                             if (unbanmember.id === args[1]) message.guild.unban(unbanmember).then(unbanmembere => message.channel.send(`${unbanmembere.tag} à été unban`).then(m => m.delete(3000)));
  76.                         });
  77.                     });
  78.             break;
  79.         case `${prefix}delchan`:
  80.         if (message.deletable) message.delete();
  81.             if (message.channel.type !== "text") return;
  82.             if (!args[1]) return;
  83.                 if (!message.member.hasPermission("MANAGE_CHANNELS")) return;
  84.                     let chanadel = message.guild.channels.get(args[1]);
  85.                     if(!chanadel) return;
  86.                     chanadel.delete().then(() => {
  87.                             if(message.channel.id != args[1])message.channel.send(`Le channel possédant l'id ${args[1]} a été supprimé`).then(m => m.delete(3000));
  88.                         });
  89.             break;
  90.         case `${prefix}createchan`:
  91.         if (message.deletable) message.delete();
  92.             if (message.channel.type !== "text") return;
  93.             if (!args[1]) return;
  94.             if (!args[2]) return;
  95.             if (!message.member.hasPermission("MANAGE_CHANNELS")) return;
  96.             if (message.guild.channels.size > 499) return;
  97.                 message.guild.createChannel(args[1], args[2]).catch(console.error);
  98.             break;
  99.         case `${prefix}roleperm`:
  100.         if (message.deletable) message.delete();
  101.             if (message.channel.type !== "text") return;
  102.             var arguments = message.content.split(/ +/).slice(2);
  103.             if (!arguments[0]) return;
  104.             if (!args[1]) return;
  105.             if (!message.guild.roles.find(x => x.name === arguments.join(" "))) return;
  106.             if (listperm.includes(args[1]) == false) return message.channel.send("Cette permission n'existe pas, faites !help perm").then(m => m.delete(1000));
  107.                 if (message.guild.roles.find(x => x.name === arguments.join(" ")).hasPermission(args[1])) return message.channel.send(`\`${arguments.join(" ")} \` has permission \` ${args[1]}\` : :white_check_mark:`).then(m => m.delete(3000));
  108.                 else  message.channel.send(`\`${arguments.join(" ")} \` has permission \` ${args[1]}\` : :x:`).then(m => m.delete(3000));
  109.             break;
  110.         case `${prefix}quialerole`:
  111.         if (message.deletable) message.delete();
  112.             var argse = message.content.split(/ +/).slice(1);
  113.             if (message.channel.type !== "text") return;
  114.             if (!argse[0]) return;
  115.             if (!message.guild.roles.find(x => x.name === argse.join(" "))) return;
  116.                 if(message.guild.members.filter(x => x.roles.find(x => x.name === argse.join(" "))).map(x => x.user.tag).toString().length < 1990)message.channel.send(`\`\`\`${message.guild.members.filter(x => x.roles.find(x => x.name === argse.join(" "))).map(x => x.user.tag)} \`\`\` has **${argse.join(" ")} role**`).then(m => m.delete(3000));
  117.             break;
  118.         case `${prefix}quialaperm`:
  119.             if (message.deletable) message.delete();
  120.             if (message.channel.type !== "text") return;
  121.             if (!args[1]) return;
  122.             if (listperm.includes(args[1]) == false) return message.channel.send("Cette permission n'existe pas, faites !help perm").then(m => m.delete(1000));
  123.             if(message.guild.members.filter(x => x.hasPermission(args[1])).map(x => x.user.tag).toString().length < 1990)message.channel.send(`\`\`\`${message.guild.members.filter(x => x.hasPermission(args[1])).map(x => x.user.tag)} \`\`\` has **${args[1]} permission**`).then(m => m.delete(3000))
  124.             break;
  125.         case `${prefix}streaming`:
  126.         if (message.deletable) message.delete();
  127.             let texte = message.content.split(/ +/).slice(1);
  128.             if(!texte[0]) return;
  129.             bot.user.setActivity(`${texte.join(" ")}`, {
  130.                     type: "STREAMING",
  131.                     url: 'https://www.twitch.tv/monstercat'
  132.                 }).then(() => message.channel.send(`🖥 | Streaming : \`${texte.join(" ")}\``).then(msg => msg.delete(3000)));
  133.             break;
  134.         case `${prefix}playing`:
  135.         if (message.deletable) message.delete();
  136.             let cc = message.content.split(/ +/).slice(1);
  137.             if (!cc[0]) return;
  138.                 bot.user.setActivity(`${cc.join(" ")}`, {
  139.                     type: "PLAYING"
  140.                 }).then(() => message.channel.send(`?? | Playing : \`${texte.join(" ")}\``).then(msg => msg.delete(3000)));
  141.             break;
  142.         case `${prefix}watching`:
  143.         if (message.deletable) message.delete();
  144.             let cce = message.content.split(/ +/).slice(1);
  145.             if (!cce[0]) return;
  146.                 bot.user.setActivity(`${cce.join(" ")}`, {
  147.                     type: "WATCHING"
  148.                 }).then(() => message.channel.send(`👁‍🗨 | Watching : \`${texte.join(" ")}\``).then(msg => msg.delete(3000)));
  149.             break;
  150.         case `${prefix}listening`:
  151.         if (message.deletable) message.delete();
  152.             let ccez = message.content.split(/ +/).slice(1);
  153.             if (!ccez[0]) return;
  154.                 bot.user.setActivity(`${ccez.join(" ")}`, {
  155.                     type: "LISTENING"
  156.                 }).then(() => message.channel.send(`👂 | Listening : \`${texte.join(" ")}\``).then(msg => msg.delete(3000)));
  157.             break;
  158.         case `${prefix}clear`:
  159.             let number = parseInt(args[1]) || 10;
  160.             if (message.deletable) message.delete();
  161.             if(!message.channel.fetchMessages({limit: number})) return;
  162.             message.channel.fetchMessages({
  163.                     limit: Math.min(number, 100, 200)
  164.                 })
  165.                 .then(messagedelet => {
  166.                     messagedelet.filter(x => x.author.id === bot.user.id && x.deletable == true).forEach(m => {
  167.                         m.delete().catch(console.error);
  168.                     })
  169.                 }).catch(console.error);
  170.             break;
  171.         case `${prefix}say`:
  172.         if (message.deletable) message.delete();
  173.             var coucouzer = message.content.split(/ +/).slice(1);
  174.             if (!coucouzer[0]) return;
  175.                 let sayembed = new discord.RichEmbed()
  176.                     .setColor("#010101")
  177.                     .setDescription(coucouzer.join(" "));
  178.                 message.channel.send(sayembed).catch(console.error);
  179.             break;
  180.     }
  181. })
  182.  
  183.  
  184. bot.on("message", message => {
  185.     if (message.author.id != bot.user.id) return;
  186.     var args = message.content.split(/ +/);
  187.     switch (args[0]) {
  188.         case `${prefix}help`:
  189.             var embed = new discord.RichEmbed();
  190.             if (args[1] != "moderation" && args[1] != "utiles" && args[1] != "fun" && args[1] != "perm") {
  191.                 embed.setColor("#010101");
  192.                 embed.setAuthor("Help douli - project", bot.user.avatarURL);
  193.                 embed.addField("[𝕮𝖔𝖒𝖒𝖆𝖓𝖉𝖊𝖘 **𝖋𝖚𝖓]** 🖥", `**\`${prefix}help fun\`**`);
  194.                 embed.addField("[𝕮𝖔𝖒𝖒𝖆𝖓𝖉𝖊𝖘 **𝖚𝖙𝖎𝖑𝖊𝖘]** 🖥", `**\`${prefix}help utiles\`**`);
  195.                 embed.addField("[𝕮𝖔𝖒𝖒𝖆𝖓𝖉𝖊𝖘 **𝖒𝖔𝖉𝖊𝖗𝖆𝖙𝖎𝖔𝖓]** 🖥", `**\`${prefix}help moderation\`**`);
  196.                
  197.                 embed.setTimestamp();
  198.                 embed.setThumbnail(bot.user.avatarURL);
  199.             } else if (args[1] === "moderation") {
  200.                 embed.setColor("#010101");
  201.                 embed.setAuthor("Help Modération douli - project", bot.user.avatarURL);
  202.                 embed.addField(`${prefix}ban`, `Utilisation : \`${prefix}ban @mentiondumembreaban raison\``);
  203.                 embed.addField(`${prefix}kick`, `Utilisation : \`${prefix}kick @mentiondumembreakick raison\``);
  204.                 embed.addField(`${prefix}unban`, `Utilisation : \`${prefix}unban iddumembreadeban\``);
  205.                 embed.addField(`${prefix}createchan`, `Utilisation : \`${prefix}createchan nomduchan type\` (Type = text ou voice)`);
  206.                 embed.addField(`${prefix}delchan`, `Utilisation : \`${prefix}delchan idduchan\``);
  207.                 embed.setTimestamp();
  208.                 embed.setThumbnail(bot.user.avatarURL);
  209.             } else if (args[1] === "fun") {
  210.                 embed.setColor("#010101");
  211.                 embed.setAuthor("Help Fun douli - project", bot.user.avatarURL);
  212.                 embed.addField(`${prefix}8ball`, `Utilisation : \`${prefix}8ball question\``);
  213.                 embed.addField(`${prefix}flip`, `Utilisation : \`${prefix}flip\``);
  214.                 embed.addField(`${prefix}say`, `Utilisation : \`${prefix}say message\``);
  215.                 embed.setTimestamp();
  216.                 embed.setThumbnail(bot.user.avatarURL);
  217.             } else if (args[1] === "utiles") {
  218.                 embed.setColor("#010101");
  219.                 embed.setAuthor("Help Utiles douli - project", bot.user.avatarURL);
  220.                 embed.addField(`${prefix}clear`, `Utilisation : \`${prefix}clear nombredemessage\``);
  221.                 embed.addField(`${prefix}watching`, `Utilisation : \`${prefix}watching messageamettreenstatus\``);
  222.                 embed.addField(`${prefix}listening`, `Utilisation : \`${prefix}listening messageamettreenstatus\``);
  223.                 embed.addField(`${prefix}playing`, `Utilisation : \`${prefix}playing messageamettreenstatus\``);
  224.                 embed.addField(`${prefix}streaming`, `Utilisation : \`${prefix}streaming messageamettreenstatus\``);
  225.                 embed.addField(`${prefix}roleperm`, `Utilisation : \`${prefix}roleperm permissionaverifier nomduroleaverifiersiilpossedelapermspecifie\` (Permission gérer le serveur = MANAGE_GUILD, pour voir comment ecrire les permissions faites ${prefix}help perm)`);
  226.                 embed.addField(`${prefix}quialerole`, `Utilisation : \`${prefix}quialerole nomdurole\``);
  227.                 embed.addField(`${prefix}quialaperm`, `Utilisation : \`${prefix}quialaperm perm\` Permission gérer le serveur = MANAGE_GUILD, pour voir comment ecrire les permissions faites ${prefix}help perm)`);
  228.                 embed.setTimestamp();
  229.                 embed.setThumbnail(bot.user.avatarURL);
  230.             } else if (args[1] === "perm") {
  231.                 embed.setColor("#010101");
  232.                 embed.setAuthor("Help Perm douli - project", bot.user.avatarURL);
  233.                 embed.addField("Administrateur", "ADMINISTRATOR");
  234.                 embed.addField("Voir les logs", "VIEW_AUDIT_LOG");
  235.                 embed.addField("Gerer le serveur", "MANAGE_GUILD");
  236.                 embed.addField("Gerer les roles", "MANAGE_ROLES");
  237.                 embed.addField("Gerer les salons", "MANAGE_CHANNELS");
  238.                 embed.addField("Kick un membre", "KICK_MEMBERS");
  239.                 embed.addField("Ban un membre", "BAN_MEMBERS");
  240.                 embed.addField("Créer une invitation", "CREATE_INSTANT_INVITE");
  241.                 embed.addField("Changer son pseudo", "CHANGE_NICKNAME");
  242.                 embed.addField("Gerer les pseudos", "MANAGE_NICKNAMES");
  243.                 embed.addField("Gerer les emojis", "MANAGE_EMOJIS");
  244.                 embed.addField("Gerer les webhooks", "MANAGE_WEBHOOKS");
  245.                 embed.addField("Move un membre", "MOVE_MEMBERS");
  246.                 embed.setTimestamp();
  247.                 embed.setThumbnail(bot.user.avatarURL);
  248.  
  249.             }
  250.             message.channel.send(embed).catch(console.error);
  251.             break;
  252.     }
  253. })
  254.  
  255.  
  256.  
  257.  
  258.  
  259. bot.login(token);
RAW Paste Data
We use cookies for various purposes including analytics. By continuing to use Pastebin, you agree to our use of cookies as described in the Cookies Policy. OK, I Understand
 
Top