mirror of
https://github.com/Aurorastation/Aurora.3.git
synced 2026-08-30 00:21:11 +01:00
Raises pain thresholds, hopefully reduces lethality a bit, nerfs painkillers. (#11969)
This commit is contained in:
@@ -1,6 +1,5 @@
|
||||
/obj/item/organ/internal/brain
|
||||
name = "brain"
|
||||
health = 400 //They need to live awhile longer than other organs. Is this even used by organ code anymore?
|
||||
desc = "A piece of juicy meat found in a person's head."
|
||||
organ_tag = BP_BRAIN
|
||||
parent_organ = BP_HEAD
|
||||
|
||||
@@ -145,7 +145,7 @@
|
||||
blood_max += ((W.damage / 40) * species.bleed_mod)
|
||||
|
||||
if(temp.status & ORGAN_ARTERY_CUT)
|
||||
var/bleed_amount = Floor(owner.vessel.total_volume / (temp.applied_pressure || !open_wound ? 450 : 250))
|
||||
var/bleed_amount = Floor((owner.vessel.total_volume / (temp.applied_pressure || !open_wound ? 450 : 250)) * temp.arterial_bleed_severity)
|
||||
if(bleed_amount)
|
||||
if(CE_BLOODCLOT in owner.chem_effects)
|
||||
bleed_amount *= 0.8 // won't do much, but it'll help
|
||||
|
||||
@@ -25,9 +25,9 @@
|
||||
var/decl/reagent/drink/coffee = REAGENT_VOLUME(owner.reagents, /decl/reagent/drink/coffee)
|
||||
if(coffee)
|
||||
if(is_bruised())
|
||||
owner.adjustToxLoss(0.1 * PROCESS_ACCURACY)
|
||||
owner.adjustToxLoss(0.1)
|
||||
else if(is_broken())
|
||||
owner.adjustToxLoss(0.3 * PROCESS_ACCURACY)
|
||||
owner.adjustToxLoss(0.3)
|
||||
|
||||
if(is_bruised())
|
||||
if(prob(5) && REAGENT_VOLUME(reagents, /decl/reagent/potassium) < 5)
|
||||
|
||||
@@ -45,7 +45,7 @@
|
||||
filter_effect += 1
|
||||
|
||||
if(filter_effect < 2) //Trouble. You're not filtering well.
|
||||
owner.adjustToxLoss(0.8 * max(2 - filter_effect, 0))
|
||||
owner.adjustToxLoss(0.5 * max(2 - filter_effect, 0))
|
||||
|
||||
// Heal a bit if needed and we're not busy. This allows recovery from low amounts of toxloss.
|
||||
if(!owner.total_radiation && damage > 0)
|
||||
|
||||
@@ -97,7 +97,8 @@
|
||||
else
|
||||
owner.emote(pick("shiver","twitch"))
|
||||
|
||||
owner.adjustOxyLoss(HUMAN_MAX_OXYLOSS * breath_fail_ratio)
|
||||
if(damage || owner.chem_effects[CE_BREATHLOSS] || world.time > last_successful_breath + 2 MINUTES)
|
||||
owner.adjustOxyLoss(HUMAN_MAX_OXYLOSS * breath_fail_ratio)
|
||||
owner.oxygen_alert = max(owner.oxygen_alert, 2)
|
||||
|
||||
/obj/item/organ/internal/lungs/proc/enable_rupture()
|
||||
|
||||
@@ -78,6 +78,7 @@
|
||||
var/encased // Needs to be opened with a saw to access the organs.
|
||||
var/joint = "joint" // Descriptive string used in dislocation.
|
||||
var/artery_name = "artery" //Name of the artery. Cartoid, etc.
|
||||
var/arterial_bleed_severity = 1 // Multiplier for bleeding in a limb.
|
||||
var/amputation_point // Descriptive string used in amputation.
|
||||
var/dislocated = 0 // If you target a joint, you can dislocate the limb, causing temporary damage to the organ.
|
||||
|
||||
@@ -385,7 +386,7 @@
|
||||
organ_hit_chance = min(organ_hit_chance, 100)
|
||||
if(prob(organ_hit_chance))
|
||||
var/obj/item/organ/internal/victim = pickweight(victims)
|
||||
damage_amt = max(damage_amt*victim.damage_reduction, 0)
|
||||
damage_amt -= max(damage_amt*victim.damage_reduction, 0)
|
||||
victim.take_internal_damage(damage_amt)
|
||||
return TRUE
|
||||
|
||||
@@ -1444,7 +1445,7 @@ Note that amputating the affected organ does in fact remove the infection from t
|
||||
pain = 0
|
||||
return
|
||||
var/last_pain = pain
|
||||
pain = max(0,min(max_damage,pain-amount))
|
||||
pain = max(0, min(species.total_health * 2, pain - amount))
|
||||
return -(pain-last_pain)
|
||||
|
||||
/obj/item/organ/external/proc/add_pain(var/amount)
|
||||
@@ -1457,8 +1458,7 @@ Note that amputating the affected organ does in fact remove the infection from t
|
||||
amount -= (owner.chem_effects[CE_PAINKILLER]/3)
|
||||
if(amount <= 0)
|
||||
return
|
||||
var/threshold = max_damage * 2
|
||||
pain = max(0, min(threshold, pain + amount))
|
||||
pain = max(0, min(pain + amount, species.total_health * 2))
|
||||
if(owner && ((amount > 15 && prob(20)) || (amount > 30 && prob(60))))
|
||||
owner.emote("scream")
|
||||
return pain-last_pain
|
||||
|
||||
@@ -62,6 +62,7 @@
|
||||
limb_flags = ORGAN_CAN_AMPUTATE | ORGAN_CAN_BREAK | ORGAN_CAN_MAIM | ORGAN_HAS_TENDON | ORGAN_CAN_GRASP
|
||||
tendon_name = "palmaris longus tendon"
|
||||
artery_name = "basilic vein"
|
||||
arterial_bleed_severity = 0.75
|
||||
amputation_point = "left shoulder"
|
||||
augment_limit = 2
|
||||
|
||||
@@ -94,6 +95,7 @@
|
||||
joint = "left knee"
|
||||
tendon_name = "quadriceps tendon"
|
||||
artery_name = "femoral artery"
|
||||
arterial_bleed_severity = 0.75
|
||||
amputation_point = "left hip"
|
||||
limb_flags = ORGAN_CAN_AMPUTATE | ORGAN_CAN_BREAK | ORGAN_CAN_MAIM | ORGAN_HAS_TENDON
|
||||
augment_limit = 2
|
||||
@@ -125,6 +127,7 @@
|
||||
parent_organ = BP_L_LEG
|
||||
joint = "left ankle"
|
||||
amputation_point = "left ankle"
|
||||
arterial_bleed_severity = 0.5
|
||||
limb_flags = ORGAN_CAN_AMPUTATE | ORGAN_CAN_BREAK | ORGAN_CAN_MAIM | ORGAN_CAN_STAND
|
||||
maim_bonus = 1
|
||||
augment_limit = 1
|
||||
@@ -162,6 +165,7 @@
|
||||
joint = "left wrist"
|
||||
tendon_name = "carpal ligament"
|
||||
amputation_point = "left wrist"
|
||||
arterial_bleed_severity = 0.5
|
||||
limb_flags = ORGAN_CAN_AMPUTATE | ORGAN_CAN_BREAK | ORGAN_CAN_MAIM | ORGAN_CAN_GRASP | ORGAN_HAS_TENDON
|
||||
maim_bonus = 1
|
||||
augment_limit = 1
|
||||
|
||||
@@ -336,6 +336,7 @@ datum/wound/puncture/massive
|
||||
/datum/wound/burn
|
||||
damage_type = BURN
|
||||
max_bleeding_stage = 0
|
||||
|
||||
/datum/wound/burn/bleeding()
|
||||
return 0
|
||||
|
||||
|
||||
Reference in New Issue
Block a user