mirror of
https://github.com/ParadiseSS13/Paradise.git
synced 2026-08-24 12:37:26 +01:00
Blood Refactor (#6220)
* commit for branch swap * branch swap again * BLEED * trying to clear up compile errors * i killed everything when i tested this... * restorealltheblood * I REMOVED A THING * well some progress * stop bleeding * got to swap branches again. * grr * damn bloodcolors * Squash everything * color....colourrrrrrr * color....colourrrrrrr * well now that updated the branch... * Changes * Some tweaks..before i upload something major * COLOR NOT COLOUR...COLOR YES I KNOW NOT EVERYONE SPELLS IT LIKE THAT BUT MY GOD * Foot print shit.. blood coloring is going to be PAIN * trying to handle some colors..maybe. * blood colorsing sucks..di i mention this? * commenting cod malfunctions. * Changes * lets try this * Its too late at night. * blargh * woops * almost works... * progress.. * Branch swap * figured out the overlay issue.... * BRANCH SWAP * BLARGH * fixed merged conflicts..expect something to be horribly wrong. * bunch of changes * Major Fixes - Moved blood_state and bloodiness var definitions to /obj/effect/decal/cleanable/blood as well as /cleanable/Crossed(), in order to make blood color work properly. - These were not used by any other decal, so it was pointless. - Tweaked human/add_blood so that hand_blood_color uses the correct value now. - Corrected gibs having the wrong basecolor. - Tracks of different blood colors will no longer combine weirdly, and will instead form seperate overlays. - This also fixes all of the issues with tracks in general and not updating correctly. - Fixed transfering blood in add_fingerprint; the old detective code didn't use the new format for add_blood(). - Fixed xenomorphs causing runtimes in makeTrail(), and gave them their own trails. Sprites should probably be brightened later. - Fixed mobs occasionally randomly having their blood_DNA list reset. * may have accidently removed shit. * Mrowl * stiff water is not bleeding lowered trail making threshold * tweaks then conflcits * weee * indent * some tweaks * somefox tweaks. * derp * why won't they bleed!? * BLEED DAMMIT * Flattist comments and removes simple animale blood volume Cause i cannot get it to work right. * PRAISE FLATTIST * Simple animals have a blood volume now Bug with trail fixed. * changes * thanksmrowlmrowl * exotice blood trails * makesure is an exotic bleeder has a bleed rate first... * FoxBoxTweakSox * BoxVoxSoXFox * ONE MORE THING * animalsbleedreds * Buh? BUGH! * thisismescreaming * removing note needed thing * Color changes but the rabbit hole continues. * This is not pretty.... * wot * IT WORKS DAMMIT * colors. * germaphobic commit.. * we have to use the old system * nothing to see here * doubleprocarady * try to fix mulebots * mulebot fixed * DONE
This commit is contained in:
@@ -14,6 +14,7 @@ REAGENT SCANNER
|
||||
icon_state = "t-ray0"
|
||||
var/on = 0
|
||||
slot_flags = SLOT_BELT
|
||||
w_class = 2
|
||||
w_class = WEIGHT_CLASS_SMALL
|
||||
item_state = "electronic"
|
||||
materials = list(MAT_METAL=150)
|
||||
@@ -223,20 +224,21 @@ REAGENT SCANNER
|
||||
for(var/datum/wound/W in e.wounds) if(W.internal)
|
||||
user.show_message(text("<span class='warning'>Internal bleeding detected. Advanced scanner required for location.</span>"), 1)
|
||||
break
|
||||
if(H.vessel)
|
||||
var/blood_type = H.get_blood_name()
|
||||
var/blood_volume = round(H.vessel.get_reagent_amount(blood_type))
|
||||
var/blood_percent = blood_volume / BLOOD_VOLUME_NORMAL
|
||||
blood_percent *= 100
|
||||
if(blood_volume <= 500)
|
||||
user.show_message("<span class='warning'><b>Warning: Blood Level LOW: [blood_percent]% [blood_volume]cl</span>")
|
||||
else if(blood_volume <= 336)
|
||||
user.show_message("<span class='warning'><b>Warning: Blood Level CRITICAL: [blood_percent]% [blood_volume]cl</span>")
|
||||
else
|
||||
user.show_message("<span class='notice'>Blood Level Normal: [blood_percent]% [blood_volume]cl</span>")
|
||||
if(H.species.exotic_blood)
|
||||
user.show_message("<span class='warning'>Subject possesses exotic blood.</span>")
|
||||
user.show_message("<span class='warning'>Exotic blood type: [blood_type].</span>")
|
||||
var/blood_id = H.get_blood_id()
|
||||
if(blood_id)
|
||||
if(H.bleed_rate)
|
||||
to_chat(user, "<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
|
||||
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>")
|
||||
|
||||
if(H.undergoing_cardiac_arrest() && H.stat != DEAD)
|
||||
user.show_message("<span class='userdanger'>Subject suffering from heart attack: Apply defibrillator immediately.</span>")
|
||||
user.show_message("<span class='notice'>Subject's pulse: <font color='[H.pulse == PULSE_THREADY || H.pulse == PULSE_NONE ? "red" : "blue"]'>[H.get_pulse(GETPULSE_TOOL)] bpm.</font></span>")
|
||||
|
||||
Reference in New Issue
Block a user