diff --git a/src/app/(stats)/player/[ign]/_stats/bedwars/table.tsx b/src/app/(stats)/player/[ign]/_stats/bedwars/table.tsx
index b0c09b1..0696eea 100644
--- a/src/app/(stats)/player/[ign]/_stats/bedwars/table.tsx
+++ b/src/app/(stats)/player/[ign]/_stats/bedwars/table.tsx
@@ -1,6 +1,6 @@
import { Table, TableBody, TableCell, TableHead, TableHeader, TableRow } from "@/components/ui/table"
import { formatNumber } from "@/lib/formatters"
-import { concatStatArrays } from "@/lib/funcs"
+import { concatBedwarsStats } from "@/lib/funcs"
import { _BedwarsStats, getBedwarsModeStats, getBestMode } from "@/lib/hypixel/bedwars"
import { NonNullStats } from "@/lib/schema/player"
import { cn } from "@/lib/utils"
@@ -131,7 +131,7 @@ function CoreModeStats({ stats }: { stats: NonNullStats["Bedwars"] }) {
const threesStats = getBedwarsModeStats("3s", stats as _BedwarsStats, true)
const foursStats = getBedwarsModeStats("4s", stats as _BedwarsStats, true)
- const combinedStats = concatStatArrays(soloStats, doublesStats, threesStats, foursStats)
+ const combinedStats = concatBedwarsStats(soloStats, doublesStats, threesStats, foursStats)
return (
@@ -345,7 +345,7 @@ function AllModeStats({ stats }: { stats: NonNullStats["Bedwars"] }) {
const underworld4sStats = getBedwarsModeStats("underworld_4s", stats as _BedwarsStats, true)
const castleStats = getBedwarsModeStats("castle", stats as _BedwarsStats, true)
- const finalStats = concatStatArrays(
+ const finalStats = concatBedwarsStats(
soloStats,
doublesStats,
threesStats,
diff --git a/src/app/(stats)/player/[ign]/_stats/skywars/skywars.tsx b/src/app/(stats)/player/[ign]/_stats/skywars/skywars.tsx
index d8fee87..3479419 100644
--- a/src/app/(stats)/player/[ign]/_stats/skywars/skywars.tsx
+++ b/src/app/(stats)/player/[ign]/_stats/skywars/skywars.tsx
@@ -12,6 +12,7 @@ import { useEffect, useRef, useState } from "react"
import CollapsedStats from "../../_components/CollapsedStats"
import { SkywarsLevel, SkywarsProgress } from "./components"
import SkyWarsGeneralStats from "./stats"
+import SkywarsStatTable from "./table"
export default function SkyWarsStats({ stats }: { stats: NonNullStats["SkyWars"] }) {
const ref = useRef(null)
@@ -86,6 +87,7 @@ export default function SkyWarsStats({ stats }: { stats: NonNullStats["SkyWars"]
+
diff --git a/src/app/(stats)/player/[ign]/_stats/skywars/table.tsx b/src/app/(stats)/player/[ign]/_stats/skywars/table.tsx
index c640b4e..2e33a51 100644
--- a/src/app/(stats)/player/[ign]/_stats/skywars/table.tsx
+++ b/src/app/(stats)/player/[ign]/_stats/skywars/table.tsx
@@ -140,3 +140,24 @@ function Ranked({ stats }: { stats: NonNullStats["SkyWars"] }) {
)
}
+
+// function OverallModeStats({ stats }: { stats: NonNullStats["SkyWars"] }) {
+// const normal = getSkywarsModeStats("normal", stats as _SkywarsStats, true)
+// const insane = getSkywarsModeStats("insane", stats as _SkywarsStats, true)
+// const teams_normal = getSkywarsModeStats("teams_normal", stats as _SkywarsStats, true)
+// const teams_insane = getSkywarsModeStats("teams_insane", stats as _SkywarsStats, true)
+// const mega = getSkywarsModeStats("mega", stats as _SkywarsStats, true)
+// const mega_doubles = getSkywarsModeStats("mega_doubles", stats as _SkywarsStats, true)
+// const ranked = getSkywarsModeStats("ranked", stats as _SkywarsStats, true)
+//
+// const combinedStats = concatStatArrays(soloStats, doublesStats, threesStats, foursStats)
+//
+// return (
+//
+// Core Modes
+// {combinedStats.map((v, i) => {
+// return {typeof v === "number" ? formatNumber(v) : v}
+// })}
+//
+// )
+// }
diff --git a/src/lib/funcs.ts b/src/lib/funcs.ts
index 9589a71..228bbd0 100644
--- a/src/lib/funcs.ts
+++ b/src/lib/funcs.ts
@@ -1,6 +1,7 @@
import { BedwarsModeStats } from "./hypixel/bedwars"
+import { devide } from "./hypixel/general"
-export function concatStatArrays(...stats: BedwarsModeStats[]) {
+export function concatBedwarsStats(...stats: BedwarsModeStats[]) {
if (stats.length === 0) return []
const base: BedwarsModeStats = {
@@ -29,11 +30,6 @@ export function concatStatArrays(...stats: BedwarsModeStats[]) {
base.beds_lost_bedwars += s.beds_lost_bedwars
}
- const devide = (a: number, b: number) => {
- if (b === 0) return a
- return a / b
- }
-
const ret = {
...base,
winstreak: base.winstreak < 0 ? "?" : base.winstreak,
diff --git a/src/lib/hypixel/bedwars.ts b/src/lib/hypixel/bedwars.ts
index ac5a4f4..6ab8b1c 100644
--- a/src/lib/hypixel/bedwars.ts
+++ b/src/lib/hypixel/bedwars.ts
@@ -1,5 +1,6 @@
import { PRESTIGE_ICONS, PRESTIGES, SLUMBER_ROOMS, SLUMBER_WALLETS } from "@/data/hypixel/bedwars"
import { floorLevel } from "./formatters"
+import { devide } from "./general"
export function getBedwarsStar(level: number) {
if (level < 1100) {
@@ -161,12 +162,6 @@ export function getBedwarsModeStats(mode: Mode, stats: _BedwarsStats, raw = fals
}
}
-function devide(num: number, num2: number) {
- if (num2 === 0) return num
-
- return num / num2
-}
-
function bedwarsModeStats(prefix: string, stats: _BedwarsStats, raw = false) {
if (raw) {
return {
diff --git a/src/lib/hypixel/general.ts b/src/lib/hypixel/general.ts
index 959c4ef..ea897b4 100644
--- a/src/lib/hypixel/general.ts
+++ b/src/lib/hypixel/general.ts
@@ -5,3 +5,9 @@ export function getProgress(min: number, mid: number, max: number) {
return progress / diff * 100
}
+
+export function devide(num: number, num2: number) {
+ if (num2 === 0) return num
+
+ return num / num2
+}
diff --git a/src/lib/hypixel/skywars.ts b/src/lib/hypixel/skywars.ts
index 9fcc520..110fd44 100644
--- a/src/lib/hypixel/skywars.ts
+++ b/src/lib/hypixel/skywars.ts
@@ -99,7 +99,7 @@ export function getSkywarsModeStats(mode: Mode, stats: _SkywarsStats, raw = fals
case "teams_insane":
return skywarsModeStats("team_insane", stats, raw)
case "mega":
- return skywarsModeStats("mega_mega", stats, raw)
+ return skywarsModeStats("mega", stats, raw)
case "mega_doubles":
return skywarsModeStats("mega_doubles", stats, raw)
case "ranked":
diff --git a/src/lib/schema/stats.ts b/src/lib/schema/stats.ts
index f9c3f63..5556c46 100644
--- a/src/lib/schema/stats.ts
+++ b/src/lib/schema/stats.ts
@@ -218,5 +218,33 @@ export const skywarsStatsSchema = z.looseObject({
souls: z.number().default(0),
paid_souls: z.number().default(0),
soul_well: z.number().default(0),
- packages: z.array(z.string())
+ packages: z.array(z.string()),
+ kills_solo_normal: z.number().default(0),
+ deaths_solo_normal: z.number().default(0),
+ wins_solo_normal: z.number().default(0),
+ losses_solo_normal: z.number().default(0),
+ kills_solo_insane: z.number().default(0),
+ deaths_solo_insane: z.number().default(0),
+ wins_solo_insane: z.number().default(0),
+ losses_solo_insane: z.number().default(0),
+ kills_team_normal: z.number().default(0),
+ deaths_team_normal: z.number().default(0),
+ wins_team_normal: z.number().default(0),
+ losses_team_normal: z.number().default(0),
+ kills_team_insane: z.number().default(0),
+ deaths_team_insane: z.number().default(0),
+ wins_team_insane: z.number().default(0),
+ losses_team_insane: z.number().default(0),
+ kills_mega: z.number().default(0),
+ deaths_mega: z.number().default(0),
+ wins_mega: z.number().default(0),
+ losses_mega: z.number().default(0),
+ kills_mega_doubles: z.number().default(0),
+ deaths_mega_doubles: z.number().default(0),
+ wins_mega_doubles: z.number().default(0),
+ losses_mega_doubles: z.number().default(0),
+ kills_ranked_normal: z.number().default(0),
+ deaths_ranked_normal: z.number().default(0),
+ wins_ranked_normal: z.number().default(0),
+ losses_ranked_normal: z.number().default(0)
})