package at.hannibal2.skyhanni.config.features; import at.hannibal2.skyhanni.config.core.config.Position; import com.google.gson.annotations.Expose; import io.github.moulberry.moulconfig.annotations.*; import io.github.moulberry.moulconfig.observer.Property; import org.lwjgl.input.Keyboard; public class Misc { @Expose @ConfigOption(name = "Pet", desc = "") @ConfigEditorAccordion(id = 0) public boolean pet = false; @Expose @ConfigOption(name = "Pet Display", desc = "Show the currently active pet.") @ConfigEditorBoolean @ConfigAccordionId(id = 0) public boolean petDisplay = false; @Expose public Position petDisplayPos = new Position(-111, 221, false, true); @Expose @ConfigOption(name = "Time", desc = "") @ConfigEditorAccordion(id = 1) public boolean time = false; @Expose @ConfigOption(name = "Real Time", desc = "Display the current computer time, a handy feature when playing in full-screen mode.") @ConfigEditorBoolean @ConfigAccordionId(id = 1) public boolean realTime = false; @Expose public Position realTimePos = new Position(10, 10, false, true); @Expose @ConfigOption(name = "Hide Armor", desc = "") @ConfigEditorAccordion(id = 3) public boolean hideArmor = false; @Expose @ConfigOption(name = "Hide Armor", desc = "Hide other players' armor.") @ConfigEditorBoolean() @ConfigAccordionId(id = 3) public Property hideArmorEnabled = Property.of(false); @Expose @ConfigOption(name = "Own Armor", desc = "Hide your own armor.") @ConfigEditorBoolean() @ConfigAccordionId(id = 3) public Property hideArmorOwn = Property.of(true); @Expose @ConfigOption(name = "Only Helmet", desc = "Only hide the helmet.") @ConfigEditorBoolean() @ConfigAccordionId(id = 3) public Property hideArmorOnlyHelmet = Property.of(false); @Expose @ConfigOption(name = "Damage Splash", desc = "") @ConfigEditorAccordion(id = 4) public boolean damageSplash = false; @Expose @ConfigOption(name = "Hide Damage Splash", desc = "Hide all damage splashes anywhere in Skyblock.") @ConfigEditorBoolean @ConfigAccordionId(id = 4) public boolean hideDamageSplash = false; @Expose @ConfigOption(name = "Potion Effects", desc = "") @ConfigEditorAccordion(id = 5) public boolean potionEffects = false; @Expose @ConfigOption(name = "Non God Pot Effects", desc = "Display the active potion effects that are not part of the god pot.") @ConfigEditorBoolean @ConfigAccordionId(id = 5) public boolean nonGodPotEffectDisplay = false; @Expose public Position nonGodPotEffectPos = new Position(10, 10, false, true); @Expose @ConfigOption(name = "Crimson Reputation Helper", desc = "") @ConfigEditorAccordion(id = 6) public boolean reputationHelper = false; @Expose @ConfigOption(name = "Crimson Isle Reputation", desc = "Enable features around Reputation features in the Crimson Isle.") @ConfigEditorBoolean @ConfigAccordionId(id = 6) public boolean crimsonIsleReputationHelper = true; @Expose public Position crimsonIsleReputationHelperPos = new Position(10, 10, false, true); @Expose @ConfigOption(name = "Reputation Locations", desc = "Crimson Isles waypoints for locations to get reputation.") @ConfigEditorBoolean @ConfigAccordionId(id = 6) public boolean crimsonIsleReputationLocation = false; @Expose @ConfigOption(name = "Tia Relay", desc = "") @ConfigEditorAccordion(id = 7) public boolean tiaRelay = false; @Expose @ConfigOption(name = "Tia Relay Waypoint", desc = "Show the next relay waypoint for Tia the Fairy, where maintenance for the abiphone network needs to be done.") @ConfigEditorBoolean @ConfigAccordionId(id = 7) public boolean tiaRelayNextWaypoint = true; @Expose @ConfigOption(name = "Tia Relay All", desc = "Show all relay waypoints at once.") @ConfigEditorBoolean @ConfigAccordionId(id = 7) public boolean tiaRelayAllWaypoints = false; @Expose @ConfigOption(name = "Tia Relay Helper", desc = "Helps with solving the sound puzzle.") @ConfigEditorBoolean @ConfigAccordionId(id = 7) public boolean tiaRelayHelper = true; @Expose @ConfigOption(name = "Tia Relay Mute", desc = "Mutes the sound when close to the relay.") @ConfigEditorBoolean @ConfigAccordionId(id = 7) public boolean tiaRelayMute = true; @Expose @ConfigOption(name = "Tps Display", desc = "") @ConfigEditorAccordion(id = 8) public boolean tpsDisplay = false; @Expose @ConfigOption(name = "Tps Display", desc = "Show the TPS of the current server, like in Soopy.") @ConfigEditorBoolean @ConfigAccordionId(id = 8) public boolean tpsDisplayEnabled = false; @Expose public Position tpsDisplayPosition = new Position(10, 10, false, true); @Expose @ConfigOption(name = "Particle Hider", desc = "") @ConfigEditorAccordion(id = 9) public boolean particleHider = false; @Expose @ConfigOption(name = "Blaze Particles", desc = "Hide blaze particles.") @ConfigEditorBoolean @ConfigAccordionId(id = 9) public boolean hideBlazeParticles = false; @Expose @ConfigOption(name = "Fireball Particles", desc = "Hide fireball particles.") @ConfigEditorBoolean @ConfigAccordionId(id = 9) public boolean hideFireballParticles = true; @Expose @ConfigOption(name = "Fire Particles", desc = "Hide particles from the fire block.") @ConfigEditorBoolean @ConfigAccordionId(id = 9) public boolean hideFireBlockParticles = true; @Expose @ConfigOption(name = "Smoke Particles", desc = "Hide smoke particles.") @ConfigEditorBoolean @ConfigAccordionId(id = 9) public boolean hideSmokeParticles = false; @Expose @ConfigOption(name = "Far Particles", desc = "Hide particles that are more than 40 blocks away.") @ConfigEditorBoolean @ConfigAccordionId(id = 9) public boolean hideFarParticles = true; @Expose @ConfigOption(name = "Close Redstone Particles", desc = "Hide redstone particles around the player (appear for some potion effects).") @ConfigEditorBoolean @ConfigAccordionId(id = 9) public boolean hideCloseRedstoneparticles = true; @Expose @ConfigOption(name = "Chicken Head Timer", desc = "") @ConfigEditorAccordion(id = 10) public boolean chickenHeadTimer = false; @Expose @ConfigOption(name = "Enabled", desc = "Show the cooldown until the next time you can lay an egg with the chicken head.") @ConfigEditorBoolean @ConfigAccordionId(id = 10) public boolean chickenHeadTimerDisplay = false; @Expose @ConfigOption(name = "Hide Chat", desc = "Hide the 'You lay an egg' chat message.") @ConfigEditorBoolean @ConfigAccordionId(id = 10) public boolean chickenHeadTimerHideChat = true; @Expose public Position chickenHeadTimerPosition = new Position(-372, 73, false, true); @Expose @ConfigOption(name = "Estimated Item Value", desc = "(Enchantments, reforging stone prices, gemstones, gemstones, drill parts and more)") @ConfigEditorAccordion(id = 11) public boolean estimatedItemValue = false; @Expose @ConfigOption(name = "Enable Estimated Price", desc = "Displays an estimated item value for the item you hover over.") @ConfigEditorBoolean @ConfigAccordionId(id = 11) public boolean estimatedIemValueEnabled = false; @Expose @ConfigOption(name = "Hotkey", desc = "Press this key to show the estimated item value.") @ConfigEditorKeybind(defaultKey = Keyboard.KEY_NONE) @ConfigAccordionId(id = 11) public int estimatedItemValueHotkey = Keyboard.KEY_NONE; @Expose @ConfigOption(name = "Show always", desc = "Ignore the hotkey and always display the item value.") @ConfigEditorBoolean @ConfigAccordionId(id = 11) public boolean estimatedIemValueAlwaysEnabled = true; @ConfigOption(name = "Discord Rich Presence", desc = "") @Accordion @Expose public DiscordRPC discordRPC = new DiscordRPC(); public static class DiscordRPC { @Expose @ConfigOption(name = "Enable Discord RPC", desc = "Details about your Skyblock session displayed through Discord.") @ConfigEditorBoolean public Property enabled = Property.of(false); @Expose @ConfigOption(name = "First Line", desc = "Decide what to show in the first line.") @ConfigEditorDropdown(values = { "Nothing", "Location", "Purse", "Bits", "Stats", "Held Item", "Skyblock Date", "Profile (Fruit)", "Slayer", "Custom" }) public Property firstLine = Property.of(0); @Expose @ConfigOption(name = "Second Line", desc = "Decide what to show in the second line.") @ConfigEditorDropdown(values = { "Nothing", "Location", "Purse", "Bits", "Stats", "Held Item", "Skyblock Date", "Profile (Fruit)", "Slayer", "Custom" }) public Property secondLine = Property.of(0); @Expose @ConfigOption(name = "Custom", desc = "What should be displayed if you select \"Custom\" above.") @ConfigEditorText public Property customText = Property.of(""); } @Expose public Position itemPriceDataPos = new Position(140, 90, false, true); @Expose @ConfigOption(name = "Exp Bottles", desc = "Hides all the experience orbs lying on the ground.") @ConfigEditorBoolean public boolean hideExpBottles = false; @Expose public Position collectionCounterPos = new Position(10, 10, false, true); @Expose @ConfigOption(name = "Brewing Stand Overlay", desc = "Display the Item names directly inside the Brewing Stand") @ConfigEditorBoolean public boolean brewingStandOverlay = true; @Expose @ConfigOption(name = "Red Scoreboard Numbers", desc = "Hide the red scoreboard numbers at the right side of the screen.") @ConfigEditorBoolean public boolean hideScoreboardNumbers = false; @Expose @ConfigOption(name = "Hide Piggy", desc = "Replacing 'Piggy' with 'Purse' in the Scoreboard.") @ConfigEditorBoolean public boolean hidePiggyScoreboard = true; @Expose @ConfigOption(name = "Explosions Hider", desc = "Hide explosions.") @ConfigEditorBoolean public boolean hideExplosions = false; @Expose @ConfigOption(name = "CH Join", desc = "Helps buy a Pass for accessing the Crystal Hollows if needed.") @ConfigEditorBoolean public boolean crystalHollowsJoin = true; @Expose @ConfigOption(name = "Fire Overlay Hider", desc = "Hide the fire overlay (Like in Skytils)") @ConfigEditorBoolean public boolean hideFireOverlay = false; @Expose @ConfigOption(name = "Paste Into Signs", desc = "Allows you to paste the clipboard into signs when you press Ctrl + V") @ConfigEditorBoolean public boolean pasteIntoSigns = true; @Expose @ConfigOption(name = "Config Button", desc = "Add a button to the pause menu to configure SkyHanni.") @ConfigEditorBoolean public boolean configButtonOnPause = true; @Expose public Position inventoryLoadPos = new Position(394, 124, false, true); }