[MIRROR] Removes TRAIT_NOBREATH restriction from CPR, except from self-resp virus #2095
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Mirrored on Nova: NovaSector/NovaSector#1107
Original PR: tgstation/tgstation#81522
About The Pull Request
This PR removes the
NOBREATH
conditional from/mob/living/carbon/human/proc/do_cpr
for the CPR-performing mob. Currently, the trait check stops someone from performing CPR even if they possess a functional lungs organ. I have replaced the trait-checking conditional with one that ensuresTRAIT_NOBREATH
is still checked when it is added by a disease, and two conditionals for checking the lungs.Additionally, I have changed many failure-related chat messages to use balloon alerts.
Human-type mobs must meet the following requirements for CPR to be administered successfully:
Why It's Good For The Game
TRAIT_NOBREATH
means you don't need to breathe, not that you are incapable of it.With the changes in this PR, any
/mob/living/carbon/human
which has working lungs should still be able to perform CPR even if they don't need to breathe.TRAIT_NOBREATH
would be irrelevant for the CPR performer in such a scenario, and the only case where it does apply is in mobs which aren't human-type, like simple mobs. Since CPR is for humans I determined that the trait check is unneeded.Upon request, I also added a disease-related
TRAIT_NOBREATH
check which re-establishes the old behavior of the "Self Respiration" virus preventing CPR.The changes in this PR also benefits downstreams which have additional playable species which have lungs and
TRAIT_NOBREATH
. For instance many synthetic characters on Nova Sector have cybernetic lungs but the trait check currently prevents them from performing CPR.Changelog
🆑 A.C.M.O.
qol: CPR can be administered by species which do not need to breathe, so long as they have functional lungs.
/:cl: