aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-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
-rw-r--r--src/main/resources/assets/skyblocker/dungeons/secretlocations.json65
-rw-r--r--src/main/resources/assets/skyblocker/lang/en_us.json5
7 files changed, 104 insertions, 6 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;
};
}
diff --git a/src/main/resources/assets/skyblocker/dungeons/secretlocations.json b/src/main/resources/assets/skyblocker/dungeons/secretlocations.json
index d5e38345..5972659f 100644
--- a/src/main/resources/assets/skyblocker/dungeons/secretlocations.json
+++ b/src/main/resources/assets/skyblocker/dungeons/secretlocations.json
@@ -835,6 +835,13 @@
"z":21
},
{
+ "secretName":"2 - AOTV",
+ "category":"aotv",
+ "x":25,
+ "y":76,
+ "z":22
+ },
+ {
"secretName":"2 - Stonk",
"category":"stonk",
"x":23,
@@ -2947,7 +2954,7 @@
"category":"stonk",
"x":17,
"y":70,
- "z":15
+ "z":14
},
{
"secretName":"6 - Pressure Plate 2",
@@ -3059,6 +3066,13 @@
"z":5
},
{
+ "secretName":"2 - AOTV",
+ "category":"aotv",
+ "x":77,
+ "y":82,
+ "z":16
+ },
+ {
"secretName":"2 - Wither Essence",
"category":"wither",
"x":79,
@@ -3110,6 +3124,13 @@
"z":9
},
{
+ "secretName":"3 - AOTV",
+ "category":"aotv",
+ "x":7,
+ "y":80,
+ "z":15
+ },
+ {
"secretName":"3 - Superboom",
"category":"superboom",
"x":6,
@@ -3226,6 +3247,13 @@
"z":24
},
{
+ "secretName":"1/2 - AOTV",
+ "category":"aotv",
+ "x":84,
+ "y":91,
+ "z":26
+ },
+ {
"secretName":"1 - Bat",
"category":"bat",
"x":81,
@@ -4072,6 +4100,13 @@
"z":30
},
{
+ "secretName":"5 - AOTV",
+ "category":"aotv",
+ "x":52,
+ "y":78,
+ "z":9
+ },
+ {
"secretName":"5 - Crypt",
"category":"superboom",
"x":52,
@@ -5081,6 +5116,13 @@
"z":61
},
{
+ "secretName": "7 - AOTV",
+ "category":"aotv",
+ "x":39,
+ "y":84,
+ "z":58
+ },
+ {
"secretName":"7 - Chest",
"category":"chest",
"x":41,
@@ -5332,6 +5374,13 @@
"z":43
},
{
+ "secretName":"3/4 - AOTV",
+ "category":"aotv",
+ "x":49,
+ "y":83,
+ "z":36
+ },
+ {
"secretName":"3 - Chest",
"category":"chest",
"x":49,
@@ -5553,6 +5602,13 @@
"z":15
},
{
+ "secretName":"5 - Pearl",
+ "category":"pearl",
+ "x":8,
+ "y":59,
+ "z":14
+ },
+ {
"secretName":"5 - Entrance",
"category":"entrance",
"x":25,
@@ -5835,6 +5891,13 @@
}
],
"Double-Stair-3":[
+ {
+ "secretName":"1 - Pearl",
+ "category":"pearl",
+ "x":24,
+ "y":72,
+ "z":11
+ },
{
"secretName":"1 - Wither Essence",
"category":"wither",
diff --git a/src/main/resources/assets/skyblocker/lang/en_us.json b/src/main/resources/assets/skyblocker/lang/en_us.json
index b42ab1e3..a6bf6b49 100644
--- a/src/main/resources/assets/skyblocker/lang/en_us.json
+++ b/src/main/resources/assets/skyblocker/lang/en_us.json
@@ -164,6 +164,9 @@
"text.autoconfig.skyblocker.option.locations.dungeons.secretWaypoints.enableLeverWaypoints" : "Enable Lever Waypoints",
"text.autoconfig.skyblocker.option.locations.dungeons.secretWaypoints.enableFairySoulWaypoints" : "Enable Fairy Soul Waypoints",
"text.autoconfig.skyblocker.option.locations.dungeons.secretWaypoints.enableStonkWaypoints" : "Enable Stonk Waypoints",
+ "text.autoconfig.skyblocker.option.locations.dungeons.secretWaypoints.enableAotvWaypoints" : "Enable AOTV Waypoints",
+ "text.autoconfig.skyblocker.option.locations.dungeons.secretWaypoints.enablePearlWaypoints": "Enable Pearl Waypoints",
+ "text.autoconfig.skyblocker.option.locations.dungeons.secretWaypoints.enablePearlWaypoints.@Tooltip": "With these waypoints, you throw a pearl towards the block and at the same time AOTV up.",
"text.autoconfig.skyblocker.option.locations.dungeons.secretWaypoints.enableDefaultWaypoints" : "Enable Default Waypoints",
"text.autoconfig.skyblocker.option.locations.dungeons.secretWaypoints.enableDefaultWaypoints.@Tooltip" : "This includes all waypoints that do not belong to a category.",
"text.autoconfig.skyblocker.option.locations.dungeons.dungeonChestProfit": "Dungeon Chest Profit Calculator",
@@ -272,7 +275,7 @@
"skyblocker.dungeons.secrets.markSecretMissing": "§rMarked secret #%d as missing.",
"skyblocker.dungeons.secrets.markSecretFoundUnable": "§cUnable to mark secret #%d as found.",
"skyblocker.dungeons.secrets.markSecretMissingUnable": "§cUnable to mark secret #%d as missing.",
- "skyblocker.dungeons.secrets.posMessage": "§rRoom Pos: X: %d, Y: %d, Z: %d",
+ "skyblocker.dungeons.secrets.posMessage": "§rRoom: %s, X: %d, Y: %d, Z: %d",
"skyblocker.dungeons.secrets.unableToFindPos": "§cUnable to find room position! (Are you in a dungeon room, are you facing a block?)",
"skyblocker.fishing.reelNow": "Reel in now!",