Skip to content

Commit b678ba6

Browse files
committed
new: use onekeybind for keybinds
1 parent 9c1cb41 commit b678ba6

File tree

3 files changed

+47
-15
lines changed

3 files changed

+47
-15
lines changed

gradle.properties

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,6 @@
11
mod_name = SimpleToggleSprint
22
mod_id = simpletogglesprint
3-
mod_version = 1.0.0
3+
mod_version = 1.0.0-beta2
44

55
essential.defaults.loom=0
66

src/main/kotlin/mynameisjeff/simpletogglesprint/SimpleToggleSprint.kt

Lines changed: 3 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -17,17 +17,14 @@
1717
*/
1818
package mynameisjeff.simpletogglesprint
1919

20-
import cc.polyfrost.oneconfig.libs.universal.UKeyboard
2120
import cc.polyfrost.oneconfig.libs.universal.UMinecraft
2221
import cc.polyfrost.oneconfig.utils.commands.CommandManager
2322
import mynameisjeff.simpletogglesprint.commands.SimpleToggleSprintCommand
2423
import mynameisjeff.simpletogglesprint.core.SimpleToggleSprintConfig
2524
import mynameisjeff.simpletogglesprint.core.checkKeyCode
2625
import mynameisjeff.simpletogglesprint.mixins.accessors.AccessorGameSettings
2726
import mynameisjeff.simpletogglesprint.mixins.accessors.AccessorKeybinding
28-
import net.minecraft.client.settings.KeyBinding
2927
import net.minecraftforge.common.MinecraftForge
30-
import net.minecraftforge.fml.client.registry.ClientRegistry
3128
import net.minecraftforge.fml.common.Mod
3229
import net.minecraftforge.fml.common.event.FMLInitializationEvent
3330
import net.minecraftforge.fml.common.event.FMLPostInitializationEvent
@@ -51,23 +48,19 @@ object SimpleToggleSprint {
5148
get() = UMinecraft.getPlayer()
5249
val gameSettings
5350
get() = UMinecraft.getSettings() as AccessorGameSettings
54-
val keySprint = KeyBinding("Toggle Sprint", UKeyboard.KEY_NONE, "SimpleToggleSprint")
55-
val keySneak = KeyBinding("Toggle Sneak", UKeyboard.KEY_NONE, "SimpleToggleSprint")
5651

5752
var sprintHeld = false
5853
var sneakHeld = false
5954

6055
@Mod.EventHandler
6156
fun onInit(event: FMLInitializationEvent) {
62-
SimpleToggleSprintConfig.initialize()
57+
SimpleToggleSprintConfig
6358
MinecraftForge.EVENT_BUS.register(this)
6459
}
6560

6661
@Mod.EventHandler
6762
fun onPostInit(event: FMLPostInitializationEvent) {
6863
CommandManager.INSTANCE.registerCommand(SimpleToggleSprintCommand())
69-
ClientRegistry.registerKeyBinding(keySprint)
70-
ClientRegistry.registerKeyBinding(keySneak)
7164
}
7265

7366

@@ -76,9 +69,7 @@ object SimpleToggleSprint {
7669
if (!SimpleToggleSprintConfig.enabled) return
7770
val sprint = (gameSettings.keyBindSprint as AccessorKeybinding).keyCode
7871
val sneak = (gameSettings.keyBindSneak as AccessorKeybinding).keyCode
79-
val sprintToggle = (keySprint as AccessorKeybinding).keyCode
80-
val sneakToggle = (keySneak as AccessorKeybinding).keyCode
81-
if ((SimpleToggleSprintConfig.keybindToggleSprint && checkKeyCode(sprintToggle)) || (!SimpleToggleSprintConfig.keybindToggleSprint && checkKeyCode(sprint))) {
72+
if (!SimpleToggleSprintConfig.keybindToggleSprint && checkKeyCode(sprint)) {
8273
if (SimpleToggleSprintConfig.enabled && SimpleToggleSprintConfig.toggleSprint && !sprintHeld) {
8374
SimpleToggleSprintConfig.toggleSprintState = !SimpleToggleSprintConfig.toggleSprintState
8475
SimpleToggleSprintConfig.save()
@@ -87,7 +78,7 @@ object SimpleToggleSprint {
8778
} else {
8879
sprintHeld = false
8980
}
90-
if ((SimpleToggleSprintConfig.keybindToggleSneak && checkKeyCode(sneakToggle)) || (!SimpleToggleSprintConfig.keybindToggleSneak && checkKeyCode(sneak))) {
81+
if (!SimpleToggleSprintConfig.keybindToggleSneak && checkKeyCode(sneak)) {
9182
if (SimpleToggleSprintConfig.enabled && SimpleToggleSprintConfig.toggleSneak && !sneakHeld) {
9283
SimpleToggleSprintConfig.toggleSneakState = !SimpleToggleSprintConfig.toggleSneakState
9384
SimpleToggleSprintConfig.save()

src/main/kotlin/mynameisjeff/simpletogglesprint/core/SimpleToggleSprintConfig.kt

Lines changed: 43 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2,12 +2,15 @@ package mynameisjeff.simpletogglesprint.core
22

33
import cc.polyfrost.oneconfig.config.Config
44
import cc.polyfrost.oneconfig.config.annotations.HUD
5+
import cc.polyfrost.oneconfig.config.annotations.KeyBind
56
import cc.polyfrost.oneconfig.config.annotations.Switch
67
import cc.polyfrost.oneconfig.config.annotations.Text
8+
import cc.polyfrost.oneconfig.config.core.OneKeyBind
79
import cc.polyfrost.oneconfig.config.data.Mod
810
import cc.polyfrost.oneconfig.config.data.ModType
911
import cc.polyfrost.oneconfig.config.migration.VigilanceMigrator
1012
import cc.polyfrost.oneconfig.hud.TextHud
13+
import cc.polyfrost.oneconfig.libs.universal.UKeyboard
1114
import mynameisjeff.simpletogglesprint.SimpleToggleSprint
1215
import mynameisjeff.simpletogglesprint.core.SimpleToggleSprintConfig.ToggleSprintHud.DisplayState.Companion.activeDisplay
1316
import mynameisjeff.simpletogglesprint.mixins.accessors.AccessorEntityPlayer
@@ -40,23 +43,61 @@ object SimpleToggleSprintConfig : Config(Mod("SimpleToggleSprint", ModType.PVP,
4043
@Switch(
4144
name = "Seperate Keybind for Toggle Sprint",
4245
subcategory = "Toggle Sprint",
43-
description = "Use a seperate keybind for Toggle Sprint.\nConfigure it in the In-Game Controls menu."
46+
description = "Use a seperate keybind for Toggle Sprint."
4447
)
4548
var keybindToggleSprint = false
4649

50+
@KeyBind(
51+
name = "Toggle Sprint Keybind",
52+
subcategory = "Toggle Sprint"
53+
)
54+
var keybindToggleSprintKey = OneKeyBind(UKeyboard.KEY_NONE)
55+
4756
@Switch(
4857
name = "Seperate Keybind for Toggle Sneak",
4958
subcategory = "Toggle Sneak",
50-
description = "Use a seperate keybind for Toggle Sneak.\nConfigure it in the In-Game Controls menu."
59+
description = "Use a seperate keybind for Toggle Sneak."
5160
)
5261
var keybindToggleSneak = false
5362

63+
@KeyBind(
64+
name = "Toggle Sneak Keybind",
65+
subcategory = "Toggle Sneak"
66+
)
67+
var keybindToggleSneakKey = OneKeyBind(UKeyboard.KEY_NONE)
68+
5469
@HUD(
5570
name = "HUD",
5671
subcategory = "HUD"
5772
)
5873
var hud = ToggleSprintHud()
5974

75+
init {
76+
initialize()
77+
addDependency("keybindToggleSprint", "toggleSprint")
78+
addDependency("keybindToggleSneak", "toggleSneak")
79+
addDependency("keybindToggleSprintKey", "keybindToggleSprint")
80+
addDependency("keybindToggleSneakKey", "keybindToggleSneak")
81+
registerKeyBind(keybindToggleSprintKey) {
82+
if (keybindToggleSprint) {
83+
if (enabled && toggleSprint && !SimpleToggleSprint.sprintHeld) {
84+
toggleSprintState = !toggleSprintState
85+
SimpleToggleSprintConfig.save()
86+
}
87+
SimpleToggleSprint.sprintHeld = !SimpleToggleSprint.sprintHeld
88+
}
89+
}
90+
registerKeyBind(keybindToggleSneakKey) {
91+
if (keybindToggleSneak) {
92+
if (enabled && toggleSneak && !SimpleToggleSprint.sneakHeld) {
93+
toggleSneakState = !toggleSneakState
94+
SimpleToggleSprintConfig.save()
95+
}
96+
SimpleToggleSprint.sneakHeld = !SimpleToggleSprint.sneakHeld
97+
}
98+
}
99+
}
100+
60101
class ToggleSprintHud : TextHud(true, 0, 1080 - 19) {
61102
@Switch(name = "Brackets")
62103
private var brackets = true

0 commit comments

Comments
 (0)