forked from embee/woomy
		
	remove music functions from functions.js
This commit is contained in:
		
							parent
							
								
									7eab55b981
								
							
						
					
					
						commit
						0cb1d15f12
					
				
					 1 changed files with 0 additions and 182 deletions
				
			
		| 
						 | 
					@ -147,188 +147,6 @@ module.exports = client => {
 | 
				
			||||||
      return client.users.cache.get(mention);
 | 
					      return client.users.cache.get(mention);
 | 
				
			||||||
    }
 | 
					    }
 | 
				
			||||||
  }
 | 
					  }
 | 
				
			||||||
  
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  // MUSIC
 | 
					 | 
				
			||||||
  client.music = {guilds: {}};
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  client.music.isYoutubeLink = function(input) {
 | 
					 | 
				
			||||||
    return input.startsWith('https://www.youtube.com/') || input.startsWith('http://www.youtube.com/') || input.startsWith('https://youtube.com/') || input.startsWith('http://youtube.com/') || input.startsWith('https://youtu.be/') || input.startsWith('http://youtu.be/') || input.startsWith('http://m.youtube.com/') || input.startsWith('https://m.youtube.com/');
 | 
					 | 
				
			||||||
  }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  client.music.search = async function(query)
 | 
					 | 
				
			||||||
  {
 | 
					 | 
				
			||||||
      return new Promise(function(resolve, reject)
 | 
					 | 
				
			||||||
      {
 | 
					 | 
				
			||||||
        try{
 | 
					 | 
				
			||||||
          fetch("https://www.googleapis.com/youtube/v3/search?part=id&type=video&q=" + encodeURIComponent(query) + "&key=" + client.config.ytkey)
 | 
					 | 
				
			||||||
            .then(res => res.json())
 | 
					 | 
				
			||||||
            .then(json => {
 | 
					 | 
				
			||||||
              if(!json.items) { reject(); return; }
 | 
					 | 
				
			||||||
              resolve(json.items[0]);
 | 
					 | 
				
			||||||
            });
 | 
					 | 
				
			||||||
          } catch (err) {
 | 
					 | 
				
			||||||
            client.logger.error("Music search err: ", err);
 | 
					 | 
				
			||||||
            throw err;
 | 
					 | 
				
			||||||
          };
 | 
					 | 
				
			||||||
      });
 | 
					 | 
				
			||||||
  }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
  client.music.getGuild = function(id)
 | 
					 | 
				
			||||||
  {
 | 
					 | 
				
			||||||
      if(client.music.guilds[id]) return client.music.guilds[id];
 | 
					 | 
				
			||||||
  
 | 
					 | 
				
			||||||
      return client.music.guilds[id] =
 | 
					 | 
				
			||||||
      {
 | 
					 | 
				
			||||||
          queue: [],
 | 
					 | 
				
			||||||
          playing: false,
 | 
					 | 
				
			||||||
          paused: false,
 | 
					 | 
				
			||||||
          dispatcher: null,
 | 
					 | 
				
			||||||
          skippers: []
 | 
					 | 
				
			||||||
      }
 | 
					 | 
				
			||||||
  }
 | 
					 | 
				
			||||||
  
 | 
					 | 
				
			||||||
  client.music.getMeta = async function(id)
 | 
					 | 
				
			||||||
  {
 | 
					 | 
				
			||||||
      return new Promise(function(resolve, reject)
 | 
					 | 
				
			||||||
      {
 | 
					 | 
				
			||||||
          youtubeInfo(id, function(err, videoInfo)
 | 
					 | 
				
			||||||
          {
 | 
					 | 
				
			||||||
              if(err) throw err;
 | 
					 | 
				
			||||||
  
 | 
					 | 
				
			||||||
              resolve(videoInfo);
 | 
					 | 
				
			||||||
          });
 | 
					 | 
				
			||||||
      });
 | 
					 | 
				
			||||||
  }
 | 
					 | 
				
			||||||
  
 | 
					 | 
				
			||||||
  client.music.play = async function(message, input, bypassQueue)
 | 
					 | 
				
			||||||
  {
 | 
					 | 
				
			||||||
      let voiceChannel = message.member.voice.channel;
 | 
					 | 
				
			||||||
      if(!voiceChannel) return message.channel.send('<:error:466995152976871434> You need to be in a voice channel to use this command!');
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
      let permissions = voiceChannel.permissionsFor(client.user);
 | 
					 | 
				
			||||||
      if (!permissions.has('CONNECT')) {
 | 
					 | 
				
			||||||
          return message.channel.send('<:error:466995152976871434> I do not have permission to join your voice channel.');
 | 
					 | 
				
			||||||
      }
 | 
					 | 
				
			||||||
      if (!permissions.has('SPEAK')) {
 | 
					 | 
				
			||||||
          return message.channel.send('<:error:466995152976871434> I do not have permission to join your voice channel.');
 | 
					 | 
				
			||||||
      }
 | 
					 | 
				
			||||||
      if (voiceChannel.joinable != true) {
 | 
					 | 
				
			||||||
          return message.channel.send("<:error:466995152976871434> I do not have permission to join your voice channel.")
 | 
					 | 
				
			||||||
      }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
      let id = undefined;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
      if(client.music.isYoutubeLink(input))
 | 
					 | 
				
			||||||
      {
 | 
					 | 
				
			||||||
          id = await getYoutubeId(input)
 | 
					 | 
				
			||||||
      } else {
 | 
					 | 
				
			||||||
          let item = await client.music.search(input);
 | 
					 | 
				
			||||||
          if(!item) {
 | 
					 | 
				
			||||||
            return message.channel.send(`<:error:466995152976871434> No results found.`);
 | 
					 | 
				
			||||||
          };
 | 
					 | 
				
			||||||
          id = item.id.videoId;
 | 
					 | 
				
			||||||
      }
 | 
					 | 
				
			||||||
    
 | 
					 | 
				
			||||||
      // music "playing", nothing in queue
 | 
					 | 
				
			||||||
      if((client.music.getGuild(message.guild.id).playing || client.music.getGuild(message.guild.id).dispatcher) && client.music.getGuild(message.guild.id).queue.length == 0) {
 | 
					 | 
				
			||||||
        client.music.getGuild(message.guild.id).playing = false;
 | 
					 | 
				
			||||||
        client.music.getGuild(message.guild.id).dispatcher = null;
 | 
					 | 
				
			||||||
      // music not playing, something is in queue
 | 
					 | 
				
			||||||
      } else if(!client.music.getGuild(message.guild.id).playing && !client.music.getGuild(message.guild.id).dispatcher && client.music.getGuild(message.guild.id).queue.length > 0) {
 | 
					 | 
				
			||||||
        client.music.getGuild(message.guild.id).queue = [];
 | 
					 | 
				
			||||||
      };
 | 
					 | 
				
			||||||
    
 | 
					 | 
				
			||||||
      if(client.music.getGuild(message.guild.id).queue.length == 0 || bypassQueue)
 | 
					 | 
				
			||||||
      {
 | 
					 | 
				
			||||||
          let meta = await client.music.getMeta(id);
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
          if(!bypassQueue) client.music.getGuild(message.guild.id).queue.push({input: input, id: id, requestedBy: message.author, title: meta.title, author: meta.owner, thumbnail: meta.thumbnailUrl, duration: meta.duration});
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
          let connection = await new Promise((resolve, reject) =>
 | 
					 | 
				
			||||||
          {
 | 
					 | 
				
			||||||
              voiceChannel.join().then((connection) =>
 | 
					 | 
				
			||||||
              {
 | 
					 | 
				
			||||||
                  resolve(connection);
 | 
					 | 
				
			||||||
              });
 | 
					 | 
				
			||||||
          });
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
          function end(silent)
 | 
					 | 
				
			||||||
          {
 | 
					 | 
				
			||||||
              client.music.getGuild(message.guild.id).queue.shift();
 | 
					 | 
				
			||||||
              client.music.getGuild(message.guild.id).dispatcher = null;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
              if(client.music.getGuild(message.guild.id).queue.length > 0)
 | 
					 | 
				
			||||||
              {
 | 
					 | 
				
			||||||
                  client.music.play(message, client.music.getGuild(message.guild.id).queue[0].input, true);
 | 
					 | 
				
			||||||
              } else {
 | 
					 | 
				
			||||||
                  client.music.getGuild(message.guild.id).playing = false;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
                  if(!silent) {
 | 
					 | 
				
			||||||
                    message.channel.send("<:play:467216788187512832> Queue is empty! Disconnecting from the voice channel.");
 | 
					 | 
				
			||||||
                  }
 | 
					 | 
				
			||||||
                  
 | 
					 | 
				
			||||||
                  connection.disconnect();
 | 
					 | 
				
			||||||
              }
 | 
					 | 
				
			||||||
          }
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
          client.music.getGuild(message.guild.id).playing = true;
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
          let song = client.music.getGuild(message.guild.id).queue[0];
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
          try
 | 
					 | 
				
			||||||
          {
 | 
					 | 
				
			||||||
              let dispatcher = client.music.getGuild(message.guild.id).dispatcher = connection.play(await ytdl("https://www.youtube.com/watch?v=" + id, {highWaterMark: 1024 * 1024 * 32}), {type: 'opus'});
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
              dispatcher.setVolume(0.25)
 | 
					 | 
				
			||||||
            
 | 
					 | 
				
			||||||
              dispatcher.on('finish', (a, b) =>
 | 
					 | 
				
			||||||
              {
 | 
					 | 
				
			||||||
                  end(a == "silent");
 | 
					 | 
				
			||||||
              });
 | 
					 | 
				
			||||||
          } catch(err) {
 | 
					 | 
				
			||||||
              message.channel.send('<:error:466995152976871434> Failed to play **' + song.title + '** ' + err);
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
              end();
 | 
					 | 
				
			||||||
          }
 | 
					 | 
				
			||||||
          
 | 
					 | 
				
			||||||
          client.music.getGuild(message.guild.id).skippers = [];
 | 
					 | 
				
			||||||
          message.channel.send(`<:play:467216788187512832> Now playing: **${song.title}**`);
 | 
					 | 
				
			||||||
      } else {
 | 
					 | 
				
			||||||
          let meta = await client.music.getMeta(id);
 | 
					 | 
				
			||||||
          let song = {input: input, id: id, requestedBy: message.author, title: meta.title, author: meta.owner, thumbnail: meta.thumbnailUrl, duration: meta.duration};
 | 
					 | 
				
			||||||
          
 | 
					 | 
				
			||||||
          client.music.getGuild(message.guild.id).queue.push(song);
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
          message.channel.send(`<:success:466995111885144095> Added to queue: **${song.title}**`);
 | 
					 | 
				
			||||||
      }
 | 
					 | 
				
			||||||
  }
 | 
					 | 
				
			||||||
  
 | 
					 | 
				
			||||||
  // MUSIC - TIMESTAMP
 | 
					 | 
				
			||||||
  client.createTimestamp = function(duration){
 | 
					 | 
				
			||||||
    hrs = ~~(duration / 60 / 60),
 | 
					 | 
				
			||||||
    min = ~~(duration / 60) % 60,
 | 
					 | 
				
			||||||
    sec = ~~(duration - min * 60);
 | 
					 | 
				
			||||||
  
 | 
					 | 
				
			||||||
    if(String(hrs).length < 2) {
 | 
					 | 
				
			||||||
      hrs = "0" + String(hrs) + ":";
 | 
					 | 
				
			||||||
    };
 | 
					 | 
				
			||||||
  
 | 
					 | 
				
			||||||
    if(String(min).length < 2) {
 | 
					 | 
				
			||||||
      min = "0" + String(min);
 | 
					 | 
				
			||||||
    };
 | 
					 | 
				
			||||||
  
 | 
					 | 
				
			||||||
    if(String(sec).length < 2) {
 | 
					 | 
				
			||||||
      sec = "0" + String(sec);
 | 
					 | 
				
			||||||
    };
 | 
					 | 
				
			||||||
 | 
					 | 
				
			||||||
    if(hrs == "00:") {
 | 
					 | 
				
			||||||
      hrs = "";
 | 
					 | 
				
			||||||
    }
 | 
					 | 
				
			||||||
  
 | 
					 | 
				
			||||||
    var time = hrs + min + ":" + sec;
 | 
					 | 
				
			||||||
    return time;
 | 
					 | 
				
			||||||
  };
 | 
					 | 
				
			||||||
 | 
					
 | 
				
			||||||
  //FIND ROLE
 | 
					  //FIND ROLE
 | 
				
			||||||
  client.findRole = function(input, message) {
 | 
					  client.findRole = function(input, message) {
 | 
				
			||||||
| 
						 | 
					
 | 
				
			||||||
		Loading…
	
	Add table
		Add a link
		
	
		Reference in a new issue