Having a vital internal organ die now kills you

Internal organs now die once they hit max_health.
Also adjusts final brain damage effect.

Conflicts:
	code/modules/organs/organ.dm
This commit is contained in:
mwerezak
2015-05-30 09:24:27 -04:00
parent 783b5aecc9
commit 1c4239190d
3 changed files with 25 additions and 11 deletions

View File

@@ -65,22 +65,27 @@ var/list/organ_cache = list()
processing_objects -= src
if(dead_icon)
icon_state = dead_icon
if(owner && vital)
owner.death()
/obj/item/organ/process()
if(loc != owner)
owner = null
//dead already, no need for more processing
if(status & ORGAN_DEAD)
return
// Don't process if we're in a freezer, an MMI or a stasis bag.or a freezer or something I dunno
if(istype(loc,/obj/item/device/mmi))
return
if(istype(loc,/obj/structure/closet/body_bag/cryobag) || istype(loc,/obj/structure/closet/crate/freezer) || istype(loc,/obj/item/weapon/storage/box/freezer))
return
//Process infections
if (robotic >= 2 || (owner && owner.species && (owner.species.flags & IS_PLANT)))
if ((status & ORGAN_ROBOT) || (owner && owner.species && (owner.species.flags & IS_PLANT)))
germ_level = 0
return
if(loc != owner)
owner = null
if(!owner)
var/datum/reagent/blood/B = locate(/datum/reagent/blood) in reagents.reagent_list
if(B && prob(40))
@@ -98,6 +103,10 @@ var/list/organ_cache = list()
handle_rejection()
handle_germ_effects()
//check if we've hit max_damage
if(damage >= max_damage)
die()
/obj/item/organ/examine(mob/user)
..(user)
if(status & ORGAN_DEAD)