Nerfs suitless spacewalking: Cryoxodone now stuns while healing. (#21556)

* qwerty remeber you made this and publish this

* removes comment due to testing

* just change tcryo dofus

* Cryox that is ingested will not work as it freezes in your mouth

* hmm yes

* Update code/modules/reagents/chemistry/reagents/medicine.dm

Co-authored-by: Luc <89928798+lewcc@users.noreply.github.com>

---------

Co-authored-by: Luc <89928798+lewcc@users.noreply.github.com>
This commit is contained in:
Qwertytoforty
2023-08-05 09:13:35 -04:00
committed by GitHub
parent 899f259ef4
commit 8336eecd00
2 changed files with 13 additions and 12 deletions

View File

@@ -10,7 +10,7 @@
#define R_IDEAL_GAS_EQUATION 8.31 //kPa*L/(K*mol) #define R_IDEAL_GAS_EQUATION 8.31 //kPa*L/(K*mol)
#define ONE_ATMOSPHERE 101.325 //kPa #define ONE_ATMOSPHERE 101.325 //kPa
#define TCMB 2.7 // -270.3degC #define TCMB 2.7 // -270.3degC
#define TCRYO 265 // -48.15degC #define TCRYO 215 // -58.15degC
#define T0C 273.15 // 0degC #define T0C 273.15 // 0degC
#define T20C 293.15 // 20degC #define T20C 293.15 // 20degC
/// -14C - Temperature used for kitchen cold room, medical freezer, etc. /// -14C - Temperature used for kitchen cold room, medical freezer, etc.

View File

@@ -122,24 +122,25 @@
heart_rate_decrease = 1 heart_rate_decrease = 1
taste_description = "a safe refuge" taste_description = "a safe refuge"
/datum/reagent/medicine/cryoxadone/reaction_mob(mob/living/M, method = REAGENT_TOUCH, volume, show_message = TRUE)
if(iscarbon(M))
if(method == REAGENT_INGEST && M.bodytemperature < TCRYO)
data = "Ingested"
if(show_message)
to_chat(M, "<span class='warning'>[src] freezes solid as it enters your body!</span>") //Burn damage already happens on ingesting
..()
/datum/reagent/medicine/cryoxadone/on_mob_life(mob/living/M) /datum/reagent/medicine/cryoxadone/on_mob_life(mob/living/M)
var/update_flags = STATUS_UPDATE_NONE var/update_flags = STATUS_UPDATE_NONE
if(M.bodytemperature < TCRYO && data != "Ingested")
var/external_temp
if(istype(M.loc, /obj/machinery/atmospherics/unary/cryo_cell))
var/obj/machinery/atmospherics/unary/cryo_cell/C = M.loc
external_temp = C.air_contents.temperature
else
var/turf/T = get_turf(M)
external_temp = T.temperature
if(external_temp < TCRYO)
update_flags |= M.adjustCloneLoss(-4, FALSE) update_flags |= M.adjustCloneLoss(-4, FALSE)
update_flags |= M.adjustOxyLoss(-10, FALSE) update_flags |= M.adjustOxyLoss(-10, FALSE)
update_flags |= M.adjustToxLoss(-3, FALSE) update_flags |= M.adjustToxLoss(-3, FALSE)
update_flags |= M.adjustBruteLoss(-12, FALSE) update_flags |= M.adjustBruteLoss(-12, FALSE)
update_flags |= M.adjustFireLoss(-12, FALSE) update_flags |= M.adjustFireLoss(-12, FALSE)
M.Stun(4 SECONDS) //You freeze up, but get good healing. Stops use as a combat drug, or for meming on blobs in space.
if(M.stat == CONSCIOUS && prob(25)) //So people know what is going on outside cryo tubes, in the event someone weaponises this.
to_chat(M, "<span class='warning'>Your veins and muscles are freezing!</span>")
if(ishuman(M)) if(ishuman(M))
var/mob/living/carbon/human/H = M var/mob/living/carbon/human/H = M
var/obj/item/organ/external/head/head = H.get_organ("head") var/obj/item/organ/external/head/head = H.get_organ("head")