From 2093b1fc1c2a75009b367bcd7b378bcf6e1d16b8 Mon Sep 17 00:00:00 2001 From: Kevinthegreat <92656833+kevinthegreat1@users.noreply.github.com> Date: Tue, 16 May 2023 19:40:01 -0400 Subject: Added config screen command --- .../skyblocker/config/SkyblockerConfig.java | 38 +++++++++++++++++++--- 1 file changed, 34 insertions(+), 4 deletions(-) (limited to 'src/main/java/me/xmrvizzy/skyblocker/config') diff --git a/src/main/java/me/xmrvizzy/skyblocker/config/SkyblockerConfig.java b/src/main/java/me/xmrvizzy/skyblocker/config/SkyblockerConfig.java index 48eb31c7..e2e7b4ca 100644 --- a/src/main/java/me/xmrvizzy/skyblocker/config/SkyblockerConfig.java +++ b/src/main/java/me/xmrvizzy/skyblocker/config/SkyblockerConfig.java @@ -1,16 +1,24 @@ package me.xmrvizzy.skyblocker.config; +import com.mojang.brigadier.builder.LiteralArgumentBuilder; import me.shedaniel.autoconfig.AutoConfig; import me.shedaniel.autoconfig.ConfigData; import me.shedaniel.autoconfig.annotation.Config; import me.shedaniel.autoconfig.annotation.ConfigEntry; import me.shedaniel.autoconfig.serializer.GsonConfigSerializer; +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; import java.util.List; +import static net.fabricmc.fabric.api.client.command.v2.ClientCommandManager.literal; + @Config(name = "skyblocker") public class SkyblockerConfig implements ConfigData { @@ -59,7 +67,7 @@ public class SkyblockerConfig implements ConfigData { @ConfigEntry.Category("button6") @ConfigEntry.Gui.CollapsibleObject() - public QuickNavItem button6 = new QuickNavItem(true, new ItemData("ender_chest"), "Storage", "/storage"); + public QuickNavItem button6 = new QuickNavItem(true, new ItemData("ender_chest"), "Storage", "/storage"); @ConfigEntry.Category("button7") @ConfigEntry.Gui.CollapsibleObject() @@ -133,7 +141,7 @@ public class SkyblockerConfig implements ConfigData { @ConfigEntry.Category("bars") @ConfigEntry.Gui.CollapsibleObject() public Bars bars = new Bars(); - + @ConfigEntry.Category("itemList") @ConfigEntry.Gui.CollapsibleObject() public ItemList itemList = new ItemList(); @@ -177,7 +185,7 @@ public class SkyblockerConfig implements ConfigData { NONE; @Override - public String toString() { + public String toString() { return I18n.translate("text.autoconfig.skyblocker.option.general.bars.barpositions." + name()); } @@ -215,7 +223,7 @@ public class SkyblockerConfig implements ConfigData { BOTH; @Override - public String toString() { + public String toString() { return I18n.translate("text.autoconfig.skyblocker.option.general.itemTooltip.avg." + name()); } } @@ -310,14 +318,36 @@ public class SkyblockerConfig implements ConfigData { PURSE, BITS, LOCATION; + @Override public String toString() { return I18n.translate("text.autoconfig.skyblocker.option.richPresence.info." + name()); } } + /** + * Registers the config to AutoConfig and register commands to open the config screen. + */ public static void init() { AutoConfig.register(SkyblockerConfig.class, GsonConfigSerializer::new); + ClientCommandRegistrationCallback.EVENT.register(((dispatcher, registryAccess) -> dispatcher.register(literal("skyblocker").then(optionsLiteral("config")).then(optionsLiteral("options"))))); + } + + /** + * Registers an options command with the given name. Used for registering both options and config as valid commands. + * + * @param name the name of the command node + * @return the command builder + */ + private static LiteralArgumentBuilder 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; + }); } public static SkyblockerConfig get() { -- cgit From 18e0b1c1b18a6a0795894b71565f1950b513f666 Mon Sep 17 00:00:00 2001 From: Kevinthegreat <92656833+kevinthegreat1@users.noreply.github.com> Date: Sat, 20 May 2023 14:10:46 -0400 Subject: Add Fishing Helper --- src/main/java/me/xmrvizzy/skyblocker/config/SkyblockerConfig.java | 8 ++++++++ 1 file changed, 8 insertions(+) (limited to 'src/main/java/me/xmrvizzy/skyblocker/config') diff --git a/src/main/java/me/xmrvizzy/skyblocker/config/SkyblockerConfig.java b/src/main/java/me/xmrvizzy/skyblocker/config/SkyblockerConfig.java index e2e7b4ca..13f70137 100644 --- a/src/main/java/me/xmrvizzy/skyblocker/config/SkyblockerConfig.java +++ b/src/main/java/me/xmrvizzy/skyblocker/config/SkyblockerConfig.java @@ -142,6 +142,10 @@ public class SkyblockerConfig implements ConfigData { @ConfigEntry.Gui.CollapsibleObject() public Bars bars = new Bars(); + @ConfigEntry.Category("fishing") + @ConfigEntry.Gui.CollapsibleObject() + public Fishing fishing = new Fishing(); + @ConfigEntry.Category("itemList") @ConfigEntry.Gui.CollapsibleObject() public ItemList itemList = new ItemList(); @@ -199,6 +203,10 @@ public class SkyblockerConfig implements ConfigData { } } + public static class Fishing { + public boolean enableFishingHelper = true; + } + public static class Hitbox { public boolean oldFarmlandHitbox = true; public boolean oldLeverHitbox = false; -- cgit From 049f988c904e7bee85e4d0a03e2dbbcf0047d27e Mon Sep 17 00:00:00 2001 From: Kevinthegreat <92656833+kevinthegreat1@users.noreply.github.com> Date: Mon, 22 May 2023 20:30:12 -0400 Subject: Add Livid Color --- src/main/java/me/xmrvizzy/skyblocker/config/SkyblockerConfig.java | 2 ++ 1 file changed, 2 insertions(+) (limited to 'src/main/java/me/xmrvizzy/skyblocker/config') diff --git a/src/main/java/me/xmrvizzy/skyblocker/config/SkyblockerConfig.java b/src/main/java/me/xmrvizzy/skyblocker/config/SkyblockerConfig.java index 13f70137..65e5c392 100644 --- a/src/main/java/me/xmrvizzy/skyblocker/config/SkyblockerConfig.java +++ b/src/main/java/me/xmrvizzy/skyblocker/config/SkyblockerConfig.java @@ -269,6 +269,8 @@ public class SkyblockerConfig implements ConfigData { public boolean solveThreeWeirdos = true; public boolean blazesolver = true; public boolean solveTrivia = true; + public boolean lividColor = true; + public String lividColorText = "[color]"; @ConfigEntry.Gui.CollapsibleObject() public Terminals terminals = new Terminals(); } -- cgit From 98e875d281b99de6df4e150656e501a3121d2d81 Mon Sep 17 00:00:00 2001 From: Kevinthegreat <92656833+kevinthegreat1@users.noreply.github.com> Date: Sun, 28 May 2023 19:38:12 -0400 Subject: Fix Reparty commands and update config --- .../java/me/xmrvizzy/skyblocker/config/SkyblockerConfig.java | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) (limited to 'src/main/java/me/xmrvizzy/skyblocker/config') diff --git a/src/main/java/me/xmrvizzy/skyblocker/config/SkyblockerConfig.java b/src/main/java/me/xmrvizzy/skyblocker/config/SkyblockerConfig.java index 65e5c392..c87f0ad9 100644 --- a/src/main/java/me/xmrvizzy/skyblocker/config/SkyblockerConfig.java +++ b/src/main/java/me/xmrvizzy/skyblocker/config/SkyblockerConfig.java @@ -269,12 +269,19 @@ public class SkyblockerConfig implements ConfigData { public boolean solveThreeWeirdos = true; public boolean blazesolver = true; public boolean solveTrivia = true; - public boolean lividColor = true; - public String lividColorText = "[color]"; + @ConfigEntry.Gui.CollapsibleObject + public LividColor lividColor = new LividColor(); @ConfigEntry.Gui.CollapsibleObject() public Terminals terminals = new Terminals(); } + public static class LividColor { + @ConfigEntry.Gui.Tooltip() + public boolean enableLividColor = true; + @ConfigEntry.Gui.Tooltip() + public String lividColorText = "The livid color is [color]"; + } + public static class Terminals { public boolean solveColor = true; public boolean solveOrder = true; -- cgit