diff options
Diffstat (limited to 'src')
3 files changed, 58 insertions, 0 deletions
diff --git a/src/main/java/me/xmrvizzy/skyblocker/config/SkyblockerConfig.java b/src/main/java/me/xmrvizzy/skyblocker/config/SkyblockerConfig.java index 93e1d8e9..e3b4339a 100644 --- a/src/main/java/me/xmrvizzy/skyblocker/config/SkyblockerConfig.java +++ b/src/main/java/me/xmrvizzy/skyblocker/config/SkyblockerConfig.java @@ -58,7 +58,46 @@ public class SkyblockerConfig implements ConfigData { public static class Bars { public boolean enableBars = true; + + @ConfigEntry.Category("barpositions") + @ConfigEntry.Gui.CollapsibleObject(startExpanded = false) + public BarPositions barpositions = new BarPositions(); + } + + public static class BarPositions { + @ConfigEntry.Gui.EnumHandler(option = ConfigEntry.Gui.EnumHandler.EnumDisplayOption.BUTTON) + public BarPosition healthBarPosition = BarPosition.LAYER1; + @ConfigEntry.Gui.EnumHandler(option = ConfigEntry.Gui.EnumHandler.EnumDisplayOption.BUTTON) + public BarPosition manaBarPosition = BarPosition.LAYER1; + @ConfigEntry.Gui.EnumHandler(option = ConfigEntry.Gui.EnumHandler.EnumDisplayOption.BUTTON) + public BarPosition defenceBarPosition = BarPosition.LAYER1; + @ConfigEntry.Gui.EnumHandler(option = ConfigEntry.Gui.EnumHandler.EnumDisplayOption.BUTTON) + public BarPosition experienceBarPosition = BarPosition.LAYER1; + + } + + public enum BarPosition { + LAYER1, + LAYER2, + RIGHT; + + public String toString() { + return switch (this) { + case LAYER1 -> "Layer 1"; + case LAYER2 -> "Layer 2"; + case RIGHT -> "Right"; + }; + } + + public int toInt() { + return switch (this) { + case LAYER1 -> 0; + case LAYER2 -> 1; + case RIGHT -> 2; + }; + } } + public static class RichPresence { public boolean enableRichPresence = false; @ConfigEntry.Gui.EnumHandler(option = ConfigEntry.Gui.EnumHandler.EnumDisplayOption.BUTTON) diff --git a/src/main/java/me/xmrvizzy/skyblocker/skyblock/FancyStatusBars.java b/src/main/java/me/xmrvizzy/skyblocker/skyblock/FancyStatusBars.java index 48ef3251..e2a9a684 100644 --- a/src/main/java/me/xmrvizzy/skyblocker/skyblock/FancyStatusBars.java +++ b/src/main/java/me/xmrvizzy/skyblocker/skyblock/FancyStatusBars.java @@ -57,6 +57,20 @@ public class FancyStatusBars extends DrawableHelper { bars[3].fill[0] = (int) (32 * player.experienceProgress); bars[3].text = player.experienceLevel; + // Update positions of bars from config + for (int i = 0; i < 4; i++) { + int configAnchorNum = switch (i) { + case 0 -> SkyblockerConfig.get().general.bars.barpositions.healthBarPosition.toInt(); + case 1 -> SkyblockerConfig.get().general.bars.barpositions.manaBarPosition.toInt(); + case 2 -> SkyblockerConfig.get().general.bars.barpositions.defenceBarPosition.toInt(); + case 3 -> SkyblockerConfig.get().general.bars.barpositions.experienceBarPosition.toInt(); + default -> 0; + }; + + if (bars[i].anchorNum != configAnchorNum) + moveBar(i, configAnchorNum); + } + RenderSystem.setShaderTexture(0, BARS); for (var bar : bars) bar.draw(matrices); diff --git a/src/main/resources/assets/skyblocker/lang/en_us.json b/src/main/resources/assets/skyblocker/lang/en_us.json index 0b148a91..c758a715 100644 --- a/src/main/resources/assets/skyblocker/lang/en_us.json +++ b/src/main/resources/assets/skyblocker/lang/en_us.json @@ -8,6 +8,11 @@ "text.autoconfig.skyblocker.category.general": "General", "text.autoconfig.skyblocker.option.general.bars": "Health, Mana, Defence & XP Bars", "text.autoconfig.skyblocker.option.general.bars.enableBars": "Enable Bars", + "text.autoconfig.skyblocker.option.general.bars.barpositions": "Configure Bar Positions", + "text.autoconfig.skyblocker.option.general.bars.barpositions.healthBarPosition": "Health Bar Position", + "text.autoconfig.skyblocker.option.general.bars.barpositions.manaBarPosition": "Mana Bar Position", + "text.autoconfig.skyblocker.option.general.bars.barpositions.defenceBarPosition": "Defence Bar Position", + "text.autoconfig.skyblocker.option.general.bars.barpositions.experienceBarPosition": "Experience Bar Position", "text.autoconfig.skyblocker.option.general.quicknav": "Quicknav", "text.autoconfig.skyblocker.option.general.quicknav.enableQuicknav": "Enable Quicknav", "text.autoconfig.skyblocker.option.general.backpackPreviewWithoutShift": "View backpack preview without holding Shift", |