From 769bbe7dbd9137b3d9c57369e44ea8ba03838686 Mon Sep 17 00:00:00 2001 From: WickedCybs <52309324+WickedCybs@users.noreply.github.com> Date: Tue, 28 Mar 2023 16:55:49 -0400 Subject: [PATCH] ling (#15678) Co-authored-by: WickedCybs --- code/game/gamemodes/changeling/helpers/_framework.dm | 1 + code/game/gamemodes/changeling/helpers/_store.dm | 8 ++++++++ .../gamemodes/changeling/implements/powers/resources.dm | 6 ++++++ code/modules/mob/living/carbon/breathe.dm | 4 +++- html/changelogs/wickedcybs_nobreathe.yml | 6 ++++++ 5 files changed, 24 insertions(+), 1 deletion(-) create mode 100644 html/changelogs/wickedcybs_nobreathe.yml diff --git a/code/game/gamemodes/changeling/helpers/_framework.dm b/code/game/gamemodes/changeling/helpers/_framework.dm index 2f4ddfde43d..3236fbab093 100644 --- a/code/game/gamemodes/changeling/helpers/_framework.dm +++ b/code/game/gamemodes/changeling/helpers/_framework.dm @@ -12,6 +12,7 @@ var/global/list/possible_changeling_IDs = list("Alpha","Beta","Gamma","Delta","E var/sting_range = 1 var/space_adapted = FALSE var/using_thermals = FALSE + var/no_breathing = FALSE var/changelingID = "Changeling" var/geneticdamage = 0 var/isabsorbing = 0 diff --git a/code/game/gamemodes/changeling/helpers/_store.dm b/code/game/gamemodes/changeling/helpers/_store.dm index e9f444f916d..9edafdd0868 100644 --- a/code/game/gamemodes/changeling/helpers/_store.dm +++ b/code/game/gamemodes/changeling/helpers/_store.dm @@ -175,6 +175,14 @@ var/list/datum/power/changeling/powerinstances = list() isVerb = FALSE verbpath = /mob/proc/changeling_engorgedglands +/datum/power/changeling/nobreathing + name = "UPGRADE: No Breathing" + desc = "We no longer have need to breathe, although we go through the motions to fool observers." + helptext = "Harmful gas can still irritate your eyes and this doesn't mean you can survive in space without a suit. Lung damage can still hurt somewhat." + genomecost = 2 + isVerb = FALSE + verbpath = /mob/proc/changeling_nobreathing + /datum/power/changeling/space_adaption name = "UPGRADE: Space Adaption" desc = "Our body chemistry changes to become resistant to the effects of low pressure, and we no longer have the need to breathe." diff --git a/code/game/gamemodes/changeling/implements/powers/resources.dm b/code/game/gamemodes/changeling/implements/powers/resources.dm index 7393cf01d34..850922335b5 100644 --- a/code/game/gamemodes/changeling/implements/powers/resources.dm +++ b/code/game/gamemodes/changeling/implements/powers/resources.dm @@ -20,6 +20,12 @@ AddComponent(/datum/component/armor, list(melee = ARMOR_MELEE_RESISTANT, bullet = ARMOR_BALLISTIC_CARBINE, laser = ARMOR_LASER_MEDIUM)) return TRUE +//removes the need to breathe +/mob/proc/changeling_nobreathing() + var/datum/changeling/changeling = mind.antag_datums[MODE_CHANGELING] + changeling.no_breathing = TRUE + return TRUE + // HIVE MIND UPLOAD/DOWNLOAD DNA var/list/datum/absorbed_dna/hivemind_bank = list() diff --git a/code/modules/mob/living/carbon/breathe.dm b/code/modules/mob/living/carbon/breathe.dm index cbc30a15a97..e47e9ca2a9d 100644 --- a/code/modules/mob/living/carbon/breathe.dm +++ b/code/modules/mob/living/carbon/breathe.dm @@ -26,7 +26,9 @@ var/datum/changeling/changeling = get_antag_datum(MODE_CHANGELING) if(changeling?.space_adapted) return - + if(changeling?.no_breathing) + return + volume_needed *= (species?.breath_vol_mul || 1) var/datum/gas_mixture/breath = null diff --git a/html/changelogs/wickedcybs_nobreathe.yml b/html/changelogs/wickedcybs_nobreathe.yml new file mode 100644 index 00000000000..4c9451ce587 --- /dev/null +++ b/html/changelogs/wickedcybs_nobreathe.yml @@ -0,0 +1,6 @@ +author: WickedCybs + +delete-after: True + +changes: + - rscadd: "Added an upgrade to changelings that disables their need to breathe in order to survive. Useful for those who don't intend on getting full space adapation." \ No newline at end of file