From 4cf5ff1a436b1b5ce30990bb67b816a241aae603 Mon Sep 17 00:00:00 2001 From: Aaron <51387595+AzureAaron@users.noreply.github.com> Date: Thu, 25 Jan 2024 16:44:38 -0500 Subject: Kuudra Waypoints --- .../hysky/skyblocker/config/SkyblockerConfig.java | 28 +++++++++ .../skyblocker/config/SkyblockerConfigManager.java | 1 + .../config/categories/CrimsonIsleCategory.java | 68 ++++++++++++++++++++++ 3 files changed, 97 insertions(+) create mode 100644 src/main/java/de/hysky/skyblocker/config/categories/CrimsonIsleCategory.java (limited to 'src/main/java/de/hysky/skyblocker/config') diff --git a/src/main/java/de/hysky/skyblocker/config/SkyblockerConfig.java b/src/main/java/de/hysky/skyblocker/config/SkyblockerConfig.java index a7569adb..aeb2efd5 100644 --- a/src/main/java/de/hysky/skyblocker/config/SkyblockerConfig.java +++ b/src/main/java/de/hysky/skyblocker/config/SkyblockerConfig.java @@ -607,6 +607,9 @@ public class SkyblockerConfig { @SerialEntry public Barn barn = new Barn(); + @SerialEntry + public CrimsonIsle crimsonIsle = new CrimsonIsle(); + @SerialEntry public Dungeons dungeons = new Dungeons(); @@ -913,6 +916,31 @@ public class SkyblockerConfig { public boolean solveTreasureHunter = true; } + public static class CrimsonIsle { + @SerialEntry + public Kuudra kuudra = new Kuudra(); + } + + public static class Kuudra { + @SerialEntry + public boolean supplyWaypoints = true; + + @SerialEntry + public boolean supplyPileWaypoints = true; + + @SerialEntry + public boolean fuelWaypoints = true; + + @SerialEntry + public boolean safeSpotWaypoints = true; + + @SerialEntry + public boolean pearlWaypoints = true; + + @SerialEntry + public Waypoint.Type waypointType = Waypoint.Type.WAYPOINT; + } + public static class Rift { @SerialEntry public boolean mirrorverseWaypoints = true; diff --git a/src/main/java/de/hysky/skyblocker/config/SkyblockerConfigManager.java b/src/main/java/de/hysky/skyblocker/config/SkyblockerConfigManager.java index 3a2601ad..70578822 100644 --- a/src/main/java/de/hysky/skyblocker/config/SkyblockerConfigManager.java +++ b/src/main/java/de/hysky/skyblocker/config/SkyblockerConfigManager.java @@ -73,6 +73,7 @@ public class SkyblockerConfigManager { .category(GeneralCategory.create(defaults, config)) .category(DungeonsCategory.create(defaults, config)) .category(DwarvenMinesCategory.create(defaults, config)) + .category(CrimsonIsleCategory.create(defaults, config)) .category(LocationsCategory.create(defaults, config)) .category(SlayersCategory.create(defaults, config)) .category(QuickNavigationCategory.create(defaults, config)) diff --git a/src/main/java/de/hysky/skyblocker/config/categories/CrimsonIsleCategory.java b/src/main/java/de/hysky/skyblocker/config/categories/CrimsonIsleCategory.java new file mode 100644 index 00000000..0a49d83f --- /dev/null +++ b/src/main/java/de/hysky/skyblocker/config/categories/CrimsonIsleCategory.java @@ -0,0 +1,68 @@ +package de.hysky.skyblocker.config.categories; + +import de.hysky.skyblocker.config.ConfigUtils; +import de.hysky.skyblocker.config.SkyblockerConfig; +import de.hysky.skyblocker.utils.waypoint.Waypoint; +import dev.isxander.yacl3.api.ConfigCategory; +import dev.isxander.yacl3.api.Option; +import dev.isxander.yacl3.api.OptionDescription; +import dev.isxander.yacl3.api.OptionGroup; +import net.minecraft.text.Text; + +public class CrimsonIsleCategory { + + public static ConfigCategory create(SkyblockerConfig defaults, SkyblockerConfig config) { + return ConfigCategory.createBuilder() + .name(Text.translatable("text.autoconfig.skyblocker.category.crimsonIsle")) + + //Kuudra + .group(OptionGroup.createBuilder() + .name(Text.translatable("text.autoconfig.skyblocker.option.locations.crimsonIsle.kuudra")) + .collapsed(false) + .option(Option.createBuilder() + .name(Text.translatable("text.autoconfig.skyblocker.option.locations.crimsonIsle.kuudra.supplyWaypoints")) + .binding(defaults.locations.crimsonIsle.kuudra.supplyWaypoints, + () -> config.locations.crimsonIsle.kuudra.supplyWaypoints, + newValue -> config.locations.crimsonIsle.kuudra.supplyWaypoints = newValue) + .controller(ConfigUtils::createBooleanController) + .build()) + .option(Option.createBuilder() + .name(Text.translatable("text.autoconfig.skyblocker.option.locations.crimsonIsle.kuudra.supplyPileWaypoints")) + .binding(defaults.locations.crimsonIsle.kuudra.supplyPileWaypoints, + () -> config.locations.crimsonIsle.kuudra.supplyPileWaypoints, + newValue -> config.locations.crimsonIsle.kuudra.supplyPileWaypoints = newValue) + .controller(ConfigUtils::createBooleanController) + .build()) + .option(Option.createBuilder() + .name(Text.translatable("text.autoconfig.skyblocker.option.locations.crimsonIsle.kuudra.fuelWaypoints")) + .binding(defaults.locations.crimsonIsle.kuudra.fuelWaypoints, + () -> config.locations.crimsonIsle.kuudra.fuelWaypoints, + newValue -> config.locations.crimsonIsle.kuudra.fuelWaypoints = newValue) + .controller(ConfigUtils::createBooleanController) + .build()) + .option(Option.createBuilder() + .name(Text.translatable("text.autoconfig.skyblocker.option.locations.crimsonIsle.kuudra.safeSpotWaypoints")) + .binding(defaults.locations.crimsonIsle.kuudra.safeSpotWaypoints, + () -> config.locations.crimsonIsle.kuudra.safeSpotWaypoints, + newValue -> config.locations.crimsonIsle.kuudra.safeSpotWaypoints = newValue) + .controller(ConfigUtils::createBooleanController) + .build()) + .option(Option.createBuilder() + .name(Text.translatable("text.autoconfig.skyblocker.option.locations.crimsonIsle.kuudra.pearlWaypoints")) + .binding(defaults.locations.crimsonIsle.kuudra.pearlWaypoints, + () -> config.locations.crimsonIsle.kuudra.pearlWaypoints, + newValue -> config.locations.crimsonIsle.kuudra.pearlWaypoints = newValue) + .controller(ConfigUtils::createBooleanController) + .build()) + .option(Option.createBuilder() + .name(Text.translatable("text.autoconfig.skyblocker.option.general.waypoints.waypointType")) + .description(OptionDescription.of(Text.translatable("text.autoconfig.skyblocker.option.general.waypoints.waypointType.@Tooltip"))) + .binding(defaults.locations.crimsonIsle.kuudra.waypointType, + () -> config.locations.crimsonIsle.kuudra.waypointType, + newValue -> config.locations.crimsonIsle.kuudra.waypointType = newValue) + .controller(ConfigUtils::createEnumCyclingListController) + .build()) + .build()) + .build(); + } +} -- cgit From 1ea5f54ab6d7edf7a7c5971db05e22667d3a9c93 Mon Sep 17 00:00:00 2001 From: Aaron <51387595+AzureAaron@users.noreply.github.com> Date: Fri, 26 Jan 2024 13:37:37 -0500 Subject: Arrow Poison Warnings --- .../de/hysky/skyblocker/config/SkyblockerConfig.java | 6 ++++++ .../config/categories/CrimsonIsleCategory.java | 17 +++++++++++++++++ 2 files changed, 23 insertions(+) (limited to 'src/main/java/de/hysky/skyblocker/config') diff --git a/src/main/java/de/hysky/skyblocker/config/SkyblockerConfig.java b/src/main/java/de/hysky/skyblocker/config/SkyblockerConfig.java index aeb2efd5..7234664d 100644 --- a/src/main/java/de/hysky/skyblocker/config/SkyblockerConfig.java +++ b/src/main/java/de/hysky/skyblocker/config/SkyblockerConfig.java @@ -939,6 +939,12 @@ public class SkyblockerConfig { @SerialEntry public Waypoint.Type waypointType = Waypoint.Type.WAYPOINT; + + @SerialEntry + public boolean noArrowPoisonWarning = true; + + @SerialEntry + public int arrowPoisonThreshold = 16; } public static class Rift { diff --git a/src/main/java/de/hysky/skyblocker/config/categories/CrimsonIsleCategory.java b/src/main/java/de/hysky/skyblocker/config/categories/CrimsonIsleCategory.java index 0a49d83f..bd7d4c07 100644 --- a/src/main/java/de/hysky/skyblocker/config/categories/CrimsonIsleCategory.java +++ b/src/main/java/de/hysky/skyblocker/config/categories/CrimsonIsleCategory.java @@ -7,6 +7,7 @@ import dev.isxander.yacl3.api.ConfigCategory; import dev.isxander.yacl3.api.Option; import dev.isxander.yacl3.api.OptionDescription; import dev.isxander.yacl3.api.OptionGroup; +import dev.isxander.yacl3.api.controller.IntegerFieldControllerBuilder; import net.minecraft.text.Text; public class CrimsonIsleCategory { @@ -62,6 +63,22 @@ public class CrimsonIsleCategory { newValue -> config.locations.crimsonIsle.kuudra.waypointType = newValue) .controller(ConfigUtils::createEnumCyclingListController) .build()) + .option(Option.createBuilder() + .name(Text.translatable("text.autoconfig.skyblocker.option.locations.crimsonIsle.kuudra.noArrowPoisonWarning")) + .description(OptionDescription.of(Text.translatable("text.autoconfig.skyblocker.option.locations.crimsonIsle.kuudra.noArrowPoisonWarning.@Tooltip"))) + .binding(defaults.locations.crimsonIsle.kuudra.noArrowPoisonWarning, + () -> config.locations.crimsonIsle.kuudra.noArrowPoisonWarning, + newValue -> config.locations.crimsonIsle.kuudra.noArrowPoisonWarning = newValue) + .controller(ConfigUtils::createBooleanController) + .build()) + .option(Option.createBuilder() + .name(Text.translatable("text.autoconfig.skyblocker.option.locations.crimsonIsle.kuudra.arrowPoisonThreshold")) + .description(OptionDescription.of(Text.translatable("text.autoconfig.skyblocker.option.locations.crimsonIsle.kuudra.arrowPoisonThreshold.@Tooltip"))) + .binding(defaults.locations.crimsonIsle.kuudra.arrowPoisonThreshold, + () -> config.locations.crimsonIsle.kuudra.arrowPoisonThreshold, + newValue -> config.locations.crimsonIsle.kuudra.arrowPoisonThreshold = newValue) + .controller(IntegerFieldControllerBuilder::create) + .build()) .build()) .build(); } -- cgit From 5c9eb5f77f85b221ee5c8ebedf44dd0a48bb8292 Mon Sep 17 00:00:00 2001 From: Aaron <51387595+AzureAaron@users.noreply.github.com> Date: Fri, 26 Jan 2024 14:55:59 -0500 Subject: Tweak waypoints Thanks to Fluboxer for the suggestions! --- .../hysky/skyblocker/config/SkyblockerConfig.java | 10 ++++---- .../config/categories/CrimsonIsleCategory.java | 30 +++++++++++----------- 2 files changed, 20 insertions(+), 20 deletions(-) (limited to 'src/main/java/de/hysky/skyblocker/config') diff --git a/src/main/java/de/hysky/skyblocker/config/SkyblockerConfig.java b/src/main/java/de/hysky/skyblocker/config/SkyblockerConfig.java index 7234664d..b842ec27 100644 --- a/src/main/java/de/hysky/skyblocker/config/SkyblockerConfig.java +++ b/src/main/java/de/hysky/skyblocker/config/SkyblockerConfig.java @@ -926,19 +926,19 @@ public class SkyblockerConfig { public boolean supplyWaypoints = true; @SerialEntry - public boolean supplyPileWaypoints = true; + public boolean fuelWaypoints = true; @SerialEntry - public boolean fuelWaypoints = true; + public Waypoint.Type suppliesAndFuelWaypointType = Waypoint.Type.WAYPOINT; @SerialEntry - public boolean safeSpotWaypoints = true; + public boolean ballistaBuildWaypoints = true; @SerialEntry - public boolean pearlWaypoints = true; + public boolean safeSpotWaypoints = true; @SerialEntry - public Waypoint.Type waypointType = Waypoint.Type.WAYPOINT; + public boolean pearlWaypoints = true; @SerialEntry public boolean noArrowPoisonWarning = true; diff --git a/src/main/java/de/hysky/skyblocker/config/categories/CrimsonIsleCategory.java b/src/main/java/de/hysky/skyblocker/config/categories/CrimsonIsleCategory.java index bd7d4c07..3c2dc3b6 100644 --- a/src/main/java/de/hysky/skyblocker/config/categories/CrimsonIsleCategory.java +++ b/src/main/java/de/hysky/skyblocker/config/categories/CrimsonIsleCategory.java @@ -27,13 +27,6 @@ public class CrimsonIsleCategory { newValue -> config.locations.crimsonIsle.kuudra.supplyWaypoints = newValue) .controller(ConfigUtils::createBooleanController) .build()) - .option(Option.createBuilder() - .name(Text.translatable("text.autoconfig.skyblocker.option.locations.crimsonIsle.kuudra.supplyPileWaypoints")) - .binding(defaults.locations.crimsonIsle.kuudra.supplyPileWaypoints, - () -> config.locations.crimsonIsle.kuudra.supplyPileWaypoints, - newValue -> config.locations.crimsonIsle.kuudra.supplyPileWaypoints = newValue) - .controller(ConfigUtils::createBooleanController) - .build()) .option(Option.createBuilder() .name(Text.translatable("text.autoconfig.skyblocker.option.locations.crimsonIsle.kuudra.fuelWaypoints")) .binding(defaults.locations.crimsonIsle.kuudra.fuelWaypoints, @@ -41,6 +34,21 @@ public class CrimsonIsleCategory { newValue -> config.locations.crimsonIsle.kuudra.fuelWaypoints = newValue) .controller(ConfigUtils::createBooleanController) .build()) + .option(Option.createBuilder() + .name(Text.translatable("text.autoconfig.skyblocker.option.locations.crimsonIsle.kuudra.suppliesAndFuelWaypointType")) + .description(OptionDescription.of(Text.translatable("text.autoconfig.skyblocker.option.general.waypoints.waypointType.@Tooltip"))) + .binding(defaults.locations.crimsonIsle.kuudra.suppliesAndFuelWaypointType, + () -> config.locations.crimsonIsle.kuudra.suppliesAndFuelWaypointType, + newValue -> config.locations.crimsonIsle.kuudra.suppliesAndFuelWaypointType = newValue) + .controller(ConfigUtils::createEnumCyclingListController) + .build()) + .option(Option.createBuilder() + .name(Text.translatable("text.autoconfig.skyblocker.option.locations.crimsonIsle.kuudra.ballistaBuildWaypoints")) + .binding(defaults.locations.crimsonIsle.kuudra.ballistaBuildWaypoints, + () -> config.locations.crimsonIsle.kuudra.ballistaBuildWaypoints, + newValue -> config.locations.crimsonIsle.kuudra.ballistaBuildWaypoints = newValue) + .controller(ConfigUtils::createBooleanController) + .build()) .option(Option.createBuilder() .name(Text.translatable("text.autoconfig.skyblocker.option.locations.crimsonIsle.kuudra.safeSpotWaypoints")) .binding(defaults.locations.crimsonIsle.kuudra.safeSpotWaypoints, @@ -55,14 +63,6 @@ public class CrimsonIsleCategory { newValue -> config.locations.crimsonIsle.kuudra.pearlWaypoints = newValue) .controller(ConfigUtils::createBooleanController) .build()) - .option(Option.createBuilder() - .name(Text.translatable("text.autoconfig.skyblocker.option.general.waypoints.waypointType")) - .description(OptionDescription.of(Text.translatable("text.autoconfig.skyblocker.option.general.waypoints.waypointType.@Tooltip"))) - .binding(defaults.locations.crimsonIsle.kuudra.waypointType, - () -> config.locations.crimsonIsle.kuudra.waypointType, - newValue -> config.locations.crimsonIsle.kuudra.waypointType = newValue) - .controller(ConfigUtils::createEnumCyclingListController) - .build()) .option(Option.createBuilder() .name(Text.translatable("text.autoconfig.skyblocker.option.locations.crimsonIsle.kuudra.noArrowPoisonWarning")) .description(OptionDescription.of(Text.translatable("text.autoconfig.skyblocker.option.locations.crimsonIsle.kuudra.noArrowPoisonWarning.@Tooltip"))) -- cgit