aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAlee <alee14498@gmail.com>2018-02-24 22:07:45 -0500
committerAlee <alee14498@gmail.com>2018-02-24 22:07:45 -0500
commitbe8a7eb3343ea42be1e91da4f4b682cce5cd3f16 (patch)
tree861ace3a1bc4962c41b0d1a11041e979ea77fce4
parentc35bceee4ea05d1cac87609bd6e76d998b12ad17 (diff)
downloadAleeBot-be8a7eb3343ea42be1e91da4f4b682cce5cd3f16.tar.gz
AleeBot-be8a7eb3343ea42be1e91da4f4b682cce5cd3f16.tar.bz2
AleeBot-be8a7eb3343ea42be1e91da4f4b682cce5cd3f16.zip
New eval command
-rw-r--r--src/commands/eval.js67
1 files changed, 67 insertions, 0 deletions
diff --git a/src/commands/eval.js b/src/commands/eval.js
new file mode 100644
index 0000000..a1aae92
--- /dev/null
+++ b/src/commands/eval.js
@@ -0,0 +1,67 @@
+module.exports.run = async (client, message, args) => {
+ if (!['242775871059001344',].includes(message.author.id)) return message.reply('Nope! You need the person who created this bot to use this command.');
+ const { RichEmbed } = require('discord.js');
+ const code = args.join(' ');
+
+ let evaled;
+ let remove;
+
+ try {
+ remove = text => {
+ if (typeof(text) === 'string') {
+ return text.replace(/`/g, '`' + String.fromCharCode(8203)).replace(/@/g, '@' + String.fromCharCode(8203));
+ } else {
+ return text;
+ }
+ };
+
+ evaled = eval(code);
+
+ if (typeof evaled !== 'string') {
+ evaled = require('util').inspect(evaled);
+ }
+
+ } catch (err) {
+ const embed = new RichEmbed()
+ .setAuthor('Eval Error')
+ .setDescription('Eval\'s result')
+ .addField(':inbox_tray: Input:', `\`\`\`js\n${code}\n\`\`\``)
+ .addField(':outbox_tray: Output:', `\`\`\`${err}\`\`\``)
+ .setFooter('Eval', client.user.avatarURL)
+ .setColor('RED');
+ return message.channel.send({ embed });
+ }
+
+ try {
+ const embed = new RichEmbed()
+ .setAuthor('Eval Success')
+ .setDescription('Eval\'s result')
+ .addField(':inbox_tray: Input:', `\`\`\`js\n${code}\n\`\`\``)
+ .addField(':outbox_tray: Output:', `\`\`\`js\n${remove(evaled)}\n\`\`\``)
+ .setFooter('Eval', client.user.avatarURL)
+ .setColor('GREEN');
+
+ return message.channel.send({ embed });
+ } catch (err) {
+ const embed = new RichEmbed()
+ .setAuthor('Eval Error')
+ .setDescription('Eval\'s result')
+ .addField(':inbox_tray: Input:', `\`\`\`js\n${code}\n\`\`\``)
+ .addField(':outbox_tray: Output:', `\`\`\`${err}\`\`\``)
+ .setFooter('Eval', client.user.avatarURL)
+ .setColor('RED');
+ return message.channel.send({ embed });
+ }
+ };
+
+ exports.conf = {
+ aliases: [],
+ guildOnly: false,
+ };
+ exports.help = {
+ name: 'eval',
+ description: 'Evalulates commands.',
+ usage: '<code>',
+ category: '- Owners Only',
+ };
+ \ No newline at end of file