From 8c317b7b1905cb886fd3af50caa0d3b3149d1d86 Mon Sep 17 00:00:00 2001 From: appable Date: Thu, 27 Jul 2023 02:31:02 -0700 Subject: Merge pull request #337 * trophy fillet tooltip; trophy info tooltip in chat * add new config options for trophy * fix up some settings * Merge remote-tracking branch 'upstream/beta' into trophy-data * using TrophyFishJson to load repo data * fixed missing separators for total number * fixed trophy fish sack display --- .../java/at/hannibal2/skyhanni/utils/StringUtils.kt | 18 ++++++++++++++++++ .../skyhanni/utils/jsonobjects/TrophyFishJson.java | 11 +++++++++++ 2 files changed, 29 insertions(+) create mode 100644 src/main/java/at/hannibal2/skyhanni/utils/jsonobjects/TrophyFishJson.java (limited to 'src/main/java/at/hannibal2/skyhanni/utils') diff --git a/src/main/java/at/hannibal2/skyhanni/utils/StringUtils.kt b/src/main/java/at/hannibal2/skyhanni/utils/StringUtils.kt index 917ec5c88..aaff447a9 100644 --- a/src/main/java/at/hannibal2/skyhanni/utils/StringUtils.kt +++ b/src/main/java/at/hannibal2/skyhanni/utils/StringUtils.kt @@ -2,6 +2,8 @@ package at.hannibal2.skyhanni.utils import at.hannibal2.skyhanni.utils.GuiRenderUtils.darkenColor import net.minecraft.client.Minecraft +import net.minecraft.client.gui.GuiUtilRenderComponents +import net.minecraft.util.ChatComponentText import org.intellij.lang.annotations.Language import java.util.* import java.util.regex.Matcher @@ -106,5 +108,21 @@ object StringUtils { } } + + fun String.removeWordsAtEnd(i: Int) = split(" ").dropLast(i).joinToString(" ") + + fun String.splitLines(width: Int): String { + val fr = Minecraft.getMinecraft().fontRendererObj + return GuiUtilRenderComponents.splitText( + ChatComponentText(this), width, fr, false, false + ).joinToString("\n") { + val text = it.formattedText + val formatCode = Regex("(?:ยง[a-f0-9l-or]|\\s)*") + formatCode.matchAt(text, 0)?.let { matcher -> + val codes = matcher.value.replace("\\s".toRegex(), "") + codes + text.removeRange(matcher.range) + } ?: text + } + } } \ No newline at end of file diff --git a/src/main/java/at/hannibal2/skyhanni/utils/jsonobjects/TrophyFishJson.java b/src/main/java/at/hannibal2/skyhanni/utils/jsonobjects/TrophyFishJson.java new file mode 100644 index 000000000..48d0908a9 --- /dev/null +++ b/src/main/java/at/hannibal2/skyhanni/utils/jsonobjects/TrophyFishJson.java @@ -0,0 +1,11 @@ +package at.hannibal2.skyhanni.utils.jsonobjects; + +import at.hannibal2.skyhanni.features.fishing.TrophyFishInfo; +import com.google.gson.annotations.Expose; + +import java.util.Map; + +public class TrophyFishJson { + @Expose + public Map trophy_fish; +} -- cgit