diff --git a/commands/help.js b/commands/help.js index 3805e7e..f32dc9e 100644 --- a/commands/help.js +++ b/commands/help.js @@ -60,13 +60,13 @@ exports.run = (client, message, args, level, data) => { return message.channel.send('Command/alias doesn\'t exist') } - let desc = '' + let aliases if (cmd.conf.aliases.length > 0) { - desc += `*(Aliases: ${cmd.conf.aliases.join(', ')})*\n\n` + aliases = '`' + cmd.conf.aliases.join('`, `') + '`' } - desc += cmd.help.description + `\n\n**You need the \`${cmd.conf.permLevel}\` rank to run this command! This command has a cooldown of \`${cmd.conf.cooldown / 1000}\` seconds per user.**` + const desc = cmd.help.description + `\n\n**You need the \`${cmd.conf.permLevel}\` rank to run this command! This command has a cooldown of \`${cmd.conf.cooldown / 1000}\` seconds per user.**` embed.setTitle(cmd.help.category.toLowerCase() + ':' + cmd.help.name) embed.setDescription(desc) @@ -74,6 +74,9 @@ exports.run = (client, message, args, level, data) => { if (cmd.help.examples.length > 0) { embed.addField('**Examples**', cmd.help.examples) } + if (aliases) { + embed.addField('**Aliases**', aliases) + } embed.setFooter('< > = optional, [ ] = required. Don\'t include the brackets in the command itself!') message.channel.send(embed) } diff --git a/commands/pride.js b/commands/pride.js new file mode 100644 index 0000000..e4a6220 --- /dev/null +++ b/commands/pride.js @@ -0,0 +1,51 @@ +const url = 'https://demirramon.com/gen/pride.png' +const Discord = require('discord.js') +exports.run = (client, message, args) => { + const flag = args[0].toLowerCase() + if (!flag) { + return message.channel.send( + `<:error:466995152976871434> No message provided. Usage: \`${client.commands.get('pride').help.usage}\`` + ) + } + + const available = ['lesbian', 'gay', 'bisexual', 'pansexual', 'trans', 'asexual', 'aromantic', 'ally'] + + if (!available.includes(flag)) { + return message.channel.send(`This flag isn't available. Available flags: \`${available.join('`, `')}\``) + } + + let gradient = 'false' + if (message.flags.includes('g')) { + gradient = 'true' + } + + message.channel.startTyping() + + const params = `image=${message.author.avatarURL({ format: 'png', size: 2048 })}&flag=${flag}&full=true&gradient=${gradient}&background=false&fit=true&v=2019-08-07` + + try { + message.channel.stopTyping() + message.channel.send({ files: [new Discord.MessageAttachment(url + '?' + params)] }) + } catch (err) { + message.channel.stopTyping() + message.channel.send(`<:error:466995152976871434> Error when generating image: \`${err}\``) + } +} + +exports.conf = { + enabled: true, + guildOnly: false, + aliases: [], + permLevel: 'User', + requiredPerms: ['ATTACH_FILES'], + cooldown: 20000 +} + +exports.help = { + name: 'pride', + category: 'Fun', + description: 'Adds a pride flag ring to your avatar. Available flags are lesbian, gay, bisexual, pansexual, trans, asexual, aromantic and ally. Generator created by [Demirramon.](https://demirramon.com/)', + usage: '`pride [flag]` - Adds a pride flag overlay to your avatar.\n`pride [flag] -g` - Adds a pride flag gradient on your avatar.', + flags: '`-g` - Makes the overlay a gradient.', + examples: '`pride trans`\n`pride lesbian -g`' +} diff --git a/index.js b/index.js index a78b781..9b462bb 100644 --- a/index.js +++ b/index.js @@ -109,10 +109,10 @@ const init = async () => { await client.db.init(client) // Login to Discord - function failedToLogin(err) { - client.logger.error('Failed to login: ' + err); + function failedToLogin (err) { + client.logger.error('Failed to login: ' + err) - process.exit(0); + process.exit(0) }; if (client.devmode !== true) {