Added wool games mode stats

This commit is contained in:
2025-09-11 11:42:42 +02:00
parent 11fb9b75cd
commit c686be44e6
5 changed files with 180 additions and 10 deletions

View File

@@ -1,7 +1,19 @@
import { EASY_XP, ICONS, NORMAL_XP, PRESTIGES } from "@/data/hypixel/woolgames"
import { CLASSES, DIFFICULTIES, EASY_XP, ICONS, NORMAL_XP, PRESTIGES } from "@/data/hypixel/woolgames"
import { getColorFromCode } from "@/lib/colors"
import { floorLevel } from "../general"
export function getWoolGamesWoolWarsClass(val?: string) {
const klass = CLASSES.find(c => c.id === val)
return klass || null
}
export function getWoolGamesWoolWarsClassColor(id?: 1 | 2 | 3 | 4) {
if (!id) {
return null
}
return DIFFICULTIES[id]
}
export function getWoolGamesPrestige(level: number) {
const floored = floorLevel(Math.floor(level), 100)

View File

@@ -735,19 +735,40 @@ export const woolGamesStatsSchema = z.looseObject({
capture_the_wool: z.looseObject({
stats: z.looseObject({
kills: z.number().default(0),
participated_wins: z.number().default(0)
assits: z.number().default(0),
deaths: z.number().default(0),
participated_wins: z.number().default(0),
participated_losses: z.number().default(0),
fastest_win: z.number().default(0),
longest_game: z.number().default(0),
wools_stolen: z.number().default(0),
wools_captured: z.number().default(0),
fastest_wool_capture: z.number().default(0),
gold_earned: z.number().default(0),
gold_spent: z.number().default(0)
}).optional()
}).optional(),
sheep_wars: z.looseObject({
stats: z.looseObject({
kills: z.number().default(0),
wins: z.number().default(0)
deaths: z.number().default(0),
wins: z.number().default(0),
losses: z.number().default(0),
sheep_thrown: z.number().default(0),
damage_dealt: z.number().default(0)
}).optional()
}).optional(),
wool_wars: z.looseObject({
selected_class: z.string().optional(),
stats: z.looseObject({
kills: z.number().default(0),
wins: z.number().default(0)
assits: z.number().default(0),
deaths: z.number().default(0),
wins: z.number().default(0),
losses: z.number().default(0),
wool_placed: z.number().default(0),
blocks_broken: z.number().default(0),
powerups_gotten: z.number().default(0)
}).optional()
}).optional()
})