mirror of
https://github.com/ParadiseSS13/Paradise.git
synced 2026-08-21 19:17:50 +01:00
Merge pull request #7762 from Fox-McCloud/blood-refactor-fixes
Blood Refactor Fixes
This commit is contained in:
@@ -165,15 +165,9 @@ REAGENT SCANNER
|
||||
var/mob/living/carbon/human/H = M
|
||||
var/list/damaged = H.get_damaged_organs(1,1)
|
||||
user.show_message("<span class='notice'>Localized Damage, Brute/Burn:</span>",1)
|
||||
if(length(damaged)>0)
|
||||
if(length(damaged) > 0)
|
||||
for(var/obj/item/organ/external/org in damaged)
|
||||
user.show_message(text("<span class='notice'>\t []: [][] - []</span>", \
|
||||
capitalize(org.name), \
|
||||
(org.brute_dam > 0) ? "<span class='warning'>[org.brute_dam]</span>" :0, \
|
||||
(org.status & ORGAN_BLEEDING)?"<span class='danger'>\[Bleeding\]</span>":"\t", \
|
||||
(org.burn_dam > 0) ? "<font color='#FFA500'>[org.burn_dam]</font>" :0),1)
|
||||
else
|
||||
user.show_message("<span class='notice'>\t Limbs are OK.</span>",1)
|
||||
user.show_message("\t\t<span class='info'>[capitalize(org.name)]: [(org.brute_dam > 0) ? "<font color='red'>[org.brute_dam]</font></span>" : "<font color='red'>0</font>"]-[(org.burn_dam > 0) ? "<font color='#FF8000'>[org.burn_dam]</font>" : "<font color='#FF8000'>0</font>"]")
|
||||
|
||||
OX = M.getOxyLoss() > 50 ? "<font color='blue'><b>Severe oxygen deprivation detected</b></font>" : "Subject bloodstream oxygen level normal"
|
||||
TX = M.getToxLoss() > 50 ? "<font color='green'><b>Dangerous amount of toxins detected</b></font>" : "Subject bloodstream toxin level minimal"
|
||||
@@ -188,7 +182,7 @@ REAGENT SCANNER
|
||||
for(var/thing in M.viruses)
|
||||
var/datum/disease/D = thing
|
||||
if(!(D.visibility_flags & HIDDEN_SCANNER))
|
||||
to_chat(user, "<span class='alert'><b>Warning: [D.form] detected</b>\nName: [D.name].\nType: [D.spread_text].\nStage: [D.stage]/[D.max_stages].\nPossible Cure: [D.cure_text]</span>")
|
||||
user.show_message("<span class='alert'><b>Warning: [D.form] detected</b>\nName: [D.name].\nType: [D.spread_text].\nStage: [D.stage]/[D.max_stages].\nPossible Cure: [D.cure_text]</span>")
|
||||
if(M.getStaminaLoss())
|
||||
user.show_message("<span class='info'>Subject appears to be suffering from fatigue.</span>")
|
||||
if(M.getCloneLoss())
|
||||
@@ -228,17 +222,21 @@ REAGENT SCANNER
|
||||
var/blood_id = H.get_blood_id()
|
||||
if(blood_id)
|
||||
if(H.bleed_rate)
|
||||
to_chat(user, "<span class='danger'>Subject is bleeding!</span>")
|
||||
user.show_message("<span class='danger'>Subject is bleeding!</span>")
|
||||
var/blood_percent = round((H.blood_volume / BLOOD_VOLUME_NORMAL)*100)
|
||||
var/blood_type = H.b_type
|
||||
if(blood_id != "blood")//special blood substance
|
||||
blood_type = blood_id
|
||||
var/datum/reagent/R = chemical_reagents_list[blood_id]
|
||||
if(R)
|
||||
blood_type = R.name
|
||||
else
|
||||
blood_type = blood_id
|
||||
if(H.blood_volume <= BLOOD_VOLUME_SAFE && H.blood_volume > BLOOD_VOLUME_OKAY)
|
||||
user.show_message("<span class='danger'>LOW blood level [blood_percent] %, [H.blood_volume] cl,</span> <span class='info'>type: [blood_type]</span>")
|
||||
else if(H.blood_volume <= BLOOD_VOLUME_OKAY)
|
||||
to_chat(user, "<span class='danger'>CRITICAL blood level [blood_percent] %, [H.blood_volume] cl,</span> <span class='info'>type: [blood_type]</span>")
|
||||
|
||||
user.show_message("<span class='warning'>blood type: [blood_type].</span>")
|
||||
user.show_message("<span class='danger'>CRITICAL blood level [blood_percent] %, [H.blood_volume] cl,</span> <span class='info'>type: [blood_type]</span>")
|
||||
else
|
||||
user.show_message("<span class='info'>Blood level [blood_percent] %, [H.blood_volume] cl, type: [blood_type]</span>")
|
||||
|
||||
if(H.undergoing_cardiac_arrest() && H.stat != DEAD)
|
||||
user.show_message("<span class='userdanger'>Subject suffering from heart attack: Apply defibrillator immediately.</span>")
|
||||
|
||||
@@ -96,22 +96,18 @@
|
||||
var/obj/item/organ/external/affecting = H.get_organ(user.zone_sel.selecting)
|
||||
|
||||
if(affecting.open == 0)
|
||||
var/bandaged = affecting.bandage()
|
||||
var/disinfected = affecting.disinfect()
|
||||
affecting.bandage()
|
||||
affecting.disinfect()
|
||||
|
||||
if(!(bandaged || disinfected))
|
||||
to_chat(user, "<span class='warning'>The wounds on [H]'s [affecting.name] have already been bandaged.</span>")
|
||||
return 1
|
||||
else
|
||||
user.visible_message("<span class='green'>[user] bandages the wounds on [H]'s [affecting.name].", \
|
||||
"<span class='green'>You bandage the wounds on [H]'s [affecting.name].</span>" )
|
||||
user.visible_message("<span class='green'>[user] bandages the wounds on [H]'s [affecting.name].</span>", \
|
||||
"<span class='green'>You bandage the wounds on [H]'s [affecting.name].</span>" )
|
||||
|
||||
if(stop_bleeding)
|
||||
if(!H.bleedsuppress) //so you can't stack bleed suppression
|
||||
H.suppress_bloodloss(stop_bleeding)
|
||||
affecting.heal_damage(heal_brute, heal_burn)
|
||||
H.UpdateDamageIcon()
|
||||
use(1)
|
||||
if(stop_bleeding)
|
||||
if(!H.bleedsuppress) //so you can't stack bleed suppression
|
||||
H.suppress_bloodloss(stop_bleeding)
|
||||
affecting.heal_damage(heal_brute, heal_burn)
|
||||
H.UpdateDamageIcon()
|
||||
use(1)
|
||||
else
|
||||
to_chat(user, "<span class='warning'>[affecting] is cut open, you'll need more than a bandage!</span>")
|
||||
|
||||
@@ -122,6 +118,7 @@
|
||||
desc = "An advanced trauma kit for severe injuries."
|
||||
icon_state = "traumakit"
|
||||
heal_brute = 25
|
||||
stop_bleeding = 0
|
||||
|
||||
|
||||
|
||||
@@ -145,15 +142,13 @@
|
||||
var/obj/item/organ/external/affecting = H.get_organ(user.zone_sel.selecting)
|
||||
|
||||
if(affecting.open == 0)
|
||||
if(!affecting.salve())
|
||||
to_chat(user, "<span class='warning'>The wounds on [H]'s [affecting.name] have already been salved.</span>")
|
||||
return 1
|
||||
else
|
||||
user.visible_message("<span class='green'>[user] salves the wounds on [H]'s [affecting.name].", \
|
||||
"<span class='green'>You salve the wounds on [H]'s [affecting.name].</span>" )
|
||||
affecting.heal_damage(heal_brute, heal_burn)
|
||||
H.UpdateDamageIcon()
|
||||
use(1)
|
||||
affecting.salve()
|
||||
|
||||
user.visible_message("<span class='green'>[user] salves the wounds on [H]'s [affecting.name].</span>", \
|
||||
"<span class='green'>You salve the wounds on [H]'s [affecting.name].</span>" )
|
||||
affecting.heal_damage(heal_brute, heal_burn)
|
||||
H.UpdateDamageIcon()
|
||||
use(1)
|
||||
else
|
||||
to_chat(user, "<span class='warning'>[affecting] is cut open, you'll need more than some ointment!</span>")
|
||||
|
||||
|
||||
Reference in New Issue
Block a user