diff --git a/code/modules/mob/living/living_movement.dm b/code/modules/mob/living/living_movement.dm index f278d22891..410e5b28db 100644 --- a/code/modules/mob/living/living_movement.dm +++ b/code/modules/mob/living/living_movement.dm @@ -1,6 +1,10 @@ /mob/living/Moved() . = ..() update_turf_movespeed(loc) + if(is_shifted) + is_shifted = FALSE + pixel_x = get_standard_pixel_x_offset(lying) + pixel_y = get_standard_pixel_y_offset(lying) /mob/living/CanPass(atom/movable/mover, turf/target) if((mover.pass_flags & PASSMOB)) diff --git a/code/modules/mob/mob.dm b/code/modules/mob/mob.dm index baab7ead40..07a01fcd88 100644 --- a/code/modules/mob/mob.dm +++ b/code/modules/mob/mob.dm @@ -712,6 +712,7 @@ GLOBAL_VAR_INIT(exploit_warn_spam_prevention, 0) return FALSE if(pixel_x <= 16) pixel_x++ + is_shifted = TRUE /mob/verb/westshift() set hidden = TRUE @@ -719,6 +720,7 @@ GLOBAL_VAR_INIT(exploit_warn_spam_prevention, 0) return FALSE if(pixel_x >= -16) pixel_x-- + is_shifted = TRUE /mob/verb/northshift() set hidden = TRUE @@ -726,6 +728,7 @@ GLOBAL_VAR_INIT(exploit_warn_spam_prevention, 0) return FALSE if(pixel_y <= 16) pixel_y++ + is_shifted = TRUE /mob/verb/southshift() set hidden = TRUE @@ -733,6 +736,7 @@ GLOBAL_VAR_INIT(exploit_warn_spam_prevention, 0) return FALSE if(pixel_y >= -16) pixel_y-- + is_shifted = TRUE /mob/proc/IsAdvancedToolUser()//This might need a rename but it should replace the can this mob use things check return FALSE diff --git a/code/modules/mob/mob_defines.dm b/code/modules/mob/mob_defines.dm index 638a3aa0e2..a9f2c09998 100644 --- a/code/modules/mob/mob_defines.dm +++ b/code/modules/mob/mob_defines.dm @@ -38,6 +38,7 @@ var/resting = 0 //Carbon var/lying = 0 var/lying_prev = 0 + var/is_shifted = 0 //MOVEMENT SPEED var/list/movespeed_modification //Lazy list, see mob_movespeed.dm