diff options
author | hannibal2 <24389977+hannibal002@users.noreply.github.com> | 2024-09-13 20:23:57 +0200 |
---|---|---|
committer | GitHub <noreply@github.com> | 2024-09-13 20:23:57 +0200 |
commit | 5e01624dcc315a2bf7665fc808b1113fa4c9e0d8 (patch) | |
tree | 6a97c6970fecd2d517eac80c1aa391eee42addd2 /src/main/java/at/hannibal2/skyhanni/config | |
parent | 691d2551cf722b76c1894c814d1f6c2e98fe17d6 (diff) | |
download | skyhanni-5e01624dcc315a2bf7665fc808b1113fa4c9e0d8.tar.gz skyhanni-5e01624dcc315a2bf7665fc808b1113fa4c9e0d8.tar.bz2 skyhanni-5e01624dcc315a2bf7665fc808b1113fa4c9e0d8.zip |
Feature: Graphs Pathfinding (#2468)
Co-authored-by: hannibal2 <24389977+hannibal00212@users.noreply.github.com>
Diffstat (limited to 'src/main/java/at/hannibal2/skyhanni/config')
6 files changed, 91 insertions, 1 deletions
diff --git a/src/main/java/at/hannibal2/skyhanni/config/commands/Commands.kt b/src/main/java/at/hannibal2/skyhanni/config/commands/Commands.kt index 7a17c1462..d0f58f082 100644 --- a/src/main/java/at/hannibal2/skyhanni/config/commands/Commands.kt +++ b/src/main/java/at/hannibal2/skyhanni/config/commands/Commands.kt @@ -33,6 +33,7 @@ import at.hannibal2.skyhanni.features.event.diana.InquisitorWaypointShare import at.hannibal2.skyhanni.features.event.diana.MythologicalCreatureTracker import at.hannibal2.skyhanni.features.event.hoppity.HoppityCollectionStats import at.hannibal2.skyhanni.features.event.hoppity.HoppityEggLocations +import at.hannibal2.skyhanni.features.event.hoppity.HoppityEggLocator import at.hannibal2.skyhanni.features.event.hoppity.HoppityEventSummary import at.hannibal2.skyhanni.features.event.jerry.frozentreasure.FrozenTreasureTracker import at.hannibal2.skyhanni.features.fishing.tracker.FishingProfitTracker @@ -58,8 +59,8 @@ import at.hannibal2.skyhanni.features.garden.visitor.GardenVisitorDropStatistics import at.hannibal2.skyhanni.features.inventory.chocolatefactory.ChocolateFactoryStrayTracker import at.hannibal2.skyhanni.features.mining.KingTalismanHelper import at.hannibal2.skyhanni.features.mining.MineshaftPityDisplay -import at.hannibal2.skyhanni.features.mining.glacitemineshaft.CorpseTracker import at.hannibal2.skyhanni.features.mining.fossilexcavator.ExcavatorProfitTracker +import at.hannibal2.skyhanni.features.mining.glacitemineshaft.CorpseTracker import at.hannibal2.skyhanni.features.mining.powdertracker.PowderTracker import at.hannibal2.skyhanni.features.minion.MinionFeatures import at.hannibal2.skyhanni.features.misc.CollectionTracker @@ -495,6 +496,7 @@ object Commands { private fun developersCodingHelp() { registerCommand("shrepopatterns", "See where regexes are loaded from") { RepoPatternGui.open() } registerCommand("shtest", "Unused test command.") { SkyHanniDebugsAndTests.testCommand(it) } + registerCommand("shtestrabbitpaths", "Tests pathfinding to rabbit eggs. Use a number 0-14.") { HoppityEggLocator.testPathfind(it) } registerCommand( "shtestitem", "test item internal name resolving", diff --git a/src/main/java/at/hannibal2/skyhanni/config/features/dev/GraphConfig.java b/src/main/java/at/hannibal2/skyhanni/config/features/dev/GraphConfig.java index 9a2806f64..9eed8233c 100644 --- a/src/main/java/at/hannibal2/skyhanni/config/features/dev/GraphConfig.java +++ b/src/main/java/at/hannibal2/skyhanni/config/features/dev/GraphConfig.java @@ -103,4 +103,9 @@ public class GraphConfig { @ConfigOption(name = "Shows Stats", desc = "Show funny extra statistics on save. May lag the game a bit.") @ConfigEditorBoolean public boolean showsStats = true; + + @Expose + @ConfigOption(name = "Use as Island Area", desc = "When saving, use the current edited graph as temporary island area for the current island.") + @ConfigEditorBoolean + public boolean useAsIslandArea = false; } diff --git a/src/main/java/at/hannibal2/skyhanni/config/features/event/hoppity/HoppityEggsConfig.java b/src/main/java/at/hannibal2/skyhanni/config/features/event/hoppity/HoppityEggsConfig.java index c270dae8b..b438d83f5 100644 --- a/src/main/java/at/hannibal2/skyhanni/config/features/event/hoppity/HoppityEggsConfig.java +++ b/src/main/java/at/hannibal2/skyhanni/config/features/event/hoppity/HoppityEggsConfig.java @@ -51,6 +51,12 @@ public class HoppityEggsConfig { public boolean showLine = false; @Expose + @ConfigOption(name = "Show Path Finder", desc = "Show a pathfind to the next hoppity egg.") + @ConfigEditorBoolean + @FeatureToggle + public boolean showPathFinder = false; + + @Expose @ConfigOption(name = "Show All Waypoints", desc = "Show all possible egg waypoints for the current lobby. §e" + "Only works when you don't have an Egglocator in your inventory.") @ConfigEditorBoolean diff --git a/src/main/java/at/hannibal2/skyhanni/config/features/misc/AreaNavigationConfig.java b/src/main/java/at/hannibal2/skyhanni/config/features/misc/AreaNavigationConfig.java new file mode 100644 index 000000000..38a399ed4 --- /dev/null +++ b/src/main/java/at/hannibal2/skyhanni/config/features/misc/AreaNavigationConfig.java @@ -0,0 +1,32 @@ +package at.hannibal2.skyhanni.config.features.misc; + +import at.hannibal2.skyhanni.config.FeatureToggle; +import com.google.gson.annotations.Expose; +import io.github.notenoughupdates.moulconfig.annotations.Accordion; +import io.github.notenoughupdates.moulconfig.annotations.ConfigEditorBoolean; +import io.github.notenoughupdates.moulconfig.annotations.ConfigOption; + +public class AreaNavigationConfig { + + @Expose + @ConfigOption(name = "Area Path Finder", desc = "") + @Accordion + public AreaPathfinderConfig pathfinder = new AreaPathfinderConfig(); + + @Expose + @ConfigOption(name = "In World", desc = "Shows the area names in world") + @ConfigEditorBoolean + @FeatureToggle + public boolean inWorld = false; + + @Expose + @ConfigOption(name = "Small Areas", desc = "Include small areas.") + @ConfigEditorBoolean + public boolean includeSmallAreas = false; + + @Expose + @ConfigOption(name = "Title on Enter", desc = "Sends a titles on screen when entering an area.") + @ConfigEditorBoolean + @FeatureToggle + public boolean enterTitle = false; +} diff --git a/src/main/java/at/hannibal2/skyhanni/config/features/misc/AreaPathfinderConfig.java b/src/main/java/at/hannibal2/skyhanni/config/features/misc/AreaPathfinderConfig.java new file mode 100644 index 000000000..af9b1de64 --- /dev/null +++ b/src/main/java/at/hannibal2/skyhanni/config/features/misc/AreaPathfinderConfig.java @@ -0,0 +1,41 @@ +package at.hannibal2.skyhanni.config.features.misc; + +import at.hannibal2.skyhanni.config.FeatureToggle; +import at.hannibal2.skyhanni.config.core.config.Position; +import com.google.gson.annotations.Expose; +import io.github.notenoughupdates.moulconfig.annotations.ConfigEditorBoolean; +import io.github.notenoughupdates.moulconfig.annotations.ConfigEditorColour; +import io.github.notenoughupdates.moulconfig.annotations.ConfigLink; +import io.github.notenoughupdates.moulconfig.annotations.ConfigOption; +import io.github.notenoughupdates.moulconfig.observer.Property; + +public class AreaPathfinderConfig { + + @Expose + @ConfigOption(name = "Enabled", desc = "While in your invenotry, show all areas of the island. Click on an area to display the path to this area.") + @ConfigEditorBoolean + @FeatureToggle + public boolean enabled = false; + + @Expose + @ConfigOption(name = "Show Always", desc = "Show the list always, not only while inside the inventory.") + @ConfigEditorBoolean + public boolean showAlways = false; + + @Expose + @ConfigOption(name = "Current Area", desc = "Show the name of the current area at the top of the list") + @ConfigEditorBoolean + public Property<Boolean> includeCurrentArea = Property.of(false); + + @Expose + @ConfigOption( + name = "Path Color", + desc = "Change the color of the path." + ) + @ConfigEditorColour + public Property<String> color = Property.of("0:245:85:255:85"); + + @Expose + @ConfigLink(owner = AreaPathfinderConfig.class, field = "enabled") + public Position position = new Position(20, 20); +} diff --git a/src/main/java/at/hannibal2/skyhanni/config/features/misc/MiscConfig.java b/src/main/java/at/hannibal2/skyhanni/config/features/misc/MiscConfig.java index f3b9ab16e..03b0bf779 100644 --- a/src/main/java/at/hannibal2/skyhanni/config/features/misc/MiscConfig.java +++ b/src/main/java/at/hannibal2/skyhanni/config/features/misc/MiscConfig.java @@ -42,6 +42,10 @@ public class MiscConfig { @Category(name = "Stranded", desc = "Features for the Stranded game mode.") public StrandedConfig stranded = new StrandedConfig(); + @Expose + @Category(name = "Area Navigation", desc = "Helps navigate to different areas on the current island.") + public AreaNavigationConfig areaNavigation = new AreaNavigationConfig(); + @ConfigOption(name = "Hide Armor", desc = "") @Accordion @Expose |