Made generic progress

This commit is contained in:
2025-08-29 13:07:03 +02:00
parent 2b8e4a55dd
commit 06adea0098
5 changed files with 63 additions and 28 deletions

View File

@@ -1,6 +1,18 @@
import { getPrestigeName, getSkyWarsIcon, getTextColor } from "@/lib/hypixel/skywars"
import { getSkywarsLevel } from "@/lib/hypixel/skyWarsLevel"
import { cn } from "@/lib/utils"
import GenericProgress from "../../_components/GenericProgress"
export function ShardProgress({ percent }: { percent: number }) {
return (
<div>
<h1 className="mb-2 font-bold">Shard Progress</h1>
<div className="flex">
<GenericProgress percent={percent} className="bg-mc-aqua" />
</div>
</div>
)
}
export function SkywarsLevel({ xp, icon }: { xp: number, icon: string | undefined }) {
const level = getSkywarsLevel(xp)
@@ -56,7 +68,6 @@ export function SkywarsProgress({ level, percent }: { level: number, percent: nu
<div className="flex items-center mb-10">
<LevelNumber level={level} className="mr-2" />
<Progress level={level} percent={percent} />
<div className={cn("flex-1 h-5 rounded-r-md bg-background", percent === 0 ? "rounded-l-md" : undefined)}></div>
<LevelNumber level={level + 1} className="ml-2" />
</div>
)
@@ -83,19 +94,10 @@ function LevelNumber({ level, className }: { level: number, className?: string }
function Progress({ level, percent }: { level: number, percent: number }) {
if (level > 150 || level === 50) {
return (
<div
className="h-5 rounded-l-md"
style={{
width: `${percent}%`,
background: "repeating-linear-gradient(to right,#f55,#fa0,#ff5,#5f5,#5ff,#f5f,#a0a,#f55 16rem)"
}}
>
</div>
)
return <GenericProgress percent={percent} rainbow={true} />
}
return <div className={`h-5 bg-mc-${getTextColor(level).text} rounded-l-md`} style={{ width: `${percent}%` }}></div>
return <GenericProgress percent={percent} className={`bg-mc-${getTextColor(level).text}`} />
}
export function SkywarsPrestige({ level, icon }: { level: number, icon?: string }) {