mirror of
https://github.com/Aurorastation/Aurora.3.git
synced 2026-08-23 04:51:32 +01:00
Ports arterial bleeding and tendon severing (#7432)
This commit is contained in:
@@ -202,15 +202,18 @@ BREATH ANALYZER
|
||||
if(e && e.status & ORGAN_BROKEN)
|
||||
user.show_message(text("<span class='warning'>Bone fractures detected. Advanced scanner required for location.</span>"), 1)
|
||||
break
|
||||
var/IB = FALSE
|
||||
var/found_arterial = FALSE
|
||||
var/found_tendon = FALSE
|
||||
for(var/obj/item/organ/external/e in H.organs)
|
||||
if(!e)
|
||||
continue
|
||||
for(var/datum/wound/W in e.wounds) if(W.internal)
|
||||
IB = TRUE
|
||||
if(e)
|
||||
if(!found_arterial && (e.status & ORGAN_ARTERY_CUT))
|
||||
user.show_message(text("<span class='warning'>Arterial bleeding detected. Advanced scanner required for location.</span>"))
|
||||
found_arterial = TRUE
|
||||
if(!found_tendon && (e.status & ORGAN_TENDON_CUT))
|
||||
user.show_message(text("<span class='warning'>Tendon or ligament damage detected. Advanced scanner required for location.</span>"))
|
||||
found_tendon = TRUE
|
||||
if(found_arterial && found_tendon)
|
||||
break
|
||||
if (IB == TRUE)
|
||||
user.show_message(text("<span class='warning'>Internal bleeding detected. Advanced scanner required for location.</span>"), 1)
|
||||
if(M:vessel)
|
||||
var/blood_volume = round(M:vessel.get_reagent_amount("blood"))
|
||||
var/blood_percent = blood_volume / 560
|
||||
|
||||
@@ -102,8 +102,6 @@ Contains:
|
||||
"<span class='notice'>You start treating [M]'s [affecting.name].</span>" )
|
||||
var/used = 0
|
||||
for (var/datum/wound/W in affecting.wounds)
|
||||
if (W.internal)
|
||||
continue
|
||||
if(W.bandaged)
|
||||
continue
|
||||
if(used == amount)
|
||||
@@ -216,8 +214,6 @@ Contains:
|
||||
"<span class='notice'>You start treating [M]'s [affecting.name].</span>" )
|
||||
var/used = 0
|
||||
for (var/datum/wound/W in affecting.wounds)
|
||||
if (W.internal)
|
||||
continue
|
||||
if (W.bandaged && W.disinfected)
|
||||
continue
|
||||
if(used == amount)
|
||||
@@ -327,9 +323,6 @@ Contains:
|
||||
if(!do_after(user, 100, act_target = M))
|
||||
return
|
||||
for (var/datum/wound/W in affecting.wounds)
|
||||
if (W.internal)
|
||||
if(prob(25)) // Space Klot technology.
|
||||
W.heal_damage(heal_brute, 1)
|
||||
if (W.bandaged)
|
||||
continue
|
||||
if(used == amount)
|
||||
|
||||
@@ -49,8 +49,7 @@
|
||||
var/obj/item/organ/external/affecting = H.get_organ(H.zone_sel.selecting)
|
||||
if(affecting)
|
||||
to_chat(H, "<span class='danger'><font size=2>You feel something rip open in your [affecting.name]!</span></font>")
|
||||
var/datum/wound/internal_bleeding/I = new(15)
|
||||
affecting.wounds += I
|
||||
affecting.sever_artery()
|
||||
if(H.can_feel_pain())
|
||||
H.emote("scream")
|
||||
|
||||
|
||||
Reference in New Issue
Block a user