Skip to content

Commit

Permalink
fix movement reuse bug with designator
Browse files Browse the repository at this point in the history
  • Loading branch information
fira committed Oct 15, 2023
1 parent 0b97ab4 commit 85887aa
Show file tree
Hide file tree
Showing 3 changed files with 11 additions and 2 deletions.
4 changes: 4 additions & 0 deletions code/__DEFINES/dcs/signals/atom/mob/living/signals_human.dm
Original file line number Diff line number Diff line change
Expand Up @@ -36,6 +36,10 @@
#define COMSIG_HUMAN_UPDATE_SIGHT "human_update_sight"
#define COMPONENT_OVERRIDE_UPDATE_SIGHT (1<<0)

///from /mob/living/carbon/human/movement_delay()
#define COMSIG_HUMAN_MOVEMENT_CANCEL_INTERACTION "human_movement_cancel_interaction"
#define COMPONENT_HUMAN_MOVEMENT_KEEP_USING (1<<0)

///from /mob/living/carbon/human/update_sight()
#define COMSIG_HUMAN_POST_UPDATE_SIGHT "human_post_update_sight"
///from /mob/living/carbon/human/movement_delay(): (list/movedata)
Expand Down
6 changes: 5 additions & 1 deletion code/game/objects/items/devices/binoculars.dm
Original file line number Diff line number Diff line change
Expand Up @@ -38,10 +38,14 @@

/obj/item/device/binoculars/on_set_interaction(mob/user)
flags_atom |= RELAY_CLICK

RegisterSignal(user, COMSIG_HUMAN_MOVEMENT_CANCEL_INTERACTION, PROC_REF(interaction_handler))

/obj/item/device/binoculars/on_unset_interaction(mob/user)
flags_atom &= ~RELAY_CLICK
UnregisterSignal(user, COMSIG_HUMAN_MOVEMENT_CANCEL_INTERACTION)

/obj/item/device/binoculars/proc/interaction_handler()
return COMPONENT_HUMAN_MOVEMENT_KEEP_USING

/obj/item/device/binoculars/civ
desc = "A pair of binoculars."
Expand Down
3 changes: 2 additions & 1 deletion code/modules/mob/living/carbon/human/human_movement.dm
Original file line number Diff line number Diff line change
Expand Up @@ -4,7 +4,8 @@
recalculate_move_delay = FALSE

if(interactee)// moving stops any kind of interaction
unset_interaction()
if(!(SEND_SIGNAL(src, COMSIG_HUMAN_MOVEMENT_CANCEL_INTERACTION) & COMPONENT_HUMAN_MOVEMENT_KEEP_USING))
unset_interaction()

if(species.slowdown)
. += species.slowdown
Expand Down

0 comments on commit 85887aa

Please sign in to comment.