From 4013efcfc85e5ce4e16b2492d235373ed5caa958 Mon Sep 17 00:00:00 2001 From: DoKM Date: Thu, 8 Jul 2021 21:33:52 +0200 Subject: Redo config so its less cluttered --- .../notenoughupdates/options/NEUConfig.java | 2994 +++----------------- 1 file changed, 419 insertions(+), 2575 deletions(-) (limited to 'src/main/java/io/github/moulberry/notenoughupdates/options/NEUConfig.java') diff --git a/src/main/java/io/github/moulberry/notenoughupdates/options/NEUConfig.java b/src/main/java/io/github/moulberry/notenoughupdates/options/NEUConfig.java index c6203059..b12e2ea5 100644 --- a/src/main/java/io/github/moulberry/notenoughupdates/options/NEUConfig.java +++ b/src/main/java/io/github/moulberry/notenoughupdates/options/NEUConfig.java @@ -1,2575 +1,419 @@ -package io.github.moulberry.notenoughupdates.options; - -import com.google.common.collect.Lists; -import com.google.gson.annotations.Expose; -import io.github.moulberry.notenoughupdates.NotEnoughUpdates; -import io.github.moulberry.notenoughupdates.core.GuiScreenElementWrapper; -import io.github.moulberry.notenoughupdates.core.config.Config; -import io.github.moulberry.notenoughupdates.core.config.Position; -import io.github.moulberry.notenoughupdates.core.config.annotations.*; -import io.github.moulberry.notenoughupdates.core.config.gui.GuiPositionEditor; -import io.github.moulberry.notenoughupdates.miscgui.GuiEnchantColour; -import io.github.moulberry.notenoughupdates.miscgui.GuiInvButtonEditor; -import io.github.moulberry.notenoughupdates.miscgui.NEUOverlayPlacements; -import io.github.moulberry.notenoughupdates.overlays.*; -import io.github.moulberry.notenoughupdates.util.SBInfo; -import net.minecraft.client.Minecraft; -import net.minecraft.util.EnumChatFormatting; -import net.minecraftforge.client.ClientCommandHandler; -import org.lwjgl.input.Keyboard; -import org.lwjgl.util.vector.Vector2f; - -import java.util.ArrayList; -import java.util.Arrays; -import java.util.HashMap; -import java.util.List; - -public class NEUConfig extends Config { - - private void editOverlay(String activeConfig, TextOverlay overlay, Position position) { - Vector2f size = overlay.getDummySize(); - int width = (int)size.x; - int height = (int)size.y; - Minecraft.getMinecraft().displayGuiScreen(new GuiPositionEditor(position, width, height, () -> { - overlay.renderDummy(); - OverlayManager.dontRenderOverlay = overlay.getClass(); - }, () -> { - }, () -> NotEnoughUpdates.INSTANCE.openGui = new GuiScreenElementWrapper( - new NEUConfigEditor(NotEnoughUpdates.INSTANCE.config, activeConfig)) - )); - } - - @Override - public void executeRunnable(int runnableId) { - String activeConfigCategory = null; - if(Minecraft.getMinecraft().currentScreen instanceof GuiScreenElementWrapper) { - GuiScreenElementWrapper wrapper = (GuiScreenElementWrapper) Minecraft.getMinecraft().currentScreen; - if(wrapper.element instanceof NEUConfigEditor) { - activeConfigCategory = ((NEUConfigEditor)wrapper.element).getSelectedCategoryName(); - } - } - final String activeConfigCategoryF = activeConfigCategory; - - switch (runnableId) { - case 0: - ClientCommandHandler.instance.executeCommand(Minecraft.getMinecraft().thePlayer, "/neumap"); - return; - case 1: - editOverlay(activeConfigCategory, OverlayManager.miningOverlay, mining.overlayPosition); - return; - case 2: - Minecraft.getMinecraft().displayGuiScreen(new GuiPositionEditor( - NotEnoughUpdates.INSTANCE.config.mining.drillFuelBarPosition, - NotEnoughUpdates.INSTANCE.config.mining.drillFuelBarWidth, 12, () -> { - }, () -> { - }, () -> NotEnoughUpdates.INSTANCE.openGui = new GuiScreenElementWrapper( - new NEUConfigEditor(NotEnoughUpdates.INSTANCE.config, activeConfigCategoryF)) - )); - return; - case 3: - editOverlay(activeConfigCategory, OverlayManager.farmingOverlay, skillOverlays.farmingPosition); - return; - case 4: - editOverlay(activeConfigCategory, OverlayManager.petInfoOverlay, petOverlay.petInfoPosition); - return; - case 5: - editOverlay(activeConfigCategory, OverlayManager.timersOverlay, miscOverlays.todoPosition); - return; - case 6: - NotEnoughUpdates.INSTANCE.openGui = new NEUOverlayPlacements(); - return; - case 7: - NotEnoughUpdates.INSTANCE.openGui = new GuiInvButtonEditor(); - return; - case 8: - NotEnoughUpdates.INSTANCE.openGui = new GuiEnchantColour(); - return; - - } - } - - @Expose - @Category( - name = "Misc", - desc = "Miscellaneous options which don't fit into any other category" - ) - public Misc misc = new Misc(); - - @Expose - @Category( - name = "Notifications", - desc = "Notifications" - ) - public Notifications notifications = new Notifications(); - - @Expose - @Category( - name = "Item List", - desc = "Item List" - ) - public Itemlist itemlist = new Itemlist(); - - @Expose - @Category( - name = "Toolbar", - desc = "Toolbar" - ) - public Toolbar toolbar = new Toolbar(); - - @Expose - @Category( - name = "Inventory Buttons", - desc = "Inventory Buttons" - ) - public InventoryButtons inventoryButtons = new InventoryButtons(); - - - @Expose - @Category( - name = "Slot Locking", - desc = "Slot Locking" - ) - public SlotLocking slotLocking = new SlotLocking(); - - @Expose - @Category( - name = "Tooltip Tweaks", - desc = "Tooltip Tweaks" - ) - public TooltipTweaks tooltipTweaks = new TooltipTweaks(); - - @Expose - @Category( - name = "Item Overlays", - desc = "Item Overlays" - ) - public ItemOverlays itemOverlays = new ItemOverlays(); - - @Expose - @Category( - name = "Skill Overlays", - desc = "Skill Overlays" - ) - public SkillOverlays skillOverlays = new SkillOverlays(); - - @Expose - @Category( - name = "Misc Overlays", - desc = "Misc Overlays" - ) - public MiscOverlays miscOverlays = new MiscOverlays(); - - @Expose - @Category( - name = "Storage GUI", - desc = "Storage GUI" - ) - public StorageGUI storageGUI = new StorageGUI(); - - @Expose - @Category( - name = "Dungeons", - desc = "Dungeons" - ) - public Dungeons dungeons = new Dungeons(); - - - @Expose - @Category( - name = "Enchanting Solvers", - desc = "Enchanting Solvers" - ) - public EnchSolvers enchantingSolvers = new EnchSolvers(); - - @Expose - @Category( - name = "Mining", - desc = "Mining" - ) - public Mining mining = new Mining(); - - - @Expose - @Category( - name = "Fishing", - desc = "Fishing" - ) - public Fishing fishing = new Fishing(); - - @Expose - @Category( - name = "NEU Auction House", - desc = "NEU Auction House" - ) - public NeuAuctionHouse neuAuctionHouse = new NeuAuctionHouse(); - - @Expose - @Category( - name = "Improved SB Menus", - desc = "Improved SB Menus" - ) - public ImprovedSBMenu improvedSBMenu = new ImprovedSBMenu(); - - @Expose - @Category( - name = "Calendar", - desc = "Calendar" - ) - public Calendar calendar = new Calendar(); - - @Expose - @Category( - name = "Trade Menu", - desc = "Trade Menu" - ) - public TradeMenu tradeMenu = new TradeMenu(); - - @Expose - @Category( - name = "Pet Overlay", - desc = "Pet Overlay" - ) - public PetOverlay petOverlay = new PetOverlay(); - - @Expose - @Category( - name = "AH Search GUI", - desc = "AH Search GUI" - ) - public AuctionHouseSearch auctionHouseSearch = new AuctionHouseSearch(); - - @Expose - @Category( - name = "Accessory Bag Overlay", - desc = "Accessory Bag Overlay" - ) - public AccessoryBag accessoryBag = new AccessoryBag(); - - @Expose - @Category( - name = "Api Key", - desc = "Api Key" - ) - public ApiKey apiKey = new ApiKey(); - - @Expose - public Hidden hidden = new Hidden(); - - @Expose - public DungeonMap dungeonMap = new DungeonMap(); - - public static class Misc { - @Expose - @ConfigOption( - name = "Only Show on Skyblock", - desc = "The item list and some other GUI elements will only show on skyblock" - ) - @ConfigEditorBoolean - public boolean onlyShowOnSkyblock = true; - - @Expose - @ConfigOption( - name = "Hide Potion Effects", - desc = "Hide the potion effects inside your inventory while on skyblock" - ) - @ConfigEditorBoolean - public boolean hidePotionEffect = true; - - @Expose - @ConfigOption( - name = "Streamer Mode", - desc = "Randomize lobby names in the scoreboard and chat messages to help prevent stream sniping" - ) - @ConfigEditorBoolean - public boolean streamerMode = false; - - @Expose - @ConfigOption( - name = "GUI Click Sounds", - desc = "Play click sounds in various NEU-related GUIs when pressing buttons" - ) - @ConfigEditorBoolean - public boolean guiButtonClicks = true; - - @Expose - @ConfigOption( - name = "Damage Indicator Style", - desc = "Change the style of Skyblock damage indicators to be easier to read" - ) - @ConfigEditorDropdown( - values = {"Off", "Commas", "Shortened"} - ) - public int damageIndicatorStyle = 1; - - @Expose - @ConfigOption( - name = "Edit Enchant Colours", - desc = "Change the colours of certain skyblock enchants" - ) - @ConfigEditorButton(runnableId = 8, buttonText = "Open") - public boolean editEnchantColoursButton = true; - - @Expose - @ConfigOption( - name = "Chroma Text Speed", - desc = "Change the speed of chroma text for items names (/neucustomize) and enchant colours (/neuec) with the chroma colour code (&z)" - ) - @ConfigEditorSlider( - minValue = 10, - maxValue = 500, - minStep = 10 - ) - public int chromaSpeed = 100; - } - - public static class Notifications { - @Expose - @ConfigOption( - name = "Update Messages", - desc = "Give a notification in chat whenever a new version of NEU is released" - ) - @ConfigEditorBoolean - public boolean showUpdateMsg = true; - - @Expose - @ConfigOption( - name = "RAM Warning", - desc = "Warning when game starts with lots of RAM allocated\n"+ - "\u00a7cBefore disabling this, please seriously read the message. If you complain about FPS issues without listening to the warning, that's your fault." - ) - @ConfigEditorBoolean - public boolean doRamNotif = true; - - /*@Expose - @ConfigOption( - name = "Wrong Pet", - desc = "Gives a notification in chat whenever you're using a pet that doesnt match the same xp you're gathering." - ) - @ConfigEditorBoolean - public boolean showWrongPetMsg = false;*/ - } - - public static class Itemlist { - @Expose - @ConfigOption( - name = "Show Vanilla Items", - desc = "Vanilla items are included in the item list" - ) - @ConfigEditorBoolean - public boolean showVanillaItems = true; - - @Expose - @ConfigOption( - name = "Open Itemlist Arrow", - desc = "Creates an arrow on the right-side to open the item list when hovered" - ) - @ConfigEditorBoolean - public boolean tabOpen = true; - - @Expose - @ConfigOption( - name = "Keep Open", - desc = "Keeps the Itemlist open after the inventory is closed" - ) - @ConfigEditorBoolean - public boolean keepopen = false; - - @Expose - @ConfigOption( - name = "Item Style", - desc = "Sets the style of the background behind items" - ) - @ConfigEditorDropdown( - values = {"Round", "Square"} - ) - public int itemStyle = 0; - - @Expose - @ConfigOption( - name = "Pane Gui Scale", - desc = "Change the gui scale of the Itemlist" - ) - @ConfigEditorDropdown( - values = {"Default", "Small", "Medium", "Large", "Auto"} - ) - public int paneGuiScale = 0; - - @Expose - @ConfigOption( - name = "Background Blur", - desc = "Change the blur amount behind the Itemlist. 0 = off" - ) - @ConfigEditorSlider( - minValue = 0, - maxValue = 20, - minStep = 1 - ) - public int bgBlurFactor = 5; - - @Expose - @ConfigOption( - name = "Pane Width Multiplier", - desc = "Change the width of the Itemlist" - ) - @ConfigEditorSlider( - minValue = 0.5f, - maxValue = 1.5f, - minStep = 0.1f - ) - public float paneWidthMult = 1.0f; - - @Expose - @ConfigOption( - name = "Pane Padding", - desc = "Change the padding around the Itemlist" - ) - @ConfigEditorSlider( - minValue = 0f, - maxValue = 20f, - minStep = 1f - ) - public int panePadding = 10; - - @Expose - @ConfigOption( - name = "Foreground Colour", - desc = "Change the colour of foreground elements in the Itemlist" - ) - @ConfigEditorColour - public String foregroundColour = "00:255:100:100:100"; - - @Expose - @ConfigOption( - name = "Favourite Colour", - desc = "Change the colour of favourited elements in the Itemlist" - ) - @ConfigEditorColour - public String favouriteColour = "00:255:200:150:50"; - - @Expose - @ConfigOption( - name = "Pane Background Colour", - desc = "Change the colour of the Itemlist background" - ) - @ConfigEditorColour - public String backgroundColour = "15:6:0:0:255"; - } - - public static class Toolbar { - @Expose - @ConfigOption( - name = "Edit Toolbar Positions", - desc = "Edit the position of the QuickCommands / Search Bar" - ) - @ConfigEditorButton(runnableId = 6, buttonText = "Edit") - public boolean positionButton = true; - - @Expose - @ConfigOption( - name = "Show Quick Commands", - desc = "Show QuickCommands\u2122 in the NEU toolbar" - ) - @ConfigEditorBoolean - public boolean quickCommands = true; - - @Expose - @ConfigOption( - name = "Show Search Bar", - desc = "Show Itemlist search bar in the NEU toolbar" - ) - @ConfigEditorBoolean - public boolean searchBar = true; - - @Expose - @ConfigOption( - name = "Search Bar Width", - desc = "Change the width of the search bar" - ) - @ConfigEditorSlider( - minValue = 50f, - maxValue = 300f, - minStep = 10f - ) - public int searchBarWidth = 200; - - @Expose - @ConfigOption( - name = "Search Bar Height", - desc = "Change the height of the search bar" - ) - @ConfigEditorSlider( - minValue = 15f, - maxValue = 50f, - minStep = 1f - ) - public int searchBarHeight = 40; - - @Expose - @ConfigOption( - name = "Quick Commands Click Type", - desc = "Change the click type needed to trigger quick commands" - ) - @ConfigEditorDropdown( - values = {"Mouse Up", "Mouse Down"} - ) - public int quickCommandsClickType = 0; - } - - public static class InventoryButtons { - @Expose - @ConfigOption( - name = "Open Button Editor", - desc = "Open button editor GUI (/neubuttons)" - ) - @ConfigEditorButton(runnableId = 7, buttonText = "Open") - public boolean openEditorButton = true; - - @Expose - @ConfigOption( - name = "Always Hide \"Crafting\" Text", - desc = "Hide crafting text in inventory, even when no button is there" - ) - @ConfigEditorBoolean - public boolean hideCrafting = false; - - @Expose - @ConfigOption( - name = "Button Click Type", - desc = "Change the click type needed to trigger commands" - ) - @ConfigEditorDropdown( - values = {"Mouse Down", "Mouse Up"} - ) - public int clickType = 0; - } - - public static class SlotLocking { - @Expose - @ConfigOption( - name = "Enable Slot Locking", - desc = "Allows you to lock slots and create slot bindings" - ) - @ConfigEditorBoolean - public boolean enableSlotLocking = false; - - @Expose - @ConfigOption( - name = "Enable Slot Binding", - desc = "Allows you to create slot bindings\nNote: \"Enable Slot Locking\" must be on" - ) - @ConfigEditorBoolean - public boolean enableSlotBinding = true; - - @Expose - @ConfigOption( - name = "Don't Drop Bound Slots", - desc = "Slot bindings also act as locked slots (prevents dropping / moving in inventory)" - ) - @ConfigEditorBoolean - public boolean bindingAlsoLocks = false; - - @Expose - @ConfigOption( - name = "Slot Lock Key", - desc = "Click this key to LOCK a slot\n" + - "Hold this key and drag to BIND a slot" - ) - @ConfigEditorKeybind(defaultKey = Keyboard.KEY_L) - public int slotLockKey = Keyboard.KEY_L; - - @Expose - @ConfigOption( - name = "Lock Slots in Trade", - desc = "Prevents trading locked items in the custom trade windows" - ) - @ConfigEditorBoolean - public boolean lockSlotsInTrade = true; - - @Expose - @ConfigOption( - name = "Slot Lock Sound", - desc = "Play a ding when locking/unlocking slots" - ) - @ConfigEditorBoolean - public boolean slotLockSound = true; - - @Expose - @ConfigOption( - name = "Slot Lock Sound Vol.", - desc = "Set the volume of the ding sound" - ) - @ConfigEditorSlider( - minValue = 0, - maxValue = 100, - minStep = 1 - ) - public float slotLockSoundVol = 20; - } - - public static class TooltipTweaks { - @ConfigOption( - name = "Tooltip Price Information", - desc = "" - ) - @ConfigEditorAccordion(id = 0) - public boolean priceInfoAccordion = false; - - @Expose - @ConfigOption( - name = "Price Info (Auc)", - desc = "\u00a7rSelect what price information you would like to see on auctionable item tooltips\n" + - "\u00a7eDrag text to rearrange" - ) - @ConfigEditorDraggableList( - exampleText = {"\u00a7eLowest BIN", - "\u00a7eAH Price", - "\u00a7eAH Sales", - "\u00a7eRaw Craft Cost", - "\u00a7eAVG Lowest BIN", - "\u00a7eDungeon Costs"} - ) - @ConfigAccordionId(id = 0) - public List priceInfoAuc = new ArrayList<>(Arrays.asList(0, 1, 2, 3, 5)); - - @Expose - @ConfigOption( - name = "Price Info (Baz)", - desc = "\u00a7rSelect what price information you would like to see on bazaar item tooltips\n" + - "\u00a7eDrag text to rearrange" - ) - @ConfigEditorDraggableList( - exampleText = {"\u00a7eBuy", "\u00a7eSell", "\u00a7eBuy (Insta)", "\u00a7eSell (Insta)", "\u00a7eRaw Craft Cost"} - ) - @ConfigAccordionId(id = 0) - public List priceInfoBaz = new ArrayList<>(Arrays.asList(0, 1, 2, 3, 4)); - - @Expose - @ConfigOption( - name = "Price Info (Inv)", - desc = "Show price information for items in your inventory" - ) - @ConfigEditorBoolean - public boolean showPriceInfoInvItem = true; - - @Expose - @ConfigOption( - name = "Price Info (AH)", - desc = "Show price information for auctioned items" - ) - @ConfigEditorBoolean - public boolean showPriceInfoAucItem = true; - - @Expose - @ConfigOption( - name = "Missing Enchant List", - desc = "Show which enchants are missing on an item when pressing LSHIFT" - ) - @ConfigEditorBoolean - public boolean missingEnchantList = true; - - @Expose - @ConfigOption( - name = "Tooltip Border Colours", - desc = "Make the borders of tooltips match the rarity of the item (NEU Tooltips Only)" - ) - @ConfigEditorBoolean - public boolean tooltipBorderColours = true; - - @Expose - @ConfigOption( - name = "Tooltip Border Opacity", - desc = "Change the opacity of the rarity highlight (NEU Tooltips Only)" - ) - @ConfigEditorSlider( - minValue = 0f, - maxValue = 255f, - minStep = 1f - ) - public int tooltipBorderOpacity = 200; - } - - public static class ItemOverlays { - @ConfigOption( - name = "Treecapitator Overlay", - desc = "" - ) - @ConfigEditorAccordion(id = 0) - public boolean treecapAccordion = false; - - @Expose - @ConfigOption( - name = "Enable Treecap Overlay", - desc = "Show which blocks will be broken when using a Jungle Axe or Treecapitator" - ) - @ConfigEditorBoolean - @ConfigAccordionId(id = 0) - public boolean enableTreecapOverlay = true; - - @Expose - @ConfigOption( - name = "Overlay Colour", - desc = "Change the colour of the overlay" - ) - @ConfigEditorColour - @ConfigAccordionId(id = 0) - public String treecapOverlayColour = "00:50:64:224:208"; - - @Expose - @ConfigOption( - name = "Enable Monkey Pet Check", - desc = "Will check use the API to check what pet you're using\nto determine the cooldown based off of if you have monkey pet." - ) - @ConfigEditorBoolean - @ConfigAccordionId(id = 0) - public boolean enableMonkeyCheck = true; - - @ConfigOption( - name = "Builder's Wand Overlay", - desc = "" - ) - @ConfigEditorAccordion(id = 1) - public boolean wandAccordion = false; - - @Expose - @ConfigOption( - name = "Enable Wand Overlay", - desc = "Show which blocks will be placed when using the Builder's Wand" - ) - @ConfigEditorBoolean - @ConfigAccordionId(id = 1) - public boolean enableWandOverlay = true; - - @Expose - @ConfigOption( - name = "Wand Block Count", - desc = "Shows the total count of a block in your inventory" - ) - @ConfigEditorBoolean - @ConfigAccordionId(id = 1) - public boolean wandBlockCount = true; - - @Expose - @ConfigOption( - name = "Overlay Colour", - desc = "Change the colour of the ghost block outline" - ) - @ConfigEditorColour - @ConfigAccordionId(id = 1) - public String wandOverlayColour = "00:50:64:224:208"; - - @ConfigOption( - name = "Block Zapper Overlay", - desc = "" - ) - @ConfigEditorAccordion(id = 6) - public boolean zapperAccordion = false; - - @Expose - @ConfigOption( - name = "Enable Zapper Overlay", - desc = "Show which blocks will be destroyed when using the Block Zapper" - ) - @ConfigEditorBoolean - @ConfigAccordionId(id = 6) - public boolean enableZapperOverlay = true; - - @Expose - @ConfigOption( - name = "Overlay Colour", - desc = "Change the colour of the ghost block outline" - ) - @ConfigEditorColour - @ConfigAccordionId(id = 6) - public String zapperOverlayColour = "0:102:171:5:0"; - - @ConfigOption( - name = "Smooth AOTE", - desc = "" - ) - @ConfigEditorAccordion(id = 2) - public boolean aoteAccordion = false; - - @Expose - @ConfigOption( - name = "Enable Smooth AOTE", - desc = "Teleport smoothly to your destination when using AOTE" - ) - @ConfigEditorBoolean - @ConfigAccordionId(id = 2) - public boolean enableSmoothAOTE = true; - - @Expose - @ConfigOption( - name = "Enable Smooth Hyperion", - desc = "Teleport smoothly to your destination when using Hyperion" - ) - @ConfigEditorBoolean - @ConfigAccordionId(id = 2) - public boolean enableSmoothHyperion = true; - - @Expose - @ConfigOption( - name = "Smooth TP Time", - desc = "Change the amount of time (milliseconds) taken to teleport" - ) - @ConfigEditorSlider( - minValue = 0, - maxValue = 500, - minStep = 25 - ) - @ConfigAccordionId(id = 2) - public int smoothTpMillis = 175; - - @Expose - @ConfigOption( - name = "Disable Hyperion Particles", - desc = "Remove the explosion effect when using a hyperion" - ) - @ConfigEditorBoolean - @ConfigAccordionId(id = 2) - public boolean disableHyperionParticles = true; - - @ConfigOption( - name = "Bonemerang Overlay", - desc = "" - ) - @ConfigEditorAccordion(id = 3) - public boolean bonemerangAccordion = false; - - @Expose - @ConfigOption( - name = "Highlight Targeted Entities", - desc = "Highlight entities that will be hit by your bonemerang" - ) - @ConfigEditorBoolean - @ConfigAccordionId(id = 3) - public boolean highlightTargeted = true; - - @Expose - @ConfigOption( - name = "Break Warning", - desc = "Show a warning below your crosshair if the bonemerang will break on a block" - ) - @ConfigEditorBoolean - @ConfigAccordionId(id = 3) - public boolean showBreak = true; - - @ConfigOption( - name = "Minion Crystal Radius Overlay", - desc = "" - ) - @ConfigEditorAccordion(id = 5) - public boolean crystalAccordion = false; - - @Expose - @ConfigOption( - name = "Enable Crystal Overlay", - desc = "Show a block overlay for the effective radius of minion crystals (farming, mining, etc)" - ) - @ConfigEditorBoolean - @ConfigAccordionId(id = 5) - public boolean enableCrystalOverlay = true; - - @Expose - @ConfigOption( - name = "Always Show Crystal Overlay", - desc = "Show the crystal overlay, even when a minion crystal is not being held" - ) - @ConfigEditorBoolean - @ConfigAccordionId(id = 5) - public boolean alwaysShowCrystal = false; - } - - public static class SkillOverlays { - @Expose - @ConfigOption( - name = "Enable Farming Overlay", - desc = "Show an overlay while farming with useful information" - ) - @ConfigEditorBoolean - public boolean farmingOverlay = true; - - @Expose - @ConfigOption( - name = "Farming Text", - desc = "\u00a7eDrag text to change the appearance of the overlay\n" + - "\u00a7rHold a mathematical hoe or use an axe while gaining farming xp to show the overlay" - ) - @ConfigEditorDraggableList( - exampleText = {"\u00a7bCounter: \u00a7e37,547,860", - "\u00a7bCrops/m: \u00a7e38.29", - "\u00a7bFarm: \u00a7e12\u00a77 [\u00a7e|||||||||||||||||\u00a78||||||||\u00a77] \u00a7e67%", - "\u00a7bCurrent XP: \u00a7e6,734", - "\u00a7bRemaining XP: \u00a7e3,265", - "\u00a7bXP/h: \u00a7e238,129", - "\u00a7bYaw: \u00a7e68.25\u00a7l\u1D52", - "\u00a7bETA: 13h12m"} - ) - public List farmingText = new ArrayList<>(Arrays.asList(0, 1, 2, 3, 4, 5, 7, 6)); - - @Expose - @ConfigOption( - name = "Farming Position", - desc = "Change the position of the Farming overlay" - ) - @ConfigEditorButton( - runnableId = 3, - buttonText = "Edit" - ) - public Position farmingPosition = new Position(10, 200); - - @Expose - @ConfigOption( - name = "Farming Style", - desc = "Change the style of the Farming overlay" - ) - @ConfigEditorDropdown( - values = {"Background", "No Shadow", "Shadow", "Full Shadow"} - ) - public int farmingStyle = 0; - } - - public static class Dungeons { - @ConfigOption( - name = "Dungeon Map", - desc = "" - ) - @ConfigEditorAccordion(id = 0) - public boolean dungeonMapAccordion = false; - - @Expose - @ConfigOption( - name = "Edit Dungeon Map", - desc = "The NEU dungeon map has it's own editor (/neumap).\n" + - "Click the button on the left to open it" - ) - @ConfigEditorButton( - runnableId = 0, - buttonText = "Edit" - ) - @ConfigAccordionId(id = 0) - public int editDungeonMap = 0; - - @Expose - @ConfigOption( - name = "Show Own Head As Marker", - desc = "If you have the \"Head\" icon style selected, don't replace your green marker with a head" - ) - @ConfigEditorBoolean - @ConfigAccordionId(id = 0) - public boolean showOwnHeadAsMarker = false; - - @ConfigOption( - name = "Dungeon Profit", - desc = "" - ) - @ConfigEditorAccordion(id = 1) - public boolean dungeonProfitAccordion = false; - - @Expose - @ConfigOption( - name = "Profit Type", - desc = "Set the price dataset used for calculating profit" - ) - @ConfigEditorDropdown( - values = {"Lowest BIN", "24 AVG Lowest Bin", "Auction AVG"} - ) - @ConfigAccordionId(id = 1) - public int profitType = 0; - - @Expose - @ConfigOption( - name = "Profit Display Location", - desc = "Set where the profit information is displayed\n" + - "Overlay = Overlay on right side of inventory\n" + - "GUI Title = Text displayed next to the inventory title\n" + - "Lore = Inside the \"Open Reward Chest\" item" - ) - @ConfigEditorDropdown( - values = {"Overlay", "GUI Title", "Lore", "Off"} - ) - @ConfigAccordionId(id = 1) - public int profitDisplayLoc = 0; - - - @ConfigOption( - name = "Dungeon Win Overlay", - desc = "" - ) - @ConfigEditorAccordion(id = 3) - public boolean dungeonWinAccordion = false; - - @Expose - @ConfigOption( - name = "Enable Dungeon Win", - desc = "Show a fancy win screen and stats when completing a dungeon" - ) - @ConfigEditorBoolean - @ConfigAccordionId(id = 3) - public boolean enableDungeonWin = true; - - @Expose - @ConfigOption( - name = "Dungeon Win Time", - desc = "Change the amount of time (milliseconds) that the win screen shows for" - ) - @ConfigEditorSlider( - minValue = 0, - maxValue = 20000, - minStep = 500 - ) - @ConfigAccordionId(id = 3) - public int dungeonWinMillis = 8000; - - @ConfigOption( - name = "Dungeon Block Overlay", - desc = "" - ) - @ConfigEditorAccordion(id = 2) - public boolean dungeonBlocksAccordion = false; - - @Expose - @ConfigOption( - name = "Enable Block Overlay", - desc = "Change the colour of certain blocks / entities while inside dungeons, but keeps the normal texture outside of dungeons" - ) - @ConfigEditorBoolean - @ConfigAccordionId(id = 2) - public boolean enableDungBlockOverlay = true; - - @Expose - @ConfigOption( - name = "Show Overlay Everywhere", - desc = "Show the dungeon block overlay even when not inside dungeons. Should only be used for testing." - ) - @ConfigEditorBoolean - @ConfigAccordionId(id = 2) - public boolean dungeonBlocksEverywhere = false; - - @Expose - @ConfigOption( - name = "Slow Update", - desc = "Updates the colour every second instead of every tick.\n" + - "\u00A7cWARNING: This will cause all texture animations (eg. flowing water) to update slowly.\n" + - "This should only be used on low-end machines" - ) - @ConfigEditorBoolean - @ConfigAccordionId(id = 2) - public boolean slowDungeonBlocks = false; - - @Expose - @ConfigOption( - name = "Cracked Bricks", - desc = "Change the colour of: Cracked Bricks" - ) - @ConfigEditorColour - @ConfigAccordionId(id = 2) - public String dungCrackedColour = "0:255:7:255:217"; - - @Expose - @ConfigOption( - name = "Dispensers", - desc = "Change the colour of: Dispensers" - ) - @ConfigEditorColour - @ConfigAccordionId(id = 2) - public String dungDispenserColour = "0:255:255:76:0"; - - @Expose - @ConfigOption( - name = "Levers", - desc = "Change the colour of: Levers" - ) - @ConfigEditorColour - @ConfigAccordionId(id = 2) - public String dungLeverColour = "0:252:24:249:255"; - - @Expose - @ConfigOption( - name = "Tripwire String", - desc = "Change the colour of: Tripwire String" - ) - @ConfigEditorColour - @ConfigAccordionId(id = 2) - public String dungTripWireColour = "0:255:255:0:0"; - - @Expose - @ConfigOption( - name = "Normal Chests", - desc = "Change the colour of: Normal Chests" - ) - @ConfigEditorColour - @ConfigAccordionId(id = 2) - public String dungChestColour = "0:255:0:163:36"; - - @Expose - @ConfigOption( - name = "Trapped Chests", - desc = "Change the colour of: Trapped Chests" - ) - @ConfigEditorColour - @ConfigAccordionId(id = 2) - public String dungTrappedChestColour = "0:255:0:163:36"; - - @Expose - @ConfigOption( - name = "Bats", - desc = "Change the colour of: Bats" - ) - @ConfigEditorColour - @ConfigAccordionId(id = 2) - public String dungBatColour = "0:255:12:255:0"; - } - - public static class MiscOverlays { - @ConfigOption( - name = "Todo Overlay", - desc = "" - ) - @ConfigEditorAccordion(id = 0) - public boolean todoAccordion = true; - - @Expose - @ConfigOption( - name = "Enable Todo Overlay", - desc = "Show an overlay that reminds you to do important tasks" - ) - @ConfigEditorBoolean - @ConfigAccordionId(id = 0) - public boolean todoOverlay = false; - - @Expose - @ConfigOption( - name = "Todo Text", - desc = "\u00a7eDrag text to change the appearance of the overlay\n" + - "\u00a7rIf you want to see the time until something is available, click \"Add\" and then the respective timer" - ) - @ConfigEditorDraggableList( - exampleText = { - "\u00a73Cakes: \u00a7e1d21h", - "\u00a73Cookie Buff: \u00a7e2d23h", - "\u00a73Godpot: \u00a7e19h", - "\u00a73Puzzler: \u00a7e13h", - "\u00a73Fetchur: \u00a7e3h38m", - "\u00a73Commissions: \u00a7e3h38m", - "\u00a73Experiments: \u00a7e3h38m"} - ) - @ConfigAccordionId(id = 0) - public List todoText = new ArrayList<>(Arrays.asList(0, 1, 2, 3, 4, 5, 6)); - - @ConfigOption( - name = "Show Only If Soon", - desc = "" - ) - @ConfigAccordionId(id = 0) - @ConfigEditorAccordion(id = 1) - public boolean TodoAccordion = false; - - @Expose - @ConfigOption( - name = "Experimentation Display", - desc = "Change the way the experimentation timer displays\n" + - "Only when ready, When very Soon, When soon, When kinda soon or always." - ) - @ConfigAccordionId(id =1) - @ConfigEditorDropdown( - values = {"Only when ready", "When very Soon", "When soon", "When Kinda Soon", "Always"} - ) - public int experimentationDisplay = 0; - - - @Expose - @ConfigOption( - name = "Puzzler Reset Display", - desc = "Change the way the puzzler reset timer displays\n" + - "Only when ready, When very Soon, When soon, When kinda soon or always." - ) - @ConfigAccordionId(id =1) - @ConfigEditorDropdown( - values = {"Only when ready", "When very Soon", "When soon", "When Kinda Soon", "Always"} - ) - public int puzzlerDisplay = 0; - - @Expose - @ConfigOption( - name = "Fetchur Reset Display", - desc = "Change the way the fetchur reset timer displays\n" + - "Only when ready, When very Soon, When soon, When kinda soon or always." - ) - @ConfigAccordionId(id =1) - @ConfigEditorDropdown( - values = {"Only when ready", "When very Soon", "When soon", "When Kinda Soon", "Always"} - ) - public int fetchurDisplay = 0; - - @Expose - @ConfigOption( - name = "Commission timer Display", - desc = "Change the way the Commission timer displays\n" + - "Only when ready, When very Soon, When soon, When kinda soon or always." - ) - @ConfigAccordionId(id =1) - @ConfigEditorDropdown( - values = {"Only when ready", "When very Soon", "When soon", "When Kinda Soon", "Always"} - ) - public int commissionDisplay = 0; - - @Expose - @ConfigOption( - name = "Cake Buff Display", - desc = "Change the way the cake buff timer displays\n" + - "Only when ready, When very Soon, When soon, When kinda soon or always." - ) - @ConfigAccordionId(id =1) - @ConfigEditorDropdown( - values = {"Only when ready", "When very Soon", "When soon", "When Kinda Soon", "Always"} - ) - public int cakesDisplay = 0; - - @Expose - @ConfigOption( - name = "Cookie Buff Display", - desc = "Change the way the cookie buff displays\n" + - "Only when ready, When very Soon, When soon, When kinda soon or always." - ) - @ConfigAccordionId(id =1) - @ConfigEditorDropdown( - values = {"Only when ready", "When very Soon", "When soon", "When Kinda Soon", "Always"} - ) - public int cookieBuffDisplay = 0; - - @Expose - @ConfigOption( - name = "God Pot Display", - desc = "Change the way the god pot displays\n" + - "Only when ready, When very Soon, When soon, When kinda soon or always." - ) - @ConfigAccordionId(id =1) - @ConfigEditorDropdown( - values = {"Only when ready", "When very Soon", "When soon", "When Kinda Soon", "Always"} - ) - public int godpotDisplay = 0; - - @ConfigOption( - name = "Colours", - desc = "" - ) - - @ConfigEditorAccordion(id = 2) - @ConfigAccordionId(id = 0) - public boolean TodoColourAccordion = false; - - @Expose - @ConfigOption( - name = "Ready colour", - desc = "Change the colour of when the timer is ready" - - ) - @ConfigEditorDropdown( - values = {"Black", "Dark Blue", "Dark Green", "Dark Aqua", "Dark Red", "Dark Purple", "Gold", "Gray", "Dark Gray", "Blue", "Green", "Aqua", "Red", "Light Purple", "Yellow", "White"} - ) - @ConfigEditorAccordion(id = 2) - public int readyColour = 0; - - @Expose - @ConfigOption( - name = "Gone colour", - desc = "Change the colour of when the timer is gone" - - ) - @ConfigEditorDropdown( - values = {"Black", "Dark Blue", "Dark Green", "Dark Aqua", "Dark Red", "Dark Purple", "Gold", "Gray", "Dark Gray", "Blue", "Green", "Aqua", "Red", "Light Purple", "Yellow", "White"} - ) - @ConfigEditorAccordion(id = 2) - public int goneColour = 0; - - @Expose - @ConfigOption( - name = "Very soon colour", - desc = "Change the colour of when the timer is almost ready/gone" - - ) - @ConfigEditorDropdown( - values = {"Black", "Dark Blue", "Dark Green", "Dark Aqua", "Dark Red", "Dark Purple", "Gold", "Gray", "Dark Gray", "Blue", "Green", "Aqua", "Red", "Light Purple", "Yellow", "White"} - ) - @ConfigEditorAccordion(id = 2) - public int verySoonColour = 0; - - @Expose - @ConfigOption( - name = "Soon Colour", - desc = "Change the colour of when the timer is soon ready/gone" - - ) - @ConfigEditorDropdown( - values = {"Black", "Dark Blue", "Dark Green", "Dark Aqua", "Dark Red", "Dark Purple", "Gold", "Gray", "Dark Gray", "Blue", "Green", "Aqua", "Red", "Light Purple", "Yellow", "White"} - ) - @ConfigEditorAccordion(id = 2) - public int soonColour = 0; - - @Expose - @ConfigOption( - name = "Kinda Soon Colour", - desc = "Change the colour of when the timer is kinda soon ready/gone" - - ) - @ConfigEditorDropdown( - values = {"Black", "Dark Blue", "Dark Green", "Dark Aqua", "Dark Red", "Dark Purple", "Gold", "Gray", "Dark Gray", "Blue", "Green", "Aqua", "Red", "Light Purple", "Yellow", "White"} - ) - @ConfigEditorAccordion(id = 2) - public int kindaSoonColour = 0; - - - @Expose - @ConfigOption( - name = "Default Colour", - desc = "Change the default colour of the timers" - - ) - - @ConfigEditorDropdown( - values = {"Black", "Dark Blue", "Dark Green", "Dark Aqua", "Dark Red", "Dark Purple", "Gold", "Gray", "Dark Gray", "Blue", "Green", "Aqua", "Red", "Light Purple", "Yellow", "White"} - ) - @ConfigEditorAccordion(id = 2) - public int defaultColour = 0; - - @Expose - @ConfigOption( - name = "Todo Position", - desc = "Change the position of the Todo overlay" - ) - @ConfigEditorButton( - runnableId = 5, - buttonText = "Edit" - ) - @ConfigAccordionId(id = 0) - public Position todoPosition = new Position(100, 0); - - - @Expose - @ConfigOption( - name = "Todo Style", - desc = "Change the style of the todo overlay" - ) - @ConfigEditorDropdown( - values = {"Background", "No Shadow", "Shadow", "Full Shadow"} - ) - @ConfigAccordionId(id = 0) - public int todoStyle = 0; - - @Expose - @ConfigOption( - name = "Todo Icons", - desc = "Add little item icons next to the lines in the todo overlay" - ) - @ConfigEditorBoolean - @ConfigAccordionId(id = 0) - public boolean todoIcons = true; - } - - public static class StorageGUI { - @ConfigOption( - name = "Storage Overlay", - desc = "" - ) - @ConfigEditorAccordion(id = 1) - public boolean storageOverlayAccordion = false; - - @Expose - @ConfigOption( - name = "Enable Storage GUI", - desc = "Show a custom storage overlay when accessing /storage." + - "Makes switching between pages much easier and also allows for searching through all storages" - ) - @ConfigEditorBoolean - @ConfigAccordionId(id = 1) - public boolean enableStorageGUI = false; - - @Expose - @ConfigOption( - name = "Storage Height", - desc = "Change the height of the storage preview section. Increasing this allows more storages to be seen at once" - ) - @ConfigEditorSlider( - minValue = 104, - maxValue = 312, - minStep = 26 - ) - @ConfigAccordionId(id = 1) - public int storageHeight = 208; - - @Expose - @ConfigOption( - name = "Storage Style", - desc = "Change the visual style of the overlay" - ) - @ConfigEditorDropdown( - values = {"Transparent", "Minecraft", "Dark", "Custom"} - ) - @ConfigAccordionId(id = 1) - public int displayStyle = 0; - - @Expose - @ConfigOption( - name = "Enderchest Preview", - desc = "Preview Enderchest pages when hovering over the selector on the left side" - ) - @ConfigEditorBoolean - @ConfigAccordionId(id = 1) - public boolean enderchestPreview = true; - - @Expose - @ConfigOption( - name = "Backpack Preview", - desc = "Preview Backpacks when hovering over the selector on the left side" - ) - @ConfigEditorBoolean - @ConfigAccordionId(id = 1) - public boolean backpackPreview = false; - - @Expose - @ConfigOption( - name = "Compact Vertically", - desc = "Remove the space between backpacks when there is a size discrepancy" - ) - @ConfigEditorBoolean - @ConfigAccordionId(id = 1) - public boolean masonryMode = false; - - @ConfigOption( - name = "Inventory Backpacks", - desc = "" - ) - @ConfigEditorAccordion(id = 0) - public boolean inventorySlotAccordion = false; - - @Expose - @ConfigOption( - name = "Inventory Backpacks", - desc = "Add a \"10th slot\" to your inventory which allows you to quickly access your backpacks" - ) - @ConfigEditorBoolean - @ConfigAccordionId(id = 0) - public boolean showInvBackpack = false; - - //public boolean showInvBackpack = false; - - @Expose - @ConfigOption( - name = "Backpack Side", - desc = "Set which side of the hotbar the backpack slot shows" - ) - @ConfigEditorDropdown( - values = {"Left", "Right"} - ) - @ConfigAccordionId(id = 0) - public int backpackHotbarSide = 0; - - @Expose - @ConfigOption( - name = "Backpack Peeking", - desc = "When the backpack is selected, show it's contents on your screen" - ) - @ConfigEditorBoolean - @ConfigAccordionId(id = 0) - public boolean showInvBackpackPreview = true; - - @Expose - @ConfigOption( - name = "Backpack Opacity%", - desc = "Change the opacity of the backpack preview background" - ) - @ConfigEditorSlider( - minValue = 0, - maxValue = 100, - minStep = 5 - ) - @ConfigAccordionId(id = 0) - public int backpackOpacity = 50; - - @Expose - @ConfigOption( - name = "Backpack Scroll Key", - desc = "Change the key which needs to be pressed in order to allow backpacks to be scrolled between" - ) - @ConfigEditorKeybind(defaultKey = Keyboard.KEY_LSHIFT) - @ConfigAccordionId(id = 0) - public int backpackScrollKey = Keyboard.KEY_LSHIFT; - - @Expose - @ConfigOption( - name = "Backpack Hotkey", - desc = "Hotkey to quickly switch to the backpack slot" - ) - @ConfigEditorKeybind(defaultKey = Keyboard.KEY_GRAVE) - @ConfigAccordionId(id = 0) - public int backpackHotkey = Keyboard.KEY_GRAVE; - - @Expose - @ConfigOption( - name = "Arrow Key Backpacks", - desc = "Use arrow keys [LEFT],[RIGHT] to move between backpacks and [DOWN] to navigate backpack even when the slot is not selected. Keys are customizable below" - ) - @ConfigEditorBoolean - @ConfigAccordionId(id = 0) - public boolean arrowKeyBackpacks = false; - - @ConfigOption( - name = "Arrow Key Backpack Keybinds", - desc = "" - ) - @ConfigEditorAccordion(id = 2) - @ConfigAccordionId(id = 0) - public boolean backpackArrowAccordion = false; - - @Expose - @ConfigOption( - name = "Backpack Left", - desc = "Select the backpack to the left" - ) - @ConfigEditorKeybind(defaultKey = Keyboard.KEY_LEFT) - @ConfigAccordionId(id = 2) - public int arrowLeftKey = Keyboard.KEY_LEFT; - - @Expose - @ConfigOption( - name = "Backpack Right", - desc = "Select the backpack to the right" - ) - @ConfigEditorKeybind(defaultKey = Keyboard.KEY_RIGHT) - @ConfigAccordionId(id = 2) - public int arrowRightKey = Keyboard.KEY_RIGHT; - - @Expose - @ConfigOption( - name = "Backpack Open", - desc = "Open the selected backpack" - ) - @ConfigEditorKeybind(defaultKey = Keyboard.KEY_DOWN) - @ConfigAccordionId(id = 2) - public int arrowDownKey = Keyboard.KEY_DOWN; - } - - public static class EnchSolvers { - @Expose - @ConfigOption( - name = "Enable Solvers", - desc = "Turn on solvers for the experimentation table" - ) - @ConfigEditorBoolean - public boolean enableEnchantingSolvers = true; - - /*@Expose - @ConfigOption( - name = "Prevent Misclicks", - desc = "Prevent accidentally failing the Chronomatron and Ultrasequencer experiments" - ) - @ConfigEditorBoolean - public boolean preventMisclicks = true;*/ - - @Expose - @ConfigOption( - name = "Hide Tooltips", - desc = "Hide the tooltip of items in the Chronomatron and Ultrasequencer experiments" - ) - @ConfigEditorBoolean - public boolean hideTooltips = true; - - @Expose - @ConfigOption( - name = "Ultrasequencer Numbers", - desc = "Replace the items in the supersequencer with only numbers" - ) - @ConfigEditorBoolean - public boolean seqNumbers = false; - - @Expose - @ConfigOption( - name = "Ultrasequencer Next", - desc = "Set the colour of the glass pane shown behind the element in the ultrasequencer which is next" - ) - @ConfigEditorDropdown( - values = {"None", "White", "Orange", "Light Purple", "Light Blue", "Yellow", "Light Green", "Pink", - "Gray", "Light Gray", "Cyan", "Dark Purple", "Dark Blue", "Brown", "Dark Green", "Red", "Black"} - ) - public int seqNext = 6; - - @Expose - @ConfigOption( - name = "Ultrasequencer Upcoming", - desc = "Set the colour of the glass pane shown behind the element in the ultrasequencer which is coming after \"next\"" - ) - @ConfigEditorDropdown( - values = {"None", "White", "Orange", "Light Purple", "Light Blue", "Yellow", "Light Green", "Pink", - "Gray", "Light Gray", "Cyan", "Dark Purple", "Dark Blue", "Brown", "Dark Green", "Red", "Black"} - ) - public int seqUpcoming = 5; - - @Expose - @ConfigOption( - name = "Superpairs Matched", - desc = "Set the colour of the glass pane shown behind successfully matched pairs" - ) - @ConfigEditorDropdown( - values = {"None", "White", "Orange", "Light Purple", "Light Blue", "Yellow", "Light Green", "Pink", - "Gray", "Light Gray", "Cyan", "Dark Purple", "Dark Blue", "Brown", "Dark Green", "Red", "Black"} - ) - public int supMatched = 6; - - @Expose - @ConfigOption( - name = "Superpairs Possible", - desc = "Set the colour of the glass pane shown behind pairs which can be matched, but have not yet" - ) - @ConfigEditorDropdown( - values = {"None", "White", "Orange", "Light Purple", "Light Blue", "Yellow", "Light Green", "Pink", - "Gray", "Light Gray", "Cyan", "Dark Purple", "Dark Blue", "Brown", "Dark Green", "Red", "Black"} - ) - public int supPossible = 2; - - @Expose - @ConfigOption( - name = "Superpairs Unmatched", - desc = "Set the colour of the glass pane shown behind pairs which have been previously uncovered" - ) - @ConfigEditorDropdown( - values = {"None", "White", "Orange", "Light Purple", "Light Blue", "Yellow", "Light Green", "Pink", - "Gray", "Light Gray", "Cyan", "Dark Purple", "Dark Blue", "Brown", "Dark Green", "Red", "Black"} - ) - public int supUnmatched = 5; - - @Expose - @ConfigOption( - name = "Superpairs Powerups", - desc = "Set the colour of the glass pane shown behind powerups" - ) - @ConfigEditorDropdown( - values = {"None", "White", "Orange", "Light Purple", "Light Blue", "Yellow", "Light Green", "Pink", - "Gray", "Light Gray", "Cyan", "Dark Purple", "Dark Blue", "Brown", "Dark Green", "Red", "Black"} - ) - public int supPower = 11; - } - - public static class Mining { - @ConfigOption( - name = "Waypoints", - desc = "" - ) - @ConfigEditorAccordion(id = 0) - public boolean waypointsAccordion = false; - - @Expose - @ConfigOption( - name = "Mines Waypoints", - desc = "Show waypoints in the Dwarven mines to the various locations\n" + - "Use \"Commissions Only\" to only show active commission locations" - ) - @ConfigEditorDropdown( - values = {"Hide", "Commissions Only", "Always"}, - initialIndex = 1 - ) - @ConfigAccordionId(id = 0) - public int locWaypoints = 1; - - @Expose - @ConfigOption( - name = "Emissary Waypoints", - desc = "Show waypoints in the Dwarven mines to emissaries\n" + - "Use \"Commission End\" to only show after finishing commissions" - ) - @ConfigEditorDropdown( - values = {"Hide", "Commission End", "Always"}, - initialIndex = 1 - ) - @ConfigAccordionId(id = 0) - public int emissaryWaypoints = 1; - - @ConfigOption( - name = "Drill Fuel Bar", - desc = "" - ) - @ConfigEditorAccordion(id = 1) - public boolean drillAccordion = false; - - @Expose - @ConfigOption( - name = "Drill Fuel Bar", - desc = "Show a fancy drill fuel bar when holding a drill in mining areas" - ) - @ConfigEditorBoolean - @ConfigAccordionId(id = 1) - public boolean drillFuelBar = true; - - @Expose - @ConfigOption( - name = "Fuel Bar Width", - desc = "Change the width of the drill fuel bar" - ) - @ConfigEditorSlider( - minValue = 50, - maxValue = 400, - minStep = 10 - ) - @ConfigAccordionId(id = 1) - public int drillFuelBarWidth = 200; - - @Expose - @ConfigOption( - name = "Fuel Bar Position", - desc = "Set the position of the drill fuel bar" - ) - @ConfigEditorButton( - runnableId = 2, - buttonText = "Edit" - ) - @ConfigAccordionId(id = 1) - public Position drillFuelBarPosition = new Position(0, -100, true, false); - - @ConfigOption( - name = "Dwarven Overlay", - desc = "" - ) - @ConfigEditorAccordion(id = 2) - public boolean overlayAccordion = false; - - @Expose - @ConfigOption( - name = "Dwarven Overlay", - desc = "Show an overlay with useful information on the screen while in Dwarven Mines" - ) - @ConfigEditorBoolean - @ConfigAccordionId(id = 2) - public boolean dwarvenOverlay = true; - - @Expose - @ConfigOption( - name = "Dwarven Text", - desc = "\u00a7eDrag text to change the appearance of the overlay\n" + - "\u00a7rGo to the Dwarven Mines to show this overlay with useful information" - ) - @ConfigEditorDraggableList( - exampleText = {"\u00a73Goblin Slayer: \u00a7626.5%\n\u00a73Lucky Raffle: \u00a7c0.0%", - "\u00a73Mithril Powder: \u00a726,243", - "\u00a73Forge 1) \u00a79Diamonite\u00a77: \u00a7aReady!", - "\u00a73Forge 2) \u00a77EMPTY\n\u00a73Forge 3) \u00a77EMPTY\n\u00a73Forge 4) \u00a77EMPTY", - "\u00a73Pickaxe CD: \u00a7a78s"} - ) - @ConfigAccordionId(id = 2) - public List dwarvenText = new ArrayList<>(Arrays.asList(0, 1, 4, 2, 3)); - - @Expose - @ConfigOption( - name = "Overlay Position", - desc = "Change the position of the Dwarven Mines information overlay (commisions, powder & forge statuses)" - ) - @ConfigEditorButton( - runnableId = 1, - buttonText = "Edit" - ) - @ConfigAccordionId(id = 2) - public Position overlayPosition = new Position(10, 100); - - @Expose - @ConfigOption( - name = "Overlay Style", - desc = "Change the style of the Dwarven Mines information overlay" - ) - @ConfigEditorDropdown( - values = {"Background", "No Shadow", "Shadow", "Full Shadow"} - ) - @ConfigAccordionId(id = 2) - public int overlayStyle = 0; - - @Expose - @ConfigOption( - name = "Puzzler Solver", - desc = "Show the correct block to mine for the puzzler puzzle in Dwarven Mines" - ) - @ConfigEditorBoolean - public boolean puzzlerSolver = true; - - @Expose - @ConfigOption( - name = "Titanium Alert", - desc = "Show an alert whenever titanium appears nearby" - ) - @ConfigEditorBoolean - public boolean titaniumAlert = true; - - - @Expose - @ConfigOption( - name = "Dwarven Mines Textures", - desc = "Allows texture packs to retexture blocks in the Dwarven Mines. If you don't have a texturepack that does this, you should leave this off" - ) - @ConfigEditorBoolean - public boolean dwarvenTextures = false; - - /*@Expose - @ConfigOption( - name = "Don't Mine Stone", - desc = "Prevent mining stone blocks in mining areas" - ) - @ConfigEditorBoolean - public boolean dontMineStone = true; - - @Expose - @ConfigOption( - name = "Reveal Mist Creepers", - desc = "Make the creepers in the Dwarven Mines mist visible" - ) - @ConfigEditorBoolean - public boolean revealMistCreepers = true;*/ - } - - public static class Fishing { - @Expose - @ConfigOption( - name = "Hide Other Players Fishing", - desc = "Convenience option to easily hide \u00a7lother players'\u00a7r bobbers, rod lines and fishing particles\n" + - "The advanced options below allow you to set the precise colour, particles, etc." - ) - @ConfigEditorBoolean - public boolean hideOtherPlayerAll = false; - - @ConfigOption( - name = "Incoming Fish Warning", - desc = "" - ) - @ConfigEditorAccordion(id = 3) - public boolean incomingFishAccordion = false; - - @Expose - @ConfigOption( - name = "Incoming Fish Warning", - desc = "Display a yellow '!' when a fish is incoming and a red '!' when you need to pull the fish up. " + - "The red '!' also takes your ping into account" - ) - @ConfigEditorBoolean - @ConfigAccordionId(id = 3) -