summaryrefslogtreecommitdiff
path: root/dist/commands/fun/fml.js
diff options
context:
space:
mode:
Diffstat (limited to 'dist/commands/fun/fml.js')
-rw-r--r--dist/commands/fun/fml.js53
1 files changed, 53 insertions, 0 deletions
diff --git a/dist/commands/fun/fml.js b/dist/commands/fun/fml.js
new file mode 100644
index 0000000..08d29ec
--- /dev/null
+++ b/dist/commands/fun/fml.js
@@ -0,0 +1,53 @@
+"use strict";
+var __awaiter = (this && this.__awaiter) || function (thisArg, _arguments, P, generator) {
+ function adopt(value) { return value instanceof P ? value : new P(function (resolve) { resolve(value); }); }
+ return new (P || (P = Promise))(function (resolve, reject) {
+ function fulfilled(value) { try { step(generator.next(value)); } catch (e) { reject(e); } }
+ function rejected(value) { try { step(generator["throw"](value)); } catch (e) { reject(e); } }
+ function step(result) { result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected); }
+ step((generator = generator.apply(thisArg, _arguments || [])).next());
+ });
+};
+var __importDefault = (this && this.__importDefault) || function (mod) {
+ return (mod && mod.__esModule) ? mod : { "default": mod };
+};
+Object.defineProperty(exports, "__esModule", { value: true });
+const discord_js_commando_1 = require("discord.js-commando");
+const node_superfetch_1 = __importDefault(require("node-superfetch"));
+const emoji_random_1 = __importDefault(require("emoji-random"));
+const cheerio_1 = __importDefault(require("cheerio"));
+module.exports = class FMLFun extends discord_js_commando_1.Command {
+ constructor(client) {
+ super(client, {
+ name: 'fml',
+ aliases: [
+ 'fuckmylife',
+ 'fuck-my-life'
+ ],
+ group: 'fun',
+ memberName: 'fml',
+ description: 'Gives you a random FML.',
+ examples: ['uwu!fml'],
+ throttling: {
+ usages: 5,
+ duration: 30
+ },
+ userPermissions: ['SEND_MESSAGES', 'READ_MESSAGE_HISTORY'],
+ clientPermissions: ['SEND_MESSAGES', 'READ_MESSAGE_HISTORY'],
+ });
+ }
+ run(msg) {
+ return __awaiter(this, void 0, void 0, function* () {
+ try {
+ const { text } = yield node_superfetch_1.default.get('http://www.fmylife.com/random');
+ const $ = cheerio_1.default.load(text, { normalizeWhitespace: true });
+ const fml = $('a.article-link').first().text().trim();
+ return msg.reply(fml + ' ' + emoji_random_1.default.random());
+ }
+ catch (err) {
+ return msg.reply(`Woops, an error has occured: \`${err.message}\`. Try again later! ${emoji_random_1.default.random()}`);
+ }
+ });
+ }
+};
+//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiZm1sLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vc3JjL2NvbW1hbmRzL2Z1bi9mbWwudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6Ijs7Ozs7Ozs7Ozs7Ozs7QUFBQSw2REFBK0Q7QUFDL0Qsc0VBQXFDO0FBQ3JDLGdFQUFnQztBQUNoQyxzREFBNkI7QUFFN0IsTUFBTSxDQUFDLE9BQU8sR0FBRyxNQUFNLE1BQU8sU0FBUSw2QkFBTztJQUN6QyxZQUFZLE1BQU07UUFDZCxLQUFLLENBQUMsTUFBTSxFQUFFO1lBQ1YsSUFBSSxFQUFFLEtBQUs7WUFDWCxPQUFPLEVBQUU7Z0JBQ0wsWUFBWTtnQkFDWixjQUFjO2FBQ2pCO1lBQ0QsS0FBSyxFQUFFLEtBQUs7WUFDWixVQUFVLEVBQUUsS0FBSztZQUNqQixXQUFXLEVBQUUseUJBQXlCO1lBQ3RDLFFBQVEsRUFBRSxDQUFDLFNBQVMsQ0FBQztZQUNyQixVQUFVLEVBQUU7Z0JBQ1IsTUFBTSxFQUFFLENBQUM7Z0JBQ1QsUUFBUSxFQUFFLEVBQUU7YUFDZjtZQUNELGVBQWUsRUFBRSxDQUFDLGVBQWUsRUFBRSxzQkFBc0IsQ0FBQztZQUMxRCxpQkFBaUIsRUFBRSxDQUFDLGVBQWUsRUFBRSxzQkFBc0IsQ0FBQztTQUMvRCxDQUFDLENBQUM7SUFDUCxDQUFDO0lBQ0ssR0FBRyxDQUFDLEdBQW9COztZQUMxQixJQUFJO2dCQUNBLE1BQU0sRUFBRSxJQUFJLEVBQUUsR0FBRyxNQUFNLHlCQUFPLENBQUMsR0FBRyxDQUFDLCtCQUErQixDQUFDLENBQUE7Z0JBQ25FLE1BQU0sQ0FBQyxHQUFHLGlCQUFPLENBQUMsSUFBSSxDQUFDLElBQUksRUFBRSxFQUFFLG1CQUFtQixFQUFFLElBQUksRUFBRSxDQUFDLENBQUE7Z0JBQzNELE1BQU0sR0FBRyxHQUFHLENBQUMsQ0FBQyxnQkFBZ0IsQ0FBQyxDQUFDLEtBQUssRUFBRSxDQUFDLElBQUksRUFBRSxDQUFDLElBQUksRUFBRSxDQUFBO2dCQUNyRCxPQUFPLEdBQUcsQ0FBQyxLQUFLLENBQUMsR0FBRyxHQUFHLEdBQUcsR0FBRyxzQkFBSyxDQUFDLE1BQU0sRUFBRSxDQUFDLENBQUE7YUFDL0M7WUFBQyxPQUFPLEdBQUcsRUFBRTtnQkFDVixPQUFPLEdBQUcsQ0FBQyxLQUFLLENBQUMsa0NBQWtDLEdBQUcsQ0FBQyxPQUFPLHdCQUF3QixzQkFBSyxDQUFDLE1BQU0sRUFBRSxFQUFFLENBQUMsQ0FBQTthQUMxRztRQUNMLENBQUM7S0FBQTtDQUNKLENBQUMifQ== \ No newline at end of file