diff --git a/AquaNet/src/App.svelte b/AquaNet/src/App.svelte index 4a00ba6d..0963c69b 100644 --- a/AquaNet/src/App.svelte +++ b/AquaNet/src/App.svelte @@ -5,6 +5,7 @@ import UserHome from "./pages/UserHome.svelte"; import Icon from '@iconify/svelte'; import Home from "./pages/Home.svelte"; + import Ranking from "./pages/Ranking.svelte"; import { USER } from "./libs/sdk"; export let url = ""; @@ -21,13 +22,14 @@ {/if} home
maps
-
rankings
+ rankings
+ diff --git a/AquaNet/src/libs/generalTypes.ts b/AquaNet/src/libs/generalTypes.ts index e82b65ee..6d01bac7 100644 --- a/AquaNet/src/libs/generalTypes.ts +++ b/AquaNet/src/libs/generalTypes.ts @@ -62,6 +62,16 @@ export interface GenericGamePlaylog { beforeRating: number } +export interface GenericRanking { + name: string + rank: number + accuracy: number + rating: number + fullCombo: number + allPerfect: number + lastSeen: string +} + export interface RankCount { name: string count: number diff --git a/AquaNet/src/libs/sdk.ts b/AquaNet/src/libs/sdk.ts index d40203cc..46e8cb46 100644 --- a/AquaNet/src/libs/sdk.ts +++ b/AquaNet/src/libs/sdk.ts @@ -119,6 +119,9 @@ export const GAME = { post(`/api/v2/game/${game}/trend`, { username }), userSummary: (username: string, game: GameName): Promise => post(`/api/v2/game/${game}/user-summary`, { username }), + ranking: (game: GameName): Promise => + post(`/api/v2/game/${game}/ranking`, { }), + } export const DATA = { diff --git a/AquaNet/src/pages/Ranking.svelte b/AquaNet/src/pages/Ranking.svelte new file mode 100644 index 00000000..7e31bb3d --- /dev/null +++ b/AquaNet/src/pages/Ranking.svelte @@ -0,0 +1,37 @@ + + +
+

Global Leaderboard

+ + {#if d !== null} + {#each d.user as user} +

{user.rank}

+

{user.name}

+

{(user.accuracy / 1).toFixed(2)}%

+

{user.rating}

+

{user.fullCombo}

+

{user.allPerfect}

+
+ {/each} + {:else} +

Please Wait...

+ {/if} +
\ No newline at end of file