aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorolim <bobq4582@gmail.com>2024-05-09 23:10:38 +0100
committerolim <bobq4582@gmail.com>2024-05-09 23:10:38 +0100
commite81be5283360c6cf118c3b663b3d58df4dba10fd (patch)
tree7c9e643732f83672cdd38a8fbff392e38834a46a /src
parentf34fdf9bc3fd00ab9878682a1e331fb9b4d60397 (diff)
downloadSkyblocker-e81be5283360c6cf118c3b663b3d58df4dba10fd.tar.gz
Skyblocker-e81be5283360c6cf118c3b663b3d58df4dba10fd.tar.bz2
Skyblocker-e81be5283360c6cf118c3b663b3d58df4dba10fd.zip
fix to work with new config
Diffstat (limited to 'src')
-rw-r--r--src/main/java/de/hysky/skyblocker/config/categories/MiningCategory.java50
-rw-r--r--src/main/java/de/hysky/skyblocker/config/configs/MiningConfig.java34
-rw-r--r--src/main/java/de/hysky/skyblocker/skyblock/dwarven/CommissionLabels.java16
-rw-r--r--src/main/java/de/hysky/skyblocker/skyblock/dwarven/MiningLocationLabel.java4
-rw-r--r--src/main/resources/assets/skyblocker/lang/en_us.json16
5 files changed, 110 insertions, 10 deletions
diff --git a/src/main/java/de/hysky/skyblocker/config/categories/MiningCategory.java b/src/main/java/de/hysky/skyblocker/config/categories/MiningCategory.java
index 8809ba44..8dc587fd 100644
--- a/src/main/java/de/hysky/skyblocker/config/categories/MiningCategory.java
+++ b/src/main/java/de/hysky/skyblocker/config/categories/MiningCategory.java
@@ -160,6 +160,56 @@ public class MiningCategory {
.build())
.build())
+
+ //commission waypoints
+ .group(OptionGroup.createBuilder()
+ .name(Text.translatable("skyblocker.config.mining.commissionWaypoints"))
+ .collapsed(false)
+ .option(Option.<MiningConfig.CommissionWaypointMode>createBuilder()
+ .name(Text.translatable("skyblocker.config.mining.commissionWaypoints.mode"))
+ .description(OptionDescription.of(Text.translatable("skyblocker.config.mining.commissionWaypoints.mode.@Tooltip[0]"),
+ Text.translatable("skyblocker.config.mining.commissionWaypoints.mode.@Tooltip[1]"),
+ Text.translatable("skyblocker.config.mining.commissionWaypoints.mode.@Tooltip[2]"),
+ Text.translatable("skyblocker.config.mining.commissionWaypoints.mode.@Tooltip[3]"),
+ Text.translatable("skyblocker.config.mining.commissionWaypoints.mode.@Tooltip[4]")))
+ .binding(defaults.mining.commissionWaypoints.mode,
+ () -> config.mining.commissionWaypoints.mode,
+ newValue -> config.mining.commissionWaypoints.mode = newValue)
+ .controller(ConfigUtils::createEnumCyclingListController)
+ .build())
+ .option(Option.<Boolean>createBuilder()
+ .name(Text.translatable("skyblocker.config.mining.commissionWaypoints.useColor"))
+ .description(OptionDescription.of(Text.translatable("skyblocker.config.mining.commissionWaypoints.useColor.@Tooltip")))
+ .binding(defaults.mining.commissionWaypoints.useColor,
+ () -> config.mining.commissionWaypoints.useColor,
+ newValue -> config.mining.commissionWaypoints.useColor = newValue)
+ .controller(ConfigUtils::createBooleanController)
+ .build())
+ .option(Option.<Float>createBuilder()
+ .name(Text.translatable("skyblocker.config.mining.commissionWaypoints.textScale"))
+ .description(OptionDescription.of(Text.translatable("skyblocker.config.mining.commissionWaypoints.textScale.@Tooltip")))
+ .binding(defaults.mining.commissionWaypoints.textScale,
+ () -> config.mining.commissionWaypoints.textScale,
+ newValue -> config.mining.commissionWaypoints.textScale = newValue)
+ .controller(FloatFieldControllerBuilder::create)
+ .build())
+ .option(Option.<Boolean>createBuilder()
+ .name(Text.translatable("skyblocker.config.mining.commissionWaypoints.showBaseCamp"))
+ .description(OptionDescription.of(Text.translatable("skyblocker.config.mining.commissionWaypoints.showBaseCamp.@Tooltip")))
+ .binding(defaults.mining.commissionWaypoints.showBaseCamp,
+ () -> config.mining.commissionWaypoints.showBaseCamp,
+ newValue -> config.mining.commissionWaypoints.showBaseCamp = newValue)
+ .controller(ConfigUtils::createBooleanController)
+ .build())
+ .option(Option.<Boolean>createBuilder()
+ .name(Text.translatable("skyblocker.config.mining.commissionWaypoints.showEmissary"))
+ .description(OptionDescription.of(Text.translatable("skyblocker.config.mining.commissionWaypoints.showEmissary.@Tooltip")))
+ .binding(defaults.mining.commissionWaypoints.showEmissary,
+ () -> config.mining.commissionWaypoints.showEmissary,
+ newValue -> config.mining.commissionWaypoints.showEmissary = newValue)
+ .controller(ConfigUtils::createBooleanController)
+ .build())
+ .build())
.build();
}
}
diff --git a/src/main/java/de/hysky/skyblocker/config/configs/MiningConfig.java b/src/main/java/de/hysky/skyblocker/config/configs/MiningConfig.java
index fe845e55..65fd63ca 100644
--- a/src/main/java/de/hysky/skyblocker/config/configs/MiningConfig.java
+++ b/src/main/java/de/hysky/skyblocker/config/configs/MiningConfig.java
@@ -21,6 +21,9 @@ public class MiningConfig {
@SerialEntry
public CrystalsWaypoints crystalsWaypoints = new CrystalsWaypoints();
+ @SerialEntry
+ public CommissionWaypoints commissionWaypoints = new CommissionWaypoints();
+
public static class DwarvenMines {
@SerialEntry
public boolean solveFetchur = true;
@@ -85,6 +88,37 @@ public class MiningConfig {
public boolean findInChat = true;
}
+ public static class CommissionWaypoints {
+ @SerialEntry
+ public CommissionWaypointMode mode = CommissionWaypointMode.BOTH;
+
+ @SerialEntry
+ public boolean useColor = true;
+
+ @SerialEntry
+ public float textScale = 1;
+
+ @SerialEntry
+ public boolean showBaseCamp = false;
+
+ @SerialEntry
+ public boolean showEmissary = true;
+ }
+
+ public enum CommissionWaypointMode {
+ OFF, DWARVEN, GLACITE, BOTH;
+
+ @Override
+ public String toString() {
+ return switch (this) {
+ case OFF -> "Off";
+ case DWARVEN -> "Dwarven";
+ case GLACITE -> "Glacite";
+ case BOTH -> "Both";
+ };
+ }
+ }
+
public enum DwarvenHudStyle {
SIMPLE, FANCY, CLASSIC;
diff --git a/src/main/java/de/hysky/skyblocker/skyblock/dwarven/CommissionLabels.java b/src/main/java/de/hysky/skyblocker/skyblock/dwarven/CommissionLabels.java
index 57361ae5..d8b40c43 100644
--- a/src/main/java/de/hysky/skyblocker/skyblock/dwarven/CommissionLabels.java
+++ b/src/main/java/de/hysky/skyblocker/skyblock/dwarven/CommissionLabels.java
@@ -1,7 +1,7 @@
package de.hysky.skyblocker.skyblock.dwarven;
-import de.hysky.skyblocker.config.SkyblockerConfig;
import de.hysky.skyblocker.config.SkyblockerConfigManager;
+import de.hysky.skyblocker.config.configs.MiningConfig;
import de.hysky.skyblocker.utils.Utils;
import net.fabricmc.fabric.api.client.rendering.v1.WorldRenderContext;
import net.fabricmc.fabric.api.client.rendering.v1.WorldRenderEvents;
@@ -30,15 +30,15 @@ public class CommissionLabels {
* @param completed if there is a commission completed
*/
protected static void update(List<String> newCommissions, boolean completed) {
- SkyblockerConfig.CommissionWaypointMode currentMode = SkyblockerConfigManager.get().locations.dwarvenMines.commissionWaypoints.mode;
- if (currentMode == SkyblockerConfig.CommissionWaypointMode.OFF) {
+ MiningConfig.CommissionWaypointMode currentMode = SkyblockerConfigManager.get().mining.commissionWaypoints.mode;
+ if (currentMode == MiningConfig.CommissionWaypointMode.OFF) {
return;
}
activeWaypoints.clear();
String location = Utils.getIslandArea().substring(2);
//find commission locations in glacite
if (location.equals("Dwarven Base Camp") || location.equals("Glacite Tunnels") || location.equals("Glacite Mineshafts") || location.equals("Glacite Lake")) {
- if (currentMode != SkyblockerConfig.CommissionWaypointMode.BOTH && currentMode != SkyblockerConfig.CommissionWaypointMode.GLACITE) {
+ if (currentMode != MiningConfig.CommissionWaypointMode.BOTH && currentMode != MiningConfig.CommissionWaypointMode.GLACITE) {
return;
}
@@ -53,13 +53,13 @@ public class CommissionLabels {
}
}
//add base waypoint if enabled
- if (SkyblockerConfigManager.get().locations.dwarvenMines.commissionWaypoints.showBaseCamp) {
+ if (SkyblockerConfigManager.get().mining.commissionWaypoints.showBaseCamp) {
activeWaypoints.add(new MiningLocationLabel(MiningLocationLabel.glaciteCategory.CAMPFIRE, MiningLocationLabel.glaciteCategory.CAMPFIRE.getLocations()[0]));
}
return;
}
//find commission locations in dwarven mines
- if (currentMode != SkyblockerConfig.CommissionWaypointMode.BOTH && currentMode != SkyblockerConfig.CommissionWaypointMode.DWARVEN) {
+ if (currentMode != MiningConfig.CommissionWaypointMode.BOTH && currentMode != MiningConfig.CommissionWaypointMode.DWARVEN) {
return;
}
@@ -73,7 +73,7 @@ public class CommissionLabels {
}
}
//if there is a commission completed and enabled show emissary
- if (SkyblockerConfigManager.get().locations.dwarvenMines.commissionWaypoints.showEmissary && completed) {
+ if (SkyblockerConfigManager.get().mining.commissionWaypoints.showEmissary && completed) {
for (MiningLocationLabel.dwarvenEmissaries emissaries : DWARVEN_EMISSARYS) {
activeWaypoints.add(new MiningLocationLabel(emissaries, emissaries.getLocation()));
}
@@ -86,7 +86,7 @@ public class CommissionLabels {
* @param context render context
*/
private static void render(WorldRenderContext context) {
- if (!Utils.isInDwarvenMines() || SkyblockerConfigManager.get().locations.dwarvenMines.commissionWaypoints.mode == SkyblockerConfig.CommissionWaypointMode.OFF) {
+ if (!Utils.isInDwarvenMines() || SkyblockerConfigManager.get().mining.commissionWaypoints.mode == MiningConfig.CommissionWaypointMode.OFF) {
return;
}
for (MiningLocationLabel MiningLocationLabel : activeWaypoints) {
diff --git a/src/main/java/de/hysky/skyblocker/skyblock/dwarven/MiningLocationLabel.java b/src/main/java/de/hysky/skyblocker/skyblock/dwarven/MiningLocationLabel.java
index 356e2214..d41318ad 100644
--- a/src/main/java/de/hysky/skyblocker/skyblock/dwarven/MiningLocationLabel.java
+++ b/src/main/java/de/hysky/skyblocker/skyblock/dwarven/MiningLocationLabel.java
@@ -15,7 +15,7 @@ public class MiningLocationLabel {
private final Vec3d centerPos;
MiningLocationLabel(Category category, BlockPos pos) {
- if (SkyblockerConfigManager.get().locations.dwarvenMines.commissionWaypoints.useColor) {
+ if (SkyblockerConfigManager.get().mining.commissionWaypoints.useColor) {
this.name = Text.literal(category.getName()).withColor(category.getColor());
} else {
this.name = Text.literal(category.getName());
@@ -32,7 +32,7 @@ public class MiningLocationLabel {
public void render(WorldRenderContext context) {
Vec3d posUp = centerPos.add(0, 1, 0);
double distance = context.camera().getPos().distanceTo(centerPos);
- float scale = (float) (SkyblockerConfigManager.get().locations.dwarvenMines.commissionWaypoints.textScale * (distance / 10));
+ float scale = (float) (SkyblockerConfigManager.get().mining.commissionWaypoints.textScale * (distance / 10));
RenderHelper.renderText(context, name, posUp, scale, true);
RenderHelper.renderText(context, Text.literal(Math.round(distance) + "m").formatted(Formatting.YELLOW), posUp, scale, MinecraftClient.getInstance().textRenderer.fontHeight + 1, true);
}
diff --git a/src/main/resources/assets/skyblocker/lang/en_us.json b/src/main/resources/assets/skyblocker/lang/en_us.json
index 283175d0..748841ad 100644
--- a/src/main/resources/assets/skyblocker/lang/en_us.json
+++ b/src/main/resources/assets/skyblocker/lang/en_us.json
@@ -397,6 +397,22 @@
"skyblocker.config.mining.crystalsWaypoints.findInChat.@Tooltip": "When in crystal hollows read the chat to see if coordinates are sent and extract these to show as waypoint or on the map",
"skyblocker.config.mining.crystalsWaypoints.shareFail": "Can only share waypoints you have found.",
+ "skyblocker.config.mining.commissionWaypoints": "Commission Waypoints",
+ "skyblocker.config.mining.commissionWaypoints.mode": "Enable Commission Waypoints",
+ "skyblocker.config.mining.commissionWaypoints.mode.@Tooltip[0]": "Off: Do not show Commission waypoint.",
+ "skyblocker.config.mining.commissionWaypoints.mode.@Tooltip[1]": "\nDwarven: Show waypoints only in dwarven mines.",
+ "skyblocker.config.mining.commissionWaypoints.mode.@Tooltip[2]": "\nGlacite: Show waypoints only in glacite tunnles.",
+ "skyblocker.config.mining.commissionWaypoints.mode.@Tooltip[3]": "\nBoth: Show waypoints in dwarven mines and glacite tunnels.",
+ "skyblocker.config.mining.commissionWaypoints.mode.@Tooltip[4]": "\n(takes effect when commissions updated)",
+ "skyblocker.config.mining.commissionWaypoints.useColor": "Colored Waypoints",
+ "skyblocker.config.mining.commissionWaypoints.useColor.@Tooltip": "Color the waypoint text to match the block it's for (takes effect when commissions updated).",
+ "skyblocker.config.mining.commissionWaypoints.textScale": "Text Scale",
+ "skyblocker.config.mining.commissionWaypoints.textScale.@Tooltip": "Scale the size of the commission labels.",
+ "skyblocker.config.mining.commissionWaypoints.showBaseCamp": "Show Basecamp Waypoint",
+ "skyblocker.config.mining.commissionWaypoints.showBaseCamp.@Tooltip": "Show waypoint for basecamp when in glacite tunnels (takes effect when commissions updated).",
+ "skyblocker.config.mining.commissionWaypoints.showEmissary": "Show Emissary",
+ "skyblocker.config.mining.commissionWaypoints.showEmissary.@Tooltip": "When a commission in the dwarven mines is finished show emissary locations (takes effect when commissions updated).",
+
"skyblocker.config.mining.dwarvenHud": "Dwarven HUD",
"skyblocker.config.mining.dwarvenHud.enabledCommissions": "Enable Commissions",
"skyblocker.config.mining.dwarvenHud.enabledPowder": "Enable Powder",