Advertisement
kev19052003

Untitled

Jan 19th, 2019
98
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 17.15 KB | None | 0 0
  1. const Discord = require('discord.js');
  2.  
  3. const client = new Discord.Client();
  4.  
  5. var prefix = "+";
  6.  
  7. const ytdl = require('ytdl-core');
  8.  
  9. const queue = new Map();
  10.  
  11. var servers = {};
  12.  
  13. client.login('NTM2MjM2NDI4Mjg0MjY0NTAw.DyTxxg.YyrO5bLqbfstaIq1SjEDI3nOPgQ');
  14.  
  15. client.on("ready", () => {
  16.  
  17. console.log("Je suis prêt !");
  18. client.user.setGame(" +help | Bot Perso");
  19.  
  20. });
  21.  
  22. client.on('message', message => {
  23.  
  24. if(message.content === "Bonjour"){
  25. message.reply("Wesh, bien ou quoi ?");
  26. console.log('Le bot dit bonjour');
  27.  
  28. }
  29.  
  30. if(message.content === prefix + "help") {
  31. var aide_embed = new Discord.RichEmbed()
  32. .setColor('RANDOM')
  33. .setTitle(`:robot: Voici mes catégories d'aide !`)
  34. .setDescription(`Voici mes commandes disponible :`)
  35. .setThumbnail(message.author.avatarURL)
  36. .addField(":tools: modération", "Fais `+modération` pour voir mes commandes de modération !")
  37. .addField(":tada: Fun", "Fais `+fun` pour voir mes commandes d'animation !")
  38. .setFooter("Menu d'aide - BOT PERSO")
  39. .setTimestamp()
  40. message.channel.send(aide_embed);
  41. }
  42.  
  43. if(message.content === prefix + "modération") {
  44. var mod_embed = new Discord.RichEmbed()
  45. .setColor('RANDOM')
  46. .setTitle(`:tools: Voici mes commandes modérations !`)
  47. .setThumbnail(message.author.avatarURL)
  48. .addField("+kick <@user>", "Kick l'utilisateur !")
  49. .addField("+ban <@user>", "Ban l'utilisateur !")
  50. .addField("+clear nombre", "Supprime le nombre de messages indiqué")
  51. .addField("+mute <@user>", "Mute l'utilisateur mentionné")
  52. .addField("+unmute <@user>", "Unmute l'utilisateur mentionné")
  53. .addField("+warns @le_nom", "warn l'utilisateur !")
  54. .addField("+seewarns @le_nom", "voir les warns de la personne")
  55. .addField("+deletewarns @le_nom [le numéro du warn]", "Supprime le warn voulu")
  56. .setFooter("Commande modération - BOT PERSO")
  57. .setTimestamp()
  58. message.channel.send(mod_embed);
  59. }
  60.  
  61. if(message.content === prefix + "fun") {
  62. var fun_embed = new Discord.RichEmbed()
  63. .setColor('RANDOM')
  64. .setTitle(`:tools: Voici mes commandes amusantes !`)
  65. .setThumbnail(message.author.avatarURL)
  66. .addField("Bonjour", "Le bot répond !")
  67. .addField("+stats", "Le bot vous envoie des informations sur votre profil !")
  68. .addField("+info", "Donne des informations sur le bot et le serveur !")
  69. .setFooter("Commande fun - BOT PERSO")
  70. .setTimestamp()
  71. message.channel.send(fun_embed);
  72. }
  73.  
  74. if (!message.content.startsWith(prefix)) return;
  75.  
  76. var args = message.content.substring(prefix.length).split(" ");
  77.  
  78. switch (args[0].toLowerCase()) {
  79.  
  80. case "stats":
  81.  
  82. var userCreateDate = message.author.createdAt.toString().split(" ");
  83. var msgauthor = message.author.id;
  84.  
  85. var stats_embed = new Discord.RichEmbed()
  86. .setColor("#6699FF")
  87. .setTitle(`Statistiques du joueurs : ${message.author.username}`)
  88. .addField(`ID du joueurs :id:`, msgauthor, true)
  89. .addField(`Date d'inscription du joueur :`, userCreateDate[1] + ' ' + userCreateDate[2] + ' ' + userCreateDate[3])
  90. .setThumbnail(message.author.avatarURL)
  91. message.reply("Tu peux regarder tes messages privés !")
  92. message.author.send(stats_embed);
  93.  
  94. break;
  95.  
  96. case "play":
  97.  
  98. if (!args[1]) {
  99.  
  100. message.channel.sendMessage("Tu dois m’indiquer un lien YouTube");
  101.  
  102. return;
  103.  
  104. }
  105.  
  106. if(!message.member.voiceChannel) {
  107.  
  108. message.channel.sendMessage(":x: Tu dois être dans un salon vocal");
  109.  
  110. return;
  111.  
  112. }
  113.  
  114.  
  115. if(!servers[message.guild.id]) servers[message.guild.id] = {
  116.  
  117. queue: []
  118.  
  119. };
  120.  
  121.  
  122. var server = servers[message.guild.id];
  123.  
  124.  
  125. server.queue.push(args[1]);
  126.  
  127. if(!message.guild.voiceConnection) message.member.voiceChannel.join().then(function(connection) {
  128.  
  129. play(connection, message)
  130.  
  131. });
  132.  
  133. break;
  134.  
  135. case "skip":
  136.  
  137. if(!message.member.voiceChannel) {
  138.  
  139. message.channel.sendMessage(":x: Tu dois être dans un salon vocal");
  140.  
  141. return;
  142.  
  143. }
  144.  
  145. var server = servers[message.guild.id];
  146.  
  147. if(server.dispatcher) server.dispatcher.end();
  148.  
  149. break;
  150.  
  151. case "stop":
  152.  
  153. if(!message.member.voiceChannel)
  154.  
  155. return message.channel.send(":x: Tu dois être dans un salon vocal");
  156.  
  157. message.member.voiceChannel.leave();
  158.  
  159. break;
  160.  
  161. }
  162.  
  163. if(message.content === prefix + "info") {
  164. var info_embed = new Discord.RichEmbed()
  165. .setColor("#40A497")
  166. .setTitle("Voici les informations sur moi et le serveur !")
  167. .addField(" :robot: Nom :", `${client.user.tag}`, true)
  168. .addField("Descriminateur du bot :hash:", `#${client.user.discriminator}`)
  169. .addField("ID :id: ", `${client.user.id}`)
  170. .addField("Nombre de membres", message.guild.members.size)
  171. .addField("Nombre de catégories et de salons", message.guild.channels.size)
  172. .setFooter("Info - BOT PERSO")
  173. message.channel.sendMessage(info_embed)
  174. console.log("Un utilisateur a effectué la commande d'info !")
  175. }
  176.  
  177. if(message.content.startsWith(prefix + "kick")){
  178. if(!message.guild.member(message.author).hasPermission("KICK_MEMBERS")) return message.channel.send("Vous n'avez pas la permission!");
  179.  
  180. if(message.mentions.users.size === 0) {
  181. return message.channel.send("Vous devez metionner un utilisaeur")
  182. }
  183. var kick = message.guild.member(message.mentions.users.first());
  184. if(!kick) {
  185. return message.channel.send("Je ne sais pas si l'utilisateur existe :/")
  186. }
  187.  
  188. if(message.guild.member(client.user).hasPermission("KICK_MEMBERS")) {
  189. return message.channel.send("Je n'ai pas la permission pour kick");
  190. }
  191.  
  192. kick.kick().then(member => {
  193. message.channel.send(`${member.user.username} est kick pas ${message.author.username}`);
  194. });
  195. }
  196.  
  197. if(message.content.startsWith(prefix + "ban")) {
  198. if(!message.guild.member(message.author).hasPermission("BAN_MEMBERS")) return message.channel.send("Vous n'avez pas la perission");
  199.  
  200. if(message.mentions.users.size === 0) {
  201. return message.channel.send("Vous devez mentionner un utilisateur");
  202. }
  203.  
  204. var ban = message.guild.member(message.mentions.users.first());
  205. if(!ban) {
  206. return message.channel.send("Je ne sais pas si l'utilisateur existe");
  207. }
  208.  
  209. if(!message.guild.member(client.user).hasPermission("BAN_MEMBERS")) {
  210. return message.channel.send("Je n'ai pas la permission pour ban");
  211. }
  212. ban.ban().then(member => {
  213. message.channel.send(`${member.user.username} est ban par ${message.author.username} !`)
  214. });
  215.  
  216. }
  217.  
  218. if(message.content.startsWith(prefix + "clear")) {
  219. if(!message.guild.member(message.author).hasPermission("MANAGE_MESSAGE")) return message.channel.send("Vous n'avez pas la permission !");
  220.  
  221. let args = message.content.split(" ").slice(1);
  222.  
  223. if(!args[0]) return message.channel.send("Tu dois préciser un nombre de messages à supprimer !")
  224. message.channel.bulkDelete(args[0]).then(() => {
  225. message.channel.send(`${args[0]} messages ont été supprimés !`);
  226. });
  227. }
  228.  
  229. if(message.content.startsWith(prefix + "mute")) {
  230. if(!message.guild.member(message.author).hasPermission("ADMINISTRATOR")) return message.channel.send("Vous n'avez pas la permission !");
  231.  
  232. if(message.mentions.users.size === 0) {
  233. return message.channel.send('Vous devez mentionner un utilisateur !');
  234. }
  235.  
  236. var mute = message.guild.member(message.mentions.users.first());
  237. if(!mute) {
  238. return message.channel.send("Je n'ai pas trouvé l'utilisateur ou il l'existe pas !");
  239. }
  240.  
  241. if(!message.guild.member(client.user).hasPermission("ADMINISTRATOR")) return message.channel.send("Je n'ai pas la permission !");
  242. message.channel.overwritePermissions(mute, { SEND_MESSAGES: false}).then(member => {
  243. message.channel.send(`${mute.user.username} est mute !`);
  244. });
  245. }
  246.  
  247. if(message.content.startsWith(prefix + "unmute")) {
  248. if(!message.guild.member(message.author).hasPermission("ADMINISTRATOR")) return message.channel.send("Vous n'avez pas la permission !");
  249.  
  250. if(message.mentions.users.size === 0) {
  251. return message.channel.send('Vous devez mentionner un utilisateur !');
  252. }
  253.  
  254. var mute = message.guild.member(message.mentions.users.first());
  255. if(!mute) {
  256. return message.channel.send("Je n'ai pas trouvé l'utilisateur ou il l'existe pas !");
  257. }
  258.  
  259. if(!message.guild.member(client.user).hasPermission("ADMINISTRATOR")) return message.channel.send("Je n'ai pas la permission !");
  260. message.channel.overwritePermissions(mute, { SEND_MESSAGES: true}).then(member => {
  261. message.channel.send(`${mute.user.username} n'est plus mute !`);
  262. });
  263. }
  264.  
  265. var fs = require('fs');
  266.  
  267. let warns = JSON.parse(fs.readFileSync("./warns.json", "utf8"));
  268.  
  269. if (message.content.startsWith(prefix + "warn")){
  270.  
  271. if (message.channel.type === "dm") return;
  272.  
  273. var mentionned = message.mentions.users.first();
  274.  
  275. if(!message.guild.member(message.author).hasPermission("MANAGE_GUILD")) return message.reply("**:x: Vous n'avez pas la permission `Gérer le serveur` dans ce serveur**").catch(console.error);
  276.  
  277. if(message.mentions.users.size === 0) {
  278.  
  279. return message.channel.send("**:x: Vous n'avez mentionnée aucun utilisateur**");
  280.  
  281. }else{
  282.  
  283. const args = message.content.split(' ').slice(1);
  284.  
  285. const mentioned = message.mentions.users.first();
  286.  
  287. if (message.member.hasPermission('MANAGE_GUILD')){
  288.  
  289. if (message.mentions.users.size != 0) {
  290.  
  291. if (args[0] === "<@!"+mentioned.id+">"||args[0] === "<@"+mentioned.id+">") {
  292.  
  293. if (args.slice(1).length != 0) {
  294.  
  295. const date = new Date().toUTCString();
  296.  
  297. if (warns[message.guild.id] === undefined)
  298.  
  299. warns[message.guild.id] = {};
  300.  
  301. if (warns[message.guild.id][mentioned.id] === undefined)
  302.  
  303. warns[message.guild.id][mentioned.id] = {};
  304.  
  305. const warnumber = Object.keys(warns[message.guild.id][mentioned.id]).length;
  306.  
  307. if (warns[message.guild.id][mentioned.id][warnumber] === undefined){
  308.  
  309. warns[message.guild.id][mentioned.id]["1"] = {"raison": args.slice(1).join(' '), time: date, user: message.author.id};
  310.  
  311. } else {
  312.  
  313. warns[message.guild.id][mentioned.id][warnumber+1] = {"raison": args.slice(1).join(' '),
  314.  
  315. time: date,
  316.  
  317. user: message.author.id};
  318.  
  319. }
  320.  
  321. fs.writeFile("./warns.json", JSON.stringify(warns), (err) => {if (err) console.error(err);});
  322.  
  323. message.delete();
  324.  
  325. message.channel.send(':warning: | **'+mentionned.tag+' à été averti**');
  326.  
  327. message.mentions.users.first().send(`:warning: **Warn |** depuis **${message.guild.name}** donné par **${message.author.username}**\n\n**Raison:** ` + args.slice(1).join(' '))
  328.  
  329. } else {
  330.  
  331. message.channel.send("Erreur mauvais usage: "+prefix+"warn <user> <raison>");
  332.  
  333. }
  334.  
  335. } else {
  336.  
  337. message.channel.send("Erreur mauvais usage: "+prefix+"warn <user> <raison>");
  338.  
  339. }
  340.  
  341. } else {
  342.  
  343. message.channel.send("Erreur mauvais usage: "+prefix+"warn <user> <raison>");
  344.  
  345. }
  346.  
  347. } else {
  348.  
  349. message.channel.send("**:x: Vous n'avez pas la permission `Gérer le serveur` dans ce serveur**");
  350.  
  351. }
  352.  
  353. }
  354.  
  355. }
  356.  
  357.  
  358.  
  359. if (message.content.startsWith(prefix+"seewarns")||message.content===prefix+"seewarns") {
  360.  
  361. if (message.channel.type === "dm") return;
  362.  
  363. if(!message.guild.member(message.author).hasPermission("MANAGE_GUILD")) return message.reply("**:x: Vous n'avez pas la permission `Gérer le serveur` dans ce serveur**").catch(console.error);
  364.  
  365. const mentioned = message.mentions.users.first();
  366.  
  367. const args = message.content.split(' ').slice(1);
  368.  
  369. if (message.member.hasPermission('MANAGE_GUILD')){
  370.  
  371. if (message.mentions.users.size !== 0) {
  372.  
  373. if (args[0] === "<@!"+mentioned.id+">"||args[0] === "<@"+mentioned.id+">") {
  374.  
  375. try {
  376.  
  377. if (warns[message.guild.id][mentioned.id] === undefined||Object.keys(warns[message.guild.id][mentioned.id]).length === 0) {
  378.  
  379. message.channel.send("**"+mentioned.tag+"** n'a aucun warn :eyes:");
  380.  
  381. return;
  382.  
  383. }
  384.  
  385. } catch (err) {
  386.  
  387. message.channel.send("**"+mentioned.tag+"** n'a aucun warn :eyes:");
  388.  
  389. return;
  390.  
  391. }
  392.  
  393. let arr = [];
  394.  
  395. arr.push(`**${mentioned.tag}** a **`+Object.keys(warns[message.guild.id][mentioned.id]).length+"** warns :eyes:");
  396.  
  397. for (var warn in warns[message.guild.id][mentioned.id]) {
  398.  
  399. arr.push(`**${warn}** - **"`+warns[message.guild.id][mentioned.id][warn].raison+
  400.  
  401. "**\" warn donné par **"+message.guild.members.find("id", warns[message.guild.id][mentioned.id][warn].user).user.tag+"** a/le **"+warns[message.guild.id][mentioned.id][warn].time+"**");
  402.  
  403. }
  404.  
  405. message.channel.send(arr.join('\n'));
  406.  
  407. } else {
  408.  
  409. message.channel.send("Erreur mauvais usage: "+prefix+"seewarns <user> <raison>");
  410.  
  411. console.log(args);
  412.  
  413. }
  414.  
  415. } else {
  416.  
  417. message.channel.send("Erreur mauvais usage: "+prefix+"seewarns <user> <raison>");
  418.  
  419. }
  420.  
  421. } else {
  422.  
  423. message.channel.send("**:x: Vous n'avez pas la permission `Gérer le serveur` dans ce serveur**");
  424.  
  425. }
  426.  
  427. }
  428.  
  429.  
  430.  
  431.  
  432.  
  433. if (message.content.startsWith(prefix+"deletewarns")||message.content===prefix+"deletewarns") {
  434.  
  435. if (message.channel.type === "dm") return;
  436.  
  437. if(!message.guild.member(message.author).hasPermission("MANAGE_GUILD")) return message.reply("**:x: Vous n'avez pas la permission `Gérer le serveur` dans ce serveur**").catch(console.error);
  438.  
  439. const mentioned = message.mentions.users.first();
  440.  
  441. const args = message.content.split(' ').slice(1);
  442.  
  443. const arg2 = Number(args[1]);
  444.  
  445. if (message.member.hasPermission('MANAGE_GUILD')){
  446.  
  447. if (message.mentions.users.size != 0) {
  448.  
  449. if (args[0] === "<@!"+mentioned.id+">"||args[0] === "<@"+mentioned.id+">"){
  450.  
  451. if (!isNaN(arg2)) {
  452.  
  453. if (warns[message.guild.id][mentioned.id] === undefined) {
  454.  
  455. message.channel.send(mentioned.tag+" n'a aucun warn");
  456.  
  457. return;
  458.  
  459. } if (warns[message.guild.id][mentioned.id][arg2] === undefined) {
  460.  
  461. message.channel.send("**:x: Ce warn n'existe pas**");
  462.  
  463. return;
  464.  
  465. }
  466.  
  467. delete warns[message.guild.id][mentioned.id][arg2];
  468.  
  469. var i = 1;
  470.  
  471. Object.keys(warns[message.guild.id][mentioned.id]).forEach(function(key){
  472.  
  473. var val=warns[message.guild.id][mentioned.id][key];
  474.  
  475. delete warns[message.guild.id][mentioned.id][key];
  476.  
  477. key = i;
  478.  
  479. warns[message.guild.id][mentioned.id][key]=val;
  480.  
  481. i++;
  482.  
  483. });
  484.  
  485. fs.writeFile("./warns.json", JSON.stringify(warns), (err) => {if (err) console.error(err);});
  486.  
  487. if (Object.keys(warns[message.guild.id][mentioned.id]).length === 0) {
  488.  
  489. delete warns[message.guild.id][mentioned.id];
  490.  
  491. }
  492.  
  493. message.channel.send(`Le warn de **${mentioned.tag}**\': **${args[1]}** a été enlevé avec succès!`);
  494.  
  495. return;
  496.  
  497. } if (args[1] === "tout") {
  498.  
  499. delete warns[message.guild.id][mentioned.id];
  500.  
  501. fs.writeFile("./warns.json", JSON.stringify(warns), (err) => {if (err) console.error(err);});
  502.  
  503. message.channel.send(`Les warns de **${mentioned.tag}** a été enlevé avec succès!`);
  504.  
  505. return;
  506.  
  507. } else {
  508.  
  509. message.channel.send("Erreur mauvais usage: "+prefix+"clearwarns <utilisateur> <nombre>");
  510.  
  511. }
  512.  
  513. } else {
  514.  
  515. message.channel.send("Erreur mauvais usage: "+prefix+"clearwarns <utilisateur> <nombre>");
  516.  
  517. }
  518.  
  519. } else {
  520.  
  521. message.channel.send("Erreur mauvais usage: "+prefix+"clearwarns <utilisateur> <nombre>");
  522.  
  523. }
  524.  
  525. } else {
  526.  
  527. message.channel.send("**:x: Vous n'avez pas la permission `Gérer le serveur` dans ce serveur**");
  528.  
  529. }
  530.  
  531. }
  532.  
  533. const réponse = JSON.parse(fs.readFileSync('./eightball.json', "utf8"));
  534.  
  535. if (message.content.startsWith(prefix + "8ball")) {
  536.  
  537. var args = message.content.split(' ').join(' ').slice(6);
  538.  
  539. if(!args) return message.channel.send("Tu dois me poser une question !")
  540.  
  541. var ball_embed = new Discord.RichEmbed()
  542. .setColor('RANDOM')
  543. .setTitle('Voici ma commande 8ball :')
  544. .addField('Question :', `${args}`)
  545. .addField('Réponse', réponse[Math.round(Math.random() * réponse.length)])
  546. .setFooter('8ball :)')
  547. message.channel.send(ball_embed);
  548. }
  549.  
  550. });
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement