From 4567fccbed034a57dc5e483b4e0a04d790f8151a Mon Sep 17 00:00:00 2001 From: Dragon Fire Date: Thu, 2 Jul 2020 14:06:12 -0400 Subject: [PATCH] Dating Command (lol) --- README.md | 15 +++++++++++++- assets/json/dating.json | 12 +++++++++++ commands/other/dating.js | 44 ++++++++++++++++++++++++++++++++++++++++ package.json | 2 +- 4 files changed, 71 insertions(+), 2 deletions(-) create mode 100644 assets/json/dating.json create mode 100644 commands/other/dating.js diff --git a/README.md b/README.md index cac3d7f8..95e037ec 100644 --- a/README.md +++ b/README.md @@ -161,6 +161,18 @@ simply switch to basic text. * `PORTAL` is used in `portal-send`. * `FLANKER`, `FRONT_LINE`, `SUPPORT`, and `DAMAGE` are used in `paladins`. +### Dating Info + +This is the hilarious section that determines what comes out of the +`dating` command. + +* `DATING_ALBUM_ID` is an Imgur album ID (see #imgur-album-ids) that includes the photos you want to send in the command. +* `DATING_NAME` is the name you want to go by in the command. +* `DATING_AGE` is the age you want to display in the command. +* `DATING_TAG` is the Discord tag (ex. dragonfire535#8081) you want to display in the command. +* `DATING_ORIENTATION` is either "girls" if you want girls, "boys" if you want boys, or "both" if you don't care. +* `DATING_SERIOUS` is a boolean (true/false) value that determines if you want to be serious about this or not. Really want to meet someone? Set it to "true". + ### API Keys, IDs, and Secrets Here's where things get LONG. If you're greeted with a log-in page @@ -231,7 +243,7 @@ in the appropriate channel's topic to use it. ## Commands -Total: 513 +Total: 514 ### Utility: @@ -779,6 +791,7 @@ Total: 513 ### Other: * **cleverbot:** Talk to Cleverbot. (Owner-Only) +* **dating:** Find the person of your dreams with this dating system! * **portal-send:** Send a message to a portal channel. * **prune:** Deletes up to 99 messages from the current channel. * **rename-all:** Renames every member of the server. (Owner-Only) diff --git a/assets/json/dating.json b/assets/json/dating.json new file mode 100644 index 00000000..fed00c15 --- /dev/null +++ b/assets/json/dating.json @@ -0,0 +1,12 @@ +[ + "Perfect match! You guys were made for each other!", + "Literally 100% compatability. What are you waiting for?", + "This is strange, I've never seen such a high compatability before.", + "The person of your dreams right here.", + "Come on, send that friend request. You know you want this.", + "You sure you can wait? This is a once-in-a-lifetime opprotunity.", + "Going fast, get it while it's hot! Oh wait... That's always.", + "You won't regret this. I promise.", + "Trust me, you've never seen such a perfect human being.", + "This may be a joke command, but you know you still want to try." +] diff --git a/commands/other/dating.js b/commands/other/dating.js new file mode 100644 index 00000000..31f9e218 --- /dev/null +++ b/commands/other/dating.js @@ -0,0 +1,44 @@ +const ImgurAlbumCommand = require('../../structures/commands/ImgurAlbum'); +const { stripIndents } = require('common-tags'); +const texts = require('../../assets/json/dating'); +const { DATING_ALBUM_ID, DATING_NAME, DATING_AGE, DATING_TAG, DATING_ORIENTATION, DATING_SERIOUS } = process.env; + +module.exports = class DatingCommand extends ImgurAlbumCommand { + constructor(client) { + super(client, { + name: 'dating', + aliases: ['date', 'tinder'], + group: 'random-img', + memberName: 'dating', + description: 'Find the person of your dreams with this dating system!', + clientPermissions: ['ATTACH_FILES'], + albumID: DATING_ALBUM_ID + }); + } + + generateText() { + const text = texts[Math.floor(Math.random() * texts.length)]; + return stripIndents` + **${DATING_NAME}, ${DATING_AGE}** + _${text}_ + + Send a friend request to ${DATING_TAG} to meet now! ${this.orientationText} + ${this.seriousText} + `; + } + + get orientationText() { + if (DATING_ORIENTATION === 'girls') return '(Note: Girls only)'; + if (DATING_ORIENTATION === 'boys') return '(Note: Boys only)'; + if (DATING_ORIENTATION === 'both') return '(All genders welcome!)'; + return ''; + } + + get seriousText() { + if (!DATING_SERIOUS || DATING_SERIOUS === 'false') return 'Don\'t worry, this is just a joke. Unless...'; + if (DATING_SERIOUS === 'true') { + return 'This may look like a joke, but if you actually want to, feel free to really try.'; + } + return ''; + } +}; diff --git a/package.json b/package.json index c454af56..d8a8aa73 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "xiao", - "version": "119.0.3", + "version": "119.1.0", "description": "Your personal server companion.", "main": "Xiao.js", "scripts": {