aboutsummaryrefslogtreecommitdiff
path: root/src/main/kotlin/dulkirmod/config/DulkirConfig.kt
diff options
context:
space:
mode:
Diffstat (limited to 'src/main/kotlin/dulkirmod/config/DulkirConfig.kt')
-rw-r--r--src/main/kotlin/dulkirmod/config/DulkirConfig.kt176
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
- }
- }
- }
}