diff options
Diffstat (limited to 'src/main/java/de/hysky/skyblocker/config')
5 files changed, 152 insertions, 0 deletions
diff --git a/src/main/java/de/hysky/skyblocker/config/SkyblockerConfig.java b/src/main/java/de/hysky/skyblocker/config/SkyblockerConfig.java index fd272c71..6411d6e4 100644 --- a/src/main/java/de/hysky/skyblocker/config/SkyblockerConfig.java +++ b/src/main/java/de/hysky/skyblocker/config/SkyblockerConfig.java @@ -611,6 +611,9 @@ public class SkyblockerConfig { public Barn barn = new Barn(); @SerialEntry + public CrimsonIsle crimsonIsle = new CrimsonIsle(); + + @SerialEntry public Dungeons dungeons = new Dungeons(); @SerialEntry @@ -621,6 +624,9 @@ public class SkyblockerConfig { @SerialEntry public SpidersDen spidersDen = new SpidersDen(); + + @SerialEntry + public Garden garden = new Garden(); } public static class Dungeons { @@ -959,6 +965,37 @@ 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 fuelWaypoints = true; + + @SerialEntry + public Waypoint.Type suppliesAndFuelWaypointType = Waypoint.Type.WAYPOINT; + + @SerialEntry + public boolean ballistaBuildWaypoints = true; + + @SerialEntry + public boolean safeSpotWaypoints = true; + + @SerialEntry + public boolean pearlWaypoints = true; + + @SerialEntry + public boolean noArrowPoisonWarning = true; + + @SerialEntry + public int arrowPoisonThreshold = 16; + } + public static class Rift { @SerialEntry public boolean mirrorverseWaypoints = true; @@ -989,6 +1026,11 @@ public class SkyblockerConfig { public boolean highlightFoundRelics = true; } + public static class Garden { + @SerialEntry + public boolean dicerTitlePrevent = true; + } + public static class Slayer { @SerialEntry public EndermanSlayer endermanSlayer = new EndermanSlayer(); @@ -1085,6 +1127,9 @@ public class SkyblockerConfig { @SerialEntry public boolean hideMana = false; + + @SerialEntry + public ChatFilterResult hideDicer = ChatFilterResult.PASS; } public enum Info { 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..3c2dc3b6 --- /dev/null +++ b/src/main/java/de/hysky/skyblocker/config/categories/CrimsonIsleCategory.java @@ -0,0 +1,85 @@ +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 dev.isxander.yacl3.api.controller.IntegerFieldControllerBuilder; +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.<Boolean>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.<Boolean>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.<Waypoint.Type>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.<Boolean>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.<Boolean>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.<Boolean>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.<Boolean>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.<Integer>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(); + } +} diff --git a/src/main/java/de/hysky/skyblocker/config/categories/LocationsCategory.java b/src/main/java/de/hysky/skyblocker/config/categories/LocationsCategory.java index 0b388d16..9bdcf2e9 100644 --- a/src/main/java/de/hysky/skyblocker/config/categories/LocationsCategory.java +++ b/src/main/java/de/hysky/skyblocker/config/categories/LocationsCategory.java @@ -98,6 +98,19 @@ public class LocationsCategory { .controller(ConfigUtils::createBooleanController) .build()) .build()) + + //Garden + .group(OptionGroup.createBuilder() + .name(Text.translatable("text.autoconfig.skyblocker.option.locations.garden")) + .collapsed(false) + .option(Option.<Boolean>createBuilder() + .name(Text.translatable("text.autoconfig.skyblocker.option.locations.garden.dicerTitlePrevent")) + .binding(defaults.locations.garden.dicerTitlePrevent, + () -> config.locations.garden.dicerTitlePrevent, + newValue -> config.locations.garden.dicerTitlePrevent = newValue) + .controller(ConfigUtils::createBooleanController) + .build()) + .build()) .build(); } } diff --git a/src/main/java/de/hysky/skyblocker/config/categories/MessageFilterCategory.java b/src/main/java/de/hysky/skyblocker/config/categories/MessageFilterCategory.java index ce349049..acdc8169 100644 --- a/src/main/java/de/hysky/skyblocker/config/categories/MessageFilterCategory.java +++ b/src/main/java/de/hysky/skyblocker/config/categories/MessageFilterCategory.java @@ -118,6 +118,14 @@ public class MessageFilterCategory { newValue -> config.messages.hideDeath = newValue) .controller(ConfigUtils::createEnumCyclingListController) .build()) + .option(Option.<ChatFilterResult>createBuilder() + .name(Text.translatable("text.autoconfig.skyblocker.option.messages.hideDicer")) + .description(OptionDescription.of(Text.translatable("text.autoconfig.skyblocker.option.messages.hideDicer.@Tooltip"))) + .binding(defaults.messages.hideDicer, + () -> config.messages.hideDicer, + newValue -> config.messages.hideDicer = newValue) + .controller(ConfigUtils::createEnumCyclingListController) + .build()) .build(); } } |