Adds organ storage containers

This commit is contained in:
CitadelStationBot
2017-04-28 20:56:26 -05:00
parent a39b40d879
commit 402c451cc3
4 changed files with 89 additions and 5 deletions
+54 -1
View File
@@ -97,4 +97,57 @@
/obj/item/weapon/surgical_drapes/attack(mob/living/M, mob/user)
if(!attempt_initiate_surgery(src, M, user))
..()
..()
/obj/item/weapon/organ_storage //allows medical cyborgs to manipulate organs without hands
name = "organ storage bag"
desc = "A container for holding body parts."
icon = 'icons/obj/storage.dmi'
icon_state = "evidenceobj"
/obj/item/weapon/organ_storage/afterattack(obj/item/I, mob/user, proximity)
if(!proximity)
return
if(contents.len)
to_chat(user, "<span class='notice'>[src] already has something inside it.</span>")
return
if(isorgan(I))
var/obj/item/organ/O = I
if(O.status != ORGAN_ORGANIC)
to_chat(user, "<span class='notice'>[src] can only hold organic body parts!</span>")
return
else if(isbodypart(I))
var/obj/item/bodypart/BP = I
if(BP.status != BODYPART_ORGANIC)
to_chat(user, "<span class='notice'>[src] can only hold organic body parts!</span>")
return
else
return
user.visible_message("[user] puts [I] into [src].", "<span class='notice'>You put [I] inside [src].</span>")
icon_state = "evidence"
var/xx = I.pixel_x
var/yy = I.pixel_y
I.pixel_x = 0
I.pixel_y = 0
var/image/img = image("icon"=I, "layer"=FLOAT_LAYER)
img.plane = FLOAT_PLANE
I.pixel_x = xx
I.pixel_y = yy
add_overlay(img)
add_overlay("evidence")
desc = "An organ storage container holding [I]."
I.loc = src
w_class = I.w_class
/obj/item/weapon/organ_storage/attack_self(mob/user)
if(contents.len)
var/obj/item/I = contents[1]
user.visible_message("[user] dumps [I] from [src].", "<span class='notice'>You dump [I] from [src].</span>")
cut_overlays()
I.forceMove(get_turf(src))
icon_state = "evidenceobj"
desc = "A container for holding body parts."
else
to_chat(user, "[src] is empty.")
return