More tweaks

Fix necrotic limb surgery
Make fever not so powerful that it resists cryotubes
All necrotic limbs produce toxins unless OD on spaceacillin, regardless of infection
Fix dropper use during surgery
Fix 'gap' in printable adv scanner infection reports
Fix nanoui template for adv scanner
Add examine text to gangrene and highly infected external limbs
Add flags to the MMI holder organs to make them robotic, and thus not infectable if they are > squishy MMI (posibrain, digital)
This commit is contained in:
Arokha Sieyes
2017-02-28 01:13:29 -05:00
parent 9ef7496545
commit 2c493405bd
7 changed files with 29 additions and 25 deletions
+9 -3
View File
@@ -139,8 +139,16 @@ var/list/organ_cache = list()
/obj/item/organ/proc/handle_germ_effects()
//** Handle the effects of infections
if(robotic >= ORGAN_ROBOT) //Just in case!
germ_level = 0
return 0
var/antibiotics = owner.reagents.get_reagent_amount("spaceacillin")
if((status & ORGAN_DEAD) && antibiotics < 30) //Sepsis from 'dead' organs
var/sepsis_severity = 1 + round((germ_level - INFECTION_LEVEL_THREE)/200,0.25) //1 Tox plus a little based on germ level
owner.adjustToxLoss(sepsis_severity)
if (germ_level > 0 && germ_level < INFECTION_LEVEL_ONE/2 && prob(30))
germ_level--
@@ -155,7 +163,7 @@ var/list/organ_cache = list()
//owner.bodytemperature += between(0, (fever_temperature - T20C)/BODYTEMP_COLD_DIVISOR + 1, fever_temperature - owner.bodytemperature)
var/fever_temperature = owner.species.heat_discomfort_level * 1.10 //Heat discomfort level plus 10%
if(owner.bodytemperature < fever_temperature)
owner.bodytemperature += (fever_temperature - owner.bodytemperature) / 10 //Tries to climb by 10% of the difference between fever and current
owner.bodytemperature += min(0.2,(fever_temperature - owner.bodytemperature) / 10) //Will usually climb by 0.2, else 10% of the difference if less
if (germ_level >= INFECTION_LEVEL_TWO)
. = 2 //Organ qualifies for effect-specific processing
@@ -164,8 +172,6 @@ var/list/organ_cache = list()
if (germ_level >= INFECTION_LEVEL_THREE && antibiotics < 30)
. = 3 //Organ qualifies for effect-specific processing
germ_level++ //Germ_level increases without overdose of antibiotics
var/sepsis_severity = 1 + round((germ_level - INFECTION_LEVEL_THREE)/100,0.25) //1 Tox plus a little for going over INFECTION_LEVEL_THREE
owner.adjustToxLoss(sepsis_severity)
/obj/item/organ/proc/handle_rejection()
// Process unsuitable transplants. TODO: consider some kind of
+3 -1
View File
@@ -27,6 +27,7 @@
vital = 1
var/brain_type = /obj/item/device/mmi
var/obj/item/device/mmi/stored_mmi
robotic = ORGAN_ASSISTED
/obj/item/organ/internal/mmi_holder/Destroy()
if(stored_mmi && (stored_mmi.loc == src))
@@ -84,7 +85,7 @@
/obj/item/organ/internal/mmi_holder/posibrain
name = "positronic brain interface"
brain_type = /obj/item/device/mmi/digital/posibrain
robotic = ORGAN_ROBOT
/obj/item/organ/internal/mmi_holder/posibrain/update_from_mmi()
..()
@@ -94,6 +95,7 @@
/obj/item/organ/internal/mmi_holder/robot
name = "digital brain interface"
brain_type = /obj/item/device/mmi/digital/robot
robotic = ORGAN_ROBOT
/obj/item/organ/internal/mmi_holder/robot/update_from_mmi()
..()