From f1e85074ce32f62a7b44d5bd6c8399d99f2368c5 Mon Sep 17 00:00:00 2001 From: mat Date: Mon, 31 May 2021 19:38:29 -0500 Subject: add leaderboard infos --- src/database.ts | 19 +++++++++++++++++-- 1 file changed, 17 insertions(+), 2 deletions(-) (limited to 'src') diff --git a/src/database.ts b/src/database.ts index 5ee29d4..577bd6a 100644 --- a/src/database.ts +++ b/src/database.ts @@ -100,6 +100,13 @@ let profileLeaderboardsCollection: Collection let sessionsCollection: Collection let accountsCollection: Collection + +const leaderboardInfos: { [ leaderboardName: string ]: string } = { + highest_crit_damage: 'This leaderboard is capped at the integer limit because Hypixel, look at Highest critical damage instead.', + highest_critical_damage: 'uhhhhh yeah idk either' +} + + async function connect(): Promise { if (!process.env.db_uri) return console.warn('Warning: db_uri was not found in .env. Features that utilize the database such as leaderboards won\'t work.') @@ -353,12 +360,14 @@ interface MemberLeaderboard { name: string unit?: string list: MemberLeaderboardItem[] + info?: string } interface ProfileLeaderboard { name: string unit?: string list: ProfileLeaderboardItem[] + info?: string } @@ -415,11 +424,17 @@ export async function fetchProfileLeaderboard(name: string): Promise { const profileLeaderboards = await fetchAllProfileLeaderboardAttributes() + let leaderboard: MemberLeaderboard|ProfileLeaderboard if (profileLeaderboards.includes(name)) { - return await fetchProfileLeaderboard(name) + leaderboard = await fetchProfileLeaderboard(name) } else { - return await fetchMemberLeaderboard(name) + leaderboard = await fetchMemberLeaderboard(name) } + + if (leaderboardInfos[name]) + leaderboard.info = leaderboardInfos[name] + + return leaderboard } /** Get the leaderboard positions a member is on. This may take a while depending on whether stuff is cached */ -- cgit