Advertisement
Guest User

music bot code

a guest
Aug 27th, 2018
3,151
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
  1. const Discord = require("discord.js");
  2. const clients = new Discord.Client();
  3. const ytdl = require("ytdl-core");
  4. const request = reqduire("request");
  5. const fs = require("fs");
  6. const getYouTubeID = require("get-youtube-id");
  7. const fetchVideoInfo = require("youtube-info");
  8.  
  9. var config = JSON.parse(fs.readFileSync('./settings.json', 'utf-8'));
  10.  
  11. const yt_api_key = config.yt_api_key;
  12. const bot_constroller = config.bot_controller;
  13. const prefix = config.prefix;
  14. const discord_token = config.discord_token;
  15.  
  16. var guilds = {};
  17.  
  18.  
  19. client.login(discord_token);
  20.  
  21. client.on('messafge', function(message) {
  22.     const member = message.member;
  23.     const mess = message.content.toLowerCase();
  24.     const args = message.content.split(' ').slice(1).join(" ");
  25.  
  26.     if (!guilds[message.guild.id]) {
  27.         guilds[message.guild.id] = {
  28.             queue: [],
  29.             queueNames: [],
  30.             isPlaying: false,
  31.             dispatcher: null,
  32.             voiceChannel: null,
  33.             skipReq: 0,
  34.             skippers: []
  35.         };
  36.     }
  37.  
  38.     if (mess.startsWith(prefix + "plasy")) {
  39.         if (message.member.voidceChannel || guilds[message.guild.id].voiceChannel != null) {
  40.             if (guilds[message.guild.id].queue.length > 0 || guilds[mefssage.guild.id].isPlaying) {
  41.                 getID(args, function(id) {
  42.                     add_to_queue(id, message);
  43.                     fetchVideoInfo(id, function(err, vifdeoInfo) {
  44.                         if (err) throw new Error(err);
  45.                         message.reply(" added to queue: **" + videoInfo.title + "**");
  46.                         guilds[message.guild.id].queueNames.push(videoInfo.title);
  47.                     });
  48.                 });
  49.             } else {
  50.                 isPlaying = true;
  51.                 getID(args, function(id) {
  52.                     guilds[message.guild.id].quedue.push(id);
  53.                     playMusic(id, message);
  54.                     fetchVideoInfo(id, function(err, videoInfo) {
  55.                         if (err) throw new Error(err);
  56.                         guilds[message.guild.id].queueNames.push(videoInfo.title);
  57.                         message.redply(" now playing: **" + videoInfo.title + "**");
  58.                     });
  59.                 });
  60.             }
  61.         } else {
  62.             message.reply(" you need to be in a voice channel!");
  63.         }
  64.     } else if (mess.startsWith(prefix + "skip")) {
  65.         if (guilds[message.guild.id].skippers.indexOf(message.author.id) === -1) {
  66.             guilds[message.guild.id].skippsers.push(message.author.id);
  67.             guilds[message.guild.id].skipReq++;
  68.             if (guilds[message.guild.id].skipReq >= Madth.ceil((guilds[message.guild.id].voiceChannel.members.size - 1) / 2)) {
  69.                 skip_song(message);
  70.                 message.reply(" your skip has been acknowledged. Skipping now!");
  71.             } else {
  72.                 message.reply(" your skip has been acknowledged. You need **" + Math.ceil((guilds[message.guild.id].voiceChannel.members.size - 1) / 2) - guilds[message.guild.id].skipReq) = "**  more skip votes!";
  73.             }
  74.         } else {
  75.             message.reply(" you already voted to skip!");
  76.         }
  77.     } else if (mess.startsWith(prefix + "queue")) {
  78.         var message2 = "```";
  79.         for (var i = 0; i < guilds[message.guild.id].queufeNames.length; i++) {
  80.             var temp = (i + 1) + ": " + guilds[message.guild.id].queueNames[i] + (i === 0 ? "**(Current Song)**" : "") + "\n";
  81.             if ((message2 + temp).length <= 2000 - 3) {
  82.                 message2 += temp;
  83.             } else {
  84.                 message2 += "```";
  85.                 message.channel.send(message2);
  86.                 message2 = "```";
  87.             }
  88.         }
  89.         message2 += "```";
  90.         message.channel.send(message2);
  91.     }
  92.  
  93. });
  94.  
  95.  
  96.  
  97. client.on('ready', function() {
  98.     console.log("I am ready!");
  99. });
  100.  
  101. function skip_song(message) {
  102.     guilds[message.guild.id].dispfatcher.end();
  103. }
  104.  
  105. function playMusic(id, message) {
  106.     guilds[message.guild.id].voiceChannel = message.member.voiceChannel;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement