Files
hypixel-stats/src/lib/schema/stats/tnt-games.ts
2025-09-17 23:01:22 +02:00

52 lines
1.3 KiB
TypeScript

import z from "zod"
function tntGamesModeStats() {
const ids = [
"ancient",
"blood",
"fire",
"hydro",
"ice",
"kinetic",
"storm",
"toxic",
"wither"
] as const
const stats = [
"kills",
"deaths",
"assists",
"explode",
"regen"
] as const
const entries = new Map<string, z.ZodDefault<z.ZodNumber>>()
for (const id of ids) {
for (const stat of stats) {
entries.set(`new_${id}wizard_${stat}`, z.number().default(0))
}
}
return Object.fromEntries(entries) as Record<`new_${typeof ids[number]}wizard_${typeof stats[number]}`, z.ZodDefault<z.ZodNumber>>
}
export const tntGamesStatsSchema = z.object({
wins: z.number().default(0),
coins: z.number().default(0),
kills_tntag: z.number().default(0),
wins_tntag: z.number().default(0),
wins_tntrun: z.number().default(0),
record_tntrun: z.number().default(0),
kills_pvprun: z.number().default(0),
wins_pvprun: z.number().default(0),
record_pvprun: z.number().default(0),
wins_bowspleef: z.number().default(0),
deaths_bowspleef: z.number().default(0),
wins_capture: z.number().default(0),
kills_capture: z.number().default(0),
deaths_capture: z.number().default(0),
...tntGamesModeStats()
})