From 2cef943f6fa63f178ee18a8ffa9bbb0288e05574 Mon Sep 17 00:00:00 2001 From: SkyratBot <59378654+SkyratBot@users.noreply.github.com> Date: Wed, 16 Jun 2021 23:23:09 +0200 Subject: [PATCH] [MIRROR] Revert "Prevent SSinput from constantly requesting moving in-place" (#6352) * Revert "prevent SSinput from constantly reporting null movements (#59558)" (#59650) This reverts commit 6c2d17bb157a2585ec443b2603d6eb0bad9ccef4. Fucky movement fix oranges is literally threatening me. I feel like I've messed up somewhere here... Either way this is causing movements to be a bit fucky where one input counts as two in a direction. * Revert "Prevent SSinput from constantly requesting moving in-place" Co-authored-by: brotherbeyondd <68032262+brotherbeyondd@users.noreply.github.com> --- code/modules/keybindings/bindings_atom.dm | 5 ----- code/modules/mob/mob_movement.dm | 3 +++ 2 files changed, 3 insertions(+), 5 deletions(-) diff --git a/code/modules/keybindings/bindings_atom.dm b/code/modules/keybindings/bindings_atom.dm index 8c500730e2e..f9f95ebeca1 100644 --- a/code/modules/keybindings/bindings_atom.dm +++ b/code/modules/keybindings/bindings_atom.dm @@ -7,13 +7,8 @@ movement_dir = movement_dir | user.movement_keys[_key] if(user.next_move_dir_add) movement_dir |= user.next_move_dir_add - user.next_move_dir_add = 0 if(user.next_move_dir_sub) movement_dir &= ~user.next_move_dir_sub - user.next_move_dir_sub = 0 - if(!movement_dir) - return - // Sanity checks in case you hold left and right and up to make sure you only go up if((movement_dir & NORTH) && (movement_dir & SOUTH)) movement_dir &= ~(NORTH|SOUTH) diff --git a/code/modules/mob/mob_movement.dm b/code/modules/mob/mob_movement.dm index 9d1199ac285..d96bd5611a1 100644 --- a/code/modules/mob/mob_movement.dm +++ b/code/modules/mob/mob_movement.dm @@ -69,6 +69,9 @@ /client/Move(new_loc, direct) if(world.time < move_delay) //do not move anything ahead of this check please return FALSE + else + next_move_dir_add = 0 + next_move_dir_sub = 0 var/old_move_delay = move_delay move_delay = world.time + world.tick_lag //this is here because Move() can now be called mutiple times per tick if(!mob || !mob.loc)