From 460f75793314c9bf1d3778b6d89be7c7725445b7 Mon Sep 17 00:00:00 2001 From: Cynthia Foxwell Date: Wed, 28 Jul 2021 11:56:27 -0600 Subject: [PATCH] utility: banner command --- src/modules/utility.js | 42 ++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 42 insertions(+) diff --git a/src/modules/utility.js b/src/modules/utility.js index df0b069..52c5ffe 100644 --- a/src/modules/utility.js +++ b/src/modules/utility.js @@ -87,6 +87,48 @@ avatar.callback = async function (msg, line) { }; hf.registerCommand(avatar); +const banner = new Command("banner"); +banner.category = CATEGORY; +banner.helpText = "Get banner of a user"; +banner.usage = ""; +banner.callback = async function (msg, line) { + const color = getTopColor(msg, hf.bot.user.id, pastelize(hf.bot.user.id)); + + let id = msg.author.id; + + if (line) { + const lookup = await lookupUser(msg, line); + if ( + lookup == "No results" || + lookup == "Canceled" || + lookup == "Request timed out" + ) { + return lookup; + } else { + id = lookup.id; + } + } + + const user = await hf.bot.requestHandler.request("GET", "/users/" + id, true); + + if (!user.banner) return "This user does not have a banner."; + + const url = `${BANNER_BASE}${user.id}/${user.banner}.${ + user.banner.startsWith("a_") ? "gif?size=1024&_=.gif" : "png?size=1024" + }`; + return { + embed: { + color, + title: `Avatar for \`${user.username}#${user.discriminator}\``, + url, + image: { + url, + }, + }, + }; +}; +hf.registerCommand(banner); + const lookupinvite = new Command("lookupinvite"); lookupinvite.category = CATEGORY; lookupinvite.helpText = "Lookup an invite";