From 7cc463a190670422fb7f07a43885e9c2c655bb19 Mon Sep 17 00:00:00 2001 From: deathride58 Date: Fri, 22 Feb 2019 09:09:41 -0500 Subject: [PATCH] fixes the bug where you can sometimes get permanently stuck sprinting when using the sprint hotkey (#8033) --- modular_citadel/code/modules/keybindings/bindings_human.dm | 4 ++-- modular_citadel/code/modules/keybindings/bindings_robot.dm | 4 ++-- .../code/modules/mob/living/carbon/human/human_movement.dm | 4 ++++ .../code/modules/mob/living/silicon/robot/robot_movement.dm | 4 ++++ 4 files changed, 12 insertions(+), 4 deletions(-) diff --git a/modular_citadel/code/modules/keybindings/bindings_human.dm b/modular_citadel/code/modules/keybindings/bindings_human.dm index 963e71d709..ffe88bd4a9 100644 --- a/modular_citadel/code/modules/keybindings/bindings_human.dm +++ b/modular_citadel/code/modules/keybindings/bindings_human.dm @@ -1,13 +1,13 @@ /mob/living/carbon/human/key_down(_key, client/user) switch(_key) if("Shift") - togglesprint() + sprint_hotkey(TRUE) return return ..() /mob/living/carbon/human/key_up(_key, client/user) switch(_key) if("Shift") - togglesprint() + sprint_hotkey(FALSE) return return ..() diff --git a/modular_citadel/code/modules/keybindings/bindings_robot.dm b/modular_citadel/code/modules/keybindings/bindings_robot.dm index 59151f2b40..d3b6248f7d 100644 --- a/modular_citadel/code/modules/keybindings/bindings_robot.dm +++ b/modular_citadel/code/modules/keybindings/bindings_robot.dm @@ -1,13 +1,13 @@ /mob/living/silicon/robot/key_down(_key, client/user) switch(_key) if("Shift") - togglesprint() + sprint_hotkey(TRUE) return return ..() /mob/living/silicon/robot/key_up(_key, client/user) switch(_key) if("Shift") - togglesprint() + sprint_hotkey(FALSE) return return ..() diff --git a/modular_citadel/code/modules/mob/living/carbon/human/human_movement.dm b/modular_citadel/code/modules/mob/living/carbon/human/human_movement.dm index 0e59e2cd9f..c4449d33d7 100644 --- a/modular_citadel/code/modules/mob/living/carbon/human/human_movement.dm +++ b/modular_citadel/code/modules/mob/living/carbon/human/human_movement.dm @@ -31,3 +31,7 @@ for(var/obj/screen/sprintbutton/selector in hud_used.static_inventory) selector.insert_witty_toggle_joke_here(src) return TRUE + +/mob/living/carbon/human/proc/sprint_hotkey(targetstatus) + if(targetstatus ? !sprinting : sprinting) + togglesprint() diff --git a/modular_citadel/code/modules/mob/living/silicon/robot/robot_movement.dm b/modular_citadel/code/modules/mob/living/silicon/robot/robot_movement.dm index 37dba85c40..598690590c 100644 --- a/modular_citadel/code/modules/mob/living/silicon/robot/robot_movement.dm +++ b/modular_citadel/code/modules/mob/living/silicon/robot/robot_movement.dm @@ -23,3 +23,7 @@ for(var/obj/screen/sprintbutton/selector in hud_used.static_inventory) selector.insert_witty_toggle_joke_here(src) return TRUE + +/mob/living/silicon/robot/proc/sprint_hotkey(targetstatus) + if(targetstatus ? !sprinting : sprinting) + togglesprint()