mirror of
https://github.com/Aurorastation/Aurora.3.git
synced 2026-01-23 07:42:16 +00:00
Merges the use of the is_small and mob_size into one. Changes the species size handling to set the mob size instead of being yet another separate var to check.
136 lines
4.0 KiB
Plaintext
136 lines
4.0 KiB
Plaintext
//Also contains /obj/structure/closet/body_bag because I doubt anyone would think to look for bodybags in /object/structures
|
|
|
|
/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"
|
|
w_class = 2.0
|
|
|
|
attack_self(mob/user)
|
|
var/obj/structure/closet/body_bag/R = new /obj/structure/closet/body_bag(user.loc)
|
|
R.add_fingerprint(user)
|
|
qdel(src)
|
|
|
|
|
|
/obj/item/weapon/storage/box/bodybags
|
|
name = "body bags"
|
|
desc = "This box contains body bags."
|
|
icon_state = "bodybags"
|
|
New()
|
|
..()
|
|
new /obj/item/bodybag(src)
|
|
new /obj/item/bodybag(src)
|
|
new /obj/item/bodybag(src)
|
|
new /obj/item/bodybag(src)
|
|
new /obj/item/bodybag(src)
|
|
new /obj/item/bodybag(src)
|
|
new /obj/item/bodybag(src)
|
|
|
|
|
|
/obj/structure/closet/body_bag
|
|
name = "body bag"
|
|
desc = "A plastic bag designed for the storage and transportation of cadavers."
|
|
icon = 'icons/obj/bodybag.dmi'
|
|
icon_state = "bodybag_closed"
|
|
icon_closed = "bodybag_closed"
|
|
icon_opened = "bodybag_open"
|
|
open_sound = 'sound/items/zip.ogg'
|
|
close_sound = 'sound/items/zip.ogg'
|
|
var/item_path = /obj/item/bodybag
|
|
density = 0
|
|
storage_capacity = (MOB_MEDIUM * 2) - 1
|
|
var/contains_body = 0
|
|
|
|
/obj/structure/closet/body_bag/attackby(W as obj, mob/user as mob)
|
|
if (istype(W, /obj/item/weapon/pen))
|
|
var/t = input(user, "What would you like the label to be?", text("[]", src.name), null) as text
|
|
if (user.get_active_hand() != W)
|
|
return
|
|
if (!in_range(src, user) && src.loc != user)
|
|
return
|
|
t = sanitizeSafe(t, MAX_NAME_LEN)
|
|
if (t)
|
|
src.name = "body bag - "
|
|
src.name += t
|
|
src.overlays += image(src.icon, "bodybag_label")
|
|
else
|
|
src.name = "body bag"
|
|
//..() //Doesn't need to run the parent. Since when can fucking bodybags be welded shut? -Agouri
|
|
return
|
|
else if(istype(W, /obj/item/weapon/wirecutters))
|
|
user << "You cut the tag off the bodybag"
|
|
src.name = "body bag"
|
|
src.overlays.Cut()
|
|
return
|
|
|
|
/obj/structure/closet/body_bag/store_mobs(var/stored_units)
|
|
contains_body = ..()
|
|
return contains_body
|
|
|
|
/obj/structure/closet/body_bag/close()
|
|
if(..())
|
|
density = 0
|
|
return 1
|
|
return 0
|
|
|
|
/obj/structure/closet/body_bag/MouseDrop(over_object, src_location, over_location)
|
|
..()
|
|
if((over_object == usr && (in_range(src, usr) || usr.contents.Find(src))))
|
|
if(!ishuman(usr)) return
|
|
if(opened) return 0
|
|
if(contents.len) return 0
|
|
visible_message("[usr] folds up the [src.name]")
|
|
new item_path(get_turf(src))
|
|
spawn(0)
|
|
qdel(src)
|
|
return
|
|
|
|
/obj/structure/closet/body_bag/update_icon()
|
|
if(opened)
|
|
icon_state = icon_opened
|
|
else
|
|
if(contains_body > 0)
|
|
icon_state = "bodybag_closed1"
|
|
else
|
|
icon_state = icon_closed
|
|
|
|
|
|
/obj/item/bodybag/cryobag
|
|
name = "stasis bag"
|
|
desc = "A folded, non-reusable bag designed to prevent additional damage to an occupant at the cost of genetic damage."
|
|
icon = 'icons/obj/cryobag.dmi'
|
|
icon_state = "bodybag_folded"
|
|
|
|
attack_self(mob/user)
|
|
var/obj/structure/closet/body_bag/cryobag/R = new /obj/structure/closet/body_bag/cryobag(user.loc)
|
|
R.add_fingerprint(user)
|
|
qdel(src)
|
|
|
|
|
|
|
|
/obj/structure/closet/body_bag/cryobag
|
|
name = "stasis bag"
|
|
desc = "A non-reusable plastic bag designed to prevent additional damage to an occupant at the cost of genetic damage."
|
|
icon = 'icons/obj/cryobag.dmi'
|
|
item_path = /obj/item/bodybag/cryobag
|
|
store_misc = 0
|
|
store_items = 0
|
|
var/used = 0
|
|
|
|
/obj/structure/closet/body_bag/cryobag/open()
|
|
. = ..()
|
|
if(used)
|
|
var/obj/item/O = new/obj/item(src.loc)
|
|
O.name = "used stasis bag"
|
|
O.icon = src.icon
|
|
O.icon_state = "bodybag_used"
|
|
O.desc = "Pretty useless now.."
|
|
qdel(src)
|
|
|
|
/obj/structure/closet/body_bag/cryobag/MouseDrop(over_object, src_location, over_location)
|
|
if((over_object == usr && (in_range(src, usr) || usr.contents.Find(src))))
|
|
if(!ishuman(usr)) return
|
|
usr << "<span class='warning'>You can't fold that up anymore..</span>"
|
|
..()
|