aboutsummaryrefslogtreecommitdiff
path: root/src/main/java/de/hysky/skyblocker/utils/Location.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/java/de/hysky/skyblocker/utils/Location.java')
-rw-r--r--src/main/java/de/hysky/skyblocker/utils/Location.java116
1 files changed, 116 insertions, 0 deletions
diff --git a/src/main/java/de/hysky/skyblocker/utils/Location.java b/src/main/java/de/hysky/skyblocker/utils/Location.java
new file mode 100644
index 00000000..bd2773fd
--- /dev/null
+++ b/src/main/java/de/hysky/skyblocker/utils/Location.java
@@ -0,0 +1,116 @@
+package de.hysky.skyblocker.utils;
+
+import java.util.Arrays;
+
+/**
+ * All Skyblock locations
+ */
+public enum Location {
+ /**
+ * mode: dynamic
+ */
+ PRIVATE_ISLAND("dynamic"),
+ /**
+ * mode: garden
+ */
+ GARDEN("garden"),
+ /**
+ * mode: hub
+ */
+ HUB("hub"),
+ /**
+ * mode: farming_1
+ */
+ THE_FARMING_ISLAND("farming_1"),
+ /**
+ * mode: foraging_1
+ */
+ THE_PARK("foraging_1"),
+ /**
+ * mode: combat_1
+ */
+ SPIDERS_DEN("combat_1"),
+ /**
+ * mode: combat_2
+ */
+ BLAZING_FORTRESS("combat_2"),
+ /**
+ * mode: combat_3
+ */
+ THE_END("combat_3"),
+ /**
+ * mode: crimson_isle
+ */
+ CRIMSON_ISLE("crimson_isle"),
+ /**
+ * mode: mining_1
+ */
+ GOLD_MINE("mining_1"),
+ /**
+ * mode: mining_2
+ */
+ DEEP_CAVERNS("mining_2"),
+ /**
+ * mode: mining_3
+ */
+ DWARVEN_MINES("mining_3"),
+ /**
+ * mode: dungeon_hub
+ */
+ DUNGEON_HUB("dungeon_hub"),
+ /**
+ * mode: winter
+ */
+ WINTER_ISLAND("winter"),
+ /**
+ * mode: rift
+ */
+ THE_RIFT("rift"),
+ /**
+ * mode: dark_auction
+ */
+ DARK_AUCTION("dark_auction"),
+ /**
+ * mode: crystal_hollows
+ */
+ CRYSTAL_HOLLOWS("crystal_hollows"),
+ /**
+ * mode: dungeon
+ */
+ DUNGEON("dungeon"),
+ /**
+ * mode: kuudra
+ */
+ KUUDRAS_HOLLOW("kuudra"),
+ /**
+ * Unknown Skyblock location
+ */
+ UNKNOWN("unknown");
+
+ /**
+ * location id from <a href="https://api.hypixel.net/v2/resources/games">Hypixel API</a>
+ */
+ private final String id;
+
+ /**
+ * @param id location id from <a href="https://api.hypixel.net/v2/resources/games">Hypixel API</a>
+ */
+ Location(String id) {
+ this.id = id;
+ }
+
+ /**
+ * @return location id
+ */
+ public String id() {
+ return this.id;
+ }
+
+ /**
+ * @param id location id from <a href="https://api.hypixel.net/v2/resources/games">Hypixel API</a>
+ * @return location object
+ */
+ public static Location from(String id) {
+ return Arrays.stream(Location.values()).filter(loc -> id.equals(loc.id())).findFirst().orElse(UNKNOWN);
+ }
+}