[MIRROR] Myelamine fixes and adjustments (#10345)

Co-authored-by: Cameron Lennox <killer65311@gmail.com>
Co-authored-by: Kashargul <144968721+Kashargul@users.noreply.github.com>
This commit is contained in:
CHOMPStation2StaffMirrorBot
2025-03-09 18:13:37 -07:00
committed by GitHub
parent 75a0aee147
commit e9a77f6012
2 changed files with 18 additions and 19 deletions

View File

@@ -743,7 +743,7 @@
/datum/reagent/myelamine
name = REAGENT_MYELAMINE
id = REAGENT_ID_MYELAMINE
description = "Used to rapidly clot internal hemorrhages by increasing the effectiveness of platelets."
description = "Used to rapidly clot hemorrhages by increasing the effectiveness of platelets. An ideal dosage of 10 units will fully heal any internal hemorrhages."
reagent_state = LIQUID
color = "#4246C7"
metabolism = REM * 0.75
@@ -762,30 +762,30 @@
for(var/obj/item/organ/external/O in H.bad_external_organs)
for(var/datum/wound/W in O.wounds)
if(W.bleeding())
W.damage = max(W.damage - wound_heal, 0)
if(W.damage <= 0)
O.wounds -= W
if(W.internal)
W.damage = max(W.damage - wound_heal, 0)
if(W.damage <= 0)
W.bandage() //This is the ACTUAL clotting being performed.
W.damage = max(W.damage - (wound_heal*3.5), 0) //Removed should be 0.15 (can be higher if you have high/apex metabolism). repair_strength is 6. Making wound_heal .9. Multiply by 3.5 and that gives us a heal of 3.15 on our wounds.
if(W.damage <= 0) //We do this since this will only happen once per bleeding wound, as it's then bandaged (clotted). We do the heal as we want it to be somewhat like slapping them with an advanceed/bruise_pack. (Bruise packs heal 3.5 on application, as of the time of writing.)
O.wounds -= W
break //We only heal ONE external wound per go around.
for(var/datum/wound/internal_bleeding/W in O.wounds)
W.damage = max(W.damage - wound_heal, 0)
if(W.damage <= 0)
O.wounds -= W
else if(dose >= 9.5 && dose < 11) //If you are in the 'sweet zone' of 9.5u to 11u, your internal wounds instantly heal. This is to prevent people from using a clotting pen or taking a 10u clotting pill from medical and it not actually fixing their wounds.
W.damage = 0
O.wounds -= W
/datum/reagent/myelamine/overdose(var/mob/living/carbon/M, var/alien, var/removed)
// Copypaste of affect_blood with slight adjustment. Heals slightly faster at the cost of high toxins
//Heals slightly faster at the cost of high toxins. Honestly you should never do this, but whatever.
..()
if(ishuman(M))
var/mob/living/carbon/human/H = M
var/wound_heal = removed * repair_strength / 2
for(var/obj/item/organ/external/O in H.bad_external_organs)
for(var/datum/wound/W in O.wounds)
if(W.bleeding())
W.damage = max(W.damage - wound_heal, 0)
if(W.damage <= 0)
O.wounds -= W
if(W.internal)
W.damage = max(W.damage - wound_heal, 0)
if(W.damage <= 0)
O.wounds -= W
for(var/datum/wound/internal_bleeding/W in O.wounds)
W.damage = max(W.damage - wound_heal, 0)
if(W.damage <= 0)
O.wounds -= W
/datum/reagent/respirodaxon
name = REAGENT_RESPIRODAXON