Files
Paradise/code/modules/detective_work/detective_work.dm
HMBGERDO fbe49dabbc Fixing blood spreading too much during surgery (#26266)
* bloody blood

* ehhhh

* here too

* bloodwrite fix

* a

* review changes

* max blood amount to argument

* Update code/game/atoms.dm

Co-authored-by: DGamerL <108773801+DGamerL@users.noreply.github.com>
Signed-off-by: HMBGERDO <61080616+HMBGERDO@users.noreply.github.com>

* Update code/modules/mob/living/carbon/human/human_defense.dm

Co-authored-by: DGamerL <108773801+DGamerL@users.noreply.github.com>
Signed-off-by: HMBGERDO <61080616+HMBGERDO@users.noreply.github.com>

* tab

---------

Signed-off-by: HMBGERDO <61080616+HMBGERDO@users.noreply.github.com>
Co-authored-by: DGamerL <108773801+DGamerL@users.noreply.github.com>
Co-authored-by: Burzah <116982774+Burzah@users.noreply.github.com>
2024-08-15 23:51:48 +00:00

54 lines
2.3 KiB
Plaintext

//CONTAINS: Suit fibers and Detective's Scanning Computer
/atom/proc/add_fibers(mob/living/carbon/human/M)
if(M.gloves && isclothing(M.gloves))
var/obj/item/clothing/gloves/G = M.gloves
if(G.transfer_blood > 1 && add_blood(G.blood_DNA, G.blood_color))
G.transfer_blood--
if(blood_DNA && should_spread_blood)
M.make_bloody_hands(G.blood_DNA, G.blood_color, G.transfer_blood)
else
if(M.bloody_hands > 1 && add_blood(M.blood_DNA, M.hand_blood_color))
M.bloody_hands--
if(blood_DNA && should_spread_blood)
M.make_bloody_hands(blood_DNA, blood_color, M.bloody_hands)
if(!suit_fibers) suit_fibers = list()
var/fibertext
var/item_multiplier = isitem(src)?1.2:1
if(M.wear_suit)
fibertext = "Material from \a [M.wear_suit]."
if(prob(10*item_multiplier) && !(fibertext in suit_fibers) && M.wear_suit.can_leave_fibers)
//log_world("Added fibertext: [fibertext]")
suit_fibers += fibertext
if(!(M.wear_suit.body_parts_covered & UPPER_TORSO))
if(M.w_uniform)
fibertext = "Fibers from \a [M.w_uniform]."
if(prob(12*item_multiplier) && !(fibertext in suit_fibers) && M.w_uniform.can_leave_fibers) //Wearing a suit means less of the uniform exposed.
//log_world("Added fibertext: [fibertext]")
suit_fibers += fibertext
if(!(M.wear_suit.body_parts_covered & HANDS))
if(M.gloves)
fibertext = "Material from a pair of [M.gloves.name]."
if(prob(20*item_multiplier) && !(fibertext in suit_fibers) && M.gloves.can_leave_fibers)
//log_world("Added fibertext: [fibertext]")
suit_fibers += fibertext
else if(M.w_uniform)
fibertext = "Fibers from \a [M.w_uniform]."
if(prob(15*item_multiplier) && !(fibertext in suit_fibers) && M.w_uniform.can_leave_fibers)
// "Added fibertext: [fibertext]"
suit_fibers += fibertext
if(M.gloves)
fibertext = "Material from a pair of [M.gloves.name]."
if(prob(20*item_multiplier) && !(fibertext in suit_fibers) && M.gloves.can_leave_fibers)
//log_world("Added fibertext: [fibertext]")
suit_fibers += "Material from a pair of [M.gloves.name]."
else if(M.gloves)
fibertext = "Material from a pair of [M.gloves.name]."
if(prob(20*item_multiplier) && !(fibertext in suit_fibers) && M.gloves.can_leave_fibers)
//log_world("Added fibertext: [fibertext]")
suit_fibers += "Material from a pair of [M.gloves.name]."