[+] Top 10 out of recent 40

matching
Azalea 2024-12-26 23:15:14 -05:00
parent 42d94b43b1
commit 77a791e5da
3 changed files with 10 additions and 5 deletions

View File

@ -9,9 +9,12 @@
export let comp: string | undefined; export let comp: string | undefined;
export let allMusics: Record<string, MusicMeta>; export let allMusics: Record<string, MusicMeta>;
export let game: GameName; export let game: GameName;
export let top: number | undefined = undefined;
const split = comp?.split(",")?.filter(it => it.split(":")[0] !== '0') let split = comp?.split(",")?.filter(it => it.split(":")[0] !== '0')
?.map(it => parseComposition(it, allMusics[it.split(":")[0]], game)) ?.map(it => parseComposition(it, allMusics, game))
if (top) split = split?.toSorted((a, b) => b.score - a.score).slice(0, top)
if (split) console.log("Split", split) if (split) console.log("Split", split)
</script> </script>

View File

@ -116,12 +116,13 @@ export interface ParsedComposition {
} }
export function parseComposition(item: string, meta: MusicMeta, game: GameName): ParsedComposition { export function parseComposition(item: string, allMusics: Record<string, MusicMeta>, game: GameName): ParsedComposition {
// Chuni & ongeki: musicId, difficultId, score // Chuni & ongeki: musicId, difficultId, score
// Mai: musicId, level (difficultyId), romVersion, achievement (score) // Mai: musicId, level (difficultyId), romVersion, achievement (score)
const mapData = item.split(':').map(Number) const mapData = item.split(':').map(Number)
if (game === 'mai2') mapData.splice(2, 1) if (game === 'mai2') mapData.splice(2, 1)
const [ musicId, diffId, score ] = mapData const [ musicId, diffId, score ] = mapData
const meta = allMusics[musicId]
// Get score multiplier // Get score multiplier
const tup = getMult(score, game) const tup = getMult(score, game)

View File

@ -259,8 +259,9 @@
<RatingComposition title="B30" comp={d.user.ratingComposition.best30} {allMusics} {game}/> <RatingComposition title="B30" comp={d.user.ratingComposition.best30} {allMusics} {game}/>
<RatingComposition title="B35" comp={d.user.ratingComposition.best35} {allMusics} {game}/> <RatingComposition title="B35" comp={d.user.ratingComposition.best35} {allMusics} {game}/>
<RatingComposition title="B15" comp={d.user.ratingComposition.best15} {allMusics} {game}/> <RatingComposition title="B15" comp={d.user.ratingComposition.best15} {allMusics} {game}/>
<RatingComposition title="N10" comp={d.user.ratingComposition.next10} {allMusics} {game}/> <!-- <RatingComposition title="Hot 10" comp={d.user.ratingComposition.hot10} {allMusics} {game}/> -->
<RatingComposition title="Recent 40" comp={d.user.ratingComposition.recent10} {allMusics} {game}/> <!-- <RatingComposition title="N10" comp={d.user.ratingComposition.next10} {allMusics} {game}/> -->
<RatingComposition title="Recent 10" comp={d.user.ratingComposition.recent10} {allMusics} {game} top={10}/>
<div class="recent"> <div class="recent">
<h2>{t('UserHome.RecentScores')}</h2> <h2>{t('UserHome.RecentScores')}</h2>