Finished uhc genereal stats

This commit is contained in:
2025-09-04 22:25:57 +02:00
parent 1646cb7492
commit 27a8e89d7b
5 changed files with 138 additions and 11 deletions

View File

@@ -0,0 +1,55 @@
import { MODES } from "@/data/hypixel/uhc"
import { NonNullStats } from "@/lib/schema/player"
export function getStatsCombined(stats: NonNullable<NonNullStats["UHC"]>) {
return {
wins: getUHCWins(stats),
kills: getUHCKills(stats),
deaths: getUHCDeaths(stats),
heads: getUHCHeads(stats)
}
}
function getUHCWins(stats: NonNullable<NonNullStats["UHC"]>) {
let wins = 0
const ids = MODES.filter(m => m.id !== "").map(m => m.id)
for (const id of ids) {
wins = wins + stats[`wins_${id}`]
}
return wins + stats.wins
}
function getUHCKills(stats: NonNullable<NonNullStats["UHC"]>) {
let kills = 0
const ids = MODES.filter(m => m.id !== "").map(m => m.id)
for (const id of ids) {
kills = kills + stats[`kills_${id}`]
}
return kills + stats.kills
}
function getUHCDeaths(stats: NonNullable<NonNullStats["UHC"]>) {
let deaths = 0
const ids = MODES.filter(m => m.id !== "").map(m => m.id)
for (const id of ids) {
deaths = deaths + stats[`deaths_${id}`]
}
return deaths + stats.deaths
}
function getUHCHeads(stats: NonNullable<NonNullStats["UHC"]>) {
let heads = 0
const ids = MODES.filter(m => m.id !== "").map(m => m.id)
for (const id of ids) {
heads = heads + stats[`heads_eaten_${id}`]
}
return heads + stats.heads_eaten
}