From ca194d7b37dc77a44bae1adfc0792b0b3a5248a8 Mon Sep 17 00:00:00 2001 From: 4dplanner <3combined@gmail.com> Date: Mon, 25 Mar 2019 21:38:43 +0000 Subject: [PATCH] [S] Checks for incapacitation when updating mobility (#43302) * Adds incap check to canusetopic * Collates if branches * properly fixes mobility flags --- code/modules/mob/living/living.dm | 12 +++++++----- 1 file changed, 7 insertions(+), 5 deletions(-) diff --git a/code/modules/mob/living/living.dm b/code/modules/mob/living/living.dm index b578c2a04e7..aa84809d95d 100644 --- a/code/modules/mob/living/living.dm +++ b/code/modules/mob/living/living.dm @@ -1101,19 +1101,21 @@ should_be_lying = buckled.buckle_lying if(should_be_lying) - mobility_flags &= ~(MOBILITY_UI | MOBILITY_PULL | MOBILITY_STAND) + mobility_flags &= ~MOBILITY_STAND if(buckled) if(buckled.buckle_lying != -1) lying = buckled.buckle_lying if(!lying) //force them on the ground lying = pick(90, 270) else - if(!restrained) - mobility_flags |= (MOBILITY_UI | MOBILITY_PULL) - else - mobility_flags &= ~(MOBILITY_UI | MOBILITY_PULL) mobility_flags |= MOBILITY_STAND lying = 0 + + if(should_be_lying || restrained || incapacitated()) + mobility_flags &= ~(MOBILITY_UI|MOBILITY_PULL) + else + mobility_flags |= MOBILITY_UI|MOBILITY_PULL + var/canitem = !paralyzed && !stun && conscious && !chokehold && !restrained && has_arms