/obj/item/bodybag name = "body bag" desc = "A folded bag designed for the storage and transportation of cadavers." icon = 'icons/obj/bodybag.dmi' icon_state = "bodybag_folded" var/unfoldedbag_path = /obj/structure/closet/body_bag w_class = WEIGHT_CLASS_SMALL /obj/item/bodybag/attack_self(mob/user) deploy_bodybag(user, user.loc) /obj/item/bodybag/afterattack(atom/target, mob/user, proximity) . = ..() if(proximity) if(isopenturf(target)) deploy_bodybag(user, target) /obj/item/bodybag/proc/deploy_bodybag(mob/user, atom/location) var/obj/structure/closet/body_bag/R = new unfoldedbag_path(location) R.open(user) R.add_fingerprint(user) qdel(src) /obj/item/bodybag/suicide_act(mob/user) if(isopenturf(user.loc)) user.visible_message("[user] is crawling into [src]! It looks like [user.p_theyre()] trying to commit suicide!") var/obj/structure/closet/body_bag/R = new unfoldedbag_path(user.loc) R.add_fingerprint(user) qdel(src) user.forceMove(R) playsound(src, 'sound/items/zip.ogg', 15, 1, -3) return (OXYLOSS) ..() // Bluespace bodybag /obj/item/bodybag/bluespace name = "bluespace body bag" desc = "A folded bluespace body bag designed for the storage and transportation of cadavers." icon = 'icons/obj/bodybag.dmi' icon_state = "bluebodybag_folded" unfoldedbag_path = /obj/structure/closet/body_bag/bluespace w_class = WEIGHT_CLASS_SMALL item_flags = NO_MAT_REDEMPTION /obj/item/bodybag/bluespace/examine(mob/user) . = ..() if(contents.len) var/s = contents.len == 1 ? "" : "s" . += "You can make out the shape[s] of [contents.len] object[s] through the fabric." /obj/item/bodybag/bluespace/Destroy() for(var/atom/movable/A in contents) A.forceMove(get_turf(src)) if(isliving(A)) to_chat(A, "You suddenly feel the space around you torn apart! You're free!") return ..() /obj/item/bodybag/bluespace/deploy_bodybag(mob/user, atom/location) var/obj/structure/closet/body_bag/R = new unfoldedbag_path(location) for(var/atom/movable/A in contents) A.forceMove(R) if(isliving(A)) to_chat(A, "You suddenly feel air around you! You're free!") R.open(user) R.add_fingerprint(user) qdel(src) /obj/item/bodybag/bluespace/container_resist(mob/living/user) if(user.incapacitated()) to_chat(user, "You can't get out while you're restrained like this!") return user.changeNext_move(CLICK_CD_BREAKOUT) user.last_special = world.time + CLICK_CD_BREAKOUT to_chat(user, "You claw at the fabric of [src], trying to tear it open...") to_chat(loc, "Someone starts trying to break free of [src]!") if(!do_after(user, 200, target = src)) to_chat(loc, "The pressure subsides. It seems that they've stopped resisting...") return loc.visible_message("[user] suddenly appears in front of [loc]!", "[user] breaks free of [src]!") qdel(src)