diff options
author | Linnea Gräf <nea@nea.moe> | 2025-03-11 12:44:59 +0100 |
---|---|---|
committer | Linnea Gräf <nea@nea.moe> | 2025-03-11 12:44:59 +0100 |
commit | 17a855a4bdfcca00b29f85981d8fb86968d9038c (patch) | |
tree | 4ecde192607e1b6fea54fc264a6b79a197ae8619 /src/main/kotlin/util/skyblock/Rarity.kt | |
parent | 0765c8aee181dda89b08f89c4a7deb301f00f656 (diff) | |
download | Firmament-17a855a4bdfcca00b29f85981d8fb86968d9038c.tar.gz Firmament-17a855a4bdfcca00b29f85981d8fb86968d9038c.tar.bz2 Firmament-17a855a4bdfcca00b29f85981d8fb86968d9038c.zip |
feat: add SBItemData implementation
Diffstat (limited to 'src/main/kotlin/util/skyblock/Rarity.kt')
-rw-r--r-- | src/main/kotlin/util/skyblock/Rarity.kt | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/src/main/kotlin/util/skyblock/Rarity.kt b/src/main/kotlin/util/skyblock/Rarity.kt index b19f371..f244ef6 100644 --- a/src/main/kotlin/util/skyblock/Rarity.kt +++ b/src/main/kotlin/util/skyblock/Rarity.kt @@ -15,6 +15,7 @@ import moe.nea.firmament.util.StringUtil.words import moe.nea.firmament.util.collections.lastNotNullOfOrNull import moe.nea.firmament.util.mc.loreAccordingToNbt import moe.nea.firmament.util.petData +import moe.nea.firmament.util.removeColorCodes import moe.nea.firmament.util.unformattedString typealias RepoRarity = io.github.moulberry.repo.data.Rarity @@ -87,6 +88,12 @@ enum class Rarity(vararg altNames: String) { fun fromPetItem(itemStack: ItemStack): Rarity? = itemStack.petData?.tier?.let(::fromNeuRepo) + fun fromStringLore(lore: List<String>): Rarity? { + return lore.lastNotNullOfOrNull { + it.removeColorCodes().words().firstNotNullOfOrNull(::fromString) + } + } + fun fromLore(lore: List<Text>): Rarity? = lore.lastNotNullOfOrNull { it.unformattedString.words() |