Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- // Main
- const Discord = require("discord.js");
- const client = new Discord.Client();
- // Modules
- const ytdl = require('ytdl-core');
- const cheerio = require('cheerio'),
- snekfetch = require('snekfetch'),
- querystring = require('querystring');
- // Bot
- let token = "CENSORED"
- let prefix = "p/"
- // YouTube API
- const YouTube_API_Token = `AIzaSyC8xq8po-AyecuwPSisJ_mzIXpuK96h28M`;
- var YouTube_Client = require('youtube-node');
- var yt = new YouTube_Client();
- yt.setKey(YouTube_API_Token);
- // Data
- const answers = ["Maybe, just maybe.", "Duh..", "Could be.", "OMG YES YES YES!", "Not in a million years.", "Yeah, yeah.", "Of course!", "No, just.. no.", "Yeah yeah, yeah yeah yeah!"];
- const cF = ["heads", "tails"]
- // // //
- client.on('ready', () => {
- console.log(`Logged in as ${client.user.tag}!\nReady for Action! :D`);
- console.log(`[Stats] User: ${client.user.tag} | ID: ${client.user.id}`);
- console.log(`[Stats] Guilds: ${client.guilds.size} | Members: ${client.users.size}`);
- client.user.setPresence({ game: { name: `${prefix}help`, type: 0 } });
- });
- client.on("guildMemberAdd", member => {
- let welcomePortal = client.channels.get('285052353109950466')
- const embed = new Discord.RichEmbed()
- const embed2 = new Discord.RichEmbed()
- embed2.setAuthor(member.user.tag, member.user.avatarURL)
- embed2.setColor(0xefb81c)
- embed2.addField(`Member joined!`, `Welcome to the ParasiteMC Discord, ${member}!`, true)
- embed2.setFooter("Member joined", client.user.avatarURL)
- embed2.setThumbnail(member.user.avatarURL)
- embed2.setTimestamp()
- let DlogChannel = "logs"
- const channel = member.guild.channels.find('name', DlogChannel);
- if (!channel) return;
- embed.setAuthor(member.user.tag, member.user.avatarURL)
- embed.setColor(0xefb81c)
- embed.setFooter("Member joined", client.user.avatarURL)
- embed.setTimestamp()
- channel.send({ embed: embed });
- welcomePortal.send({ embed: embed2 });
- });
- client.on("guildMemberRemove", member2 => {
- let welcomePortal = client.channels.get('285052353109950466')
- const embed = new Discord.RichEmbed()
- const embed2 = new Discord.RichEmbed()
- embed2.setAuthor(member2.user.tag, member2.user.avatarURL)
- embed2.setColor(0xefb81c)
- embed2.addField(`Member left!`, `Byebye ${member2.user.tag}, you will be missed!`, true)
- embed2.setFooter("Member left", client.user.avatarURL)
- embed2.setThumbnail(member2.user.avatarURL)
- embed2.setTimestamp()
- let DlogChannel = "logs"
- const channel = member2.guild.channels.find('name', DlogChannel);
- if (!channel) return;
- embed.setAuthor(member2.user.tag, member2.user.avatarURL)
- embed.setColor(0xefb81c)
- embed.setFooter("Member left", client.user.avatarURL)
- embed.setTimestamp()
- channel.send({ embed: embed });
- welcomePortal.send({ embed: embed2 });
- });
- client.on("messageDelete", message => {
- let welcomePortal = client.channels.get('326393866963910656')
- const embed = new Discord.RichEmbed()
- embed.setAuthor(message.author.tag, message.author.displayAvatarURL);
- embed.setColor(0xefb81c)
- embed.setDescription(`**Message:** ${message.content}`)
- embed.setFooter("Message Deleted", client.user.avatarURL);
- embed.setTimestamp()
- let DlogChannel = "logs"
- const channel = message.guild.channels.find('name', DlogChannel);
- if (!channel) return;
- channel.send({ embed: embed });
- });
- client.on('message', msg => { // start
- if (msg.content.startsWith(prefix + `ping`)) {
- const embed = new Discord.RichEmbed()
- embed.setTitle("Pong!");
- embed.setFooter(prefix + "ping", client.user.avatarURL)
- embed.setColor(0xefb81c)
- embed.setTimestamp()
- msg.channel.send({embed}).then(m => {
- embed.setDescription((m.createdTimestamp - msg.createdTimestamp) + "ms");
- m.edit({embed});
- });
- }
- if (msg.content.startsWith(prefix + `help`)) {
- const embed = new Discord.RichEmbed()
- embed.addField(prefix + "help", "Shows you this help menu.")
- embed.setColor(0xefb81c)
- embed.addField(prefix + "youtube", "Search for a YouTube video.")
- embed.addField(prefix + "ping", "Pings the bot's connection to Discord.")
- embed.addField(prefix + "play", "Plays a YouTube video.")
- embed.addField(prefix + "stop", "Stops playing music and leaves the channel.")
- embed.addField(prefix + "coinflip", "Flips a coin, you'll get heads or tails.")
- embed.addField(prefix + "8ball", "Ask a question to the magical 8ball.")
- embed.addField(prefix + "mcbust", "Renders a player's Minecraft bust.")
- embed.addField(prefix + "mchead", "Renders a player's Minecraft head in 3D.")
- embed.addField(prefix + "mcbody", "Renders a player's Minecraft body from the front/side in 3D.")
- embed.addField(prefix + "serverinfo", "Shows you information about this Discord server.")
- embed.addField(prefix + "mute", "Mutes the mentioned user. Will error if the muted role isn't present.")
- embed.addField(prefix + "warn", "Warns the mentioned user. Make sure to provide a reason!")
- embed.addField(prefix + "online", "Shows you who is on the server and which gamemode they are in!")
- embed.addField(prefix + "uptime", "Shows you how long the server has been online!")
- embed.addField(prefix + "dab @user", "Dabs on the user you @!")
- embed.addField(prefix + "poke @user", "Pokes the user you @!")
- embed.addField(prefix + "kiss @user", "Kisses the user you @!")
- embed.addField(prefix + "hoot @user", "Hoots at the user you @!")
- embed.addField(prefix + "lick @user", "Licks the user you @!")
- embed.addField(prefix + "highfive @user", "Highfives the user you @!")
- embed.addField(prefix + "slap @user", "Slaps the user you @!")
- embed.addField(prefix + "hug @user", "Hugs the user you @!")
- embed.setFooter(prefix + "help", client.user.avatarURL)
- embed.setTimestamp()
- msg.channel.send({ embed: embed });
- }
- //
- if (msg.content.startsWith(prefix + `mchead`)) {
- const args = msg.content.split(" ").slice(1).join(" ");
- const embed = new Discord.RichEmbed()
- embed.setFooter(prefix + "mchead", client.user.avatarURL)
- embed.setColor(0xefb81c)
- embed.setTimestamp()
- embed.setAuthor(args, `https://visage.surgeplay.com/face/512/${args}.png`)
- embed.setImage(`https://visage.surgeplay.com/head/256/${args}.png`)
- msg.channel.send({embed});
- }
- if (msg.content.startsWith(prefix + `mcbody`)) {
- const args = msg.content.split(" ").slice(1).join(" ");
- const embed = new Discord.RichEmbed()
- embed.setFooter(prefix + "mcbody", client.user.avatarURL)
- embed.setColor(0xefb81c)
- embed.setTimestamp()
- embed.setAuthor(args, `https://visage.surgeplay.com/face/512/${args}.png`)
- embed.setImage(`https://visage.surgeplay.com/full/256/${args}.png`)
- msg.channel.send({embed});
- }
- if (msg.content.startsWith(prefix + `mcbust`)) {
- const args = msg.content.split(" ").slice(1).join(" ");
- const embed = new Discord.RichEmbed()
- embed.setFooter(prefix + "mcbust", client.user.avatarURL)
- embed.setColor(0xefb81c)
- embed.setTimestamp()
- embed.setAuthor(args, `https://visage.surgeplay.com/face/512/${args}.png`)
- embed.setImage(`https://visage.surgeplay.com/bust/256/${args}.png`)
- msg.channel.send({embed});
- }
- if (msg.content.startsWith(prefix + `8ball`)) {
- if(msg.content.endsWith(`?`)) {
- // answer
- const embed = new Discord.RichEmbed()
- .setFooter(prefix + "8ball", client.user.avatarURL)
- .setColor(0xefb81c)
- .setDescription(":8ball: " + answers[Math.floor(Math.random() * answers.length)])
- msg.channel.send({embed});
- } else {
- // error
- const embed = new Discord.RichEmbed()
- .setFooter(prefix + "8ball", client.user.avatarURL)
- .setColor(0xefb81c)
- .setDescription(":8ball: That isn't a question!")
- msg.channel.send({embed});
- }
- }
- if (msg.content.startsWith(prefix + `serverinfo`)) {
- let m1user = msg.guild.members.filter(b => !b.user.bot).size;
- let m2bot = msg.guild.members.filter(b => b.user.bot).size;
- const embed = new Discord.RichEmbed()
- embed.addField(`Server information`, `**Name**: \`${msg.guild.name}\`\n**Owner**: \`${msg.guild.owner.user.tag}\`\n**Members**: \`${m1user}\`\n**Bots**: \`${m2bot}\`\n**Total**: \`${msg.guild.memberCount}\``, true);
- embed.setColor(0xefb81c)
- embed.setFooter(prefix + "serverinfo", client.user.avatarURL)
- embed.setTimestamp()
- embed.setThumbnail(msg.guild.iconURL)
- msg.channel.send({embed});
- }
- if (msg.content.startsWith(prefix + `coinflip`)) {
- const embed = new Discord.RichEmbed()
- .setFooter(prefix + "coinflip", client.user.avatarURL)
- .setDescription("You flipped a " + cF[Math.floor(Math.random() * cF.length)] + "!")
- .setColor(0xefb81c)
- msg.channel.send({embed});
- }
- if (msg.content.startsWith(prefix + `warn`)) {
- let user = msg.mentions.members.first();
- const args = msg.content.split(" ").slice(2).join(" ");
- if (!msg.member.roles.exists('name', 'Staff')) {
- const embed = new Discord.RichEmbed()
- embed.addField("Error", `You do not have the Staff role, therefore you are not permitted to use moderation commands.`, true);
- embed.setFooter(prefix + "warn", client.user.avatarURL)
- embed.setColor(0xefb81c)
- embed.setTimestamp()
- msg.channel.send({ embed: embed });
- } else {
- if (!user) {
- const embed = new Discord.RichEmbed()
- embed.addField("Error", `You didn't mention the user to mute`, true);
- embed.setFooter(prefix + "warn", client.user.avatarURL)
- embed.setColor(0xefb81c)
- embed.setTimestamp()
- msg.channel.send({ embed: embed });
- } else {
- if (!args) {
- const embed = new Discord.RichEmbed()
- embed.addField("Error", `You didn't provide a reason for the warning`, true);
- embed.setFooter(prefix + "warn", client.user.avatarURL)
- embed.setColor(0xefb81c)
- embed.setTimestamp()
- msg.channel.send({ embed: embed });
- } else {
- const embed = new Discord.RichEmbed()
- embed.addField("Success", `**${user.user.tag}** was warned.`, true);
- embed.setFooter(prefix + "warn", client.user.avatarURL)
- embed.setColor(0xefb81c)
- embed.setTimestamp()
- msg.channel.send({ embed: embed });
- const embed2 = new Discord.RichEmbed()
- let DlogChannel = "logs"
- const channel = user.guild.channels.find('name', DlogChannel);
- if (!channel) return;
- embed2.setAuthor(user.user.tag, user.user.avatarURL)
- embed2.setDescription(`**Moderator**: \`${msg.author.tag}\`\n**Reason**: ${args}`)
- embed2.setFooter("User warned", client.user.avatarURL)
- embed.setColor(0xefb81c)
- embed2.setTimestamp()
- channel.send({ embed: embed2 });
- }
- }}}
- if (msg.content.startsWith(prefix + `mute`)) {
- let user = msg.mentions.members.first();
- let role = msg.guild.roles.find('name', 'Muted');
- if (!msg.member.roles.exists('name', 'Staff')) {
- const embed = new Discord.RichEmbed()
- embed.addField("Error", `You do not have the Staff role, therefore you are not permitted to use moderation commands.`, true);
- embed.setFooter(prefix + "mute", client.user.avatarURL)
- embed.setColor(0xefb81c)
- embed.setTimestamp()
- msg.channel.send({ embed: embed });
- } else {
- if (!role) {
- const embed = new Discord.RichEmbed()
- embed.addField("Error", `There isn't a muted role present in the guild`, true);
- embed.setFooter(prefix + "mute", client.user.avatarURL)
- embed.setColor(0xefb81c)
- embed.setTimestamp()
- msg.channel.send({embed});
- } else {
- if (!user) {
- const embed = new Discord.RichEmbed()
- embed.addField("Error", `You didn't mention the user to mute`, true);
- embed.setFooter(prefix + "mute ", client.user.avatarURL)
- embed.setColor(0xefb81c)
- embed.setTimestamp()
- msg.channel.send({ embed: embed });
- } else {
- user.addRole(role)
- const embed = new Discord.RichEmbed()
- embed.addField("Success", `**${user.user.tag}** was muted. To unmute them, remove the \`Muted\` role`, true);
- embed.setFooter(prefix + "mute", client.user.avatarURL)
- embed.setColor(0xefb81c)
- embed.setTimestamp()
- msg.channel.send({ embed: embed });
- const embed2 = new Discord.RichEmbed()
- let DlogChannel = "logs"
- const channel = user.guild.channels.find('name', DlogChannel);
- if (!channel) return;
- embed2.setAuthor(user.user.tag, user.user.avatarURL)
- embed2.setDescription(`**Moderator**: \`${msg.author.tag}\``)
- embed2.setFooter("User muted", client.user.avatarURL)
- embed2.setColor(0xefb81c)
- embed2.setTimestamp()
- channel.send({ embed: embed2 });
- }}}}
- //
- if (msg.content.startsWith(prefix + `youtube`)) {
- const embed = new Discord.RichEmbed()
- const args = msg.content.split(" ").slice(1).join(" ");
- yt.search(args, 1, function(error, result) {
- if (error) {
- embed.setDescription(`Error: \`${error}\``)
- embed.setFooter(prefix + "youtube", client.user.avatarURL)
- embed.setColor(0xefb81c)
- embed.setTimestamp()
- msg.channel.send({embed});
- }
- else {
- // msg.channel.send("```JSON\n" + JSON.stringify(result, null, 1) + "\n```");
- embed.setDescription(`Result found:\n\nTitle: ${result.items[0].snippet.title}\nPublisher: ${result.items[0].snippet.channelTitle}\nID: ${result.items[0].id.videoId}\nURL: [Click here!](https://www.youtube.com/watch?v=${result.items[0].id.videoId})`)
- embed.setFooter(prefix + "youtube", client.user.avatarURL)
- embed.setColor(0xefb81c)
- embed.setTimestamp()
- msg.channel.send({ embed: embed });
- }
- });
- }
- if (msg.content.startsWith(prefix + `play`)) {
- const args = msg.content.split(" ").slice(1).join(" ");
- const voiceChannel = msg.member.voiceChannel;
- if(args.startsWith(`yt:`)) {
- yt.search(args, 1, function(error, result) {
- if (error) {
- const embed22 = new Discord.RichEmbed()
- embed22.addField("Error", `Unknown error, please try again.`, true);
- embed22.setFooter("Music", client.user.avatarURL)
- embed22.setColor(0xefb81c)
- embed22.setTimestamp()
- msg.channel.send({ embed: embed22 });
- } else {
- if (!voiceChannel) {
- const embed222 = new Discord.RichEmbed()
- embed222.addField("Error", `Please be in a voice channel first!`, true);
- embed222.setFooter("Music", client.user.avatarURL)
- embed222.setColor(e58a30)
- embed222.setTimestamp()
- msg.channel.send({ embed: embed222 });
- }
- voiceChannel.join()
- .then(connnection => {
- const stream = ytdl(`https://www.youtube.com/watch?v=${result.items[0].id.videoId}`, { filter: 'audioonly' });
- const dispatcher = connnection.playStream(stream);
- const embed = new Discord.RichEmbed()
- embed.addField("Now playing", `**${result.items[0].snippet.title}** by ${result.items[0].snippet.channelTitle}`, true);
- embed.setFooter("Music", client.user.avatarURL)
- embed.setColor(0xefb81c)
- embed.setThumbnail(result.items[0].snippet.thumbnails.default.url)
- embed.setTimestamp()
- msg.channel.send({ embed: embed });
- dispatcher.on('end', () => voiceChannel.leave());
- })
- }
- })} else {
- if (!voiceChannel) {
- const embed2221 = new Discord.RichEmbed()
- embed2221.addField("Error", `Please be in a voice channel first!`, true);
- embed2221.setFooter("Music", client.user.avatarURL)
- embed2221.setColor(0xefb81c)
- embed2221.setTimestamp()
- msg.channel.send({ embed: embed2221 });
- return;
- }
- voiceChannel.join()
- .then(connnection => {
- const stream = new ytdl(args, { filter: 'audioonly' });
- const dispatcher = connnection.playStream(stream);
- const embed = new Discord.RichEmbed()
- embed.addField("Now playing", `**[${args}](${args})**\nNo more information is available, as a URL was used.`, true);
- embed.setFooter("Music", client.user.avatarURL)
- embed.setColor(0xefb81c)
- embed.setTimestamp()
- msg.channel.send({ embed: embed });
- dispatcher.on('end', () => voiceChannel.leave());
- });
- }}
- if (msg.content.startsWith(prefix + `stop`)) {
- const voice = msg.guild.voiceConnection;
- if (!voice) {
- const embed = new Discord.RichEmbed()
- embed.addField("Error", `The bot isn't playing music.`, true);
- embed.setFooter("Music", client.user.avatarURL)
- embed.setColor(0xefb81c)
- embed.setTimestamp()
- msg.channel.send({ embed: embed });
- } else {
- if (!voice.dispatcher) return;
- voice.dispatcher.end();
- voice.disconnect();
- const embed1 = new Discord.RichEmbed()
- embed1.addField("Success", `Music stopped.`, true);
- embed1.setFooter("Music", client.user.avatarURL)
- embed.setColor(0xefb81c)
- embed1.setTimestamp()
- msg.channel.send({ embed: embed1 });
- }
- }
- // Hoot Command
- if (msg.content.startsWith(prefix + `hoot`)) {
- let member = msg.mentions.members.first();
- const embed = new Discord.RichEmbed()
- embed.setFooter("!hoot | ParasiteMC ")
- embed.setColor(0xefb81c)
- embed.addField("Hoot Hoot", ":owl: " + msg.author + " just hooted at " + member + "! Hoot Hoot Hoot", true)
- embed.setThumbnail("https://i.imgur.com/iSmUCSG.gif")
- msg.channel.send({embed});
- }
- // Dab Command
- if (msg.content.startsWith(prefix + `dab`)) {
- let member = msg.mentions.members.first();
- const embed = new Discord.RichEmbed()
- embed.setFooter("!dab | ParasiteMC ")
- embed.setColor(0xefb81c)
- embed.addField("Dabberty Dab", " " + msg.author + " just dabbed on " + member + "! They must be a hater!", true)
- embed.setThumbnail("https://i.imgur.com/wjwFo5F.png")
- msg.channel.send({embed});
- }
- // Poke Command
- if (msg.content.startsWith(prefix + `poke`)) {
- let member = msg.mentions.members.first();
- const embed = new Discord.RichEmbed()
- embed.setFooter("!poke | ParasiteMC ")
- embed.setColor(0xefb81c)
- embed.addField("*giggles*", msg.author + " just poked " + member + " hehe", true)
- embed.setThumbnail("https://i.imgur.com/yC3srKg.gif")
- msg.channel.send({embed});
- }
- // Highfive Command
- if (msg.content.startsWith(prefix + `highfive`)) {
- let member = msg.mentions.members.first();
- const embed = new Discord.RichEmbed()
- embed.setFooter("!highfive | ParasiteMC ")
- embed.setColor(0xefb81c)
- embed.addField("Epic!", msg.author + " just highfived " + member + "!", true)
- embed.setThumbnail("https://i.imgur.com/DMbJYBr.gif")
- msg.channel.send({embed});
- }
- // Lick Command
- if (msg.content.startsWith(prefix + `lick`)) {
- let member = msg.mentions.members.first();
- const embed = new Discord.RichEmbed()
- embed.setFooter("!lick | ParasiteMC ")
- embed.setColor(0xefb81c)
- embed.addField("Ermm, ", msg.author + " just licked " + member + "...", true)
- embed.setThumbnail("https://i.imgur.com/mxOEBUM.gif")
- msg.channel.send({embed});
- }
- // Hug Command
- if (msg.content.startsWith(prefix + `hug`)) {
- let member = msg.mentions.members.first();
- const embed = new Discord.RichEmbed()
- embed.setFooter("!hug | ParasiteMC ")
- embed.setColor(0xefb81c)
- embed.addField("Cute!", msg.author + " just hugged " + member + "!", true)
- embed.setThumbnail("https://i.imgur.com/IPs7xKU.gif")
- msg.channel.send({embed});
- }
- // Slap Command
- if (msg.content.startsWith(prefix + `slap`)) {
- let member = msg.mentions.members.first();
- const embed = new Discord.RichEmbed()
- embed.setFooter("!slap | ParasiteMC ")
- embed.setColor(0xefb81c)
- embed.addField("Ow, ", msg.author + " just slapped " + member + "!", true)
- embed.setThumbnail("https://i.imgur.com/7eOVjlR.gif")
- msg.channel.send({embed});
- }
- // Kiss Command
- if (msg.content.startsWith(prefix + `kiss`)) {
- let member = msg.mentions.members.first();
- const embed = new Discord.RichEmbed()
- embed.setFooter("!kiss | ParasiteMC ")
- embed.setColor(0xefb81c)
- embed.addField("Awww, ", msg.author + " just kissed " + member + "!", true)
- embed.setThumbnail("https://i.imgur.com/4l9OkSZ.gif")
- msg.channel.send({embed});
- }
- });
- client.login(token);
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement