diff options
| author | Linnea Gräf <nea@nea.moe> | 2025-11-17 19:55:02 +0100 |
|---|---|---|
| committer | Linnea Gräf <nea@nea.moe> | 2025-11-17 19:55:02 +0100 |
| commit | c93a04a001b0f66b2724d46b04b6d1ed49a08d07 (patch) | |
| tree | 5869ca70acc482ef0362f27785c3d3f1cbb9ffae /src/main/kotlin/util/skyblock | |
| parent | af9893b59407c69d31ebd2ed513f0396ab4d2dc9 (diff) | |
| download | Firmament-c93a04a001b0f66b2724d46b04b6d1ed49a08d07.tar.gz Firmament-c93a04a001b0f66b2724d46b04b6d1ed49a08d07.tar.bz2 Firmament-c93a04a001b0f66b2724d46b04b6d1ed49a08d07.zip | |
refactor: port to mojmaps
Diffstat (limited to 'src/main/kotlin/util/skyblock')
| -rw-r--r-- | src/main/kotlin/util/skyblock/AbilityUtils.kt | 12 | ||||
| -rw-r--r-- | src/main/kotlin/util/skyblock/ItemType.kt | 2 | ||||
| -rw-r--r-- | src/main/kotlin/util/skyblock/PartyUtil.kt | 6 | ||||
| -rw-r--r-- | src/main/kotlin/util/skyblock/Rarity.kt | 34 | ||||
| -rw-r--r-- | src/main/kotlin/util/skyblock/SBItemUtil.kt | 4 | ||||
| -rw-r--r-- | src/main/kotlin/util/skyblock/SackUtil.kt | 18 | ||||
| -rw-r--r-- | src/main/kotlin/util/skyblock/ScreenIdentification.kt | 14 | ||||
| -rw-r--r-- | src/main/kotlin/util/skyblock/TabListAPI.kt | 6 |
8 files changed, 48 insertions, 48 deletions
diff --git a/src/main/kotlin/util/skyblock/AbilityUtils.kt b/src/main/kotlin/util/skyblock/AbilityUtils.kt index 0d7d2b7..9ba182d 100644 --- a/src/main/kotlin/util/skyblock/AbilityUtils.kt +++ b/src/main/kotlin/util/skyblock/AbilityUtils.kt @@ -1,8 +1,8 @@ package moe.nea.firmament.util.skyblock import kotlin.time.Duration -import net.minecraft.item.ItemStack -import net.minecraft.text.Text +import net.minecraft.world.item.ItemStack +import net.minecraft.network.chat.Component import moe.nea.firmament.util.ErrorUtil import moe.nea.firmament.util.directLiteralStringContent import moe.nea.firmament.util.mc.loreAccordingToNbt @@ -17,7 +17,7 @@ object AbilityUtils { val hasPowerScroll: Boolean, val activation: AbilityActivation, val manaCost: Int?, - val descriptionLines: List<Text>, + val descriptionLines: List<Component>, val cooldown: Duration?, ) @@ -40,7 +40,7 @@ object AbilityUtils { } private val abilityNameRegex = "Ability: (?<name>.*?) *".toPattern() - private fun findAbility(iterator: ListIterator<Text>): ItemAbility? { + private fun findAbility(iterator: ListIterator<Component>): ItemAbility? { if (!iterator.hasNext()) { return null } @@ -72,7 +72,7 @@ object AbilityUtils { return null } if (abilityName == null) return null - val descriptionLines = mutableListOf<Text>() + val descriptionLines = mutableListOf<Component>() var manaCost: Int? = null var cooldown: Duration? = null while (iterator.hasNext()) { @@ -121,7 +121,7 @@ object AbilityUtils { ) } - fun getAbilities(lore: List<Text>): List<ItemAbility> { + fun getAbilities(lore: List<Component>): List<ItemAbility> { val iterator = lore.listIterator() val abilities = mutableListOf<ItemAbility>() while (iterator.hasNext()) { diff --git a/src/main/kotlin/util/skyblock/ItemType.kt b/src/main/kotlin/util/skyblock/ItemType.kt index 9045646..887edef 100644 --- a/src/main/kotlin/util/skyblock/ItemType.kt +++ b/src/main/kotlin/util/skyblock/ItemType.kt @@ -1,6 +1,6 @@ package moe.nea.firmament.util.skyblock -import net.minecraft.item.ItemStack +import net.minecraft.world.item.ItemStack import moe.nea.firmament.util.directLiteralStringContent import moe.nea.firmament.util.mc.loreAccordingToNbt import moe.nea.firmament.util.petData diff --git a/src/main/kotlin/util/skyblock/PartyUtil.kt b/src/main/kotlin/util/skyblock/PartyUtil.kt index 7d28868..46e1aa3 100644 --- a/src/main/kotlin/util/skyblock/PartyUtil.kt +++ b/src/main/kotlin/util/skyblock/PartyUtil.kt @@ -7,7 +7,7 @@ import net.hypixel.modapi.packet.impl.clientbound.ClientboundPartyInfoPacket.Par import net.hypixel.modapi.packet.impl.serverbound.ServerboundPartyInfoPacket import org.intellij.lang.annotations.Language import kotlinx.coroutines.launch -import net.minecraft.text.Text +import net.minecraft.network.chat.Component import moe.nea.firmament.Firmament import moe.nea.firmament.annotations.Subscribe import moe.nea.firmament.apis.Routes @@ -53,7 +53,7 @@ object PartyUtil { } thenExecute { val p = party - val text = Text.empty() + val text = Component.empty() text.append( tr("firmament.dev.partyinfo", "Party Info: ") .boolColour(p != null) @@ -64,7 +64,7 @@ object PartyUtil { text.append(tr("firmament.dev.partyinfo.count", "${p.members.size} members").grey()) p.members.forEach { text.append("\n") - .append(Text.literal(" - ${it.name}")) + .append(Component.literal(" - ${it.name}")) .append(" (") .append( when (it.role) { diff --git a/src/main/kotlin/util/skyblock/Rarity.kt b/src/main/kotlin/util/skyblock/Rarity.kt index 2507256..95e5d87 100644 --- a/src/main/kotlin/util/skyblock/Rarity.kt +++ b/src/main/kotlin/util/skyblock/Rarity.kt @@ -7,10 +7,10 @@ import kotlinx.serialization.descriptors.PrimitiveSerialDescriptor import kotlinx.serialization.descriptors.SerialDescriptor import kotlinx.serialization.encoding.Decoder import kotlinx.serialization.encoding.Encoder -import net.minecraft.item.ItemStack -import net.minecraft.text.Style -import net.minecraft.text.Text -import net.minecraft.util.Formatting +import net.minecraft.world.item.ItemStack +import net.minecraft.network.chat.Style +import net.minecraft.network.chat.Component +import net.minecraft.ChatFormatting import moe.nea.firmament.util.StringUtil.words import moe.nea.firmament.util.collections.lastNotNullOfOrNull import moe.nea.firmament.util.mc.loreAccordingToNbt @@ -49,23 +49,23 @@ enum class Rarity(vararg altNames: String) { } val names = setOf(name) + altNames - val text: Text get() = Text.literal(name).setStyle(Style.EMPTY.withColor(colourMap[this])) + val text: Component get() = Component.literal(name).setStyle(Style.EMPTY.withColor(colourMap[this])) val neuRepoRarity: RepoRarity? = RepoRarity.entries.find { it.name == name } companion object { // TODO: inline those formattings as fields val colourMap = mapOf( - Rarity.COMMON to Formatting.WHITE, - Rarity.UNCOMMON to Formatting.GREEN, - Rarity.RARE to Formatting.BLUE, - Rarity.EPIC to Formatting.DARK_PURPLE, - Rarity.LEGENDARY to Formatting.GOLD, - Rarity.MYTHIC to Formatting.LIGHT_PURPLE, - Rarity.DIVINE to Formatting.AQUA, - Rarity.SPECIAL to Formatting.RED, - Rarity.VERY_SPECIAL to Formatting.RED, - Rarity.SUPREME to Formatting.DARK_RED, - Rarity.ULTIMATE to Formatting.DARK_RED, + Rarity.COMMON to ChatFormatting.WHITE, + Rarity.UNCOMMON to ChatFormatting.GREEN, + Rarity.RARE to ChatFormatting.BLUE, + Rarity.EPIC to ChatFormatting.DARK_PURPLE, + Rarity.LEGENDARY to ChatFormatting.GOLD, + Rarity.MYTHIC to ChatFormatting.LIGHT_PURPLE, + Rarity.DIVINE to ChatFormatting.AQUA, + Rarity.SPECIAL to ChatFormatting.RED, + Rarity.VERY_SPECIAL to ChatFormatting.RED, + Rarity.SUPREME to ChatFormatting.DARK_RED, + Rarity.ULTIMATE to ChatFormatting.DARK_RED, ) val byName = entries.flatMap { en -> en.names.map { it to en } }.toMap() val fromNeuRepo = entries.associateBy { it.neuRepoRarity } @@ -89,7 +89,7 @@ enum class Rarity(vararg altNames: String) { fun fromPetItem(itemStack: ItemStack): Rarity? = itemStack.petData?.tier?.let(::fromNeuRepo) - fun fromLore(lore: List<Text>): Rarity? = + fun fromLore(lore: List<Component>): Rarity? = lore.lastNotNullOfOrNull { it.unformattedString.words() .firstNotNullOfOrNull(::fromString) diff --git a/src/main/kotlin/util/skyblock/SBItemUtil.kt b/src/main/kotlin/util/skyblock/SBItemUtil.kt index 3901b60..619a10b 100644 --- a/src/main/kotlin/util/skyblock/SBItemUtil.kt +++ b/src/main/kotlin/util/skyblock/SBItemUtil.kt @@ -1,12 +1,12 @@ package moe.nea.firmament.util.skyblock -import net.minecraft.item.ItemStack +import net.minecraft.world.item.ItemStack import moe.nea.firmament.util.mc.loreAccordingToNbt import moe.nea.firmament.util.unformattedString object SBItemUtil { fun ItemStack.getSearchName(): String { - val name = this.name.unformattedString + val name = this.hoverName.unformattedString if (name.contains("Enchanted Book")) { val enchant = loreAccordingToNbt.firstOrNull()?.unformattedString if (enchant != null) return enchant diff --git a/src/main/kotlin/util/skyblock/SackUtil.kt b/src/main/kotlin/util/skyblock/SackUtil.kt index af03363..a69309b 100644 --- a/src/main/kotlin/util/skyblock/SackUtil.kt +++ b/src/main/kotlin/util/skyblock/SackUtil.kt @@ -2,9 +2,9 @@ package moe.nea.firmament.util.skyblock import kotlinx.serialization.Serializable import kotlinx.serialization.serializer -import net.minecraft.client.gui.screen.ingame.GenericContainerScreen -import net.minecraft.text.HoverEvent -import net.minecraft.text.Text +import net.minecraft.client.gui.screens.inventory.ContainerScreen +import net.minecraft.network.chat.HoverEvent +import net.minecraft.network.chat.Component import moe.nea.firmament.annotations.Subscribe import moe.nea.firmament.events.ChestInventoryUpdateEvent import moe.nea.firmament.events.ProcessChatEvent @@ -46,11 +46,11 @@ object SackUtil { @Subscribe fun storeDataFromInventory(event: ChestInventoryUpdateEvent) { - val screen = event.inventory as? GenericContainerScreen ?: return + val screen = event.inventory as? ContainerScreen ?: return if (!screen.title.unformattedString.endsWith(" Sack")) return - val inv = screen.screenHandler?.inventory ?: return - if (inv.size() < 18) return - val backSlot = inv.getStack(inv.size() - 5) + val inv = screen.menu?.container ?: return + if (inv.containerSize < 18) return + val backSlot = inv.getItem(inv.containerSize - 5) if (backSlot.displayNameAccordingToNbt.unformattedString != "Go Back") return if (backSlot.loreAccordingToNbt.map { it.unformattedString } != listOf("To Sack of Sacks")) return for (itemStack in inv.iterableView) { @@ -74,7 +74,7 @@ object SackUtil { getUpdatesFromMessage(event.text) } - fun getUpdatesFromMessage(text: Text): List<SackUpdate> { + fun getUpdatesFromMessage(text: Component): List<SackUpdate> { val update = ChatUpdate() text.siblings.forEach(update::updateFromHoverText) return update.updates @@ -102,7 +102,7 @@ object SackUtil { } } - fun updateFromHoverText(text: Text) { + fun updateFromHoverText(text: Component) { text.siblings.forEach(::updateFromHoverText) val hoverText = (text.style.hoverEvent as? HoverEvent.ShowText)?.value ?: return val cleanedText = hoverText.unformattedString diff --git a/src/main/kotlin/util/skyblock/ScreenIdentification.kt b/src/main/kotlin/util/skyblock/ScreenIdentification.kt index 0e7797c..ff725fa 100644 --- a/src/main/kotlin/util/skyblock/ScreenIdentification.kt +++ b/src/main/kotlin/util/skyblock/ScreenIdentification.kt @@ -1,7 +1,7 @@ package moe.nea.firmament.util.skyblock -import net.minecraft.client.gui.screen.Screen -import net.minecraft.client.gui.screen.ingame.GenericContainerScreen +import net.minecraft.client.gui.screens.Screen +import net.minecraft.client.gui.screens.inventory.ContainerScreen import moe.nea.firmament.util.mc.displayNameAccordingToNbt import moe.nea.firmament.util.mc.loreAccordingToNbt import moe.nea.firmament.util.unformattedString @@ -24,13 +24,13 @@ object ScreenIdentification { enum class ScreenType(val detector: (Screen) -> Boolean) { BAZAAR_ANY({ - it is GenericContainerScreen && ( - it.screenHandler.getSlot(it.screenHandler.rows * 9 - 4) - .stack + it is ContainerScreen && ( + it.menu.getSlot(it.menu.rowCount * 9 - 4) + .item .displayNameAccordingToNbt .unformattedString == "Manage Orders" - || it.screenHandler.getSlot(it.screenHandler.rows * 9 - 5) - .stack + || it.menu.getSlot(it.menu.rowCount * 9 - 5) + .item .loreAccordingToNbt .any { it.unformattedString == "To Bazaar" diff --git a/src/main/kotlin/util/skyblock/TabListAPI.kt b/src/main/kotlin/util/skyblock/TabListAPI.kt index 6b937da..43722e0 100644 --- a/src/main/kotlin/util/skyblock/TabListAPI.kt +++ b/src/main/kotlin/util/skyblock/TabListAPI.kt @@ -1,7 +1,7 @@ package moe.nea.firmament.util.skyblock import org.intellij.lang.annotations.Language -import net.minecraft.text.Text +import net.minecraft.network.chat.Component import moe.nea.firmament.util.StringUtil.title import moe.nea.firmament.util.StringUtil.unwords import moe.nea.firmament.util.mc.MCTabListAPI @@ -9,7 +9,7 @@ import moe.nea.firmament.util.unformattedString object TabListAPI { - fun getWidgetLines(widgetName: WidgetName, includeTitle: Boolean = false, from: MCTabListAPI.CurrentTabList = MCTabListAPI.currentTabList): List<Text> { + fun getWidgetLines(widgetName: WidgetName, includeTitle: Boolean = false, from: MCTabListAPI.CurrentTabList = MCTabListAPI.currentTabList): List<Component> { return from.body .dropWhile { !widgetName.matchesTitle(it) } .takeWhile { it.string.isNotBlank() && !it.string.startsWith(" ") } @@ -25,7 +25,7 @@ object TabListAPI { PET ; - fun matchesTitle(it: Text): Boolean { + fun matchesTitle(it: Component): Boolean { return regex.matches(it.unformattedString) } |
