Updated skywars stats
This commit is contained in:
@@ -1,37 +1,26 @@
|
||||
import { INITIAL_XP, RECURRING_XP } from "@/data/hypixel/skywars"
|
||||
|
||||
export function getSkywarsLevel(xp: number) {
|
||||
const xps = [0, 20, 70, 150, 250, 500, 1000, 2000, 3500, 6000, 10000, 15000]
|
||||
if (xp >= 15000) {
|
||||
return (xp - 15000) / 10000 + 12
|
||||
}
|
||||
for (let i = 0; i < xps.length; i += 1) {
|
||||
if (xp < xps[i]) {
|
||||
return i + (xp - xps[i - 1]) / (xps[i] - xps[i - 1])
|
||||
return (xp - 15000) / RECURRING_XP + 12
|
||||
} else {
|
||||
for (let i = 0; i < INITIAL_XP.length; i++) {
|
||||
if (xp < INITIAL_XP[i]) {
|
||||
return i + (xp - INITIAL_XP[i - 1]) / (INITIAL_XP[i] - INITIAL_XP[i - 1])
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
return 0
|
||||
}
|
||||
|
||||
export function getSkywarsXpForLevel(level: number) {
|
||||
const xps = [0, 20, 70, 150, 250, 500, 1000, 2000, 3500, 6000, 10000, 15000]
|
||||
|
||||
if (level >= 12) {
|
||||
return (level - 12) * 10000 + 15000
|
||||
export function getSkywarsXpForLevel(lvl: number) {
|
||||
let xp = 0
|
||||
for (let i = 0; i < lvl; i++) {
|
||||
if (i < INITIAL_XP.length) {
|
||||
xp = INITIAL_XP[i]
|
||||
} else {
|
||||
xp += RECURRING_XP
|
||||
}
|
||||
}
|
||||
|
||||
const baseLevel = Math.floor(level)
|
||||
const progress = level - baseLevel
|
||||
|
||||
if (baseLevel >= xps.length) {
|
||||
return xps[xps.length - 1]
|
||||
}
|
||||
|
||||
if (baseLevel === 0) {
|
||||
return progress * xps[1]
|
||||
}
|
||||
|
||||
const baseXp = xps[baseLevel]
|
||||
const nextXp = xps[baseLevel + 1] || 15000
|
||||
|
||||
return baseXp + progress * (nextXp - baseXp)
|
||||
return xp
|
||||
}
|
||||
|
||||
@@ -33,13 +33,8 @@ export function getTotalChallenges(challenges: Player["player"]["challenges"]) {
|
||||
|
||||
export function rewardClaimed(claimedAt?: number) {
|
||||
if (!claimedAt) return false
|
||||
const now = new Date()
|
||||
const claimedDate = new Date(claimedAt)
|
||||
const now = Date.now()
|
||||
const diff = now - claimedAt
|
||||
const oneDay = 24 * 60 * 60 * 1000
|
||||
|
||||
if (now.getMilliseconds() - claimedDate.getMilliseconds() > oneDay) {
|
||||
return true
|
||||
} else {
|
||||
return false
|
||||
}
|
||||
return diff <= oneDay
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user