Fix rift collections

This commit is contained in:
nea
2023-08-24 18:18:13 +02:00
parent b0cb9a70cd
commit b1962ce66c
3 changed files with 16 additions and 5 deletions

View File

@@ -10,7 +10,7 @@ package moe.nea.firmament.apis
import io.github.moulberry.repo.constants.Leveling
import io.github.moulberry.repo.data.Rarity
import java.util.UUID
import java.util.*
import kotlinx.datetime.Instant
import kotlinx.serialization.SerialName
import kotlinx.serialization.Serializable
@@ -90,6 +90,15 @@ enum class Skill(val accessor: KProperty1<Member, Double>, val color: DyeColor,
}
}
enum class CollectionCategory(val skill: Skill?, val color: DyeColor, val icon: SkyblockId) {
FARMING(Skill.FARMING, DyeColor.YELLOW, SkyblockId("ROOKIE_HOE")),
FORAGING(Skill.FORAGING, DyeColor.BROWN, SkyblockId("TREECAPITATOR_AXE")),
MINING(Skill.MINING, DyeColor.LIGHT_GRAY, SkyblockId("DIAMOND_PICKAXE")),
FISHING(Skill.FISHING, DyeColor.BLUE, SkyblockId("FARMER_ROD")),
COMBAT(Skill.COMBAT, DyeColor.RED, SkyblockId("UNDEAD_SWORD")),
RIFT(null, DyeColor.PURPLE, SkyblockId("SKYBLOCK_MOTE")),
}
@Serializable
@JvmInline
value class CollectionType(val string: String) {

View File

@@ -24,6 +24,7 @@ import net.minecraft.text.Style
import net.minecraft.text.Text
import net.minecraft.util.DyeColor
import net.minecraft.util.Formatting
import moe.nea.firmament.apis.CollectionCategory
import moe.nea.firmament.apis.CollectionInfo
import moe.nea.firmament.apis.CollectionType
import moe.nea.firmament.apis.Member
@@ -97,9 +98,9 @@ object SkillPage : ProfilePage {
return WTabPanel().also {
val data = HypixelStaticData.collectionData
val panels = mutableListOf<WPanel>()
for ((skill, collections) in data.entries) {
val skillT = Skill.values().find { it.name == skill }
val color = skillT?.color ?: DyeColor.BLACK
for ((collectionKind, collections) in data.entries) {
val skillT = CollectionCategory.values().find { it.name == collectionKind }
val color = skillT?.color ?: DyeColor.WHITE
val icon = skillT?.icon?.let { RepoManager.getNEUItem(it).asItemStack() } ?: ItemStack(Items.ITEM_FRAME)
val panel = WBox(Axis.HORIZONTAL).also {
it.horizontalAlignment = HorizontalAlignment.CENTER
@@ -121,7 +122,7 @@ object SkillPage : ProfilePage {
panels.add(panel)
it.add(panel) {
it.tooltip(
Text.translatable("firmament.pv.skills.${skill.lowercase()}")
Text.translatable("firmament.pv.skills.${collectionKind.lowercase()}")
.styled { it.withColor(color.toTextColor()) })
it.icon(ItemIcon(icon))
}

View File

@@ -57,6 +57,7 @@
"firmament.pv.skills.carpentry": "Carpentry",
"firmament.pv.skills.combat": "Combat",
"firmament.pv.skills.social": "Social",
"firmament.pv.skills.rift": "Rift",
"firmament.pv.skills.enchanting": "Enchanting",
"firmament.pv.skills.total": "Total Exp: %s",
"firmament.pv.lookingup": "Looking up %s",