aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/de/hysky/skyblocker/config
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/de/hysky/skyblocker/config')
-rw-r--r--src/main/java/de/hysky/skyblocker/config/categories/UIAndVisualsCategory.java46
-rw-r--r--src/main/java/de/hysky/skyblocker/config/configs/UIAndVisualsConfig.java20
2 files changed, 66 insertions, 0 deletions
diff --git a/src/main/java/de/hysky/skyblocker/config/categories/UIAndVisualsCategory.java b/src/main/java/de/hysky/skyblocker/config/categories/UIAndVisualsCategory.java
index e6cd3c54..369a9a90 100644
--- a/src/main/java/de/hysky/skyblocker/config/categories/UIAndVisualsCategory.java
+++ b/src/main/java/de/hysky/skyblocker/config/categories/UIAndVisualsCategory.java
@@ -8,12 +8,15 @@ import de.hysky.skyblocker.config.configs.UIAndVisualsConfig;
import de.hysky.skyblocker.utils.waypoint.Waypoint;
import dev.isxander.yacl3.api.ConfigCategory;
import dev.isxander.yacl3.api.*;
+import dev.isxander.yacl3.api.controller.ColorControllerBuilder;
import dev.isxander.yacl3.api.controller.FloatFieldControllerBuilder;
import dev.isxander.yacl3.api.controller.IntegerSliderControllerBuilder;
import net.minecraft.client.MinecraftClient;
import net.minecraft.text.Text;
import net.minecraft.util.Formatting;
+import java.awt.*;
+
public class UIAndVisualsCategory {
public static ConfigCategory create(SkyblockerConfig defaults, SkyblockerConfig config) {
return ConfigCategory.createBuilder()
@@ -377,6 +380,49 @@ public class UIAndVisualsCategory {
.build())
.build())
+ //Compact Damage Numbers
+ .group(OptionGroup.createBuilder()
+ .name(Text.translatable("skyblocker.config.uiAndVisuals.compactDamage"))
+ .collapsed(true)
+ .option(Option.<Boolean>createBuilder()
+ .name(Text.translatable("skyblocker.config.uiAndVisuals.compactDamage.enabled"))
+ .binding(defaults.uiAndVisuals.compactDamage.enabled,
+ () -> config.uiAndVisuals.compactDamage.enabled,
+ newValue -> config.uiAndVisuals.compactDamage.enabled = newValue)
+ .controller(ConfigUtils::createBooleanController)
+ .build())
+ .option(Option.<Integer>createBuilder()
+ .name(Text.translatable("skyblocker.config.uiAndVisuals.compactDamage.precision"))
+ .description(OptionDescription.of(Text.translatable("skyblocker.config.uiAndVisuals.compactDamage.precision.@Tooltip")))
+ .binding(defaults.uiAndVisuals.compactDamage.precision,
+ () -> config.uiAndVisuals.compactDamage.precision,
+ newValue -> config.uiAndVisuals.compactDamage.precision = newValue)
+ .controller(opt -> IntegerSliderControllerBuilder.create(opt).range(1,3).step(1))
+ .build())
+ .option(Option.<Color>createBuilder()
+ .name(Text.translatable("skyblocker.config.uiAndVisuals.compactDamage.normalDamageColor"))
+ .binding(defaults.uiAndVisuals.compactDamage.normalDamageColor,
+ () -> config.uiAndVisuals.compactDamage.normalDamageColor,
+ newValue -> config.uiAndVisuals.compactDamage.normalDamageColor = newValue)
+ .controller(ColorControllerBuilder::create)
+ .build())
+ .option(Option.<Color>createBuilder()
+ .name(Text.translatable("skyblocker.config.uiAndVisuals.compactDamage.critDamageGradientStart"))
+ .binding(defaults.uiAndVisuals.compactDamage.critDamageGradientStart,
+ () -> config.uiAndVisuals.compactDamage.critDamageGradientStart,
+ newValue -> config.uiAndVisuals.compactDamage.critDamageGradientStart = newValue)
+ .controller(ColorControllerBuilder::create)
+ .build())
+ .option(Option.<Color>createBuilder()
+ .name(Text.translatable("skyblocker.config.uiAndVisuals.compactDamage.critDamageGradientEnd"))
+ .binding(defaults.uiAndVisuals.compactDamage.critDamageGradientEnd,
+ () -> config.uiAndVisuals.compactDamage.critDamageGradientEnd,
+ newValue -> config.uiAndVisuals.compactDamage.critDamageGradientEnd = newValue)
+ .controller(ColorControllerBuilder::create)
+ .build())
+ .build()
+ )
+
.build();
}
}
diff --git a/src/main/java/de/hysky/skyblocker/config/configs/UIAndVisualsConfig.java b/src/main/java/de/hysky/skyblocker/config/configs/UIAndVisualsConfig.java
index 03d300f4..e016988b 100644
--- a/src/main/java/de/hysky/skyblocker/config/configs/UIAndVisualsConfig.java
+++ b/src/main/java/de/hysky/skyblocker/config/configs/UIAndVisualsConfig.java
@@ -4,6 +4,7 @@ import de.hysky.skyblocker.utils.waypoint.Waypoint;
import dev.isxander.yacl3.config.v2.api.SerialEntry;
import net.minecraft.util.Formatting;
+import java.awt.*;
import java.util.ArrayList;
import java.util.List;
@@ -59,6 +60,9 @@ public class UIAndVisualsConfig {
@SerialEntry
public FlameOverlay flameOverlay = new FlameOverlay();
+ @SerialEntry
+ public CompactDamage compactDamage = new CompactDamage();
+
public static class ChestValue {
@SerialEntry
public boolean enableChestValue = true;
@@ -258,4 +262,20 @@ public class UIAndVisualsConfig {
public int flameOpacity = 100;
}
+ public static class CompactDamage {
+ @SerialEntry
+ public boolean enabled = true;
+
+ @SerialEntry
+ public int precision = 1;
+
+ @SerialEntry
+ public Color normalDamageColor = new Color(0xFFFFFF);
+
+ @SerialEntry
+ public Color critDamageGradientStart = new Color(0xFFFF55);
+
+ @SerialEntry
+ public Color critDamageGradientEnd = new Color(0xFF5555);
+ }
}