aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/de/hysky/skyblocker/config
diff options
context:
space:
mode:
authorolim <bobq4582@gmail.com>2024-01-30 12:28:25 +0000
committerolim <bobq4582@gmail.com>2024-01-30 12:28:25 +0000
commitfb583f4d085e4b34609e24399a72701210bb682c (patch)
treeefbd102fe3b27380db54f39ee1754bb34dcbbae5 /src/main/java/de/hysky/skyblocker/config
parent81e17a23645f429f91f77663928372bdf0833e16 (diff)
downloadSkyblocker-fb583f4d085e4b34609e24399a72701210bb682c.tar.gz
Skyblocker-fb583f4d085e4b34609e24399a72701210bb682c.tar.bz2
Skyblocker-fb583f4d085e4b34609e24399a72701210bb682c.zip
start of crystal hollows fetures
basic implementation of a map and way-points features for the crystal hollows
Diffstat (limited to 'src/main/java/de/hysky/skyblocker/config')
-rw-r--r--src/main/java/de/hysky/skyblocker/config/SkyblockerConfig.java30
-rw-r--r--src/main/java/de/hysky/skyblocker/config/categories/DwarvenMinesCategory.java47
2 files changed, 76 insertions, 1 deletions
diff --git a/src/main/java/de/hysky/skyblocker/config/SkyblockerConfig.java b/src/main/java/de/hysky/skyblocker/config/SkyblockerConfig.java
index a7569adb..886f81fb 100644
--- a/src/main/java/de/hysky/skyblocker/config/SkyblockerConfig.java
+++ b/src/main/java/de/hysky/skyblocker/config/SkyblockerConfig.java
@@ -873,6 +873,12 @@ public class SkyblockerConfig {
@SerialEntry
public DwarvenHud dwarvenHud = new DwarvenHud();
+
+ @SerialEntry
+ public CrystalsHud crystalsHud = new CrystalsHud();
+
+ @SerialEntry
+ public CrystalsWaypoints crystalsWaypoints = new CrystalsWaypoints();
}
public static class DwarvenHud {
@@ -891,6 +897,30 @@ public class SkyblockerConfig {
@SerialEntry
public int y = 10;
}
+ public static class CrystalsHud {
+ @SerialEntry
+ public boolean enabled = true;
+
+
+ @SerialEntry
+ public boolean enableBackground = true;
+
+ @SerialEntry
+ public int x = 10;
+
+ @SerialEntry
+ public int y = 50;
+ }
+ public static class CrystalsWaypoints {
+ @SerialEntry
+ public boolean enabled = true;
+
+ @SerialEntry
+ public boolean findInChat = true;
+
+ @SerialEntry
+ public Waypoint.Type waypointType = Waypoint.Type.WAYPOINT;
+ }
public enum DwarvenHudStyle {
SIMPLE, FANCY, CLASSIC;
diff --git a/src/main/java/de/hysky/skyblocker/config/categories/DwarvenMinesCategory.java b/src/main/java/de/hysky/skyblocker/config/categories/DwarvenMinesCategory.java
index 80d6485b..4a7e6854 100644
--- a/src/main/java/de/hysky/skyblocker/config/categories/DwarvenMinesCategory.java
+++ b/src/main/java/de/hysky/skyblocker/config/categories/DwarvenMinesCategory.java
@@ -2,6 +2,7 @@ package de.hysky.skyblocker.config.categories;
import de.hysky.skyblocker.config.ConfigUtils;
import de.hysky.skyblocker.config.SkyblockerConfig;
+import de.hysky.skyblocker.skyblock.dwarven.CrystalsHudConfigScreen;
import dev.isxander.yacl3.api.ButtonOption;
import dev.isxander.yacl3.api.ConfigCategory;
import dev.isxander.yacl3.api.Option;
@@ -53,7 +54,7 @@ public class DwarvenMinesCategory {
.build())
.option(Option.<SkyblockerConfig.DwarvenHudStyle>createBuilder()
.name(Text.translatable("text.autoconfig.skyblocker.option.locations.dwarvenMines.dwarvenHud.style"))
- .description(OptionDescription.of(Text.translatable("text.autoconfig.skyblocker.option.locations.dwarvenMines.dwarvenHud.style.@Tooltip[0]"),
+ .description(OptionDescription.of(Text.translatable("text.autoconfig.skyblocker.option.locations.dwarvenMines.dwarvenHud.style.@Tooltip[0]"),
Text.translatable("text.autoconfig.skyblocker.option.locations.dwarvenMines.dwarvenHud.style.@Tooltip[1]"),
Text.translatable("text.autoconfig.skyblocker.option.locations.dwarvenMines.dwarvenHud.style.@Tooltip[2]")))
.binding(defaults.locations.dwarvenMines.dwarvenHud.style,
@@ -74,6 +75,50 @@ public class DwarvenMinesCategory {
.controller(ConfigUtils::createBooleanController)
.build())
.build())
+ //crystal HUD
+ .group(OptionGroup.createBuilder()
+ .name(Text.translatable("text.autoconfig.skyblocker.option.locations.dwarvenMines.crystalsHud")) //todo i do not know if i need to duplicate text
+ .collapsed(false)
+ .option(Option.<Boolean>createBuilder()
+ .name(Text.translatable("text.autoconfig.skyblocker.option.locations.dwarvenMines.dwarvenHud.enabled"))
+ .binding(defaults.locations.dwarvenMines.crystalsHud.enabled,
+ () -> config.locations.dwarvenMines.crystalsHud.enabled,
+ newValue -> config.locations.dwarvenMines.crystalsHud.enabled = newValue)
+ .controller(ConfigUtils::createBooleanController)
+ .build())
+ .option(ButtonOption.createBuilder()
+ .name(Text.translatable("text.autoconfig.skyblocker.option.locations.dwarvenMines.dwarvenHud.screen"))
+ .text(Text.translatable("text.skyblocker.open"))
+ .action((screen, opt) -> MinecraftClient.getInstance().setScreen(new CrystalsHudConfigScreen(screen)))
+ .build())
+ .option(Option.<Boolean>createBuilder()
+ .name(Text.translatable("text.autoconfig.skyblocker.option.locations.dwarvenMines.dwarvenHud.enableBackground"))
+ .binding(defaults.locations.dwarvenMines.crystalsHud.enableBackground,
+ () -> config.locations.dwarvenMines.crystalsHud.enableBackground,
+ newValue -> config.locations.dwarvenMines.crystalsHud.enableBackground = newValue)
+ .controller(ConfigUtils::createBooleanController)
+ .build())
+ .build())
+ //crystals waypoints
+ .group(OptionGroup.createBuilder()
+ .name(Text.translatable("text.autoconfig.skyblocker.option.locations.dwarvenMines.crystalsWaypoints")) //todo i do not know if i need to duplicate text
+ .collapsed(false)
+ .option(Option.<Boolean>createBuilder()
+ .name(Text.translatable("text.autoconfig.skyblocker.option.locations.dwarvenMines.dwarvenHud.enabled"))
+ .binding(defaults.locations.dwarvenMines.crystalsWaypoints.enabled,
+ () -> config.locations.dwarvenMines.crystalsWaypoints.enabled,
+ newValue -> config.locations.dwarvenMines.crystalsWaypoints.enabled = newValue)
+ .controller(ConfigUtils::createBooleanController)
+ .build())
+ .option(Option.<Boolean>createBuilder()
+ .name(Text.translatable("text.autoconfig.skyblocker.option.locations.dwarvenMines.crystalsWaypoints.findInChat"))
+ .binding(defaults.locations.dwarvenMines.crystalsWaypoints.findInChat,
+ () -> config.locations.dwarvenMines.crystalsWaypoints.findInChat,
+ newValue -> config.locations.dwarvenMines.crystalsWaypoints.findInChat = newValue)
+ .controller(ConfigUtils::createBooleanController)
+ .build())
+
+ .build())
.build();
}
}