From eb4ab6eaafa17581df58a53fb4111fa96933d230 Mon Sep 17 00:00:00 2001 From: J10a1n15 <45315647+j10a1n15@users.noreply.github.com> Date: Wed, 5 Jun 2024 15:25:45 +0200 Subject: (Technical) Improvement: Add Perkapocolypse Mayor to MayorAPI (#2003) Co-authored-by: hannibal2 <24389977+hannibal00212@users.noreply.github.com> --- .../gui/customscoreboard/ScoreboardElements.kt | 36 +++++++++++++++------- 1 file changed, 25 insertions(+), 11 deletions(-) (limited to 'src/main/java/at/hannibal2/skyhanni/features') diff --git a/src/main/java/at/hannibal2/skyhanni/features/gui/customscoreboard/ScoreboardElements.kt b/src/main/java/at/hannibal2/skyhanni/features/gui/customscoreboard/ScoreboardElements.kt index 4bc3fe36a..ef02cf2ba 100644 --- a/src/main/java/at/hannibal2/skyhanni/features/gui/customscoreboard/ScoreboardElements.kt +++ b/src/main/java/at/hannibal2/skyhanni/features/gui/customscoreboard/ScoreboardElements.kt @@ -745,20 +745,34 @@ private fun getEventsDisplayPair(): List { private fun getEventsShowWhen() = ScoreboardEvents.getEvent().isNotEmpty() private fun getMayorDisplayPair() = buildList { - add( - ((MayorAPI.currentMayor?.mayorName?.let { MayorAPI.mayorNameWithColorCode(it) } - ?: "") + - (if (mayorConfig.showTimeTillNextMayor) { - "§7 (§e${MayorAPI.timeTillNextMayor.format(maxUnits = 2)}§7)" - } else { - "" - })) to HorizontalAlignment.LEFT - ) + val currentMayorName = MayorAPI.currentMayor?.mayorName?.let { MayorAPI.mayorNameWithColorCode(it) } ?: "" + val timeTillNextMayor = if (mayorConfig.showTimeTillNextMayor) { + "§7 (§e${MayorAPI.nextMayorTimestamp.timeUntil().format(maxUnits = 2)}§7)" + } else { + "" + } + + add((currentMayorName + timeTillNextMayor) to HorizontalAlignment.LEFT) + if (mayorConfig.showMayorPerks) { - MayorAPI.currentMayor?.activePerks?.forEach { - add(" §7- §e${it.perkName}" to HorizontalAlignment.LEFT) + MayorAPI.currentMayor?.activePerks?.forEach { perk -> + add(" §7- §e${perk.perkName}" to HorizontalAlignment.LEFT) } } + + if (!mayorConfig.showExtraMayor) return@buildList + val jerryExtraMayor = MayorAPI.jerryExtraMayor + val extraMayor = jerryExtraMayor.first ?: return@buildList + + val extraMayorName = extraMayor.mayorName.let { MayorAPI.mayorNameWithColorCode(it) } + val extraTimeTillNextMayor = if (mayorConfig.showTimeTillNextMayor) { + "§7 (§6${jerryExtraMayor.second.timeUntil().format(maxUnits = 2)}§7)" + } else { + "" + } + + add((extraMayorName + extraTimeTillNextMayor) to HorizontalAlignment.LEFT) + } private fun getMayorShowWhen() = -- cgit