From dae9cafbcbd46751311d377b38b4d9ccf3e8f51b Mon Sep 17 00:00:00 2001 From: hannibal2 <24389977+hannibal002@users.noreply.github.com> Date: Thu, 22 Feb 2024 21:56:23 +0100 Subject: Saving every diana burrow location and option to show them. #938 --- .../java/at/hannibal2/skyhanni/utils/LorenzVec.kt | 19 +++++++++++++------ 1 file changed, 13 insertions(+), 6 deletions(-) (limited to 'src/main/java/at/hannibal2/skyhanni/utils') diff --git a/src/main/java/at/hannibal2/skyhanni/utils/LorenzVec.kt b/src/main/java/at/hannibal2/skyhanni/utils/LorenzVec.kt index 03f623f70..ad85619b1 100644 --- a/src/main/java/at/hannibal2/skyhanni/utils/LorenzVec.kt +++ b/src/main/java/at/hannibal2/skyhanni/utils/LorenzVec.kt @@ -66,11 +66,18 @@ data class LorenzVec( fun normalize() = length().let { LorenzVec(x / it, y / it, z / it) } - fun printWithAccuracy(accuracy: Int): String { - val x = (round(x * accuracy) / accuracy) - val y = (round(y * accuracy) / accuracy) - val z = (round(z * accuracy) / accuracy) - return LorenzVec(x, y, z).toCleanString() + fun printWithAccuracy(accuracy: Int, splitChar: String = " "): String { + return if (accuracy == 0) { + val x = round(x).toInt() + val y = round(y).toInt() + val z = round(z).toInt() + "$x$splitChar$y$splitChar$z" + } else { + val x = (round(x * accuracy) / accuracy) + val y = (round(y * accuracy) / accuracy) + val z = (round(z * accuracy) / accuracy) + "$x$splitChar$y$splitChar$z" + } } private fun toCleanString(): String { @@ -155,7 +162,7 @@ data class LorenzVec( return LorenzVec(x, z, y) } - // only for migration purposes + // Format: "x:y:z" fun decodeFromString(string: String): LorenzVec { val (x, y, z) = string.split(":").map { it.toDouble() } return LorenzVec(x, y, z) -- cgit