Fixed other arcade stats
This commit is contained in:
@@ -4,6 +4,7 @@ import { getArcadeTotalWins } from "@/lib/hypixel/arcade/general"
|
||||
import { NonNullStats } from "@/lib/schema/player"
|
||||
import { BasicStat } from "../../_components/Stats"
|
||||
import GeneralStats from "../GeneralStats"
|
||||
import ArcadeOtherStats from "./other"
|
||||
import { ArcadeMiniWallsStats, ArcadePixelPartyStats, ArcadeZombieStats } from "./stats"
|
||||
|
||||
export default function ArcadeStats({ stats }: { stats: NonNullStats["Arcade"] }) {
|
||||
@@ -31,6 +32,8 @@ export default function ArcadeStats({ stats }: { stats: NonNullStats["Arcade"] }
|
||||
<Separator className="my-4" />
|
||||
<ArcadeZombieStats stats={stats} />
|
||||
<Separator className="my-4" />
|
||||
<ArcadeOtherStats stats={stats} />
|
||||
<Separator className="my-4" />
|
||||
</GeneralStats>
|
||||
)
|
||||
}
|
||||
|
||||
122
src/app/(stats)/player/[ign]/_stats/arcade/other.tsx
Normal file
122
src/app/(stats)/player/[ign]/_stats/arcade/other.tsx
Normal file
@@ -0,0 +1,122 @@
|
||||
import { formatMillisecondsToTime, formatNumber } from "@/lib/formatters"
|
||||
import { devide } from "@/lib/hypixel/general"
|
||||
import { NonNullStats } from "@/lib/schema/player"
|
||||
import { capitalizeFirstLetter } from "@/lib/utils"
|
||||
import { ReactNode } from "react"
|
||||
import { BasicStat } from "../../_components/Stats"
|
||||
|
||||
export default function ArcadeOtherStats({ stats }: { stats: NonNullable<NonNullStats["Arcade"]> }) {
|
||||
return (
|
||||
<div className="grid grid-cols-3 gap-2">
|
||||
<ArcadeOtherStat title="Blocking Dead">
|
||||
<BasicStat title="Wins: " value={formatNumber(stats.wins_dayone)} />
|
||||
<BasicStat title="Kills: " value={formatNumber(stats.kills_dayone)} />
|
||||
<BasicStat title="Headshots: " value={formatNumber(stats.headshots_dayone)} />
|
||||
<BasicStat
|
||||
title="Melee Weapon: "
|
||||
value={stats.melee_weapon?.toLowerCase() !== undefined
|
||||
? capitalizeFirstLetter(stats.melee_weapon?.toLowerCase()).split("_").join(" ")
|
||||
: "Unknown"}
|
||||
/>
|
||||
</ArcadeOtherStat>
|
||||
<ArcadeOtherStat title="Bounty Hunters">
|
||||
<BasicStat title="Wins: " value={formatNumber(stats.wins_oneinthequiver)} />
|
||||
<BasicStat title="Kills: " value={formatNumber(stats.kills_oneinthequiver)} />
|
||||
<BasicStat title="Deaths: " value={formatNumber(stats.deaths_oneinthequiver)} />
|
||||
<BasicStat title="Kill/Death Ratio: " value={formatNumber(devide(stats.kills_oneinthequiver, stats.deaths_oneinthequiver))} />
|
||||
</ArcadeOtherStat>
|
||||
<ArcadeOtherStat title="Creeper Attack">
|
||||
<BasicStat title="Best Wave: " value={formatNumber(stats.max_wave)} />
|
||||
</ArcadeOtherStat>
|
||||
<ArcadeOtherStat title="Dragon Wars">
|
||||
<BasicStat title="Wins: " value={formatNumber(stats.wins_dragonwars2)} />
|
||||
<BasicStat title="Kills: " value={formatNumber(stats.kills_dragonwars2)} />
|
||||
</ArcadeOtherStat>
|
||||
<ArcadeOtherStat title="Dropper">
|
||||
<BasicStat title="Wins: " value={formatNumber(stats.dropper?.wins || 0)} />
|
||||
<BasicStat title="Flawless Games: " value={formatNumber(stats.dropper?.flawless_games || 0)} />
|
||||
<BasicStat title="Games Completed: " value={formatNumber(stats.dropper?.games_finished || 0)} />
|
||||
<BasicStat title="Maps Completed: " value={formatNumber(stats.dropper?.maps_completed || 0)} />
|
||||
<BasicStat title="Fastest Game: " value={formatMillisecondsToTime(stats.dropper?.fastest_game || 0)} />
|
||||
<BasicStat title="Fails: " value={formatNumber(stats.dropper?.fails || 0)} />
|
||||
</ArcadeOtherStat>
|
||||
<ArcadeOtherStat title="Easter Simulator">
|
||||
<BasicStat title="Wins: " value={formatNumber(stats.wins_easter_simulator)} />
|
||||
<BasicStat title="Eggs Found: " value={formatNumber(stats.eggs_found_easter_simulator)} />
|
||||
</ArcadeOtherStat>
|
||||
<ArcadeOtherStat title="Ender Spleef">
|
||||
<BasicStat title="Wins: " value={formatNumber(stats.wins_ender)} />
|
||||
</ArcadeOtherStat>
|
||||
<ArcadeOtherStat title="Farm Hunt">
|
||||
<BasicStat title="Wins: " value={formatNumber(stats.wins_farm_hunt)} />
|
||||
<BasicStat title="Poop Collected: " value={formatNumber(stats.poop_collected)} />
|
||||
</ArcadeOtherStat>
|
||||
<ArcadeOtherStat title="Football">
|
||||
<BasicStat title="Wins: " value={formatNumber(stats.wins_soccer)} />
|
||||
<BasicStat title="Goals: " value={formatNumber(stats.goals_soccer)} />
|
||||
<BasicStat title="Kicks: " value={formatNumber(stats.kicks_soccer)} />
|
||||
<BasicStat title="Powerkicks: " value={formatNumber(stats.powerkicks_soccer)} />
|
||||
</ArcadeOtherStat>
|
||||
<ArcadeOtherStat title="Galaxy Wars">
|
||||
<BasicStat title="Wins: " value={formatNumber(stats.sw_game_wins)} />
|
||||
<BasicStat title="Kills: " value={formatNumber(stats.sw_kills)} />
|
||||
<BasicStat title="Empire Kills: " value={formatNumber(stats.sw_empire_kills)} />
|
||||
<BasicStat title="Rebel Kills: " value={formatNumber(stats.sw_rebel_kills)} />
|
||||
<BasicStat title="Deaths: " value={formatNumber(stats.sw_deaths)} />
|
||||
<BasicStat title="Kill/Death Ratio: " value={formatNumber(devide(stats.sw_kills, stats.sw_deaths))} />
|
||||
<BasicStat title="Shots Fired: " value={formatNumber(stats.sw_shots_fired)} />
|
||||
</ArcadeOtherStat>
|
||||
<ArcadeOtherStat title="Grinch Simulator v2">
|
||||
<BasicStat title="Wins: " value={formatNumber(stats.wins_grinch_simulator_v2)} />
|
||||
<BasicStat title="Presents Stolen: " value={formatNumber(stats.gifts_grinch_simulator_v2)} />
|
||||
</ArcadeOtherStat>
|
||||
<ArcadeOtherStat title="Halloween Simulator">
|
||||
<BasicStat title="Wins: " value={formatNumber(stats.wins_halloween_simulator)} />
|
||||
<BasicStat title="Candy Found: " value={formatNumber(stats.candy_found_halloween_simulator)} />
|
||||
</ArcadeOtherStat>
|
||||
<ArcadeOtherStat title="Hide and Seek">
|
||||
<BasicStat title="Wins as Seeker: " value={formatNumber(stats.seeker_wins_hide_and_seek)} />
|
||||
<BasicStat title="Wins as Hider: " value={formatNumber(stats.hider_wins_hide_and_seek)} />
|
||||
</ArcadeOtherStat>
|
||||
<ArcadeOtherStat title="Hole in the Wall">
|
||||
<BasicStat title="Wins: " value={formatNumber(stats.wins_hole_in_the_wall)} />
|
||||
<BasicStat title="Highest Score Qualifications: " value={formatNumber(stats.hitw_record_q)} />
|
||||
<BasicStat title="Highest Score Finals: " value={formatNumber(stats.hitw_record_f)} />
|
||||
</ArcadeOtherStat>
|
||||
<ArcadeOtherStat title="Hypixel Says">
|
||||
<BasicStat title="Wins: " value={formatNumber(stats.wins_simon_says)} />
|
||||
<BasicStat title="Rounds: " value={formatNumber(stats.rounds_simon_says)} />
|
||||
</ArcadeOtherStat>
|
||||
<ArcadeOtherStat title="Party Games">
|
||||
<BasicStat title="Wins: " value={formatNumber(stats.wins_party + stats.wins_party_2 + stats.wins_party_3)} />
|
||||
</ArcadeOtherStat>
|
||||
<ArcadeOtherStat title="Pixel Painters">
|
||||
<BasicStat title="Wins: " value={formatNumber(stats.wins_draw_their_thing)} />
|
||||
</ArcadeOtherStat>
|
||||
<ArcadeOtherStat title="Santa Simulator">
|
||||
<BasicStat title="Presents Delivered: " value={formatNumber(stats.delivered_santa_simulator)} />
|
||||
<BasicStat title="Times Spotted: " value={formatNumber(stats.spotted_santa_simulator)} />
|
||||
</ArcadeOtherStat>
|
||||
<ArcadeOtherStat title="Scuba Simulator">
|
||||
<BasicStat title="Wins: " value={formatNumber(stats.wins_scuba_simulator)} />
|
||||
<BasicStat title="Items Found: " value={formatNumber(stats.items_found_scuba_simulator)} />
|
||||
<BasicStat title="Total Points: " value={formatNumber(stats.total_points_scuba_simulator)} />
|
||||
</ArcadeOtherStat>
|
||||
<ArcadeOtherStat title="Throw Out">
|
||||
<BasicStat title="Wins: " value={formatNumber(stats.wins_throw_out)} />
|
||||
<BasicStat title="Kills: " value={formatNumber(stats.kills_throw_out)} />
|
||||
<BasicStat title="Deaths: " value={formatNumber(stats.deaths_throw_out)} />
|
||||
<BasicStat title="Kill/Death Ratio: " value={formatNumber(devide(stats.kills_throw_out, stats.deaths_throw_out))} />
|
||||
</ArcadeOtherStat>
|
||||
</div>
|
||||
)
|
||||
}
|
||||
|
||||
function ArcadeOtherStat({ title, children }: { title: string, children: ReactNode }) {
|
||||
return (
|
||||
<div>
|
||||
<h2 className="pb-5 text-xl font-bold">{title}</h2>
|
||||
{children}
|
||||
</div>
|
||||
)
|
||||
}
|
||||
@@ -78,24 +78,24 @@ export function ArcadeMiniWallsStats({ stats }: { stats: NonNullable<NonNullStat
|
||||
<h2 className="pb-5 text-xl font-bold">Mini Walls</h2>
|
||||
<div className="flex">
|
||||
<div className="flex-1">
|
||||
<BasicStat title="Wins: " value={stats.wins_mini_walls} />
|
||||
<BasicStat title="Wins: " value={formatNumber(stats.wins_mini_walls)} />
|
||||
<BasicStat
|
||||
title="Kit Seleted: "
|
||||
value={stats.miniwalls_activeKit !== undefined
|
||||
? capitalizeFirstLetter(stats.miniwalls_activeKit)
|
||||
: "Unknown"}
|
||||
/>
|
||||
<BasicStat title="Withers Killed: " value={stats.wither_kills_mini_walls} />
|
||||
<BasicStat title="Withers Killed: " value={formatNumber(stats.wither_kills_mini_walls)} />
|
||||
</div>
|
||||
<div className="flex-1">
|
||||
<BasicStat title="Kills: " value={stats.kills_mini_walls} />
|
||||
<BasicStat title="Final Kills: " value={stats.final_kills_mini_walls} />
|
||||
<BasicStat title="Deaths: " value={stats.deaths_mini_walls} />
|
||||
<BasicStat title="Kills: " value={formatNumber(stats.kills_mini_walls)} />
|
||||
<BasicStat title="Final Kills: " value={formatNumber(stats.final_kills_mini_walls)} />
|
||||
<BasicStat title="Deaths: " value={formatNumber(stats.deaths_mini_walls)} />
|
||||
<BasicStat title="Kill/Death Ratio: " value={kd} />
|
||||
</div>
|
||||
<div className="flex-1">
|
||||
<BasicStat title="Arrows Hit: " value={stats.arrows_hit_mini_walls} />
|
||||
<BasicStat title="Arrows Shot: " value={stats.arrows_shot_mini_walls} />
|
||||
<BasicStat title="Arrows Hit: " value={formatNumber(stats.arrows_hit_mini_walls)} />
|
||||
<BasicStat title="Arrows Shot: " value={formatNumber(stats.arrows_shot_mini_walls)} />
|
||||
<BasicStat title="Arrow Hit Accuracy: " value={ac} />
|
||||
</div>
|
||||
</div>
|
||||
|
||||
Reference in New Issue
Block a user