diff options
author | Aaron <51387595+AzureAaron@users.noreply.github.com> | 2023-07-09 15:40:17 -0400 |
---|---|---|
committer | GitHub <noreply@github.com> | 2023-07-09 15:40:17 -0400 |
commit | 14c6b256a228ed5b208c81c440824ba8a83cecdf (patch) | |
tree | 1e66bca70461346bee20284f53099d6af3e3a723 /src/main/java/me/xmrvizzy/skyblocker/config | |
parent | 2abd16260b6b3296d32853baa7d062a518ec2b1c (diff) | |
parent | 00983f7c455b65274e14dfc1611de7281f70a082 (diff) | |
download | Skyblocker-14c6b256a228ed5b208c81c440824ba8a83cecdf.tar.gz Skyblocker-14c6b256a228ed5b208c81c440824ba8a83cecdf.tar.bz2 Skyblocker-14c6b256a228ed5b208c81c440824ba8a83cecdf.zip |
Merge branch 'SkyblockerMod:master' into loom-1.3
Diffstat (limited to 'src/main/java/me/xmrvizzy/skyblocker/config')
-rw-r--r-- | src/main/java/me/xmrvizzy/skyblocker/config/SkyblockerConfig.java | 58 |
1 files changed, 51 insertions, 7 deletions
diff --git a/src/main/java/me/xmrvizzy/skyblocker/config/SkyblockerConfig.java b/src/main/java/me/xmrvizzy/skyblocker/config/SkyblockerConfig.java index 26e59b40..7da9979a 100644 --- a/src/main/java/me/xmrvizzy/skyblocker/config/SkyblockerConfig.java +++ b/src/main/java/me/xmrvizzy/skyblocker/config/SkyblockerConfig.java @@ -1,5 +1,6 @@ package me.xmrvizzy.skyblocker.config; +import com.mojang.brigadier.Command; import com.mojang.brigadier.builder.LiteralArgumentBuilder; import me.shedaniel.autoconfig.AutoConfig; import me.shedaniel.autoconfig.ConfigData; @@ -10,8 +11,6 @@ import me.xmrvizzy.skyblocker.SkyblockerMod; import me.xmrvizzy.skyblocker.chat.ChatFilterResult; import net.fabricmc.fabric.api.client.command.v2.ClientCommandRegistrationCallback; import net.fabricmc.fabric.api.client.command.v2.FabricClientCommandSource; -import net.minecraft.client.MinecraftClient; -import net.minecraft.client.gui.screen.Screen; import net.minecraft.client.resource.language.I18n; import java.util.ArrayList; @@ -175,6 +174,11 @@ public class SkyblockerConfig implements ConfigData { @ConfigEntry.Gui.CollapsibleObject() public Hitbox hitbox = new Hitbox(); + @ConfigEntry.Gui.Tooltip() + @ConfigEntry.Category("titleContainer") + @ConfigEntry.Gui.CollapsibleObject() + public TitleContainer titleContainer = new TitleContainer(); + @ConfigEntry.Gui.Excluded public List<Integer> lockedSlots = new ArrayList<>(); } @@ -247,6 +251,45 @@ public class SkyblockerConfig implements ConfigData { public boolean oldLeverHitbox = false; } + public static class TitleContainer { + @ConfigEntry.BoundedDiscrete(min = 30, max = 140) + public float titleContainerScale = 100; + public int x = 540; + public int y = 10; + @ConfigEntry.Gui.EnumHandler(option = ConfigEntry.Gui.EnumHandler.EnumDisplayOption.BUTTON) + public Direction direction = Direction.HORIZONTAL; + @ConfigEntry.Gui.EnumHandler(option = ConfigEntry.Gui.EnumHandler.EnumDisplayOption.DROPDOWN) + public Alignment alignment = Alignment.MIDDLE; + } + + public enum Direction { + HORIZONTAL, + VERTICAL; + + @Override + public String toString() { + return switch (this) { + case HORIZONTAL -> "Horizontal"; + case VERTICAL -> "Vertical"; + }; + } + } + + public enum Alignment { + LEFT, + RIGHT, + MIDDLE; + + @Override + public String toString() { + return switch (this) { + case LEFT -> "Left"; + case RIGHT -> "Right"; + case MIDDLE -> "Middle"; + }; + } + } + public static class RichPresence { public boolean enableRichPresence = false; @ConfigEntry.Gui.EnumHandler(option = ConfigEntry.Gui.EnumHandler.EnumDisplayOption.BUTTON) @@ -399,6 +442,10 @@ public class SkyblockerConfig implements ConfigData { @ConfigEntry.BoundedDiscrete(min = 1, max = 10) @ConfigEntry.Gui.Tooltip() public int steakStakeUpdateFrequency = 5; + public boolean enableManiaIndicator = true; + @ConfigEntry.BoundedDiscrete(min = 1, max = 10) + @ConfigEntry.Gui.Tooltip() + public int maniaUpdateFrequency = 5; } public static class Messages { @@ -452,11 +499,8 @@ public class SkyblockerConfig implements ConfigData { private static LiteralArgumentBuilder<FabricClientCommandSource> optionsLiteral(String name) { return literal(name).executes(context -> { // Don't immediately open the next screen as it will be closed by ChatScreen right after this command is executed - SkyblockerMod.getInstance().scheduler.schedule(() -> { - Screen a = AutoConfig.getConfigScreen(SkyblockerConfig.class, null).get(); - MinecraftClient.getInstance().setScreen(a); - }, 0); - return 1; + SkyblockerMod.getInstance().scheduler.queueOpenScreen(AutoConfig.getConfigScreen(SkyblockerConfig.class, null)); + return Command.SINGLE_SUCCESS; }); } |