From 2a7e442c349e23d73d0213e7aac179535582c3c5 Mon Sep 17 00:00:00 2001 From: Daniel Odendahl Jr Date: Fri, 24 Mar 2017 14:52:56 +0000 Subject: [PATCH] Starboard Beta --- index.js | 30 +++++++++++++++++++++++++----- 1 file changed, 25 insertions(+), 5 deletions(-) diff --git a/index.js b/index.js index 950d8ccd..76ee457f 100644 --- a/index.js +++ b/index.js @@ -1,3 +1,4 @@ +const Discord = require('discord.js'); const commando = require('discord.js-commando'); const request = require('superagent'); const config = require('./config.json'); @@ -36,7 +37,7 @@ client.registry }) .registerCommandsIn(path.join(__dirname, 'commands')); -client.on('message', message => { +client.on('message', (message) => { if (message.author.bot) return; if (message.channel.type === 'dm') return; if (message.content.startsWith(`<@${client.user.id}>`)) { @@ -54,20 +55,39 @@ client.on('message', message => { } }); -client.on('guildMemberAdd', member => { +client.on('messageReactionAdd', (reaction, user) => { + if(reaction.message.channel.type === 'dm') return; + if (reaction.emoji.name !== '⭐') return; + if (reaction.count > 1) return; + let starboard = user.guild.channels.find('name', 'starboard'); + if (!starboard) return; + if (reaction.message.author.id === user.id) { + reaction.remove(user.id); + reaction.message.channel.send(`:x: Error! ${user.username}, you can't star your own messages!`); + } + else { + const embed = new Discord.RichEmbed() + .setAuthor(user.username, user.avatarURL) + .setDescription('Message', + reaction.message.content); + starboard.sendEmbed(embed); + } +}); + +client.on('guildMemberAdd', (member) => { if (member.guild.id !== config.server) return; member.addRole(member.guild.roles.find('name', 'Members')); let addedMemberName = member.user.username; member.guild.channels.get(config.announcementChannel).send(`Welcome ${addedMemberName}!`); }); -client.on('guildMemberRemove', member => { +client.on('guildMemberRemove', (member) => { if (member.guild.id !== config.server) return; let removedMemberName = member.user.username; member.guild.channels.get(config.announcementChannel).send(`Bye ${removedMemberName}...`); }); -client.on('guildCreate', guild => { +client.on('guildCreate', (guild) => { console.log(`[Guild] I have joined the guild: ${guild.name}, Owned by: ${guild.owner.user.username} (${guild.id})!`); client.guilds.get(config.server).channels.get(config.announcementChannel).send(`I have joined the server: ${guild.name}, Owned by: ${guild.owner.user.username} (${guild.id})!`); client.shard.fetchClientValues('guilds.size').then(results => { @@ -99,7 +119,7 @@ client.on('guildCreate', guild => { }); }); -client.on('guildDelete', guild => { +client.on('guildDelete', (guild) => { console.log(`[Guild] I have left the guild: ${guild.name}, Owned by: ${guild.owner.user.username} (${guild.id})...`); client.guilds.get(config.server).channels.get(config.announcementChannel).send(`I have left the server: ${guild.name}, Owned by: ${guild.owner.user.username} (${guild.id})...`); client.shard.fetchClientValues('guilds.size').then(results => {