aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/de/hysky/skyblocker/skyblock
diff options
context:
space:
mode:
authorRime <81419447+Emirlol@users.noreply.github.com>2024-05-10 13:31:05 +0300
committerRime <81419447+Emirlol@users.noreply.github.com>2024-05-10 13:31:05 +0300
commit2af6c131cff70219bcc1147674c180615b0f6746 (patch)
treed7bff4f48aaeafea6dff03f5933d638f462e8fdb /src/main/java/de/hysky/skyblocker/skyblock
parent7f36f53ebb632d6c1950bf2e9f9951f94a872ee1 (diff)
downloadSkyblocker-2af6c131cff70219bcc1147674c180615b0f6746.tar.gz
Skyblocker-2af6c131cff70219bcc1147674c180615b0f6746.tar.bz2
Skyblocker-2af6c131cff70219bcc1147674c180615b0f6746.zip
Refactored config to work with the new config categorization
Changed formatting method From DecimalFormat to String#formatted to make it easier to configure. Also, the precision setting now applies instantly.
Diffstat (limited to 'src/main/java/de/hysky/skyblocker/skyblock')
-rw-r--r--src/main/java/de/hysky/skyblocker/skyblock/CompactDamage.java20
1 files changed, 11 insertions, 9 deletions
diff --git a/src/main/java/de/hysky/skyblocker/skyblock/CompactDamage.java b/src/main/java/de/hysky/skyblocker/skyblock/CompactDamage.java
index 161ecf2e..6442f61d 100644
--- a/src/main/java/de/hysky/skyblocker/skyblock/CompactDamage.java
+++ b/src/main/java/de/hysky/skyblocker/skyblock/CompactDamage.java
@@ -23,8 +23,6 @@ public class CompactDamage {
private CompactDamage() {
}
- private static final DecimalFormat DECIMAL_FORMAT = new DecimalFormat(SkyblockerConfigManager.get().general.compactDamage.format);
-
public static void compactDamage(ArmorStandEntity entity) {
if (!entity.isInvisible() || !entity.hasCustomName() || !entity.isCustomNameVisible() || entity.getFireTicks() != -1 || !entity.shouldHideBasePlate()) return;
//Dmg armor stands have no base plate and have a fire time of -1 (just one of these isn't enough to determine if it's a dmg armor stand)
@@ -39,7 +37,7 @@ public class CompactDamage {
String dmg = text.getString().replace(",", "");
if (!NumberUtils.isParsable(dmg)) return; //Sanity check
String prettifiedDmg = prettifyDamageNumber(Long.parseLong(dmg));
- prettierCustomName = Text.literal("").append(Text.literal(prettifiedDmg).withColor(SkyblockerConfigManager.get().general.compactDamage.normalDamageColor.getRGB() & 0x00FFFFFF)).setStyle(customName.getStyle());
+ prettierCustomName = Text.literal("").append(Text.literal(prettifiedDmg).withColor(SkyblockerConfigManager.get().uiAndVisuals.compactDamage.normalDamageColor.getRGB() & 0x00FFFFFF)).setStyle(customName.getStyle());
} else { //Crit damage
String dmg = siblings.subList(1, siblings.size() - 1) //First and last sibling are the crit symbols
.stream()
@@ -54,8 +52,8 @@ public class CompactDamage {
for (int i = 0; i < length; i++) {
prettierCustomName.append(Text.literal(prettifiedDmg.substring(i, i + 1)).withColor(
CustomArmorAnimatedDyes.interpolate(
- SkyblockerConfigManager.get().general.compactDamage.critDamageGradientStart.getRGB() & 0x00FFFFFF,
- SkyblockerConfigManager.get().general.compactDamage.critDamageGradientEnd.getRGB() & 0x00FFFFFF,
+ SkyblockerConfigManager.get().uiAndVisuals.compactDamage.critDamageGradientStart.getRGB() & 0x00FFFFFF,
+ SkyblockerConfigManager.get().uiAndVisuals.compactDamage.critDamageGradientEnd.getRGB() & 0x00FFFFFF,
i / (length - 1.0)
)
));
@@ -68,9 +66,13 @@ public class CompactDamage {
private static String prettifyDamageNumber(long damage) {
if (damage < 1_000) return String.valueOf(damage);
- if (damage < 1_000_000) return DECIMAL_FORMAT.format(damage / 1_000.0) + "k";
- if (damage < 1_000_000_000) return DECIMAL_FORMAT.format(damage / 1_000_000.0) + "m";
- if (damage < 1_000_000_000_000L) return DECIMAL_FORMAT.format(damage / 1_000_000_000.0) + "b";
- return DECIMAL_FORMAT.format(damage / 1_000_000_000_000.0) + "t"; //This will probably never be reached
+ if (damage < 1_000_000) return format(damage / 1_000.0) + "k";
+ if (damage < 1_000_000_000) return format(damage / 1_000_000.0) + "m";
+ if (damage < 1_000_000_000_000L) return format(damage / 1_000_000_000.0) + "b";
+ return format(damage / 1_000_000_000_000.0) + "t"; //This will probably never be reached
+ }
+
+ private static String format(double number) {
+ return ("%." + SkyblockerConfigManager.get().uiAndVisuals.compactDamage.precision + "f").formatted(number);
}
}