diff options
Diffstat (limited to 'src/main/kotlin/dulkirmod/config/DulkirConfig.kt')
-rw-r--r-- | src/main/kotlin/dulkirmod/config/DulkirConfig.kt | 176 |
1 files changed, 66 insertions, 110 deletions
diff --git a/src/main/kotlin/dulkirmod/config/DulkirConfig.kt b/src/main/kotlin/dulkirmod/config/DulkirConfig.kt index 8ea114a..29f4d34 100644 --- a/src/main/kotlin/dulkirmod/config/DulkirConfig.kt +++ b/src/main/kotlin/dulkirmod/config/DulkirConfig.kt @@ -18,8 +18,7 @@ object DulkirConfig : Config(Mod("DulkirMod", ModType.SKYBLOCK), "dulkirmod-conf ) var crimsonIslesMemoryLeakPatch = true - @Property( - type = PropertyType.SWITCH, + @Switch( name = "Hide Enchant Rune Particles", description = "ugly go bye-bye", category = "General", @@ -35,8 +34,7 @@ object DulkirConfig : Config(Mod("DulkirMod", ModType.SKYBLOCK), "dulkirmod-conf ) var abiDND = false - @Property( - type = PropertyType.SWITCH, + @Switch( name = "Abiphone Caller ID", description = "If DND is on, still give the player a quick 1 liner to tell them who is calling.", category = "General", @@ -52,14 +50,14 @@ object DulkirConfig : Config(Mod("DulkirMod", ModType.SKYBLOCK), "dulkirmod-conf ) var hurtCamSlider = false - @Property( - type = PropertyType.DECIMAL_SLIDER, + @Slider( name = "Hurt Cam Intensity", description = "1 is default, make sure other mods noHurtCam stuff is off", category = "General", - minF = 0f, - maxF = 2f, - decimalPlaces = 1 + subcategory = "General", + min = 0f, + max = 2f, + step = 0 ) var hurtCamIntensity = 1f @@ -114,19 +112,17 @@ object DulkirConfig : Config(Mod("DulkirMod", ModType.SKYBLOCK), "dulkirmod-conf ) var vanqBroadcast = false - @Property( - type = PropertyType.TEXT, + @Text( name = "Throttle Notifier String", description = "How do you want to tell people you are throttled?", category = "Dungeons", subcategory = "Dungeons", placeholder = "i am being throttled zzz", - protectedText = false + secure = false ) var customMessage: String = "i am being throttled zzz" - @Property( - type = PropertyType.SWITCH, + @Switch( name = "Throttle Notifier Spam", description = "LET EM KNOW!", category = "Dungeons", @@ -134,8 +130,7 @@ object DulkirConfig : Config(Mod("DulkirMod", ModType.SKYBLOCK), "dulkirmod-conf ) var throttleNotifierSpam = true - @Property( - type = PropertyType.SWITCH, + @Switch( name = "M7 Dragon Timer", description = "Large in-world text timers to help you see when dragons will spawn.", category = "Dungeons", @@ -160,8 +155,7 @@ object DulkirConfig : Config(Mod("DulkirMod", ModType.SKYBLOCK), "dulkirmod-conf var hideTags = true // CUSTOM ANIMATIONS - @Property( - type = PropertyType.SWITCH, + @Switch( name = "Global Toggle", description = "Change the look of your held item", category = "Animations", @@ -169,8 +163,7 @@ object DulkirConfig : Config(Mod("DulkirMod", ModType.SKYBLOCK), "dulkirmod-conf ) var customAnimations = false - @Property( - type = PropertyType.DECIMAL_SLIDER, + @Slider( name = "Size", description = "Scales the size of your currently held item. Default: 0", category = "Animations", @@ -189,14 +182,14 @@ object DulkirConfig : Config(Mod("DulkirMod", ModType.SKYBLOCK), "dulkirmod-conf ) var doesScaleSwing = true - @Property( - type = PropertyType.DECIMAL_SLIDER, + @Slider( name = "X", description = "Moves the held item. Default: 0", category = "Animations", - minF = -1.5f, - maxF = 1.5f, - decimalPlaces = 2 + subcategory = "Animations", + min = -1.5f, + max = 1.5f, + step = 0 ) var customX = 0f @@ -266,8 +259,7 @@ object DulkirConfig : Config(Mod("DulkirMod", ModType.SKYBLOCK), "dulkirmod-conf ) var customSpeed = 0f - @Property( - type = PropertyType.CHECKBOX, + @Checkbox( name = "Ignore Haste", description = "Makes the chosen speed override haste modifiers.", category = "Animations", @@ -275,8 +267,7 @@ object DulkirConfig : Config(Mod("DulkirMod", ModType.SKYBLOCK), "dulkirmod-conf ) var ignoreHaste = true - @Property( - type = PropertyType.SELECTOR, + @Dropdown( name = "Drinking Fix", description = "Pick how to handle drinking animations.", category = "Animations", @@ -285,11 +276,12 @@ object DulkirConfig : Config(Mod("DulkirMod", ModType.SKYBLOCK), "dulkirmod-conf ) var drinkingSelector = 2 - @Property( - type = PropertyType.BUTTON, + @Button( name = "Reset Item Values", description = "Vanilla Look! Closes Settings GUI.", - category = "Animations" + category = "Animations", + subcategory = "Animations", + text = "Reset!" ) fun demoButton() { customSize = 0f @@ -305,8 +297,7 @@ object DulkirConfig : Config(Mod("DulkirMod", ModType.SKYBLOCK), "dulkirmod-conf DulkirMod.mc.displayGuiScreen(null) } - @Property( - type = PropertyType.BUTTON, + @Button( name = "Export Preset as String", description = "Base64 representation of your current config - will copy to clipboard when pressed.", category = "Animations", @@ -326,8 +317,7 @@ object DulkirConfig : Config(Mod("DulkirMod", ModType.SKYBLOCK), "dulkirmod-conf fun stringToConfig() = Utils.animationStringtoConfig() - @Property( - type = PropertyType.SWITCH, + @Switch( name = "JoinDungeon Command Confirmation", description = "Chat notification when you push the button. Useful if you suck at navigating a numpad.", category = "Dungeons", @@ -335,8 +325,7 @@ object DulkirConfig : Config(Mod("DulkirMod", ModType.SKYBLOCK), "dulkirmod-conf ) var dungeonCommandConfirm = true - @Property( - type = PropertyType.SWITCH, + @Switch( name = "Hide Chests that are already opened at Croesus", description = "Just doesn't render the item if it has the chest opened string", category = "Dungeons", @@ -344,8 +333,7 @@ object DulkirConfig : Config(Mod("DulkirMod", ModType.SKYBLOCK), "dulkirmod-conf ) var hideOpenedChests = false - @Property( - type = PropertyType.SWITCH, + @Switch( name = "Highlight custom player for leap in menu", description = "Changes texture to green wool! Use the \"/hl\" command for convenient assignment.", category = "Dungeons", @@ -353,19 +341,17 @@ object DulkirConfig : Config(Mod("DulkirMod", ModType.SKYBLOCK), "dulkirmod-conf ) var highlightLeap = false - @Property( - type = PropertyType.TEXT, + @Text( name = "Highlighted player name", description = "case-sensitive", category = "Dungeons", subcategory = "Dungeons", placeholder = "Dilkur", - protectedText = false + secure = false ) var highlightLeapName: String = "Dilkur" - @Property( - type = PropertyType.SWITCH, + @Switch( name = "Remove Selfie Camera", description = "Get rid of pesky reverse third person!", category = "General", @@ -373,8 +359,7 @@ object DulkirConfig : Config(Mod("DulkirMod", ModType.SKYBLOCK), "dulkirmod-conf ) var noReverse3rdPerson = false - @Property( - type = PropertyType.SWITCH, + @Switch( name = "Bridge Bot Formatter", description = "Global Toggle", category = "Bridge", @@ -382,19 +367,17 @@ object DulkirConfig : Config(Mod("DulkirMod", ModType.SKYBLOCK), "dulkirmod-conf ) var bridgeBot = false - @Property( - type = PropertyType.TEXT, + @Text( name = "Bridge Bot Name", description = "Not case-sensitive", category = "Bridge", subcategory = "Bridge", placeholder = "Bweefing", - protectedText = false + secure = false ) var botName: String = "Bweefing" - @Property( - type = PropertyType.SELECTOR, + @Dropdown( name = "Bridge Chatter Name Color", description = "Pick how the player name looks.", category = "Bridge", @@ -420,8 +403,7 @@ object DulkirConfig : Config(Mod("DulkirMod", ModType.SKYBLOCK), "dulkirmod-conf ) var bridgeColor = 6 - @Property( - type = PropertyType.SWITCH, + @Switch( name = "Ghast Notification", description = "Shows a title at 9:00pm for bestiary", category = "Bestiary", @@ -429,8 +411,7 @@ object DulkirConfig : Config(Mod("DulkirMod", ModType.SKYBLOCK), "dulkirmod-conf ) var notifyGhast = false - @Property( - type = PropertyType.SWITCH, + @Switch( name = "Zombie Villager Notification", description = "Shows a title at 8:00pm for bestiary", category = "Bestiary", @@ -438,8 +419,7 @@ object DulkirConfig : Config(Mod("DulkirMod", ModType.SKYBLOCK), "dulkirmod-conf ) var notifyZombieVillager = false - @Property( - type = PropertyType.SWITCH, + @Switch( name = "Broken Hype Notification", description = "Tells you if you are no longer getting bestiary! Requires champion and book of stats on your item. LEAVE OFF IF FISHING.", category = "Bestiary", @@ -447,8 +427,7 @@ object DulkirConfig : Config(Mod("DulkirMod", ModType.SKYBLOCK), "dulkirmod-conf ) var notifyHype = false - @Property( - type = PropertyType.SWITCH, + @Switch( name = "Matcho Spawn Alert!", description = "Alerts you if your lobby becomes EXPLOSIVE!", category = "Bestiary", @@ -456,8 +435,7 @@ object DulkirConfig : Config(Mod("DulkirMod", ModType.SKYBLOCK), "dulkirmod-conf ) var notifyMatcho = false - @Property( - type = PropertyType.SELECTOR, + @Dropdown( name = "Bestiary Notification Color", description = "Changes color some bestiary features.", category = "Bestiary", @@ -483,8 +461,7 @@ object DulkirConfig : Config(Mod("DulkirMod", ModType.SKYBLOCK), "dulkirmod-conf ) var bestiaryNotifColor = 15 - @Property( - type = PropertyType.SWITCH, + @Switch( name = "Text Shadow", description = "Shows text shadow for notification", category = "Bestiary", @@ -492,21 +469,19 @@ object DulkirConfig : Config(Mod("DulkirMod", ModType.SKYBLOCK), "dulkirmod-conf ) var bestiaryTextShadow = false - @Property( - type = PropertyType.DECIMAL_SLIDER, + @Slider( name = "Scale", description = "Size of notification!", category = "Bestiary", subcategory = "Notifications", - minF = 0f, - maxF = 1f, - decimalPlaces = 1 + min = 0f, + max = 1f, + step = 0 ) var bestiaryNotifSize = .7f - @Property( - type = PropertyType.SWITCH, + @Switch( name = "Alert Noises", description = "Uses relevant mob sounds, doesn't override audio/patcher settings", category = "Bestiary", @@ -514,31 +489,29 @@ object DulkirConfig : Config(Mod("DulkirMod", ModType.SKYBLOCK), "dulkirmod-conf ) var bestiaryAlertSounds = false - @Property( - type = PropertyType.DECIMAL_SLIDER, + @Slider( name = "Alert Volume", description = "Volume of notification!", category = "Bestiary", subcategory = "Audio", - minF = 0f, - maxF = 1f, - decimalPlaces = 1 + min = 0f, + max = 1f, + step = 0 ) var bestiaryNotifVol = .7f - @Property( - type = PropertyType.BUTTON, + @Button( name = "Demo Volume Selection", description = "Plays the Ghast Noise as Reference, Might add individual sliders later but this seems like enough", category = "Bestiary", - subcategory = "Audio" + subcategory = "Audio", + text = "Test" ) fun demoVolume() { DulkirMod.mc.thePlayer.playSound("mob.ghast.scream", 1f * bestiaryNotifVol, 1f) } - @Property( - type = PropertyType.SWITCH, + @Switch( name = "Hide Arachne Loot Nametags", description = "Useful when killing a lot of them", category = "Bestiary", @@ -546,8 +519,7 @@ object DulkirConfig : Config(Mod("DulkirMod", ModType.SKYBLOCK), "dulkirmod-conf ) var hideArachneTags = false - @Property( - type = PropertyType.SWITCH, + @Switch( name = "Arachne kill timer", description = "Shows in chat.", category = "Bestiary", @@ -555,8 +527,7 @@ object DulkirConfig : Config(Mod("DulkirMod", ModType.SKYBLOCK), "dulkirmod-conf ) var arachneKillTimer = false - @Property( - type = PropertyType.SWITCH, + @Switch( name = "Arachne spawn countdown", description = "Shows how long it takes for the arachne to spawn (in world).", category = "Bestiary", @@ -564,8 +535,7 @@ object DulkirConfig : Config(Mod("DulkirMod", ModType.SKYBLOCK), "dulkirmod-conf ) var arachneSpawnTimer = false - @Property( - type = PropertyType.SWITCH, + @Switch( name = "Show Arachne Keeper Spawn Locations", description = "simple text waypoints", category = "Bestiary", @@ -573,8 +543,7 @@ object DulkirConfig : Config(Mod("DulkirMod", ModType.SKYBLOCK), "dulkirmod-conf ) var keeperWaypoints = false - @Property( - type = PropertyType.SWITCH, + @Switch( name = "Focus Mode", description = "only show the nametags of keepers. make sure to turn off when you're done", category = "Bestiary", @@ -582,8 +551,7 @@ object DulkirConfig : Config(Mod("DulkirMod", ModType.SKYBLOCK), "dulkirmod-conf ) var keeperFocus = false - @Property( - type = PropertyType.SWITCH, + @Switch( name = "Garden Visitor Alert", description = "Notifies you if you have max garden visitors in queue", category = "Farming", @@ -591,8 +559,7 @@ object DulkirConfig : Config(Mod("DulkirMod", ModType.SKYBLOCK), "dulkirmod-conf ) var notifyMaxVisitors = false - @Property( - type = PropertyType.SWITCH, + @Switch( name = "Persistent alert", description = "If turned on, the alert will continue to flash until dealt with.", category = "Farming", @@ -600,19 +567,18 @@ object DulkirConfig : Config(Mod("DulkirMod", ModType.SKYBLOCK), "dulkirmod-conf ) var persistentAlert = true - @Property( - type = PropertyType.DECIMAL_SLIDER, + @Slider( name = "Default Sensitivity", description = "For use with the /farmcontrols command toggle", category = "Farming", - minF = 0f, - maxF = 2f, - decimalPlaces = 2 + subcategory = "Farming", + min = 0f, + max = 2f, + step = 0 ) var defaultSens = .7f - @Property( - type = PropertyType.SWITCH, + @Switch( name = "Turn off re-equip animation", description = "Will stop the spam re-equip when stuff like cultivating is updating", category = "Animations", @@ -633,14 +599,4 @@ object DulkirConfig : Config(Mod("DulkirMod", ModType.SKYBLOCK), "dulkirmod-conf addDependency("persistentAlert", "notifyMaxVisitors") } - - private object ConfigSorting : SortingBehavior() { - override fun getCategoryComparator(): Comparator<in Category> = Comparator { o1, o2 -> - if (o1.name == "General") return@Comparator -1 - if (o2.name == "General") return@Comparator 1 - else compareValuesBy(o1, o2) { - it.name - } - } - } } |