diff --git a/code/modules/mob/living/carbon/human/life.dm b/code/modules/mob/living/carbon/human/life.dm index 83a320f118a..119b47a8829 100644 --- a/code/modules/mob/living/carbon/human/life.dm +++ b/code/modules/mob/living/carbon/human/life.dm @@ -55,11 +55,16 @@ /mob/living/carbon/human/calculate_affecting_pressure(pressure) - if (wear_suit && head && istype(wear_suit, /obj/item/clothing) && istype(head, /obj/item/clothing)) - var/obj/item/clothing/CS = wear_suit - var/obj/item/clothing/CH = head - if (CS.clothing_flags & CH.clothing_flags & STOPSPRESSUREDAMAGE) - return ONE_ATMOSPHERE + var/chest_covered = FALSE + var/head_covered = FALSE + for(var/obj/item/clothing/equipped in get_equipped_items()) + if((equipped.body_parts_covered & CHEST) && (equipped.clothing_flags & STOPSPRESSUREDAMAGE)) + chest_covered = TRUE + if((equipped.body_parts_covered & HEAD) && (equipped.clothing_flags & STOPSPRESSUREDAMAGE)) + head_covered = TRUE + + if(chest_covered && head_covered) + return ONE_ATMOSPHERE return pressure