mirror of
https://github.com/VOREStation/VOREStation.git
synced 2026-08-30 07:28:53 +01:00
Merge branch 'master' of https://github.com/VOREStation/VOREStation into upstream-merge-8298
This commit is contained in:
@@ -77,12 +77,16 @@ var/const/CE_STABLE_THRESHOLD = 0.5
|
||||
var/obj/item/organ/internal/heart/heart = internal_organs_by_name[O_HEART]
|
||||
|
||||
if(!heart)
|
||||
blood_volume_raw = 0
|
||||
blood_volume = 0
|
||||
else if(heart.is_broken())
|
||||
blood_volume_raw *= 0.3
|
||||
blood_volume *= 0.3
|
||||
else if(heart.is_bruised())
|
||||
blood_volume_raw *= 0.7
|
||||
blood_volume *= 0.7
|
||||
else if(heart.damage)
|
||||
blood_volume_raw *= 0.8
|
||||
blood_volume *= 0.8
|
||||
|
||||
//Effects of bloodloss
|
||||
|
||||
@@ -11,14 +11,26 @@
|
||||
if(!owner)
|
||||
return
|
||||
|
||||
if(is_bruised())
|
||||
//VOREStation Edit Start Lungs were a surprisingly lethal cause of bloodloss.
|
||||
if(is_broken())
|
||||
if(prob(4))
|
||||
spawn owner?.custom_emote(VISIBLE_MESSAGE, "coughs up blood!")
|
||||
owner.drip(10)
|
||||
if(prob(8))
|
||||
spawn owner?.custom_emote(VISIBLE_MESSAGE, "coughs up a large amount of blood!")
|
||||
var/bleeding_rng = rand(3,5)
|
||||
owner.drip(bleeding_rng)
|
||||
if(prob(8)) //This is a medical emergency. Will kill within minutes unless exceedingly lucky.
|
||||
spawn owner?.custom_emote(VISIBLE_MESSAGE, "gasps for air!")
|
||||
owner.AdjustLosebreath(15)
|
||||
|
||||
else if(is_bruised()) //Only bruised? That's an annoyance and can cause some more damage (via brainloss due to oxyloss)
|
||||
if(prob(2)) //But let's not kill people too quickly.
|
||||
spawn owner?.custom_emote(VISIBLE_MESSAGE, "coughs up a small amount of blood!")
|
||||
var/bleeding_rng = rand(1,2)
|
||||
owner.drip(bleeding_rng)
|
||||
if(prob(4)) //Get to medical quickly. but shouldn't kill without exceedingly bad RNG.
|
||||
spawn owner?.custom_emote(VISIBLE_MESSAGE, "gasps for air!")
|
||||
owner.AdjustLosebreath(10) //Losebreath is a DoT that does 1:1 damage and prevents oxyloss healing via breathing.
|
||||
//VOREStation Edit End
|
||||
|
||||
if(owner.internal_organs_by_name[O_BRAIN]) // As the brain starts having Trouble, the lungs start malfunctioning.
|
||||
var/obj/item/organ/internal/brain/Brain = owner.internal_organs_by_name[O_BRAIN]
|
||||
if(Brain.get_control_efficiency() <= 0.8)
|
||||
|
||||
@@ -377,7 +377,7 @@
|
||||
droplimb(0, DROPLIMB_EDGE)
|
||||
else if(spread_dam && owner && parent && (brute_overflow || burn_overflow) && (brute_overflow >= 5 || burn_overflow >= 5) && !permutation) //No infinite damage loops.
|
||||
var/brute_third = brute_overflow * 0.33
|
||||
var/burn_third = burn_overflow * 0.33
|
||||
var/burn_third = burn_overflow * 0.33
|
||||
if(children && children.len)
|
||||
var/brute_on_children = brute_third / children.len
|
||||
var/burn_on_children = burn_third / children.len
|
||||
@@ -593,6 +593,8 @@ This function completely restores a damaged organ to perfect condition.
|
||||
return 1
|
||||
else
|
||||
last_dam = brute_dam + burn_dam
|
||||
if (number_wounds != 0)
|
||||
return 1
|
||||
if(germ_level)
|
||||
return 1
|
||||
return 0
|
||||
@@ -729,8 +731,8 @@ Note that amputating the affected organ does in fact remove the infection from t
|
||||
return
|
||||
|
||||
for(var/datum/wound/W in wounds)
|
||||
// wounds can disappear after 10 minutes at the earliest
|
||||
if(W.damage <= 0 && W.created + 10 * 10 * 60 <= world.time)
|
||||
// wounds used to be able to disappear after 10 minutes at the earliest, for now just remove them as soon as there is no damage
|
||||
if(W.damage <= 0)
|
||||
wounds -= W
|
||||
continue
|
||||
// let the GC handle the deletion of the wound
|
||||
@@ -1062,14 +1064,14 @@ Note that amputating the affected organ does in fact remove the infection from t
|
||||
if((status & ORGAN_BROKEN) || cannot_break)
|
||||
return
|
||||
|
||||
if(owner)
|
||||
owner.visible_message(\
|
||||
"<span class='danger'>You hear a loud cracking sound coming from \the [owner].</span>",\
|
||||
"<span class='danger'>Something feels like it shattered in your [name]!</span>",\
|
||||
"<span class='danger'>You hear a sickening crack.</span>")
|
||||
jostle_bone()
|
||||
if(organ_can_feel_pain() && !isbelly(owner.loc))
|
||||
if(owner) //VOREStation Edit Start
|
||||
if(organ_can_feel_pain() && !isbelly(owner.loc) && !isliving(owner.loc))
|
||||
owner.visible_message(\
|
||||
"<span class='danger'>You hear a loud cracking sound coming from \the [owner].</span>",\
|
||||
"<span class='danger'>Something feels like it shattered in your [name]!</span>",\
|
||||
"<span class='danger'>You hear a sickening crack.</span>")
|
||||
owner.emote("scream")
|
||||
jostle_bone() //VOREStation Edit End
|
||||
|
||||
playsound(src, "fracture", 10, 1, -2)
|
||||
status |= ORGAN_BROKEN
|
||||
|
||||
@@ -175,3 +175,31 @@ VS Edit - anyone can select these. */
|
||||
|
||||
/obj/item/weapon/disk/limb/dsi_teshari
|
||||
company = "DSI - Teshari"
|
||||
|
||||
/datum/robolimb/dsi_zorren
|
||||
company = "DSI - Zorren"
|
||||
desc = "This limb feels soft and fluffy, realistic design and squish. Seems a little mischievous. By Darkside Incorperated."
|
||||
icon = 'icons/mob/human_races/cyberlimbs/DSIZorren/dsi_zorren.dmi'
|
||||
blood_color = "#ffe2ff"
|
||||
lifelike = 1
|
||||
unavailable_to_build = 1
|
||||
includes_tail = 1
|
||||
skin_tone = 1
|
||||
suggested_species = "Zorren"
|
||||
|
||||
/obj/item/weapon/disk/limb/dsi_zorren
|
||||
company = "DSI - Zorren"
|
||||
|
||||
/datum/robolimb/dsi_fennec
|
||||
company = "DSI - Fennec"
|
||||
desc = "This limb feels soft and fluffy, realistic design and squish. Seems a little mischievous. By Darkside Incorperated."
|
||||
icon = 'icons/mob/human_races/cyberlimbs/DSIFennec/dsi_fennec.dmi'
|
||||
blood_color = "#ffe2ff"
|
||||
lifelike = 1
|
||||
unavailable_to_build = 1
|
||||
includes_tail = 1
|
||||
skin_tone = 1
|
||||
suggested_species = "Fennec"
|
||||
|
||||
/obj/item/weapon/disk/limb/dsi_fennec
|
||||
company = "DSI - Fennec"
|
||||
|
||||
@@ -25,7 +25,7 @@
|
||||
|
||||
/obj/item/organ/internal/voicebox/skrell
|
||||
icon_state = "skrell_larynx"
|
||||
will_assist_languages = list(LANGUAGE_SKRELLIAN, LANGUAGE_SKRELLIANFAR)
|
||||
will_assist_languages = list(LANGUAGE_SKRELLIAN)
|
||||
|
||||
/obj/item/organ/internal/appendix/skrell
|
||||
icon_state = "skrell_appendix"
|
||||
|
||||
Reference in New Issue
Block a user