From ebdc4df69093d29c3334537f9267374773464a30 Mon Sep 17 00:00:00 2001 From: Walker Selby Date: Fri, 6 Oct 2023 06:09:41 +0100 Subject: Cleanup: Refactor for naming conventions (#856) --- .../dungeons/GuiDungeonMapEditor.java | 2 +- .../notenoughupdates/options/NEUConfig.java | 68 +- .../options/separatesections/AHGraph.java | 163 ++++ .../options/separatesections/AHTweaks.java | 149 ++++ .../options/separatesections/AccessoryBag.java | 34 + .../options/separatesections/ApiData.java | 146 ++++ .../options/separatesections/BazaarTweaks.java | 73 ++ .../options/separatesections/Calendar.java | 72 ++ .../options/separatesections/CustomArmour.java | 56 ++ .../options/separatesections/DungeonMapConfig.java | 161 ++++ .../options/separatesections/Dungeons.java | 295 +++++++ .../options/separatesections/Enchanting.java | 242 ++++++ .../options/separatesections/Fishing.java | 301 +++++++ .../options/separatesections/Garden.java | 42 + .../options/separatesections/ImprovedSBMenu.java | 69 ++ .../options/separatesections/InventoryButtons.java | 67 ++ .../options/separatesections/ItemOverlays.java | 489 ++++++++++++ .../options/separatesections/Itemlist.java | 152 ++++ .../options/separatesections/LocationEdit.java | 85 ++ .../options/separatesections/Mining.java | 885 +++++++++++++++++++++ .../options/separatesections/MinionHelper.java | 45 ++ .../options/separatesections/Misc.java | 328 ++++++++ .../options/separatesections/MiscOverlays.java | 469 +++++++++++ .../options/separatesections/Museum.java | 64 ++ .../options/separatesections/Notifications.java | 131 +++ .../options/separatesections/PetOverlay.java | 141 ++++ .../options/separatesections/ProfileViewer.java | 104 +++ .../options/separatesections/SkillOverlays.java | 409 ++++++++++ .../options/separatesections/SlayerOverlay.java | 89 +++ .../options/separatesections/SlotLocking.java | 112 +++ .../options/separatesections/StorageGUI.java | 311 ++++++++ .../options/separatesections/Toolbar.java | 144 ++++ .../options/separatesections/TooltipTweaks.java | 354 +++++++++ .../options/separatesections/TradeMenu.java | 45 ++ .../options/separatesections/WardrobeKeybinds.java | 153 ++++ .../options/separatesections/WorldConfig.java | 134 ++++ .../options/seperateSections/AHGraph.java | 163 ---- .../options/seperateSections/AHTweaks.java | 149 ---- .../options/seperateSections/AccessoryBag.java | 34 - .../options/seperateSections/ApiData.java | 146 ---- .../options/seperateSections/BazaarTweaks.java | 73 -- .../options/seperateSections/Calendar.java | 72 -- .../options/seperateSections/CustomArmour.java | 56 -- .../options/seperateSections/DungeonMapConfig.java | 161 ---- .../options/seperateSections/Dungeons.java | 295 ------- .../options/seperateSections/Enchanting.java | 242 ------ .../options/seperateSections/Fishing.java | 301 ------- .../options/seperateSections/Garden.java | 42 - .../options/seperateSections/ImprovedSBMenu.java | 69 -- .../options/seperateSections/InventoryButtons.java | 67 -- .../options/seperateSections/ItemOverlays.java | 489 ------------ .../options/seperateSections/Itemlist.java | 152 ---- .../options/seperateSections/LocationEdit.java | 85 -- .../options/seperateSections/Mining.java | 885 --------------------- .../options/seperateSections/MinionHelper.java | 45 -- .../options/seperateSections/Misc.java | 328 -------- .../options/seperateSections/MiscOverlays.java | 469 ----------- .../options/seperateSections/Museum.java | 64 -- .../options/seperateSections/Notifications.java | 131 --- .../options/seperateSections/PetOverlay.java | 141 ---- .../options/seperateSections/ProfileViewer.java | 104 --- .../options/seperateSections/SkillOverlays.java | 409 ---------- .../options/seperateSections/SlayerOverlay.java | 89 --- .../options/seperateSections/SlotLocking.java | 112 --- .../options/seperateSections/StorageGUI.java | 311 -------- .../options/seperateSections/Toolbar.java | 144 ---- .../options/seperateSections/TooltipTweaks.java | 354 --------- .../options/seperateSections/TradeMenu.java | 45 -- .../options/seperateSections/WardrobeKeybinds.java | 153 ---- .../options/seperateSections/WorldConfig.java | 134 ---- .../inventory/MuseumCheapestItemOverlay.kt | 2 +- 71 files changed, 6550 insertions(+), 6550 deletions(-) create mode 100644 src/main/java/io/github/moulberry/notenoughupdates/options/separatesections/AHGraph.java create mode 100644 src/main/java/io/github/moulberry/notenoughupdates/options/separatesections/AHTweaks.java create mode 100644 src/main/java/io/github/moulberry/notenoughupdates/options/separatesections/AccessoryBag.java create mode 100644 src/main/java/io/github/moulberry/notenoughupdates/options/separatesections/ApiData.java create mode 100644 src/main/java/io/github/moulberry/notenoughupdates/options/separatesections/BazaarTweaks.java create mode 100644 src/main/java/io/github/moulberry/notenoughupdates/options/separatesections/Calendar.java create mode 100644 src/main/java/io/github/moulberry/notenoughupdates/options/separatesections/CustomArmour.java create mode 100644 src/main/java/io/github/moulberry/notenoughupdates/options/separatesections/DungeonMapConfig.java create mode 100644 src/main/java/io/github/moulberry/notenoughupdates/options/separatesections/Dungeons.java create mode 100644 src/main/java/io/github/moulberry/notenoughupdates/options/separatesections/Enchanting.java create mode 100644 src/main/java/io/github/moulberry/notenoughupdates/options/separatesections/Fishing.java create mode 100644 src/main/java/io/github/moulberry/notenoughupdates/options/separatesections/Garden.java create mode 100644 src/main/java/io/github/moulberry/notenoughupdates/options/separatesections/ImprovedSBMenu.java create mode 100644 src/main/java/io/github/moulberry/notenoughupdates/options/separatesections/InventoryButtons.java create mode 100644 src/main/java/io/github/moulberry/notenoughupdates/options/separatesections/ItemOverlays.java create mode 100644 src/main/java/io/github/moulberry/notenoughupdates/options/separatesections/Itemlist.java create mode 100644 src/main/java/io/github/moulberry/notenoughupdates/options/separatesections/LocationEdit.java create mode 100644 src/main/java/io/github/moulberry/notenoughupdates/options/separatesections/Mining.java create mode 100644 src/main/java/io/github/moulberry/notenoughupdates/options/separatesections/MinionHelper.java create mode 100644 src/main/java/io/github/moulberry/notenoughupdates/options/separatesections/Misc.java create mode 100644 src/main/java/io/github/moulberry/notenoughupdates/options/separatesections/MiscOverlays.java create mode 100644 src/main/java/io/github/moulberry/notenoughupdates/options/separatesections/Museum.java create mode 100644 src/main/java/io/github/moulberry/notenoughupdates/options/separatesections/Notifications.java create mode 100644 src/main/java/io/github/moulberry/notenoughupdates/options/separatesections/PetOverlay.java create mode 100644 src/main/java/io/github/moulberry/notenoughupdates/options/separatesections/ProfileViewer.java create mode 100644 src/main/java/io/github/moulberry/notenoughupdates/options/separatesections/SkillOverlays.java create mode 100644 src/main/java/io/github/moulberry/notenoughupdates/options/separatesections/SlayerOverlay.java create mode 100644 src/main/java/io/github/moulberry/notenoughupdates/options/separatesections/SlotLocking.java create mode 100644 src/main/java/io/github/moulberry/notenoughupdates/options/separatesections/StorageGUI.java create mode 100644 src/main/java/io/github/moulberry/notenoughupdates/options/separatesections/Toolbar.java create mode 100644 src/main/java/io/github/moulberry/notenoughupdates/options/separatesections/TooltipTweaks.java create mode 100644 src/main/java/io/github/moulberry/notenoughupdates/options/separatesections/TradeMenu.java create mode 100644 src/main/java/io/github/moulberry/notenoughupdates/options/separatesections/WardrobeKeybinds.java create mode 100644 src/main/java/io/github/moulberry/notenoughupdates/options/separatesections/WorldConfig.java delete mode 100644 src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/AHGraph.java delete mode 100644 src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/AHTweaks.java delete mode 100644 src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/AccessoryBag.java delete mode 100644 src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/ApiData.java delete mode 100644 src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/BazaarTweaks.java delete mode 100644 src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/Calendar.java delete mode 100644 src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/CustomArmour.java delete mode 100644 src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/DungeonMapConfig.java delete mode 100644 src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/Dungeons.java delete mode 100644 src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/Enchanting.java delete mode 100644 src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/Fishing.java delete mode 100644 src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/Garden.java delete mode 100644 src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/ImprovedSBMenu.java delete mode 100644 src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/InventoryButtons.java delete mode 100644 src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/ItemOverlays.java delete mode 100644 src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/Itemlist.java delete mode 100644 src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/LocationEdit.java delete mode 100644 src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/Mining.java delete mode 100644 src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/MinionHelper.java delete mode 100644 src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/Misc.java delete mode 100644 src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/MiscOverlays.java delete mode 100644 src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/Museum.java delete mode 100644 src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/Notifications.java delete mode 100644 src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/PetOverlay.java delete mode 100644 src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/ProfileViewer.java delete mode 100644 src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/SkillOverlays.java delete mode 100644 src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/SlayerOverlay.java delete mode 100644 src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/SlotLocking.java delete mode 100644 src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/StorageGUI.java delete mode 100644 src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/Toolbar.java delete mode 100644 src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/TooltipTweaks.java delete mode 100644 src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/TradeMenu.java delete mode 100644 src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/WardrobeKeybinds.java delete mode 100644 src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/WorldConfig.java (limited to 'src') diff --git a/src/main/java/io/github/moulberry/notenoughupdates/dungeons/GuiDungeonMapEditor.java b/src/main/java/io/github/moulberry/notenoughupdates/dungeons/GuiDungeonMapEditor.java index d08f3c07..dbbf2c5c 100644 --- a/src/main/java/io/github/moulberry/notenoughupdates/dungeons/GuiDungeonMapEditor.java +++ b/src/main/java/io/github/moulberry/notenoughupdates/dungeons/GuiDungeonMapEditor.java @@ -29,7 +29,7 @@ import io.github.moulberry.notenoughupdates.core.config.GuiPositionEditorButForT import io.github.moulberry.notenoughupdates.core.util.render.RenderUtils; import io.github.moulberry.notenoughupdates.core.util.render.TextRenderUtils; import io.github.moulberry.notenoughupdates.itemeditor.GuiElementTextField; -import io.github.moulberry.notenoughupdates.options.seperateSections.DungeonMapConfig; +import io.github.moulberry.notenoughupdates.options.separatesections.DungeonMapConfig; import io.github.moulberry.notenoughupdates.util.SpecialColour; import io.github.moulberry.notenoughupdates.util.Utils; import net.minecraft.client.Minecraft; 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 ea3b55bb..2d64db59 100644 --- a/src/main/java/io/github/moulberry/notenoughupdates/options/NEUConfig.java +++ b/src/main/java/io/github/moulberry/notenoughupdates/options/NEUConfig.java @@ -36,40 +36,40 @@ 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.options.customtypes.NEUDebugFlag; -import io.github.moulberry.notenoughupdates.options.seperateSections.AHGraph; -import io.github.moulberry.notenoughupdates.options.seperateSections.AHTweaks; -import io.github.moulberry.notenoughupdates.options.seperateSections.AccessoryBag; -import io.github.moulberry.notenoughupdates.options.seperateSections.ApiData; -import io.github.moulberry.notenoughupdates.options.seperateSections.BazaarTweaks; -import io.github.moulberry.notenoughupdates.options.seperateSections.Calendar; -import io.github.moulberry.notenoughupdates.options.seperateSections.CustomArmour; -import io.github.moulberry.notenoughupdates.options.seperateSections.DungeonMapConfig; -import io.github.moulberry.notenoughupdates.options.seperateSections.Dungeons; -import io.github.moulberry.notenoughupdates.options.seperateSections.Enchanting; -import io.github.moulberry.notenoughupdates.options.seperateSections.Fishing; -import io.github.moulberry.notenoughupdates.options.seperateSections.Garden; -import io.github.moulberry.notenoughupdates.options.seperateSections.ImprovedSBMenu; -import io.github.moulberry.notenoughupdates.options.seperateSections.InventoryButtons; -import io.github.moulberry.notenoughupdates.options.seperateSections.ItemOverlays; -import io.github.moulberry.notenoughupdates.options.seperateSections.Itemlist; -import io.github.moulberry.notenoughupdates.options.seperateSections.LocationEdit; -import io.github.moulberry.notenoughupdates.options.seperateSections.Mining; -import io.github.moulberry.notenoughupdates.options.seperateSections.MinionHelper; -import io.github.moulberry.notenoughupdates.options.seperateSections.Misc; -import io.github.moulberry.notenoughupdates.options.seperateSections.MiscOverlays; -import io.github.moulberry.notenoughupdates.options.seperateSections.Museum; -import io.github.moulberry.notenoughupdates.options.seperateSections.Notifications; -import io.github.moulberry.notenoughupdates.options.seperateSections.PetOverlay; -import io.github.moulberry.notenoughupdates.options.seperateSections.ProfileViewer; -import io.github.moulberry.notenoughupdates.options.seperateSections.SkillOverlays; -import io.github.moulberry.notenoughupdates.options.seperateSections.SlayerOverlay; -import io.github.moulberry.notenoughupdates.options.seperateSections.SlotLocking; -import io.github.moulberry.notenoughupdates.options.seperateSections.StorageGUI; -import io.github.moulberry.notenoughupdates.options.seperateSections.Toolbar; -import io.github.moulberry.notenoughupdates.options.seperateSections.TooltipTweaks; -import io.github.moulberry.notenoughupdates.options.seperateSections.TradeMenu; -import io.github.moulberry.notenoughupdates.options.seperateSections.WardrobeKeybinds; -import io.github.moulberry.notenoughupdates.options.seperateSections.WorldConfig; +import io.github.moulberry.notenoughupdates.options.separatesections.AHGraph; +import io.github.moulberry.notenoughupdates.options.separatesections.AHTweaks; +import io.github.moulberry.notenoughupdates.options.separatesections.AccessoryBag; +import io.github.moulberry.notenoughupdates.options.separatesections.ApiData; +import io.github.moulberry.notenoughupdates.options.separatesections.BazaarTweaks; +import io.github.moulberry.notenoughupdates.options.separatesections.Calendar; +import io.github.moulberry.notenoughupdates.options.separatesections.CustomArmour; +import io.github.moulberry.notenoughupdates.options.separatesections.DungeonMapConfig; +import io.github.moulberry.notenoughupdates.options.separatesections.Dungeons; +import io.github.moulberry.notenoughupdates.options.separatesections.Enchanting; +import io.github.moulberry.notenoughupdates.options.separatesections.Fishing; +import io.github.moulberry.notenoughupdates.options.separatesections.Garden; +import io.github.moulberry.notenoughupdates.options.separatesections.ImprovedSBMenu; +import io.github.moulberry.notenoughupdates.options.separatesections.InventoryButtons; +import io.github.moulberry.notenoughupdates.options.separatesections.ItemOverlays; +import io.github.moulberry.notenoughupdates.options.separatesections.Itemlist; +import io.github.moulberry.notenoughupdates.options.separatesections.LocationEdit; +import io.github.moulberry.notenoughupdates.options.separatesections.Mining; +import io.github.moulberry.notenoughupdates.options.separatesections.MinionHelper; +import io.github.moulberry.notenoughupdates.options.separatesections.Misc; +import io.github.moulberry.notenoughupdates.options.separatesections.MiscOverlays; +import io.github.moulberry.notenoughupdates.options.separatesections.Museum; +import io.github.moulberry.notenoughupdates.options.separatesections.Notifications; +import io.github.moulberry.notenoughupdates.options.separatesections.PetOverlay; +import io.github.moulberry.notenoughupdates.options.separatesections.ProfileViewer; +import io.github.moulberry.notenoughupdates.options.separatesections.SkillOverlays; +import io.github.moulberry.notenoughupdates.options.separatesections.SlayerOverlay; +import io.github.moulberry.notenoughupdates.options.separatesections.SlotLocking; +import io.github.moulberry.notenoughupdates.options.separatesections.StorageGUI; +import io.github.moulberry.notenoughupdates.options.separatesections.Toolbar; +import io.github.moulberry.notenoughupdates.options.separatesections.TooltipTweaks; +import io.github.moulberry.notenoughupdates.options.separatesections.TradeMenu; +import io.github.moulberry.notenoughupdates.options.separatesections.WardrobeKeybinds; +import io.github.moulberry.notenoughupdates.options.separatesections.WorldConfig; import io.github.moulberry.notenoughupdates.overlays.MiningOverlay; import io.github.moulberry.notenoughupdates.overlays.OverlayManager; import io.github.moulberry.notenoughupdates.overlays.TextOverlay; diff --git a/src/main/java/io/github/moulberry/notenoughupdates/options/separatesections/AHGraph.java b/src/main/java/io/github/moulberry/notenoughupdates/options/separatesections/AHGraph.java new file mode 100644 index 00000000..efebe915 --- /dev/null +++ b/src/main/java/io/github/moulberry/notenoughupdates/options/separatesections/AHGraph.java @@ -0,0 +1,163 @@ +/* + * Copyright (C) 2022 NotEnoughUpdates contributors + * + * This file is part of NotEnoughUpdates. + * + * NotEnoughUpdates is free software: you can redistribute it + * and/or modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation, either + * version 3 of the License, or (at your option) any later version. + * + * NotEnoughUpdates is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public License + * along with NotEnoughUpdates. If not, see . + */ + +package io.github.moulberry.notenoughupdates.options.separatesections; + +import com.google.gson.annotations.Expose; +import io.github.moulberry.moulconfig.annotations.ConfigEditorBoolean; +import io.github.moulberry.moulconfig.annotations.ConfigEditorColour; +import io.github.moulberry.moulconfig.annotations.ConfigEditorDropdown; +import io.github.moulberry.moulconfig.annotations.ConfigEditorKeybind; +import io.github.moulberry.moulconfig.annotations.ConfigEditorSlider; +import io.github.moulberry.moulconfig.annotations.ConfigEditorText; +import io.github.moulberry.moulconfig.annotations.ConfigOption; +import org.lwjgl.input.Keyboard; + +public class AHGraph { + @Expose + @ConfigOption( + name = "Enable AH/BZ Price Graph", + desc = "Enable or disable the graph." + ) + @ConfigEditorBoolean + public boolean graphEnabled = true; + + @Expose + @ConfigOption( + name = "Keybind", + desc = "Key to press to open the graph." + ) + @ConfigEditorKeybind(defaultKey = Keyboard.KEY_P) + public int graphKey = Keyboard.KEY_P; + + @Expose + @ConfigOption( + name = "GUI Style", + desc = "Change the style of the graph GUI" + ) + @ConfigEditorDropdown( + values = {"Minecraft", "Grey", "PacksHQ Dark", "FSR"} + ) + public int graphStyle = 0; + + @Expose + @ConfigOption( + name = "Default Time", + desc = "Change the default time period for the graph." + ) + @ConfigEditorDropdown( + values = {"1 Hour", "1 Day", "1 Week", "All Time"} + ) + public int defaultMode = 1; + + @Expose + @ConfigOption( + name = "Graph Colour", + desc = "Set a custom colour for the graph." + ) + @ConfigEditorColour + public String graphColor = "0:255:0:255:0"; + + @Expose + @ConfigOption( + name = "Secondary Graph Colour", + desc = "Set a custom colour for the second graph line." + ) + @ConfigEditorColour + public String graphColor2 = "0:255:255:255:0"; + + @Expose + @ConfigOption( + name = "Moving Average", + desc = "Whether the graph should have a moving average line or not." + ) + @ConfigEditorBoolean + public boolean movingAverages = false; + // Disabled by default because it looks weird to people who don't know what it is + + @Expose + @ConfigOption( + name = "Moving Average Size (%)", + desc = "The percent of the time displayed that should be averaged." + ) + @ConfigEditorSlider( + minValue = 0.05f, + maxValue = 0.5f, + minStep = 0.05f + ) + public double movingAveragePercent = 0.2; + + @Expose + @ConfigOption( + name = "Moving Average Colour", + desc = "Set a custom colour for the graph's moving average line." + ) + @ConfigEditorColour + public String movingAverageColor = "0:255:0:255:171"; + + @Expose + @ConfigOption( + name = "Secondary Moving Average Colour", + desc = "Set a custom colour for the second graph's secondary moving average line line." + ) + @ConfigEditorColour + public String movingAverageColor2 = "0:255:255:109:0"; + + @Expose + @ConfigOption( + name = "Data Source", + desc = "Where NEU should get the data for the graph.\nPrices are only stored locally if this is set to 'Local'." + ) + @ConfigEditorDropdown( + values = {"Server", "Local"} + ) + public int dataSource = 0; + + @Expose + @ConfigOption( + name = "Price History API", + desc = "§4Do §lNOT §r§4change this, unless you know exactly what you are doing\n§fDefault: §apricehistory.notenoughupdates.org" + ) + @ConfigEditorText + public String serverUrl = "pricehistory.notenoughupdates.org"; + + @Expose + @ConfigOption( + name = "Data Retention", + desc = "Change the time (in days) that data is kept for.\nLonger retention require more storage." + ) + @ConfigEditorSlider( + minValue = 1, + maxValue = 30, + minStep = 1 + ) + public int dataRetention = 7; + + @Expose + @ConfigOption( + name = "Number of Graph Zones", + desc = "Change the number of graph zones.\nHigher numbers will have more detail, but will look way more cramped." + ) + @ConfigEditorSlider( + minValue = 50, + maxValue = 300, + minStep = 1 + ) + public int graphZones = 175; +} diff --git a/src/main/java/io/github/moulberry/notenoughupdates/options/separatesections/AHTweaks.java b/src/main/java/io/github/moulberry/notenoughupdates/options/separatesections/AHTweaks.java new file mode 100644 index 00000000..c1297175 --- /dev/null +++ b/src/main/java/io/github/moulberry/notenoughupdates/options/separatesections/AHTweaks.java @@ -0,0 +1,149 @@ +/* + * Copyright (C) 2022 NotEnoughUpdates contributors + * + * This file is part of NotEnoughUpdates. + * + * NotEnoughUpdates is free software: you can redistribute it + * and/or modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation, either + * version 3 of the License, or (at your option) any later version. + * + * NotEnoughUpdates is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public License + * along with NotEnoughUpdates. If not, see . + */ + +package io.github.moulberry.notenoughupdates.options.separatesections; + +import com.google.gson.annotations.Expose; +import io.github.moulberry.moulconfig.annotations.ConfigAccordionId; +import io.github.moulberry.moulconfig.annotations.ConfigEditorAccordion; +import io.github.moulberry.moulconfig.annotations.ConfigEditorBoolean; +import io.github.moulberry.moulconfig.annotations.ConfigEditorSlider; +import io.github.moulberry.moulconfig.annotations.ConfigOption; + +public class AHTweaks { + @ConfigOption( + name = "Search GUI", + desc = "" + ) + @ConfigEditorAccordion(id = 0) + public boolean searchAccordion = false; + + @Expose + @ConfigOption( + name = "Enable Search GUI", + desc = "Use the advanced search GUI with autocomplete and history instead of the normal sign GUI\n\u00a7eStar Selection Texture: Johnny#4567" + ) + @ConfigEditorBoolean + @ConfigAccordionId(id = 0) + public boolean enableSearchOverlay = true; + + @Expose + @ConfigOption( + name = "Keep Previous Search", + desc = "Don't clear the search bar after closing the GUI" + ) + @ConfigEditorBoolean + @ConfigAccordionId(id = 0) + public boolean keepPreviousSearch = false; + + @Expose + @ConfigOption( + name = "Past Searches", + desc = "Show past searches below the autocomplete box" + ) + @ConfigEditorBoolean + @ConfigAccordionId(id = 0) + public boolean showPastSearches = true; + + @Expose + @ConfigOption( + name = "ESC to Full Close", + desc = "Make pressing ESCAPE close the search GUI without opening up the AH again\n" + + "ENTER can still be used to search" + ) + @ConfigEditorBoolean + @ConfigAccordionId(id = 0) + public boolean escFullClose = true; + + @ConfigOption( + name = "BIN Warning", + desc = "" + ) + @ConfigEditorAccordion(id = 1) + public boolean binWarningAccordion = false; + + @Expose + @ConfigOption( + name = "Enable Undercut BIN Warning", + desc = "Ask for confirmation when BINing an item for below X% of lowest bin" + ) + @ConfigEditorBoolean + @ConfigAccordionId(id = 1) + public boolean underCutWarning = true; + + @Expose + @ConfigOption( + name = "Enable Overcut BIN Warning", + desc = "Ask for confirmation when BINing an item for over X% of lowest bin" + ) + @ConfigEditorBoolean + @ConfigAccordionId(id = 1) + public boolean overCutWarning = true; + + @Expose + @ConfigOption( + name = "Undercut Warning Threshold", + desc = "Threshold for BIN warning\nExample: 10% means warn if sell price is 10% lower than lowest bin" + ) + @ConfigEditorSlider( + minValue = 0.0f, + maxValue = 100.0f, + minStep = 5f + ) + @ConfigAccordionId(id = 1) + public float warningThreshold = 10f; + + @Expose + @ConfigOption( + name = "Overcut Warning Threshold", + desc = "Threshold for BIN warning\nExample: 50% means warn if sell price is 50% higher than lowest bin\n\u00A7c\u00a7lWARNING: \u00A7r\u00A7c100% will if above lbin always trigger, 0% instead will never trigger" + ) + @ConfigEditorSlider( + minValue = 0.0f, + maxValue = 100.0f, + minStep = 5f + ) + @ConfigAccordionId(id = 1) + public float overcutWarningThreshold = 50f; + + @ConfigOption( + name = "Sort Warning", + desc = "" + ) + @ConfigEditorAccordion(id = 2) + public boolean sortWarningAccordion = false; + + @Expose + @ConfigOption( + name = "Enable Sort Warning", + desc = "Show the sort mode when the mode is not 'Lowest Price'" + ) + @ConfigEditorBoolean + @ConfigAccordionId(id = 2) + public boolean enableSortWarning = true; + + @Expose + @ConfigOption( + name = "Enable AH Sell Value", + desc = "Display profit information (coins to collect, value if all sold, expired and unclaimed auctions)" + ) + @ConfigEditorBoolean + public boolean enableAhSellValue = true; + +} diff --git a/src/main/java/io/github/moulberry/notenoughupdates/options/separatesections/AccessoryBag.java b/src/main/java/io/github/moulberry/notenoughupdates/options/separatesections/AccessoryBag.java new file mode 100644 index 00000000..16dc5faf --- /dev/null +++ b/src/main/java/io/github/moulberry/notenoughupdates/options/separatesections/AccessoryBag.java @@ -0,0 +1,34 @@ +/* + * Copyright (C) 2022 NotEnoughUpdates contributors + * + * This file is part of NotEnoughUpdates. + * + * NotEnoughUpdates is free software: you can redistribute it + * and/or modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation, either + * version 3 of the License, or (at your option) any later version. + * + * NotEnoughUpdates is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public License + * along with NotEnoughUpdates. If not, see . + */ + +package io.github.moulberry.notenoughupdates.options.separatesections; + +import com.google.gson.annotations.Expose; +import io.github.moulberry.moulconfig.annotations.ConfigEditorBoolean; +import io.github.moulberry.moulconfig.annotations.ConfigOption; + +public class AccessoryBag { + @Expose + @ConfigOption( + name = "Enable Accessory Bag Overlay", + desc = "Show an overlay on the accessory bag screen which gives useful information about your accessories" + ) + @ConfigEditorBoolean + public boolean enableOverlay = true; +} diff --git a/src/main/java/io/github/moulberry/notenoughupdates/options/separatesections/ApiData.java b/src/main/java/io/github/moulberry/notenoughupdates/options/separatesections/ApiData.java new file mode 100644 index 00000000..2266f9e4 --- /dev/null +++ b/src/main/java/io/github/moulberry/notenoughupdates/options/separatesections/ApiData.java @@ -0,0 +1,146 @@ +/* + * Copyright (C) 2022-2023 NotEnoughUpdates contributors + * + * This file is part of NotEnoughUpdates. + * + * NotEnoughUpdates is free software: you can redistribute it + * and/or modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation, either + * version 3 of the License, or (at your option) any later version. + * + * NotEnoughUpdates is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public License + * along with NotEnoughUpdates. If not, see . + */ + +package io.github.moulberry.notenoughupdates.options.separatesections; + +import com.google.gson.annotations.Expose; +import io.github.moulberry.moulconfig.annotations.ConfigAccordionId; +import io.github.moulberry.moulconfig.annotations.ConfigEditorAccordion; +import io.github.moulberry.moulconfig.annotations.ConfigEditorBoolean; +import io.github.moulberry.moulconfig.annotations.ConfigEditorButton; +import io.github.moulberry.moulconfig.annotations.ConfigEditorText; +import io.github.moulberry.moulconfig.annotations.ConfigOption; + +public class ApiData { + + @Expose + @ConfigOption( + name = "Unlock the API data tab", + desc = "If you turn this off, you will need to re-do the IQ test" + ) + @ConfigEditorBoolean + public boolean apiDataUnlocked = false; + + @Expose + @ConfigOption( + name = "Api Key", + desc = "Hypixel API key." + ) + @ConfigEditorText + public String apiKey = ""; + + @ConfigEditorAccordion(id = 0) + @ConfigOption(name = "Repository", desc = "") + public boolean repository = false; + + @Expose + @ConfigOption( + name = "Automatically Update Repository", + desc = "Update the repository on every startup" + ) + @ConfigEditorBoolean() + @ConfigAccordionId(id = 0) + public boolean autoupdate_new = true; + + @ConfigAccordionId(id = 0) + @ConfigOption( + name = "Update Repository now", + desc = "Refresh your repository" + ) + @ConfigEditorButton(runnableId = 22, buttonText = "Update") + public int updateRepositoryButton = 0; + + @ConfigEditorAccordion(id = 1) + @ConfigAccordionId(id = 0) + @ConfigOption( + name = "Repository Location", + desc = "" + ) + public boolean repositoryLocation = false; + + @ConfigAccordionId(id = 1) + @ConfigOption( + name = "Use default repository", + desc = "The latest, most up to date item list for the official NEU releases." + ) + @ConfigEditorButton(runnableId = 23, buttonText = "Reset") + public int setRepositoryToDefaultButton = 0; + + @Expose + @ConfigAccordionId(id = 1) + @ConfigOption( + name = "Repository User", + desc = "Repository User" + ) + @ConfigEditorText + public String repoUser = "NotEnoughUpdates"; + + @Expose + @ConfigAccordionId(id = 1) + @ConfigOption( + name = "Repository Name", + desc = "Repository Name" + ) + @ConfigEditorText + public String repoName = "NotEnoughUpdates-REPO"; + + @Expose + @ConfigAccordionId(id = 1) + @ConfigOption( + name = "Repository Branch", + desc = "Repository Branch" + ) + @ConfigEditorText + public String repoBranch = "master"; + + @Expose + @ConfigAccordionId(id = 0) + @ConfigOption( + name = "Edit Mode", + desc = "Enables you to edit items in the item list.\n§4Recommended for repository maintainers only.\n§4§lRemember: §rTurn off auto update as well" + ) + @ConfigEditorBoolean + public boolean repositoryEditing = false; + + @Expose + @ConfigOption( + name = "Lowestbin API", + desc = "§4Do §lNOT §r§4change this, unless you know exactly what you are doing\n§fDefault: §amoulberry.codes" + ) + @ConfigEditorText + public String moulberryCodesApi = "moulberry.codes"; + + + @Expose + @ConfigOption( + name = "Ursa Minor Proxy", + desc = "§4Do §lNOT §r§4change this, unless you know exactly what you are doing" + ) + @ConfigEditorText + public String ursaApi = "https://ursa.notenoughupdates.org/"; + + public String getCommitApiUrl() { + return String.format("https://api.github.com/repos/%s/%s/commits/%s", repoUser, repoName, repoBranch); + } + + public String getDownloadUrl(String commitId) { + return String.format("https://github.com/%s/%s/archive/%s.zip", repoUser, repoName, commitId); + } + +} diff --git a/src/main/java/io/github/moulberry/notenoughupdates/options/separatesections/BazaarTweaks.java b/src/main/java/io/github/moulberry/notenoughupdates/options/separatesections/BazaarTweaks.java new file mode 100644 index 00000000..254d0c2e --- /dev/null +++ b/src/main/java/io/github/moulberry/notenoughupdates/options/separatesections/BazaarTweaks.java @@ -0,0 +1,73 @@ +/* + * Copyright (C) 2022 NotEnoughUpdates contributors + * + * This file is part of NotEnoughUpdates. + * + * NotEnoughUpdates is free software: you can redistribute it + * and/or modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation, either + * version 3 of the License, or (at your option) any later version. + * + * NotEnoughUpdates is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public License + * along with NotEnoughUpdates. If not, see . + */ + +package io.github.moulberry.notenoughupdates.options.separatesections; + +import com.google.gson.annotations.Expose; +import io.github.moulberry.moulconfig.annotations.ConfigAccordionId; +import io.github.moulberry.moulconfig.annotations.ConfigEditorAccordion; +import io.github.moulberry.moulconfig.annotations.ConfigEditorBoolean; +import io.github.moulberry.moulconfig.annotations.ConfigOption; + +public class BazaarTweaks { + + @ConfigOption( + name = "Search GUI", + desc = "" + ) + @ConfigEditorAccordion(id = 0) + public boolean searchAccordion = false; + + @Expose + @ConfigOption( + name = "Enable Search GUI", + desc = "Use the advanced search GUI with autocomplete and history instead of the normal sign GUI" + ) + @ConfigEditorBoolean + @ConfigAccordionId(id = 0) + public boolean enableSearchOverlay = true; + + @Expose + @ConfigOption( + name = "Keep Previous Search", + desc = "Don't clear the search bar after closing the GUI" + ) + @ConfigEditorBoolean + @ConfigAccordionId(id = 0) + public boolean keepPreviousSearch = false; + + @Expose + @ConfigOption( + name = "Past Searches", + desc = "Show past searches below the autocomplete box" + ) + @ConfigEditorBoolean + @ConfigAccordionId(id = 0) + public boolean showPastSearches = true; + + @Expose + @ConfigOption( + name = "ESC to Full Close", + desc = "Make pressing ESCAPE close the search GUI without opening up the Bazaar again\n" + + "ENTER can still be used to search" + ) + @ConfigEditorBoolean + @ConfigAccordionId(id = 0) + public boolean escFullClose = true; +} diff --git a/src/main/java/io/github/moulberry/notenoughupdates/options/separatesections/Calendar.java b/src/main/java/io/github/moulberry/notenoughupdates/options/separatesections/Calendar.java new file mode 100644 index 00000000..173aa9c6 --- /dev/null +++ b/src/main/java/io/github/moulberry/notenoughupdates/options/separatesections/Calendar.java @@ -0,0 +1,72 @@ +/* + * Copyright (C) 2022 NotEnoughUpdates contributors + * + * This file is part of NotEnoughUpdates. + * + * NotEnoughUpdates is free software: you can redistribute it + * and/or modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation, either + * version 3 of the License, or (at your option) any later version. + * + * NotEnoughUpdates is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public License + * along with NotEnoughUpdates. If not, see . + */ + +package io.github.moulberry.notenoughupdates.options.separatesections; + +import com.google.gson.annotations.Expose; +import io.github.moulberry.moulconfig.annotations.ConfigEditorBoolean; +import io.github.moulberry.moulconfig.annotations.ConfigEditorSlider; +import io.github.moulberry.moulconfig.annotations.ConfigOption; + +public class Calendar { + @Expose + @ConfigOption( + name = "Event Notifications", + desc = "Display notifications for SkyBlock calendar events" + ) + @ConfigEditorBoolean + public boolean eventNotifications = true; + + @Expose + @ConfigOption( + name = "Starting Soon Time", + desc = "Display a notification before events start, time in seconds.\n" + + "0 = No prior notification" + ) + @ConfigEditorSlider( + minValue = 0f, + maxValue = 600f, + minStep = 30f + ) + public int startingSoonTime = 300; + + @Expose + @ConfigOption( + name = "Timer In Inventory", + desc = "Displays the time until the next event at the top of your screen when in inventories" + ) + @ConfigEditorBoolean + public boolean showEventTimerInInventory = true; + + @Expose + @ConfigOption( + name = "Notification Sounds", + desc = "Play a sound whenever events start" + ) + @ConfigEditorBoolean + public boolean eventNotificationSounds = true; + + @Expose + @ConfigOption( + name = "Spooky Night Notification", + desc = "Send a notification during spooky event when the time reaches 7pm" + ) + @ConfigEditorBoolean + public boolean spookyNightNotification = true; +} diff --git a/src/main/java/io/github/moulberry/notenoughupdates/options/separatesections/CustomArmour.java b/src/main/java/io/github/moulberry/notenoughupdates/options/separatesections/CustomArmour.java new file mode 100644 index 00000000..82f32e2d --- /dev/null +++ b/src/main/java/io/github/moulberry/notenoughupdates/options/separatesections/CustomArmour.java @@ -0,0 +1,56 @@ +/* + * Copyright (C) 2022 NotEnoughUpdates contributors + * + * This file is part of NotEnoughUpdates. + * + * NotEnoughUpdates is free software: you can redistribute it + * and/or modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation, either + * version 3 of the License, or (at your option) any later version. + * + * NotEnoughUpdates is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public License + * along with NotEnoughUpdates. If not, see . + */ + +package io.github.moulberry.notenoughupdates.options.separatesections; + +import com.google.gson.annotations.Expose; +import io.github.moulberry.moulconfig.annotations.ConfigEditorBoolean; +import io.github.moulberry.moulconfig.annotations.ConfigEditorDropdown; +import io.github.moulberry.moulconfig.annotations.ConfigOption; + +public class CustomArmour { + + @Expose + @ConfigOption( + name = "Enable Equipment Hud", + desc = "Shows an overlay in your inventory showing your 4 extra armour slots\n" + + "\u00A7cRequires Hide Potion Effects to be enabled" + ) + @ConfigEditorBoolean + public boolean enableArmourHud = true; + + @Expose + @ConfigOption( + name = "Click To Open Equipment Menu", + desc = "Click on the hud to open /equipment" + ) + @ConfigEditorBoolean + public boolean sendWardrobeCommand = true; + + @Expose + @ConfigOption( + name = "GUI Style", + desc = "Change the colour of the GUI" + ) + @ConfigEditorDropdown( + values = {"Minecraft", "Grey", "PacksHQ Dark", "Transparent", "FSR"} + ) + public int colourStyle = 0; + +} diff --git a/src/main/java/io/github/moulberry/notenoughupdates/options/separatesections/DungeonMapConfig.java b/src/main/java/io/github/moulberry/notenoughupdates/options/separatesections/DungeonMapConfig.java new file mode 100644 index 00000000..03579dd4 --- /dev/null +++ b/src/main/java/io/github/moulberry/notenoughupdates/options/separatesections/DungeonMapConfig.java @@ -0,0 +1,161 @@ +/* + * Copyright (C) 2022 NotEnoughUpdates contributors + * + * This file is part of NotEnoughUpdates. + * + * NotEnoughUpdates is free software: you can redistribute it + * and/or modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation, either + * version 3 of the License, or (at your option) any later version. + * + * NotEnoughUpdates is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public License + * along with NotEnoughUpdates. If not, see . + */ + +package io.github.moulberry.notenoughupdates.options.separatesections; + +import com.google.gson.annotations.Expose; +import io.github.moulberry.notenoughupdates.core.config.Position; +import io.github.moulberry.moulconfig.annotations.ConfigEditorSlider; +import io.github.moulberry.moulconfig.annotations.ConfigOption; + +public class DungeonMapConfig { + @Expose + @ConfigOption( + name = "Border Size", + desc = "Changes the size of the map border, without changing the size of the contents" + ) + @ConfigEditorSlider( + minValue = 0, + maxValue = 5, + minStep = 0.25f + ) + public float dmBorderSize = 1; + + @Expose + @ConfigOption( + name = "Room Size", + desc = "Changes the size of rooms. Useful for higher dungeons with larger maps" + ) + @ConfigEditorSlider( + minValue = 0, + maxValue = 5, + minStep = 0.25f + ) + public float dmRoomSize = 1; + + @Expose + @ConfigOption( + name = "Icon Size", + desc = "Changes the scale of room indicators and player icons" + ) + @ConfigEditorSlider( + minValue = 0.5f, + maxValue = 3f, + minStep = 0.25f + ) + public float dmIconScale = 1.0f; + + @Expose + @ConfigOption( + name = "Border Style", + desc = "Various custom borders from various talented artists.\nUse 'custom' if your texture pack has a custom border" + ) + public int dmBorderStyle = 0; + + @Expose + @ConfigOption( + name = "Show Dungeon Map", + desc = "Show/hide the NEU dungeon map" + ) + public boolean dmEnable = true; + + @Expose + @ConfigOption( + name = "Map Center", + desc = "Center on rooms, or center on your player" + ) + public boolean dmCenterPlayer = true; + + @Expose + @ConfigOption( + name = "Rotate with Player", + desc = "Rotate the map to face the same direction as your player" + ) + public boolean dmRotatePlayer = true; + + @Expose + @ConfigOption( + name = "Orient Checkmarks", + desc = "Checkmarks will always show vertically, regardless of rotation" + ) + public boolean dmOrientCheck = true; + + @Expose + @ConfigOption( + name = "Center Checkmarks", + desc = "Checkmarks will show closer to the center of rooms" + ) + public boolean dmCenterCheck = false; + + @Expose + @ConfigOption( + name = "Player Icon Style", + desc = "Various player icon styles" + ) + public int dmPlayerHeads = 0; + + @Expose + @ConfigOption( + name = "Interpolate Far Players", + desc = "Will make players far away move smoothly" + ) + public boolean dmPlayerInterp = true; + + @Expose + @ConfigOption( + name = "OpenGL Compatibility", + desc = "Compatiblity options for people with bad computers. ONLY use this if you know what you are doing, otherwise the map will look worse" + ) + public int dmCompat = 0; + + @Expose + @ConfigOption( + name = "Background Colour", + desc = "Colour of the map background. Supports opacity & chroma" + ) + public String dmBackgroundColour = "00:170:75:75:75"; + + @Expose + @ConfigOption( + name = "Border Colour", + desc = "Colour of the map border. Supports opacity & chroma. Turn off custom borders to see" + ) + public String dmBorderColour = "00:0:0:0:0"; + + @Expose + @ConfigOption( + name = "Chroma Border Mode", + desc = "Applies a hue offset around the map border" + ) + public boolean dmChromaBorder = false; + + @Expose + @ConfigOption( + name = "Background Blur Factor", + desc = "Changes the blur factor behind the map. Set to 0 to disable blur" + ) + public float dmBackgroundBlur = 0; + + @Expose + @ConfigOption( + name = "Position", + desc = "Change the position of the map" + ) + public Position dmPosition = new Position(10, 10); +} diff --git a/src/main/java/io/github/moulberry/notenoughupdates/options/separatesections/Dungeons.java b/src/main/java/io/github/moulberry/notenoughupdates/options/separatesections/Dungeons.java new file mode 100644 index 00000000..4ea94f1d --- /dev/null +++ b/src/main/java/io/github/moulberry/notenoughupdates/options/separatesections/Dungeons.java @@ -0,0 +1,295 @@ +/* + * Copyright (C) 2022 NotEnoughUpdates contributors + * + * This file is part of NotEnoughUpdates. + * + * NotEnoughUpdates is free software: you can redistribute it + * and/or modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation, either + * version 3 of the License, or (at your option) any later version. + * + * NotEnoughUpdates is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public License + * along with NotEnoughUpdates. If not, see . + */ + +package io.github.moulberry.notenoughupdates.options.separatesections; + +import com.google.gson.annotations.Expose; +import io.github.moulberry.moulconfig.annotations.ConfigAccordionId; +import io.github.moulberry.moulconfig.annotations.ConfigEditorAccordion; +import io.github.moulberry.moulconfig.annotations.ConfigEditorBoolean; +import io.github.moulberry.moulconfig.annotations.ConfigEditorButton; +import io.github.moulberry.moulconfig.annotations.ConfigEditorColour; +import io.github.moulberry.moulconfig.annotations.ConfigEditorDropdown; +import io.github.moulberry.moulconfig.annotations.ConfigEditorInfoText; +import io.github.moulberry.moulconfig.annotations.ConfigEditorSlider; +import io.github.moulberry.moulconfig.annotations.ConfigOption; + +public 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 its 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; + + @Expose + @ConfigOption( + name = "Include Kismet Feather", + desc = "Include Kismet Feathers in the Profit Calculation after rerolling" + ) + @ConfigEditorBoolean + @ConfigAccordionId(id = 1) + public boolean useKismetOnDungeonProfit = true; + + @Expose + @ConfigOption( + name = "Include Essence Cost", + desc = "Include Bazaar Essence Sell Cost in the Profit Calculation for Dungeon Chests" + ) + @ConfigEditorBoolean + @ConfigAccordionId(id = 1) + public boolean useEssenceCostFromBazaar = true; + + @Expose + @ConfigOption( + name = "Warning if Derpy active", + desc = "Shows a warning if the mayor Derpy is active" + ) + @ConfigEditorBoolean + @ConfigAccordionId(id = 1) + public boolean shouldWarningDerpy = true; + + @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; + + @ConfigOption( + name = "\u00A7cWarning", + desc = "You need Fast Render and Antialiasing off for these settings to work\n" + + "You can find these in your video settings" + ) + @ConfigEditorInfoText() + @ConfigAccordionId(id = 2) + public boolean dungeonBlockWarning = 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"; + + @ConfigOption( + name = "Croesus Overlay", + desc = "" + ) + @ConfigEditorAccordion(id = 4) + public boolean croesusAccordion = false; + + @Expose + @ConfigOption( + name = "Enable Croesus Overlay", + desc = "Shows a profit overlay next to your inventory when viewing chest previews at the Croesus NPC" + ) + @ConfigEditorBoolean + @ConfigAccordionId(id = 4) + public boolean croesusProfitOverlay = true; + + @Expose + @ConfigOption( + name = "Sort by profit", + desc = "Lists the chest by profit (descending)" + ) + @ConfigEditorBoolean + @ConfigAccordionId(id = 4) + public boolean croesusSortByProfit = true; + + @Expose + @ConfigOption( + name = "Highlight highest profit", + desc = "Highlight the chest which has the most profit" + ) + @ConfigEditorBoolean + @ConfigAccordionId(id = 4) + public boolean croesusHighlightHighestProfit = true; + +} diff --git a/src/main/java/io/github/moulberry/notenoughupdates/options/separatesections/Enchanting.java b/src/main/java/io/github/moulberry/notenoughupdates/options/separatesections/Enchanting.java new file mode 100644 index 00000000..41aec9ca --- /dev/null +++ b/src/main/java/io/github/moulberry/notenoughupdates/options/separatesections/Enchanting.java @@ -0,0 +1,242 @@ +/* + * Copyright (C) 2022 NotEnoughUpdates contributors + * + * This file is part of NotEnoughUpdates. + * + * NotEnoughUpdates is free software: you can redistribute it + * and/or modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation, either + * version 3 of the License, or (at your option) any later version. + * + * NotEnoughUpdates is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public License + * along with NotEnoughUpdates. If not, see . + */ + +package io.github.moulberry.notenoughupdates.options.separatesections; + +import com.google.gson.annotations.Expose; +import io.github.moulberry.moulconfig.annotations.ConfigAccordionId; +import io.github.moulberry.moulconfig.annotations.ConfigEditorAccordion; +import io.github.moulberry.moulconfig.annotations.ConfigEditorBoolean; +import io.github.moulberry.moulconfig.annotations.ConfigEditorDropdown; +import io.github.moulberry.moulconfig.annotations.ConfigOption; + +public class Enchanting { + @ConfigOption( + name = "Enchant Table / Hex GUI", + desc = "" + ) + @ConfigEditorAccordion(id = 1) + public boolean tableGUIAccordion = false; + + @Expose + @ConfigOption( + name = "Enable Enchant Table GUI", + desc = "Show a custom GUI when using the Enchant Table" + ) + @ConfigEditorBoolean + @ConfigAccordionId(id = 1) + public boolean enableTableGUI = true; + + @Expose + @ConfigOption( + name = "Enable Hex GUI", + desc = "Show a custom GUI when using the Hex" + ) + @ConfigEditorBoolean + @ConfigAccordionId(id = 1) + public boolean enableHexGUI = true; + + /*@Expose + @ConfigOption( + name = "Incompatible Enchants", + desc = "How to display enchants that are incompatible with your current item, eg. Smite on a sword with Sharpness" + ) + @ConfigEditorDropdown( + values = {"Highlight", "Hide"} + ) + @ConfigAccordionId(id = 1) + public int incompatibleEnchants = 0;*/ + + @Expose + @ConfigOption( + name = "Enchant Sorting", + desc = "Change the method of sorting enchants in the GUI" + ) + @ConfigEditorDropdown( + values = {"By Cost", "Alphabetical"} + ) + @ConfigAccordionId(id = 1) + public int enchantSorting = 0; + + @Expose + @ConfigOption( + name = "Enchant Ordering", + desc = "Change the method of ordering used by the sort" + ) + @ConfigEditorDropdown( + values = {"Ascending", "Descending"} + ) + @ConfigAccordionId(id = 1) + public int enchantOrdering = 0; + + @Expose + @ConfigOption( + name = "Use highest level from /et in /hex", + desc = "Show max level from /et in hex instead of highest possible" + ) + @ConfigEditorBoolean() + @ConfigAccordionId(id = 1) + public boolean maxEnchLevel = false; + + @ConfigOption( + name = "Enchanting Solvers", + desc = "" + ) + @ConfigEditorAccordion(id = 0) + public boolean enchantingSolversAccordion = false; + + @Expose + @ConfigOption( + name = "Enable Solvers", + desc = "Turn on solvers for the experimentation table" + ) + @ConfigEditorBoolean + @ConfigAccordionId(id = 0) + public boolean enableEnchantingSolvers = true; + //In an email from Donpireso (admin) he says not sending a packet at all isn't bannable + //https://cdn.discordapp.com/attachments/823769568933576764/906101631861526559/unknown.png + @Expose + @ConfigOption( + name = "Prevent Misclicks", + desc = "Prevent accidentally failing the Chronomatron and Ultrasequencer experiments" + ) + @ConfigEditorBoolean + @ConfigAccordionId(id = 0) + public boolean preventMisclicks1 = false; + + @Expose + @ConfigOption( + name = "Hide Tooltips", + desc = "Hide the tooltip of items in the Chronomatron and Ultrasequencer experiments" + ) + @ConfigEditorBoolean + @ConfigAccordionId(id = 0) + public boolean hideTooltips = true; + + @Expose + @ConfigOption( + name = "Ultrasequencer Numbers", + desc = "Replace the items in the Ultrasequencer with only numbers" + ) + @ConfigEditorBoolean + @ConfigAccordionId(id = 0) + public boolean seqNumbers = false; + + @Expose + @ConfigOption( + name = "Show Next Click In Chronomatron", + desc = "Shows what block you need to click next in Chronomatron" + ) + @ConfigEditorBoolean + @ConfigAccordionId(id = 0) + public boolean showNextClick = true; + + @Expose + @ConfigOption( + name = "Hide Buttons", + desc = "Hide Inventory Buttons and Quick Commands while in the experimentation table" + ) + @ConfigEditorBoolean + @ConfigAccordionId(id = 0) + public boolean hideButtons = 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" + } + ) + @ConfigAccordionId(id = 0) + 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" + } + ) + @ConfigAccordionId(id = 0) + 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" + } + ) + @ConfigAccordionId(id = 0) + 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" + } + ) + @ConfigAccordionId(id = 0) + 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" + } + ) + @ConfigAccordionId(id = 0) + 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" + } + ) + @ConfigAccordionId(id = 0) + public int supPower = 11; +} diff --git a/src/main/java/io/github/moulberry/notenoughupdates/options/separatesections/Fishing.java b/src/main/java/io/github/moulberry/notenoughupdates/options/separatesections/Fishing.java new file mode 100644 index 00000000..fe34c428 --- /dev/null +++ b/src/main/java/io/github/moulberry/notenoughupdates/options/separatesections/Fishing.java @@ -0,0 +1,301 @@ +/* + * Copyright (C) 2022 NotEnoughUpdates contributors + * + * This file is part of NotEnoughUpdates. + * + * NotEnoughUpdates is free software: you can redistribute it + * and/or modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation, either + * version 3 of the License, or (at your option) any later version. + * + * NotEnoughUpdates is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public License + * along with NotEnoughUpdates. If not, see . + */ + +package io.github.moulberry.notenoughupdates.options.separatesections; + +import com.google.gson.annotations.Expose; +import io.github.moulberry.moulconfig.annotations.ConfigAccordionId; +import io.github.moulberry.moulconfig.annotations.ConfigEditorAccordion; +import io.github.moulberry.moulconfig.annotations.ConfigEditorBoolean; +import io.github.moulberry.moulconfig.annotations.ConfigEditorColour; +import io.github.moulberry.moulconfig.annotations.ConfigEditorDropdown; +import io.github.moulberry.moulconfig.annotations.ConfigEditorSlider; +import io.github.moulberry.moulconfig.annotations.ConfigOption; + +public 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 = "Enable Fish Warning (R)", + desc = "Display a red '!' when you need to pull the fish up. The warning takes your ping into account" + ) + @ConfigEditorBoolean + @ConfigAccordionId(id = 3) + public boolean incomingFishWarningR = true; + + @Expose + @ConfigOption( + name = "Enable Fish Warning (Y)", + desc = "Display a yellow '!' when a fish is approaching your bobber" + ) + @ConfigEditorBoolean + @ConfigAccordionId(id = 3) + public boolean incomingFishWarning = true; + + @Expose + @ConfigOption( + name = "Enable Hooked Sound", + desc = "Play a high-pitched ding sound when the '!' turns red" + ) + @ConfigEditorBoolean + @ConfigAccordionId(id = 3) + public boolean incomingFishHookedSounds = true; + + @Expose + @ConfigOption( + name = "Enable Approach Sound", + desc = "Play low-pitched ding sounds while the yellow '!' is visible" + ) + @ConfigEditorBoolean + @ConfigAccordionId(id = 3) + public boolean incomingFishIncSounds = false; + + @ConfigOption( + name = "Volumes", + desc = "" + ) + @ConfigAccordionId(id = 3) + @ConfigEditorAccordion(id = 5) + public boolean incomingFishVolumeAccordion = false; + + @Expose + @ConfigOption( + name = "Hooked Sound Vol.", + desc = "Set the volume of the hooked sound" + ) + @ConfigEditorSlider( + minValue = 0, + maxValue = 100, + minStep = 1 + ) + @ConfigAccordionId(id = 5) + public float incomingFishHookedSoundsVol = 25; + + @Expose + @ConfigOption( + name = "Approach Sound Vol.", + desc = "Set the volume of the approaching sound" + ) + @ConfigEditorSlider( + minValue = 0, + maxValue = 100, + minStep = 1 + ) + @ConfigAccordionId(id = 5) + public float incomingFishIncSoundsVol = 10; + + @ConfigOption( + name = "Fishing Particles", + desc = "" + ) + @ConfigEditorAccordion(id = 0) + public boolean particleAccordion = false; + + @Expose + @ConfigOption( + name = "Enable Custom Particles", + desc = "Allow you to modify the particles that appear when a fish is incoming for you and other players" + ) + @ConfigEditorBoolean + @ConfigAccordionId(id = 0) + public boolean enableCustomParticles = false; + + @ConfigOption( + name = "Your Particles", + desc = "" + ) + @ConfigEditorAccordion(id = 1) + @ConfigAccordionId(id = 0) + public boolean yourParticlesAccordion = false; + + @Expose + @ConfigOption( + name = "Particle Type", + desc = "Change the type of the particle that is spawned\n" + + "Particle types with (RGB) support custom colours\n" + + "Set to 'NONE' to disable particles" + ) + @ConfigEditorDropdown( + values = {"Default", "None", "Spark (RGB)", "Swirl (RGB)", "Dust (RGB)", "Flame", "Crit", "Magic Crit"} + ) + @ConfigAccordionId(id = 1) + public int yourParticleType = 0; + + @Expose + @ConfigOption( + name = "Custom Colour", + desc = "Set a custom colour for the particle\n" + + "Only works for particle types with (RGB)" + ) + @ConfigEditorColour + @ConfigAccordionId(id = 1) + public String yourParticleColour = "0:255:255:255:255"; + + @ConfigOption( + name = "Other Players' Particles", + desc = "" + ) + @ConfigEditorAccordion(id = 2) + @ConfigAccordionId(id = 0) + public boolean otherParticlesAccordion = false; + + @Expose + @ConfigOption( + name = "Particle Type", + desc = "Change the type of the particle that is spawned\n" + + "Particle types with (RGB) support custom colours\n" + + "Set to 'NONE' to disable particles" + ) + @ConfigEditorDropdown( + values = {"Default", "None", "Spark (RGB)", "Swirl (RGB)", "Dust (RGB)", "Flame", "Crit", "Magic Crit"} + ) + @ConfigAccordionId(id = 2) + public int otherParticleType = 0; + + @Expose + @ConfigOption( + name = "Custom Colour", + desc = "Set a custom colour for the particle\n" + + "Only works for particle types with (RGB)" + ) + @ConfigEditorColour + @ConfigAccordionId(id = 2) + public String otherParticleColour = "0:255:255:255:255"; + + @ConfigOption( + name = "Rod Line Colours", + desc = "" + ) + @ConfigEditorAccordion(id = 4) + public boolean rodAccordion = false; + + @Expose + @ConfigOption( + name = "Enable Rod Line Colours", + desc = "Change the colour of your and other players' rod lines\n" + + "Also fixes the position of the rod line" + ) + @ConfigEditorBoolean + @ConfigAccordionId(id = 4) + public boolean enableRodColours = true; + + @Expose + @ConfigOption( + name = "Own Rod Colour", + desc = "Change the colour of your own rod lines\n" + + "You can set the opacity to '0' to HIDE" + ) + @ConfigEditorColour + @ConfigAccordionId(id = 4) + public String ownRodColour = "0:255:0:0:0"; + + @Expose + @ConfigOption( + name = "Other Rod Colour", + desc = "Change the colour of other players' rod lines\n" + + "You can set the opacity to '0' to HIDE" + ) + @ConfigEditorColour + @ConfigAccordionId(id = 4) + public String otherRodColour = "0:255:0:0:0"; + + @ConfigOption( + name = "Fishing Timer", + desc = "" + ) + @ConfigEditorAccordion(id = 6) + public boolean fishingAccordion = false; + + @Expose + @ConfigOption( + name = "Display a Fishing Timer", + desc = "Display a timer above your bobber showing your current time" + ) + @ConfigEditorBoolean + @ConfigAccordionId(id = 6) + public boolean fishingTimer = false; + + @Expose + @ConfigOption( + name = "Fishing timer colour", + desc = "Colour of the fishing timer" + ) + @ConfigEditorColour + @ConfigAccordionId(id = 6) + public String fishingTimerColor = "0:255:0:0:0"; + + @Expose + @ConfigOption( + name = "Fishing timer colour (20s)", + desc = "Colour of the fishing timer after 20 seconds or more have passed" + ) + @ConfigEditorColour + @ConfigAccordionId(id = 6) + public String fishingTimerColor30SecPlus = "0:255:0:0:0"; + + @Expose + @ConfigOption( + name = "Fishing timer ping (20s)", + desc = "Play a sound after 20 seconds passed" + ) + @ConfigEditorBoolean + @ConfigAccordionId(id = 6) + public boolean fishingSound30Sec = true; + + @ConfigOption( + name = "Trophy Reward", + desc = "" + ) + @ConfigEditorAccordion(id = 7) + public boolean trophyReward = false; + + @Expose + @ConfigOption( + name = "Trophy Reward Overlay", + desc = "Displays an overlay at Odger that shows information about your trophies" + ) + @ConfigEditorBoolean + @ConfigAccordionId(id = 7) + public boolean trophyRewardOverlay = true; + + @Expose + @ConfigOption( + name = "Trophy Reward Tooltips", + desc = "Displays the exchange of your trophies as a tooltip in the Odger Inventory" + ) + @ConfigEditorBoolean + @ConfigAccordionId(id = 7) + public boolean trophyRewardTooltips = true; + +} diff --git a/src/main/java/io/github/moulberry/notenoughupdates/options/separatesections/Garden.java b/src/main/java/io/github/moulberry/notenoughupdates/options/separatesections/Garden.java new file mode 100644 index 00000000..77c40a30 --- /dev/null +++ b/src/main/java/io/github/moulberry/notenoughupdates/options/separatesections/Garden.java @@ -0,0 +1,42 @@ +/* + * Copyright (C) 2022 NotEnoughUpdates contributors + * + * This file is part of NotEnoughUpdates. + * + * NotEnoughUpdates is free software: you can redistribute it + * and/or modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation, either + * version 3 of the License, or (at your option) any later version. + * + * NotEnoughUpdates is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public License + * along with NotEnoughUpdates. If not, see . + */ + +package io.github.moulberry.notenoughupdates.options.separatesections; + +import com.google.gson.annotations.Expose; +import io.github.moulberry.moulconfig.annotations.ConfigEditorBoolean; +import io.github.moulberry.moulconfig.annotations.ConfigOption; + +public class Garden { + @Expose + @ConfigOption( + name = "Mute Composter", + desc = "Mute sounds of composting" + ) + @ConfigEditorBoolean + public boolean muteComposterSounds = false; + + @Expose + @ConfigOption( + name = "Enable Preset Delete Warning", + desc = "Asks for confirmation when deleting a preset" + ) + @ConfigEditorBoolean + public boolean presetDeleteWarning = true; +} diff --git a/src/main/java/io/github/moulberry/notenoughupdates/options/separatesections/ImprovedSBMenu.java b/src/main/java/io/github/moulberry/notenoughupdates/options/separatesections/ImprovedSBMenu.java new file mode 100644 index 00000000..544383fc --- /dev/null +++ b/src/main/java/io/github/moulberry/notenoughupdates/options/separatesections/ImprovedSBMenu.java @@ -0,0 +1,69 @@ +/* + * Copyright (C) 2022 NotEnoughUpdates contributors + * + * This file is part of NotEnoughUpdates. + * + * NotEnoughUpdates is free software: you can redistribute it + * and/or modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation, either + * version 3 of the License, or (at your option) any later version. + * + * NotEnoughUpdates is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public License + * along with NotEnoughUpdates. If not, see . + */ + +package io.github.moulberry.notenoughupdates.options.separatesections; + +import com.google.gson.annotations.Expose; +import io.github.moulberry.moulconfig.annotations.ConfigEditorBoolean; +import io.github.moulberry.moulconfig.annotations.ConfigEditorDropdown; +import io.github.moulberry.moulconfig.annotations.ConfigOption; + +public class ImprovedSBMenu { + @Expose + @ConfigOption( + name = "Enable Improved SB Menus", + desc = "Change the way that SkyBlock menus (eg. /sbmenu) look" + ) + @ConfigEditorBoolean + public boolean enableSbMenus = true; + + @Expose + @ConfigOption( + name = "Menu Background Style", + desc = "Change the style of the background of SkyBlock menus" + ) + @ConfigEditorDropdown( + values = { + "Dark 1", "Dark 2", "Transparent", "Light 1", "Light 2", "Light 3", + "Unused 1", "Unused 2", "Unused 3", "Unused 4" + } + ) + public int backgroundStyle = 0; + + @Expose + @ConfigOption( + name = "Button Background Style", + desc = "Change the style of the foreground elements in SkyBlock menus" + ) + @ConfigEditorDropdown( + values = { + "Dark 1", "Dark 2", "Transparent", "Light 1", "Light 2", "Light 3", + "Unused 1", "Unused 2", "Unused 3", "Unused 4" + } + ) + public int buttonStyle = 0; + + @Expose + @ConfigOption( + name = "Hide Empty Tooltips", + desc = "Hide the tooltips of glass panes with no text" + ) + @ConfigEditorBoolean + public boolean hideEmptyPanes = true; +} diff --git a/src/main/java/io/github/moulberry/notenoughupdates/options/separatesections/InventoryButtons.java b/src/main/java/io/github/moulberry/notenoughupdates/options/separatesections/InventoryButtons.java new file mode 100644 index 00000000..36289b3f --- /dev/null +++ b/src/main/java/io/github/moulberry/notenoughupdates/options/separatesections/InventoryButtons.java @@ -0,0 +1,67 @@ +/* + * Copyright (C) 2022 NotEnoughUpdates contributors + * + * This file is part of NotEnoughUpdates. + * + * NotEnoughUpdates is free software: you can redistribute it + * and/or modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation, either + * version 3 of the License, or (at your option) any later version. + * + * NotEnoughUpdates is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public License + * along with NotEnoughUpdates. If not, see . + */ + +package io.github.moulberry.notenoughupdates.options.separatesections; + +import com.google.gson.annotations.Expose; +import io.github.moulberry.moulconfig.annotations.ConfigEditorBoolean; +import io.github.moulberry.moulconfig.annotations.ConfigEditorButton; +import io.github.moulberry.moulconfig.annotations.ConfigEditorDropdown; +import io.github.moulberry.moulconfig.annotations.ConfigEditorSlider; +import io.github.moulberry.moulconfig.annotations.ConfigOption; + +public 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; + + @Expose + @ConfigOption( + name = "Tooltip Delay", + desc = "Change the Tooltip Delay in milliseconds" + ) + @ConfigEditorSlider( + minValue = 0, + maxValue = 1500, + minStep = 50 + ) + public int tooltipDelay = 600; +} diff --git a/src/main/java/io/github/moulberry/notenoughupdates/options/separatesections/ItemOverlays.java b/src/main/java/io/github/moulberry/notenoughupdates/options/separatesections/ItemOverlays.java new file mode 100644 index 00000000..4606a78f --- /dev/null +++ b/src/main/java/io/github/moulberry/notenoughupdates/options/separatesections/ItemOverlays.java @@ -0,0 +1,489 @@ +/* + * Copyright (C) 2022 NotEnoughUpdates contributors + * + * This file is part of NotEnoughUpdates. + * + * NotEnoughUpdates is free software: you can redistribute it + * and/or modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation, either + * version 3 of the License, or (at your option) any later version. + * + * NotEnoughUpdates is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public License + * along with NotEnoughUpdates. If not, see . + */ + +package io.github.moulberry.notenoughupdates.options.separatesections; + +import com.google.gson.annotations.Expose; +import io.github.moulberry.moulconfig.annotations.ConfigEditorInfoText; +import io.github.moulberry.notenoughupdates.core.config.Position; +import io.github.moulberry.moulconfig.annotations.ConfigAccordionId; +import io.github.moulberry.moulconfig.annotations.ConfigEditorAccordion; +import io.github.moulberry.moulconfig.annotations.ConfigEditorBoolean; +import io.github.moulberry.moulconfig.annotations.ConfigEditorColour; +import io.github.moulberry.moulconfig.annotations.ConfigEditorDraggableList; +import io.github.moulberry.moulconfig.annotations.ConfigEditorDropdown; +import io.github.moulberry.moulconfig.annotations.ConfigEditorSlider; +import io.github.moulberry.moulconfig.annotations.ConfigOption; + +import java.util.ArrayList; +import java.util.Arrays; +import java.util.List; + +public class ItemOverlays { + @ConfigOption( + name = "Treecapitator Overlay", + desc = "Jungle Axe" + ) + @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 = "Show in Item durability", + desc = "Show the cooldown of the Treecapitator in the item durability" + ) + @ConfigEditorBoolean + @ConfigAccordionId(id = 0) + public boolean enableCooldownInItemDurability = 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 using the API to check what pet you're using\nto determine the cooldown based off of if you have a 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 = 2) + 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 = 2) + public boolean enableZapperOverlay = true; + + @Expose + @ConfigOption( + name = "Overlay Colour", + desc = "Change the colour of the ghost block outline" + ) + @ConfigEditorColour + @ConfigAccordionId(id = 2) + public String zapperOverlayColour = "0:102:171:5:0"; + + @ConfigOption( + name = "Smooth AOTE/AOTV/AOTL/Hyp", + desc = "" + ) + @ConfigEditorAccordion(id = 3) + public boolean aoteAccordion = false; + + @Expose + @ConfigOption( + name = "Enable Smooth AOTE", + desc = "Teleport smoothly to your destination when using AOTE, AOTV or AOTL" + ) + @ConfigEditorBoolean + @ConfigAccordionId(id = 3) + public boolean enableSmoothAOTE = true; + + @Expose + @ConfigOption( + name = "Enable Smooth Hyperion", + desc = "Teleport smoothly to your destination when using Hyperion" + ) + @ConfigEditorBoolean + @ConfigAccordionId(id = 3) + 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 = 3) + public int smoothTpMillis = 125; + + @Expose + @ConfigOption( + name = "Smooth TP Time (Etherwarp)", + desc = "Teleport smoothly to your destination when using AOTV Etherwarp" + ) + @ConfigEditorSlider( + minValue = 0, + maxValue = 500, + minStep = 25 + ) + @ConfigAccordionId(id = 3) + public int smoothTpMillisEtherwarp = 50; + + @Expose + @ConfigOption( + name = "Disable Hyperion Particles", + desc = "Remove the explosion effect when using a hyperion" + ) + @ConfigEditorBoolean + @ConfigAccordionId(id = 3) + public boolean disableHyperionParticles = true; + + @ConfigOption( + name = "Etherwarp", + desc = "" + ) + @ConfigEditorAccordion(id = 4) + public boolean etherwarpAccordion = false; + + @Expose + @ConfigOption( + name = "Etherwarp Zoom", + desc = "Zoom in on targeted blocks with etherwarp, making it easier to adjust at a distance" + ) + @ConfigEditorBoolean + @ConfigAccordionId(id = 4) + public boolean etherwarpZoom = true; + + @Expose + @ConfigOption( + name = "Enable etherwarp helper overlay", + desc = "Display an overlay which tells you if the etherwarp will fail." + ) + @ConfigEditorBoolean + @ConfigAccordionId(id = 4) + public boolean enableEtherwarpHelperOverlay = true; + + @Expose + @ConfigOption( + name = "Enable etherwarp block overlay", + desc = "Display an overlay that tells you what block you will TP to." + ) + @ConfigEditorBoolean + @ConfigAccordionId(id = 4) + public boolean enableEtherwarpBlockOverlay = true; + + @Expose + @ConfigOption( + name = "Disable overlay when fail", + desc = "Don't display the etherwarp block overlay when you can't TP to the block" + ) + @ConfigEditorBoolean + @ConfigAccordionId(id = 4) + public boolean disableOverlayWhenFailed = false; + + @Expose + @ConfigOption( + name = "Highlight Colour", + desc = "Change the colour of the etherwarp target block outline" + ) + @ConfigEditorColour + @ConfigAccordionId(id = 4) + public String etherwarpHighlightColour = "00:70:156:8:96"; + + @ConfigOption( + name = "Bonemerang Overlay", + desc = "" + ) + @ConfigEditorAccordion(id = 5) + public boolean bonemerangAccordion = false; + + @Expose + @ConfigOption( + name = "Enable Bonemerang Overlay", + desc = "Shows info about the bonemerang while holding it." + ) + @ConfigEditorBoolean + @ConfigAccordionId(id = 5) + public boolean enableBonemerangOverlay = true; + + @Expose + @ConfigOption( + name = "Highlight Targeted Entities", + desc = "Highlight entities that will be hit by your bonemerang" + ) + @ConfigEditorBoolean + @ConfigAccordionId(id = 5) + public boolean highlightTargeted = true; + + @Expose + public Position bonemerangPosition = new Position(-1, -1); + + @Expose + @ConfigOption( + name = "Bonemerang Overlay Text", + desc = "\u00a7eDrag text to change the appearance of the overlay\n" + + "\u00a7rHold a Bonemerang to display the overlay" + ) + @ConfigEditorDraggableList( + exampleText = { + "\u00a7cBonemerang will break!", + "\u00a77Targets: \u00a76\u00a7l10" + } + ) + @ConfigAccordionId(id = 5) + public List bonemerangOverlayText = new ArrayList<>(Arrays.asList(0, 1)); + + @Expose + @ConfigOption( + name = "Bonemerang Overlay Style", + desc = "Change the style of the Bonemerang overlay" + ) + @ConfigEditorDropdown( + values = {"Background", "No Shadow", "Shadow Only", "Full Shadow"} + ) + @ConfigAccordionId(id = 5) + public int bonemerangOverlayStyle = 0; + @Expose + @ConfigOption( + name = "Fast update", + desc = "Updates the bonemerang overlay faster.\n" + + "Might cause some lag." + ) + @ConfigEditorBoolean + @ConfigAccordionId(id = 5) + public boolean bonemerangFastUpdate = false; + + @ConfigOption( + name = "Minion Crystal Radius Overlay", + desc = "" + ) + @ConfigEditorAccordion(id = 6) + 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 = 6) + 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 = 6) + public boolean alwaysShowCrystal = false; + + @ConfigOption( + name = "Farming Overlays", + desc = "" + ) + @ConfigEditorAccordion(id = 7) + public boolean farmingAccordion = false; + + @Expose + @ConfigOption( + name = "Enable Prismapump Overlay", + desc = "Show a block overlay for the effected blocks of prismapump's ability." + ) + @ConfigEditorBoolean + @ConfigAccordionId(id = 7) + public boolean enablePrismapumpOverlay = true; + + @Expose + @ConfigOption( + name = "Enable Hoe Of Tilling Overlay", + desc = "Show a block overlay for the effected blocks of the hoe of tilling's ability." + ) + @ConfigEditorBoolean + @ConfigAccordionId(id = 7) + public boolean enableHoeOverlay = true; + + @Expose + @ConfigOption( + name = "Enable Dirt Wand Overlay", + desc = "Show a block overlay for the effected blocks of dirt wand's ability." + ) + @ConfigEditorBoolean + @ConfigAccordionId(id = 7) + public boolean enableDirtWandOverlay = true; + + @Expose + @ConfigOption( + name = "Enable Scythe Overlay", + desc = "Show a block overlay for the effected blocks of scythe's ability." + ) + @ConfigEditorBoolean + @ConfigAccordionId(id = 7) + public boolean enableScytheOverlay = true; + + @ConfigOption( + name="Custom Wither Cloak", + desc = "" + ) + @ConfigEditorAccordion(id = 8) + public boolean customWitherCloakAccordion = false; + + @Expose + @ConfigAccordionId(id = 8) + @ConfigOption( + name = "Enable Custom Wither Cloak", + desc = "Replaces Hypixel Wither Cloak with custom shields due to the Hypixel Wither Cloak being difficult to see through" + ) + @ConfigEditorBoolean + public boolean customWitherCloakToggle = true; + + @Expose + @ConfigAccordionId(id = 8) + @ConfigOption( + name = "Shield Count", + desc = "The amount of shields circling the player\n0 = No shields" + ) + @ConfigEditorSlider( + minValue = 0, + maxValue = 20, + minStep = 1 + ) + public int customWitherCloakCount = 6; + + @Expose + @ConfigAccordionId(id = 8) + @ConfigOption( + name = "Shield Speed", + desc = "How fast they circle the player\n0 = Not moving\nNegative = Spinning opposite direction" + ) + @ConfigEditorSlider( + minValue = -20f, + maxValue = 20f, + minStep = 1.0f + ) + public double customWitherCloakSpeed = 2d; + + /*@Expose + @ConfigAccordionId(id = 7) + @ConfigOption( + name = "Shield Transparency", + desc = "Changes how visible each shield is\n0 = Invisible" + ) + @ConfigEditorSlider( + minValue = 0f, + maxValue = 1, + minStep = 0.1f + ) + public float customWitherCloakTransparency = 1.0f; + + Couldn't get this to work and couldn't for the life of me figure out why - Cobble8 + */ + + @Expose + @ConfigAccordionId(id = 8) + @ConfigOption( + name = "Shield Distance From Player", + desc = "How far (in blocks) each shield is from the player\n" + + "0 = Inside the player" + ) + @ConfigEditorSlider( + minValue = 0f, + maxValue = 3.0f, + minStep = 0.1f + ) + public float customWitherCloakDistance = 1.2f; + + @Expose + @ConfigAccordionId(id = 8) + @ConfigOption( + name = "\u00A7aInspiration:", + desc = "\u00A76u/Sori0612 \u00A77on \u00A7cReddit\n\n\u00A78https://tinyurl.com/creeperveil" + ) + @ConfigEditorInfoText() + public boolean customWitherCloakCredit = false; + + @Expose + @ConfigOption( + name = "Pickaxe Ability Cooldown", + desc = "Show the cooldown duration of the pickaxe ability as the durability." + ) + @ConfigEditorBoolean + public boolean pickaxeAbility = true; + + @Expose + @ConfigOption( + name = "Bonzo Mask Ability Cooldown", + desc = "Show the cooldown duration of a bonzo mask ability as the durability." + ) + @ConfigEditorBoolean + public boolean bonzoAbility = true; + + @Expose + @ConfigOption( + name = "Spirit Mask Ability Cooldown", + desc = "Show the cooldown duration of the spirit mask ability as the durability." + ) + @ConfigEditorBoolean + public boolean spiritAbility = true; + +} diff --git a/src/main/java/io/github/moulberry/notenoughupdates/options/separatesections/Itemlist.java b/src/main/java/io/github/moulberry/notenoughupdates/options/separatesections/Itemlist.java new file mode 100644 index 00000000..a957da75 --- /dev/null +++ b/src/main/java/io/github/moulberry/notenoughupdates/options/separatesections/Itemlist.java @@ -0,0 +1,152 @@ +/* + * Copyright (C) 2022 NotEnoughUpdates contributors + * + * This file is part of NotEnoughUpdates. + * + * NotEnoughUpdates is free software: you can redistribute it + * and/or modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation, either + * version 3 of the License, or (at your option) any later version. + * + * NotEnoughUpdates is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public License + * along with NotEnoughUpdates. If not, see . + */ + +package io.github.moulberry.notenoughupdates.options.separatesections; + +import com.google.gson.annotations.Expose; +import io.github.moulberry.moulconfig.annotations.ConfigEditorBoolean; +import io.github.moulberry.moulconfig.annotations.ConfigEditorColour; +import io.github.moulberry.moulconfig.annotations.ConfigEditorDropdown; +import io.github.moulberry.moulconfig.annotations.ConfigEditorSlider; +import io.github.moulberry.moulconfig.annotations.ConfigOption; + +public 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 = "Open when searching", + desc = "Open the Itemlist when in container search mode by double clicking the search bar" + ) + @ConfigEditorBoolean + public boolean openWhenSearching = true; + + + @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"; + + @Expose + @ConfigOption( + name = "Always show Monsters", + desc = "Always show Monster Items in the item list" + ) + @ConfigEditorBoolean( + runnableId = 21 + ) + public boolean alwaysShowMonsters = false; +} diff --git a/src/main/java/io/github/moulberry/notenoughupdates/options/separatesections/LocationEdit.java b/src/main/java/io/github/moulberry/notenoughupdates/options/separatesections/LocationEdit.java new file mode 100644 index 00000000..723d6ae2 --- /dev/null +++ b/src/main/java/io/github/moulberry/notenoughupdates/options/separatesections/LocationEdit.java @@ -0,0 +1,85 @@ +/* + * Copyright (C) 2022 NotEnoughUpdates contributors + * + * This file is part of NotEnoughUpdates. + * + * NotEnoughUpdates is free software: you can redistribute it + * and/or modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation, either + * version 3 of the License, or (at your option) any later version. + * + * NotEnoughUpdates is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public License + * along with NotEnoughUpdates. If not, see . + */ + +package io.github.moulberry.notenoughupdates.options.separatesections; + +import com.google.gson.annotations.Expose; +import io.github.moulberry.moulconfig.annotations.ConfigAccordionId; +import io.github.moulberry.moulconfig.annotations.ConfigEditorAccordion; +import io.github.moulberry.moulconfig.annotations.ConfigEditorButton; +import io.github.moulberry.moulconfig.annotations.ConfigEditorDropdown; +import io.github.moulberry.moulconfig.annotations.ConfigOption; +import io.github.moulberry.notenoughupdates.core.config.Position; + +public class LocationEdit { + + @ConfigOption( + name = "Edit GUI locations", + desc = "Change the position of NEU's overlays" + ) + @ConfigEditorButton( + runnableId = 4, + buttonText = "Edit" + ) + public Position positions = new Position(-1, -1); + + @Expose + @ConfigOption( + name = "Edit Gui Scale", + desc = "Change the size of NEU's overlays" + ) + @ConfigEditorDropdown( + values = {"Default", "Small", "Normal", "Large", "Auto"} + ) + public int guiScale = 0; + + @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" + ) + public int editDungeonMap = 0; + + @ConfigOption( + name = "Inventory", + desc = "" + ) + @ConfigEditorAccordion(id = 1) + public boolean inventoryAccordion = false; + + @ConfigOption( + name = "Edit Toolbar Positions", + desc = "Change the position of the QuickCommands / Search Bar" + ) + @ConfigAccordionId(id = 1) + @ConfigEditorButton(runnableId = 6, buttonText = "Edit") + public boolean positionButton = true; + + @ConfigOption( + name = "Open Button Editor", + desc = "Open button editor GUI (/neubuttons)" + ) + @ConfigAccordionId(id = 1) + @ConfigEditorButton(runnableId = 7, buttonText = "Open") + public boolean openEditorButton = true; +} diff --git a/src/main/java/io/github/moulberry/notenoughupdates/options/separatesections/Mining.java b/src/main/java/io/github/moulberry/notenoughupdates/options/separatesections/Mining.java new file mode 100644 index 00000000..de65f3e9 --- /dev/null +++ b/src/main/java/io/github/moulberry/notenoughupdates/options/separatesections/Mining.java @@ -0,0 +1,885 @@ +/* + * Copyright (C) 2022 NotEnoughUpdates contributors + * + * This file is part of NotEnoughUpdates. + * + * NotEnoughUpdates is free software: you can redistribute it + * and/or modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation, either + * version 3 of the License, or (at your option) any later version. + * + * NotEnoughUpdates is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public License + * along with NotEnoughUpdates. If not, see . + */ + +package io.github.moulberry.notenoughupdates.options.separatesections; + +import com.google.gson.annotations.Expose; +import io.github.moulberry.notenoughupdates.core.config.Position; +import io.github.moulberry.moulconfig.annotations.ConfigAccordionId; +import io.github.moulberry.moulconfig.annotations.ConfigEditorAccordion; +import io.github.moulberry.moulconfig.annotations.ConfigEditorBoolean; +import io.github.moulberry.moulconfig.annotations.ConfigEditorButton; +import io.github.moulberry.moulconfig.annotations.ConfigEditorDraggableList; +import io.github.moulberry.moulconfig.annotations.ConfigEditorDropdown; +import io.github.moulberry.moulconfig.annotations.ConfigEditorSlider; +import io.github.moulberry.moulconfig.annotations.ConfigOption; + +import java.util.ArrayList; +import java.util.Arrays; +import java.util.List; + +public 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"} + ) + @ConfigAccordionId(id = 0) + public int locWaypoints = 1; + + @Expose + @ConfigOption( + name = "Hide waypoints when at Location", + desc = "Hides the Commission Waypoints if you are already at the location of the waypoint.\n" + + "Only active if Waypoints are set to \"Commissions Only\"" + ) + @ConfigEditorBoolean + @ConfigAccordionId(id = 0) + public boolean hideWaypointIfAtLocation = true; + + @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"} + ) + @ConfigAccordionId(id = 0) + public int emissaryWaypoints = 1; + + @Expose + @ConfigOption( + name = "Enable Powder Ghast Waypoints", + desc = "Shows a waypoint at the location of the Powder Ghast" + ) + @ConfigEditorBoolean + @ConfigAccordionId(id = 0) + public boolean powderGhastWaypoint = true; + + @Expose + @ConfigOption( + name = "Enable Fallen Star Waypoints", + desc = "Shows a waypoint at the location of the Fallen Star" + ) + @ConfigEditorBoolean + @ConfigAccordionId(id = 0) + public boolean fallenStarWaypoint = true; + + @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 = 350, + minStep = 10 + ) + @ConfigAccordionId(id = 1) + public int drillFuelBarWidth = 180; + + @Expose + public Position drillFuelBarPosition = new Position(0, -91, true, false); + + @ConfigOption( + name = "Dwarven Overlay", + desc = "" + ) + @ConfigEditorAccordion(id = 2) + public boolean overlayAccordion = false; + + @Expose + @ConfigOption( + name = "Enable 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 = { + "§3Goblin Slayer: §626.5%\n§3Lucky Raffle: §c0.0%", + "§3Mithril Powder: §26,243", + "§3Gemstone Powder: §d6,243", + "§3Forge 1) §9Diamonite§7: §aReady!", + "§3Pickaxe CD: §a78s", + "§3Star Cult: §a78s", + "§3Sky Mall: §a5x Titanium (78s)" + } + ) + @ConfigAccordionId(id = 2) + public List dwarvenText2 = new ArrayList<>(Arrays.asList(0, 1, 2, 3, 4, 5, 6)); + + @Expose + 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 = "Show Icons", + desc = "Show Icons representing the part of the overlay." + ) + @ConfigEditorBoolean + @ConfigAccordionId(id = 2) + public boolean dwarvenOverlayIcons = true; + + @Expose + @ConfigOption( + name = "Forge Display", + desc = "Change what gets shown in the Forge Display" + ) + @ConfigEditorDropdown( + values = {"Only Done", "Only Working", "Everything Except Locked", "Everything"} + ) + @ConfigAccordionId(id = 2) + public int forgeDisplay = 1; + + @Expose + @ConfigOption( + name = "Forge Location", + desc = "Change when the forge display gets shown" + ) + @ConfigEditorDropdown( + values = {"Dwarven Mines+Crystal Hollows", "Everywhere except dungeons", "Everywhere"} + ) + @ConfigAccordionId(id = 2) + public int forgeDisplayEnabledLocations = 0; + + @Expose + @ConfigOption( + name = "Forge Tab", + desc = "Only show the forge display when tab list is open\n" + + "\u00A7cThis only works outside of Dwarven Caves!" + ) + @ConfigEditorBoolean + @ConfigAccordionId(id = 2) + public boolean forgeDisplayOnlyShowTab = false; + + @Expose + @ConfigOption( + name = "Star Cult Location", + desc = "Change when the Star Cult timer gets shown" + ) + @ConfigEditorDropdown( + values = {"Dwarven Mines+Crystal Hollows", "Everywhere except dungeons", "Everywhere"} + ) + @ConfigAccordionId(id = 2) + public int starCultDisplayEnabledLocations = 0; + + @Expose + @ConfigOption( + name = "Star Cult Tab", + desc = "Only show the star cult timer when tab list is open\n" + + "§cThis only works outside of Dwarven Caves!" + ) + @ConfigEditorBoolean + @ConfigAccordionId(id = 2) + public boolean starCultDisplayOnlyShowTab = false; + + @Expose + @ConfigOption( + name = "Commission Task Tips", + desc = "Show tips to help complete commission tasks" + ) + @ConfigEditorDropdown( + values = {"Off", "Only while sneaking", "Always"} + ) + @ConfigAccordionId(id = 2) + public int commissionTaskTips = 0; + + @Expose + @ConfigOption( + name = "Tips in New Line", + desc = "Show the Commission Task Tips in the next line.") + @ConfigEditorBoolean + @ConfigAccordionId(id = 2) + public boolean commissionTaskTipNewLine = true; + + @ConfigOption( + name = "Metal Detector Solver", + desc = "" + ) + @ConfigEditorAccordion(id = 3) + public boolean metalDetectorSolverAccordion = false; + + @Expose + @ConfigOption( + name = "Enable Waypoints", + desc = + "Enabled the metal detector solver for Mines of Divan, to use this stand still to calculate possible blocks and then if required stand" + + " still on another block." + ) + @ConfigEditorBoolean + @ConfigAccordionId(id = 3) + public boolean metalDetectorEnabled = true; + + @Expose + @ConfigOption( + name = "Show Possible Blocks", + desc = "Show waypoints on possible locations when NEU isn't sure about what block the treasure is." + ) + @ConfigEditorBoolean + @ConfigAccordionId(id = 3) + public boolean metalDetectorShowPossible = false; + + @ConfigOption( + name = "Crystal Hollows Overlay", + desc = "" + ) + @ConfigEditorAccordion(id = 4) + public boolean crystalHollowOverlayAccordion = false; + + @Expose + @ConfigOption( + name = "Enable Crystal Overlay", + desc = "Enables the Crystal Hollows Overlay." + ) + @ConfigEditorBoolean + @ConfigAccordionId(id = 4) + public boolean crystalHollowOverlay = true; + + @Expose + public Position crystalHollowOverlayPosition = new Position(200, 0); + + @Expose + @ConfigOption( + name = "Options", + desc = "Drag text to change the appearance of the overlay!\n" + + "Click add to add extra things!" + ) + @ConfigEditorDraggableList( + exampleText = { + "\u00a73Amber Crystal: \u00a7aPlaced\n" + + "\u00a73Sapphire Crystal: \u00a7eCollected\n" + + "\u00a73Jade Crystal: \u00a7eMissing\n" + + "\u00a73Amethyst Crystal: \u00a7cMissing\n" + + "\u00a73Topaz Crystal: \u00a7cMissing\n", + "\u00a73Crystals: \u00a7a4/5", + "\u00a73Crystals: \u00a7a80%", + "\u00a73Electron Transmitter: \u00a7aDone\n" + + "\u00a73Robotron Reflector: \u00a7eIn Storage\n" + + "\u00a73Superlite Motor: \u00a7eIn Inventory\n" + + "\u00a73Synthetic Heart: \u00a7cMissing\n" + + "\u00a73Control Switch: \u00a7cMissing\n" + + "\u00a73FTX 3070: \u00a7cMissing", + "\u00a73Electron Transmitter: \u00a7a3\n" + + "\u00a73Robotron Reflector: \u00a7e2\n" + + "\u00a73Superlite Motor: \u00a7e1\n" + + "\u00a73Synthetic Heart: \u00a7c0\n" + + "\u00a73Control Switch: \u00a7c0\n" + + "\u00a73FTX 3070: \u00a7c0", + "\u00a73Automaton parts: \u00a7a5/6", + "\u00a73Automaton parts: \u00a7a83%", + "\u00a73Scavenged Lapis Sword: \u00a7aDone\n" + + "\u00a73Scavenged Golden Hammer: \u00a7eIn Storage\n" + + "\u00a73Scavenged Diamond Axe: \u00a7eIn Inventory\n" + + "\u00a73Scavenged Emerald Hammer: \u00a7cMissing\n", + "\u00a73Scavenged Lapis Sword: \u00a7a3\n" + + "\u00a73Scavenged Golden Hammer: \u00a7e2\n" + + "\u00a73Scavenged Diamond Axe: \u00a7e1\n" + + "\u00a73Scavenged Emerald Hammer: \u00a7c0\n", + "\u00a73Mines of Divan parts: \u00a7a3/4", + "\u00a73Mines of Divan parts: \u00a7a75%" + } + ) + @ConfigAccordionId(id = 4) + public List crystalHollowText = new ArrayList<>(Arrays.asList(0, 3, 7)); + + @Expose + @ConfigOption( + name = "Style", + desc = "Change the style of the Crystal Hollows Overlay." + ) + @ConfigEditorDropdown( + values = {"Background", "No Shadow", "Shadow", "Full Shadow"} + ) + @ConfigAccordionId(id = 4) + public int crystalHollowOverlayStyle = 0; + + @Expose + @ConfigOption( + name = "Show Icons", + desc = "Show icons in the Overlay that represent the part." + ) + @ConfigEditorBoolean + @ConfigAccordionId(id = 4) + public boolean crystalHollowIcons = true; + + @Expose + @ConfigOption( + name = "Hide Done", + desc = "Don't show parts you've given to the NPC." + ) + @ConfigEditorBoolean + @ConfigAccordionId(id = 4) + public boolean crystalHollowHideDone = false; + + @ConfigOption( + name = "Locations", + desc = "" + ) + @ConfigEditorAccordion(id = 5) + @ConfigAccordionId(id = 4) + public boolean crystalHollowLocationAccordion = false; + + @Expose + @ConfigOption( + name = "Show Automaton", + desc = "Change where to show Automaton parts." + ) + @ConfigEditorDropdown( + values = {"Crystal Hollows", "Precursor Remnants", "Lost Precursor City"} + ) + @ConfigAccordionId(id = 5) + public int crystalHollowAutomatonLocation = 2; + + @Expose + @ConfigOption( + name = "Show Divan", + desc = "Change where to show Mines of Divan parts." + ) + @ConfigEditorDropdown( + values = {"Crystal Hollows", "Mithril Deposits", "Mines of Divan"} + ) + @ConfigAccordionId(id = 5) + public int crystalHollowDivanLocation = 2; + + @Expose + @ConfigOption( + name = "Show Crystal", + desc = "Change where to show Collected Crystals." + ) + @ConfigEditorDropdown( + values = {"Crystal Hollows", "When No Other Overlays"} + ) + @ConfigAccordionId(id = 5) + public int crystalHollowCrystalLocation = 1; + + @ConfigOption( + name = "Colours", + desc = "" + ) + @ConfigEditorAccordion(id = 6) + @ConfigAccordionId(id = 4) + public boolean crystalHollowColourAccordion = false; + + @Expose + @ConfigOption( + name = "Main Color", + desc = "Change the main color of the overlay." + + ) + @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" + } + ) + @ConfigAccordionId(id = 6) + public int crystalHollowPartColor = 3; + + @Expose + @ConfigOption( + name = "Done Color", + desc = "Change the colour when the part is given to the NPC." + ) + @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" + } + ) + + @ConfigAccordionId(id = 6) + public int crystalHollowDoneColor = 10; + + @Expose + @ConfigOption( + name = "In Inventory Color", + desc = "Change the colour when the part is in the inventory." + ) + @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" + } + ) + @ConfigAccordionId(id = 6) + public int crystalHollowInventoryColor = 14; + + @Expose + @ConfigOption( + name = "In Storage Color", + desc = "Change the colour when the part is in the storage." + ) + @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" + } + ) + @ConfigAccordionId(id = 6) + public int crystalHollowStorageColor = 14; + + @Expose + @ConfigOption( + name = "Missing Color", + desc = "Change the colour when the part is missing." + ) + @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" + } + ) + @ConfigAccordionId(id = 6) + public int crystalHollowMissingColor = 12; + + @Expose + @ConfigOption( + name = "Placed Color", + desc = "Change the colour when the crystal is placed." + ) + @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" + } + ) + @ConfigAccordionId(id = 6) + public int crystalHollowPlacedColor = 10; + + @Expose + @ConfigOption( + name = "Collected Color", + desc = "Change the colour when the crystal is collected" + ) + @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" + } + ) + @ConfigAccordionId(id = 6) + public int crystalHollowCollectedColor = 14; + + @Expose + @ConfigOption( + name = "All Color", + desc = "Change the colour when you have 2/3-all of the parts collected in the count overlay." + ) + @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" + } + ) + @ConfigAccordionId(id = 6) + public int crystalHollowAllColor = 10; + + @Expose + @ConfigOption( + name = "1/3 Color", + desc = "Change the colour when you have 1/3-2/3 of the parts collected in the count overlay." + ) + @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" + } + ) + @ConfigAccordionId(id = 6) + public int crystalHollowMiddleColor = 14; + + @Expose + @ConfigOption( + name = "0 Color", + desc = "Change the colour when you have 0-1/3 of the parts collected in the count overlay." + ) + @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" + } + ) + @ConfigAccordionId(id = 6) + public int crystalHollowNoneColor = 12; + + @ConfigOption( + name = "Wishing Compass Solver", + desc = "" + ) + @ConfigEditorAccordion(id = 7) + public boolean wishingCompassSolverAccordion = false; + + @Expose + @ConfigOption( + name = "Enable Solver", + desc = "Show wishing compass target coordinates based on two samples" + ) + @ConfigAccordionId(id = 7) + @ConfigEditorBoolean + public boolean wishingCompassSolver = true; + + @Expose + @ConfigOption( + name = "Skytils Waypoints", + desc = "Automatically create Skytils waypoints for well-known targets" + ) + @ConfigAccordionId(id = 7) + @ConfigEditorBoolean + public boolean wishingCompassAutocreateKnownWaypoints = false; + + @Expose + @ConfigOption( + name = "Waypoint Names", + desc = "NOTE: Skytils overwrites waypoint coordinates with less accurate values for Skytils names." + ) + @ConfigAccordionId(id = 7) + @ConfigEditorDropdown( + values = {"NEU", "Skytils"} + ) + public int wishingCompassWaypointNames = 0; + + @ConfigOption( + name = "Powder Grinding Tracker", + desc = "" + ) + @ConfigEditorAccordion(id = 9) + public boolean powderGrindingTrackerAccordion = false; + + @Expose + @ConfigOption( + name = "Enable Tracker", + desc = "Show an Overlay with useful information related to Powder Grinding" + ) + @ConfigAccordionId(id = 9) + @ConfigEditorBoolean + public boolean powderGrindingTrackerEnabled = false; + + @Expose + @ConfigOption( + name = "Tracker Text", + desc = "\u00a7eDrag text to change the appearance of the Overlay\n" + + "\u00a7rGo to the Crystal Hollows to show this Overlay with useful information" + ) + @ConfigEditorDraggableList( + exampleText = { + "\u00a73Chests Found: \u00a7a13", + "\u00a73Opened Chests: \u00a7a11", + "\u00a73Unopened Chests: \u00a7c2", + "\u00a73Mithril Powder Found: \u00a726,243", + "\u00a73Average Mithril Powder/Chest: \u00a72568", + "\u00a73Gemstone Powder Found: \u00a7d6,243", + "\u00a73Average Gemstone Powder/Chest: \u00a7d568" + } + ) + @ConfigAccordionId(id = 9) + public List powderGrindingTrackerText = new ArrayList<>(Arrays.asList(0, 1, 2, 3, 4, 5, 6)); + + @Expose + public Position powderGrindingTrackerPosition = new Position(10, 265); + + @Expose + @ConfigOption( + name = "Overlay Style", + desc = "Change the style of the Powder Grinding Tracker information Overlay" + ) + @ConfigEditorDropdown( + values = {"Background", "No Shadow", "Shadow", "Full Shadow"} + ) + @ConfigAccordionId(id = 9) + public int powderGrindingTrackerOverlayStyle = 0; + + @Expose + @ConfigOption( + name = "Tracker Reset Mode", + desc = "When the Powder Grinding Tracker should be reset" + ) + @ConfigEditorDropdown( + values = {"On World Change", "On Restart", "Never"} + ) + @ConfigAccordionId(id = 9) + public int powderGrindingTrackerResetMode = 2; + + @Expose + @ConfigOption( + name = "Reset Tracker", + desc = "Reset all stats for Powder Grinding Tracker" + ) + @ConfigEditorButton( + runnableId = 26, + buttonText = "Reset" + ) + @ConfigAccordionId(id = 9) + public int resetPowderGrindingTracker = 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 = "Titanium must touch air", + desc = "Only show an alert if the Titanium touches air. (kinda sus)" + ) + @ConfigEditorBoolean + public boolean titaniumAlertMustBeVisible = false; + + @ConfigOption( + name = "Custom Textures", + desc = "" + ) + @ConfigEditorAccordion(id = 8) + public boolean texturesAccordion = false; + + @Expose + @ConfigOption( + name = "Dwarven Mines Textures", + desc = "Allows texture packs to retexture blocks in the Dwarven Mines. If you don't have a texture pack that does this, you should leave this off" + ) + @ConfigAccordionId(id = 8) + @ConfigEditorBoolean + public boolean dwarvenTextures = false; + @Expose + @ConfigOption( + name = "Crystal Hollows Textures", + desc = "Allows texture packs to retexture blocks in the Crystal Hollows. If you don't have a texture pack that does this, you should leave this off" + ) + @ConfigAccordionId(id = 8) + @ConfigEditorBoolean + public boolean crystalHollowTextures = false; + + @Expose + @ConfigOption( + name = "Replace Gemstone sounds", + desc = "Replace the break sounds of crystals in the Crystal Hollows. Requires a texture pack with this feature" + ) + @ConfigAccordionId(id = 8) + @ConfigEditorBoolean + public boolean gemstoneSounds = false; + + @Expose + @ConfigOption( + name = "Replace Mithril sounds", + desc = "Replace the break sounds of mithril and titanium in the Dwarven mines. Requires a texture pack with this feature" + ) + @ConfigAccordionId(id = 8) + @ConfigEditorBoolean + public boolean mithrilSounds = false; + +} diff --git a/src/main/java/io/github/moulberry/notenoughupdates/options/separatesections/MinionHelper.java b/src/main/java/io/github/moulberry/notenoughupdates/options/separatesections/MinionHelper.java new file mode 100644 index 00000000..bb351e44 --- /dev/null +++ b/src/main/java/io/github/moulberry/notenoughupdates/options/separatesections/MinionHelper.java @@ -0,0 +1,45 @@ +/* + * Copyright (C) 2022 NotEnoughUpdates contributors + * + * This file is part of NotEnoughUpdates. + * + * NotEnoughUpdates is free software: you can redistribute it + * and/or modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation, either + * version 3 of the License, or (at your option) any later version. + * + * NotEnoughUpdates is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public License + * along with NotEnoughUpdates. If not, see . + */ + +package io.github.moulberry.notenoughupdates.options.separatesections; + +import com.google.gson.annotations.Expose; +import io.github.moulberry.moulconfig.annotations.ConfigEditorBoolean; +import io.github.moulberry.moulconfig.annotations.ConfigOption; + +//TODO jani rename message format +public class MinionHelper { + @Expose + @ConfigOption( + name = "Enable gui", + desc = + "Shows a list in the crafted minions inventory of every available to craft or all missing minion, in multiple pages " + + "that you need to get the next minion slot, sorted by upgrade cost" + ) + + @ConfigEditorBoolean + public boolean gui = true; + @Expose + @ConfigOption( + name = "Enable tooltip", + desc = "Shows the price per minion at the crafted minions " + ) + @ConfigEditorBoolean + public boolean tooltip = true; +} diff --git a/src/main/java/io/github/moulberry/notenoughupdates/options/separatesections/Misc.java b/src/main/java/io/github/moulberry/notenoughupdates/options/separatesections/Misc.java new file mode 100644 index 00000000..95e29a5c --- /dev/null +++ b/src/main/java/io/github/moulberry/notenoughupdates/options/separatesections/Misc.java @@ -0,0 +1,328 @@ +/* + * Copyright (C) 2022 NotEnoughUpdates contributors + * + * This file is part of NotEnoughUpdates. + * + * NotEnoughUpdates is free software: you can redistribute it + * and/or modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation, either + * version 3 of the License, or (at your option) any later version. + * + * NotEnoughUpdates is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public License + * along with NotEnoughUpdates. If not, see . + */ + +package io.github.moulberry.notenoughupdates.options.separatesections; + +import com.google.gson.annotations.Expose; +import io.github.moulberry.moulconfig.annotations.ConfigAccordionId; +import io.github.moulberry.moulconfig.annotations.ConfigEditorAccordion; +import io.github.moulberry.moulconfig.annotations.ConfigEditorBoolean; +import io.github.moulberry.moulconfig.annotations.ConfigEditorButton; +import io.github.moulberry.moulconfig.annotations.ConfigEditorDropdown; +import io.github.moulberry.moulconfig.annotations.ConfigEditorKeybind; +import io.github.moulberry.moulconfig.annotations.ConfigEditorSlider; +import io.github.moulberry.moulconfig.annotations.ConfigOption; +import org.lwjgl.input.Keyboard; + +public 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 = "Fix Steve skulls", + desc = "Fix some skulls and skins not downloading on old java versions. May require restart." + ) + @ConfigEditorBoolean + public boolean fixSteveSkulls = true; + + @ConfigOption( + name = "Fairy Soul Waypoints", + desc = "" + ) + @ConfigEditorAccordion(id = 0) + public boolean fariySoulAccordion = false; + @Expose + @ConfigOption( + name = "Track Fairy Souls", + desc = "Track Found Fairy Souls" + ) + @ConfigEditorBoolean(runnableId = 20) + @ConfigAccordionId(id = 0) + public boolean trackFairySouls = true; + + @Expose + @ConfigOption( + name = "Show Waypoints", + desc = "Show Fairy Soul Waypoints (Requires fairy soul tracking)" + ) + @ConfigEditorBoolean( + runnableId = 15 + ) + @ConfigAccordionId(id = 0) + public boolean fariySoul = false; + + @Expose + @ConfigOption( + name = "Show Waypoint Distance", + desc = "Show the distance to each fairy soul waypoint" + ) + @ConfigEditorBoolean + @ConfigAccordionId(id = 0) + public boolean fairySoulWaypointDistance = false; + + @Expose + @ConfigOption( + name = "Mark All As Found", + desc = "Mark all fairy souls in current location as found" + ) + @ConfigEditorButton( + runnableId = 16, + buttonText = "Clear" + ) + @ConfigAccordionId(id = 0) + public boolean fariySoulClear = false; + + @Expose + @ConfigOption( + name = "Mark All As Missing", + desc = "Mark all fairy souls in current location as missing" + ) + @ConfigEditorButton( + runnableId = 17, + buttonText = "Unclear" + ) + @ConfigAccordionId(id = 0) + public boolean fariySoulUnclear = 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 = "Replace Chat Social Options", + desc = "Replace Hypixel's chat social options with NEU's profile viewer or with /ah" + ) + @ConfigEditorDropdown( + values = {"Off", "/pv", "/ah"} + ) + public int replaceSocialOptions1 = 1; + + @Expose + @ConfigOption( + name = "Damage Indicator Style", + desc = "Change SkyBlock damage indicators to use shortened numbers\n" + + "\u00A7cSome old animations mods break this feature" + ) + @ConfigEditorBoolean + public boolean damageIndicatorStyle2 = false; + + @Expose + @ConfigOption( + name = "Profile Viewer", + desc = "Brings up the profile viewer (/pv)\n" + + "Shows stats and networth of players" + ) + @ConfigEditorButton(runnableId = 13, buttonText = "Open") + public boolean openPV = true; + + @ConfigOption( + name = "Custom Enchant Colours", + desc = "" + ) + @ConfigEditorAccordion( + id = 1 + ) + public boolean neuEnchantsAccordion = true; + + @Expose + @ConfigOption( + name = "Edit Enchant Colours", + desc = "Change the colours of certain SkyBlock enchants (/neuec)" + ) + @ConfigEditorButton(runnableId = 8, buttonText = "Open") + @ConfigAccordionId(id = 1) + 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 + ) + @ConfigAccordionId(id = 1) + public int chromaSpeed = 100; + + @Expose + @ConfigOption( + name = "Cache Tooltip Enchants", + desc = "Caches item enchants in tooltip to only use the neuec config once per item lookup." + ) + @ConfigEditorBoolean + @ConfigAccordionId(id = 1) + public boolean cacheItemEnchant = true; + + @Expose + @ConfigOption( + name = "Disable Skull retexturing", + desc = "Disables the skull retexturing." + ) + @ConfigEditorBoolean + public boolean disableSkullRetexturing = false; + + @Expose + @ConfigOption( + name = "Disable NPC retexturing", + desc = "Disables the NPC retexturing." + ) + @ConfigEditorBoolean + public boolean disableNPCRetexturing = false; + + @Expose + @ConfigOption( + name = "Wiki", + desc = "The wiki to use in the wiki renderer." + ) + @ConfigEditorDropdown(values = { + "Hypixel", + "Fandom" + }) + public int wiki = 0; + + @Expose + @ConfigOption( + name = "Waypoint Keybind", + desc = "Press this keybind to show waypoints to various NPCs" + ) + @ConfigEditorKeybind(defaultKey = Keyboard.KEY_NONE) + public int keybindWaypoint = Keyboard.KEY_NONE; + + @Expose + @ConfigOption( + name = "Untrack close Waypoints", + desc = "Automatically untrack waypoints once you get close to them." + ) + @ConfigEditorBoolean + public boolean untrackCloseWaypoints = true; + + @Expose + @ConfigOption( + name = "Warp twice", + desc = "Warp twice when using SHIFT+ to /warp to a waypoint." + ) + @ConfigEditorBoolean + public boolean warpTwice = true; + + @Expose + @ConfigOption( + name = "Calculator", + desc = "Replace calculations like §9\"1+2\"§7 with the calculation result in sign popups (AH/BZ) and in the neu search bar" + ) + @ConfigEditorDropdown(values = {"Off", "Enabled with ! Prefix", "Always enabled"}) + public int calculationMode = 2; + + @Expose + @ConfigOption( + name = "Enable Abiphone Warning", + desc = "Asks for confirmation when removing a contact in the abiphone" + ) + @ConfigEditorBoolean + public boolean abiphoneWarning = true; + + @Expose + @ConfigOption( + name = "Enable Coop Warning", + desc = "Asks for confirmation when clicking the coop diamond in profile menu and prevents 'wrong' /coopadd commands" + ) + @ConfigEditorBoolean + public boolean coopWarning = true; + + @Expose + @ConfigOption( + name = "Filter Skyblock Levels in Chat", + desc = "Requires the \"SkyBlock Levels in Chat\" skyblock setting to be on" + ) + @ConfigEditorSlider( + minValue = 0, + maxValue = 300, + minStep = 10 + ) + public int filterChatLevel = 0; + + @Expose + @ConfigOption( + name = "Enable text field tweaks", + desc = "Allows the use of ctrl + z, ctrl + y and ctrl + Lshift + z in text fields" + ) + @ConfigEditorBoolean + public boolean textFieldTweaksEnabled = true; + + @Expose + @ConfigOption( + name = "Abiphone Favourites", + desc = "Allows to set abiphone contacts as favourites, toggle between displaying all contacts or favourites only and deactivates the option to remove contacts at all." + ) + @ConfigEditorBoolean + public boolean abiphoneFavourites = true; + + @Expose + @ConfigOption( + name = "Group Join PV", + desc = "View another player's profile by clicking on the chat message when they join in a dungeon or kuudra group." + ) + @ConfigEditorBoolean + public boolean dungeonGroupsPV = true; + + @Expose + @ConfigOption( + name = "Old SkyBlock Menu", + desc = "Show old buttons in the SkyBlock Menu: Trade, Accessories, Potions, Quiver, Fishing and Sacks. " + + "§cOnly works with the booster cookie effect active." + ) + @ConfigEditorBoolean + public boolean oldSkyBlockMenu = false; + + @Expose + @ConfigOption( + name = "Default Armor Colour", + desc = "Changes all armor, on self and others, to the default item colour. Overwrites any /neucustomize changes also." + ) + @ConfigEditorBoolean + public boolean defaultArmorColour = false; +} diff --git a/src/main/java/io/github/moulberry/notenoughupdates/options/separatesections/MiscOverlays.java b/src/main/java/io/github/moulberry/notenoughupdates/options/separatesections/MiscOverlays.java new file mode 100644 index 00000000..385e1daf --- /dev/null +++ b/src/main/java/io/github/moulberry/notenoughupdates/options/separatesections/MiscOverlays.java @@ -0,0 +1,469 @@ +/* + * Copyright (C) 2022 NotEnoughUpdates contributors + * + * This file is part of NotEnoughUpdates. + * + * NotEnoughUpdates is free software: you can redistribute it + * and/or modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation, either + * version 3 of the License, or (at your option) any later version. + * + * NotEnoughUpdates is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public License + * along with NotEnoughUpdates. If not, see . + */ + +package io.github.moulberry.notenoughupdates.options.separatesections; + +import com.google.gson.annotations.Expose; +import io.github.moulberry.notenoughupdates.core.config.Position; +import io.github.moulberry.moulconfig.annotations.ConfigAccordionId; +import io.github.moulberry.moulconfig.annotations.ConfigEditorAccordion; +import io.github.moulberry.moulconfig.annotations.ConfigEditorBoolean; +import io.github.moulberry.moulconfig.annotations.ConfigEditorDraggableList; +import io.github.moulberry.moulconfig.annotations.ConfigEditorDropdown; +import io.github.moulberry.moulconfig.annotations.ConfigOption; + +import java.util.ArrayList; +import java.util.Arrays; +import java.util.List; + +public 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 todoOverlay2 = false; + + @Expose + @ConfigOption( + name = "Todo Overlay Tab", + desc = "Only show the todo overlay when tab list is open" + ) + @ConfigEditorBoolean + @ConfigAccordionId(id = 0) + public boolean todoOverlayOnlyShowTab = false; + + @Expose + @ConfigOption( + name = "Todo Overlay Hide Bingo", + desc = "Hide some tasks from the todo overlay while on a bingo profile: Cookie Buff, Godpot, Heavy Pearls, Crimson Isle Quests" + ) + @ConfigEditorBoolean + @ConfigAccordionId(id = 0) + public boolean todoOverlayHideAtBingo = true; + + @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", + "\u00a73Mithril Powder: \u00a7e3h38m", + "\u00a73Gemstone Powder: \u00a7e3h38m", + "\u00a73Heavy Pearls: \u00a7e3h38m", + "\u00a73Crimson Isle Quests: \u00a7e3h38m", + "\u00a73NPC Buy Daily Limit: \u00a7e3h38m", + "§3Free Rift Infusion: §e3h38m", + } + ) + @ConfigAccordionId(id = 0) + public List todoText2 = new ArrayList<>(Arrays.asList(0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12)); + + @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; + + @Expose + @ConfigOption( + name = "Mithril Powder Display", + desc = "Change the way the mithril powder 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 dailyMithrilPowderDisplay = 0; + + @Expose + @ConfigOption( + name = "Gemstone Powder Display", + desc = "Change the way the gemstone powder 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 dailyGemstonePowderDisplay = 0; + + @Expose + @ConfigOption( + name = "Heavy Pearl Display", + desc = "Change the way the heavy pearl 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 dailyHeavyPearlDisplay = 0; + + @Expose + @ConfigOption( + name = "Crimson Isle Quests Display", + desc = "Change the way the crimson isle quests display\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 questBoardDisplay = 0; + + @Expose + @ConfigOption( + name = "NPC Buy Daily Limit Display", + desc = "Change the way the NPC shop limit 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 shopLimitDisplay = 0; + + @Expose + @ConfigOption( + name = "Free Rift Infusion Display", + desc = "Change the way the Free Rift infusion displays\n" + + "Only when ready, When very Soon, or always." + ) + @ConfigAccordionId(id = 1) + @ConfigEditorDropdown( + values = {"Only when ready", "When very Soon", "Always"} + ) + public int freeRiftInfusionDisplay = 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" + } + ) + @ConfigAccordionId(id = 2) + public int readyColour = 10; + + @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" + } + ) + @ConfigAccordionId(id = 2) + public int goneColour = 12; + + @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" + } + ) + @ConfigAccordionId(id = 2) + public int verySoonColour = 11; + + @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" + } + ) + @ConfigAccordionId(id = 2) + public int soonColour = 9; + + @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" + } + ) + @ConfigAccordionId(id = 2) + public int kindaSoonColour = 1; + + @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" + } + ) + @ConfigAccordionId(id = 2) + public int defaultColour = 15; + + @Expose + 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; +} diff --git a/src/main/java/io/github/moulberry/notenoughupdates/options/separatesections/Museum.java b/src/main/java/io/github/moulberry/notenoughupdates/options/separatesections/Museum.java new file mode 100644 index 00000000..ffbbf69f --- /dev/null +++ b/src/main/java/io/github/moulberry/notenoughupdates/options/separatesections/Museum.java @@ -0,0 +1,64 @@ +/* + * Copyright (C) 2023 NotEnoughUpdates contributors + * + * This file is part of NotEnoughUpdates. + * + * NotEnoughUpdates is free software: you can redistribute it + * and/or modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation, either + * version 3 of the License, or (at your option) any later version. + * + * NotEnoughUpdates is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public License + * along with NotEnoughUpdates. If not, see . + */ + +package io.github.moulberry.notenoughupdates.options.separatesections; + +import com.google.gson.annotations.Expose; +import io.github.moulberry.moulconfig.annotations.ConfigEditorBoolean; +import io.github.moulberry.moulconfig.annotations.ConfigEditorColour; +import io.github.moulberry.moulconfig.annotations.ConfigEditorDropdown; +import io.github.moulberry.moulconfig.annotations.ConfigOption; + +public class Museum { + + @Expose + @ConfigOption( + name = "Show Museum Items", + desc = "Show real items instead of green dye in the museum" + ) + @ConfigEditorBoolean + public boolean museumItemShow = false; + + @Expose + @ConfigOption( + name = "Highlight virtual museum items", + desc = "Highlight virtual museum items with a background color" + ) + @ConfigEditorColour + public String museumItemColor = "0:255:0:255:0"; + + @Expose + @ConfigOption( + name = "Show Items to donate", + desc = "Show the cheapest items you have not yet donated to the Museum" + ) + @ConfigEditorBoolean + public boolean museumCheapestItemOverlay = true; + + @Expose + @ConfigOption( + name = "Value calculation", + desc = "Choose the source for the value calculation" + ) + @ConfigEditorDropdown( + values = {"Lowest BIN", "Craft cost"} + ) + public int museumCheapestItemOverlayValueSource = 0; + +} diff --git a/src/main/java/io/github/moulberry/notenoughupdates/options/separatesections/Notifications.java b/src/main/java/io/github/moulberry/notenoughupdates/options/separatesections/Notifications.java new file mode 100644 index 00000000..99a6c197 --- /dev/null +++ b/src/main/java/io/github/moulberry/notenoughupdates/options/separatesections/Notifications.java @@ -0,0 +1,131 @@ +/* + * Copyright (C) 2022 NotEnoughUpdates contributors + * + * This file is part of NotEnoughUpdates. + * + * NotEnoughUpdates is free software: you can redistribute it + * and/or modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation, either + * version 3 of the License, or (at your option) any later version. + * + * NotEnoughUpdates is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public License + * along with NotEnoughUpdates. If not, see . + */ + +package io.github.moulberry.notenoughupdates.options.separatesections; + +import com.google.gson.annotations.Expose; +import io.github.moulberry.moulconfig.annotations.ConfigAccordionId; +import io.github.moulberry.moulconfig.annotations.ConfigEditorAccordion; +import io.github.moulberry.moulconfig.annotations.ConfigEditorBoolean; +import io.github.moulberry.moulconfig.annotations.ConfigEditorColour; +import io.github.moulberry.moulconfig.annotations.ConfigEditorDropdown; +import io.github.moulberry.moulconfig.annotations.ConfigEditorSlider; +import io.github.moulberry.moulconfig.annotations.ConfigOption; + +public class Notifications { + @Expose + @ConfigOption( + name = "Update Messages", + desc = "Give a notification in chat whenever a new version of NEU is released" + ) + @ConfigEditorDropdown(values = {"Off", "Releases", "Pre-Releases"}) + public int updateChannel = 1; + + @Expose + @ConfigOption( + name = "Missing repo warning", + desc = "Warning when repo data is missing or out of date" + ) + @ConfigEditorBoolean + public boolean outdatedRepo = 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 = "OldAnimations Warning", + desc = "Warning when an unsupported OldAnimations mod is used" + ) + @ConfigEditorBoolean + public boolean doOamNotif = true; + + @Expose + @ConfigOption( + name = "Fast Render Warning", + desc = "\u00a7cIf and ONLY if you have Fast Render disabled and are still seeing the warning, you can disable it here.\nDisabling it with Fast Render still on will lead to broken features." + ) + @ConfigEditorBoolean + public boolean doFastRenderNotif = true; + + @Expose + @ConfigOption( + name = "Booster Cookie Warning", + desc = "Warning when a booster cookie is about to expire" + ) + @ConfigEditorBoolean + public boolean doBoosterNotif = false; + + @Expose + @ConfigOption( + name = "Booster Cookie Warning Minutes", + desc = "Change the minimum time required for the Booster Cookie warning to activate" + ) + @ConfigEditorSlider( + minValue = 10, + maxValue = 5760, + minStep = 25 + ) + public int boosterCookieWarningMins = 1440; + + @Expose + @ConfigOption( + name = "Ender Nodes", + desc = "" + ) + @ConfigEditorAccordion(id = 1) + public boolean enderNodeAccordion = true; + + @Expose + @ConfigOption( + name = "Nested Endermite Alert", + desc = "It will alert the user if a nested endermite gets spawned" + ) + @ConfigEditorBoolean + @ConfigAccordionId(id = 1) + public boolean endermiteAlert = true; + + @Expose + @ConfigOption( + name = "Nested Endermite Alert Color", + desc = "The color the alert will be shown" + ) + @ConfigEditorColour + @ConfigAccordionId(id = 1) + public String endermiteAlertColor = "0:255:194:0:174"; + + @Expose + @ConfigOption( + name = "Nested Endermite Alert Display Time", + desc = "How long the display would stay for in ticks" + ) + @ConfigEditorSlider( + minValue = 1, + maxValue = 200, + minStep = 20 + ) + @ConfigAccordionId(id = 1) + public int endermiteAlertTicks = 20; +} diff --git a/src/main/java/io/github/moulberry/notenoughupdates/options/separatesections/PetOverlay.java b/src/main/java/io/github/moulberry/notenoughupdates/options/separatesections/PetOverlay.java new file mode 100644 index 00000000..8a0f7884 --- /dev/null +++ b/src/main/java/io/github/moulberry/notenoughupdates/options/separatesections/PetOverlay.java @@ -0,0 +1,141 @@ +/* + * Copyright (C) 2022 NotEnoughUpdates contributors + * + * This file is part of NotEnoughUpdates. + * + * NotEnoughUpdates is free software: you can redistribute it + * and/or modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation, either + * version 3 of the License, or (at your option) any later version. + * + * NotEnoughUpdates is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public License + * along with NotEnoughUpdates. If not, see . + */ + +package io.github.moulberry.notenoughupdates.options.separatesections; + +import com.google.gson.annotations.Expose; +import io.github.moulberry.notenoughupdates.core.config.Position; +import io.github.moulberry.moulconfig.annotations.ConfigEditorBoolean; +import io.github.moulberry.moulconfig.annotations.ConfigEditorDraggableList; +import io.github.moulberry.moulconfig.annotations.ConfigEditorDropdown; +import io.github.moulberry.moulconfig.annotations.ConfigOption; + +import java.util.ArrayList; +import java.util.Arrays; +import java.util.List; + +public class PetOverlay { + @Expose + @ConfigOption( + name = "Enable Pet Info Overlay", + desc = "Shows current active pet and pet exp on screen." + ) + @ConfigEditorBoolean + public boolean enablePetInfo = false; + + @Expose + public Position petInfoPosition = new Position(-1, -1); + + @Expose + @ConfigOption( + name = "Pet Overlay Text", + desc = "\u00a7eDrag text to change the appearance of the overlay\n" + + "\u00a7rEquip a pet to show the overlay" + ) + @ConfigEditorDraggableList( + exampleText = { + "\u00a7a[Lvl 37] \u00a7fRock", + "\u00a7b2,312.9/2,700\u00a7e (85.7%)", + "\u00a7b2.3k/2.7k\u00a7e (85.7%)", + "\u00a7bXP/h: \u00a7e27,209", + "\u00a7bTotal XP: \u00a7e30,597.9", + "\u00a7bHeld Item: \u00a7fMining Exp Boost", + "\u00a7bUntil L38: \u00a7e5m13s", + "\u00a7bUntil L100: \u00a7e2d13h" + } + ) + public List petOverlayText = new ArrayList<>(Arrays.asList(0, 2, 3, 6, 4)); + + @Expose + @ConfigOption( + name = "Pet Overlay Icon", + desc = "Show the icon of the pet you have equiped in the overlay" + ) + @ConfigEditorBoolean + public boolean petOverlayIcon = true; + + @Expose + @ConfigOption( + name = "Pet Info Overlay Style", + desc = "Change the style of the Pet Info overlay" + ) + @ConfigEditorDropdown( + values = {"Background", "No Shadow", "Shadow", "Full Shadow"} + ) + public int petInfoOverlayStyle = 0; + + @Expose + @ConfigOption( + name = "Show Last Pet", + desc = "Show 2 pets on the overlay\nUseful if training two pets at once with autopet" + ) + @ConfigEditorBoolean + public boolean dualPets = false; + + @Expose + @ConfigOption( + name = "Pet Inventory Display", + desc = "Shows an overlay in your inventory showing your current pet\n" + + "\u00A7cRequires Hide Potion Effects to be enabled" + ) + @ConfigEditorBoolean + public boolean petInvDisplay = false; + + @Expose + @ConfigOption( + name = "GUI Style", + desc = "Change the colour of the GUI" + ) + @ConfigEditorDropdown( + values = {"Minecraft", "Grey", "PacksHQ Dark", "Transparent", "FSR"} + ) + public int colourStyle = 0; + + @Expose + @ConfigOption( + name = "Click To Open Pets", + desc = "Click on the hud to open /pets" + ) + @ConfigEditorBoolean + public boolean sendPetsCommand = true; + + @Expose + @ConfigOption( + name = "Hide Pet Inventory Tooltip", + desc = "Hides the tooltip of your active in your inventory" + ) + @ConfigEditorBoolean + public boolean hidePetTooltip = false; + + @Expose + @ConfigOption( + name = "Show upgraded Pet Level", + desc = "Show the estimated pet level after an upgrade at Kats" + ) + @ConfigEditorBoolean + public boolean showKatSitting = true; + + @Expose + @ConfigOption( + name = "Hide Pet Level Progress", + desc = "Hide the pet level progress information for maxed out pets." + ) + @ConfigEditorBoolean + public boolean hidePetLevelProgress = false; +} diff --git a/src/main/java/io/github/moulberry/notenoughupdates/options/separatesections/ProfileViewer.java b/src/main/java/io/github/moulberry/notenoughupdates/options/separatesections/ProfileViewer.java new file mode 100644 index 00000000..08ddadf8 --- /dev/null +++ b/src/main/java/io/github/moulberry/notenoughupdates/options/separatesections/ProfileViewer.java @@ -0,0 +1,104 @@ +/* + * Copyright (C) 2022 NotEnoughUpdates contributors + * + * This file is part of NotEnoughUpdates. + * + * NotEnoughUpdates is free software: you can redistribute it + * and/or modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation, either + * version 3 of the License, or (at your option) any later version. + * + * NotEnoughUpdates is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public License + * along with NotEnoughUpdates. If not, see . + */ + +package io.github.moulberry.notenoughupdates.options.separatesections; + +import com.google.gson.annotations.Expose; +import io.github.moulberry.notenoughupdates.BuildFlags; +import io.github.moulberry.moulconfig.annotations.ConfigEditorBoolean; +import io.github.moulberry.moulconfig.annotations.ConfigEditorButton; +import io.github.moulberry.moulconfig.annotations.ConfigEditorDraggableList; +import io.github.moulberry.moulconfig.annotations.ConfigOption; + +import java.util.ArrayList; +import java.util.Arrays; +import java.util.List; + +public class ProfileViewer { + + @Expose + @ConfigOption( + name = "Open Profile Viewer", + desc = "Brings up the profile viewer (/pv)\n" + + "Shows stats and networth of players" + ) + @ConfigEditorButton( + runnableId = 13, + buttonText = "Open" + ) + public boolean openPV = true; + + @Expose + @ConfigOption( + name = "Page layout", + desc = "\u00a7rSelect the order of the pages at the top of the Profile Viewer\n" + + "\u00a7eDrag text to rearrange" + ) + @ConfigEditorDraggableList( + exampleText = { + "\u00a7eBasic Info", + "\u00a7eDungeons", + "\u00a7eExtra Info", + "\u00a7eInventories", + "\u00a7eCollections", + "\u00a7ePets", + "\u00a7eMining", + "\u00a7eBingo", + "\u00a7eTrophy Fish", + "\u00a7eBestiary", + "\u00a7eCrimson Isle", + "\u00a7eMuseum", + "\u00a7eRift" + }, + allowDeleting = false + ) + public List pageLayout = new ArrayList<>(Arrays.asList(0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12)); + + @Expose + @ConfigOption( + name = "Always show bingo tab", + desc = "Always show bingo tab or only show it when the bingo profile is selected" + ) + @ConfigEditorBoolean + public boolean alwaysShowBingoTab = false; + + @Expose + @ConfigOption( + name = "Show Pronouns in /pv", + desc = "Shows the pronouns of a player in /pv. Data sourced from pronoundb.org" + ) + @ConfigEditorBoolean + public boolean showPronounsInPv = BuildFlags.ENABLE_PRONOUNS_IN_PV_BY_DEFAULT; + + @Expose + @ConfigOption( + name = "Use Soopy Networth", + desc = "Replaces NEU networth with Soopy networth in /pv and /peek" + ) + @ConfigEditorBoolean + public boolean useSoopyNetworth = true; + + @Expose + @ConfigOption( + name = "Display Weight", + desc = "Display Lily and Senither Weight in the Basic PV page" + ) + @ConfigEditorBoolean + public boolean displayWeight = true; +} diff --git a/src/main/java/io/github/moulberry/notenoughupdates/options/separatesections/SkillOverlays.java b/src/main/java/io/github/moulberry/notenoughupdates/options/separatesections/SkillOverlays.java new file mode 100644 index 00000000..c2c81114 --- /dev/null +++ b/src/main/java/io/github/moulberry/notenoughupdates/options/separatesections/SkillOverlays.java @@ -0,0 +1,409 @@ +/* + * Copyright (C) 2022 NotEnoughUpdates contributors + * + * This file is part of NotEnoughUpdates. + * + * NotEnoughUpdates is free software: you can redistribute it + * and/or modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation, either + * version 3 of the License, or (at your option) any later version. + * + * NotEnoughUpdates is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public License + * along with NotEnoughUpdates. If not, see . + */ + +package io.github.moulberry.notenoughupdates.options.separatesections; + +import com.google.gson.annotations.Expose; +import io.github.moulberry.moulconfig.annotations.ConfigAccordionId; +import io.github.moulberry.moulconfig.annotations.ConfigEditorAccordion; +import io.github.moulberry.moulconfig.annotations.ConfigEditorBoolean; +import io.github.moulberry.moulconfig.annotations.ConfigEditorDraggableList; +import io.github.moulberry.moulconfig.annotations.ConfigEditorDropdown; +import io.github.moulberry.moulconfig.annotations.ConfigEditorInfoText; +import io.github.moulberry.moulconfig.annotations.ConfigEditorKeybind; +import io.github.moulberry.moulconfig.annotations.ConfigEditorSlider; +import io.github.moulberry.moulconfig.annotations.ConfigOption; +import io.github.moulberry.notenoughupdates.core.config.Position; +import org.lwjgl.input.Keyboard; + +import java.util.ArrayList; +import java.util.Arrays; +import java.util.List; + +import static io.github.moulberry.notenoughupdates.overlays.FarmingSkillOverlay.CPS_WINDOW_SIZE; + +public class SkillOverlays { + @ConfigOption( + name = "Skill Overlay info", + desc = + "For the overlays to show you need a \u00A7bmathematical hoe\u00A77 or an axe with \u00A7bcultivating\u00A77 " + + "enchant for farming, a pickaxe with \u00A7bcompact\u00A77 for mining or a rod with \u00A7bexpertise\u00A77" + ) + @ConfigEditorInfoText() + public boolean skillInfo = false; + + @ConfigOption( + name = "Farming", + desc = "" + ) + @ConfigEditorAccordion(id = 0) + public boolean farmingAccordion = false; + + @Expose + @ConfigOption( + name = "Enable Farming Overlay", + desc = "Show an overlay while farming with useful information" + ) + @ConfigEditorBoolean + @ConfigAccordionId(id = 0) + 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 with cultivating enchantment while gaining farming xp to show the overlay" + ) + @ConfigEditorDraggableList( + exampleText = { + "\u00a7bCounter: \u00a7e37,547,860", + "\u00a7bCrops/s: \u00a7e732", + "\u00a7bFarming: \u00a7e12\u00a77 [\u00a7e|||||||||||||||||\u00a78||||||||\u00a77] \u00a7e67%", + "\u00a7bCurrent XP: \u00a7e6,734", + "\u00a7bRemaining XP: \u00a7e3,265", + "\u00a7bXP/h: \u00a7e238,129", + "\u00a7bYaw: \u00a7e68.25\u00a7l\u1D52", + "\u00a7bETA: \u00a7e13h12m", + "\u00a7bPitch: \u00a7e69.42\u00a7l\u1D52", + "\u00a7bCultivating: \u00a7e10,137,945/20,000,000", + "\u00a7bCoins/m \u00a7e57,432", + "\u00a7bContest Estimate \u00a7e342,784", + } + ) + @ConfigAccordionId(id = 0) + public List farmingText = new ArrayList<>(Arrays.asList(0, 9, 10, 1, 2, 3, 4, 5, 7, 6, 11)); + + @Expose + @ConfigOption( + name = "Use BZ Price For Coins/m", + desc = "Uses the bazaar price instead of NPC price for coins/m" + ) + @ConfigEditorBoolean + @ConfigAccordionId(id = 0) + public boolean useBZPrice = true; + + @Expose + @ConfigOption( + name = "Pause Timer", + desc = "How many seconds does it wait before pausing the XP/h timer" + ) + @ConfigAccordionId(id = 0) + @ConfigEditorSlider( + minValue = 1, + maxValue = 20, + minStep = 1 + ) + public int farmingPauseTimer = 3; + + @Expose + @ConfigOption( + name = "Crop rate time frame", + desc = "Defines the duration in seconds over which the average crop yield is calculated" + ) + @ConfigAccordionId(id = 0) + @ConfigEditorSlider( + minValue = 1, + maxValue = CPS_WINDOW_SIZE - 2, + minStep = 1 + ) + public int farmingCropsPerSecondTimeFrame = 5; + + @Expose + @ConfigOption( + name = "Crop rate unit", + desc = "Choose the unit for displaying the crop rate" + ) + @ConfigAccordionId(id = 0) + @ConfigEditorDropdown( + values = {"/s", "/m", "/h"} + ) + public int farmingCropRateUnit = 0; + + @Expose + @ConfigOption( + name = "Coin rate unit", + desc = "Choose the unit for displaying the coin rate" + ) + @ConfigAccordionId(id = 0) + @ConfigEditorDropdown( + values = {"/s", "/m", "/h"} + ) + public int farmingCoinRateUnit = 0; + + @Expose + @ConfigOption( + name = "Reset crop rate", + desc = "How many seconds does it wait before resetting the crop rate values when inactive" + ) + @ConfigAccordionId(id = 0) + @ConfigEditorSlider( + minValue = 1, + maxValue = CPS_WINDOW_SIZE - 2, + minStep = 1 + ) + public int farmingResetCPS = 5; + + @Expose + 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"} + ) + @ConfigAccordionId(id = 0) + public int farmingStyle = 0; + + @ConfigOption( + name = "Mining", + desc = "" + ) + @ConfigEditorAccordion(id = 1) + public boolean miningAccordion = false; + + @Expose + @ConfigOption( + name = "Enable Mining Overlay", + desc = "Show an overlay while Mining with useful information" + ) + @ConfigEditorBoolean + @ConfigAccordionId(id = 1) + public boolean miningSkillOverlay = true; + + @Expose + @ConfigOption( + name = "Mining Text", + desc = "\u00a7eDrag text to change the appearance of the overlay\n" + + "\u00a7rHold a pickaxe with compact while gaining mining xp to show the overlay" + ) + @ConfigEditorDraggableList( + exampleText = { + "\u00a7bCompact: \u00a7e547,860", + "\u00a7bBlocks/m: \u00a7e38.29", + "\u00a7bMining: \u00a7e12\u00a77 [\u00a7e|||||||||||||||||\u00a78||||||||\u00a77] \u00a7e67%", + "\u00a7bCurrent XP: \u00a7e6,734", + "\u00a7bRemaining XP: \u00a7e3,265", + "\u00a7bXP/h: \u00a7e238,129", + "\u00a7bYaw: \u00a7e68.25\u00a7l\u1D52", + "\u00a7bETA: \u00a7e13h12m", + "\u00a7bCompact Progress: \u00a7e137,945/150,000" + } + ) + @ConfigAccordionId(id = 1) + public List miningText = new ArrayList<>(Arrays.asList(0, 8, 1, 2, 3, 4, 5, 7)); + + @Expose + @ConfigOption( + name = "Pause Timer", + desc = "How many seconds does it wait before pausing" + ) + @ConfigAccordionId(id = 1) + @ConfigEditorSlider( + minValue = 1, + maxValue = 20, + minStep = 1 + ) + public int miningPauseTimer = 3; + + @Expose + public Position miningPosition = new Position(10, 200); + + @Expose + @ConfigOption( + name = "Mining Style", + desc = "Change the style of the Mining overlay" + ) + @ConfigEditorDropdown( + values = {"Background", "No Shadow", "Shadow", "Full Shadow"} + ) + @ConfigAccordionId(id = 1) + public int miningStyle = 0; + + @ConfigOption( + name = "Fishing", + desc = "" + ) + @ConfigEditorAccordion(id = 3) + public boolean fishingAccordion = false; + @Expose + @ConfigOption( + name = "Enable Fishing Overlay", + desc = "Show an overlay while Fishing with useful information" + ) + @ConfigEditorBoolean + @ConfigAccordionId(id = 3) + public boolean FishingSkillOverlay = true; + + @Expose + @ConfigOption( + name = "Fishing Text", + desc = "\u00a7eDrag text to change the appearance of the overlay\n" + + "\u00a7rHold a fishing rod with expertise enchantment while gaining fishing xp to show the overlay" + ) + @ConfigEditorDraggableList( + exampleText = { + "\u00a7bExpertise: \u00a7e7,945/10,000", + //"\u00a7bCatches/m: \u00a7e38.29", + "\u00a7bFishing: \u00a7e12\u00a77 [\u00a7e|||||||||||||||||\u00a78||||||||\u00a77] \u00a7e67%", + "\u00a7bCurrent XP: \u00a7e6,734", + "\u00a7bRemaining XP: \u00a7e3,265", + "\u00a7bXP/h: \u00a7e238,129", + //"\u00a7bYaw: \u00a7e68.25\u00a7l\u1D52", + "\u00a7bETA: \u00a7e13h12m", + //"\u00a7bExpertise Progress: \u00a7e7,945/10,000", + "\u00a7bTimer: \u00a7e1m15s" + } + ) + @ConfigAccordionId(id = 3) + public List fishingText = new ArrayList<>(Arrays.asList(0, 1, 2, 3, 4, 5, 6)); + + @Expose + @ConfigOption( + name = "Pause Timer", + desc = "How many seconds does it wait before pausing" + ) + @ConfigAccordionId(id = 3) + @ConfigEditorSlider( + minValue = 1, + maxValue = 20, + minStep = 1 + ) + public int fishingPauseTimer = 3; + + @Expose + public Position fishingPosition = new Position(10, 200); + + @Expose + @ConfigOption( + name = "Fishing Style", + desc = "Change the style of the Fishing overlay" + ) + @ConfigEditorDropdown( + values = {"Background", "No Shadow", "Shadow", "Full Shadow"} + ) + @ConfigAccordionId(id = 3) + public int fishingStyle = 0; + + @Expose + @ConfigOption( + name = "Toggle Fishing timer", + desc = "Start or stop the timer on the fishing overlay\n" + + "Also can plays a ding customizable below" + ) + @ConfigEditorKeybind(defaultKey = Keyboard.KEY_END) + @ConfigAccordionId(id = 3) + public int fishKey = Keyboard.KEY_END; + + @Expose + @ConfigOption( + name = "Fishing Timer Alert", + desc = "Change the amount of time (seconds) until the timer dings" + ) + @ConfigEditorSlider( + minValue = 0, + maxValue = 600, + minStep = 20 + ) + @ConfigAccordionId(id = 3) + public int customFishTimer = 300; + + @ConfigOption( + name = "Combat", + desc = "" + ) + @ConfigEditorAccordion(id = 4) + public boolean combatAccordion = false; + + @Expose + @ConfigOption( + name = "\u00A7cWarning", + desc = "The combat display will only show if you have a Book of Stats or the Champion enchant" + ) + @ConfigEditorInfoText() + @ConfigAccordionId(id = 4) + public boolean combatInfo = false; + + @Expose + @ConfigOption( + name = "Enable Combat Overlay", + desc = "Show an overlay while Combat with useful information" + ) + @ConfigEditorBoolean + @ConfigAccordionId(id = 4) + public boolean combatSkillOverlay = false; + + @Expose + @ConfigOption( + name = "Combat Text", + desc = "\u00a7eDrag text to change the appearance of the overlay\n" + + "\u00a7rHold an item with Book of Stats to show the display" + ) + @ConfigEditorDraggableList( + exampleText = { + "\u00a7bKills: \u00a7e547,860", + "\u00a7bCombat: \u00a7e12\u00a77 [\u00a7e|||||||||||||||||\u00a78||||||||\u00a77] \u00a7e67%", + "\u00a7bCurrent XP: \u00a7e6,734", + "\u00a7bRemaining XP: \u00a7e3,265", + "\u00a7bXP/h: \u00a7e238,129", + "\u00a7bETA: \u00a7e13h12m", + "\u00a7bChampion XP: \u00a7e3,523" + } + ) + @ConfigAccordionId(id = 4) + public List combatText = new ArrayList<>(Arrays.asList(0, 6, 1, 2, 3, 4, 5)); + + @Expose + @ConfigOption( + name = "Pause Timer", + desc = "How many seconds does it wait before pausing" + ) + @ConfigAccordionId(id = 4) + @ConfigEditorSlider( + minValue = 1, + maxValue = 20, + minStep = 1 + ) + public int combatPauseTimer = 3; + + @Expose + public Position combatPosition = new Position(10, 200); + + @Expose + @ConfigOption( + name = "Combat Style", + desc = "Change the style of the Combat overlay" + ) + @ConfigEditorDropdown( + values = {"Background", "No Shadow", "Shadow", "Full Shadow"} + ) + @ConfigAccordionId(id = 4) + public int combatStyle = 0; + + @Expose + @ConfigOption( + name = "Always show combat overlay", + desc = "Shows combat overlay even if you dont have Book of Stats or the Champion enchant" + ) + @ConfigEditorBoolean + @ConfigAccordionId(id = 4) + public boolean alwaysShowCombatOverlay = false; +} diff --git a/src/main/java/io/github/moulberry/notenoughupdates/options/separatesections/SlayerOverlay.java b/src/main/java/io/github/moulberry/notenoughupdates/options/separatesections/SlayerOverlay.java new file mode 100644 index 00000000..561e4980 --- /dev/null +++ b/src/main/java/io/github/moulberry/notenoughupdates/options/separatesections/SlayerOverlay.java @@ -0,0 +1,89 @@ +/* + * Copyright (C) 2022 NotEnoughUpdates contributors + * + * This file is part of NotEnoughUpdates. + * + * NotEnoughUpdates is free software: you can redistribute it + * and/or modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation, either + * version 3 of the License, or (at your option) any later version. + * + * NotEnoughUpdates is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public License + * along with NotEnoughUpdates. If not, see . + */ + +package io.github.moulberry.notenoughupdates.options.separatesections; + +import com.google.gson.annotations.Expose; +import io.github.moulberry.moulconfig.annotations.ConfigEditorInfoText; +import io.github.moulberry.notenoughupdates.core.config.Position; +import io.github.moulberry.moulconfig.annotations.ConfigEditorBoolean; +import io.github.moulberry.moulconfig.annotations.ConfigEditorDraggableList; +import io.github.moulberry.moulconfig.annotations.ConfigEditorDropdown; +import io.github.moulberry.moulconfig.annotations.ConfigOption; + +import java.util.ArrayList; +import java.util.Arrays; +import java.util.List; + +public class SlayerOverlay { + @Expose + @ConfigOption( + name = "\u00A7cWarning", + desc = "You may have to do 2 bosses before everything shows" + ) + @ConfigEditorInfoText() + public boolean slayerWarning = false; + + @Expose + @ConfigOption( + name = "Enable Slayer Overlay", + desc = "Toggles the slayer overlay" + ) + @ConfigEditorBoolean + public boolean slayerOverlay = false; + + @Expose + @ConfigOption( + name = "Only show when relevant", + desc = "Only shows the overlay when you are in an area where your current Slayer can be completed" + ) + @ConfigEditorBoolean + public boolean onlyShowWhenRelevant = true; + + @Expose + @ConfigOption( + name = "Slayer Text", + desc = "\u00a7eDrag text to change the appearance of the overlay" + ) + @ConfigEditorDraggableList( + exampleText = { + "\u00a7eSlayer: \u00a74Sven", + "\u00a7eRNG Meter: \u00a75100%", + "\u00a7eLvl: \u00a7d7", + "\u00a7eKill time: \u00a7c1:30", + "\u00a7eXP: \u00a7d75,450/100,000", + "\u00a7eBosses till next Lvl: \u00a7d17", + "\u00a7eAverage kill time: \u00a7c3:20" + } + ) + public List slayerText = new ArrayList<>(Arrays.asList(0, 1, 4, 5, 3, 6)); + + @Expose + public Position slayerPosition = new Position(10, 200); + + @Expose + @ConfigOption( + name = "Slayer Style", + desc = "Change the style of the Slayer overlay" + ) + @ConfigEditorDropdown( + values = {"Background", "No Shadow", "Shadow", "Full Shadow"} + ) + public int slayerStyle = 0; +} diff --git a/src/main/java/io/github/moulberry/notenoughupdates/options/separatesections/SlotLocking.java b/src/main/java/io/github/moulberry/notenoughupdates/options/separatesections/SlotLocking.java new file mode 100644 index 00000000..45422347 --- /dev/null +++ b/src/main/java/io/github/moulberry/notenoughupdates/options/separatesections/SlotLocking.java @@ -0,0 +1,112 @@ +/* + * Copyright (C) 2022 NotEnoughUpdates contributors + * + * This file is part of NotEnoughUpdates. + * + * NotEnoughUpdates is free software: you can redistribute it + * and/or modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation, either + * version 3 of the License, or (at your option) any later version. + * + * NotEnoughUpdates is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public License + * along with NotEnoughUpdates. If not, see . + */ + +package io.github.moulberry.notenoughupdates.options.separatesections; + +import com.google.gson.annotations.Expose; +import io.github.moulberry.moulconfig.annotations.ConfigEditorBoolean; +import io.github.moulberry.moulconfig.annotations.ConfigEditorInfoText; +import io.github.moulberry.moulconfig.annotations.ConfigEditorKeybind; +import io.github.moulberry.moulconfig.annotations.ConfigEditorSlider; +import io.github.moulberry.moulconfig.annotations.ConfigOption; +import org.lwjgl.input.Keyboard; + +public class SlotLocking { + @Expose + @ConfigOption( + name = "\u00A7cWarning", + desc = "Make sure you have SBA's locked slots off before you turn NEU's on" + ) + @ConfigEditorInfoText() + public boolean slotLockWarning = false; + + @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 = "Item Swap drop delay", + desc = "Set the delay between swapping to another item and being able to drop it.\n"+ + "This is to fix a bug that allowed you to drop slot locked items." + ) + @ConfigEditorSlider( + minValue = 0, + maxValue = 500, + minStep = 5 + )*/ + public int slotLockSwapDelay = 100; + + @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; +} diff --git a/src/main/java/io/github/moulberry/notenoughupdates/options/separatesections/StorageGUI.java b/src/main/java/io/github/moulberry/notenoughupdates/options/separatesections/StorageGUI.java new file mode 100644 index 00000000..2dfbcf0d --- /dev/null +++ b/src/main/java/io/github/moulberry/notenoughupdates/options/separatesections/StorageGUI.java @@ -0,0 +1,311 @@ +/* + * Copyright (C) 2022-2023 NotEnoughUpdates contributors + * + * This file is part of NotEnoughUpdates. + * + * NotEnoughUpdates is free software: you can redistribute it + * and/or modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation, either + * version 3 of the License, or (at your option) any later version. + * + * NotEnoughUpdates is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public License + * along with NotEnoughUpdates. If not, see . + */ + +package io.github.moulberry.notenoughupdates.options.separatesections; + +import com.google.gson.annotations.Expose; +import io.github.moulberry.moulconfig.annotations.ConfigAccordionId; +import io.github.moulberry.moulconfig.annotations.ConfigEditorAccordion; +import io.github.moulberry.moulconfig.annotations.ConfigEditorBoolean; +import io.github.moulberry.moulconfig.annotations.ConfigEditorColour; +import io.github.moulberry.moulconfig.annotations.ConfigEditorDropdown; +import io.github.moulberry.moulconfig.annotations.ConfigEditorInfoText; +import io.github.moulberry.moulconfig.annotations.ConfigEditorKeybind; +import io.github.moulberry.moulconfig.annotations.ConfigEditorSlider; +import io.github.moulberry.moulconfig.annotations.ConfigOption; +import org.lwjgl.input.Keyboard; + +public class StorageGUI { + @ConfigOption( + name = "Storage Overlay", + desc = "Ender Chest / Backpack" + ) + @ConfigEditorAccordion(id = 1) + public boolean storageOverlayAccordion = false; + + @Expose + public int selectedIndex = 0; + @ConfigOption( + name = "\u00A7cWarning", + desc = "You need Fast Render and Antialiasing off for these settings to work\n" + + "You can find these in your video settings" + ) + @ConfigEditorInfoText() + @ConfigAccordionId(id = 1) + public boolean storageGUIWarning = 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 enableStorageGUI3 = true; + + @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", "Grey", "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 = true; + + @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; + + @Expose + @ConfigOption( + name = "Fancy Glass Panes", + desc = "Replace the glass pane textures in your storage containers with a fancy connected texture" + ) + @ConfigEditorDropdown( + values = {"On", "Locked", "Off"} + ) + @ConfigAccordionId(id = 1) + public int fancyPanes = 0; + + @Expose + @ConfigOption( + name = "Search Bar Autofocus", + desc = "Automatically focus the search bar when pressing keys" + ) + @ConfigEditorBoolean + @ConfigAccordionId(id = 1) + public boolean searchBarAutofocus = true; + + @Expose + @ConfigOption( + name = "Show Enchant Glint", + desc = "Toggle enchant glint in storage GUI" + ) + @ConfigEditorBoolean + @ConfigAccordionId(id = 1) + public boolean showEnchantGlint = true; + + @Expose + @ConfigOption( + name = "Selected Storage Colour", + desc = "Change the colour used to draw the selected backpack border" + ) + @ConfigEditorColour + @ConfigAccordionId(id = 1) + public String selectedStorageColour = "0:255:255:223:0"; + + @Expose + @ConfigOption( + name = "Custom Text Colour", + desc = "Use a custom default text colour.\nOverrides the colour set by the overlay style.\nCan be overridden by using colour codes in the page title." + ) + @ConfigEditorBoolean + @ConfigAccordionId(id = 1) + public boolean useCustomTextColour = false; + + @Expose + @ConfigOption( + name = "Custom Text Colour", + desc = "Requires the above option to be set to true" + ) + @ConfigEditorColour + @ConfigAccordionId(id = 1) + public String customTextColour = "0:255:144:144:144"; + + @Expose + @ConfigOption( + name = "Scrollable Tooltips", + desc = "Support for scrolling tooltips for users with small monitors\n" + + "This will prevent the menu from scrolling while holding the key, allowing you to scroll tooltips" + ) + @ConfigEditorKeybind(defaultKey = 0) + @ConfigAccordionId(id = 1) + public int cancelScrollKey = 0; + + @Expose + @ConfigOption( + name = "Disable Optifine CIT", + desc = "Disables Optifine custom items to improve performance" + ) + @ConfigEditorBoolean + @ConfigAccordionId(id = 1) + public boolean disableCIT = 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 = "Scroll to Backpack", + desc = "Allow scrolling to the backpack using the mouse wheel.\n" + + "\"Scroll (Key)\" = Allow scrolling to 10th slot only while 'Backpack Scroll Key' (default: SHIFT) is pressed" + ) + @ConfigEditorDropdown( + values = {"Scroll (Key)", "Scroll (Always)", "Don't Scroll"} + ) + @ConfigAccordionId(id = 0) + public int scrollToBackpack2 = 0; + + @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; +} diff --git a/src/main/java/io/github/moulberry/notenoughupdates/options/separatesections/Toolbar.java b/src/main/java/io/github/moulberry/notenoughupdates/options/separatesections/Toolbar.java new file mode 100644 index 00000000..446705c5 --- /dev/null +++ b/src/main/java/io/github/moulberry/notenoughupdates/options/separatesections/Toolbar.java @@ -0,0 +1,144 @@ +/* + * Copyright (C) 2022 NotEnoughUpdates contributors + * + * This file is part of NotEnoughUpdates. + * + * NotEnoughUpdates is free software: you can redistribute it + * and/or modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation, either + * version 3 of the License, or (at your option) any later version. + * + * NotEnoughUpdates is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public License + * along with NotEnoughUpdates. If not, see . + */ + +package io.github.moulberry.notenoughupdates.options.separatesections; + +import com.google.gson.annotations.Expose; +import io.github.moulberry.moulconfig.annotations.ConfigAccordionId; +import io.github.moulberry.moulconfig.annotations.ConfigEditorAccordion; +import io.github.moulberry.moulconfig.annotations.ConfigEditorBoolean; +import io.github.moulberry.moulconfig.annotations.ConfigEditorButton; +import io.github.moulberry.moulconfig.annotations.ConfigEditorDropdown; +import io.github.moulberry.moulconfig.annotations.ConfigEditorSlider; +import io.github.moulberry.moulconfig.annotations.ConfigOption; + +public class Toolbar { + @Expose + @ConfigOption( + name = "Edit Toolbar Positions", + desc = "Change the position of the QuickCommands / Search Bar" + ) + @ConfigEditorButton(runnableId = 6, buttonText = "Edit") + public boolean positionButton = true; + + @ConfigOption( + name = "Search Bar", + desc = "" + ) + @ConfigEditorAccordion(id = 0) + public boolean searchBarAccordion = false; + + @Expose + @ConfigOption( + name = "Show Search Bar", + desc = "Show Itemlist search bar in the NEU toolbar" + ) + @ConfigEditorBoolean + @ConfigAccordionId(id = 0) + public boolean searchBar = true; + + @Expose + @ConfigOption( + name = "Show a quick settings button", + desc = "Show quick settings button in the NEU toolbar" + ) + @ConfigEditorBoolean + @ConfigAccordionId(id = 0) + public boolean enableSettingsButton = true; + + @Expose + @ConfigOption( + name = "Show an inventory search button", + desc = "Show button to enable inventory searching in the NEU toolbar" + ) + @ConfigEditorBoolean + @ConfigAccordionId(id = 0) + public boolean enableSearchModeButton = true; + + @Expose + @ConfigOption( + name = "CTRL+F keybind", + desc = "Change the focus of the search bar when pressing CTRL + F" + ) + @ConfigEditorBoolean + @ConfigAccordionId(id = 0) + public boolean ctrlF = true; + + @Expose + @ConfigOption( + name = "Copy calculation result to clipboard", + desc = "Copy the calculation result to clipboard when pressing ENTER in the search bar while calculating" + ) + @ConfigEditorBoolean + @ConfigAccordionId(id = 0) + public boolean copyToClipboardWhenGettingResult = true; + + @Expose + @ConfigOption( + name = "Search Bar Width", + desc = "Change the width of the search bar" + ) + @ConfigEditorSlider( + minValue = 50f, + maxValue = 300f, + minStep = 10f + ) + @ConfigAccordionId(id = 0) + 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 + ) + @ConfigAccordionId(id = 0) + public int searchBarHeight = 40; + + @Expose + @ConfigOption( + name = "Auto turnoff search mode", + desc = "Turns off the inventory search mode after 2 minutes" + ) + @ConfigEditorBoolean + @ConfigAccordionId(id = 0) + public boolean autoTurnOffSearchMode = true; + + @Expose + @ConfigOption( + name = "Show Quick Commands", + desc = "Show QuickCommands\u2122 in the NEU toolbar" + ) + @ConfigEditorBoolean + public boolean quickCommands = false; + + @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; +} diff --git a/src/main/java/io/github/moulberry/notenoughupdates/options/separatesections/TooltipTweaks.java b/src/main/java/io/github/moulberry/notenoughupdates/options/separatesections/TooltipTweaks.java new file mode 100644 index 00000000..99d9da91 --- /dev/null +++ b/src/main/java/io/github/moulberry/notenoughupdates/options/separatesections/TooltipTweaks.java @@ -0,0 +1,354 @@ +/* + * Copyright (C) 2022-2023 NotEnoughUpdates contributors + * + * This file is part of NotEnoughUpdates. + * + * NotEnoughUpdates is free software: you can redistribute it + * and/or modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation, either + * version 3 of the License, or (at your option) any later version. + * + * NotEnoughUpdates is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public License + * along with NotEnoughUpdates. If not, see . + */ + +package io.github.moulberry.notenoughupdates.options.separatesections; + +import com.google.gson.annotations.Expose; +import io.github.moulberry.moulconfig.annotations.ConfigAccordionId; +import io.github.moulberry.moulconfig.annotations.ConfigEditorAccordion; +import io.github.moulberry.moulconfig.annotations.ConfigEditorBoolean; +import io.github.moulberry.moulconfig.annotations.ConfigEditorDraggableList; +import io.github.moulberry.moulconfig.annotations.ConfigEditorDropdown; +import io.github.moulberry.moulconfig.annotations.ConfigEditorKeybind; +import io.github.moulberry.moulconfig.annotations.ConfigEditorSlider; +import io.github.moulberry.moulconfig.annotations.ConfigOption; +import org.lwjgl.input.Keyboard; + +import java.util.ArrayList; +import java.util.Arrays; +import java.util.List; + +public 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", + "\u00a7eInsta-Buys (Hourly)", + "\u00a7eInsta-Sells (Hourly)", + "\u00a7eInsta-Buys (Daily)", + "\u00a7eInsta-Sells (Daily)", + "\u00a7eInsta-Buys (Weekly)", + "\u00a7eInsta-Sells (Weekly)"} + ) + @ConfigAccordionId(id = 0) + public List priceInfoBaz = new ArrayList<>(Arrays.asList(0, 1, 2, 3, 4)); + + @Expose + @ConfigOption( + name = "Show raw craft on items that can't be sold", + desc = "Raw craft cost will be shown on items that can't be sold on the ah or bz" + ) + @ConfigEditorBoolean + @ConfigAccordionId(id = 0) + public boolean rawCraft = true; + + @Expose + @ConfigOption( + name = "Show NPC Sell price on Items", + desc = "Display for how much items can be sold to NPC Shops" + ) + @ConfigEditorBoolean + @ConfigAccordionId(id = 0) + public boolean npcSellPrice = false; + + @Expose + @ConfigOption( + name = "Display donation status", + desc = "Add an extra line on items you have already donated to the museum. Visit all pages of the museum to populate this list." + ) + @ConfigEditorBoolean + @ConfigAccordionId(id = 0) + public boolean museumDonationStatus = false; + + @Expose + @ConfigOption( + name = "Use Short Number Format", + desc = "Use Short Numbers (5.1m) instead of 5,130,302" + ) + @ConfigEditorBoolean + @ConfigAccordionId(id = 0) + public boolean shortNumberFormatPrices = false; + + @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 = "Price info keybind", + desc = "Only show price info if holding a key." + ) + @ConfigEditorBoolean + public boolean disablePriceKey = false; + + @Expose + @ConfigOption( + name = "Show Price info Keybind", + desc = "Hold this key to show a price info tooltip" + ) + @ConfigEditorKeybind(defaultKey = Keyboard.KEY_NONE) + public int disablePriceKeyKeybind = Keyboard.KEY_NONE; + + @Expose + @ConfigOption( + name = "Always show required dungeon items", + desc = "Always show the required items to upgrade to the next star if more than just Essence is needed" + ) + @ConfigEditorBoolean + public boolean alwaysShowRequiredItems = false; + + @Expose + @ConfigOption( + name = "Show reforge stats", + desc = "Show statistics a reforge stone will apply." + ) + @ConfigEditorBoolean + public boolean showReforgeStats = true; + + @Expose + @ConfigOption( + name = "Hide default reforge stats", + desc = "Hides the reforge stats only for Legendary items that Hypixel adds to the Reforge stones" + ) + @ConfigEditorBoolean + public boolean hideDefaultReforgeStats = 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 = "Resize tooltips", + desc = "Resizes tooltips to make them readable" + ) + @ConfigEditorDropdown( + values = {"Default", "Small", "Normal", "Large", "Auto"} + ) + public int guiScale = 0; + + @Expose + @ConfigOption( + name = "Custom tooltips", + desc = "Replace tooltips with neu's custom tooltips" + ) + @ConfigEditorBoolean + public boolean customTooltips = false; + + @Expose + @ConfigOption( + name = "Scrollable Tooltips", + desc = "Make tooltips text scrollable, by making some text lines disappear when using the mouse while hovering over an item." + ) + @ConfigEditorBoolean + public boolean scrollableTooltips = false; + + + @Expose + @ConfigOption( + name = "Expand Pet Exp Requirement", + desc = "Show which the full amount of pet xp required" + ) + @ConfigEditorBoolean + public boolean petExtendExp = false; + + @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; + + @Expose + @ConfigOption( + name = "Power Stone Stats", + desc = "Show your real magical power and real stat increase on power stones" + ) + @ConfigEditorBoolean + public boolean powerStoneStats = true; + + @ConfigOption( + name = "RNG Meter", + desc = "" + ) + @ConfigEditorAccordion(id = 1) + public boolean rngMeter = false; + + @Expose + @ConfigOption( + name = "Fraction Display", + desc = "Show the fraction instead of the percentage in the slayer and dungeon rng meter inventory" + ) + @ConfigEditorBoolean + @ConfigAccordionId(id = 1) + public boolean rngMeterFractionDisplay = true; + + @Expose + @ConfigOption( + name = " Profit Per Score/XP", + desc = "Show the amount of coins per Score/XP in the rng meter inventory" + ) + @ConfigEditorBoolean + @ConfigAccordionId(id = 1) + public boolean rngMeterProfitPerUnit = true; + + @Expose + @ConfigOption( + name = "Dungeon/Slayer Needed Counter", + desc = "Show the amount of dungeon runs or slayer bosses needed for the rng meter to fill up" + ) + @ConfigEditorBoolean + @ConfigAccordionId(id = 1) + public boolean rngMeterRunsNeeded = true; + + @Expose + @ConfigOption( + name = "Abiphone NPC Requirements", + desc = "Show what the NPC needs in order to add him as contact in the abiphone" + ) + @ConfigEditorBoolean + public boolean abiphoneContactRequirements = true; + + @Expose + @ConfigOption( + name = "Abiphone NPC Location", + desc = "Click on an NPC to set a marker at the location" + ) + @ConfigEditorBoolean + public boolean abiphoneContactMarker = true; + + @Expose + @ConfigOption( + name = "Essence Price In Shop", + desc = "Show the essence price in the essence shop in the dungeon hub" + ) + @ConfigEditorBoolean + public boolean essencePriceInEssenceShop = true; + + @ConfigOption( + name = "Garden Visitors", + desc = "" + ) + @ConfigEditorAccordion(id = 2) + public boolean gardenVisitors = false; + + @Expose + @ConfigOption( + name = "Item Cost in Garden NPC", + desc = "Show the item cost in garden NPC shop" + ) + @ConfigEditorBoolean + @ConfigAccordionId(id = 2) + public boolean gardenNpcPrice = true; + + @Expose + @ConfigOption( + name = "Copper value", + desc = "Calculate how much coins is a copper worth" + ) + @ConfigEditorBoolean + @ConfigAccordionId(id = 2) + public boolean copperCoins = true; + + + @Expose + @ConfigOption( + name = "AH items cost threshold", + desc = "Ignore AH items that cost less or equal copper than" + ) + @ConfigEditorSlider( + minValue = 0f, + maxValue = 500f, + minStep = 5f + ) + @ConfigAccordionId(id = 2) + public double AHPriceIgnoreThreshold = 0; + @Expose + @ConfigOption( + name = "Ignore AH items", + desc = "Ignore ALL items that can be sold to AH" + ) + @ConfigEditorBoolean + @ConfigAccordionId(id = 2) + public boolean ignoreAllAHItems = true; +} diff --git a/src/main/java/io/github/moulberry/notenoughupdates/options/separatesections/TradeMenu.java b/src/main/java/io/github/moulberry/notenoughupdates/options/separatesections/TradeMenu.java new file mode 100644 index 00000000..8a9a0206 --- /dev/null +++ b/src/main/java/io/github/moulberry/notenoughupdates/options/separatesections/TradeMenu.java @@ -0,0 +1,45 @@ +/* + * Copyright (C) 2022 NotEnoughUpdates contributors + * + * This file is part of NotEnoughUpdates. + * + * NotEnoughUpdates is free software: you can redistribute it + * and/or modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation, either + * version 3 of the License, or (at your option) any later version. + * + * NotEnoughUpdates is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public License + * along with NotEnoughUpdates. If not, see . + */ + +package io.github.moulberry.notenoughupdates.options.separatesections; + +import com.google.gson.annotations.Expose; +import io.github.moulberry.moulconfig.annotations.ConfigEditorBoolean; +import io.github.moulberry.moulconfig.annotations.ConfigOption; + +public class TradeMenu { + @Expose + @ConfigOption( + name = "Enable Custom Trade Menu", + desc = "When trading with other players in SkyBlock, display a special GUI designed to prevent scamming" + ) + @ConfigEditorBoolean + public boolean enableCustomTrade = true; + + @Expose + @ConfigOption( + name = "Price Information", + desc = "Show the price of items in the trade window on both sides" + ) + @ConfigEditorBoolean + public boolean customTradePrices = true; + + @Expose + public boolean customTradePriceStyle = true; +} diff --git a/src/main/java/io/github/moulberry/notenoughupdates/options/separatesections/WardrobeKeybinds.java b/src/main/java/io/github/moulberry/notenoughupdates/options/separatesections/WardrobeKeybinds.java new file mode 100644 index 00000000..8b23e57a --- /dev/null +++ b/src/main/java/io/github/moulberry/notenoughupdates/options/separatesections/WardrobeKeybinds.java @@ -0,0 +1,153 @@ +/* + * Copyright (C) 2022 NotEnoughUpdates contributors + * + * This file is part of NotEnoughUpdates. + * + * NotEnoughUpdates is free software: you can redistribute it + * and/or modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation, either + * version 3 of the License, or (at your option) any later version. + * + * NotEnoughUpdates is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public License + * along with NotEnoughUpdates. If not, see . + */ + +package io.github.moulberry.notenoughupdates.options.separatesections; + +import com.google.gson.annotations.Expose; +import io.github.moulberry.moulconfig.annotations.ConfigAccordionId; +import io.github.moulberry.moulconfig.annotations.ConfigEditorAccordion; +import io.github.moulberry.moulconfig.annotations.ConfigEditorBoolean; +import io.github.moulberry.moulconfig.annotations.ConfigEditorKeybind; +import io.github.moulberry.moulconfig.annotations.ConfigOption; +import org.lwjgl.input.Keyboard; + +public class WardrobeKeybinds { + + @Expose + @ConfigOption( + name = "Enable Wardrobe Keybinds", + desc = "Lets you use your number keys to quickly change your wardrobe" + ) + @ConfigEditorBoolean + public boolean enableWardrobeKeybinds = false; + + @ConfigOption( + name = "Wardrobe Keybinds", + desc = "" + ) + @ConfigEditorAccordion(id = 2) + public boolean wardrobeKeybindAccordion = false; + @Expose + @ConfigOption( + name = "Slot 1", + desc = "Keybind to toggle the first set in your wardrobe" + ) + @ConfigEditorKeybind(defaultKey = Keyboard.KEY_1) + @ConfigAccordionId(id = 2) + public int wardrobeSlot1 = Keyboard.KEY_1; + + @Expose + @ConfigOption( + name = "Slot 2", + desc = "Keybind to toggle the second set in your wardrobe" + ) + @ConfigEditorKeybind(defaultKey = Keyboard.KEY_2) + @ConfigAccordionId(id = 2) + public int wardrobeSlot2 = Keyboard.KEY_2; + + @Expose + @ConfigOption( + name = "Slot 3", + desc = "Keybind to toggle the third set in your wardrobe" + ) + @ConfigEditorKeybind(defaultKey = Keyboard.KEY_3) + @ConfigAccordionId(id = 2) + public int wardrobeSlot3 = Keyboard.KEY_3; + + @Expose + @ConfigOption( + name = "Slot 4", + desc = "Keybind to toggle the fourth set in your wardrobe" + ) + @ConfigEditorKeybind(defaultKey = Keyboard.KEY_4) + @ConfigAccordionId(id = 2) + public int wardrobeSlot4 = Keyboard.KEY_4; + + @Expose + @ConfigOption( + name = "Slot 5", + desc = "Keybind to toggle the fifth set in your wardrobe" + ) + @ConfigEditorKeybind(defaultKey = Keyboard.KEY_5) + @ConfigAccordionId(id = 2) + public int wardrobeSlot5 = Keyboard.KEY_5; + + @Expose + @ConfigOption( + name = "Slot 6", + desc = "Keybind to toggle the sixth set in your wardrobe" + ) + @ConfigEditorKeybind(defaultKey = Keyboard.KEY_6) + @ConfigAccordionId(id = 2) + public int wardrobeSlot6 = Keyboard.KEY_6; + + @Expose + @ConfigOption( + name = "Slot 7", + desc = "Keybind to toggle the seventh set in your wardrobe" + ) + @ConfigEditorKeybind(defaultKey = Keyboard.KEY_7) + @ConfigAccordionId(id = 2) + public int wardrobeSlot7 = Keyboard.KEY_7; + + @Expose + @ConfigOption( + name = "Slot 8", + desc = "Keybind to toggle the eighth set in your wardrobe" + ) + @ConfigEditorKeybind(defaultKey = Keyboard.KEY_8) + @ConfigAccordionId(id = 2) + public int wardrobeSlot8 = Keyboard.KEY_8; + + @Expose + @ConfigOption( + name = "Slot 9", + desc = "Keybind to toggle the ninth set in your wardrobe" + ) + @ConfigEditorKeybind(defaultKey = Keyboard.KEY_9) + @ConfigAccordionId(id = 2) + public int wardrobeSlot9 = Keyboard.KEY_9; + + @Expose + @ConfigOption( + name = "Unequip Wardrobe Slot", + desc = "Keybind to unequip the currently active set in your wardrobe" + ) + @ConfigEditorKeybind(defaultKey = Keyboard.KEY_0) + @ConfigAccordionId(id = 2) + public int wardrobePageUnequip = Keyboard.KEY_0; + + @Expose + @ConfigOption( + name = "Previous Page", + desc = "Keybind to open the previous page in your wardrobe" + ) + @ConfigEditorKeybind(defaultKey = Keyboard.KEY_MINUS) + @ConfigAccordionId(id = 2) + public int wardrobePagePrevious = Keyboard.KEY_MINUS; + + @Expose + @ConfigOption( + name = "Next Page", + desc = "Keybind to open the next page in your wardrobe" + ) + @ConfigEditorKeybind(defaultKey = Keyboard.KEY_EQUALS) + @ConfigAccordionId(id = 2) + public int wardrobePageNext = Keyboard.KEY_EQUALS; +} diff --git a/src/main/java/io/github/moulberry/notenoughupdates/options/separatesections/WorldConfig.java b/src/main/java/io/github/moulberry/notenoughupdates/options/separatesections/WorldConfig.java new file mode 100644 index 00000000..8d957a38 --- /dev/null +++ b/src/main/java/io/github/moulberry/notenoughupdates/options/separatesections/WorldConfig.java @@ -0,0 +1,134 @@ +/* + * Copyright (C) 2022 NotEnoughUpdates contributors + * + * This file is part of NotEnoughUpdates. + * + * NotEnoughUpdates is free software: you can redistribute it + * and/or modify it under the terms of the GNU Lesser General Public + * License as published by the Free Software Foundation, either + * version 3 of the License, or (at your option) any later version. + * + * NotEnoughUpdates is distributed in the hope that it will be useful, + * but WITHOUT ANY WARRANTY; without even the implied warranty of + * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU + * Lesser General Public License for more details. + * + * You should have received a copy of the GNU Lesser General Public License + * along with NotEnoughUpdates. If not, see . + */ + +package io.github.moulberry.notenoughupdates.options.separatesections; + +import com.google.gson.annotations.Expose; +import io.github.moulberry.moulconfig.annotations.ConfigAccordionId; +import io.github.moulberry.moulconfig.annotations.ConfigEditorAccordion; +import io.github.moulberry.moulconfig.annotations.ConfigEditorBoolean; +import io.github.moulberry.moulconfig.annotations.ConfigEditorColour; +import io.github.moulberry.moulconfig.annotations.ConfigOption; + +public class WorldConfig { + + @Expose + @ConfigOption( + name = "Glowing Mushrooms", + desc = "" + ) + @ConfigEditorAccordion(id = 1) + public boolean glowingMushroomAccordion = true; + + @Expose + @ConfigOption( + name = "Highlight Glowing Mushrooms", + desc = "Highlight glowing mushrooms in the mushroom gorge" + ) + @ConfigEditorBoolean + @ConfigAccordionId(id = 1) + public boolean highlightGlowingMushrooms = false; + + @Expose + @ConfigOption( + name = "Glowing Mushroom Colour", + desc = "In which colour should glowing mushrooms be highlighted" + ) + @ConfigEditorColour + @ConfigAccordionId(id = 1) + public String glowingMushroomColor2 = "0:100:142:88:36"; + + @Expose + @ConfigOption( + name = "Ender Nodes", + desc = "" + ) + @ConfigEditorAccordion(id = 2) + public boolean enderNodeAccordion = true; + + @Expose + @ConfigOption( + name = "Highlight Ender Nodes", + desc = "Highlight ender nodes in the end" + ) + @ConfigEditorBoolean + @ConfigAccordionId(id = 2) + public boolean highlightEnderNodes = false; + + @Expose + @ConfigOption( + name = "Ender Nodes Color", + desc = "In which color should ender nodes be highlighted" + ) + @ConfigEditorColour + @ConfigAccordionId(id = 2) + public String enderNodeColor2 = "0:100:0:255:0"; + + @Expose + @ConfigOption( + name = "Frozen Treasures", + desc = "" + ) + @ConfigEditorAccordion(id = 3) + public boolean frozenTreasuresAccordion = true; + + @Expose + @ConfigOption( + name = "Highlight Frozen Treasures", + desc = "Highlight frozen treasures in a glacial cave" + ) + @ConfigEditorBoolean + @ConfigAccordionId(id = 3) + public boolean highlightFrozenTreasures = false; + + @Expose + @ConfigOption( + name = "Frozen Treasures Color", + desc = "In which color should frozen treasures be highlighted" + ) + @ConfigEditorColour + @ConfigAccordionId(id = 3) + public String frozenTreasuresColor2 = "0:100:0:255:0"; + + @Expose + @ConfigOption( + name = "Crystal Hollow Chests", + desc = "" + ) + @ConfigEditorAccordion(id = 4) + public boolean crystalHollowChestsAccordion = true; + + @Expose + @ConfigOption( + name = "Crystal Hollow Chest Highlighter", + desc = "Highlights chests found in the crystal hollows whilst powder mining" + ) + @ConfigEditorBoolean + @ConfigAccordionId(id = 4) + public boolean highlightCrystalHollowChests = false; + + @Expose + @ConfigOption( + name = "Chest Highlight Color", + desc = "In which color should chests be highlighted" + ) + @ConfigEditorColour + @ConfigAccordionId(id = 4) + public String crystalHollowChestColor = "0:66:255:0:41"; +} diff --git a/src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/AHGraph.java b/src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/AHGraph.java deleted file mode 100644 index 213fa976..00000000 --- a/src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/AHGraph.java +++ /dev/null @@ -1,163 +0,0 @@ -/* - * Copyright (C) 2022 NotEnoughUpdates contributors - * - * This file is part of NotEnoughUpdates. - * - * NotEnoughUpdates is free software: you can redistribute it - * and/or modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation, either - * version 3 of the License, or (at your option) any later version. - * - * NotEnoughUpdates is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public License - * along with NotEnoughUpdates. If not, see . - */ - -package io.github.moulberry.notenoughupdates.options.seperateSections; - -import com.google.gson.annotations.Expose; -import io.github.moulberry.moulconfig.annotations.ConfigEditorBoolean; -import io.github.moulberry.moulconfig.annotations.ConfigEditorColour; -import io.github.moulberry.moulconfig.annotations.ConfigEditorDropdown; -import io.github.moulberry.moulconfig.annotations.ConfigEditorKeybind; -import io.github.moulberry.moulconfig.annotations.ConfigEditorSlider; -import io.github.moulberry.moulconfig.annotations.ConfigEditorText; -import io.github.moulberry.moulconfig.annotations.ConfigOption; -import org.lwjgl.input.Keyboard; - -public class AHGraph { - @Expose - @ConfigOption( - name = "Enable AH/BZ Price Graph", - desc = "Enable or disable the graph." - ) - @ConfigEditorBoolean - public boolean graphEnabled = true; - - @Expose - @ConfigOption( - name = "Keybind", - desc = "Key to press to open the graph." - ) - @ConfigEditorKeybind(defaultKey = Keyboard.KEY_P) - public int graphKey = Keyboard.KEY_P; - - @Expose - @ConfigOption( - name = "GUI Style", - desc = "Change the style of the graph GUI" - ) - @ConfigEditorDropdown( - values = {"Minecraft", "Grey", "PacksHQ Dark", "FSR"} - ) - public int graphStyle = 0; - - @Expose - @ConfigOption( - name = "Default Time", - desc = "Change the default time period for the graph." - ) - @ConfigEditorDropdown( - values = {"1 Hour", "1 Day", "1 Week", "All Time"} - ) - public int defaultMode = 1; - - @Expose - @ConfigOption( - name = "Graph Colour", - desc = "Set a custom colour for the graph." - ) - @ConfigEditorColour - public String graphColor = "0:255:0:255:0"; - - @Expose - @ConfigOption( - name = "Secondary Graph Colour", - desc = "Set a custom colour for the second graph line." - ) - @ConfigEditorColour - public String graphColor2 = "0:255:255:255:0"; - - @Expose - @ConfigOption( - name = "Moving Average", - desc = "Whether the graph should have a moving average line or not." - ) - @ConfigEditorBoolean - public boolean movingAverages = false; - // Disabled by default because it looks weird to people who don't know what it is - - @Expose - @ConfigOption( - name = "Moving Average Size (%)", - desc = "The percent of the time displayed that should be averaged." - ) - @ConfigEditorSlider( - minValue = 0.05f, - maxValue = 0.5f, - minStep = 0.05f - ) - public double movingAveragePercent = 0.2; - - @Expose - @ConfigOption( - name = "Moving Average Colour", - desc = "Set a custom colour for the graph's moving average line." - ) - @ConfigEditorColour - public String movingAverageColor = "0:255:0:255:171"; - - @Expose - @ConfigOption( - name = "Secondary Moving Average Colour", - desc = "Set a custom colour for the second graph's secondary moving average line line." - ) - @ConfigEditorColour - public String movingAverageColor2 = "0:255:255:109:0"; - - @Expose - @ConfigOption( - name = "Data Source", - desc = "Where NEU should get the data for the graph.\nPrices are only stored locally if this is set to 'Local'." - ) - @ConfigEditorDropdown( - values = {"Server", "Local"} - ) - public int dataSource = 0; - - @Expose - @ConfigOption( - name = "Price History API", - desc = "§4Do §lNOT §r§4change this, unless you know exactly what you are doing\n§fDefault: §apricehistory.notenoughupdates.org" - ) - @ConfigEditorText - public String serverUrl = "pricehistory.notenoughupdates.org"; - - @Expose - @ConfigOption( - name = "Data Retention", - desc = "Change the time (in days) that data is kept for.\nLonger retention require more storage." - ) - @ConfigEditorSlider( - minValue = 1, - maxValue = 30, - minStep = 1 - ) - public int dataRetention = 7; - - @Expose - @ConfigOption( - name = "Number of Graph Zones", - desc = "Change the number of graph zones.\nHigher numbers will have more detail, but will look way more cramped." - ) - @ConfigEditorSlider( - minValue = 50, - maxValue = 300, - minStep = 1 - ) - public int graphZones = 175; -} diff --git a/src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/AHTweaks.java b/src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/AHTweaks.java deleted file mode 100644 index 7edb6c7d..00000000 --- a/src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/AHTweaks.java +++ /dev/null @@ -1,149 +0,0 @@ -/* - * Copyright (C) 2022 NotEnoughUpdates contributors - * - * This file is part of NotEnoughUpdates. - * - * NotEnoughUpdates is free software: you can redistribute it - * and/or modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation, either - * version 3 of the License, or (at your option) any later version. - * - * NotEnoughUpdates is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public License - * along with NotEnoughUpdates. If not, see . - */ - -package io.github.moulberry.notenoughupdates.options.seperateSections; - -import com.google.gson.annotations.Expose; -import io.github.moulberry.moulconfig.annotations.ConfigAccordionId; -import io.github.moulberry.moulconfig.annotations.ConfigEditorAccordion; -import io.github.moulberry.moulconfig.annotations.ConfigEditorBoolean; -import io.github.moulberry.moulconfig.annotations.ConfigEditorSlider; -import io.github.moulberry.moulconfig.annotations.ConfigOption; - -public class AHTweaks { - @ConfigOption( - name = "Search GUI", - desc = "" - ) - @ConfigEditorAccordion(id = 0) - public boolean searchAccordion = false; - - @Expose - @ConfigOption( - name = "Enable Search GUI", - desc = "Use the advanced search GUI with autocomplete and history instead of the normal sign GUI\n\u00a7eStar Selection Texture: Johnny#4567" - ) - @ConfigEditorBoolean - @ConfigAccordionId(id = 0) - public boolean enableSearchOverlay = true; - - @Expose - @ConfigOption( - name = "Keep Previous Search", - desc = "Don't clear the search bar after closing the GUI" - ) - @ConfigEditorBoolean - @ConfigAccordionId(id = 0) - public boolean keepPreviousSearch = false; - - @Expose - @ConfigOption( - name = "Past Searches", - desc = "Show past searches below the autocomplete box" - ) - @ConfigEditorBoolean - @ConfigAccordionId(id = 0) - public boolean showPastSearches = true; - - @Expose - @ConfigOption( - name = "ESC to Full Close", - desc = "Make pressing ESCAPE close the search GUI without opening up the AH again\n" + - "ENTER can still be used to search" - ) - @ConfigEditorBoolean - @ConfigAccordionId(id = 0) - public boolean escFullClose = true; - - @ConfigOption( - name = "BIN Warning", - desc = "" - ) - @ConfigEditorAccordion(id = 1) - public boolean binWarningAccordion = false; - - @Expose - @ConfigOption( - name = "Enable Undercut BIN Warning", - desc = "Ask for confirmation when BINing an item for below X% of lowest bin" - ) - @ConfigEditorBoolean - @ConfigAccordionId(id = 1) - public boolean underCutWarning = true; - - @Expose - @ConfigOption( - name = "Enable Overcut BIN Warning", - desc = "Ask for confirmation when BINing an item for over X% of lowest bin" - ) - @ConfigEditorBoolean - @ConfigAccordionId(id = 1) - public boolean overCutWarning = true; - - @Expose - @ConfigOption( - name = "Undercut Warning Threshold", - desc = "Threshold for BIN warning\nExample: 10% means warn if sell price is 10% lower than lowest bin" - ) - @ConfigEditorSlider( - minValue = 0.0f, - maxValue = 100.0f, - minStep = 5f - ) - @ConfigAccordionId(id = 1) - public float warningThreshold = 10f; - - @Expose - @ConfigOption( - name = "Overcut Warning Threshold", - desc = "Threshold for BIN warning\nExample: 50% means warn if sell price is 50% higher than lowest bin\n\u00A7c\u00a7lWARNING: \u00A7r\u00A7c100% will if above lbin always trigger, 0% instead will never trigger" - ) - @ConfigEditorSlider( - minValue = 0.0f, - maxValue = 100.0f, - minStep = 5f - ) - @ConfigAccordionId(id = 1) - public float overcutWarningThreshold = 50f; - - @ConfigOption( - name = "Sort Warning", - desc = "" - ) - @ConfigEditorAccordion(id = 2) - public boolean sortWarningAccordion = false; - - @Expose - @ConfigOption( - name = "Enable Sort Warning", - desc = "Show the sort mode when the mode is not 'Lowest Price'" - ) - @ConfigEditorBoolean - @ConfigAccordionId(id = 2) - public boolean enableSortWarning = true; - - @Expose - @ConfigOption( - name = "Enable AH Sell Value", - desc = "Display profit information (coins to collect, value if all sold, expired and unclaimed auctions)" - ) - @ConfigEditorBoolean - public boolean enableAhSellValue = true; - -} diff --git a/src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/AccessoryBag.java b/src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/AccessoryBag.java deleted file mode 100644 index 2726b1af..00000000 --- a/src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/AccessoryBag.java +++ /dev/null @@ -1,34 +0,0 @@ -/* - * Copyright (C) 2022 NotEnoughUpdates contributors - * - * This file is part of NotEnoughUpdates. - * - * NotEnoughUpdates is free software: you can redistribute it - * and/or modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation, either - * version 3 of the License, or (at your option) any later version. - * - * NotEnoughUpdates is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public License - * along with NotEnoughUpdates. If not, see . - */ - -package io.github.moulberry.notenoughupdates.options.seperateSections; - -import com.google.gson.annotations.Expose; -import io.github.moulberry.moulconfig.annotations.ConfigEditorBoolean; -import io.github.moulberry.moulconfig.annotations.ConfigOption; - -public class AccessoryBag { - @Expose - @ConfigOption( - name = "Enable Accessory Bag Overlay", - desc = "Show an overlay on the accessory bag screen which gives useful information about your accessories" - ) - @ConfigEditorBoolean - public boolean enableOverlay = true; -} diff --git a/src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/ApiData.java b/src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/ApiData.java deleted file mode 100644 index 80370ba9..00000000 --- a/src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/ApiData.java +++ /dev/null @@ -1,146 +0,0 @@ -/* - * Copyright (C) 2022-2023 NotEnoughUpdates contributors - * - * This file is part of NotEnoughUpdates. - * - * NotEnoughUpdates is free software: you can redistribute it - * and/or modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation, either - * version 3 of the License, or (at your option) any later version. - * - * NotEnoughUpdates is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public License - * along with NotEnoughUpdates. If not, see . - */ - -package io.github.moulberry.notenoughupdates.options.seperateSections; - -import com.google.gson.annotations.Expose; -import io.github.moulberry.moulconfig.annotations.ConfigAccordionId; -import io.github.moulberry.moulconfig.annotations.ConfigEditorAccordion; -import io.github.moulberry.moulconfig.annotations.ConfigEditorBoolean; -import io.github.moulberry.moulconfig.annotations.ConfigEditorButton; -import io.github.moulberry.moulconfig.annotations.ConfigEditorText; -import io.github.moulberry.moulconfig.annotations.ConfigOption; - -public class ApiData { - - @Expose - @ConfigOption( - name = "Unlock the API data tab", - desc = "If you turn this off, you will need to re-do the IQ test" - ) - @ConfigEditorBoolean - public boolean apiDataUnlocked = false; - - @Expose - @ConfigOption( - name = "Api Key", - desc = "Hypixel API key." - ) - @ConfigEditorText - public String apiKey = ""; - - @ConfigEditorAccordion(id = 0) - @ConfigOption(name = "Repository", desc = "") - public boolean repository = false; - - @Expose - @ConfigOption( - name = "Automatically Update Repository", - desc = "Update the repository on every startup" - ) - @ConfigEditorBoolean() - @ConfigAccordionId(id = 0) - public boolean autoupdate_new = true; - - @ConfigAccordionId(id = 0) - @ConfigOption( - name = "Update Repository now", - desc = "Refresh your repository" - ) - @ConfigEditorButton(runnableId = 22, buttonText = "Update") - public int updateRepositoryButton = 0; - - @ConfigEditorAccordion(id = 1) - @ConfigAccordionId(id = 0) - @ConfigOption( - name = "Repository Location", - desc = "" - ) - public boolean repositoryLocation = false; - - @ConfigAccordionId(id = 1) - @ConfigOption( - name = "Use default repository", - desc = "The latest, most up to date item list for the official NEU releases." - ) - @ConfigEditorButton(runnableId = 23, buttonText = "Reset") - public int setRepositoryToDefaultButton = 0; - - @Expose - @ConfigAccordionId(id = 1) - @ConfigOption( - name = "Repository User", - desc = "Repository User" - ) - @ConfigEditorText - public String repoUser = "NotEnoughUpdates"; - - @Expose - @ConfigAccordionId(id = 1) - @ConfigOption( - name = "Repository Name", - desc = "Repository Name" - ) - @ConfigEditorText - public String repoName = "NotEnoughUpdates-REPO"; - - @Expose - @ConfigAccordionId(id = 1) - @ConfigOption( - name = "Repository Branch", - desc = "Repository Branch" - ) - @ConfigEditorText - public String repoBranch = "master"; - - @Expose - @ConfigAccordionId(id = 0) - @ConfigOption( - name = "Edit Mode", - desc = "Enables you to edit items in the item list.\n§4Recommended for repository maintainers only.\n§4§lRemember: §rTurn off auto update as well" - ) - @ConfigEditorBoolean - public boolean repositoryEditing = false; - - @Expose - @ConfigOption( - name = "Lowestbin API", - desc = "§4Do §lNOT §r§4change this, unless you know exactly what you are doing\n§fDefault: §amoulberry.codes" - ) - @ConfigEditorText - public String moulberryCodesApi = "moulberry.codes"; - - - @Expose - @ConfigOption( - name = "Ursa Minor Proxy", - desc = "§4Do §lNOT §r§4change this, unless you know exactly what you are doing" - ) - @ConfigEditorText - public String ursaApi = "https://ursa.notenoughupdates.org/"; - - public String getCommitApiUrl() { - return String.format("https://api.github.com/repos/%s/%s/commits/%s", repoUser, repoName, repoBranch); - } - - public String getDownloadUrl(String commitId) { - return String.format("https://github.com/%s/%s/archive/%s.zip", repoUser, repoName, commitId); - } - -} diff --git a/src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/BazaarTweaks.java b/src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/BazaarTweaks.java deleted file mode 100644 index 4004920f..00000000 --- a/src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/BazaarTweaks.java +++ /dev/null @@ -1,73 +0,0 @@ -/* - * Copyright (C) 2022 NotEnoughUpdates contributors - * - * This file is part of NotEnoughUpdates. - * - * NotEnoughUpdates is free software: you can redistribute it - * and/or modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation, either - * version 3 of the License, or (at your option) any later version. - * - * NotEnoughUpdates is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public License - * along with NotEnoughUpdates. If not, see . - */ - -package io.github.moulberry.notenoughupdates.options.seperateSections; - -import com.google.gson.annotations.Expose; -import io.github.moulberry.moulconfig.annotations.ConfigAccordionId; -import io.github.moulberry.moulconfig.annotations.ConfigEditorAccordion; -import io.github.moulberry.moulconfig.annotations.ConfigEditorBoolean; -import io.github.moulberry.moulconfig.annotations.ConfigOption; - -public class BazaarTweaks { - - @ConfigOption( - name = "Search GUI", - desc = "" - ) - @ConfigEditorAccordion(id = 0) - public boolean searchAccordion = false; - - @Expose - @ConfigOption( - name = "Enable Search GUI", - desc = "Use the advanced search GUI with autocomplete and history instead of the normal sign GUI" - ) - @ConfigEditorBoolean - @ConfigAccordionId(id = 0) - public boolean enableSearchOverlay = true; - - @Expose - @ConfigOption( - name = "Keep Previous Search", - desc = "Don't clear the search bar after closing the GUI" - ) - @ConfigEditorBoolean - @ConfigAccordionId(id = 0) - public boolean keepPreviousSearch = false; - - @Expose - @ConfigOption( - name = "Past Searches", - desc = "Show past searches below the autocomplete box" - ) - @ConfigEditorBoolean - @ConfigAccordionId(id = 0) - public boolean showPastSearches = true; - - @Expose - @ConfigOption( - name = "ESC to Full Close", - desc = "Make pressing ESCAPE close the search GUI without opening up the Bazaar again\n" + - "ENTER can still be used to search" - ) - @ConfigEditorBoolean - @ConfigAccordionId(id = 0) - public boolean escFullClose = true; -} diff --git a/src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/Calendar.java b/src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/Calendar.java deleted file mode 100644 index 1c753b00..00000000 --- a/src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/Calendar.java +++ /dev/null @@ -1,72 +0,0 @@ -/* - * Copyright (C) 2022 NotEnoughUpdates contributors - * - * This file is part of NotEnoughUpdates. - * - * NotEnoughUpdates is free software: you can redistribute it - * and/or modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation, either - * version 3 of the License, or (at your option) any later version. - * - * NotEnoughUpdates is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public License - * along with NotEnoughUpdates. If not, see . - */ - -package io.github.moulberry.notenoughupdates.options.seperateSections; - -import com.google.gson.annotations.Expose; -import io.github.moulberry.moulconfig.annotations.ConfigEditorBoolean; -import io.github.moulberry.moulconfig.annotations.ConfigEditorSlider; -import io.github.moulberry.moulconfig.annotations.ConfigOption; - -public class Calendar { - @Expose - @ConfigOption( - name = "Event Notifications", - desc = "Display notifications for SkyBlock calendar events" - ) - @ConfigEditorBoolean - public boolean eventNotifications = true; - - @Expose - @ConfigOption( - name = "Starting Soon Time", - desc = "Display a notification before events start, time in seconds.\n" + - "0 = No prior notification" - ) - @ConfigEditorSlider( - minValue = 0f, - maxValue = 600f, - minStep = 30f - ) - public int startingSoonTime = 300; - - @Expose - @ConfigOption( - name = "Timer In Inventory", - desc = "Displays the time until the next event at the top of your screen when in inventories" - ) - @ConfigEditorBoolean - public boolean showEventTimerInInventory = true; - - @Expose - @ConfigOption( - name = "Notification Sounds", - desc = "Play a sound whenever events start" - ) - @ConfigEditorBoolean - public boolean eventNotificationSounds = true; - - @Expose - @ConfigOption( - name = "Spooky Night Notification", - desc = "Send a notification during spooky event when the time reaches 7pm" - ) - @ConfigEditorBoolean - public boolean spookyNightNotification = true; -} diff --git a/src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/CustomArmour.java b/src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/CustomArmour.java deleted file mode 100644 index e9ec26e8..00000000 --- a/src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/CustomArmour.java +++ /dev/null @@ -1,56 +0,0 @@ -/* - * Copyright (C) 2022 NotEnoughUpdates contributors - * - * This file is part of NotEnoughUpdates. - * - * NotEnoughUpdates is free software: you can redistribute it - * and/or modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation, either - * version 3 of the License, or (at your option) any later version. - * - * NotEnoughUpdates is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public License - * along with NotEnoughUpdates. If not, see . - */ - -package io.github.moulberry.notenoughupdates.options.seperateSections; - -import com.google.gson.annotations.Expose; -import io.github.moulberry.moulconfig.annotations.ConfigEditorBoolean; -import io.github.moulberry.moulconfig.annotations.ConfigEditorDropdown; -import io.github.moulberry.moulconfig.annotations.ConfigOption; - -public class CustomArmour { - - @Expose - @ConfigOption( - name = "Enable Equipment Hud", - desc = "Shows an overlay in your inventory showing your 4 extra armour slots\n" + - "\u00A7cRequires Hide Potion Effects to be enabled" - ) - @ConfigEditorBoolean - public boolean enableArmourHud = true; - - @Expose - @ConfigOption( - name = "Click To Open Equipment Menu", - desc = "Click on the hud to open /equipment" - ) - @ConfigEditorBoolean - public boolean sendWardrobeCommand = true; - - @Expose - @ConfigOption( - name = "GUI Style", - desc = "Change the colour of the GUI" - ) - @ConfigEditorDropdown( - values = {"Minecraft", "Grey", "PacksHQ Dark", "Transparent", "FSR"} - ) - public int colourStyle = 0; - -} diff --git a/src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/DungeonMapConfig.java b/src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/DungeonMapConfig.java deleted file mode 100644 index b276f8f8..00000000 --- a/src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/DungeonMapConfig.java +++ /dev/null @@ -1,161 +0,0 @@ -/* - * Copyright (C) 2022 NotEnoughUpdates contributors - * - * This file is part of NotEnoughUpdates. - * - * NotEnoughUpdates is free software: you can redistribute it - * and/or modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation, either - * version 3 of the License, or (at your option) any later version. - * - * NotEnoughUpdates is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public License - * along with NotEnoughUpdates. If not, see . - */ - -package io.github.moulberry.notenoughupdates.options.seperateSections; - -import com.google.gson.annotations.Expose; -import io.github.moulberry.notenoughupdates.core.config.Position; -import io.github.moulberry.moulconfig.annotations.ConfigEditorSlider; -import io.github.moulberry.moulconfig.annotations.ConfigOption; - -public class DungeonMapConfig { - @Expose - @ConfigOption( - name = "Border Size", - desc = "Changes the size of the map border, without changing the size of the contents" - ) - @ConfigEditorSlider( - minValue = 0, - maxValue = 5, - minStep = 0.25f - ) - public float dmBorderSize = 1; - - @Expose - @ConfigOption( - name = "Room Size", - desc = "Changes the size of rooms. Useful for higher dungeons with larger maps" - ) - @ConfigEditorSlider( - minValue = 0, - maxValue = 5, - minStep = 0.25f - ) - public float dmRoomSize = 1; - - @Expose - @ConfigOption( - name = "Icon Size", - desc = "Changes the scale of room indicators and player icons" - ) - @ConfigEditorSlider( - minValue = 0.5f, - maxValue = 3f, - minStep = 0.25f - ) - public float dmIconScale = 1.0f; - - @Expose - @ConfigOption( - name = "Border Style", - desc = "Various custom borders from various talented artists.\nUse 'custom' if your texture pack has a custom border" - ) - public int dmBorderStyle = 0; - - @Expose - @ConfigOption( - name = "Show Dungeon Map", - desc = "Show/hide the NEU dungeon map" - ) - public boolean dmEnable = true; - - @Expose - @ConfigOption( - name = "Map Center", - desc = "Center on rooms, or center on your player" - ) - public boolean dmCenterPlayer = true; - - @Expose - @ConfigOption( - name = "Rotate with Player", - desc = "Rotate the map to face the same direction as your player" - ) - public boolean dmRotatePlayer = true; - - @Expose - @ConfigOption( - name = "Orient Checkmarks", - desc = "Checkmarks will always show vertically, regardless of rotation" - ) - public boolean dmOrientCheck = true; - - @Expose - @ConfigOption( - name = "Center Checkmarks", - desc = "Checkmarks will show closer to the center of rooms" - ) - public boolean dmCenterCheck = false; - - @Expose - @ConfigOption( - name = "Player Icon Style", - desc = "Various player icon styles" - ) - public int dmPlayerHeads = 0; - - @Expose - @ConfigOption( - name = "Interpolate Far Players", - desc = "Will make players far away move smoothly" - ) - public boolean dmPlayerInterp = true; - - @Expose - @ConfigOption( - name = "OpenGL Compatibility", - desc = "Compatiblity options for people with bad computers. ONLY use this if you know what you are doing, otherwise the map will look worse" - ) - public int dmCompat = 0; - - @Expose - @ConfigOption( - name = "Background Colour", - desc = "Colour of the map background. Supports opacity & chroma" - ) - public String dmBackgroundColour = "00:170:75:75:75"; - - @Expose - @ConfigOption( - name = "Border Colour", - desc = "Colour of the map border. Supports opacity & chroma. Turn off custom borders to see" - ) - public String dmBorderColour = "00:0:0:0:0"; - - @Expose - @ConfigOption( - name = "Chroma Border Mode", - desc = "Applies a hue offset around the map border" - ) - public boolean dmChromaBorder = false; - - @Expose - @ConfigOption( - name = "Background Blur Factor", - desc = "Changes the blur factor behind the map. Set to 0 to disable blur" - ) - public float dmBackgroundBlur = 0; - - @Expose - @ConfigOption( - name = "Position", - desc = "Change the position of the map" - ) - public Position dmPosition = new Position(10, 10); -} diff --git a/src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/Dungeons.java b/src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/Dungeons.java deleted file mode 100644 index 4d8010c6..00000000 --- a/src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/Dungeons.java +++ /dev/null @@ -1,295 +0,0 @@ -/* - * Copyright (C) 2022 NotEnoughUpdates contributors - * - * This file is part of NotEnoughUpdates. - * - * NotEnoughUpdates is free software: you can redistribute it - * and/or modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation, either - * version 3 of the License, or (at your option) any later version. - * - * NotEnoughUpdates is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public License - * along with NotEnoughUpdates. If not, see . - */ - -package io.github.moulberry.notenoughupdates.options.seperateSections; - -import com.google.gson.annotations.Expose; -import io.github.moulberry.moulconfig.annotations.ConfigAccordionId; -import io.github.moulberry.moulconfig.annotations.ConfigEditorAccordion; -import io.github.moulberry.moulconfig.annotations.ConfigEditorBoolean; -import io.github.moulberry.moulconfig.annotations.ConfigEditorButton; -import io.github.moulberry.moulconfig.annotations.ConfigEditorColour; -import io.github.moulberry.moulconfig.annotations.ConfigEditorDropdown; -import io.github.moulberry.moulconfig.annotations.ConfigEditorInfoText; -import io.github.moulberry.moulconfig.annotations.ConfigEditorSlider; -import io.github.moulberry.moulconfig.annotations.ConfigOption; - -public 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 its 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; - - @Expose - @ConfigOption( - name = "Include Kismet Feather", - desc = "Include Kismet Feathers in the Profit Calculation after rerolling" - ) - @ConfigEditorBoolean - @ConfigAccordionId(id = 1) - public boolean useKismetOnDungeonProfit = true; - - @Expose - @ConfigOption( - name = "Include Essence Cost", - desc = "Include Bazaar Essence Sell Cost in the Profit Calculation for Dungeon Chests" - ) - @ConfigEditorBoolean - @ConfigAccordionId(id = 1) - public boolean useEssenceCostFromBazaar = true; - - @Expose - @ConfigOption( - name = "Warning if Derpy active", - desc = "Shows a warning if the mayor Derpy is active" - ) - @ConfigEditorBoolean - @ConfigAccordionId(id = 1) - public boolean shouldWarningDerpy = true; - - @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; - - @ConfigOption( - name = "\u00A7cWarning", - desc = "You need Fast Render and Antialiasing off for these settings to work\n" + - "You can find these in your video settings" - ) - @ConfigEditorInfoText() - @ConfigAccordionId(id = 2) - public boolean dungeonBlockWarning = 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"; - - @ConfigOption( - name = "Croesus Overlay", - desc = "" - ) - @ConfigEditorAccordion(id = 4) - public boolean croesusAccordion = false; - - @Expose - @ConfigOption( - name = "Enable Croesus Overlay", - desc = "Shows a profit overlay next to your inventory when viewing chest previews at the Croesus NPC" - ) - @ConfigEditorBoolean - @ConfigAccordionId(id = 4) - public boolean croesusProfitOverlay = true; - - @Expose - @ConfigOption( - name = "Sort by profit", - desc = "Lists the chest by profit (descending)" - ) - @ConfigEditorBoolean - @ConfigAccordionId(id = 4) - public boolean croesusSortByProfit = true; - - @Expose - @ConfigOption( - name = "Highlight highest profit", - desc = "Highlight the chest which has the most profit" - ) - @ConfigEditorBoolean - @ConfigAccordionId(id = 4) - public boolean croesusHighlightHighestProfit = true; - -} diff --git a/src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/Enchanting.java b/src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/Enchanting.java deleted file mode 100644 index fd8e50e2..00000000 --- a/src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/Enchanting.java +++ /dev/null @@ -1,242 +0,0 @@ -/* - * Copyright (C) 2022 NotEnoughUpdates contributors - * - * This file is part of NotEnoughUpdates. - * - * NotEnoughUpdates is free software: you can redistribute it - * and/or modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation, either - * version 3 of the License, or (at your option) any later version. - * - * NotEnoughUpdates is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public License - * along with NotEnoughUpdates. If not, see . - */ - -package io.github.moulberry.notenoughupdates.options.seperateSections; - -import com.google.gson.annotations.Expose; -import io.github.moulberry.moulconfig.annotations.ConfigAccordionId; -import io.github.moulberry.moulconfig.annotations.ConfigEditorAccordion; -import io.github.moulberry.moulconfig.annotations.ConfigEditorBoolean; -import io.github.moulberry.moulconfig.annotations.ConfigEditorDropdown; -import io.github.moulberry.moulconfig.annotations.ConfigOption; - -public class Enchanting { - @ConfigOption( - name = "Enchant Table / Hex GUI", - desc = "" - ) - @ConfigEditorAccordion(id = 1) - public boolean tableGUIAccordion = false; - - @Expose - @ConfigOption( - name = "Enable Enchant Table GUI", - desc = "Show a custom GUI when using the Enchant Table" - ) - @ConfigEditorBoolean - @ConfigAccordionId(id = 1) - public boolean enableTableGUI = true; - - @Expose - @ConfigOption( - name = "Enable Hex GUI", - desc = "Show a custom GUI when using the Hex" - ) - @ConfigEditorBoolean - @ConfigAccordionId(id = 1) - public boolean enableHexGUI = true; - - /*@Expose - @ConfigOption( - name = "Incompatible Enchants", - desc = "How to display enchants that are incompatible with your current item, eg. Smite on a sword with Sharpness" - ) - @ConfigEditorDropdown( - values = {"Highlight", "Hide"} - ) - @ConfigAccordionId(id = 1) - public int incompatibleEnchants = 0;*/ - - @Expose - @ConfigOption( - name = "Enchant Sorting", - desc = "Change the method of sorting enchants in the GUI" - ) - @ConfigEditorDropdown( - values = {"By Cost", "Alphabetical"} - ) - @ConfigAccordionId(id = 1) - public int enchantSorting = 0; - - @Expose - @ConfigOption( - name = "Enchant Ordering", - desc = "Change the method of ordering used by the sort" - ) - @ConfigEditorDropdown( - values = {"Ascending", "Descending"} - ) - @ConfigAccordionId(id = 1) - public int enchantOrdering = 0; - - @Expose - @ConfigOption( - name = "Use highest level from /et in /hex", - desc = "Show max level from /et in hex instead of highest possible" - ) - @ConfigEditorBoolean() - @ConfigAccordionId(id = 1) - public boolean maxEnchLevel = false; - - @ConfigOption( - name = "Enchanting Solvers", - desc = "" - ) - @ConfigEditorAccordion(id = 0) - public boolean enchantingSolversAccordion = false; - - @Expose - @ConfigOption( - name = "Enable Solvers", - desc = "Turn on solvers for the experimentation table" - ) - @ConfigEditorBoolean - @ConfigAccordionId(id = 0) - public boolean enableEnchantingSolvers = true; - //In an email from Donpireso (admin) he says not sending a packet at all isn't bannable - //https://cdn.discordapp.com/attachments/823769568933576764/906101631861526559/unknown.png - @Expose - @ConfigOption( - name = "Prevent Misclicks", - desc = "Prevent accidentally failing the Chronomatron and Ultrasequencer experiments" - ) - @ConfigEditorBoolean - @ConfigAccordionId(id = 0) - public boolean preventMisclicks1 = false; - - @Expose - @ConfigOption( - name = "Hide Tooltips", - desc = "Hide the tooltip of items in the Chronomatron and Ultrasequencer experiments" - ) - @ConfigEditorBoolean - @ConfigAccordionId(id = 0) - public boolean hideTooltips = true; - - @Expose - @ConfigOption( - name = "Ultrasequencer Numbers", - desc = "Replace the items in the Ultrasequencer with only numbers" - ) - @ConfigEditorBoolean - @ConfigAccordionId(id = 0) - public boolean seqNumbers = false; - - @Expose - @ConfigOption( - name = "Show Next Click In Chronomatron", - desc = "Shows what block you need to click next in Chronomatron" - ) - @ConfigEditorBoolean - @ConfigAccordionId(id = 0) - public boolean showNextClick = true; - - @Expose - @ConfigOption( - name = "Hide Buttons", - desc = "Hide Inventory Buttons and Quick Commands while in the experimentation table" - ) - @ConfigEditorBoolean - @ConfigAccordionId(id = 0) - public boolean hideButtons = 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" - } - ) - @ConfigAccordionId(id = 0) - 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" - } - ) - @ConfigAccordionId(id = 0) - 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" - } - ) - @ConfigAccordionId(id = 0) - 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" - } - ) - @ConfigAccordionId(id = 0) - 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" - } - ) - @ConfigAccordionId(id = 0) - 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" - } - ) - @ConfigAccordionId(id = 0) - public int supPower = 11; -} diff --git a/src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/Fishing.java b/src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/Fishing.java deleted file mode 100644 index a987f498..00000000 --- a/src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/Fishing.java +++ /dev/null @@ -1,301 +0,0 @@ -/* - * Copyright (C) 2022 NotEnoughUpdates contributors - * - * This file is part of NotEnoughUpdates. - * - * NotEnoughUpdates is free software: you can redistribute it - * and/or modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation, either - * version 3 of the License, or (at your option) any later version. - * - * NotEnoughUpdates is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public License - * along with NotEnoughUpdates. If not, see . - */ - -package io.github.moulberry.notenoughupdates.options.seperateSections; - -import com.google.gson.annotations.Expose; -import io.github.moulberry.moulconfig.annotations.ConfigAccordionId; -import io.github.moulberry.moulconfig.annotations.ConfigEditorAccordion; -import io.github.moulberry.moulconfig.annotations.ConfigEditorBoolean; -import io.github.moulberry.moulconfig.annotations.ConfigEditorColour; -import io.github.moulberry.moulconfig.annotations.ConfigEditorDropdown; -import io.github.moulberry.moulconfig.annotations.ConfigEditorSlider; -import io.github.moulberry.moulconfig.annotations.ConfigOption; - -public 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 = "Enable Fish Warning (R)", - desc = "Display a red '!' when you need to pull the fish up. The warning takes your ping into account" - ) - @ConfigEditorBoolean - @ConfigAccordionId(id = 3) - public boolean incomingFishWarningR = true; - - @Expose - @ConfigOption( - name = "Enable Fish Warning (Y)", - desc = "Display a yellow '!' when a fish is approaching your bobber" - ) - @ConfigEditorBoolean - @ConfigAccordionId(id = 3) - public boolean incomingFishWarning = true; - - @Expose - @ConfigOption( - name = "Enable Hooked Sound", - desc = "Play a high-pitched ding sound when the '!' turns red" - ) - @ConfigEditorBoolean - @ConfigAccordionId(id = 3) - public boolean incomingFishHookedSounds = true; - - @Expose - @ConfigOption( - name = "Enable Approach Sound", - desc = "Play low-pitched ding sounds while the yellow '!' is visible" - ) - @ConfigEditorBoolean - @ConfigAccordionId(id = 3) - public boolean incomingFishIncSounds = false; - - @ConfigOption( - name = "Volumes", - desc = "" - ) - @ConfigAccordionId(id = 3) - @ConfigEditorAccordion(id = 5) - public boolean incomingFishVolumeAccordion = false; - - @Expose - @ConfigOption( - name = "Hooked Sound Vol.", - desc = "Set the volume of the hooked sound" - ) - @ConfigEditorSlider( - minValue = 0, - maxValue = 100, - minStep = 1 - ) - @ConfigAccordionId(id = 5) - public float incomingFishHookedSoundsVol = 25; - - @Expose - @ConfigOption( - name = "Approach Sound Vol.", - desc = "Set the volume of the approaching sound" - ) - @ConfigEditorSlider( - minValue = 0, - maxValue = 100, - minStep = 1 - ) - @ConfigAccordionId(id = 5) - public float incomingFishIncSoundsVol = 10; - - @ConfigOption( - name = "Fishing Particles", - desc = "" - ) - @ConfigEditorAccordion(id = 0) - public boolean particleAccordion = false; - - @Expose - @ConfigOption( - name = "Enable Custom Particles", - desc = "Allow you to modify the particles that appear when a fish is incoming for you and other players" - ) - @ConfigEditorBoolean - @ConfigAccordionId(id = 0) - public boolean enableCustomParticles = false; - - @ConfigOption( - name = "Your Particles", - desc = "" - ) - @ConfigEditorAccordion(id = 1) - @ConfigAccordionId(id = 0) - public boolean yourParticlesAccordion = false; - - @Expose - @ConfigOption( - name = "Particle Type", - desc = "Change the type of the particle that is spawned\n" + - "Particle types with (RGB) support custom colours\n" + - "Set to 'NONE' to disable particles" - ) - @ConfigEditorDropdown( - values = {"Default", "None", "Spark (RGB)", "Swirl (RGB)", "Dust (RGB)", "Flame", "Crit", "Magic Crit"} - ) - @ConfigAccordionId(id = 1) - public int yourParticleType = 0; - - @Expose - @ConfigOption( - name = "Custom Colour", - desc = "Set a custom colour for the particle\n" + - "Only works for particle types with (RGB)" - ) - @ConfigEditorColour - @ConfigAccordionId(id = 1) - public String yourParticleColour = "0:255:255:255:255"; - - @ConfigOption( - name = "Other Players' Particles", - desc = "" - ) - @ConfigEditorAccordion(id = 2) - @ConfigAccordionId(id = 0) - public boolean otherParticlesAccordion = false; - - @Expose - @ConfigOption( - name = "Particle Type", - desc = "Change the type of the particle that is spawned\n" + - "Particle types with (RGB) support custom colours\n" + - "Set to 'NONE' to disable particles" - ) - @ConfigEditorDropdown( - values = {"Default", "None", "Spark (RGB)", "Swirl (RGB)", "Dust (RGB)", "Flame", "Crit", "Magic Crit"} - ) - @ConfigAccordionId(id = 2) - public int otherParticleType = 0; - - @Expose - @ConfigOption( - name = "Custom Colour", - desc = "Set a custom colour for the particle\n" + - "Only works for particle types with (RGB)" - ) - @ConfigEditorColour - @ConfigAccordionId(id = 2) - public String otherParticleColour = "0:255:255:255:255"; - - @ConfigOption( - name = "Rod Line Colours", - desc = "" - ) - @ConfigEditorAccordion(id = 4) - public boolean rodAccordion = false; - - @Expose - @ConfigOption( - name = "Enable Rod Line Colours", - desc = "Change the colour of your and other players' rod lines\n" + - "Also fixes the position of the rod line" - ) - @ConfigEditorBoolean - @ConfigAccordionId(id = 4) - public boolean enableRodColours = true; - - @Expose - @ConfigOption( - name = "Own Rod Colour", - desc = "Change the colour of your own rod lines\n" + - "You can set the opacity to '0' to HIDE" - ) - @ConfigEditorColour - @ConfigAccordionId(id = 4) - public String ownRodColour = "0:255:0:0:0"; - - @Expose - @ConfigOption( - name = "Other Rod Colour", - desc = "Change the colour of other players' rod lines\n" + - "You can set the opacity to '0' to HIDE" - ) - @ConfigEditorColour - @ConfigAccordionId(id = 4) - public String otherRodColour = "0:255:0:0:0"; - - @ConfigOption( - name = "Fishing Timer", - desc = "" - ) - @ConfigEditorAccordion(id = 6) - public boolean fishingAccordion = false; - - @Expose - @ConfigOption( - name = "Display a Fishing Timer", - desc = "Display a timer above your bobber showing your current time" - ) - @ConfigEditorBoolean - @ConfigAccordionId(id = 6) - public boolean fishingTimer = false; - - @Expose - @ConfigOption( - name = "Fishing timer colour", - desc = "Colour of the fishing timer" - ) - @ConfigEditorColour - @ConfigAccordionId(id = 6) - public String fishingTimerColor = "0:255:0:0:0"; - - @Expose - @ConfigOption( - name = "Fishing timer colour (20s)", - desc = "Colour of the fishing timer after 20 seconds or more have passed" - ) - @ConfigEditorColour - @ConfigAccordionId(id = 6) - public String fishingTimerColor30SecPlus = "0:255:0:0:0"; - - @Expose - @ConfigOption( - name = "Fishing timer ping (20s)", - desc = "Play a sound after 20 seconds passed" - ) - @ConfigEditorBoolean - @ConfigAccordionId(id = 6) - public boolean fishingSound30Sec = true; - - @ConfigOption( - name = "Trophy Reward", - desc = "" - ) - @ConfigEditorAccordion(id = 7) - public boolean trophyReward = false; - - @Expose - @ConfigOption( - name = "Trophy Reward Overlay", - desc = "Displays an overlay at Odger that shows information about your trophies" - ) - @ConfigEditorBoolean - @ConfigAccordionId(id = 7) - public boolean trophyRewardOverlay = true; - - @Expose - @ConfigOption( - name = "Trophy Reward Tooltips", - desc = "Displays the exchange of your trophies as a tooltip in the Odger Inventory" - ) - @ConfigEditorBoolean - @ConfigAccordionId(id = 7) - public boolean trophyRewardTooltips = true; - -} diff --git a/src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/Garden.java b/src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/Garden.java deleted file mode 100644 index 6ba99dcf..00000000 --- a/src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/Garden.java +++ /dev/null @@ -1,42 +0,0 @@ -/* - * Copyright (C) 2022 NotEnoughUpdates contributors - * - * This file is part of NotEnoughUpdates. - * - * NotEnoughUpdates is free software: you can redistribute it - * and/or modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation, either - * version 3 of the License, or (at your option) any later version. - * - * NotEnoughUpdates is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public License - * along with NotEnoughUpdates. If not, see . - */ - -package io.github.moulberry.notenoughupdates.options.seperateSections; - -import com.google.gson.annotations.Expose; -import io.github.moulberry.moulconfig.annotations.ConfigEditorBoolean; -import io.github.moulberry.moulconfig.annotations.ConfigOption; - -public class Garden { - @Expose - @ConfigOption( - name = "Mute Composter", - desc = "Mute sounds of composting" - ) - @ConfigEditorBoolean - public boolean muteComposterSounds = false; - - @Expose - @ConfigOption( - name = "Enable Preset Delete Warning", - desc = "Asks for confirmation when deleting a preset" - ) - @ConfigEditorBoolean - public boolean presetDeleteWarning = true; -} diff --git a/src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/ImprovedSBMenu.java b/src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/ImprovedSBMenu.java deleted file mode 100644 index db0571e1..00000000 --- a/src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/ImprovedSBMenu.java +++ /dev/null @@ -1,69 +0,0 @@ -/* - * Copyright (C) 2022 NotEnoughUpdates contributors - * - * This file is part of NotEnoughUpdates. - * - * NotEnoughUpdates is free software: you can redistribute it - * and/or modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation, either - * version 3 of the License, or (at your option) any later version. - * - * NotEnoughUpdates is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public License - * along with NotEnoughUpdates. If not, see . - */ - -package io.github.moulberry.notenoughupdates.options.seperateSections; - -import com.google.gson.annotations.Expose; -import io.github.moulberry.moulconfig.annotations.ConfigEditorBoolean; -import io.github.moulberry.moulconfig.annotations.ConfigEditorDropdown; -import io.github.moulberry.moulconfig.annotations.ConfigOption; - -public class ImprovedSBMenu { - @Expose - @ConfigOption( - name = "Enable Improved SB Menus", - desc = "Change the way that SkyBlock menus (eg. /sbmenu) look" - ) - @ConfigEditorBoolean - public boolean enableSbMenus = true; - - @Expose - @ConfigOption( - name = "Menu Background Style", - desc = "Change the style of the background of SkyBlock menus" - ) - @ConfigEditorDropdown( - values = { - "Dark 1", "Dark 2", "Transparent", "Light 1", "Light 2", "Light 3", - "Unused 1", "Unused 2", "Unused 3", "Unused 4" - } - ) - public int backgroundStyle = 0; - - @Expose - @ConfigOption( - name = "Button Background Style", - desc = "Change the style of the foreground elements in SkyBlock menus" - ) - @ConfigEditorDropdown( - values = { - "Dark 1", "Dark 2", "Transparent", "Light 1", "Light 2", "Light 3", - "Unused 1", "Unused 2", "Unused 3", "Unused 4" - } - ) - public int buttonStyle = 0; - - @Expose - @ConfigOption( - name = "Hide Empty Tooltips", - desc = "Hide the tooltips of glass panes with no text" - ) - @ConfigEditorBoolean - public boolean hideEmptyPanes = true; -} diff --git a/src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/InventoryButtons.java b/src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/InventoryButtons.java deleted file mode 100644 index 0709aadc..00000000 --- a/src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/InventoryButtons.java +++ /dev/null @@ -1,67 +0,0 @@ -/* - * Copyright (C) 2022 NotEnoughUpdates contributors - * - * This file is part of NotEnoughUpdates. - * - * NotEnoughUpdates is free software: you can redistribute it - * and/or modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation, either - * version 3 of the License, or (at your option) any later version. - * - * NotEnoughUpdates is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public License - * along with NotEnoughUpdates. If not, see . - */ - -package io.github.moulberry.notenoughupdates.options.seperateSections; - -import com.google.gson.annotations.Expose; -import io.github.moulberry.moulconfig.annotations.ConfigEditorBoolean; -import io.github.moulberry.moulconfig.annotations.ConfigEditorButton; -import io.github.moulberry.moulconfig.annotations.ConfigEditorDropdown; -import io.github.moulberry.moulconfig.annotations.ConfigEditorSlider; -import io.github.moulberry.moulconfig.annotations.ConfigOption; - -public 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; - - @Expose - @ConfigOption( - name = "Tooltip Delay", - desc = "Change the Tooltip Delay in milliseconds" - ) - @ConfigEditorSlider( - minValue = 0, - maxValue = 1500, - minStep = 50 - ) - public int tooltipDelay = 600; -} diff --git a/src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/ItemOverlays.java b/src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/ItemOverlays.java deleted file mode 100644 index 917c7205..00000000 --- a/src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/ItemOverlays.java +++ /dev/null @@ -1,489 +0,0 @@ -/* - * Copyright (C) 2022 NotEnoughUpdates contributors - * - * This file is part of NotEnoughUpdates. - * - * NotEnoughUpdates is free software: you can redistribute it - * and/or modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation, either - * version 3 of the License, or (at your option) any later version. - * - * NotEnoughUpdates is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public License - * along with NotEnoughUpdates. If not, see . - */ - -package io.github.moulberry.notenoughupdates.options.seperateSections; - -import com.google.gson.annotations.Expose; -import io.github.moulberry.moulconfig.annotations.ConfigEditorInfoText; -import io.github.moulberry.notenoughupdates.core.config.Position; -import io.github.moulberry.moulconfig.annotations.ConfigAccordionId; -import io.github.moulberry.moulconfig.annotations.ConfigEditorAccordion; -import io.github.moulberry.moulconfig.annotations.ConfigEditorBoolean; -import io.github.moulberry.moulconfig.annotations.ConfigEditorColour; -import io.github.moulberry.moulconfig.annotations.ConfigEditorDraggableList; -import io.github.moulberry.moulconfig.annotations.ConfigEditorDropdown; -import io.github.moulberry.moulconfig.annotations.ConfigEditorSlider; -import io.github.moulberry.moulconfig.annotations.ConfigOption; - -import java.util.ArrayList; -import java.util.Arrays; -import java.util.List; - -public class ItemOverlays { - @ConfigOption( - name = "Treecapitator Overlay", - desc = "Jungle Axe" - ) - @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 = "Show in Item durability", - desc = "Show the cooldown of the Treecapitator in the item durability" - ) - @ConfigEditorBoolean - @ConfigAccordionId(id = 0) - public boolean enableCooldownInItemDurability = 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 using the API to check what pet you're using\nto determine the cooldown based off of if you have a 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 = 2) - 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 = 2) - public boolean enableZapperOverlay = true; - - @Expose - @ConfigOption( - name = "Overlay Colour", - desc = "Change the colour of the ghost block outline" - ) - @ConfigEditorColour - @ConfigAccordionId(id = 2) - public String zapperOverlayColour = "0:102:171:5:0"; - - @ConfigOption( - name = "Smooth AOTE/AOTV/AOTL/Hyp", - desc = "" - ) - @ConfigEditorAccordion(id = 3) - public boolean aoteAccordion = false; - - @Expose - @ConfigOption( - name = "Enable Smooth AOTE", - desc = "Teleport smoothly to your destination when using AOTE, AOTV or AOTL" - ) - @ConfigEditorBoolean - @ConfigAccordionId(id = 3) - public boolean enableSmoothAOTE = true; - - @Expose - @ConfigOption( - name = "Enable Smooth Hyperion", - desc = "Teleport smoothly to your destination when using Hyperion" - ) - @ConfigEditorBoolean - @ConfigAccordionId(id = 3) - 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 = 3) - public int smoothTpMillis = 125; - - @Expose - @ConfigOption( - name = "Smooth TP Time (Etherwarp)", - desc = "Teleport smoothly to your destination when using AOTV Etherwarp" - ) - @ConfigEditorSlider( - minValue = 0, - maxValue = 500, - minStep = 25 - ) - @ConfigAccordionId(id = 3) - public int smoothTpMillisEtherwarp = 50; - - @Expose - @ConfigOption( - name = "Disable Hyperion Particles", - desc = "Remove the explosion effect when using a hyperion" - ) - @ConfigEditorBoolean - @ConfigAccordionId(id = 3) - public boolean disableHyperionParticles = true; - - @ConfigOption( - name = "Etherwarp", - desc = "" - ) - @ConfigEditorAccordion(id = 4) - public boolean etherwarpAccordion = false; - - @Expose - @ConfigOption( - name = "Etherwarp Zoom", - desc = "Zoom in on targeted blocks with etherwarp, making it easier to adjust at a distance" - ) - @ConfigEditorBoolean - @ConfigAccordionId(id = 4) - public boolean etherwarpZoom = true; - - @Expose - @ConfigOption( - name = "Enable etherwarp helper overlay", - desc = "Display an overlay which tells you if the etherwarp will fail." - ) - @ConfigEditorBoolean - @ConfigAccordionId(id = 4) - public boolean enableEtherwarpHelperOverlay = true; - - @Expose - @ConfigOption( - name = "Enable etherwarp block overlay", - desc = "Display an overlay that tells you what block you will TP to." - ) - @ConfigEditorBoolean - @ConfigAccordionId(id = 4) - public boolean enableEtherwarpBlockOverlay = true; - - @Expose - @ConfigOption( - name = "Disable overlay when fail", - desc = "Don't display the etherwarp block overlay when you can't TP to the block" - ) - @ConfigEditorBoolean - @ConfigAccordionId(id = 4) - public boolean disableOverlayWhenFailed = false; - - @Expose - @ConfigOption( - name = "Highlight Colour", - desc = "Change the colour of the etherwarp target block outline" - ) - @ConfigEditorColour - @ConfigAccordionId(id = 4) - public String etherwarpHighlightColour = "00:70:156:8:96"; - - @ConfigOption( - name = "Bonemerang Overlay", - desc = "" - ) - @ConfigEditorAccordion(id = 5) - public boolean bonemerangAccordion = false; - - @Expose - @ConfigOption( - name = "Enable Bonemerang Overlay", - desc = "Shows info about the bonemerang while holding it." - ) - @ConfigEditorBoolean - @ConfigAccordionId(id = 5) - public boolean enableBonemerangOverlay = true; - - @Expose - @ConfigOption( - name = "Highlight Targeted Entities", - desc = "Highlight entities that will be hit by your bonemerang" - ) - @ConfigEditorBoolean - @ConfigAccordionId(id = 5) - public boolean highlightTargeted = true; - - @Expose - public Position bonemerangPosition = new Position(-1, -1); - - @Expose - @ConfigOption( - name = "Bonemerang Overlay Text", - desc = "\u00a7eDrag text to change the appearance of the overlay\n" + - "\u00a7rHold a Bonemerang to display the overlay" - ) - @ConfigEditorDraggableList( - exampleText = { - "\u00a7cBonemerang will break!", - "\u00a77Targets: \u00a76\u00a7l10" - } - ) - @ConfigAccordionId(id = 5) - public List bonemerangOverlayText = new ArrayList<>(Arrays.asList(0, 1)); - - @Expose - @ConfigOption( - name = "Bonemerang Overlay Style", - desc = "Change the style of the Bonemerang overlay" - ) - @ConfigEditorDropdown( - values = {"Background", "No Shadow", "Shadow Only", "Full Shadow"} - ) - @ConfigAccordionId(id = 5) - public int bonemerangOverlayStyle = 0; - @Expose - @ConfigOption( - name = "Fast update", - desc = "Updates the bonemerang overlay faster.\n" + - "Might cause some lag." - ) - @ConfigEditorBoolean - @ConfigAccordionId(id = 5) - public boolean bonemerangFastUpdate = false; - - @ConfigOption( - name = "Minion Crystal Radius Overlay", - desc = "" - ) - @ConfigEditorAccordion(id = 6) - 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 = 6) - 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 = 6) - public boolean alwaysShowCrystal = false; - - @ConfigOption( - name = "Farming Overlays", - desc = "" - ) - @ConfigEditorAccordion(id = 7) - public boolean farmingAccordion = false; - - @Expose - @ConfigOption( - name = "Enable Prismapump Overlay", - desc = "Show a block overlay for the effected blocks of prismapump's ability." - ) - @ConfigEditorBoolean - @ConfigAccordionId(id = 7) - public boolean enablePrismapumpOverlay = true; - - @Expose - @ConfigOption( - name = "Enable Hoe Of Tilling Overlay", - desc = "Show a block overlay for the effected blocks of the hoe of tilling's ability." - ) - @ConfigEditorBoolean - @ConfigAccordionId(id = 7) - public boolean enableHoeOverlay = true; - - @Expose - @ConfigOption( - name = "Enable Dirt Wand Overlay", - desc = "Show a block overlay for the effected blocks of dirt wand's ability." - ) - @ConfigEditorBoolean - @ConfigAccordionId(id = 7) - public boolean enableDirtWandOverlay = true; - - @Expose - @ConfigOption( - name = "Enable Scythe Overlay", - desc = "Show a block overlay for the effected blocks of scythe's ability." - ) - @ConfigEditorBoolean - @ConfigAccordionId(id = 7) - public boolean enableScytheOverlay = true; - - @ConfigOption( - name="Custom Wither Cloak", - desc = "" - ) - @ConfigEditorAccordion(id = 8) - public boolean customWitherCloakAccordion = false; - - @Expose - @ConfigAccordionId(id = 8) - @ConfigOption( - name = "Enable Custom Wither Cloak", - desc = "Replaces Hypixel Wither Cloak with custom shields due to the Hypixel Wither Cloak being difficult to see through" - ) - @ConfigEditorBoolean - public boolean customWitherCloakToggle = true; - - @Expose - @ConfigAccordionId(id = 8) - @ConfigOption( - name = "Shield Count", - desc = "The amount of shields circling the player\n0 = No shields" - ) - @ConfigEditorSlider( - minValue = 0, - maxValue = 20, - minStep = 1 - ) - public int customWitherCloakCount = 6; - - @Expose - @ConfigAccordionId(id = 8) - @ConfigOption( - name = "Shield Speed", - desc = "How fast they circle the player\n0 = Not moving\nNegative = Spinning opposite direction" - ) - @ConfigEditorSlider( - minValue = -20f, - maxValue = 20f, - minStep = 1.0f - ) - public double customWitherCloakSpeed = 2d; - - /*@Expose - @ConfigAccordionId(id = 7) - @ConfigOption( - name = "Shield Transparency", - desc = "Changes how visible each shield is\n0 = Invisible" - ) - @ConfigEditorSlider( - minValue = 0f, - maxValue = 1, - minStep = 0.1f - ) - public float customWitherCloakTransparency = 1.0f; - - Couldn't get this to work and couldn't for the life of me figure out why - Cobble8 - */ - - @Expose - @ConfigAccordionId(id = 8) - @ConfigOption( - name = "Shield Distance From Player", - desc = "How far (in blocks) each shield is from the player\n" + - "0 = Inside the player" - ) - @ConfigEditorSlider( - minValue = 0f, - maxValue = 3.0f, - minStep = 0.1f - ) - public float customWitherCloakDistance = 1.2f; - - @Expose - @ConfigAccordionId(id = 8) - @ConfigOption( - name = "\u00A7aInspiration:", - desc = "\u00A76u/Sori0612 \u00A77on \u00A7cReddit\n\n\u00A78https://tinyurl.com/creeperveil" - ) - @ConfigEditorInfoText() - public boolean customWitherCloakCredit = false; - - @Expose - @ConfigOption( - name = "Pickaxe Ability Cooldown", - desc = "Show the cooldown duration of the pickaxe ability as the durability." - ) - @ConfigEditorBoolean - public boolean pickaxeAbility = true; - - @Expose - @ConfigOption( - name = "Bonzo Mask Ability Cooldown", - desc = "Show the cooldown duration of a bonzo mask ability as the durability." - ) - @ConfigEditorBoolean - public boolean bonzoAbility = true; - - @Expose - @ConfigOption( - name = "Spirit Mask Ability Cooldown", - desc = "Show the cooldown duration of the spirit mask ability as the durability." - ) - @ConfigEditorBoolean - public boolean spiritAbility = true; - -} diff --git a/src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/Itemlist.java b/src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/Itemlist.java deleted file mode 100644 index 871c92d9..00000000 --- a/src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/Itemlist.java +++ /dev/null @@ -1,152 +0,0 @@ -/* - * Copyright (C) 2022 NotEnoughUpdates contributors - * - * This file is part of NotEnoughUpdates. - * - * NotEnoughUpdates is free software: you can redistribute it - * and/or modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation, either - * version 3 of the License, or (at your option) any later version. - * - * NotEnoughUpdates is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public License - * along with NotEnoughUpdates. If not, see . - */ - -package io.github.moulberry.notenoughupdates.options.seperateSections; - -import com.google.gson.annotations.Expose; -import io.github.moulberry.moulconfig.annotations.ConfigEditorBoolean; -import io.github.moulberry.moulconfig.annotations.ConfigEditorColour; -import io.github.moulberry.moulconfig.annotations.ConfigEditorDropdown; -import io.github.moulberry.moulconfig.annotations.ConfigEditorSlider; -import io.github.moulberry.moulconfig.annotations.ConfigOption; - -public 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 = "Open when searching", - desc = "Open the Itemlist when in container search mode by double clicking the search bar" - ) - @ConfigEditorBoolean - public boolean openWhenSearching = true; - - - @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"; - - @Expose - @ConfigOption( - name = "Always show Monsters", - desc = "Always show Monster Items in the item list" - ) - @ConfigEditorBoolean( - runnableId = 21 - ) - public boolean alwaysShowMonsters = false; -} diff --git a/src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/LocationEdit.java b/src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/LocationEdit.java deleted file mode 100644 index 187287fb..00000000 --- a/src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/LocationEdit.java +++ /dev/null @@ -1,85 +0,0 @@ -/* - * Copyright (C) 2022 NotEnoughUpdates contributors - * - * This file is part of NotEnoughUpdates. - * - * NotEnoughUpdates is free software: you can redistribute it - * and/or modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation, either - * version 3 of the License, or (at your option) any later version. - * - * NotEnoughUpdates is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public License - * along with NotEnoughUpdates. If not, see . - */ - -package io.github.moulberry.notenoughupdates.options.seperateSections; - -import com.google.gson.annotations.Expose; -import io.github.moulberry.moulconfig.annotations.ConfigAccordionId; -import io.github.moulberry.moulconfig.annotations.ConfigEditorAccordion; -import io.github.moulberry.moulconfig.annotations.ConfigEditorButton; -import io.github.moulberry.moulconfig.annotations.ConfigEditorDropdown; -import io.github.moulberry.moulconfig.annotations.ConfigOption; -import io.github.moulberry.notenoughupdates.core.config.Position; - -public class LocationEdit { - - @ConfigOption( - name = "Edit GUI locations", - desc = "Change the position of NEU's overlays" - ) - @ConfigEditorButton( - runnableId = 4, - buttonText = "Edit" - ) - public Position positions = new Position(-1, -1); - - @Expose - @ConfigOption( - name = "Edit Gui Scale", - desc = "Change the size of NEU's overlays" - ) - @ConfigEditorDropdown( - values = {"Default", "Small", "Normal", "Large", "Auto"} - ) - public int guiScale = 0; - - @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" - ) - public int editDungeonMap = 0; - - @ConfigOption( - name = "Inventory", - desc = "" - ) - @ConfigEditorAccordion(id = 1) - public boolean inventoryAccordion = false; - - @ConfigOption( - name = "Edit Toolbar Positions", - desc = "Change the position of the QuickCommands / Search Bar" - ) - @ConfigAccordionId(id = 1) - @ConfigEditorButton(runnableId = 6, buttonText = "Edit") - public boolean positionButton = true; - - @ConfigOption( - name = "Open Button Editor", - desc = "Open button editor GUI (/neubuttons)" - ) - @ConfigAccordionId(id = 1) - @ConfigEditorButton(runnableId = 7, buttonText = "Open") - public boolean openEditorButton = true; -} diff --git a/src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/Mining.java b/src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/Mining.java deleted file mode 100644 index 7c3481d7..00000000 --- a/src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/Mining.java +++ /dev/null @@ -1,885 +0,0 @@ -/* - * Copyright (C) 2022 NotEnoughUpdates contributors - * - * This file is part of NotEnoughUpdates. - * - * NotEnoughUpdates is free software: you can redistribute it - * and/or modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation, either - * version 3 of the License, or (at your option) any later version. - * - * NotEnoughUpdates is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public License - * along with NotEnoughUpdates. If not, see . - */ - -package io.github.moulberry.notenoughupdates.options.seperateSections; - -import com.google.gson.annotations.Expose; -import io.github.moulberry.notenoughupdates.core.config.Position; -import io.github.moulberry.moulconfig.annotations.ConfigAccordionId; -import io.github.moulberry.moulconfig.annotations.ConfigEditorAccordion; -import io.github.moulberry.moulconfig.annotations.ConfigEditorBoolean; -import io.github.moulberry.moulconfig.annotations.ConfigEditorButton; -import io.github.moulberry.moulconfig.annotations.ConfigEditorDraggableList; -import io.github.moulberry.moulconfig.annotations.ConfigEditorDropdown; -import io.github.moulberry.moulconfig.annotations.ConfigEditorSlider; -import io.github.moulberry.moulconfig.annotations.ConfigOption; - -import java.util.ArrayList; -import java.util.Arrays; -import java.util.List; - -public 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"} - ) - @ConfigAccordionId(id = 0) - public int locWaypoints = 1; - - @Expose - @ConfigOption( - name = "Hide waypoints when at Location", - desc = "Hides the Commission Waypoints if you are already at the location of the waypoint.\n" + - "Only active if Waypoints are set to \"Commissions Only\"" - ) - @ConfigEditorBoolean - @ConfigAccordionId(id = 0) - public boolean hideWaypointIfAtLocation = true; - - @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"} - ) - @ConfigAccordionId(id = 0) - public int emissaryWaypoints = 1; - - @Expose - @ConfigOption( - name = "Enable Powder Ghast Waypoints", - desc = "Shows a waypoint at the location of the Powder Ghast" - ) - @ConfigEditorBoolean - @ConfigAccordionId(id = 0) - public boolean powderGhastWaypoint = true; - - @Expose - @ConfigOption( - name = "Enable Fallen Star Waypoints", - desc = "Shows a waypoint at the location of the Fallen Star" - ) - @ConfigEditorBoolean - @ConfigAccordionId(id = 0) - public boolean fallenStarWaypoint = true; - - @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 = 350, - minStep = 10 - ) - @ConfigAccordionId(id = 1) - public int drillFuelBarWidth = 180; - - @Expose - public Position drillFuelBarPosition = new Position(0, -91, true, false); - - @ConfigOption( - name = "Dwarven Overlay", - desc = "" - ) - @ConfigEditorAccordion(id = 2) - public boolean overlayAccordion = false; - - @Expose - @ConfigOption( - name = "Enable 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 = { - "§3Goblin Slayer: §626.5%\n§3Lucky Raffle: §c0.0%", - "§3Mithril Powder: §26,243", - "§3Gemstone Powder: §d6,243", - "§3Forge 1) §9Diamonite§7: §aReady!", - "§3Pickaxe CD: §a78s", - "§3Star Cult: §a78s", - "§3Sky Mall: §a5x Titanium (78s)" - } - ) - @ConfigAccordionId(id = 2) - public List dwarvenText2 = new ArrayList<>(Arrays.asList(0, 1, 2, 3, 4, 5, 6)); - - @Expose - 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 = "Show Icons", - desc = "Show Icons representing the part of the overlay." - ) - @ConfigEditorBoolean - @ConfigAccordionId(id = 2) - public boolean dwarvenOverlayIcons = true; - - @Expose - @ConfigOption( - name = "Forge Display", - desc = "Change what gets shown in the Forge Display" - ) - @ConfigEditorDropdown( - values = {"Only Done", "Only Working", "Everything Except Locked", "Everything"} - ) - @ConfigAccordionId(id = 2) - public int forgeDisplay = 1; - - @Expose - @ConfigOption( - name = "Forge Location", - desc = "Change when the forge display gets shown" - ) - @ConfigEditorDropdown( - values = {"Dwarven Mines+Crystal Hollows", "Everywhere except dungeons", "Everywhere"} - ) - @ConfigAccordionId(id = 2) - public int forgeDisplayEnabledLocations = 0; - - @Expose - @ConfigOption( - name = "Forge Tab", - desc = "Only show the forge display when tab list is open\n" + - "\u00A7cThis only works outside of Dwarven Caves!" - ) - @ConfigEditorBoolean - @ConfigAccordionId(id = 2) - public boolean forgeDisplayOnlyShowTab = false; - - @Expose - @ConfigOption( - name = "Star Cult Location", - desc = "Change when the Star Cult timer gets shown" - ) - @ConfigEditorDropdown( - values = {"Dwarven Mines+Crystal Hollows", "Everywhere except dungeons", "Everywhere"} - ) - @ConfigAccordionId(id = 2) - public int starCultDisplayEnabledLocations = 0; - - @Expose - @ConfigOption( - name = "Star Cult Tab", - desc = "Only show the star cult timer when tab list is open\n" + - "§cThis only works outside of Dwarven Caves!" - ) - @ConfigEditorBoolean - @ConfigAccordionId(id = 2) - public boolean starCultDisplayOnlyShowTab = false; - - @Expose - @ConfigOption( - name = "Commission Task Tips", - desc = "Show tips to help complete commission tasks" - ) - @ConfigEditorDropdown( - values = {"Off", "Only while sneaking", "Always"} - ) - @ConfigAccordionId(id = 2) - public int commissionTaskTips = 0; - - @Expose - @ConfigOption( - name = "Tips in New Line", - desc = "Show the Commission Task Tips in the next line.") - @ConfigEditorBoolean - @ConfigAccordionId(id = 2) - public boolean commissionTaskTipNewLine = true; - - @ConfigOption( - name = "Metal Detector Solver", - desc = "" - ) - @ConfigEditorAccordion(id = 3) - public boolean metalDetectorSolverAccordion = false; - - @Expose - @ConfigOption( - name = "Enable Waypoints", - desc = - "Enabled the metal detector solver for Mines of Divan, to use this stand still to calculate possible blocks and then if required stand" + - " still on another block." - ) - @ConfigEditorBoolean - @ConfigAccordionId(id = 3) - public boolean metalDetectorEnabled = true; - - @Expose - @ConfigOption( - name = "Show Possible Blocks", - desc = "Show waypoints on possible locations when NEU isn't sure about what block the treasure is." - ) - @ConfigEditorBoolean - @ConfigAccordionId(id = 3) - public boolean metalDetectorShowPossible = false; - - @ConfigOption( - name = "Crystal Hollows Overlay", - desc = "" - ) - @ConfigEditorAccordion(id = 4) - public boolean crystalHollowOverlayAccordion = false; - - @Expose - @ConfigOption( - name = "Enable Crystal Overlay", - desc = "Enables the Crystal Hollows Overlay." - ) - @ConfigEditorBoolean - @ConfigAccordionId(id = 4) - public boolean crystalHollowOverlay = true; - - @Expose - public Position crystalHollowOverlayPosition = new Position(200, 0); - - @Expose - @ConfigOption( - name = "Options", - desc = "Drag text to change the appearance of the overlay!\n" + - "Click add to add extra things!" - ) - @ConfigEditorDraggableList( - exampleText = { - "\u00a73Amber Crystal: \u00a7aPlaced\n" + - "\u00a73Sapphire Crystal: \u00a7eCollected\n" + - "\u00a73Jade Crystal: \u00a7eMissing\n" + - "\u00a73Amethyst Crystal: \u00a7cMissing\n" + - "\u00a73Topaz Crystal: \u00a7cMissing\n", - "\u00a73Crystals: \u00a7a4/5", - "\u00a73Crystals: \u00a7a80%", - "\u00a73Electron Transmitter: \u00a7aDone\n" + - "\u00a73Robotron Reflector: \u00a7eIn Storage\n" + - "\u00a73Superlite Motor: \u00a7eIn Inventory\n" + - "\u00a73Synthetic Heart: \u00a7cMissing\n" + - "\u00a73Control Switch: \u00a7cMissing\n" + - "\u00a73FTX 3070: \u00a7cMissing", - "\u00a73Electron Transmitter: \u00a7a3\n" + - "\u00a73Robotron Reflector: \u00a7e2\n" + - "\u00a73Superlite Motor: \u00a7e1\n" + - "\u00a73Synthetic Heart: \u00a7c0\n" + - "\u00a73Control Switch: \u00a7c0\n" + - "\u00a73FTX 3070: \u00a7c0", - "\u00a73Automaton parts: \u00a7a5/6", - "\u00a73Automaton parts: \u00a7a83%", - "\u00a73Scavenged Lapis Sword: \u00a7aDone\n" + - "\u00a73Scavenged Golden Hammer: \u00a7eIn Storage\n" + - "\u00a73Scavenged Diamond Axe: \u00a7eIn Inventory\n" + - "\u00a73Scavenged Emerald Hammer: \u00a7cMissing\n", - "\u00a73Scavenged Lapis Sword: \u00a7a3\n" + - "\u00a73Scavenged Golden Hammer: \u00a7e2\n" + - "\u00a73Scavenged Diamond Axe: \u00a7e1\n" + - "\u00a73Scavenged Emerald Hammer: \u00a7c0\n", - "\u00a73Mines of Divan parts: \u00a7a3/4", - "\u00a73Mines of Divan parts: \u00a7a75%" - } - ) - @ConfigAccordionId(id = 4) - public List crystalHollowText = new ArrayList<>(Arrays.asList(0, 3, 7)); - - @Expose - @ConfigOption( - name = "Style", - desc = "Change the style of the Crystal Hollows Overlay." - ) - @ConfigEditorDropdown( - values = {"Background", "No Shadow", "Shadow", "Full Shadow"} - ) - @ConfigAccordionId(id = 4) - public int crystalHollowOverlayStyle = 0; - - @Expose - @ConfigOption( - name = "Show Icons", - desc = "Show icons in the Overlay that represent the part." - ) - @ConfigEditorBoolean - @ConfigAccordionId(id = 4) - public boolean crystalHollowIcons = true; - - @Expose - @ConfigOption( - name = "Hide Done", - desc = "Don't show parts you've given to the NPC." - ) - @ConfigEditorBoolean - @ConfigAccordionId(id = 4) - public boolean crystalHollowHideDone = false; - - @ConfigOption( - name = "Locations", - desc = "" - ) - @ConfigEditorAccordion(id = 5) - @ConfigAccordionId(id = 4) - public boolean crystalHollowLocationAccordion = false; - - @Expose - @ConfigOption( - name = "Show Automaton", - desc = "Change where to show Automaton parts." - ) - @ConfigEditorDropdown( - values = {"Crystal Hollows", "Precursor Remnants", "Lost Precursor City"} - ) - @ConfigAccordionId(id = 5) - public int crystalHollowAutomatonLocation = 2; - - @Expose - @ConfigOption( - name = "Show Divan", - desc = "Change where to show Mines of Divan parts." - ) - @ConfigEditorDropdown( - values = {"Crystal Hollows", "Mithril Deposits", "Mines of Divan"} - ) - @ConfigAccordionId(id = 5) - public int crystalHollowDivanLocation = 2; - - @Expose - @ConfigOption( - name = "Show Crystal", - desc = "Change where to show Collected Crystals." - ) - @ConfigEditorDropdown( - values = {"Crystal Hollows", "When No Other Overlays"} - ) - @ConfigAccordionId(id = 5) - public int crystalHollowCrystalLocation = 1; - - @ConfigOption( - name = "Colours", - desc = "" - ) - @ConfigEditorAccordion(id = 6) - @ConfigAccordionId(id = 4) - public boolean crystalHollowColourAccordion = false; - - @Expose - @ConfigOption( - name = "Main Color", - desc = "Change the main color of the overlay." - - ) - @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" - } - ) - @ConfigAccordionId(id = 6) - public int crystalHollowPartColor = 3; - - @Expose - @ConfigOption( - name = "Done Color", - desc = "Change the colour when the part is given to the NPC." - ) - @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" - } - ) - - @ConfigAccordionId(id = 6) - public int crystalHollowDoneColor = 10; - - @Expose - @ConfigOption( - name = "In Inventory Color", - desc = "Change the colour when the part is in the inventory." - ) - @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" - } - ) - @ConfigAccordionId(id = 6) - public int crystalHollowInventoryColor = 14; - - @Expose - @ConfigOption( - name = "In Storage Color", - desc = "Change the colour when the part is in the storage." - ) - @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" - } - ) - @ConfigAccordionId(id = 6) - public int crystalHollowStorageColor = 14; - - @Expose - @ConfigOption( - name = "Missing Color", - desc = "Change the colour when the part is missing." - ) - @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" - } - ) - @ConfigAccordionId(id = 6) - public int crystalHollowMissingColor = 12; - - @Expose - @ConfigOption( - name = "Placed Color", - desc = "Change the colour when the crystal is placed." - ) - @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" - } - ) - @ConfigAccordionId(id = 6) - public int crystalHollowPlacedColor = 10; - - @Expose - @ConfigOption( - name = "Collected Color", - desc = "Change the colour when the crystal is collected" - ) - @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" - } - ) - @ConfigAccordionId(id = 6) - public int crystalHollowCollectedColor = 14; - - @Expose - @ConfigOption( - name = "All Color", - desc = "Change the colour when you have 2/3-all of the parts collected in the count overlay." - ) - @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" - } - ) - @ConfigAccordionId(id = 6) - public int crystalHollowAllColor = 10; - - @Expose - @ConfigOption( - name = "1/3 Color", - desc = "Change the colour when you have 1/3-2/3 of the parts collected in the count overlay." - ) - @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" - } - ) - @ConfigAccordionId(id = 6) - public int crystalHollowMiddleColor = 14; - - @Expose - @ConfigOption( - name = "0 Color", - desc = "Change the colour when you have 0-1/3 of the parts collected in the count overlay." - ) - @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" - } - ) - @ConfigAccordionId(id = 6) - public int crystalHollowNoneColor = 12; - - @ConfigOption( - name = "Wishing Compass Solver", - desc = "" - ) - @ConfigEditorAccordion(id = 7) - public boolean wishingCompassSolverAccordion = false; - - @Expose - @ConfigOption( - name = "Enable Solver", - desc = "Show wishing compass target coordinates based on two samples" - ) - @ConfigAccordionId(id = 7) - @ConfigEditorBoolean - public boolean wishingCompassSolver = true; - - @Expose - @ConfigOption( - name = "Skytils Waypoints", - desc = "Automatically create Skytils waypoints for well-known targets" - ) - @ConfigAccordionId(id = 7) - @ConfigEditorBoolean - public boolean wishingCompassAutocreateKnownWaypoints = false; - - @Expose - @ConfigOption( - name = "Waypoint Names", - desc = "NOTE: Skytils overwrites waypoint coordinates with less accurate values for Skytils names." - ) - @ConfigAccordionId(id = 7) - @ConfigEditorDropdown( - values = {"NEU", "Skytils"} - ) - public int wishingCompassWaypointNames = 0; - - @ConfigOption( - name = "Powder Grinding Tracker", - desc = "" - ) - @ConfigEditorAccordion(id = 9) - public boolean powderGrindingTrackerAccordion = false; - - @Expose - @ConfigOption( - name = "Enable Tracker", - desc = "Show an Overlay with useful information related to Powder Grinding" - ) - @ConfigAccordionId(id = 9) - @ConfigEditorBoolean - public boolean powderGrindingTrackerEnabled = false; - - @Expose - @ConfigOption( - name = "Tracker Text", - desc = "\u00a7eDrag text to change the appearance of the Overlay\n" + - "\u00a7rGo to the Crystal Hollows to show this Overlay with useful information" - ) - @ConfigEditorDraggableList( - exampleText = { - "\u00a73Chests Found: \u00a7a13", - "\u00a73Opened Chests: \u00a7a11", - "\u00a73Unopened Chests: \u00a7c2", - "\u00a73Mithril Powder Found: \u00a726,243", - "\u00a73Average Mithril Powder/Chest: \u00a72568", - "\u00a73Gemstone Powder Found: \u00a7d6,243", - "\u00a73Average Gemstone Powder/Chest: \u00a7d568" - } - ) - @ConfigAccordionId(id = 9) - public List powderGrindingTrackerText = new ArrayList<>(Arrays.asList(0, 1, 2, 3, 4, 5, 6)); - - @Expose - public Position powderGrindingTrackerPosition = new Position(10, 265); - - @Expose - @ConfigOption( - name = "Overlay Style", - desc = "Change the style of the Powder Grinding Tracker information Overlay" - ) - @ConfigEditorDropdown( - values = {"Background", "No Shadow", "Shadow", "Full Shadow"} - ) - @ConfigAccordionId(id = 9) - public int powderGrindingTrackerOverlayStyle = 0; - - @Expose - @ConfigOption( - name = "Tracker Reset Mode", - desc = "When the Powder Grinding Tracker should be reset" - ) - @ConfigEditorDropdown( - values = {"On World Change", "On Restart", "Never"} - ) - @ConfigAccordionId(id = 9) - public int powderGrindingTrackerResetMode = 2; - - @Expose - @ConfigOption( - name = "Reset Tracker", - desc = "Reset all stats for Powder Grinding Tracker" - ) - @ConfigEditorButton( - runnableId = 26, - buttonText = "Reset" - ) - @ConfigAccordionId(id = 9) - public int resetPowderGrindingTracker = 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 = "Titanium must touch air", - desc = "Only show an alert if the Titanium touches air. (kinda sus)" - ) - @ConfigEditorBoolean - public boolean titaniumAlertMustBeVisible = false; - - @ConfigOption( - name = "Custom Textures", - desc = "" - ) - @ConfigEditorAccordion(id = 8) - public boolean texturesAccordion = false; - - @Expose - @ConfigOption( - name = "Dwarven Mines Textures", - desc = "Allows texture packs to retexture blocks in the Dwarven Mines. If you don't have a texture pack that does this, you should leave this off" - ) - @ConfigAccordionId(id = 8) - @ConfigEditorBoolean - public boolean dwarvenTextures = false; - @Expose - @ConfigOption( - name = "Crystal Hollows Textures", - desc = "Allows texture packs to retexture blocks in the Crystal Hollows. If you don't have a texture pack that does this, you should leave this off" - ) - @ConfigAccordionId(id = 8) - @ConfigEditorBoolean - public boolean crystalHollowTextures = false; - - @Expose - @ConfigOption( - name = "Replace Gemstone sounds", - desc = "Replace the break sounds of crystals in the Crystal Hollows. Requires a texture pack with this feature" - ) - @ConfigAccordionId(id = 8) - @ConfigEditorBoolean - public boolean gemstoneSounds = false; - - @Expose - @ConfigOption( - name = "Replace Mithril sounds", - desc = "Replace the break sounds of mithril and titanium in the Dwarven mines. Requires a texture pack with this feature" - ) - @ConfigAccordionId(id = 8) - @ConfigEditorBoolean - public boolean mithrilSounds = false; - -} diff --git a/src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/MinionHelper.java b/src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/MinionHelper.java deleted file mode 100644 index 17ff9a7f..00000000 --- a/src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/MinionHelper.java +++ /dev/null @@ -1,45 +0,0 @@ -/* - * Copyright (C) 2022 NotEnoughUpdates contributors - * - * This file is part of NotEnoughUpdates. - * - * NotEnoughUpdates is free software: you can redistribute it - * and/or modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation, either - * version 3 of the License, or (at your option) any later version. - * - * NotEnoughUpdates is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public License - * along with NotEnoughUpdates. If not, see . - */ - -package io.github.moulberry.notenoughupdates.options.seperateSections; - -import com.google.gson.annotations.Expose; -import io.github.moulberry.moulconfig.annotations.ConfigEditorBoolean; -import io.github.moulberry.moulconfig.annotations.ConfigOption; - -//TODO jani rename message format -public class MinionHelper { - @Expose - @ConfigOption( - name = "Enable gui", - desc = - "Shows a list in the crafted minions inventory of every available to craft or all missing minion, in multiple pages " + - "that you need to get the next minion slot, sorted by upgrade cost" - ) - - @ConfigEditorBoolean - public boolean gui = true; - @Expose - @ConfigOption( - name = "Enable tooltip", - desc = "Shows the price per minion at the crafted minions " - ) - @ConfigEditorBoolean - public boolean tooltip = true; -} diff --git a/src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/Misc.java b/src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/Misc.java deleted file mode 100644 index e7d948ce..00000000 --- a/src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/Misc.java +++ /dev/null @@ -1,328 +0,0 @@ -/* - * Copyright (C) 2022 NotEnoughUpdates contributors - * - * This file is part of NotEnoughUpdates. - * - * NotEnoughUpdates is free software: you can redistribute it - * and/or modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation, either - * version 3 of the License, or (at your option) any later version. - * - * NotEnoughUpdates is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public License - * along with NotEnoughUpdates. If not, see . - */ - -package io.github.moulberry.notenoughupdates.options.seperateSections; - -import com.google.gson.annotations.Expose; -import io.github.moulberry.moulconfig.annotations.ConfigAccordionId; -import io.github.moulberry.moulconfig.annotations.ConfigEditorAccordion; -import io.github.moulberry.moulconfig.annotations.ConfigEditorBoolean; -import io.github.moulberry.moulconfig.annotations.ConfigEditorButton; -import io.github.moulberry.moulconfig.annotations.ConfigEditorDropdown; -import io.github.moulberry.moulconfig.annotations.ConfigEditorKeybind; -import io.github.moulberry.moulconfig.annotations.ConfigEditorSlider; -import io.github.moulberry.moulconfig.annotations.ConfigOption; -import org.lwjgl.input.Keyboard; - -public 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 = "Fix Steve skulls", - desc = "Fix some skulls and skins not downloading on old java versions. May require restart." - ) - @ConfigEditorBoolean - public boolean fixSteveSkulls = true; - - @ConfigOption( - name = "Fairy Soul Waypoints", - desc = "" - ) - @ConfigEditorAccordion(id = 0) - public boolean fariySoulAccordion = false; - @Expose - @ConfigOption( - name = "Track Fairy Souls", - desc = "Track Found Fairy Souls" - ) - @ConfigEditorBoolean(runnableId = 20) - @ConfigAccordionId(id = 0) - public boolean trackFairySouls = true; - - @Expose - @ConfigOption( - name = "Show Waypoints", - desc = "Show Fairy Soul Waypoints (Requires fairy soul tracking)" - ) - @ConfigEditorBoolean( - runnableId = 15 - ) - @ConfigAccordionId(id = 0) - public boolean fariySoul = false; - - @Expose - @ConfigOption( - name = "Show Waypoint Distance", - desc = "Show the distance to each fairy soul waypoint" - ) - @ConfigEditorBoolean - @ConfigAccordionId(id = 0) - public boolean fairySoulWaypointDistance = false; - - @Expose - @ConfigOption( - name = "Mark All As Found", - desc = "Mark all fairy souls in current location as found" - ) - @ConfigEditorButton( - runnableId = 16, - buttonText = "Clear" - ) - @ConfigAccordionId(id = 0) - public boolean fariySoulClear = false; - - @Expose - @ConfigOption( - name = "Mark All As Missing", - desc = "Mark all fairy souls in current location as missing" - ) - @ConfigEditorButton( - runnableId = 17, - buttonText = "Unclear" - ) - @ConfigAccordionId(id = 0) - public boolean fariySoulUnclear = 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 = "Replace Chat Social Options", - desc = "Replace Hypixel's chat social options with NEU's profile viewer or with /ah" - ) - @ConfigEditorDropdown( - values = {"Off", "/pv", "/ah"} - ) - public int replaceSocialOptions1 = 1; - - @Expose - @ConfigOption( - name = "Damage Indicator Style", - desc = "Change SkyBlock damage indicators to use shortened numbers\n" + - "\u00A7cSome old animations mods break this feature" - ) - @ConfigEditorBoolean - public boolean damageIndicatorStyle2 = false; - - @Expose - @ConfigOption( - name = "Profile Viewer", - desc = "Brings up the profile viewer (/pv)\n" + - "Shows stats and networth of players" - ) - @ConfigEditorButton(runnableId = 13, buttonText = "Open") - public boolean openPV = true; - - @ConfigOption( - name = "Custom Enchant Colours", - desc = "" - ) - @ConfigEditorAccordion( - id = 1 - ) - public boolean neuEnchantsAccordion = true; - - @Expose - @ConfigOption( - name = "Edit Enchant Colours", - desc = "Change the colours of certain SkyBlock enchants (/neuec)" - ) - @ConfigEditorButton(runnableId = 8, buttonText = "Open") - @ConfigAccordionId(id = 1) - 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 - ) - @ConfigAccordionId(id = 1) - public int chromaSpeed = 100; - - @Expose - @ConfigOption( - name = "Cache Tooltip Enchants", - desc = "Caches item enchants in tooltip to only use the neuec config once per item lookup." - ) - @ConfigEditorBoolean - @ConfigAccordionId(id = 1) - public boolean cacheItemEnchant = true; - - @Expose - @ConfigOption( - name = "Disable Skull retexturing", - desc = "Disables the skull retexturing." - ) - @ConfigEditorBoolean - public boolean disableSkullRetexturing = false; - - @Expose - @ConfigOption( - name = "Disable NPC retexturing", - desc = "Disables the NPC retexturing." - ) - @ConfigEditorBoolean - public boolean disableNPCRetexturing = false; - - @Expose - @ConfigOption( - name = "Wiki", - desc = "The wiki to use in the wiki renderer." - ) - @ConfigEditorDropdown(values = { - "Hypixel", - "Fandom" - }) - public int wiki = 0; - - @Expose - @ConfigOption( - name = "Waypoint Keybind", - desc = "Press this keybind to show waypoints to various NPCs" - ) - @ConfigEditorKeybind(defaultKey = Keyboard.KEY_NONE) - public int keybindWaypoint = Keyboard.KEY_NONE; - - @Expose - @ConfigOption( - name = "Untrack close Waypoints", - desc = "Automatically untrack waypoints once you get close to them." - ) - @ConfigEditorBoolean - public boolean untrackCloseWaypoints = true; - - @Expose - @ConfigOption( - name = "Warp twice", - desc = "Warp twice when using SHIFT+ to /warp to a waypoint." - ) - @ConfigEditorBoolean - public boolean warpTwice = true; - - @Expose - @ConfigOption( - name = "Calculator", - desc = "Replace calculations like §9\"1+2\"§7 with the calculation result in sign popups (AH/BZ) and in the neu search bar" - ) - @ConfigEditorDropdown(values = {"Off", "Enabled with ! Prefix", "Always enabled"}) - public int calculationMode = 2; - - @Expose - @ConfigOption( - name = "Enable Abiphone Warning", - desc = "Asks for confirmation when removing a contact in the abiphone" - ) - @ConfigEditorBoolean - public boolean abiphoneWarning = true; - - @Expose - @ConfigOption( - name = "Enable Coop Warning", - desc = "Asks for confirmation when clicking the coop diamond in profile menu and prevents 'wrong' /coopadd commands" - ) - @ConfigEditorBoolean - public boolean coopWarning = true; - - @Expose - @ConfigOption( - name = "Filter Skyblock Levels in Chat", - desc = "Requires the \"SkyBlock Levels in Chat\" skyblock setting to be on" - ) - @ConfigEditorSlider( - minValue = 0, - maxValue = 300, - minStep = 10 - ) - public int filterChatLevel = 0; - - @Expose - @ConfigOption( - name = "Enable text field tweaks", - desc = "Allows the use of ctrl + z, ctrl + y and ctrl + Lshift + z in text fields" - ) - @ConfigEditorBoolean - public boolean textFieldTweaksEnabled = true; - - @Expose - @ConfigOption( - name = "Abiphone Favourites", - desc = "Allows to set abiphone contacts as favourites, toggle between displaying all contacts or favourites only and deactivates the option to remove contacts at all." - ) - @ConfigEditorBoolean - public boolean abiphoneFavourites = true; - - @Expose - @ConfigOption( - name = "Group Join PV", - desc = "View another player's profile by clicking on the chat message when they join in a dungeon or kuudra group." - ) - @ConfigEditorBoolean - public boolean dungeonGroupsPV = true; - - @Expose - @ConfigOption( - name = "Old SkyBlock Menu", - desc = "Show old buttons in the SkyBlock Menu: Trade, Accessories, Potions, Quiver, Fishing and Sacks. " + - "§cOnly works with the booster cookie effect active." - ) - @ConfigEditorBoolean - public boolean oldSkyBlockMenu = false; - - @Expose - @ConfigOption( - name = "Default Armor Colour", - desc = "Changes all armor, on self and others, to the default item colour. Overwrites any /neucustomize changes also." - ) - @ConfigEditorBoolean - public boolean defaultArmorColour = false; -} diff --git a/src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/MiscOverlays.java b/src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/MiscOverlays.java deleted file mode 100644 index 01111988..00000000 --- a/src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/MiscOverlays.java +++ /dev/null @@ -1,469 +0,0 @@ -/* - * Copyright (C) 2022 NotEnoughUpdates contributors - * - * This file is part of NotEnoughUpdates. - * - * NotEnoughUpdates is free software: you can redistribute it - * and/or modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation, either - * version 3 of the License, or (at your option) any later version. - * - * NotEnoughUpdates is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public License - * along with NotEnoughUpdates. If not, see . - */ - -package io.github.moulberry.notenoughupdates.options.seperateSections; - -import com.google.gson.annotations.Expose; -import io.github.moulberry.notenoughupdates.core.config.Position; -import io.github.moulberry.moulconfig.annotations.ConfigAccordionId; -import io.github.moulberry.moulconfig.annotations.ConfigEditorAccordion; -import io.github.moulberry.moulconfig.annotations.ConfigEditorBoolean; -import io.github.moulberry.moulconfig.annotations.ConfigEditorDraggableList; -import io.github.moulberry.moulconfig.annotations.ConfigEditorDropdown; -import io.github.moulberry.moulconfig.annotations.ConfigOption; - -import java.util.ArrayList; -import java.util.Arrays; -import java.util.List; - -public 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 todoOverlay2 = false; - - @Expose - @ConfigOption( - name = "Todo Overlay Tab", - desc = "Only show the todo overlay when tab list is open" - ) - @ConfigEditorBoolean - @ConfigAccordionId(id = 0) - public boolean todoOverlayOnlyShowTab = false; - - @Expose - @ConfigOption( - name = "Todo Overlay Hide Bingo", - desc = "Hide some tasks from the todo overlay while on a bingo profile: Cookie Buff, Godpot, Heavy Pearls, Crimson Isle Quests" - ) - @ConfigEditorBoolean - @ConfigAccordionId(id = 0) - public boolean todoOverlayHideAtBingo = true; - - @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", - "\u00a73Mithril Powder: \u00a7e3h38m", - "\u00a73Gemstone Powder: \u00a7e3h38m", - "\u00a73Heavy Pearls: \u00a7e3h38m", - "\u00a73Crimson Isle Quests: \u00a7e3h38m", - "\u00a73NPC Buy Daily Limit: \u00a7e3h38m", - "§3Free Rift Infusion: §e3h38m", - } - ) - @ConfigAccordionId(id = 0) - public List todoText2 = new ArrayList<>(Arrays.asList(0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12)); - - @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; - - @Expose - @ConfigOption( - name = "Mithril Powder Display", - desc = "Change the way the mithril powder 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 dailyMithrilPowderDisplay = 0; - - @Expose - @ConfigOption( - name = "Gemstone Powder Display", - desc = "Change the way the gemstone powder 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 dailyGemstonePowderDisplay = 0; - - @Expose - @ConfigOption( - name = "Heavy Pearl Display", - desc = "Change the way the heavy pearl 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 dailyHeavyPearlDisplay = 0; - - @Expose - @ConfigOption( - name = "Crimson Isle Quests Display", - desc = "Change the way the crimson isle quests display\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 questBoardDisplay = 0; - - @Expose - @ConfigOption( - name = "NPC Buy Daily Limit Display", - desc = "Change the way the NPC shop limit 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 shopLimitDisplay = 0; - - @Expose - @ConfigOption( - name = "Free Rift Infusion Display", - desc = "Change the way the Free Rift infusion displays\n" + - "Only when ready, When very Soon, or always." - ) - @ConfigAccordionId(id = 1) - @ConfigEditorDropdown( - values = {"Only when ready", "When very Soon", "Always"} - ) - public int freeRiftInfusionDisplay = 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" - } - ) - @ConfigAccordionId(id = 2) - public int readyColour = 10; - - @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" - } - ) - @ConfigAccordionId(id = 2) - public int goneColour = 12; - - @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" - } - ) - @ConfigAccordionId(id = 2) - public int verySoonColour = 11; - - @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" - } - ) - @ConfigAccordionId(id = 2) - public int soonColour = 9; - - @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" - } - ) - @ConfigAccordionId(id = 2) - public int kindaSoonColour = 1; - - @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" - } - ) - @ConfigAccordionId(id = 2) - public int defaultColour = 15; - - @Expose - 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; -} diff --git a/src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/Museum.java b/src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/Museum.java deleted file mode 100644 index 80ee7eb0..00000000 --- a/src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/Museum.java +++ /dev/null @@ -1,64 +0,0 @@ -/* - * Copyright (C) 2023 NotEnoughUpdates contributors - * - * This file is part of NotEnoughUpdates. - * - * NotEnoughUpdates is free software: you can redistribute it - * and/or modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation, either - * version 3 of the License, or (at your option) any later version. - * - * NotEnoughUpdates is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public License - * along with NotEnoughUpdates. If not, see . - */ - -package io.github.moulberry.notenoughupdates.options.seperateSections; - -import com.google.gson.annotations.Expose; -import io.github.moulberry.moulconfig.annotations.ConfigEditorBoolean; -import io.github.moulberry.moulconfig.annotations.ConfigEditorColour; -import io.github.moulberry.moulconfig.annotations.ConfigEditorDropdown; -import io.github.moulberry.moulconfig.annotations.ConfigOption; - -public class Museum { - - @Expose - @ConfigOption( - name = "Show Museum Items", - desc = "Show real items instead of green dye in the museum" - ) - @ConfigEditorBoolean - public boolean museumItemShow = false; - - @Expose - @ConfigOption( - name = "Highlight virtual museum items", - desc = "Highlight virtual museum items with a background color" - ) - @ConfigEditorColour - public String museumItemColor = "0:255:0:255:0"; - - @Expose - @ConfigOption( - name = "Show Items to donate", - desc = "Show the cheapest items you have not yet donated to the Museum" - ) - @ConfigEditorBoolean - public boolean museumCheapestItemOverlay = true; - - @Expose - @ConfigOption( - name = "Value calculation", - desc = "Choose the source for the value calculation" - ) - @ConfigEditorDropdown( - values = {"Lowest BIN", "Craft cost"} - ) - public int museumCheapestItemOverlayValueSource = 0; - -} diff --git a/src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/Notifications.java b/src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/Notifications.java deleted file mode 100644 index 0bc6bc11..00000000 --- a/src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/Notifications.java +++ /dev/null @@ -1,131 +0,0 @@ -/* - * Copyright (C) 2022 NotEnoughUpdates contributors - * - * This file is part of NotEnoughUpdates. - * - * NotEnoughUpdates is free software: you can redistribute it - * and/or modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation, either - * version 3 of the License, or (at your option) any later version. - * - * NotEnoughUpdates is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public License - * along with NotEnoughUpdates. If not, see . - */ - -package io.github.moulberry.notenoughupdates.options.seperateSections; - -import com.google.gson.annotations.Expose; -import io.github.moulberry.moulconfig.annotations.ConfigAccordionId; -import io.github.moulberry.moulconfig.annotations.ConfigEditorAccordion; -import io.github.moulberry.moulconfig.annotations.ConfigEditorBoolean; -import io.github.moulberry.moulconfig.annotations.ConfigEditorColour; -import io.github.moulberry.moulconfig.annotations.ConfigEditorDropdown; -import io.github.moulberry.moulconfig.annotations.ConfigEditorSlider; -import io.github.moulberry.moulconfig.annotations.ConfigOption; - -public class Notifications { - @Expose - @ConfigOption( - name = "Update Messages", - desc = "Give a notification in chat whenever a new version of NEU is released" - ) - @ConfigEditorDropdown(values = {"Off", "Releases", "Pre-Releases"}) - public int updateChannel = 1; - - @Expose - @ConfigOption( - name = "Missing repo warning", - desc = "Warning when repo data is missing or out of date" - ) - @ConfigEditorBoolean - public boolean outdatedRepo = 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 = "OldAnimations Warning", - desc = "Warning when an unsupported OldAnimations mod is used" - ) - @ConfigEditorBoolean - public boolean doOamNotif = true; - - @Expose - @ConfigOption( - name = "Fast Render Warning", - desc = "\u00a7cIf and ONLY if you have Fast Render disabled and are still seeing the warning, you can disable it here.\nDisabling it with Fast Render still on will lead to broken features." - ) - @ConfigEditorBoolean - public boolean doFastRenderNotif = true; - - @Expose - @ConfigOption( - name = "Booster Cookie Warning", - desc = "Warning when a booster cookie is about to expire" - ) - @ConfigEditorBoolean - public boolean doBoosterNotif = false; - - @Expose - @ConfigOption( - name = "Booster Cookie Warning Minutes", - desc = "Change the minimum time required for the Booster Cookie warning to activate" - ) - @ConfigEditorSlider( - minValue = 10, - maxValue = 5760, - minStep = 25 - ) - public int boosterCookieWarningMins = 1440; - - @Expose - @ConfigOption( - name = "Ender Nodes", - desc = "" - ) - @ConfigEditorAccordion(id = 1) - public boolean enderNodeAccordion = true; - - @Expose - @ConfigOption( - name = "Nested Endermite Alert", - desc = "It will alert the user if a nested endermite gets spawned" - ) - @ConfigEditorBoolean - @ConfigAccordionId(id = 1) - public boolean endermiteAlert = true; - - @Expose - @ConfigOption( - name = "Nested Endermite Alert Color", - desc = "The color the alert will be shown" - ) - @ConfigEditorColour - @ConfigAccordionId(id = 1) - public String endermiteAlertColor = "0:255:194:0:174"; - - @Expose - @ConfigOption( - name = "Nested Endermite Alert Display Time", - desc = "How long the display would stay for in ticks" - ) - @ConfigEditorSlider( - minValue = 1, - maxValue = 200, - minStep = 20 - ) - @ConfigAccordionId(id = 1) - public int endermiteAlertTicks = 20; -} diff --git a/src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/PetOverlay.java b/src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/PetOverlay.java deleted file mode 100644 index 2661d8c3..00000000 --- a/src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/PetOverlay.java +++ /dev/null @@ -1,141 +0,0 @@ -/* - * Copyright (C) 2022 NotEnoughUpdates contributors - * - * This file is part of NotEnoughUpdates. - * - * NotEnoughUpdates is free software: you can redistribute it - * and/or modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation, either - * version 3 of the License, or (at your option) any later version. - * - * NotEnoughUpdates is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public License - * along with NotEnoughUpdates. If not, see . - */ - -package io.github.moulberry.notenoughupdates.options.seperateSections; - -import com.google.gson.annotations.Expose; -import io.github.moulberry.notenoughupdates.core.config.Position; -import io.github.moulberry.moulconfig.annotations.ConfigEditorBoolean; -import io.github.moulberry.moulconfig.annotations.ConfigEditorDraggableList; -import io.github.moulberry.moulconfig.annotations.ConfigEditorDropdown; -import io.github.moulberry.moulconfig.annotations.ConfigOption; - -import java.util.ArrayList; -import java.util.Arrays; -import java.util.List; - -public class PetOverlay { - @Expose - @ConfigOption( - name = "Enable Pet Info Overlay", - desc = "Shows current active pet and pet exp on screen." - ) - @ConfigEditorBoolean - public boolean enablePetInfo = false; - - @Expose - public Position petInfoPosition = new Position(-1, -1); - - @Expose - @ConfigOption( - name = "Pet Overlay Text", - desc = "\u00a7eDrag text to change the appearance of the overlay\n" + - "\u00a7rEquip a pet to show the overlay" - ) - @ConfigEditorDraggableList( - exampleText = { - "\u00a7a[Lvl 37] \u00a7fRock", - "\u00a7b2,312.9/2,700\u00a7e (85.7%)", - "\u00a7b2.3k/2.7k\u00a7e (85.7%)", - "\u00a7bXP/h: \u00a7e27,209", - "\u00a7bTotal XP: \u00a7e30,597.9", - "\u00a7bHeld Item: \u00a7fMining Exp Boost", - "\u00a7bUntil L38: \u00a7e5m13s", - "\u00a7bUntil L100: \u00a7e2d13h" - } - ) - public List petOverlayText = new ArrayList<>(Arrays.asList(0, 2, 3, 6, 4)); - - @Expose - @ConfigOption( - name = "Pet Overlay Icon", - desc = "Show the icon of the pet you have equiped in the overlay" - ) - @ConfigEditorBoolean - public boolean petOverlayIcon = true; - - @Expose - @ConfigOption( - name = "Pet Info Overlay Style", - desc = "Change the style of the Pet Info overlay" - ) - @ConfigEditorDropdown( - values = {"Background", "No Shadow", "Shadow", "Full Shadow"} - ) - public int petInfoOverlayStyle = 0; - - @Expose - @ConfigOption( - name = "Show Last Pet", - desc = "Show 2 pets on the overlay\nUseful if training two pets at once with autopet" - ) - @ConfigEditorBoolean - public boolean dualPets = false; - - @Expose - @ConfigOption( - name = "Pet Inventory Display", - desc = "Shows an overlay in your inventory showing your current pet\n" + - "\u00A7cRequires Hide Potion Effects to be enabled" - ) - @ConfigEditorBoolean - public boolean petInvDisplay = false; - - @Expose - @ConfigOption( - name = "GUI Style", - desc = "Change the colour of the GUI" - ) - @ConfigEditorDropdown( - values = {"Minecraft", "Grey", "PacksHQ Dark", "Transparent", "FSR"} - ) - public int colourStyle = 0; - - @Expose - @ConfigOption( - name = "Click To Open Pets", - desc = "Click on the hud to open /pets" - ) - @ConfigEditorBoolean - public boolean sendPetsCommand = true; - - @Expose - @ConfigOption( - name = "Hide Pet Inventory Tooltip", - desc = "Hides the tooltip of your active in your inventory" - ) - @ConfigEditorBoolean - public boolean hidePetTooltip = false; - - @Expose - @ConfigOption( - name = "Show upgraded Pet Level", - desc = "Show the estimated pet level after an upgrade at Kats" - ) - @ConfigEditorBoolean - public boolean showKatSitting = true; - - @Expose - @ConfigOption( - name = "Hide Pet Level Progress", - desc = "Hide the pet level progress information for maxed out pets." - ) - @ConfigEditorBoolean - public boolean hidePetLevelProgress = false; -} diff --git a/src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/ProfileViewer.java b/src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/ProfileViewer.java deleted file mode 100644 index cdd5ec89..00000000 --- a/src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/ProfileViewer.java +++ /dev/null @@ -1,104 +0,0 @@ -/* - * Copyright (C) 2022 NotEnoughUpdates contributors - * - * This file is part of NotEnoughUpdates. - * - * NotEnoughUpdates is free software: you can redistribute it - * and/or modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation, either - * version 3 of the License, or (at your option) any later version. - * - * NotEnoughUpdates is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public License - * along with NotEnoughUpdates. If not, see . - */ - -package io.github.moulberry.notenoughupdates.options.seperateSections; - -import com.google.gson.annotations.Expose; -import io.github.moulberry.notenoughupdates.BuildFlags; -import io.github.moulberry.moulconfig.annotations.ConfigEditorBoolean; -import io.github.moulberry.moulconfig.annotations.ConfigEditorButton; -import io.github.moulberry.moulconfig.annotations.ConfigEditorDraggableList; -import io.github.moulberry.moulconfig.annotations.ConfigOption; - -import java.util.ArrayList; -import java.util.Arrays; -import java.util.List; - -public class ProfileViewer { - - @Expose - @ConfigOption( - name = "Open Profile Viewer", - desc = "Brings up the profile viewer (/pv)\n" + - "Shows stats and networth of players" - ) - @ConfigEditorButton( - runnableId = 13, - buttonText = "Open" - ) - public boolean openPV = true; - - @Expose - @ConfigOption( - name = "Page layout", - desc = "\u00a7rSelect the order of the pages at the top of the Profile Viewer\n" + - "\u00a7eDrag text to rearrange" - ) - @ConfigEditorDraggableList( - exampleText = { - "\u00a7eBasic Info", - "\u00a7eDungeons", - "\u00a7eExtra Info", - "\u00a7eInventories", - "\u00a7eCollections", - "\u00a7ePets", - "\u00a7eMining", - "\u00a7eBingo", - "\u00a7eTrophy Fish", - "\u00a7eBestiary", - "\u00a7eCrimson Isle", - "\u00a7eMuseum", - "\u00a7eRift" - }, - allowDeleting = false - ) - public List pageLayout = new ArrayList<>(Arrays.asList(0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12)); - - @Expose - @ConfigOption( - name = "Always show bingo tab", - desc = "Always show bingo tab or only show it when the bingo profile is selected" - ) - @ConfigEditorBoolean - public boolean alwaysShowBingoTab = false; - - @Expose - @ConfigOption( - name = "Show Pronouns in /pv", - desc = "Shows the pronouns of a player in /pv. Data sourced from pronoundb.org" - ) - @ConfigEditorBoolean - public boolean showPronounsInPv = BuildFlags.ENABLE_PRONOUNS_IN_PV_BY_DEFAULT; - - @Expose - @ConfigOption( - name = "Use Soopy Networth", - desc = "Replaces NEU networth with Soopy networth in /pv and /peek" - ) - @ConfigEditorBoolean - public boolean useSoopyNetworth = true; - - @Expose - @ConfigOption( - name = "Display Weight", - desc = "Display Lily and Senither Weight in the Basic PV page" - ) - @ConfigEditorBoolean - public boolean displayWeight = true; -} diff --git a/src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/SkillOverlays.java b/src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/SkillOverlays.java deleted file mode 100644 index 321c3ddd..00000000 --- a/src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/SkillOverlays.java +++ /dev/null @@ -1,409 +0,0 @@ -/* - * Copyright (C) 2022 NotEnoughUpdates contributors - * - * This file is part of NotEnoughUpdates. - * - * NotEnoughUpdates is free software: you can redistribute it - * and/or modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation, either - * version 3 of the License, or (at your option) any later version. - * - * NotEnoughUpdates is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public License - * along with NotEnoughUpdates. If not, see . - */ - -package io.github.moulberry.notenoughupdates.options.seperateSections; - -import com.google.gson.annotations.Expose; -import io.github.moulberry.moulconfig.annotations.ConfigAccordionId; -import io.github.moulberry.moulconfig.annotations.ConfigEditorAccordion; -import io.github.moulberry.moulconfig.annotations.ConfigEditorBoolean; -import io.github.moulberry.moulconfig.annotations.ConfigEditorDraggableList; -import io.github.moulberry.moulconfig.annotations.ConfigEditorDropdown; -import io.github.moulberry.moulconfig.annotations.ConfigEditorInfoText; -import io.github.moulberry.moulconfig.annotations.ConfigEditorKeybind; -import io.github.moulberry.moulconfig.annotations.ConfigEditorSlider; -import io.github.moulberry.moulconfig.annotations.ConfigOption; -import io.github.moulberry.notenoughupdates.core.config.Position; -import org.lwjgl.input.Keyboard; - -import java.util.ArrayList; -import java.util.Arrays; -import java.util.List; - -import static io.github.moulberry.notenoughupdates.overlays.FarmingSkillOverlay.CPS_WINDOW_SIZE; - -public class SkillOverlays { - @ConfigOption( - name = "Skill Overlay info", - desc = - "For the overlays to show you need a \u00A7bmathematical hoe\u00A77 or an axe with \u00A7bcultivating\u00A77 " + - "enchant for farming, a pickaxe with \u00A7bcompact\u00A77 for mining or a rod with \u00A7bexpertise\u00A77" - ) - @ConfigEditorInfoText() - public boolean skillInfo = false; - - @ConfigOption( - name = "Farming", - desc = "" - ) - @ConfigEditorAccordion(id = 0) - public boolean farmingAccordion = false; - - @Expose - @ConfigOption( - name = "Enable Farming Overlay", - desc = "Show an overlay while farming with useful information" - ) - @ConfigEditorBoolean - @ConfigAccordionId(id = 0) - 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 with cultivating enchantment while gaining farming xp to show the overlay" - ) - @ConfigEditorDraggableList( - exampleText = { - "\u00a7bCounter: \u00a7e37,547,860", - "\u00a7bCrops/s: \u00a7e732", - "\u00a7bFarming: \u00a7e12\u00a77 [\u00a7e|||||||||||||||||\u00a78||||||||\u00a77] \u00a7e67%", - "\u00a7bCurrent XP: \u00a7e6,734", - "\u00a7bRemaining XP: \u00a7e3,265", - "\u00a7bXP/h: \u00a7e238,129", - "\u00a7bYaw: \u00a7e68.25\u00a7l\u1D52", - "\u00a7bETA: \u00a7e13h12m", - "\u00a7bPitch: \u00a7e69.42\u00a7l\u1D52", - "\u00a7bCultivating: \u00a7e10,137,945/20,000,000", - "\u00a7bCoins/m \u00a7e57,432", - "\u00a7bContest Estimate \u00a7e342,784", - } - ) - @ConfigAccordionId(id = 0) - public List farmingText = new ArrayList<>(Arrays.asList(0, 9, 10, 1, 2, 3, 4, 5, 7, 6, 11)); - - @Expose - @ConfigOption( - name = "Use BZ Price For Coins/m", - desc = "Uses the bazaar price instead of NPC price for coins/m" - ) - @ConfigEditorBoolean - @ConfigAccordionId(id = 0) - public boolean useBZPrice = true; - - @Expose - @ConfigOption( - name = "Pause Timer", - desc = "How many seconds does it wait before pausing the XP/h timer" - ) - @ConfigAccordionId(id = 0) - @ConfigEditorSlider( - minValue = 1, - maxValue = 20, - minStep = 1 - ) - public int farmingPauseTimer = 3; - - @Expose - @ConfigOption( - name = "Crop rate time frame", - desc = "Defines the duration in seconds over which the average crop yield is calculated" - ) - @ConfigAccordionId(id = 0) - @ConfigEditorSlider( - minValue = 1, - maxValue = CPS_WINDOW_SIZE - 2, - minStep = 1 - ) - public int farmingCropsPerSecondTimeFrame = 5; - - @Expose - @ConfigOption( - name = "Crop rate unit", - desc = "Choose the unit for displaying the crop rate" - ) - @ConfigAccordionId(id = 0) - @ConfigEditorDropdown( - values = {"/s", "/m", "/h"} - ) - public int farmingCropRateUnit = 0; - - @Expose - @ConfigOption( - name = "Coin rate unit", - desc = "Choose the unit for displaying the coin rate" - ) - @ConfigAccordionId(id = 0) - @ConfigEditorDropdown( - values = {"/s", "/m", "/h"} - ) - public int farmingCoinRateUnit = 0; - - @Expose - @ConfigOption( - name = "Reset crop rate", - desc = "How many seconds does it wait before resetting the crop rate values when inactive" - ) - @ConfigAccordionId(id = 0) - @ConfigEditorSlider( - minValue = 1, - maxValue = CPS_WINDOW_SIZE - 2, - minStep = 1 - ) - public int farmingResetCPS = 5; - - @Expose - 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"} - ) - @ConfigAccordionId(id = 0) - public int farmingStyle = 0; - - @ConfigOption( - name = "Mining", - desc = "" - ) - @ConfigEditorAccordion(id = 1) - public boolean miningAccordion = false; - - @Expose - @ConfigOption( - name = "Enable Mining Overlay", - desc = "Show an overlay while Mining with useful information" - ) - @ConfigEditorBoolean - @ConfigAccordionId(id = 1) - public boolean miningSkillOverlay = true; - - @Expose - @ConfigOption( - name = "Mining Text", - desc = "\u00a7eDrag text to change the appearance of the overlay\n" + - "\u00a7rHold a pickaxe with compact while gaining mining xp to show the overlay" - ) - @ConfigEditorDraggableList( - exampleText = { - "\u00a7bCompact: \u00a7e547,860", - "\u00a7bBlocks/m: \u00a7e38.29", - "\u00a7bMining: \u00a7e12\u00a77 [\u00a7e|||||||||||||||||\u00a78||||||||\u00a77] \u00a7e67%", - "\u00a7bCurrent XP: \u00a7e6,734", - "\u00a7bRemaining XP: \u00a7e3,265", - "\u00a7bXP/h: \u00a7e238,129", - "\u00a7bYaw: \u00a7e68.25\u00a7l\u1D52", - "\u00a7bETA: \u00a7e13h12m", - "\u00a7bCompact Progress: \u00a7e137,945/150,000" - } - ) - @ConfigAccordionId(id = 1) - public List miningText = new ArrayList<>(Arrays.asList(0, 8, 1, 2, 3, 4, 5, 7)); - - @Expose - @ConfigOption( - name = "Pause Timer", - desc = "How many seconds does it wait before pausing" - ) - @ConfigAccordionId(id = 1) - @ConfigEditorSlider( - minValue = 1, - maxValue = 20, - minStep = 1 - ) - public int miningPauseTimer = 3; - - @Expose - public Position miningPosition = new Position(10, 200); - - @Expose - @ConfigOption( - name = "Mining Style", - desc = "Change the style of the Mining overlay" - ) - @ConfigEditorDropdown( - values = {"Background", "No Shadow", "Shadow", "Full Shadow"} - ) - @ConfigAccordionId(id = 1) - public int miningStyle = 0; - - @ConfigOption( - name = "Fishing", - desc = "" - ) - @ConfigEditorAccordion(id = 3) - public boolean fishingAccordion = false; - @Expose - @ConfigOption( - name = "Enable Fishing Overlay", - desc = "Show an overlay while Fishing with useful information" - ) - @ConfigEditorBoolean - @ConfigAccordionId(id = 3) - public boolean FishingSkillOverlay = true; - - @Expose - @ConfigOption( - name = "Fishing Text", - desc = "\u00a7eDrag text to change the appearance of the overlay\n" + - "\u00a7rHold a fishing rod with expertise enchantment while gaining fishing xp to show the overlay" - ) - @ConfigEditorDraggableList( - exampleText = { - "\u00a7bExpertise: \u00a7e7,945/10,000", - //"\u00a7bCatches/m: \u00a7e38.29", - "\u00a7bFishing: \u00a7e12\u00a77 [\u00a7e|||||||||||||||||\u00a78||||||||\u00a77] \u00a7e67%", - "\u00a7bCurrent XP: \u00a7e6,734", - "\u00a7bRemaining XP: \u00a7e3,265", - "\u00a7bXP/h: \u00a7e238,129", - //"\u00a7bYaw: \u00a7e68.25\u00a7l\u1D52", - "\u00a7bETA: \u00a7e13h12m", - //"\u00a7bExpertise Progress: \u00a7e7,945/10,000", - "\u00a7bTimer: \u00a7e1m15s" - } - ) - @ConfigAccordionId(id = 3) - public List fishingText = new ArrayList<>(Arrays.asList(0, 1, 2, 3, 4, 5, 6)); - - @Expose - @ConfigOption( - name = "Pause Timer", - desc = "How many seconds does it wait before pausing" - ) - @ConfigAccordionId(id = 3) - @ConfigEditorSlider( - minValue = 1, - maxValue = 20, - minStep = 1 - ) - public int fishingPauseTimer = 3; - - @Expose - public Position fishingPosition = new Position(10, 200); - - @Expose - @ConfigOption( - name = "Fishing Style", - desc = "Change the style of the Fishing overlay" - ) - @ConfigEditorDropdown( - values = {"Background", "No Shadow", "Shadow", "Full Shadow"} - ) - @ConfigAccordionId(id = 3) - public int fishingStyle = 0; - - @Expose - @ConfigOption( - name = "Toggle Fishing timer", - desc = "Start or stop the timer on the fishing overlay\n" + - "Also can plays a ding customizable below" - ) - @ConfigEditorKeybind(defaultKey = Keyboard.KEY_END) - @ConfigAccordionId(id = 3) - public int fishKey = Keyboard.KEY_END; - - @Expose - @ConfigOption( - name = "Fishing Timer Alert", - desc = "Change the amount of time (seconds) until the timer dings" - ) - @ConfigEditorSlider( - minValue = 0, - maxValue = 600, - minStep = 20 - ) - @ConfigAccordionId(id = 3) - public int customFishTimer = 300; - - @ConfigOption( - name = "Combat", - desc = "" - ) - @ConfigEditorAccordion(id = 4) - public boolean combatAccordion = false; - - @Expose - @ConfigOption( - name = "\u00A7cWarning", - desc = "The combat display will only show if you have a Book of Stats or the Champion enchant" - ) - @ConfigEditorInfoText() - @ConfigAccordionId(id = 4) - public boolean combatInfo = false; - - @Expose - @ConfigOption( - name = "Enable Combat Overlay", - desc = "Show an overlay while Combat with useful information" - ) - @ConfigEditorBoolean - @ConfigAccordionId(id = 4) - public boolean combatSkillOverlay = false; - - @Expose - @ConfigOption( - name = "Combat Text", - desc = "\u00a7eDrag text to change the appearance of the overlay\n" + - "\u00a7rHold an item with Book of Stats to show the display" - ) - @ConfigEditorDraggableList( - exampleText = { - "\u00a7bKills: \u00a7e547,860", - "\u00a7bCombat: \u00a7e12\u00a77 [\u00a7e|||||||||||||||||\u00a78||||||||\u00a77] \u00a7e67%", - "\u00a7bCurrent XP: \u00a7e6,734", - "\u00a7bRemaining XP: \u00a7e3,265", - "\u00a7bXP/h: \u00a7e238,129", - "\u00a7bETA: \u00a7e13h12m", - "\u00a7bChampion XP: \u00a7e3,523" - } - ) - @ConfigAccordionId(id = 4) - public List combatText = new ArrayList<>(Arrays.asList(0, 6, 1, 2, 3, 4, 5)); - - @Expose - @ConfigOption( - name = "Pause Timer", - desc = "How many seconds does it wait before pausing" - ) - @ConfigAccordionId(id = 4) - @ConfigEditorSlider( - minValue = 1, - maxValue = 20, - minStep = 1 - ) - public int combatPauseTimer = 3; - - @Expose - public Position combatPosition = new Position(10, 200); - - @Expose - @ConfigOption( - name = "Combat Style", - desc = "Change the style of the Combat overlay" - ) - @ConfigEditorDropdown( - values = {"Background", "No Shadow", "Shadow", "Full Shadow"} - ) - @ConfigAccordionId(id = 4) - public int combatStyle = 0; - - @Expose - @ConfigOption( - name = "Always show combat overlay", - desc = "Shows combat overlay even if you dont have Book of Stats or the Champion enchant" - ) - @ConfigEditorBoolean - @ConfigAccordionId(id = 4) - public boolean alwaysShowCombatOverlay = false; -} diff --git a/src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/SlayerOverlay.java b/src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/SlayerOverlay.java deleted file mode 100644 index aad7afe7..00000000 --- a/src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/SlayerOverlay.java +++ /dev/null @@ -1,89 +0,0 @@ -/* - * Copyright (C) 2022 NotEnoughUpdates contributors - * - * This file is part of NotEnoughUpdates. - * - * NotEnoughUpdates is free software: you can redistribute it - * and/or modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation, either - * version 3 of the License, or (at your option) any later version. - * - * NotEnoughUpdates is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public License - * along with NotEnoughUpdates. If not, see . - */ - -package io.github.moulberry.notenoughupdates.options.seperateSections; - -import com.google.gson.annotations.Expose; -import io.github.moulberry.moulconfig.annotations.ConfigEditorInfoText; -import io.github.moulberry.notenoughupdates.core.config.Position; -import io.github.moulberry.moulconfig.annotations.ConfigEditorBoolean; -import io.github.moulberry.moulconfig.annotations.ConfigEditorDraggableList; -import io.github.moulberry.moulconfig.annotations.ConfigEditorDropdown; -import io.github.moulberry.moulconfig.annotations.ConfigOption; - -import java.util.ArrayList; -import java.util.Arrays; -import java.util.List; - -public class SlayerOverlay { - @Expose - @ConfigOption( - name = "\u00A7cWarning", - desc = "You may have to do 2 bosses before everything shows" - ) - @ConfigEditorInfoText() - public boolean slayerWarning = false; - - @Expose - @ConfigOption( - name = "Enable Slayer Overlay", - desc = "Toggles the slayer overlay" - ) - @ConfigEditorBoolean - public boolean slayerOverlay = false; - - @Expose - @ConfigOption( - name = "Only show when relevant", - desc = "Only shows the overlay when you are in an area where your current Slayer can be completed" - ) - @ConfigEditorBoolean - public boolean onlyShowWhenRelevant = true; - - @Expose - @ConfigOption( - name = "Slayer Text", - desc = "\u00a7eDrag text to change the appearance of the overlay" - ) - @ConfigEditorDraggableList( - exampleText = { - "\u00a7eSlayer: \u00a74Sven", - "\u00a7eRNG Meter: \u00a75100%", - "\u00a7eLvl: \u00a7d7", - "\u00a7eKill time: \u00a7c1:30", - "\u00a7eXP: \u00a7d75,450/100,000", - "\u00a7eBosses till next Lvl: \u00a7d17", - "\u00a7eAverage kill time: \u00a7c3:20" - } - ) - public List slayerText = new ArrayList<>(Arrays.asList(0, 1, 4, 5, 3, 6)); - - @Expose - public Position slayerPosition = new Position(10, 200); - - @Expose - @ConfigOption( - name = "Slayer Style", - desc = "Change the style of the Slayer overlay" - ) - @ConfigEditorDropdown( - values = {"Background", "No Shadow", "Shadow", "Full Shadow"} - ) - public int slayerStyle = 0; -} diff --git a/src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/SlotLocking.java b/src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/SlotLocking.java deleted file mode 100644 index a75d69e0..00000000 --- a/src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/SlotLocking.java +++ /dev/null @@ -1,112 +0,0 @@ -/* - * Copyright (C) 2022 NotEnoughUpdates contributors - * - * This file is part of NotEnoughUpdates. - * - * NotEnoughUpdates is free software: you can redistribute it - * and/or modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation, either - * version 3 of the License, or (at your option) any later version. - * - * NotEnoughUpdates is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public License - * along with NotEnoughUpdates. If not, see . - */ - -package io.github.moulberry.notenoughupdates.options.seperateSections; - -import com.google.gson.annotations.Expose; -import io.github.moulberry.moulconfig.annotations.ConfigEditorBoolean; -import io.github.moulberry.moulconfig.annotations.ConfigEditorInfoText; -import io.github.moulberry.moulconfig.annotations.ConfigEditorKeybind; -import io.github.moulberry.moulconfig.annotations.ConfigEditorSlider; -import io.github.moulberry.moulconfig.annotations.ConfigOption; -import org.lwjgl.input.Keyboard; - -public class SlotLocking { - @Expose - @ConfigOption( - name = "\u00A7cWarning", - desc = "Make sure you have SBA's locked slots off before you turn NEU's on" - ) - @ConfigEditorInfoText() - public boolean slotLockWarning = false; - - @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 = "Item Swap drop delay", - desc = "Set the delay between swapping to another item and being able to drop it.\n"+ - "This is to fix a bug that allowed you to drop slot locked items." - ) - @ConfigEditorSlider( - minValue = 0, - maxValue = 500, - minStep = 5 - )*/ - public int slotLockSwapDelay = 100; - - @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; -} diff --git a/src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/StorageGUI.java b/src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/StorageGUI.java deleted file mode 100644 index a0abc49e..00000000 --- a/src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/StorageGUI.java +++ /dev/null @@ -1,311 +0,0 @@ -/* - * Copyright (C) 2022-2023 NotEnoughUpdates contributors - * - * This file is part of NotEnoughUpdates. - * - * NotEnoughUpdates is free software: you can redistribute it - * and/or modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation, either - * version 3 of the License, or (at your option) any later version. - * - * NotEnoughUpdates is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public License - * along with NotEnoughUpdates. If not, see . - */ - -package io.github.moulberry.notenoughupdates.options.seperateSections; - -import com.google.gson.annotations.Expose; -import io.github.moulberry.moulconfig.annotations.ConfigAccordionId; -import io.github.moulberry.moulconfig.annotations.ConfigEditorAccordion; -import io.github.moulberry.moulconfig.annotations.ConfigEditorBoolean; -import io.github.moulberry.moulconfig.annotations.ConfigEditorColour; -import io.github.moulberry.moulconfig.annotations.ConfigEditorDropdown; -import io.github.moulberry.moulconfig.annotations.ConfigEditorInfoText; -import io.github.moulberry.moulconfig.annotations.ConfigEditorKeybind; -import io.github.moulberry.moulconfig.annotations.ConfigEditorSlider; -import io.github.moulberry.moulconfig.annotations.ConfigOption; -import org.lwjgl.input.Keyboard; - -public class StorageGUI { - @ConfigOption( - name = "Storage Overlay", - desc = "Ender Chest / Backpack" - ) - @ConfigEditorAccordion(id = 1) - public boolean storageOverlayAccordion = false; - - @Expose - public int selectedIndex = 0; - @ConfigOption( - name = "\u00A7cWarning", - desc = "You need Fast Render and Antialiasing off for these settings to work\n" + - "You can find these in your video settings" - ) - @ConfigEditorInfoText() - @ConfigAccordionId(id = 1) - public boolean storageGUIWarning = 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 enableStorageGUI3 = true; - - @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", "Grey", "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 = true; - - @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; - - @Expose - @ConfigOption( - name = "Fancy Glass Panes", - desc = "Replace the glass pane textures in your storage containers with a fancy connected texture" - ) - @ConfigEditorDropdown( - values = {"On", "Locked", "Off"} - ) - @ConfigAccordionId(id = 1) - public int fancyPanes = 0; - - @Expose - @ConfigOption( - name = "Search Bar Autofocus", - desc = "Automatically focus the search bar when pressing keys" - ) - @ConfigEditorBoolean - @ConfigAccordionId(id = 1) - public boolean searchBarAutofocus = true; - - @Expose - @ConfigOption( - name = "Show Enchant Glint", - desc = "Toggle enchant glint in storage GUI" - ) - @ConfigEditorBoolean - @ConfigAccordionId(id = 1) - public boolean showEnchantGlint = true; - - @Expose - @ConfigOption( - name = "Selected Storage Colour", - desc = "Change the colour used to draw the selected backpack border" - ) - @ConfigEditorColour - @ConfigAccordionId(id = 1) - public String selectedStorageColour = "0:255:255:223:0"; - - @Expose - @ConfigOption( - name = "Custom Text Colour", - desc = "Use a custom default text colour.\nOverrides the colour set by the overlay style.\nCan be overridden by using colour codes in the page title." - ) - @ConfigEditorBoolean - @ConfigAccordionId(id = 1) - public boolean useCustomTextColour = false; - - @Expose - @ConfigOption( - name = "Custom Text Colour", - desc = "Requires the above option to be set to true" - ) - @ConfigEditorColour - @ConfigAccordionId(id = 1) - public String customTextColour = "0:255:144:144:144"; - - @Expose - @ConfigOption( - name = "Scrollable Tooltips", - desc = "Support for scrolling tooltips for users with small monitors\n" + - "This will prevent the menu from scrolling while holding the key, allowing you to scroll tooltips" - ) - @ConfigEditorKeybind(defaultKey = 0) - @ConfigAccordionId(id = 1) - public int cancelScrollKey = 0; - - @Expose - @ConfigOption( - name = "Disable Optifine CIT", - desc = "Disables Optifine custom items to improve performance" - ) - @ConfigEditorBoolean - @ConfigAccordionId(id = 1) - public boolean disableCIT = 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 = "Scroll to Backpack", - desc = "Allow scrolling to the backpack using the mouse wheel.\n" + - "\"Scroll (Key)\" = Allow scrolling to 10th slot only while 'Backpack Scroll Key' (default: SHIFT) is pressed" - ) - @ConfigEditorDropdown( - values = {"Scroll (Key)", "Scroll (Always)", "Don't Scroll"} - ) - @ConfigAccordionId(id = 0) - public int scrollToBackpack2 = 0; - - @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; -} diff --git a/src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/Toolbar.java b/src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/Toolbar.java deleted file mode 100644 index abda4d5f..00000000 --- a/src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/Toolbar.java +++ /dev/null @@ -1,144 +0,0 @@ -/* - * Copyright (C) 2022 NotEnoughUpdates contributors - * - * This file is part of NotEnoughUpdates. - * - * NotEnoughUpdates is free software: you can redistribute it - * and/or modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation, either - * version 3 of the License, or (at your option) any later version. - * - * NotEnoughUpdates is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public License - * along with NotEnoughUpdates. If not, see . - */ - -package io.github.moulberry.notenoughupdates.options.seperateSections; - -import com.google.gson.annotations.Expose; -import io.github.moulberry.moulconfig.annotations.ConfigAccordionId; -import io.github.moulberry.moulconfig.annotations.ConfigEditorAccordion; -import io.github.moulberry.moulconfig.annotations.ConfigEditorBoolean; -import io.github.moulberry.moulconfig.annotations.ConfigEditorButton; -import io.github.moulberry.moulconfig.annotations.ConfigEditorDropdown; -import io.github.moulberry.moulconfig.annotations.ConfigEditorSlider; -import io.github.moulberry.moulconfig.annotations.ConfigOption; - -public class Toolbar { - @Expose - @ConfigOption( - name = "Edit Toolbar Positions", - desc = "Change the position of the QuickCommands / Search Bar" - ) - @ConfigEditorButton(runnableId = 6, buttonText = "Edit") - public boolean positionButton = true; - - @ConfigOption( - name = "Search Bar", - desc = "" - ) - @ConfigEditorAccordion(id = 0) - public boolean searchBarAccordion = false; - - @Expose - @ConfigOption( - name = "Show Search Bar", - desc = "Show Itemlist search bar in the NEU toolbar" - ) - @ConfigEditorBoolean - @ConfigAccordionId(id = 0) - public boolean searchBar = true; - - @Expose - @ConfigOption( - name = "Show a quick settings button", - desc = "Show quick settings button in the NEU toolbar" - ) - @ConfigEditorBoolean - @ConfigAccordionId(id = 0) - public boolean enableSettingsButton = true; - - @Expose - @ConfigOption( - name = "Show an inventory search button", - desc = "Show button to enable inventory searching in the NEU toolbar" - ) - @ConfigEditorBoolean - @ConfigAccordionId(id = 0) - public boolean enableSearchModeButton = true; - - @Expose - @ConfigOption( - name = "CTRL+F keybind", - desc = "Change the focus of the search bar when pressing CTRL + F" - ) - @ConfigEditorBoolean - @ConfigAccordionId(id = 0) - public boolean ctrlF = true; - - @Expose - @ConfigOption( - name = "Copy calculation result to clipboard", - desc = "Copy the calculation result to clipboard when pressing ENTER in the search bar while calculating" - ) - @ConfigEditorBoolean - @ConfigAccordionId(id = 0) - public boolean copyToClipboardWhenGettingResult = true; - - @Expose - @ConfigOption( - name = "Search Bar Width", - desc = "Change the width of the search bar" - ) - @ConfigEditorSlider( - minValue = 50f, - maxValue = 300f, - minStep = 10f - ) - @ConfigAccordionId(id = 0) - 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 - ) - @ConfigAccordionId(id = 0) - public int searchBarHeight = 40; - - @Expose - @ConfigOption( - name = "Auto turnoff search mode", - desc = "Turns off the inventory search mode after 2 minutes" - ) - @ConfigEditorBoolean - @ConfigAccordionId(id = 0) - public boolean autoTurnOffSearchMode = true; - - @Expose - @ConfigOption( - name = "Show Quick Commands", - desc = "Show QuickCommands\u2122 in the NEU toolbar" - ) - @ConfigEditorBoolean - public boolean quickCommands = false; - - @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; -} diff --git a/src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/TooltipTweaks.java b/src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/TooltipTweaks.java deleted file mode 100644 index c9a5810a..00000000 --- a/src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/TooltipTweaks.java +++ /dev/null @@ -1,354 +0,0 @@ -/* - * Copyright (C) 2022-2023 NotEnoughUpdates contributors - * - * This file is part of NotEnoughUpdates. - * - * NotEnoughUpdates is free software: you can redistribute it - * and/or modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation, either - * version 3 of the License, or (at your option) any later version. - * - * NotEnoughUpdates is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public License - * along with NotEnoughUpdates. If not, see . - */ - -package io.github.moulberry.notenoughupdates.options.seperateSections; - -import com.google.gson.annotations.Expose; -import io.github.moulberry.moulconfig.annotations.ConfigAccordionId; -import io.github.moulberry.moulconfig.annotations.ConfigEditorAccordion; -import io.github.moulberry.moulconfig.annotations.ConfigEditorBoolean; -import io.github.moulberry.moulconfig.annotations.ConfigEditorDraggableList; -import io.github.moulberry.moulconfig.annotations.ConfigEditorDropdown; -import io.github.moulberry.moulconfig.annotations.ConfigEditorKeybind; -import io.github.moulberry.moulconfig.annotations.ConfigEditorSlider; -import io.github.moulberry.moulconfig.annotations.ConfigOption; -import org.lwjgl.input.Keyboard; - -import java.util.ArrayList; -import java.util.Arrays; -import java.util.List; - -public 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", - "\u00a7eInsta-Buys (Hourly)", - "\u00a7eInsta-Sells (Hourly)", - "\u00a7eInsta-Buys (Daily)", - "\u00a7eInsta-Sells (Daily)", - "\u00a7eInsta-Buys (Weekly)", - "\u00a7eInsta-Sells (Weekly)"} - ) - @ConfigAccordionId(id = 0) - public List priceInfoBaz = new ArrayList<>(Arrays.asList(0, 1, 2, 3, 4)); - - @Expose - @ConfigOption( - name = "Show raw craft on items that can't be sold", - desc = "Raw craft cost will be shown on items that can't be sold on the ah or bz" - ) - @ConfigEditorBoolean - @ConfigAccordionId(id = 0) - public boolean rawCraft = true; - - @Expose - @ConfigOption( - name = "Show NPC Sell price on Items", - desc = "Display for how much items can be sold to NPC Shops" - ) - @ConfigEditorBoolean - @ConfigAccordionId(id = 0) - public boolean npcSellPrice = false; - - @Expose - @ConfigOption( - name = "Display donation status", - desc = "Add an extra line on items you have already donated to the museum. Visit all pages of the museum to populate this list." - ) - @ConfigEditorBoolean - @ConfigAccordionId(id = 0) - public boolean museumDonationStatus = false; - - @Expose - @ConfigOption( - name = "Use Short Number Format", - desc = "Use Short Numbers (5.1m) instead of 5,130,302" - ) - @ConfigEditorBoolean - @ConfigAccordionId(id = 0) - public boolean shortNumberFormatPrices = false; - - @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 = "Price info keybind", - desc = "Only show price info if holding a key." - ) - @ConfigEditorBoolean - public boolean disablePriceKey = false; - - @Expose - @ConfigOption( - name = "Show Price info Keybind", - desc = "Hold this key to show a price info tooltip" - ) - @ConfigEditorKeybind(defaultKey = Keyboard.KEY_NONE) - public int disablePriceKeyKeybind = Keyboard.KEY_NONE; - - @Expose - @ConfigOption( - name = "Always show required dungeon items", - desc = "Always show the required items to upgrade to the next star if more than just Essence is needed" - ) - @ConfigEditorBoolean - public boolean alwaysShowRequiredItems = false; - - @Expose - @ConfigOption( - name = "Show reforge stats", - desc = "Show statistics a reforge stone will apply." - ) - @ConfigEditorBoolean - public boolean showReforgeStats = true; - - @Expose - @ConfigOption( - name = "Hide default reforge stats", - desc = "Hides the reforge stats only for Legendary items that Hypixel adds to the Reforge stones" - ) - @ConfigEditorBoolean - public boolean hideDefaultReforgeStats = 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 = "Resize tooltips", - desc = "Resizes tooltips to make them readable" - ) - @ConfigEditorDropdown( - values = {"Default", "Small", "Normal", "Large", "Auto"} - ) - public int guiScale = 0; - - @Expose - @ConfigOption( - name = "Custom tooltips", - desc = "Replace tooltips with neu's custom tooltips" - ) - @ConfigEditorBoolean - public boolean customTooltips = false; - - @Expose - @ConfigOption( - name = "Scrollable Tooltips", - desc = "Make tooltips text scrollable, by making some text lines disappear when using the mouse while hovering over an item." - ) - @ConfigEditorBoolean - public boolean scrollableTooltips = false; - - - @Expose - @ConfigOption( - name = "Expand Pet Exp Requirement", - desc = "Show which the full amount of pet xp required" - ) - @ConfigEditorBoolean - public boolean petExtendExp = false; - - @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; - - @Expose - @ConfigOption( - name = "Power Stone Stats", - desc = "Show your real magical power and real stat increase on power stones" - ) - @ConfigEditorBoolean - public boolean powerStoneStats = true; - - @ConfigOption( - name = "RNG Meter", - desc = "" - ) - @ConfigEditorAccordion(id = 1) - public boolean rngMeter = false; - - @Expose - @ConfigOption( - name = "Fraction Display", - desc = "Show the fraction instead of the percentage in the slayer and dungeon rng meter inventory" - ) - @ConfigEditorBoolean - @ConfigAccordionId(id = 1) - public boolean rngMeterFractionDisplay = true; - - @Expose - @ConfigOption( - name = " Profit Per Score/XP", - desc = "Show the amount of coins per Score/XP in the rng meter inventory" - ) - @ConfigEditorBoolean - @ConfigAccordionId(id = 1) - public boolean rngMeterProfitPerUnit = true; - - @Expose - @ConfigOption( - name = "Dungeon/Slayer Needed Counter", - desc = "Show the amount of dungeon runs or slayer bosses needed for the rng meter to fill up" - ) - @ConfigEditorBoolean - @ConfigAccordionId(id = 1) - public boolean rngMeterRunsNeeded = true; - - @Expose - @ConfigOption( - name = "Abiphone NPC Requirements", - desc = "Show what the NPC needs in order to add him as contact in the abiphone" - ) - @ConfigEditorBoolean - public boolean abiphoneContactRequirements = true; - - @Expose - @ConfigOption( - name = "Abiphone NPC Location", - desc = "Click on an NPC to set a marker at the location" - ) - @ConfigEditorBoolean - public boolean abiphoneContactMarker = true; - - @Expose - @ConfigOption( - name = "Essence Price In Shop", - desc = "Show the essence price in the essence shop in the dungeon hub" - ) - @ConfigEditorBoolean - public boolean essencePriceInEssenceShop = true; - - @ConfigOption( - name = "Garden Visitors", - desc = "" - ) - @ConfigEditorAccordion(id = 2) - public boolean gardenVisitors = false; - - @Expose - @ConfigOption( - name = "Item Cost in Garden NPC", - desc = "Show the item cost in garden NPC shop" - ) - @ConfigEditorBoolean - @ConfigAccordionId(id = 2) - public boolean gardenNpcPrice = true; - - @Expose - @ConfigOption( - name = "Copper value", - desc = "Calculate how much coins is a copper worth" - ) - @ConfigEditorBoolean - @ConfigAccordionId(id = 2) - public boolean copperCoins = true; - - - @Expose - @ConfigOption( - name = "AH items cost threshold", - desc = "Ignore AH items that cost less or equal copper than" - ) - @ConfigEditorSlider( - minValue = 0f, - maxValue = 500f, - minStep = 5f - ) - @ConfigAccordionId(id = 2) - public double AHPriceIgnoreThreshold = 0; - @Expose - @ConfigOption( - name = "Ignore AH items", - desc = "Ignore ALL items that can be sold to AH" - ) - @ConfigEditorBoolean - @ConfigAccordionId(id = 2) - public boolean ignoreAllAHItems = true; -} diff --git a/src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/TradeMenu.java b/src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/TradeMenu.java deleted file mode 100644 index 55a535e6..00000000 --- a/src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/TradeMenu.java +++ /dev/null @@ -1,45 +0,0 @@ -/* - * Copyright (C) 2022 NotEnoughUpdates contributors - * - * This file is part of NotEnoughUpdates. - * - * NotEnoughUpdates is free software: you can redistribute it - * and/or modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation, either - * version 3 of the License, or (at your option) any later version. - * - * NotEnoughUpdates is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public License - * along with NotEnoughUpdates. If not, see . - */ - -package io.github.moulberry.notenoughupdates.options.seperateSections; - -import com.google.gson.annotations.Expose; -import io.github.moulberry.moulconfig.annotations.ConfigEditorBoolean; -import io.github.moulberry.moulconfig.annotations.ConfigOption; - -public class TradeMenu { - @Expose - @ConfigOption( - name = "Enable Custom Trade Menu", - desc = "When trading with other players in SkyBlock, display a special GUI designed to prevent scamming" - ) - @ConfigEditorBoolean - public boolean enableCustomTrade = true; - - @Expose - @ConfigOption( - name = "Price Information", - desc = "Show the price of items in the trade window on both sides" - ) - @ConfigEditorBoolean - public boolean customTradePrices = true; - - @Expose - public boolean customTradePriceStyle = true; -} diff --git a/src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/WardrobeKeybinds.java b/src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/WardrobeKeybinds.java deleted file mode 100644 index 0af8a2af..00000000 --- a/src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/WardrobeKeybinds.java +++ /dev/null @@ -1,153 +0,0 @@ -/* - * Copyright (C) 2022 NotEnoughUpdates contributors - * - * This file is part of NotEnoughUpdates. - * - * NotEnoughUpdates is free software: you can redistribute it - * and/or modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation, either - * version 3 of the License, or (at your option) any later version. - * - * NotEnoughUpdates is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public License - * along with NotEnoughUpdates. If not, see . - */ - -package io.github.moulberry.notenoughupdates.options.seperateSections; - -import com.google.gson.annotations.Expose; -import io.github.moulberry.moulconfig.annotations.ConfigAccordionId; -import io.github.moulberry.moulconfig.annotations.ConfigEditorAccordion; -import io.github.moulberry.moulconfig.annotations.ConfigEditorBoolean; -import io.github.moulberry.moulconfig.annotations.ConfigEditorKeybind; -import io.github.moulberry.moulconfig.annotations.ConfigOption; -import org.lwjgl.input.Keyboard; - -public class WardrobeKeybinds { - - @Expose - @ConfigOption( - name = "Enable Wardrobe Keybinds", - desc = "Lets you use your number keys to quickly change your wardrobe" - ) - @ConfigEditorBoolean - public boolean enableWardrobeKeybinds = false; - - @ConfigOption( - name = "Wardrobe Keybinds", - desc = "" - ) - @ConfigEditorAccordion(id = 2) - public boolean wardrobeKeybindAccordion = false; - @Expose - @ConfigOption( - name = "Slot 1", - desc = "Keybind to toggle the first set in your wardrobe" - ) - @ConfigEditorKeybind(defaultKey = Keyboard.KEY_1) - @ConfigAccordionId(id = 2) - public int wardrobeSlot1 = Keyboard.KEY_1; - - @Expose - @ConfigOption( - name = "Slot 2", - desc = "Keybind to toggle the second set in your wardrobe" - ) - @ConfigEditorKeybind(defaultKey = Keyboard.KEY_2) - @ConfigAccordionId(id = 2) - public int wardrobeSlot2 = Keyboard.KEY_2; - - @Expose - @ConfigOption( - name = "Slot 3", - desc = "Keybind to toggle the third set in your wardrobe" - ) - @ConfigEditorKeybind(defaultKey = Keyboard.KEY_3) - @ConfigAccordionId(id = 2) - public int wardrobeSlot3 = Keyboard.KEY_3; - - @Expose - @ConfigOption( - name = "Slot 4", - desc = "Keybind to toggle the fourth set in your wardrobe" - ) - @ConfigEditorKeybind(defaultKey = Keyboard.KEY_4) - @ConfigAccordionId(id = 2) - public int wardrobeSlot4 = Keyboard.KEY_4; - - @Expose - @ConfigOption( - name = "Slot 5", - desc = "Keybind to toggle the fifth set in your wardrobe" - ) - @ConfigEditorKeybind(defaultKey = Keyboard.KEY_5) - @ConfigAccordionId(id = 2) - public int wardrobeSlot5 = Keyboard.KEY_5; - - @Expose - @ConfigOption( - name = "Slot 6", - desc = "Keybind to toggle the sixth set in your wardrobe" - ) - @ConfigEditorKeybind(defaultKey = Keyboard.KEY_6) - @ConfigAccordionId(id = 2) - public int wardrobeSlot6 = Keyboard.KEY_6; - - @Expose - @ConfigOption( - name = "Slot 7", - desc = "Keybind to toggle the seventh set in your wardrobe" - ) - @ConfigEditorKeybind(defaultKey = Keyboard.KEY_7) - @ConfigAccordionId(id = 2) - public int wardrobeSlot7 = Keyboard.KEY_7; - - @Expose - @ConfigOption( - name = "Slot 8", - desc = "Keybind to toggle the eighth set in your wardrobe" - ) - @ConfigEditorKeybind(defaultKey = Keyboard.KEY_8) - @ConfigAccordionId(id = 2) - public int wardrobeSlot8 = Keyboard.KEY_8; - - @Expose - @ConfigOption( - name = "Slot 9", - desc = "Keybind to toggle the ninth set in your wardrobe" - ) - @ConfigEditorKeybind(defaultKey = Keyboard.KEY_9) - @ConfigAccordionId(id = 2) - public int wardrobeSlot9 = Keyboard.KEY_9; - - @Expose - @ConfigOption( - name = "Unequip Wardrobe Slot", - desc = "Keybind to unequip the currently active set in your wardrobe" - ) - @ConfigEditorKeybind(defaultKey = Keyboard.KEY_0) - @ConfigAccordionId(id = 2) - public int wardrobePageUnequip = Keyboard.KEY_0; - - @Expose - @ConfigOption( - name = "Previous Page", - desc = "Keybind to open the previous page in your wardrobe" - ) - @ConfigEditorKeybind(defaultKey = Keyboard.KEY_MINUS) - @ConfigAccordionId(id = 2) - public int wardrobePagePrevious = Keyboard.KEY_MINUS; - - @Expose - @ConfigOption( - name = "Next Page", - desc = "Keybind to open the next page in your wardrobe" - ) - @ConfigEditorKeybind(defaultKey = Keyboard.KEY_EQUALS) - @ConfigAccordionId(id = 2) - public int wardrobePageNext = Keyboard.KEY_EQUALS; -} diff --git a/src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/WorldConfig.java b/src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/WorldConfig.java deleted file mode 100644 index 4e1118b7..00000000 --- a/src/main/java/io/github/moulberry/notenoughupdates/options/seperateSections/WorldConfig.java +++ /dev/null @@ -1,134 +0,0 @@ -/* - * Copyright (C) 2022 NotEnoughUpdates contributors - * - * This file is part of NotEnoughUpdates. - * - * NotEnoughUpdates is free software: you can redistribute it - * and/or modify it under the terms of the GNU Lesser General Public - * License as published by the Free Software Foundation, either - * version 3 of the License, or (at your option) any later version. - * - * NotEnoughUpdates is distributed in the hope that it will be useful, - * but WITHOUT ANY WARRANTY; without even the implied warranty of - * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU - * Lesser General Public License for more details. - * - * You should have received a copy of the GNU Lesser General Public License - * along with NotEnoughUpdates. If not, see . - */ - -package io.github.moulberry.notenoughupdates.options.seperateSections; - -import com.google.gson.annotations.Expose; -import io.github.moulberry.moulconfig.annotations.ConfigAccordionId; -import io.github.moulberry.moulconfig.annotations.ConfigEditorAccordion; -import io.github.moulberry.moulconfig.annotations.ConfigEditorBoolean; -import io.github.moulberry.moulconfig.annotations.ConfigEditorColour; -import io.github.moulberry.moulconfig.annotations.ConfigOption; - -public class WorldConfig { - - @Expose - @ConfigOption( - name = "Glowing Mushrooms", - desc = "" - ) - @ConfigEditorAccordion(id = 1) - public boolean glowingMushroomAccordion = true; - - @Expose - @ConfigOption( - name = "Highlight Glowing Mushrooms", - desc = "Highlight glowing mushrooms in the mushroom gorge" - ) - @ConfigEditorBoolean - @ConfigAccordionId(id = 1) - public boolean highlightGlowingMushrooms = false; - - @Expose - @ConfigOption( - name = "Glowing Mushroom Colour", - desc = "In which colour should glowing mushrooms be highlighted" - ) - @ConfigEditorColour - @ConfigAccordionId(id = 1) - public String glowingMushroomColor2 = "0:100:142:88:36"; - - @Expose - @ConfigOption( - name = "Ender Nodes", - desc = "" - ) - @ConfigEditorAccordion(id = 2) - public boolean enderNodeAccordion = true; - - @Expose - @ConfigOption( - name = "Highlight Ender Nodes", - desc = "Highlight ender nodes in the end" - ) - @ConfigEditorBoolean - @ConfigAccordionId(id = 2) - public boolean highlightEnderNodes = false; - - @Expose - @ConfigOption( - name = "Ender Nodes Color", - desc = "In which color should ender nodes be highlighted" - ) - @ConfigEditorColour - @ConfigAccordionId(id = 2) - public String enderNodeColor2 = "0:100:0:255:0"; - - @Expose - @ConfigOption( - name = "Frozen Treasures", - desc = "" - ) - @ConfigEditorAccordion(id = 3) - public boolean frozenTreasuresAccordion = true; - - @Expose - @ConfigOption( - name = "Highlight Frozen Treasures", - desc = "Highlight frozen treasures in a glacial cave" - ) - @ConfigEditorBoolean - @ConfigAccordionId(id = 3) - public boolean highlightFrozenTreasures = false; - - @Expose - @ConfigOption( - name = "Frozen Treasures Color", - desc = "In which color should frozen treasures be highlighted" - ) - @ConfigEditorColour - @ConfigAccordionId(id = 3) - public String frozenTreasuresColor2 = "0:100:0:255:0"; - - @Expose - @ConfigOption( - name = "Crystal Hollow Chests", - desc = "" - ) - @ConfigEditorAccordion(id = 4) - public boolean crystalHollowChestsAccordion = true; - - @Expose - @ConfigOption( - name = "Crystal Hollow Chest Highlighter", - desc = "Highlights chests found in the crystal hollows whilst powder mining" - ) - @ConfigEditorBoolean - @ConfigAccordionId(id = 4) - public boolean highlightCrystalHollowChests = false; - - @Expose - @ConfigOption( - name = "Chest Highlight Color", - desc = "In which color should chests be highlighted" - ) - @ConfigEditorColour - @ConfigAccordionId(id = 4) - public String crystalHollowChestColor = "0:66:255:0:41"; -} diff --git a/src/main/kotlin/io/github/moulberry/notenoughupdates/miscfeatures/inventory/MuseumCheapestItemOverlay.kt b/src/main/kotlin/io/github/moulberry/notenoughupdates/miscfeatures/inventory/MuseumCheapestItemOverlay.kt index e968a4c7..6add6917 100644 --- a/src/main/kotlin/io/github/moulberry/notenoughupdates/miscfeatures/inventory/MuseumCheapestItemOverlay.kt +++ b/src/main/kotlin/io/github/moulberry/notenoughupdates/miscfeatures/inventory/MuseumCheapestItemOverlay.kt @@ -24,7 +24,7 @@ import io.github.moulberry.notenoughupdates.core.util.ArrowPagesUtils import io.github.moulberry.notenoughupdates.core.util.render.TextRenderUtils import io.github.moulberry.notenoughupdates.events.ButtonExclusionZoneEvent import io.github.moulberry.notenoughupdates.mixins.AccessorGuiContainer -import io.github.moulberry.notenoughupdates.options.seperateSections.Museum +import io.github.moulberry.notenoughupdates.options.separatesections.Museum import io.github.moulberry.notenoughupdates.util.* import io.github.moulberry.notenoughupdates.util.MuseumUtil.DonationState.MISSING import net.minecraft.client.Minecraft -- cgit