From 2c37b3a64f48f7303de95dd074721f9afa932812 Mon Sep 17 00:00:00 2001
From: Supositware <sup@libtar.de>
Date: Mon, 19 Dec 2022 05:03:39 +0100
Subject: [PATCH] Display the cooldown more nicely

---
 utils/ratelimiter.js | 8 ++++++--
 1 file changed, 6 insertions(+), 2 deletions(-)

diff --git a/utils/ratelimiter.js b/utils/ratelimiter.js
index 30e7926..01cfe82 100644
--- a/utils/ratelimiter.js
+++ b/utils/ratelimiter.js
@@ -21,8 +21,12 @@ function check(user, commandName, commands) {
 		}
 
 		if (commands.ratelimit === ratelimit[userID][commandName].limit) {
-			console.log(`\x1b[33m${userTag} (${userID})\x1b[0m is rate limited on \x1b[33m${commandName}\x1b[0m for ${Math.floor((ratelimit[userID][commandName].cooldown - date) / 1000)} seconds`);
-			return `You are being rate limited. You can try again in ${Math.floor((ratelimit[userID][commandName].cooldown - date) / 1000)} seconds.`;
+			const seconds = Math.floor((ratelimit[userID][commandName].cooldown - date) / 1000);
+			const minutes = Math.floor(seconds / 60);
+			const hours = Math.floor(minutes / 60);
+			const dateString = `${hours > 0 ? `${Math.floor(hours)} hours` : ''}${minutes > 0 ? ` ${Math.floor(minutes % 60)} minutes` : ''}${seconds > 0 ? ` ${Math.floor(seconds % 60)} seconds` : ''}`;
+			console.log(`\x1b[33m${userTag} (${userID})\x1b[0m is rate limited on \x1b[33m${commandName}\x1b[0m for ${dateString}.`);
+			return `You are being rate limited. You can try again in ${dateString}.`;
 		}
 	}