aboutsummaryrefslogtreecommitdiff
path: root/src/main/java
diff options
context:
space:
mode:
authorAaron <51387595+AzureAaron@users.noreply.github.com>2023-10-22 04:01:26 -0400
committerAaron <51387595+AzureAaron@users.noreply.github.com>2023-10-22 04:01:26 -0400
commit9cc09de788ce6f1003a92d1bdedabe8f0fd20c4e (patch)
tree3c60f815f3d42aaaa79d04f4070880effce8ff35 /src/main/java
parent2fd4ca4e9042329a9af4e7cce76c72a3225d656d (diff)
downloadSkyblocker-9cc09de788ce6f1003a92d1bdedabe8f0fd20c4e.tar.gz
Skyblocker-9cc09de788ce6f1003a92d1bdedabe8f0fd20c4e.tar.bz2
Skyblocker-9cc09de788ce6f1003a92d1bdedabe8f0fd20c4e.zip
Add AOTV & Pearl Secret Waypoints
Diffstat (limited to 'src/main/java')
-rw-r--r--src/main/java/de/hysky/skyblocker/config/SkyblockerConfig.java6
-rw-r--r--src/main/java/de/hysky/skyblocker/config/categories/DungeonsCategory.java15
-rw-r--r--src/main/java/de/hysky/skyblocker/skyblock/dungeon/secrets/DungeonSecrets.java2
-rw-r--r--src/main/java/de/hysky/skyblocker/skyblock/dungeon/secrets/Room.java13
-rw-r--r--src/main/java/de/hysky/skyblocker/skyblock/dungeon/secrets/SecretWaypoint.java4
5 files changed, 36 insertions, 4 deletions
diff --git a/src/main/java/de/hysky/skyblocker/config/SkyblockerConfig.java b/src/main/java/de/hysky/skyblocker/config/SkyblockerConfig.java
index d7279bc8..3f39c933 100644
--- a/src/main/java/de/hysky/skyblocker/config/SkyblockerConfig.java
+++ b/src/main/java/de/hysky/skyblocker/config/SkyblockerConfig.java
@@ -605,6 +605,12 @@ public class SkyblockerConfig {
@SerialEntry
public boolean enableStonkWaypoints = true;
+
+ @SerialEntry
+ public boolean enableAotvWaypoints = true;
+
+ @SerialEntry
+ public boolean enablePearlWaypoints = true;
@SerialEntry
public boolean enableDefaultWaypoints = true;
diff --git a/src/main/java/de/hysky/skyblocker/config/categories/DungeonsCategory.java b/src/main/java/de/hysky/skyblocker/config/categories/DungeonsCategory.java
index 7b32cb78..0101eccf 100644
--- a/src/main/java/de/hysky/skyblocker/config/categories/DungeonsCategory.java
+++ b/src/main/java/de/hysky/skyblocker/config/categories/DungeonsCategory.java
@@ -123,6 +123,21 @@ public class DungeonsCategory {
.controller(ConfigUtils::createBooleanController)
.build())
.option(Option.<Boolean>createBuilder()
+ .name(Text.translatable("text.autoconfig.skyblocker.option.locations.dungeons.secretWaypoints.enableAotvWaypoints"))
+ .binding(defaults.locations.dungeons.secretWaypoints.enableAotvWaypoints,
+ () -> config.locations.dungeons.secretWaypoints.enableAotvWaypoints,
+ newValue -> config.locations.dungeons.secretWaypoints.enableAotvWaypoints = newValue)
+ .controller(ConfigUtils::createBooleanController)
+ .build())
+ .option(Option.<Boolean>createBuilder()
+ .name(Text.translatable("text.autoconfig.skyblocker.option.locations.dungeons.secretWaypoints.enablePearlWaypoints"))
+ .description(OptionDescription.of(Text.translatable("text.autoconfig.skyblocker.option.locations.dungeons.secretWaypoints.enablePearlWaypoints.@Tooltip")))
+ .binding(defaults.locations.dungeons.secretWaypoints.enablePearlWaypoints,
+ () -> config.locations.dungeons.secretWaypoints.enablePearlWaypoints,
+ newValue -> config.locations.dungeons.secretWaypoints.enablePearlWaypoints = newValue)
+ .controller(ConfigUtils::createBooleanController)
+ .build())
+ .option(Option.<Boolean>createBuilder()
.name(Text.translatable("text.autoconfig.skyblocker.option.locations.dungeons.secretWaypoints.enableDefaultWaypoints"))
.description(OptionDescription.of(Text.translatable("text.autoconfig.skyblocker.option.locations.dungeons.secretWaypoints.enableDefaultWaypoints.@Tooltip")))
.binding(defaults.locations.dungeons.secretWaypoints.enableDefaultWaypoints,
diff --git a/src/main/java/de/hysky/skyblocker/skyblock/dungeon/secrets/DungeonSecrets.java b/src/main/java/de/hysky/skyblocker/skyblock/dungeon/secrets/DungeonSecrets.java
index d143a3c2..d01305f9 100644
--- a/src/main/java/de/hysky/skyblocker/skyblock/dungeon/secrets/DungeonSecrets.java
+++ b/src/main/java/de/hysky/skyblocker/skyblock/dungeon/secrets/DungeonSecrets.java
@@ -249,7 +249,7 @@ public class DungeonSecrets {
BlockPos relativePos = DungeonMapUtils.actualToRelative(currentRoom.getDirection(), physicalCornerPos, blockToCheck);
- source.sendFeedback(Constants.PREFIX.get().append(Text.translatable("skyblocker.dungeons.secrets.posMessage", relativePos.getX(), relativePos.getY(), relativePos.getZ())));
+ source.sendFeedback(Constants.PREFIX.get().append(Text.translatable("skyblocker.dungeons.secrets.posMessage", currentRoom.getName(), relativePos.getX(), relativePos.getY(), relativePos.getZ())));
} else {
source.sendError(Constants.PREFIX.get().append(Text.translatable("skyblocker.dungeons.secrets.unableToFindPos")));
}
diff --git a/src/main/java/de/hysky/skyblocker/skyblock/dungeon/secrets/Room.java b/src/main/java/de/hysky/skyblocker/skyblock/dungeon/secrets/Room.java
index 6e7ee953..79b13d3b 100644
--- a/src/main/java/de/hysky/skyblocker/skyblock/dungeon/secrets/Room.java
+++ b/src/main/java/de/hysky/skyblocker/skyblock/dungeon/secrets/Room.java
@@ -74,6 +74,7 @@ public class Room {
private TriState matched = TriState.DEFAULT;
private Table<Integer, BlockPos, SecretWaypoint> secretWaypoints;
private Direction direction = null;
+ private String name = null;
public Room(@NotNull Type type, @NotNull Vector2ic... physicalPositions) {
this.type = type;
@@ -90,6 +91,11 @@ public class Room {
return type;
}
+ @NotNull
+ public Set<Vector2ic> getSegments() {
+ return segments;
+ }
+
public boolean isMatched() {
return matched == TriState.TRUE;
}
@@ -99,9 +105,9 @@ public class Room {
return direction;
}
- @NotNull
- public Set<Vector2ic> getSegments() {
- return segments;
+ @Nullable
+ public String getName() {
+ return name;
}
@Override
@@ -310,6 +316,7 @@ public class Room {
secretWaypoints = ImmutableTable.copyOf(secretWaypointsMutable);
matched = TriState.TRUE;
this.direction = direction;
+ this.name = name;
DungeonSecrets.LOGGER.info("[Skyblocker] Room {} matched after checking {} block(s)", name, checkedBlocks.size());
}
diff --git a/src/main/java/de/hysky/skyblocker/skyblock/dungeon/secrets/SecretWaypoint.java b/src/main/java/de/hysky/skyblocker/skyblock/dungeon/secrets/SecretWaypoint.java
index 0d9bdff1..a520c73f 100644
--- a/src/main/java/de/hysky/skyblocker/skyblock/dungeon/secrets/SecretWaypoint.java
+++ b/src/main/java/de/hysky/skyblocker/skyblock/dungeon/secrets/SecretWaypoint.java
@@ -112,6 +112,8 @@ public class SecretWaypoint {
LEVER(secretWaypoints -> secretWaypoints.enableLeverWaypoints, 250, 217, 2),
FAIRYSOUL(secretWaypoints -> secretWaypoints.enableFairySoulWaypoints, 255, 85, 255),
STONK(secretWaypoints -> secretWaypoints.enableStonkWaypoints, 146, 52, 235),
+ AOTV(secretWaypoints -> secretWaypoints.enableAotvWaypoints, 252, 98, 3),
+ PEARL(secretWaypoints -> secretWaypoints.enablePearlWaypoints, 57, 117, 125),
DEFAULT(secretWaypoints -> secretWaypoints.enableDefaultWaypoints, 190, 255, 252);
private final Predicate<SkyblockerConfig.SecretWaypoints> enabledPredicate;
private final float[] colorComponents;
@@ -135,6 +137,8 @@ public class SecretWaypoint {
case "lever" -> Category.LEVER;
case "fairysoul" -> Category.FAIRYSOUL;
case "stonk" -> Category.STONK;
+ case "aotv" -> Category.AOTV;
+ case "pearl" -> Category.PEARL;
default -> Category.DEFAULT;
};
}