From 3de616fcaca8e39a4d1caef6fdd4f984adb7e000 Mon Sep 17 00:00:00 2001 From: Rime <81419447+Emirlol@users.noreply.github.com> Date: Fri, 21 Jun 2024 09:12:11 +0300 Subject: Change slot text to have multiple states The enum SlotTextState is very self-descriptive if you wonder what the states are --- src/main/resources/assets/skyblocker/lang/en_us.json | 3 +++ 1 file changed, 3 insertions(+) (limited to 'src/main/resources') diff --git a/src/main/resources/assets/skyblocker/lang/en_us.json b/src/main/resources/assets/skyblocker/lang/en_us.json index 875b45dd..4ee3ece0 100644 --- a/src/main/resources/assets/skyblocker/lang/en_us.json +++ b/src/main/resources/assets/skyblocker/lang/en_us.json @@ -10,6 +10,7 @@ "key.skyblocker.toggleA": "Toggle tab HUD to screen A", "key.wikiLookup": "Wiki Lookup", "key.itemProtection": "Protect Item", + "key.skyblocker.slottext": "Slot Text", "text.skyblocker.open": "Open", "text.skyblocker.quit_config": "Changes Not Saved", @@ -224,6 +225,8 @@ "skyblocker.config.general.itemInfoDisplay.itemRarityBackgroundsOpacity": "Item Rarity Backgrounds Opacity", "skyblocker.config.general.itemInfoDisplay.slotText": "Slot Text", "skyblocker.config.general.itemInfoDisplay.slotText.@Tooltip": "Displays information such as enchantment book level, minion level, pet level, potion level, prehistoric egg blocks walked, rancher's boots speed cap, and skill level", + "skyblocker.config.general.itemInfoDisplay.slotText.shortcutToKeybindsSettings": "Slot Text Keybind", + "skyblocker.config.general.itemInfoDisplay.slotText.shortcutToKeybindsSettings.@Text": "Click... (opens up keybinds settings)", "skyblocker.config.general.itemList": "Item List", "skyblocker.config.general.itemList.enableItemList": "Enable Item List", -- cgit From eb2ac7c20ca00da5c8998aad291584b76186ec5f Mon Sep 17 00:00:00 2001 From: Kevinthegreat <92656833+kevinthegreat1@users.noreply.github.com> Date: Wed, 24 Jul 2024 00:41:38 +0800 Subject: Rename slot text option to slotTextMode --- .../config/categories/GeneralCategory.java | 14 ++++++------- .../skyblocker/config/configs/GeneralConfig.java | 8 ++++++-- .../skyblock/item/slottext/SlotTextManager.java | 2 +- .../skyblock/item/slottext/SlotTextMode.java | 23 ++++++++++++++++++++++ .../skyblock/item/slottext/SlotTextState.java | 23 ---------------------- .../skyblocker/utils/container/SlotTextAdder.java | 4 ++-- .../resources/assets/skyblocker/lang/en_us.json | 5 +++-- 7 files changed, 42 insertions(+), 37 deletions(-) create mode 100644 src/main/java/de/hysky/skyblocker/skyblock/item/slottext/SlotTextMode.java delete mode 100644 src/main/java/de/hysky/skyblocker/skyblock/item/slottext/SlotTextState.java (limited to 'src/main/resources') diff --git a/src/main/java/de/hysky/skyblocker/config/categories/GeneralCategory.java b/src/main/java/de/hysky/skyblocker/config/categories/GeneralCategory.java index abfb7c16..7669359e 100644 --- a/src/main/java/de/hysky/skyblocker/config/categories/GeneralCategory.java +++ b/src/main/java/de/hysky/skyblocker/config/categories/GeneralCategory.java @@ -5,7 +5,7 @@ import de.hysky.skyblocker.config.ConfigUtils; import de.hysky.skyblocker.config.SkyblockerConfig; import de.hysky.skyblocker.config.configs.GeneralConfig; import de.hysky.skyblocker.skyblock.item.tooltip.adders.CraftPriceTooltip; -import de.hysky.skyblocker.skyblock.item.slottext.SlotTextState; +import de.hysky.skyblocker.skyblock.item.slottext.SlotTextMode; import de.hysky.skyblocker.skyblock.shortcut.ShortcutsConfigScreen; import dev.isxander.yacl3.api.*; import dev.isxander.yacl3.api.controller.FloatSliderControllerBuilder; @@ -236,18 +236,18 @@ public class GeneralCategory { .group(OptionGroup.createBuilder() .name(Text.translatable("skyblocker.config.general.itemInfoDisplay")) .collapsed(true) - .option(Option.createBuilder() + .option(Option.createBuilder() .name(Text.translatable("skyblocker.config.general.itemInfoDisplay.slotText")) .description(OptionDescription.of(Text.translatable("skyblocker.config.general.itemInfoDisplay.slotText.@Tooltip"))) - .binding(defaults.general.itemInfoDisplay.slotText, - () -> config.general.itemInfoDisplay.slotText, - newValue -> config.general.itemInfoDisplay.slotText = newValue) + .binding(defaults.general.itemInfoDisplay.slotTextMode, + () -> config.general.itemInfoDisplay.slotTextMode, + newValue -> config.general.itemInfoDisplay.slotTextMode = newValue) .controller(ConfigUtils::createEnumCyclingListController) .build()) .option(ButtonOption.createBuilder() - .name(Text.translatable("skyblocker.config.general.itemInfoDisplay.slotText.shortcutToKeybindsSettings")) + .name(Text.translatable("skyblocker.config.shortcutToKeybindsSettings")) .action((screen, opt) -> MinecraftClient.getInstance().setScreen(new KeybindsScreen(screen, MinecraftClient.getInstance().options))) - .text(Text.translatable("skyblocker.config.general.itemInfoDisplay.slotText.shortcutToKeybindsSettings.@Text")) + .text(Text.translatable("skyblocker.config.shortcutToKeybindsSettings.@Text")) .build()) .option(Option.createBuilder() .name(Text.translatable("skyblocker.config.general.itemInfoDisplay.attributeShardInfo")) diff --git a/src/main/java/de/hysky/skyblocker/config/configs/GeneralConfig.java b/src/main/java/de/hysky/skyblocker/config/configs/GeneralConfig.java index 7ea1616e..61386452 100644 --- a/src/main/java/de/hysky/skyblocker/config/configs/GeneralConfig.java +++ b/src/main/java/de/hysky/skyblocker/config/configs/GeneralConfig.java @@ -3,7 +3,7 @@ package de.hysky.skyblocker.config.configs; import de.hysky.skyblocker.SkyblockerMod; import de.hysky.skyblocker.skyblock.item.CustomArmorAnimatedDyes; import de.hysky.skyblocker.skyblock.item.CustomArmorTrims; -import de.hysky.skyblocker.skyblock.item.slottext.SlotTextState; +import de.hysky.skyblocker.skyblock.item.slottext.SlotTextMode; import dev.isxander.yacl3.config.v2.api.SerialEntry; import it.unimi.dsi.fastutil.objects.Object2IntOpenHashMap; import it.unimi.dsi.fastutil.objects.Object2ObjectOpenHashMap; @@ -164,8 +164,12 @@ public class GeneralConfig { } public static class ItemInfoDisplay { + @Deprecated @SerialEntry - public SlotTextState slotText = SlotTextState.ENABLED; + public boolean slotText = true; + + @SerialEntry + public SlotTextMode slotTextMode = SlotTextMode.ENABLED; @SerialEntry public boolean slotTextToggled = true; diff --git a/src/main/java/de/hysky/skyblocker/skyblock/item/slottext/SlotTextManager.java b/src/main/java/de/hysky/skyblocker/skyblock/item/slottext/SlotTextManager.java index 91971985..a28e204c 100644 --- a/src/main/java/de/hysky/skyblocker/skyblock/item/slottext/SlotTextManager.java +++ b/src/main/java/de/hysky/skyblocker/skyblock/item/slottext/SlotTextManager.java @@ -129,7 +129,7 @@ public class SlotTextManager { } public static boolean isEnabled() { - return switch (SkyblockerConfigManager.get().general.itemInfoDisplay.slotText) { + return switch (SkyblockerConfigManager.get().general.itemInfoDisplay.slotTextMode) { case ENABLED -> true; case DISABLED -> false; case PRESS_TO_TOGGLE -> SkyblockerConfigManager.get().general.itemInfoDisplay.slotTextToggled; diff --git a/src/main/java/de/hysky/skyblocker/skyblock/item/slottext/SlotTextMode.java b/src/main/java/de/hysky/skyblocker/skyblock/item/slottext/SlotTextMode.java new file mode 100644 index 00000000..1f043888 --- /dev/null +++ b/src/main/java/de/hysky/skyblocker/skyblock/item/slottext/SlotTextMode.java @@ -0,0 +1,23 @@ +package de.hysky.skyblocker.skyblock.item.slottext; + +/** + * Used in {@link SlotTextManager#isEnabled()} to determine whether the slot text should be shown or not. + */ +public enum SlotTextMode { + ENABLED, + HOLD_TO_SHOW, + PRESS_TO_TOGGLE, + HOLD_TO_HIDE, + DISABLED; + + @Override + public String toString() { + return switch (this) { + case ENABLED -> "Enabled"; + case HOLD_TO_SHOW -> "Hold to Show"; + case PRESS_TO_TOGGLE -> "Press to Toggle"; + case HOLD_TO_HIDE -> "Hold to Hide"; + case DISABLED -> "Disabled"; + }; + } +} diff --git a/src/main/java/de/hysky/skyblocker/skyblock/item/slottext/SlotTextState.java b/src/main/java/de/hysky/skyblocker/skyblock/item/slottext/SlotTextState.java deleted file mode 100644 index 38280166..00000000 --- a/src/main/java/de/hysky/skyblocker/skyblock/item/slottext/SlotTextState.java +++ /dev/null @@ -1,23 +0,0 @@ -package de.hysky.skyblocker.skyblock.item.slottext; - -/** - * Used in {@link SlotTextManager#isEnabled()} to determine whether the slot text should be shown or not. - */ -public enum SlotTextState { - ENABLED, - HOLD_TO_SHOW, - PRESS_TO_TOGGLE, - HOLD_TO_HIDE, - DISABLED; - - @Override - public String toString() { - return switch (this) { - case ENABLED -> "Enabled"; - case HOLD_TO_SHOW -> "Hold to Show"; - case PRESS_TO_TOGGLE -> "Press to Toggle"; - case HOLD_TO_HIDE -> "Hold to Hide"; - case DISABLED -> "Disabled"; - }; - } -} diff --git a/src/main/java/de/hysky/skyblocker/utils/container/SlotTextAdder.java b/src/main/java/de/hysky/skyblocker/utils/container/SlotTextAdder.java index 4caf8cea..72f92547 100644 --- a/src/main/java/de/hysky/skyblocker/utils/container/SlotTextAdder.java +++ b/src/main/java/de/hysky/skyblocker/utils/container/SlotTextAdder.java @@ -2,7 +2,7 @@ package de.hysky.skyblocker.utils.container; import de.hysky.skyblocker.config.SkyblockerConfigManager; import de.hysky.skyblocker.skyblock.item.slottext.SlotText; -import de.hysky.skyblocker.skyblock.item.slottext.SlotTextState; +import de.hysky.skyblocker.skyblock.item.slottext.SlotTextMode; import net.minecraft.item.ItemStack; import net.minecraft.screen.slot.Slot; import org.jetbrains.annotations.NotNull; @@ -25,6 +25,6 @@ public interface SlotTextAdder extends ContainerMatcher { @Override default boolean isEnabled() { - return SkyblockerConfigManager.get().general.itemInfoDisplay.slotText != SlotTextState.DISABLED; + return SkyblockerConfigManager.get().general.itemInfoDisplay.slotTextMode != SlotTextMode.DISABLED; } } diff --git a/src/main/resources/assets/skyblocker/lang/en_us.json b/src/main/resources/assets/skyblocker/lang/en_us.json index 4ee3ece0..2c19e036 100644 --- a/src/main/resources/assets/skyblocker/lang/en_us.json +++ b/src/main/resources/assets/skyblocker/lang/en_us.json @@ -28,6 +28,9 @@ "skyblocker.config.title": "Skyblocker Settings", + "skyblocker.config.shortcutToKeybindsSettings": "Edit Keybind", + "skyblocker.config.shortcutToKeybindsSettings.@Text": "Click... (Opens up Keybinds Options)", + "skyblocker.config.crimsonIsle": "Crimson Isle", "skyblocker.config.crimsonIsle.kuudra": "Kuudra", @@ -225,8 +228,6 @@ "skyblocker.config.general.itemInfoDisplay.itemRarityBackgroundsOpacity": "Item Rarity Backgrounds Opacity", "skyblocker.config.general.itemInfoDisplay.slotText": "Slot Text", "skyblocker.config.general.itemInfoDisplay.slotText.@Tooltip": "Displays information such as enchantment book level, minion level, pet level, potion level, prehistoric egg blocks walked, rancher's boots speed cap, and skill level", - "skyblocker.config.general.itemInfoDisplay.slotText.shortcutToKeybindsSettings": "Slot Text Keybind", - "skyblocker.config.general.itemInfoDisplay.slotText.shortcutToKeybindsSettings.@Text": "Click... (opens up keybinds settings)", "skyblocker.config.general.itemList": "Item List", "skyblocker.config.general.itemList.enableItemList": "Enable Item List", -- cgit