mirror of
https://github.com/CHOMPstation/CHOMPstation.git
synced 2026-08-23 03:56:27 +01:00
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:
@@ -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
|
||||
|
||||
@@ -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()
|
||||
..()
|
||||
|
||||
Reference in New Issue
Block a user