Merge pull request #3896 from Fox-McCloud/heart

Heart Tweaks
This commit is contained in:
TheDZD
2016-03-16 21:45:59 -04:00
3 changed files with 55 additions and 16 deletions
+44 -11
View File
@@ -122,31 +122,64 @@
// Brain is defined in brain_item.dm.
/obj/item/organ/internal/heart
name = "heart"
icon_state = "heart-on"
organ_tag = "heart"
parent_organ = "chest"
slot = "heart"
origin_tech = "biotech=3"
var/beating = 1
dead_icon = "heart-off"
vital = 1
var/beating = 0
var/icon_base = "heart"
/obj/item/organ/internal/heart/update_icon()
if(beating)
icon_state = "heart-on"
icon_state = "[icon_base]-on"
else
icon_state = "heart-off"
/obj/item/organ/internal/heart/insert(mob/living/carbon/M, special = 0)
..()
beating = 1
update_icon()
icon_state = "[icon_base]-off"
/obj/item/organ/internal/heart/remove(mob/living/carbon/M, special = 0)
..()
if(ishuman(M))
var/mob/living/carbon/human/H = M
if(H.stat == DEAD || H.heart_attack)
Stop()
return
if(!special)
H.heart_attack = 1
spawn(120)
beating = 0
update_icon()
if(!owner)
Stop()
/obj/item/organ/internal/heart/attack_self(mob/user)
..()
if(!beating)
Restart()
spawn(80)
if(!owner)
Stop()
/obj/item/organ/internal/heart/insert(mob/living/carbon/M, special = 0)
..()
if(ishuman(M) && beating)
var/mob/living/carbon/human/H = M
if(H.heart_attack)
H.heart_attack = 0
return
/obj/item/organ/internal/heart/proc/Stop()
beating = 0
update_icon()
return 1
/obj/item/organ/internal/heart/proc/Restart()
beating = 1
update_icon()
return 1
/obj/item/organ/internal/heart/prepare_eat()
var/obj/S = ..()