aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/at/hannibal2/skyhanni/utils/StringUtils.kt
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/at/hannibal2/skyhanni/utils/StringUtils.kt')
-rw-r--r--src/main/java/at/hannibal2/skyhanni/utils/StringUtils.kt11
1 files changed, 11 insertions, 0 deletions
diff --git a/src/main/java/at/hannibal2/skyhanni/utils/StringUtils.kt b/src/main/java/at/hannibal2/skyhanni/utils/StringUtils.kt
index d42b597e6..8150bce4f 100644
--- a/src/main/java/at/hannibal2/skyhanni/utils/StringUtils.kt
+++ b/src/main/java/at/hannibal2/skyhanni/utils/StringUtils.kt
@@ -152,4 +152,15 @@ object StringUtils {
builder.append(end)
return builder.toString()
}
+
+ fun String.capAtMinecraftLength(limit: Int) =
+ capAtLength(limit) { Minecraft.getMinecraft().fontRendererObj.getCharWidth(it) }
+
+ private fun String.capAtLength(limit: Int, lengthJudger: (Char) -> Int): String {
+ var i = 0
+ return takeWhile {
+ i += lengthJudger(it)
+ i < limit
+ }
+ }
} \ No newline at end of file