Port Bay's lockers, crates, largecrates, wall lockers
@@ -6,15 +6,6 @@
|
||||
// atmospherics devices.
|
||||
//--------------------------------------------
|
||||
|
||||
#define PIPE_COLOR_GREY "#ffffff" //yes white is grey
|
||||
#define PIPE_COLOR_RED "#ff0000"
|
||||
#define PIPE_COLOR_BLUE "#0000ff"
|
||||
#define PIPE_COLOR_CYAN "#00ffff"
|
||||
#define PIPE_COLOR_GREEN "#00ff00"
|
||||
#define PIPE_COLOR_YELLOW "#ffcc00"
|
||||
#define PIPE_COLOR_BLACK "#444444"
|
||||
#define PIPE_COLOR_PURPLE "#5c1ec0"
|
||||
|
||||
var/global/list/pipe_colors = list("grey" = PIPE_COLOR_GREY, "red" = PIPE_COLOR_RED, "blue" = PIPE_COLOR_BLUE, "cyan" = PIPE_COLOR_CYAN, "green" = PIPE_COLOR_GREEN, "yellow" = PIPE_COLOR_YELLOW, "black" = PIPE_COLOR_BLACK, "purple" = PIPE_COLOR_PURPLE)
|
||||
|
||||
/proc/pipe_color_lookup(var/color)
|
||||
|
||||
@@ -1,3 +1,141 @@
|
||||
// BYOND lower-cases color values, and thus we do so as well to ensure atom.color == COLOR_X will work correctly
|
||||
#define COLOR_BLACK "#000000"
|
||||
#define COLOR_NAVY "#000080"
|
||||
#define COLOR_NAVY_BLUE "#000080"
|
||||
#define COLOR_GREEN "#008000"
|
||||
#define COLOR_DARK_GRAY "#404040"
|
||||
#define COLOR_MAROON "#800000"
|
||||
#define COLOR_PURPLE "#800080"
|
||||
#define COLOR_VIOLET "#9933ff"
|
||||
#define COLOR_OLIVE "#808000"
|
||||
#define COLOR_BROWN_ORANGE "#824b28"
|
||||
#define COLOR_DARK_ORANGE "#b95a00"
|
||||
#define COLOR_GRAY40 "#666666"
|
||||
#define COLOR_GRAY20 "#333333"
|
||||
#define COLOR_GRAY15 "#151515"
|
||||
#define COLOR_SEDONA "#cc6600"
|
||||
#define COLOR_DARK_BROWN "#917448"
|
||||
#define COLOR_BLUE "#0000ff"
|
||||
#define COLOR_DEEP_SKY_BLUE "#00e1ff"
|
||||
#define COLOR_LIME "#00ff00"
|
||||
#define COLOR_CYAN "#00ffff"
|
||||
#define COLOR_TEAL "#33cccc"
|
||||
#define COLOR_RED "#ff0000"
|
||||
#define COLOR_PINK "#ff00ff"
|
||||
#define COLOR_PALE_PINK "#bf89ba"
|
||||
#define COLOR_ORANGE "#ff9900"
|
||||
#define COLOR_YELLOW "#ffff00"
|
||||
#define COLOR_YELLOW_GRAY "#c9a344"
|
||||
#define COLOR_PALE_YELLOW "#c1bb7a"
|
||||
#define COLOR_WARM_YELLOW "#b3863c"
|
||||
#define COLOR_GRAY "#808080"
|
||||
#define COLOR_RED_GRAY "#aa5f61"
|
||||
#define COLOR_BROWN "#b19664"
|
||||
#define COLOR_GREEN_GRAY "#8daf6a"
|
||||
#define COLOR_DARK_GREEN_GRAY "#54654c"
|
||||
#define COLOR_BLUE_GRAY "#6a97b0"
|
||||
#define COLOR_DARK_BLUE_GRAY "#3e4855"
|
||||
#define COLOR_SURGERY_BLUE "#e0f2f6"
|
||||
#define COLOR_SUN "#ec8b2f"
|
||||
#define COLOR_PURPLE_GRAY "#a2819e"
|
||||
#define COLOR_BLUE_LIGHT "#33ccff"
|
||||
#define COLOR_RED_LIGHT "#ff3333"
|
||||
#define COLOR_BEIGE "#ceb689"
|
||||
#define COLOR_BABY_BLUE "#89cff0"
|
||||
#define COLOR_PALE_GREEN_GRAY "#aed18b"
|
||||
#define COLOR_PALE_RED_GRAY "#cc9090"
|
||||
#define COLOR_PALE_PURPLE_GRAY "#bda2ba"
|
||||
#define COLOR_PALE_BLUE_GRAY "#8bbbd5"
|
||||
#define COLOR_LUMINOL "#66ffff"
|
||||
#define COLOR_SILVER "#c0c0c0"
|
||||
#define COLOR_GRAY80 "#cccccc"
|
||||
#define COLOR_OFF_WHITE "#eeeeee"
|
||||
#define COLOR_WHITE "#ffffff"
|
||||
#define COLOR_GOLD "#ffcc33"
|
||||
#define COLOR_CLOSET_GOLD "#6d6133"
|
||||
#define COLOR_NT_RED "#9d2300"
|
||||
#define COLOR_BOTTLE_GREEN "#1f6b4f"
|
||||
#define COLOR_PALE_BTL_GREEN "#57967f"
|
||||
#define COLOR_GUNMETAL "#545c68"
|
||||
#define COLOR_WALL_GUNMETAL "#353a42"
|
||||
#define COLOR_STEEL "#a8b0b2"
|
||||
#define COLOR_MUZZLE_FLASH "#ffffb2"
|
||||
#define COLOR_CHESTNUT "#996633"
|
||||
#define COLOR_BEASTY_BROWN "#663300"
|
||||
#define COLOR_WHEAT "#ffff99"
|
||||
#define COLOR_CYAN_BLUE "#3366cc"
|
||||
#define COLOR_LIGHT_CYAN "#66ccff"
|
||||
#define COLOR_PAKISTAN_GREEN "#006600"
|
||||
#define COLOR_HULL "#436b8e"
|
||||
#define COLOR_AMBER "#ffbf00"
|
||||
#define COLOR_COMMAND_BLUE "#46698c"
|
||||
#define COLOR_SKY_BLUE "#5ca1cc"
|
||||
#define COLOR_PALE_ORANGE "#b88a3b"
|
||||
#define COLOR_CIVIE_GREEN "#b7f27d"
|
||||
#define COLOR_TITANIUM "#d1e6e3"
|
||||
#define COLOR_DARK_GUNMETAL "#4c535b"
|
||||
#define COLOR_BRONZE "#8c7853"
|
||||
#define COLOR_BRASS "#b99d71"
|
||||
#define COLOR_INDIGO "#4b0082"
|
||||
#define COLOR_ALUMINIUM "#bbbbbb"
|
||||
#define COLOR_CRYSTAL "#00c8a5"
|
||||
#define COLOR_ASTEROID_ROCK "#735555"
|
||||
#define COLOR_NULLGLASS "#ff6088"
|
||||
#define COLOR_DIAMOND "#d8d4ea"
|
||||
|
||||
#define PIPE_COLOR_GREY "#808080"
|
||||
#define PIPE_COLOR_RED "#ff0000"
|
||||
#define PIPE_COLOR_BLUE "#0000ff"
|
||||
#define PIPE_COLOR_CYAN "#00ffff"
|
||||
#define PIPE_COLOR_GREEN "#00ff00"
|
||||
#define PIPE_COLOR_YELLOW "#ffcc00"
|
||||
#define PIPE_COLOR_BLACK "#444444"
|
||||
#define PIPE_COLOR_ORANGE "#b95a00"
|
||||
#define PIPE_COLOR_WHITE "#ffffff"
|
||||
#define PIPE_COLOR_PURPLE "#5c1ec0"
|
||||
|
||||
#define COMMS_COLOR_DEFAULT "#ff00ff"
|
||||
#define COMMS_COLOR_ENTERTAIN "#666666"
|
||||
#define COMMS_COLOR_AI "#ff00ff"
|
||||
#define COMMS_COLOR_COMMON "#408010"
|
||||
#define COMMS_COLOR_SERVICE "#709b00"
|
||||
#define COMMS_COLOR_SUPPLY "#7f6539"
|
||||
#define COMMS_COLOR_SCIENCE "#993399"
|
||||
#define COMMS_COLOR_MEDICAL "#009190"
|
||||
#define COMMS_COLOR_MEDICAL_I "#509190"
|
||||
#define COMMS_COLOR_EXPLORER "#929820"
|
||||
#define COMMS_COLOR_ENGINEER "#a66300"
|
||||
#define COMMS_COLOR_SECURITY "#930000"
|
||||
#define COMMS_COLOR_SECURITY_I "#935050"
|
||||
#define COMMS_COLOR_COMMAND "#204090"
|
||||
#define COMMS_COLOR_CENTCOMM "#5c5c7c"
|
||||
#define COMMS_COLOR_SYNDICATE "#6d3f40"
|
||||
#define COMMS_COLOR_SKRELL "#7331c4"
|
||||
|
||||
#define WOOD_COLOR_GENERIC "#d5a66e"
|
||||
#define WOOD_COLOR_RICH "#792f27"
|
||||
#define WOOD_COLOR_PALE "#d2bc9d"
|
||||
#define WOOD_COLOR_PALE2 "#e6d2ba"
|
||||
#define WOOD_COLOR_BLACK "#332521"
|
||||
#define WOOD_COLOR_CHOCOLATE "#543c30"
|
||||
#define WOOD_COLOR_YELLOW "#e3994e"
|
||||
|
||||
#define GLASS_COLOR "#74c1ee"
|
||||
#define GLASS_COLOR_PHORON "#7c3a9a"
|
||||
#define GLASS_COLOR_TINTED "#222222"
|
||||
#define GLASS_COLOR_FROSTED "#ffffff"
|
||||
|
||||
#define COLOR_BLOOD_HUMAN "#a10808"
|
||||
|
||||
//Colors defines used by e-sword lighting
|
||||
#define COLOR_SABER_BLUE "#40ceff"
|
||||
#define COLOR_SABER_RED "#ff0000" //In case someone wants to tweak COLOR_RED, since COLOR_GREEN is not #00ff00
|
||||
#define COLOR_SABER_GREEN "#00ff00"
|
||||
#define COLOR_SABER_PURPLE "#6800f4"
|
||||
#define COLOR_SABER_SKRELL "#6600cc"
|
||||
#define COLOR_SABER_AXE "#00ccff"
|
||||
#define COLOR_SABER_CUTLASS "#ff0033"
|
||||
|
||||
//Color defines used by the assembly detailer.
|
||||
#define COLOR_ASSEMBLY_BLACK "#545454"
|
||||
#define COLOR_ASSEMBLY_BGRAY "#9497AB"
|
||||
|
||||
@@ -44,40 +44,6 @@
|
||||
#define LIFE_HUD 10 // STATUS_HUD that only reports dead or alive
|
||||
#define TOTAL_HUDS 10 // Total number of HUDs. Like body layers, and other things, it comes up sometimes.
|
||||
|
||||
//some colors
|
||||
#define COLOR_WHITE "#FFFFFF"
|
||||
#define COLOR_SILVER "#C0C0C0"
|
||||
#define COLOR_GRAY "#808080"
|
||||
#define COLOR_BLACK "#000000"
|
||||
#define COLOR_RED "#FF0000"
|
||||
#define COLOR_MAROON "#800000"
|
||||
#define COLOR_YELLOW "#FFFF00"
|
||||
#define COLOR_OLIVE "#808000"
|
||||
#define COLOR_LIME "#00FF00"
|
||||
#define COLOR_GREEN "#008000"
|
||||
#define COLOR_CYAN "#00FFFF"
|
||||
#define COLOR_TEAL "#008080"
|
||||
#define COLOR_BLUE "#0000FF"
|
||||
#define COLOR_NAVY "#000080"
|
||||
#define COLOR_PINK "#FF00FF"
|
||||
#define COLOR_PURPLE "#800080"
|
||||
#define COLOR_ORANGE "#FF9900"
|
||||
#define COLOR_LUMINOL "#66FFFF"
|
||||
#define COLOR_BEIGE "#CEB689"
|
||||
#define COLOR_BLUE_GRAY "#6A97B0"
|
||||
#define COLOR_BROWN "#B19664"
|
||||
#define COLOR_DARK_BROWN "#917448"
|
||||
#define COLOR_DARK_ORANGE "#B95A00"
|
||||
#define COLOR_GREEN_GRAY "#8DAF6A"
|
||||
#define COLOR_RED_GRAY "#AA5F61"
|
||||
#define COLOR_PALE_BLUE_GRAY "#8BBBD5"
|
||||
#define COLOR_PALE_GREEN_GRAY "#AED18B"
|
||||
#define COLOR_PALE_RED_GRAY "#CC9090"
|
||||
#define COLOR_PALE_PURPLE_GRAY "#BDA2BA"
|
||||
#define COLOR_PURPLE_GRAY "#A2819E"
|
||||
#define COLOR_RED_LIGHT "#FF3333"
|
||||
#define COLOR_DEEP_SKY_BLUE "#00e1ff"
|
||||
|
||||
#define CLIENT_FROM_VAR(I) (ismob(I) ? I:client : (isclient(I) ? I : null))
|
||||
|
||||
// Shuttles.
|
||||
|
||||
@@ -25,6 +25,9 @@ var/list/mannequins_
|
||||
// Times that players are allowed to respawn ("ckey" = world.time)
|
||||
GLOBAL_LIST_EMPTY(respawn_timers)
|
||||
|
||||
// Closets have magic appearances
|
||||
GLOBAL_LIST_EMPTY(closet_appearances)
|
||||
|
||||
// Posters
|
||||
var/global/list/poster_designs = list()
|
||||
var/global/list/NT_poster_designs = list()
|
||||
@@ -204,6 +207,12 @@ var/global/list/string_slot_flags = list(
|
||||
var/datum/poster/P = new T
|
||||
NT_poster_designs += P
|
||||
|
||||
//Closet appearances
|
||||
paths = typesof(/decl/closet_appearance)
|
||||
for(var/T in paths)
|
||||
var/decl/closet_appearance/app = new T()
|
||||
GLOB.closet_appearances[T] = app
|
||||
|
||||
// VOREStation Add - Vore Modes!
|
||||
paths = typesof(/datum/digest_mode) - /datum/digest_mode/transform
|
||||
for(var/T in paths)
|
||||
|
||||
@@ -66,7 +66,7 @@
|
||||
contains = list(
|
||||
/obj/item/device/pipe_painter = 2,
|
||||
/obj/item/device/floor_painter = 2,
|
||||
/obj/item/device/closet_painter = 2
|
||||
///obj/item/device/closet_painter = 2
|
||||
)
|
||||
|
||||
/datum/supply_pack/recreation/cheapbait
|
||||
|
||||
@@ -1712,7 +1712,7 @@ NOTE: there are two lists of areas in the end of this file: centcom and station
|
||||
/area/security/brig/prison_break()
|
||||
for(var/obj/structure/closet/secure_closet/brig/temp_closet in src)
|
||||
temp_closet.locked = 0
|
||||
temp_closet.icon_state = temp_closet.icon_closed
|
||||
temp_closet.icon_state = "closed_unlocked"
|
||||
for(var/obj/machinery/door_timer/temp_timer in src)
|
||||
temp_timer.releasetime = 1
|
||||
..()
|
||||
@@ -1724,7 +1724,7 @@ NOTE: there are two lists of areas in the end of this file: centcom and station
|
||||
/area/security/prison/prison_break()
|
||||
for(var/obj/structure/closet/secure_closet/brig/temp_closet in src)
|
||||
temp_closet.locked = 0
|
||||
temp_closet.icon_state = temp_closet.icon_closed
|
||||
temp_closet.icon_state = "closed_unlocked"
|
||||
for(var/obj/machinery/door_timer/temp_timer in src)
|
||||
temp_timer.releasetime = 1
|
||||
..()
|
||||
|
||||
@@ -187,7 +187,7 @@ var/hadevent = 0
|
||||
|
||||
for (var/obj/structure/closet/secure_closet/brig/temp_closet in A)
|
||||
temp_closet.locked = 0
|
||||
temp_closet.icon_state = temp_closet.icon_closed
|
||||
temp_closet.icon_state = "closed_unlocked"
|
||||
|
||||
for (var/obj/machinery/door/airlock/security/temp_airlock in A)
|
||||
spawn(0) temp_airlock.prison_open()
|
||||
|
||||
@@ -114,7 +114,7 @@
|
||||
if(C.broken) continue
|
||||
if(C.opened && !C.close()) continue
|
||||
C.locked = 1
|
||||
C.icon_state = C.icon_locked
|
||||
C.icon_state = "closed_locked"
|
||||
return 1
|
||||
|
||||
|
||||
@@ -135,7 +135,7 @@
|
||||
if(C.broken) continue
|
||||
if(C.opened) continue
|
||||
C.locked = 0
|
||||
C.icon_state = C.icon_closed
|
||||
C.icon_state = "closed_unlocked"
|
||||
|
||||
return 1
|
||||
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
/obj/item/bodybag
|
||||
name = "body bag"
|
||||
desc = "A folded bag designed for the storage and transportation of cadavers."
|
||||
icon = 'icons/obj/bodybag.dmi'
|
||||
icon = 'icons/obj/closets/bodybag.dmi'
|
||||
icon_state = "bodybag_folded"
|
||||
w_class = ITEMSIZE_SMALL
|
||||
|
||||
@@ -31,10 +31,8 @@
|
||||
/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"
|
||||
icon = 'icons/obj/closets/bodybag.dmi'
|
||||
closet_appearance = null
|
||||
open_sound = 'sound/items/zip.ogg'
|
||||
close_sound = 'sound/items/zip.ogg'
|
||||
var/item_path = /obj/item/bodybag
|
||||
@@ -105,19 +103,22 @@
|
||||
|
||||
/obj/structure/closet/body_bag/update_icon()
|
||||
if(opened)
|
||||
icon_state = icon_opened
|
||||
icon_state = "open"
|
||||
else
|
||||
if(contains_body > 0)
|
||||
icon_state = "bodybag_closed1"
|
||||
else
|
||||
icon_state = icon_closed
|
||||
icon_state = "closed_unlocked"
|
||||
|
||||
src.overlays.Cut()
|
||||
/* Ours don't have toetags
|
||||
if(has_label)
|
||||
src.overlays += image(src.icon, "bodybag_label")
|
||||
*/
|
||||
|
||||
|
||||
/obj/item/bodybag/cryobag
|
||||
name = "stasis bag"
|
||||
desc = "A non-reusable plastic bag designed to slow down bodily functions such as circulation and breathing, \
|
||||
especially useful if short on time or in a hostile enviroment."
|
||||
icon = 'icons/obj/cryobag.dmi'
|
||||
icon = 'icons/obj/closets/cryobag.dmi'
|
||||
icon_state = "bodybag_folded"
|
||||
item_state = "bodybag_cryo_folded"
|
||||
origin_tech = list(TECH_BIO = 4)
|
||||
@@ -135,7 +136,7 @@
|
||||
name = "stasis bag"
|
||||
desc = "A non-reusable plastic bag designed to slow down bodily functions such as circulation and breathing, \
|
||||
especially useful if short on time or in a hostile enviroment."
|
||||
icon = 'icons/obj/cryobag.dmi'
|
||||
icon = 'icons/obj/closets/cryobag.dmi'
|
||||
item_path = /obj/item/bodybag/cryobag
|
||||
store_misc = 0
|
||||
store_items = 0
|
||||
@@ -166,13 +167,17 @@
|
||||
/obj/structure/closet/body_bag/cryobag/open()
|
||||
. = ..()
|
||||
if(used)
|
||||
var/obj/item/O = new/obj/item(src.loc)
|
||||
O.name = "used [name]"
|
||||
O.icon = src.icon
|
||||
O.icon_state = "bodybag_used"
|
||||
O.desc = "Pretty useless now..."
|
||||
new /obj/item/usedcryobag(loc)
|
||||
qdel(src)
|
||||
|
||||
/obj/structure/closet/body_bag/cryobag/update_icon()
|
||||
..()
|
||||
overlays.Cut()
|
||||
var/image/I = image(icon, "indicator[opened]")
|
||||
I.appearance_flags = RESET_COLOR
|
||||
I.color = COLOR_LIME
|
||||
overlays += I
|
||||
|
||||
/obj/structure/closet/body_bag/cryobag/MouseDrop(over_object, src_location, over_location)
|
||||
. = ..()
|
||||
if(. && syringe)
|
||||
@@ -260,3 +265,9 @@
|
||||
|
||||
else
|
||||
..()
|
||||
|
||||
/obj/item/usedcryobag
|
||||
name = "used stasis bag"
|
||||
desc = "Pretty useless now.."
|
||||
icon_state = "bodybag_used"
|
||||
icon = 'icons/obj/closets/cryobag.dmi'
|
||||
|
||||
@@ -61,10 +61,8 @@
|
||||
/obj/structure/closet/crate/oldreactor
|
||||
name = "fission reactor rack"
|
||||
desc = "Used in older models of nuclear reactors, essentially a cooling rack for high volumes of radioactive material."
|
||||
icon = 'icons/obj/objects.dmi'
|
||||
icon_state = "poireactor"
|
||||
icon_opened = "poireactor_open"
|
||||
icon_closed = "poireactor"
|
||||
icon = 'icons/obj/closets/poireactor.dmi'
|
||||
closet_appearance = null
|
||||
catalogue_data = list(/datum/category_item/catalogue/information/objects/oldreactor)
|
||||
climbable = 0
|
||||
|
||||
|
||||
@@ -1,15 +1,16 @@
|
||||
// Someone should really merge secure closets and crates into this, which Bay has done already.
|
||||
/obj/structure/closet
|
||||
name = "closet"
|
||||
desc = "It's a basic storage unit."
|
||||
icon = 'icons/obj/closet.dmi'
|
||||
icon_state = "closed"
|
||||
icon_state = "closed_unlocked"
|
||||
density = 1
|
||||
w_class = ITEMSIZE_HUGE
|
||||
layer = UNDER_JUNK_LAYER
|
||||
var/icon_closed = "closed"
|
||||
var/icon_opened = "open"
|
||||
|
||||
var/opened = 0
|
||||
var/sealed = 0
|
||||
|
||||
var/seal_tool = /obj/item/weapon/weldingtool //Tool used to seal the closet, defaults to welder
|
||||
var/wall_mounted = 0 //never solid (You can always pass over it)
|
||||
var/health = 100
|
||||
@@ -30,7 +31,9 @@
|
||||
var/store_mobs = 1 //Will the closet store mobs?
|
||||
var/max_closets = 0 //Number of other closets allowed on tile before it won't close.
|
||||
|
||||
var/list/starts_with
|
||||
var/list/starts_with // List of type = count (or just type for 1)
|
||||
|
||||
var/closet_appearance = /decl/closet_appearance // The /decl that defines what decals we end up with, that makes our look unique
|
||||
|
||||
/obj/structure/closet/Initialize()
|
||||
..()
|
||||
@@ -46,22 +49,28 @@
|
||||
if(!opened) // if closed, any item at the crate's loc is put in the contents
|
||||
if(istype(loc, /mob/living)) return //VOREStation Edit - No collecting mob organs if spawned inside mob
|
||||
var/obj/item/I
|
||||
for(I in src.loc)
|
||||
for(I in loc)
|
||||
if(I.density || I.anchored || I == src) continue
|
||||
I.forceMove(src)
|
||||
// adjust locker size to hold all items with 5 units of free store room
|
||||
var/content_size = 0
|
||||
for(I in src.contents)
|
||||
for(I in contents)
|
||||
content_size += CEILING(I.w_class/2, 1)
|
||||
if(content_size > storage_capacity-5)
|
||||
storage_capacity = content_size + 5
|
||||
|
||||
if(ispath(closet_appearance))
|
||||
var/decl/closet_appearance/app = GLOB.closet_appearances[closet_appearance]
|
||||
if(app)
|
||||
icon = app.icon
|
||||
color = null
|
||||
update_icon()
|
||||
|
||||
/obj/structure/closet/examine(mob/user)
|
||||
. = ..()
|
||||
if(Adjacent(user) || isobserver(user))
|
||||
var/content_size = 0
|
||||
for(var/obj/item/I in src.contents)
|
||||
for(var/obj/item/I in contents)
|
||||
if(!I.anchored)
|
||||
content_size += CEILING(I.w_class/2, 1)
|
||||
if(!content_size)
|
||||
@@ -75,7 +84,7 @@
|
||||
else
|
||||
. += "It is full."
|
||||
|
||||
if(!src.opened && isobserver(user))
|
||||
if(!opened && isobserver(user))
|
||||
. += "It contains: [counting_english_list(contents)]"
|
||||
|
||||
/obj/structure/closet/CanPass(atom/movable/mover, turf/target)
|
||||
@@ -84,7 +93,7 @@
|
||||
return ..()
|
||||
|
||||
/obj/structure/closet/proc/can_open()
|
||||
if(src.sealed)
|
||||
if(sealed)
|
||||
return 0
|
||||
return 1
|
||||
|
||||
@@ -101,37 +110,37 @@
|
||||
/obj/structure/closet/proc/dump_contents()
|
||||
//Cham Projector Exception
|
||||
for(var/obj/effect/dummy/chameleon/AD in src)
|
||||
AD.forceMove(src.loc)
|
||||
AD.forceMove(loc)
|
||||
|
||||
for(var/obj/I in src)
|
||||
I.forceMove(src.loc)
|
||||
I.forceMove(loc)
|
||||
|
||||
for(var/mob/M in src)
|
||||
M.forceMove(src.loc)
|
||||
M.forceMove(loc)
|
||||
if(M.client)
|
||||
M.client.eye = M.client.mob
|
||||
M.client.perspective = MOB_PERSPECTIVE
|
||||
|
||||
/obj/structure/closet/proc/open()
|
||||
if(src.opened)
|
||||
if(opened)
|
||||
return 0
|
||||
|
||||
if(!src.can_open())
|
||||
if(!can_open())
|
||||
return 0
|
||||
|
||||
src.dump_contents()
|
||||
dump_contents()
|
||||
|
||||
src.icon_state = src.icon_opened
|
||||
src.opened = 1
|
||||
opened = 1
|
||||
playsound(src, open_sound, 15, 1, -3)
|
||||
if(initial(density))
|
||||
density = !density
|
||||
update_icon()
|
||||
return 1
|
||||
|
||||
/obj/structure/closet/proc/close()
|
||||
if(!src.opened)
|
||||
if(!opened)
|
||||
return 0
|
||||
if(!src.can_close())
|
||||
if(!can_close())
|
||||
return 0
|
||||
|
||||
var/stored_units = 0
|
||||
@@ -145,18 +154,18 @@
|
||||
if(max_closets)
|
||||
stored_units += store_closets(stored_units)
|
||||
|
||||
src.icon_state = src.icon_closed
|
||||
src.opened = 0
|
||||
opened = 0
|
||||
|
||||
playsound(src, close_sound, 15, 1, -3)
|
||||
if(initial(density))
|
||||
density = !density
|
||||
update_icon()
|
||||
return 1
|
||||
|
||||
//Cham Projector Exception
|
||||
/obj/structure/closet/proc/store_misc(var/stored_units)
|
||||
var/added_units = 0
|
||||
for(var/obj/effect/dummy/chameleon/AD in src.loc)
|
||||
for(var/obj/effect/dummy/chameleon/AD in loc)
|
||||
if((stored_units + added_units) > storage_capacity)
|
||||
break
|
||||
AD.forceMove(src)
|
||||
@@ -165,7 +174,7 @@
|
||||
|
||||
/obj/structure/closet/proc/store_items(var/stored_units)
|
||||
var/added_units = 0
|
||||
for(var/obj/item/I in src.loc)
|
||||
for(var/obj/item/I in loc)
|
||||
var/item_size = CEILING(I.w_class / 2, 1)
|
||||
if(stored_units + added_units + item_size > storage_capacity)
|
||||
continue
|
||||
@@ -176,7 +185,7 @@
|
||||
|
||||
/obj/structure/closet/proc/store_mobs(var/stored_units)
|
||||
var/added_units = 0
|
||||
for(var/mob/living/M in src.loc)
|
||||
for(var/mob/living/M in loc)
|
||||
if(M.buckled || M.pinned.len)
|
||||
continue
|
||||
if(stored_units + added_units + M.mob_size > storage_capacity)
|
||||
@@ -190,7 +199,7 @@
|
||||
|
||||
/obj/structure/closet/proc/store_closets(var/stored_units)
|
||||
var/added_units = 0
|
||||
for(var/obj/structure/closet/C in src.loc)
|
||||
for(var/obj/structure/closet/C in loc)
|
||||
if(C == src) //Don't store ourself
|
||||
continue
|
||||
if(C.anchored) //Don't worry about anchored things on the same tile
|
||||
@@ -205,7 +214,7 @@
|
||||
|
||||
|
||||
/obj/structure/closet/proc/toggle(mob/user as mob)
|
||||
if(!(src.opened ? src.close() : src.open()))
|
||||
if(!(opened ? close() : open()))
|
||||
to_chat(user, "<span class='notice'>It won't budge!</span>")
|
||||
return
|
||||
update_icon()
|
||||
@@ -215,19 +224,19 @@
|
||||
switch(severity)
|
||||
if(1)
|
||||
for(var/atom/movable/A as mob|obj in src)//pulls everything out of the locker and hits it with an explosion
|
||||
A.forceMove(src.loc)
|
||||
A.forceMove(loc)
|
||||
A.ex_act(severity + 1)
|
||||
qdel(src)
|
||||
if(2)
|
||||
if(prob(50))
|
||||
for (var/atom/movable/A as mob|obj in src)
|
||||
A.forceMove(src.loc)
|
||||
A.forceMove(loc)
|
||||
A.ex_act(severity + 1)
|
||||
qdel(src)
|
||||
if(3)
|
||||
if(prob(5))
|
||||
for(var/atom/movable/A as mob|obj in src)
|
||||
A.forceMove(src.loc)
|
||||
A.forceMove(loc)
|
||||
qdel(src)
|
||||
|
||||
/obj/structure/closet/blob_act()
|
||||
@@ -237,7 +246,7 @@
|
||||
health -= damage
|
||||
if(health <= 0)
|
||||
for(var/atom/movable/A in src)
|
||||
A.forceMove(src.loc)
|
||||
A.forceMove(loc)
|
||||
qdel(src)
|
||||
|
||||
/obj/structure/closet/bullet_act(var/obj/item/projectile/Proj)
|
||||
@@ -251,10 +260,10 @@
|
||||
return
|
||||
|
||||
/obj/structure/closet/attackby(obj/item/weapon/W as obj, mob/user as mob)
|
||||
if(src.opened)
|
||||
if(opened)
|
||||
if(istype(W, /obj/item/weapon/grab))
|
||||
var/obj/item/weapon/grab/G = W
|
||||
src.MouseDrop_T(G.affecting, user) //act like they were dragged onto the closet
|
||||
MouseDrop_T(G.affecting, user) //act like they were dragged onto the closet
|
||||
return 0
|
||||
if(istype(W,/obj/item/tk_grab))
|
||||
return 0
|
||||
@@ -267,7 +276,7 @@
|
||||
to_chat(user, "<span class='notice'>You need more welding fuel to complete this task.</span>")
|
||||
return
|
||||
playsound(src, WT.usesound, 50)
|
||||
new /obj/item/stack/material/steel(src.loc)
|
||||
new /obj/item/stack/material/steel(loc)
|
||||
for(var/mob/M in viewers(src))
|
||||
M.show_message("<span class='notice'>\The [src] has been cut apart by [user] with \the [WT].</span>", 3, "You hear welding.", 2)
|
||||
qdel(src)
|
||||
@@ -287,7 +296,7 @@
|
||||
return
|
||||
usr.drop_item()
|
||||
if(W)
|
||||
W.forceMove(src.loc)
|
||||
W.forceMove(loc)
|
||||
else if(istype(W, /obj/item/weapon/packageWrap))
|
||||
return
|
||||
else if(seal_tool)
|
||||
@@ -303,8 +312,8 @@
|
||||
return
|
||||
if(do_after(user, 20 * S.toolspeed))
|
||||
playsound(src, S.usesound, 50)
|
||||
src.sealed = !src.sealed
|
||||
src.update_icon()
|
||||
sealed = !sealed
|
||||
update_icon()
|
||||
for(var/mob/M in viewers(src))
|
||||
M.show_message("<span class='warning'>[src] has been [sealed?"sealed":"unsealed"] by [user.name].</span>", 3)
|
||||
else if(W.is_wrench())
|
||||
@@ -319,7 +328,7 @@
|
||||
to_chat(user, "<span class='notice'>You [anchored? "un" : ""]secured \the [src]!</span>")
|
||||
anchored = !anchored
|
||||
else
|
||||
src.attack_hand(user)
|
||||
attack_hand(user)
|
||||
return
|
||||
|
||||
/obj/structure/closet/MouseDrop_T(atom/movable/O as mob|obj, mob/user as mob)
|
||||
@@ -333,14 +342,14 @@
|
||||
return
|
||||
if(!isturf(user.loc)) // are you in a container/closet/pod/etc?
|
||||
return
|
||||
if(!src.opened)
|
||||
if(!opened)
|
||||
return
|
||||
if(istype(O, /obj/structure/closet))
|
||||
return
|
||||
step_towards(O, src.loc)
|
||||
step_towards(O, loc)
|
||||
if(user != O)
|
||||
user.show_viewers("<span class='danger'>[user] stuffs [O] into [src]!</span>")
|
||||
src.add_fingerprint(user)
|
||||
add_fingerprint(user)
|
||||
return
|
||||
|
||||
/obj/structure/closet/attack_robot(mob/user)
|
||||
@@ -348,20 +357,20 @@
|
||||
attack_hand(user)
|
||||
|
||||
/obj/structure/closet/relaymove(mob/user as mob)
|
||||
if(user.stat || !isturf(src.loc))
|
||||
if(user.stat || !isturf(loc))
|
||||
return
|
||||
|
||||
if(!src.open())
|
||||
if(!open())
|
||||
to_chat(user, "<span class='notice'>It won't budge!</span>")
|
||||
|
||||
/obj/structure/closet/attack_hand(mob/user as mob)
|
||||
src.add_fingerprint(user)
|
||||
src.toggle(user)
|
||||
add_fingerprint(user)
|
||||
toggle(user)
|
||||
|
||||
// tk grab then use on self
|
||||
/obj/structure/closet/attack_self_tk(mob/user as mob)
|
||||
src.add_fingerprint(user)
|
||||
if(!src.toggle())
|
||||
add_fingerprint(user)
|
||||
if(!toggle())
|
||||
to_chat(usr, "<span class='notice'>It won't budge!</span>")
|
||||
|
||||
/obj/structure/closet/verb/verb_toggleopen()
|
||||
@@ -373,19 +382,16 @@
|
||||
return
|
||||
|
||||
if(ishuman(usr) || isrobot(usr))
|
||||
src.add_fingerprint(usr)
|
||||
src.toggle(usr)
|
||||
add_fingerprint(usr)
|
||||
toggle(usr)
|
||||
else
|
||||
to_chat(usr, "<span class='warning'>This mob type can't use this verb.</span>")
|
||||
|
||||
/obj/structure/closet/update_icon()//Putting the sealed stuff in updateicon() so it's easy to overwrite for special cases (Fridges, cabinets, and whatnot)
|
||||
overlays.Cut()
|
||||
if(!opened)
|
||||
icon_state = icon_closed
|
||||
if(sealed)
|
||||
overlays += "welded"
|
||||
/obj/structure/closet/update_icon()
|
||||
if(opened)
|
||||
icon_state = "open"
|
||||
else
|
||||
icon_state = icon_opened
|
||||
icon_state = "closed_unlocked[sealed ? "_welded" : ""]"
|
||||
|
||||
/obj/structure/closet/attack_generic(var/mob/user, var/damage, var/attack_message = "destroys")
|
||||
if(damage < STRUCTURE_MIN_DAMAGE_THRESHOLD)
|
||||
@@ -461,8 +467,8 @@
|
||||
return TRUE
|
||||
|
||||
/obj/structure/closet/return_air_for_internal_lifeform(var/mob/living/L)
|
||||
if(src.loc)
|
||||
if(istype(src.loc, /obj/structure/closet))
|
||||
if(loc)
|
||||
if(istype(loc, /obj/structure/closet))
|
||||
return (loc.return_air_for_internal_lifeform(L))
|
||||
return return_air()
|
||||
|
||||
@@ -0,0 +1,917 @@
|
||||
/obj/structure/closet/debug/Initialize(var/maploading, var/newappearance)
|
||||
closet_appearance = newappearance
|
||||
. = ..()
|
||||
|
||||
/decl/closet_appearance
|
||||
var/color = COLOR_GRAY40
|
||||
var/decals = list(
|
||||
"upper_vent",
|
||||
"lower_vent"
|
||||
)
|
||||
var/list/extra_decals
|
||||
var/icon/icon
|
||||
var/base_icon = 'icons/obj/closets/bases/closet.dmi'
|
||||
var/decal_icon = 'icons/obj/closets/decals/closet.dmi'
|
||||
var/can_lock = FALSE
|
||||
|
||||
/decl/closet_appearance/New()
|
||||
// Build our colour and decal lists.
|
||||
if(LAZYLEN(extra_decals))
|
||||
if(!decals)
|
||||
decals = list()
|
||||
for(var/thing in extra_decals)
|
||||
decals[thing] = extra_decals[thing]
|
||||
for(var/thing in decals)
|
||||
if(isnull(decals[thing]))
|
||||
decals[thing] = color
|
||||
|
||||
// Declare storage vars for icons.
|
||||
var/icon/open_icon
|
||||
var/icon/closed_emagged_icon
|
||||
var/icon/closed_emagged_welded_icon
|
||||
var/icon/closed_locked_icon
|
||||
var/icon/closed_locked_welded_icon
|
||||
var/icon/closed_unlocked_icon
|
||||
var/icon/closed_unlocked_welded_icon
|
||||
|
||||
// Create open icon.
|
||||
var/icon/new_icon = new
|
||||
open_icon = icon(base_icon, "base")
|
||||
open_icon.Blend(icon(base_icon, "open"), ICON_OVERLAY)
|
||||
open_icon.Blend(color, BLEND_ADD)
|
||||
open_icon.Blend(icon(base_icon, "interior"), ICON_OVERLAY)
|
||||
if(decal_icon)
|
||||
for(var/thing in decals)
|
||||
var/icon/this_decal_icon = icon(decal_icon, "[thing]_open")
|
||||
this_decal_icon.Blend(decals[thing], BLEND_ADD)
|
||||
open_icon.Blend(this_decal_icon, ICON_OVERLAY)
|
||||
|
||||
// Generate basic closed icons.
|
||||
closed_emagged_icon = icon(base_icon, "base")
|
||||
if(can_lock)
|
||||
closed_emagged_icon.Blend(icon(base_icon, "lock"), ICON_OVERLAY)
|
||||
closed_emagged_icon.Blend(color, BLEND_ADD)
|
||||
if(decal_icon)
|
||||
for(var/thing in decals)
|
||||
var/icon/this_decal_icon = icon(decal_icon, thing)
|
||||
this_decal_icon.Blend(decals[thing], BLEND_ADD)
|
||||
closed_emagged_icon.Blend(this_decal_icon, ICON_OVERLAY)
|
||||
closed_locked_icon = icon(closed_emagged_icon)
|
||||
closed_unlocked_icon = icon(closed_emagged_icon)
|
||||
|
||||
// Add lock lights.
|
||||
if(can_lock)
|
||||
var/icon/light = icon(base_icon, "light")
|
||||
light.Blend(COLOR_RED, BLEND_ADD)
|
||||
closed_locked_icon.Blend(light, ICON_OVERLAY)
|
||||
light = icon(base_icon, "light")
|
||||
light.Blend(COLOR_LIME, BLEND_ADD)
|
||||
closed_unlocked_icon.Blend(light, ICON_OVERLAY)
|
||||
|
||||
// Add welded states.
|
||||
var/icon/welded = icon(base_icon, "welded")
|
||||
closed_locked_welded_icon = icon(closed_locked_icon)
|
||||
closed_unlocked_welded_icon = icon(closed_unlocked_icon)
|
||||
closed_emagged_welded_icon = icon(closed_emagged_icon)
|
||||
closed_locked_welded_icon.Blend(welded, ICON_OVERLAY)
|
||||
closed_unlocked_welded_icon.Blend(welded, ICON_OVERLAY)
|
||||
closed_emagged_welded_icon.Blend(welded, ICON_OVERLAY)
|
||||
|
||||
// Finish up emagged icons.
|
||||
var/icon/sparks = icon(base_icon, "sparks")
|
||||
closed_emagged_icon.Blend(sparks, ICON_OVERLAY)
|
||||
closed_emagged_welded_icon.Blend(sparks, ICON_OVERLAY)
|
||||
|
||||
// Insert our bevy of icons into the final icon file.
|
||||
new_icon.Insert(open_icon, "open")
|
||||
new_icon.Insert(closed_emagged_icon, "closed_emagged")
|
||||
new_icon.Insert(closed_emagged_welded_icon, "closed_emagged_welded")
|
||||
new_icon.Insert(closed_locked_icon, "closed_locked")
|
||||
new_icon.Insert(closed_locked_welded_icon, "closed_locked_welded")
|
||||
new_icon.Insert(closed_unlocked_icon, "closed_unlocked")
|
||||
new_icon.Insert(closed_unlocked_welded_icon, "closed_unlocked_welded")
|
||||
|
||||
// Set icon!
|
||||
icon = new_icon
|
||||
|
||||
/decl/closet_appearance/tactical
|
||||
color = COLOR_RED_GRAY
|
||||
extra_decals = list(
|
||||
"inset" = COLOR_GRAY
|
||||
)
|
||||
|
||||
/decl/closet_appearance/tactical/alt
|
||||
color = COLOR_PALE_BTL_GREEN
|
||||
|
||||
/decl/closet_appearance/wardrobe
|
||||
extra_decals = list(
|
||||
"stripe_horizontal" = COLOR_PALE_BLUE_GRAY,
|
||||
"stripe_w" = COLOR_GRAY
|
||||
)
|
||||
|
||||
/decl/closet_appearance/wardrobe/mixed
|
||||
extra_decals = list(
|
||||
"stripe_horizontal_upper" = COLOR_PURPLE_GRAY,
|
||||
"stripe_horizontal_lower" = COLOR_PALE_RED_GRAY,
|
||||
"stripe_w" = COLOR_OFF_WHITE
|
||||
)
|
||||
|
||||
/decl/closet_appearance/wardrobe/orange
|
||||
extra_decals = list(
|
||||
"stripe_horizontal" = COLOR_PALE_ORANGE,
|
||||
"stripe_w" = COLOR_OFF_WHITE
|
||||
)
|
||||
|
||||
/decl/closet_appearance/wardrobe/green
|
||||
extra_decals = list(
|
||||
"stripe_horizontal" = COLOR_GREEN_GRAY,
|
||||
"stripe_w" = COLOR_OFF_WHITE
|
||||
)
|
||||
|
||||
/decl/closet_appearance/wardrobe/grey
|
||||
extra_decals = list(
|
||||
"stripe_horizontal" = COLOR_GRAY,
|
||||
"stripe_w" = COLOR_OFF_WHITE
|
||||
)
|
||||
|
||||
/decl/closet_appearance/wardrobe/pink
|
||||
extra_decals = list(
|
||||
"stripe_horizontal" = COLOR_PALE_PINK,
|
||||
"stripe_w" = COLOR_OFF_WHITE
|
||||
)
|
||||
|
||||
/decl/closet_appearance/wardrobe/black
|
||||
extra_decals = list(
|
||||
"stripe_horizontal" = COLOR_GRAY20,
|
||||
"stripe_w" = COLOR_OFF_WHITE
|
||||
)
|
||||
|
||||
/decl/closet_appearance/wardrobe/yellow
|
||||
extra_decals = list(
|
||||
"stripe_horizontal" = COLOR_PALE_YELLOW,
|
||||
"stripe_w" = COLOR_OFF_WHITE
|
||||
)
|
||||
|
||||
/decl/closet_appearance/wardrobe/red
|
||||
extra_decals = list(
|
||||
"stripe_horizontal" = COLOR_RED_GRAY,
|
||||
"stripe_w" = COLOR_OFF_WHITE
|
||||
)
|
||||
|
||||
/decl/closet_appearance/wardrobe/white
|
||||
extra_decals = list(
|
||||
"stripe_horizontal" = COLOR_GRAY,
|
||||
"stripe_w" = COLOR_OFF_WHITE,
|
||||
)
|
||||
|
||||
/decl/closet_appearance/bio
|
||||
color = COLOR_PALE_ORANGE
|
||||
decals = list(
|
||||
"l3" = COLOR_OFF_WHITE,
|
||||
"stripe_horizontal_narrow" = COLOR_ORANGE
|
||||
)
|
||||
extra_decals = list(
|
||||
"biohazard" = COLOR_OFF_WHITE
|
||||
)
|
||||
|
||||
/decl/closet_appearance/bio/command
|
||||
extra_decals = list(
|
||||
"lower_half_solid" = COLOR_BLUE_GRAY,
|
||||
"biohazard" = COLOR_OFF_WHITE
|
||||
)
|
||||
|
||||
/decl/closet_appearance/bio/science
|
||||
extra_decals = list(
|
||||
"lower_half_solid" = COLOR_PALE_YELLOW,
|
||||
"biohazard" = COLOR_OFF_WHITE
|
||||
)
|
||||
|
||||
/decl/closet_appearance/bio/security
|
||||
extra_decals = list(
|
||||
"lower_half_solid" = COLOR_RED_GRAY,
|
||||
"biohazard" = COLOR_OFF_WHITE
|
||||
)
|
||||
|
||||
/decl/closet_appearance/bio/janitor
|
||||
color = COLOR_PURPLE
|
||||
decals = list(
|
||||
"l3" = COLOR_OFF_WHITE,
|
||||
)
|
||||
extra_decals = list(
|
||||
"stripe_horizontal_broad" = COLOR_ORANGE,
|
||||
"biohazard" = COLOR_OFF_WHITE
|
||||
)
|
||||
|
||||
/decl/closet_appearance/bio/virology
|
||||
extra_decals = list(
|
||||
"lower_half_solid" = COLOR_GREEN_GRAY,
|
||||
"biohazard" = COLOR_OFF_WHITE
|
||||
)
|
||||
|
||||
/decl/closet_appearance/secure_closet
|
||||
can_lock = TRUE
|
||||
|
||||
/decl/closet_appearance/secure_closet/engineering
|
||||
can_lock = TRUE
|
||||
color = COLOR_YELLOW_GRAY
|
||||
decals = list(
|
||||
"upper_side_vent",
|
||||
"lower_side_vent"
|
||||
)
|
||||
extra_decals = list(
|
||||
"stripe_vertical_right_partial" = COLOR_BEASTY_BROWN,
|
||||
"stripe_vertical_left_partial" = COLOR_BEASTY_BROWN,
|
||||
"eng" = COLOR_BEASTY_BROWN
|
||||
)
|
||||
|
||||
/decl/closet_appearance/secure_closet/engineering/electrical
|
||||
decals = list(
|
||||
"lower_vent"
|
||||
)
|
||||
extra_decals = list(
|
||||
"electric" = COLOR_BEASTY_BROWN,
|
||||
"vertical_stripe_simple" = COLOR_BEASTY_BROWN
|
||||
)
|
||||
|
||||
/decl/closet_appearance/secure_closet/engineering/atmos
|
||||
extra_decals = list(
|
||||
"stripe_vertical_right_partial" = COLOR_CYAN_BLUE,
|
||||
"stripe_vertical_mid_partial" = COLOR_CYAN_BLUE,
|
||||
"atmos" = COLOR_CYAN_BLUE
|
||||
)
|
||||
|
||||
/decl/closet_appearance/secure_closet/engineering/welding
|
||||
decals = list(
|
||||
"lower_vent"
|
||||
)
|
||||
extra_decals = list(
|
||||
"fire" = COLOR_BEASTY_BROWN,
|
||||
"vertical_stripe_simple" = COLOR_BEASTY_BROWN
|
||||
)
|
||||
|
||||
/decl/closet_appearance/secure_closet/engineering/tools
|
||||
can_lock = FALSE
|
||||
decals = list(
|
||||
"lower_vent"
|
||||
)
|
||||
extra_decals = list(
|
||||
"tool" = COLOR_BEASTY_BROWN,
|
||||
"vertical_stripe_simple" = COLOR_BEASTY_BROWN
|
||||
)
|
||||
|
||||
/decl/closet_appearance/secure_closet/engineering/tools/radiation
|
||||
extra_decals = list(
|
||||
"l2" = COLOR_BEASTY_BROWN,
|
||||
"rads" = COLOR_BEASTY_BROWN
|
||||
)
|
||||
|
||||
/decl/closet_appearance/secure_closet/engineering/ce
|
||||
color = COLOR_OFF_WHITE
|
||||
extra_decals = list(
|
||||
"stripe_vertical_right_partial" = COLOR_CLOSET_GOLD,
|
||||
"stripe_vertical_mid_partial" = COLOR_CLOSET_GOLD,
|
||||
"eng_narrow" = COLOR_CLOSET_GOLD
|
||||
)
|
||||
|
||||
/decl/closet_appearance/secure_closet/mining
|
||||
color = COLOR_WARM_YELLOW
|
||||
decals = list(
|
||||
"upper_side_vent",
|
||||
"lower_side_vent"
|
||||
)
|
||||
extra_decals = list(
|
||||
"stripe_vertical_mid_partial" = COLOR_BEASTY_BROWN,
|
||||
"stripe_vertical_left_partial" = COLOR_BEASTY_BROWN,
|
||||
"mining" = COLOR_BEASTY_BROWN
|
||||
)
|
||||
|
||||
/decl/closet_appearance/secure_closet/mining/sec
|
||||
decals = list(
|
||||
"stripe_vertical_mid_partial" = COLOR_NT_RED,
|
||||
"stripe_vertical_left_partial" = COLOR_NT_RED,
|
||||
"mining" = COLOR_NT_RED
|
||||
)
|
||||
|
||||
/decl/closet_appearance/secure_closet/command
|
||||
color = COLOR_BLUE_GRAY
|
||||
decals = list(
|
||||
"lower_holes",
|
||||
"upper_holes"
|
||||
)
|
||||
extra_decals = list(
|
||||
"stripe_vertical_left_partial" = COLOR_CLOSET_GOLD,
|
||||
"stripe_vertical_right_partial" = COLOR_CLOSET_GOLD,
|
||||
"captain" = COLOR_CLOSET_GOLD
|
||||
)
|
||||
|
||||
/decl/closet_appearance/secure_closet/command/hop
|
||||
color = COLOR_PALE_BLUE_GRAY
|
||||
extra_decals = list(
|
||||
"stripe_vertical_mid_partial" = COLOR_CLOSET_GOLD,
|
||||
"hop" = COLOR_CLOSET_GOLD
|
||||
)
|
||||
|
||||
/decl/closet_appearance/secure_closet/cmo
|
||||
color = COLOR_BABY_BLUE
|
||||
decals = list(
|
||||
"upper_side_vent",
|
||||
"lower_side_vent"
|
||||
)
|
||||
extra_decals = list(
|
||||
"medcircle" = COLOR_CLOSET_GOLD,
|
||||
"stripe_vertical_right_partial" = COLOR_CLOSET_GOLD,
|
||||
"stripe_vertical_mid_partial" = COLOR_CLOSET_GOLD
|
||||
)
|
||||
|
||||
/decl/closet_appearance/secure_closet/medical
|
||||
color = COLOR_OFF_WHITE
|
||||
decals = null
|
||||
extra_decals = list(
|
||||
"circle" = COLOR_BLUE_GRAY,
|
||||
"stripes_horizontal" = COLOR_BLUE_GRAY
|
||||
)
|
||||
|
||||
/decl/closet_appearance/secure_closet/medical/virology
|
||||
decals = list(
|
||||
"upper_side_vent",
|
||||
"lower_side_vent"
|
||||
)
|
||||
extra_decals = list(
|
||||
"stripe_vertical_right_partial" = COLOR_BOTTLE_GREEN,
|
||||
"stripe_vertical_mid_partial" = COLOR_BOTTLE_GREEN,
|
||||
"viro" = COLOR_BOTTLE_GREEN
|
||||
)
|
||||
|
||||
/decl/closet_appearance/secure_closet/medical/alt
|
||||
extra_decals = list(
|
||||
"medcircle" =COLOR_BLUE_GRAY,
|
||||
"stripe_vertical_right_partial" = COLOR_BLUE_GRAY,
|
||||
"stripe_vertical_mid_partial" = COLOR_BLUE_GRAY
|
||||
)
|
||||
|
||||
/decl/closet_appearance/secure_closet/cargo
|
||||
color = COLOR_WARM_YELLOW
|
||||
decals = list(
|
||||
"upper_side_vent",
|
||||
"lower_side_vent"
|
||||
)
|
||||
extra_decals = list(
|
||||
"cargo" = COLOR_GRAY40,
|
||||
"stripe_vertical_left_partial" = COLOR_GRAY40,
|
||||
"stripe_vertical_mid_partial" = COLOR_GRAY40
|
||||
)
|
||||
|
||||
/decl/closet_appearance/secure_closet/cargo/qm
|
||||
extra_decals = list(
|
||||
"cargo" = COLOR_BEASTY_BROWN,
|
||||
"stripe_vertical_left_partial" = COLOR_BEASTY_BROWN,
|
||||
"stripe_vertical_mid_partial" = COLOR_BEASTY_BROWN
|
||||
)
|
||||
|
||||
/decl/closet_appearance/secure_closet/security
|
||||
color = COLOR_NT_RED
|
||||
decals = list(
|
||||
"lower_holes"
|
||||
)
|
||||
extra_decals = list(
|
||||
"stripe_vertical_mid_full" = COLOR_WARM_YELLOW,
|
||||
"security" = COLOR_WARM_YELLOW
|
||||
)
|
||||
|
||||
/decl/closet_appearance/secure_closet/security/warden
|
||||
extra_decals = list(
|
||||
"stripe_vertical_left_full" = COLOR_WARM_YELLOW,
|
||||
"stripe_vertical_right_full" = COLOR_WARM_YELLOW,
|
||||
"security" = COLOR_WARM_YELLOW
|
||||
)
|
||||
|
||||
/decl/closet_appearance/secure_closet/security/hos
|
||||
extra_decals = list(
|
||||
"stripe_vertical_left_full" = COLOR_WARM_YELLOW,
|
||||
"stripe_vertical_right_full" = COLOR_WARM_YELLOW,
|
||||
"stripe_vertical_mid_full" = COLOR_CLOSET_GOLD,
|
||||
"security" = COLOR_CLOSET_GOLD
|
||||
)
|
||||
|
||||
/decl/closet_appearance/bomb
|
||||
color = COLOR_DARK_GREEN_GRAY
|
||||
decals = list(
|
||||
"l4" = COLOR_OFF_WHITE
|
||||
)
|
||||
extra_decals = list(
|
||||
"lower_half_solid" = COLOR_GREEN_GRAY
|
||||
)
|
||||
|
||||
/decl/closet_appearance/bomb/security
|
||||
extra_decals = list(
|
||||
"lower_half_solid" = COLOR_WARM_YELLOW
|
||||
)
|
||||
|
||||
/decl/closet_appearance/oxygen
|
||||
color = COLOR_LIGHT_CYAN
|
||||
decals = list(
|
||||
"lower_vent"
|
||||
)
|
||||
extra_decals = list(
|
||||
"oxy" = COLOR_OFF_WHITE
|
||||
)
|
||||
|
||||
/decl/closet_appearance/oxygen/fire
|
||||
color = COLOR_RED_GRAY
|
||||
extra_decals = list(
|
||||
"extinguisher" = COLOR_OFF_WHITE,
|
||||
"vertical_stripe_simple" = COLOR_OFF_WHITE,
|
||||
)
|
||||
|
||||
/decl/closet_appearance/alien
|
||||
color = COLOR_PURPLE
|
||||
|
||||
/decl/closet_appearance/secure_closet/expedition
|
||||
color = COLOR_BLUE_GRAY
|
||||
decals = list(
|
||||
"lower_side_vent"
|
||||
)
|
||||
extra_decals = list(
|
||||
"stripe_vertical_mid_full" = COLOR_PURPLE,
|
||||
"security" = COLOR_PURPLE
|
||||
)
|
||||
|
||||
/decl/closet_appearance/secure_closet/expedition/pathfinder
|
||||
extra_decals = list(
|
||||
"stripe_vertical_left_full" = COLOR_PURPLE,
|
||||
"stripe_vertical_mid_full" = COLOR_CLOSET_GOLD,
|
||||
"stripe_vertical_right_full" = COLOR_PURPLE,
|
||||
"security" = COLOR_CLOSET_GOLD
|
||||
)
|
||||
|
||||
/decl/closet_appearance/secure_closet/expedition/science
|
||||
extra_decals = list(
|
||||
"stripe_vertical_mid_full" = COLOR_PURPLE,
|
||||
"research" = COLOR_PURPLE
|
||||
)
|
||||
|
||||
/decl/closet_appearance/secure_closet/rd
|
||||
color = COLOR_BOTTLE_GREEN
|
||||
decals = list(
|
||||
"lower_holes"
|
||||
)
|
||||
extra_decals = list(
|
||||
"stripe_vertical_mid_full" = COLOR_GOLD,
|
||||
"stripe_vertical_left_full" = COLOR_PURPLE,
|
||||
"stripe_vertical_right_full" = COLOR_PURPLE,
|
||||
"research" = COLOR_GOLD
|
||||
)
|
||||
|
||||
/decl/closet_appearance/secure_closet/corporate
|
||||
color = COLOR_GREEN_GRAY
|
||||
decals = list(
|
||||
"lower_holes"
|
||||
)
|
||||
extra_decals = list(
|
||||
"stripe_vertical_mid_full" = COLOR_GRAY80,
|
||||
"research" = COLOR_OFF_WHITE
|
||||
)
|
||||
|
||||
/decl/closet_appearance/secure_closet/hydroponics
|
||||
color = COLOR_GREEN_GRAY
|
||||
decals = list(
|
||||
"lower_side_vent",
|
||||
"upper_side_vent"
|
||||
)
|
||||
extra_decals = list(
|
||||
"stripe_vertical_right_partial" = COLOR_DARK_GREEN_GRAY,
|
||||
"stripe_vertical_mid_partial" = COLOR_DARK_GREEN_GRAY,
|
||||
"hydro" = COLOR_DARK_GREEN_GRAY
|
||||
)
|
||||
|
||||
/decl/closet_appearance/secure_closet/chaplain
|
||||
decals = list(
|
||||
"lower_side_vent",
|
||||
"upper_side_vent"
|
||||
)
|
||||
extra_decals = list(
|
||||
"stripe_vertical_right_full" = COLOR_GRAY20,
|
||||
"stripe_vertical_mid_full" = COLOR_GRAY20
|
||||
)
|
||||
|
||||
/decl/closet_appearance/secure_closet/sol
|
||||
color = COLOR_BABY_BLUE
|
||||
decals = list(
|
||||
"lower_side_vent"
|
||||
)
|
||||
extra_decals = list(
|
||||
"stripe_vertical_mid_full" = COLOR_BOTTLE_GREEN,
|
||||
"security" = COLOR_BOTTLE_GREEN
|
||||
)
|
||||
|
||||
/decl/closet_appearance/secure_closet/sol/two
|
||||
extra_decals = list(
|
||||
"stripe_vertical_left_full" = COLOR_BOTTLE_GREEN,
|
||||
"stripe_vertical_right_full" = COLOR_BOTTLE_GREEN,
|
||||
"security" = COLOR_BOTTLE_GREEN
|
||||
)
|
||||
|
||||
/decl/closet_appearance/secure_closet/sol/two/dark
|
||||
color = COLOR_DARK_BLUE_GRAY
|
||||
|
||||
// Crates.
|
||||
/decl/closet_appearance/crate
|
||||
decals = null
|
||||
extra_decals = null
|
||||
base_icon = 'icons/obj/closets/bases/crate.dmi'
|
||||
decal_icon = 'icons/obj/closets/decals/crate.dmi'
|
||||
color = COLOR_GRAY40
|
||||
|
||||
/decl/closet_appearance/crate/plastic
|
||||
color = COLOR_GRAY80
|
||||
|
||||
/decl/closet_appearance/crate/oxygen
|
||||
color = COLOR_CYAN_BLUE
|
||||
decals = list(
|
||||
"crate_stripes" = COLOR_OFF_WHITE,
|
||||
"crate_oxy" = COLOR_OFF_WHITE
|
||||
)
|
||||
|
||||
/decl/closet_appearance/crate/medical
|
||||
color = COLOR_GRAY80
|
||||
decals = list(
|
||||
"crate_stripe" = COLOR_WARM_YELLOW,
|
||||
"crate_cross" = COLOR_OFF_WHITE
|
||||
)
|
||||
|
||||
/decl/closet_appearance/crate/medical/trauma
|
||||
decals = list(
|
||||
"crate_stripe" = COLOR_NT_RED,
|
||||
"crate_cross" = COLOR_OFF_WHITE
|
||||
)
|
||||
|
||||
/decl/closet_appearance/crate/medical/oxygen
|
||||
decals = list(
|
||||
"crate_stripe" = COLOR_BABY_BLUE,
|
||||
"crate_cross" = COLOR_OFF_WHITE
|
||||
)
|
||||
|
||||
/decl/closet_appearance/crate/medical/toxins
|
||||
decals = list(
|
||||
"crate_stripe" = COLOR_GREEN_GRAY,
|
||||
"crate_cross" = COLOR_OFF_WHITE
|
||||
)
|
||||
|
||||
/decl/closet_appearance/crate/hydroponics
|
||||
decals = list(
|
||||
"crate_stripe_left" = COLOR_GREEN_GRAY,
|
||||
"crate_stripe_right" = COLOR_GREEN_GRAY
|
||||
)
|
||||
|
||||
/decl/closet_appearance/crate/radiation
|
||||
color = COLOR_BROWN_ORANGE
|
||||
extra_decals = list(
|
||||
"crate_radiation_left" = COLOR_WARM_YELLOW,
|
||||
"crate_radiation_right" = COLOR_WARM_YELLOW,
|
||||
"lid_stripes" = COLOR_NT_RED
|
||||
)
|
||||
|
||||
/decl/closet_appearance/crate/freezer
|
||||
color = COLOR_BABY_BLUE
|
||||
|
||||
/decl/closet_appearance/crate/secure
|
||||
can_lock = TRUE
|
||||
|
||||
/decl/closet_appearance/crate/secure/hazard
|
||||
color = COLOR_NT_RED
|
||||
decals = list(
|
||||
"crate_bracing"
|
||||
)
|
||||
extra_decals = list(
|
||||
"crate_stripe_left" = COLOR_OFF_WHITE,
|
||||
"crate_stripe_right" = COLOR_OFF_WHITE,
|
||||
"toxin" = COLOR_OFF_WHITE
|
||||
)
|
||||
|
||||
/decl/closet_appearance/crate/secure/weapon
|
||||
color = COLOR_GREEN_GRAY
|
||||
decals = list(
|
||||
"crate_bracing"
|
||||
)
|
||||
extra_decals = list(
|
||||
"crate_stripe_left" = COLOR_OFF_WHITE,
|
||||
"crate_stripe_right" = COLOR_OFF_WHITE,
|
||||
"hazard" = COLOR_OFF_WHITE
|
||||
)
|
||||
|
||||
/decl/closet_appearance/crate/secure/hydroponics
|
||||
extra_decals = list(
|
||||
"crate_stripe_left" = COLOR_GREEN_GRAY,
|
||||
"crate_stripe_right" = COLOR_GREEN_GRAY
|
||||
)
|
||||
|
||||
/decl/closet_appearance/crate/secure/shuttle
|
||||
extra_decals = list(
|
||||
"crate_stripe_left" = COLOR_YELLOW_GRAY,
|
||||
"crate_stripe_right" = COLOR_YELLOW_GRAY
|
||||
)
|
||||
|
||||
// Large crates.
|
||||
/decl/closet_appearance/large_crate
|
||||
base_icon = 'icons/obj/closets/bases/large_crate.dmi'
|
||||
decal_icon = 'icons/obj/closets/decals/large_crate.dmi'
|
||||
decals = null
|
||||
extra_decals = null
|
||||
|
||||
/decl/closet_appearance/large_crate/critter
|
||||
decals = list(
|
||||
"airholes"
|
||||
)
|
||||
extra_decals = list(
|
||||
"oxy" = COLOR_WHITE
|
||||
)
|
||||
|
||||
/decl/closet_appearance/large_crate/hydroponics
|
||||
extra_decals = list(
|
||||
"stripes" = COLOR_GREEN_GRAY,
|
||||
"text" = COLOR_GREEN_GRAY
|
||||
)
|
||||
|
||||
/decl/closet_appearance/large_crate/secure
|
||||
can_lock = TRUE
|
||||
|
||||
/decl/closet_appearance/large_crate/secure/hazard
|
||||
color = COLOR_NT_RED
|
||||
decals = list(
|
||||
"crate_bracing"
|
||||
)
|
||||
extra_decals = list(
|
||||
"marking" = COLOR_OFF_WHITE,
|
||||
"text_upper" = COLOR_OFF_WHITE
|
||||
)
|
||||
|
||||
// Cabinets.
|
||||
/decl/closet_appearance/cabinet
|
||||
base_icon = 'icons/obj/closets/bases/cabinet.dmi'
|
||||
decal_icon = null
|
||||
color = WOOD_COLOR_RICH
|
||||
decals = null
|
||||
extra_decals = null
|
||||
|
||||
/decl/closet_appearance/cabinet/secure
|
||||
can_lock = TRUE
|
||||
|
||||
// Wall lockers.
|
||||
/decl/closet_appearance/wall
|
||||
base_icon = 'icons/obj/closets/bases/wall.dmi'
|
||||
decal_icon = 'icons/obj/closets/decals/wall.dmi'
|
||||
decals = list(
|
||||
"vent"
|
||||
)
|
||||
extra_decals = null
|
||||
|
||||
/decl/closet_appearance/wall/emergency
|
||||
decals = null
|
||||
extra_decals = list(
|
||||
"glass" = COLOR_WHITE
|
||||
)
|
||||
|
||||
/decl/closet_appearance/wall/medical
|
||||
decals = null
|
||||
color = COLOR_OFF_WHITE
|
||||
extra_decals = list(
|
||||
"stripe_outer" = COLOR_BLUE_GRAY,
|
||||
"stripe_inner" = COLOR_OFF_WHITE,
|
||||
"cross" = COLOR_BLUE_GRAY
|
||||
)
|
||||
|
||||
/decl/closet_appearance/wall/shipping
|
||||
color = COLOR_WARM_YELLOW
|
||||
decals = null
|
||||
extra_decals = list(
|
||||
"stripes" = COLOR_BEASTY_BROWN,
|
||||
"glass" = COLOR_WHITE
|
||||
)
|
||||
|
||||
/decl/closet_appearance/wall/hydrant
|
||||
color = COLOR_NT_RED
|
||||
decals = null
|
||||
extra_decals = list(
|
||||
"stripes" = COLOR_OFF_WHITE,
|
||||
"glass" = COLOR_WHITE
|
||||
)
|
||||
|
||||
// Carts
|
||||
/decl/closet_appearance/cart
|
||||
color = COLOR_GRAY20
|
||||
base_icon = 'icons/obj/closets/bases/cart.dmi'
|
||||
decal_icon = 'icons/obj/closets/decals/cart.dmi'
|
||||
decals = null
|
||||
extra_decals = null
|
||||
|
||||
/decl/closet_appearance/cart/trash
|
||||
color = COLOR_BOTTLE_GREEN
|
||||
|
||||
/decl/closet_appearance/cart/biohazard
|
||||
can_lock = TRUE
|
||||
decals = list(
|
||||
"biohazard" = COLOR_GRAY80
|
||||
)
|
||||
|
||||
/decl/closet_appearance/cart/biohazard/alt
|
||||
color = COLOR_SURGERY_BLUE
|
||||
decals = list(
|
||||
"biohazard" = COLOR_RED_GRAY
|
||||
)
|
||||
|
||||
// From the Torch
|
||||
/decl/closet_appearance/secure_closet/exploration // These three renamed since Polaris actually uses these
|
||||
extra_decals = list(
|
||||
"stripe_vertical_mid_full" = COLOR_PURPLE,
|
||||
"exped" = COLOR_PURPLE
|
||||
)
|
||||
|
||||
/decl/closet_appearance/secure_closet/exploration/pilot
|
||||
extra_decals = list(
|
||||
"stripe_vertical_left_full" = COLOR_PURPLE,
|
||||
"stripe_vertical_right_full" = COLOR_PURPLE,
|
||||
"exped" = COLOR_PURPLE
|
||||
)
|
||||
|
||||
/decl/closet_appearance/secure_closet/exploration/pathfinder
|
||||
extra_decals = list(
|
||||
"stripe_vertical_left_full" = COLOR_PURPLE,
|
||||
"stripe_vertical_mid_full" = COLOR_CLOSET_GOLD,
|
||||
"stripe_vertical_right_full" = COLOR_PURPLE,
|
||||
"exped" = COLOR_CLOSET_GOLD
|
||||
)
|
||||
|
||||
/decl/closet_appearance/secure_closet/torch/command
|
||||
extra_decals = list(
|
||||
"stripe_vertical_mid_full" = COLOR_CLOSET_GOLD
|
||||
)
|
||||
|
||||
/decl/closet_appearance/secure_closet/torch/command/bo
|
||||
extra_decals = list(
|
||||
"stripe_vertical_left_full" = COLOR_CLOSET_GOLD,
|
||||
"stripe_vertical_right_full" = COLOR_CLOSET_GOLD
|
||||
)
|
||||
|
||||
/decl/closet_appearance/secure_closet/torch/command/xo
|
||||
extra_decals = list(
|
||||
"stripe_vertical_left_full" = COLOR_CLOSET_GOLD,
|
||||
"stripe_vertical_right_full" = COLOR_CLOSET_GOLD,
|
||||
"command" = COLOR_CLOSET_GOLD
|
||||
)
|
||||
|
||||
/decl/closet_appearance/secure_closet/torch/command/co
|
||||
extra_decals = list(
|
||||
"stripe_vertical_left_full" = COLOR_CLOSET_GOLD,
|
||||
"stripe_vertical_mid_full" = COLOR_OFF_WHITE,
|
||||
"stripe_vertical_right_full" = COLOR_CLOSET_GOLD,
|
||||
"command" = COLOR_OFF_WHITE
|
||||
)
|
||||
|
||||
/decl/closet_appearance/secure_closet/torch/engineering
|
||||
extra_decals = list(
|
||||
"stripe_vertical_mid_full" = COLOR_WARM_YELLOW,
|
||||
"exped" = COLOR_WARM_YELLOW
|
||||
)
|
||||
|
||||
/decl/closet_appearance/secure_closet/torch/engineering/atmos
|
||||
extra_decals = list(
|
||||
"stripe_vertical_right_full" = COLOR_WARM_YELLOW,
|
||||
"stripe_vertical_mid_full" = COLOR_CYAN_BLUE,
|
||||
"atmos_upper" = COLOR_WARM_YELLOW
|
||||
)
|
||||
|
||||
/decl/closet_appearance/secure_closet/torch/engineering/se
|
||||
extra_decals = list(
|
||||
"stripe_vertical_left_full" = COLOR_WARM_YELLOW,
|
||||
"stripe_vertical_right_full" = COLOR_WARM_YELLOW,
|
||||
"exped" = COLOR_WARM_YELLOW
|
||||
)
|
||||
|
||||
/decl/closet_appearance/secure_closet/torch/engineering/ce
|
||||
extra_decals = list(
|
||||
"stripe_vertical_left_full" = COLOR_WARM_YELLOW,
|
||||
"stripe_vertical_mid_full" = COLOR_CLOSET_GOLD,
|
||||
"stripe_vertical_right_full" = COLOR_WARM_YELLOW,
|
||||
"exped" = COLOR_CLOSET_GOLD
|
||||
)
|
||||
|
||||
/decl/closet_appearance/secure_closet/torch/medical
|
||||
extra_decals = list(
|
||||
"stripe_vertical_mid_full" = COLOR_BABY_BLUE,
|
||||
"medical" = COLOR_BABY_BLUE
|
||||
)
|
||||
|
||||
/decl/closet_appearance/secure_closet/torch/medical/physician
|
||||
extra_decals = list(
|
||||
"stripe_vertical_left_full" = COLOR_BABY_BLUE,
|
||||
"stripe_vertical_right_full" = COLOR_BABY_BLUE,
|
||||
"medical" = COLOR_BABY_BLUE
|
||||
)
|
||||
|
||||
/decl/closet_appearance/secure_closet/torch/medical/cmo
|
||||
extra_decals = list(
|
||||
"stripe_vertical_left_full" = COLOR_BABY_BLUE,
|
||||
"stripe_vertical_mid_full" = COLOR_CLOSET_GOLD,
|
||||
"stripe_vertical_right_full" = COLOR_BABY_BLUE,
|
||||
"medical" = COLOR_CLOSET_GOLD
|
||||
)
|
||||
|
||||
/decl/closet_appearance/secure_closet/torch/sol
|
||||
color = COLOR_BABY_BLUE
|
||||
extra_decals = list(
|
||||
"stripe_vertical_mid_full" = COLOR_OFF_WHITE
|
||||
)
|
||||
|
||||
/decl/closet_appearance/secure_closet/torch/sol/rep
|
||||
color = COLOR_BABY_BLUE
|
||||
extra_decals = list(
|
||||
"stripe_vertical_left_full" = COLOR_OFF_WHITE,
|
||||
"stripe_vertical_right_full" = COLOR_OFF_WHITE
|
||||
)
|
||||
|
||||
/decl/closet_appearance/secure_closet/torch/corporate
|
||||
color = COLOR_BOTTLE_GREEN
|
||||
extra_decals = list(
|
||||
"stripe_vertical_mid_full" = COLOR_OFF_WHITE
|
||||
)
|
||||
|
||||
/decl/closet_appearance/secure_closet/torch/corporate/liaison
|
||||
extra_decals = list(
|
||||
"stripe_vertical_left_full" = COLOR_OFF_WHITE,
|
||||
"stripe_vertical_right_full" = COLOR_OFF_WHITE,
|
||||
"command" = COLOR_OFF_WHITE
|
||||
)
|
||||
|
||||
/decl/closet_appearance/secure_closet/torch/science
|
||||
extra_decals = list(
|
||||
"stripe_vertical_left_full" = COLOR_PURPLE_GRAY,
|
||||
"stripe_vertical_right_full" = COLOR_PURPLE_GRAY,
|
||||
"research" = COLOR_PURPLE_GRAY
|
||||
)
|
||||
|
||||
/decl/closet_appearance/secure_closet/torch/science/cso
|
||||
color = COLOR_BOTTLE_GREEN
|
||||
decals = list(
|
||||
"lower_holes"
|
||||
)
|
||||
extra_decals = list(
|
||||
"stripe_vertical_mid_full" = COLOR_GOLD,
|
||||
"stripe_vertical_left_full" = COLOR_PURPLE,
|
||||
"stripe_vertical_right_full" = COLOR_PURPLE,
|
||||
"research" = COLOR_GOLD
|
||||
)
|
||||
|
||||
/decl/closet_appearance/secure_closet/torch/security
|
||||
extra_decals = list(
|
||||
"stripe_vertical_mid_full" = COLOR_NT_RED,
|
||||
"security" = COLOR_NT_RED
|
||||
)
|
||||
|
||||
/decl/closet_appearance/secure_closet/torch/security/forensics
|
||||
extra_decals = list(
|
||||
"stripe_vertical_mid_full" = COLOR_NT_RED,
|
||||
"forensics" = COLOR_NT_RED
|
||||
)
|
||||
|
||||
/decl/closet_appearance/secure_closet/torch/security/warden
|
||||
extra_decals = list(
|
||||
"stripe_vertical_left_full" = COLOR_NT_RED,
|
||||
"stripe_vertical_right_full" = COLOR_NT_RED,
|
||||
"security" = COLOR_NT_RED
|
||||
)
|
||||
|
||||
/decl/closet_appearance/secure_closet/torch/security/hos
|
||||
extra_decals = list(
|
||||
"stripe_vertical_left_full" = COLOR_NT_RED,
|
||||
"stripe_vertical_mid_full" = COLOR_CLOSET_GOLD,
|
||||
"stripe_vertical_right_full" = COLOR_NT_RED,
|
||||
"security" = COLOR_CLOSET_GOLD
|
||||
)
|
||||
|
||||
/decl/closet_appearance/secure_closet/torch/hydroponics
|
||||
extra_decals = list(
|
||||
"stripe_vertical_right_partial" = COLOR_GREEN_GRAY,
|
||||
"stripe_vertical_mid_partial" = COLOR_GREEN_GRAY,
|
||||
"hydro" = COLOR_GREEN_GRAY
|
||||
)
|
||||
|
||||
/decl/closet_appearance/secure_closet/torch/cargo
|
||||
extra_decals = list(
|
||||
"stripe_vertical_mid_full" = COLOR_BEASTY_BROWN,
|
||||
"cargo_upper" = COLOR_BEASTY_BROWN
|
||||
)
|
||||
|
||||
/decl/closet_appearance/secure_closet/torch/cargo/worker
|
||||
extra_decals = list(
|
||||
"stripe_vertical_left_full" = COLOR_BEASTY_BROWN,
|
||||
"stripe_vertical_right_full" = COLOR_BEASTY_BROWN,
|
||||
"cargo_upper" = COLOR_BEASTY_BROWN
|
||||
)
|
||||
|
||||
/decl/closet_appearance/secure_closet/torch/cargo/deck_officer
|
||||
extra_decals = list(
|
||||
"stripe_vertical_mid_full" = COLOR_CLOSET_GOLD,
|
||||
"stripe_vertical_left_full" = COLOR_BEASTY_BROWN,
|
||||
"stripe_vertical_right_full" = COLOR_BEASTY_BROWN,
|
||||
"cargo_upper" = COLOR_CLOSET_GOLD
|
||||
)
|
||||
@@ -1,30 +1,25 @@
|
||||
/obj/structure/closet/coffin
|
||||
name = "coffin"
|
||||
desc = "It's a burial receptacle for the dearly departed."
|
||||
icon_state = "coffin"
|
||||
icon_closed = "coffin"
|
||||
icon_opened = "coffin_open"
|
||||
icon = 'icons/obj/closets/coffin.dmi'
|
||||
|
||||
icon_state = "closed_unlocked"
|
||||
seal_tool = /obj/item/weapon/tool/screwdriver
|
||||
breakout_sound = 'sound/weapons/tablehit1.ogg'
|
||||
|
||||
/obj/structure/closet/coffin/update_icon()
|
||||
if(!opened)
|
||||
icon_state = icon_closed
|
||||
else
|
||||
icon_state = icon_opened
|
||||
closet_appearance = null // Special icon for us
|
||||
|
||||
/* Graves */
|
||||
/obj/structure/closet/grave
|
||||
name = "grave"
|
||||
desc = "Dirt."
|
||||
icon_state = "grave"
|
||||
icon_closed = "grave"
|
||||
icon_opened = "grave_open"
|
||||
icon = 'icons/obj/closets/grave.dmi'
|
||||
icon_state = "closed_unlocked"
|
||||
seal_tool = null
|
||||
breakout_sound = 'sound/weapons/thudswoosh.ogg'
|
||||
anchored = 1
|
||||
max_closets = 1
|
||||
opened = 1
|
||||
closet_appearance = null // Special icon for us
|
||||
|
||||
/obj/structure/closet/grave/attack_hand(mob/user as mob)
|
||||
if(opened)
|
||||
|
||||
@@ -1,6 +1,4 @@
|
||||
/obj/structure/closet/crate/critter
|
||||
name = "critter crate"
|
||||
desc = "A crate which can sustain life for a while."
|
||||
icon_state = "critter"
|
||||
icon_opened = "critteropen"
|
||||
icon_closed = "critter"
|
||||
closet_appearance = /decl/closet_appearance/large_crate/critter
|
||||
@@ -1,8 +1,7 @@
|
||||
/obj/structure/closet/athletic_mixed
|
||||
name = "athletic wardrobe"
|
||||
desc = "It's a storage unit for athletic wear."
|
||||
icon_state = "mixed"
|
||||
icon_closed = "mixed"
|
||||
closet_appearance = /decl/closet_appearance/wardrobe/mixed
|
||||
|
||||
starts_with = list(
|
||||
/obj/item/clothing/under/shorts/grey,
|
||||
@@ -44,8 +43,7 @@
|
||||
/obj/structure/closet/lasertag/red
|
||||
name = "red laser tag equipment"
|
||||
desc = "It's a storage unit for laser tag equipment."
|
||||
icon_state = "red"
|
||||
icon_closed = "red"
|
||||
closet_appearance = /decl/closet_appearance/wardrobe/red
|
||||
|
||||
starts_with = list(
|
||||
/obj/item/weapon/gun/energy/lasertag/red = 5,
|
||||
@@ -55,8 +53,7 @@
|
||||
/obj/structure/closet/lasertag/blue
|
||||
name = "blue laser tag equipment"
|
||||
desc = "It's a storage unit for laser tag equipment."
|
||||
icon_state = "blue"
|
||||
icon_closed = "blue"
|
||||
closet_appearance = /decl/closet_appearance/wardrobe
|
||||
|
||||
starts_with = list(
|
||||
/obj/item/weapon/gun/energy/lasertag/blue = 5,
|
||||
|
||||
@@ -1,38 +1,23 @@
|
||||
/obj/structure/closet/cabinet
|
||||
name = "cabinet"
|
||||
desc = "Old will forever be in fashion."
|
||||
icon_state = "cabinet_closed"
|
||||
icon_closed = "cabinet_closed"
|
||||
icon_opened = "cabinet_open"
|
||||
|
||||
/obj/structure/closet/cabinet/update_icon()
|
||||
if(!opened)
|
||||
icon_state = icon_closed
|
||||
else
|
||||
icon_state = icon_opened
|
||||
closet_appearance = /decl/closet_appearance/cabinet
|
||||
|
||||
/obj/structure/closet/acloset
|
||||
name = "strange closet"
|
||||
desc = "It looks alien!"
|
||||
icon_state = "acloset"
|
||||
icon_closed = "acloset"
|
||||
icon_opened = "aclosetopen"
|
||||
|
||||
closet_appearance = /decl/closet_appearance/alien
|
||||
|
||||
/obj/structure/closet/gimmick
|
||||
name = "administrative supply closet"
|
||||
desc = "It's a storage unit for things that have no right being here."
|
||||
icon_state = "syndicate1"
|
||||
icon_closed = "syndicate1"
|
||||
icon_opened = "syndicate1open"
|
||||
closet_appearance = /decl/closet_appearance/tactical
|
||||
anchored = 0
|
||||
|
||||
/obj/structure/closet/gimmick/russian
|
||||
name = "russian surplus closet"
|
||||
desc = "It's a storage unit for Russian standard-issue surplus."
|
||||
icon_state = "syndicate1"
|
||||
icon_closed = "syndicate1"
|
||||
icon_opened = "syndicate1open"
|
||||
closet_appearance = /decl/closet_appearance/tactical
|
||||
|
||||
starts_with = list(
|
||||
/obj/item/clothing/head/ushanka = 5,
|
||||
@@ -42,9 +27,7 @@
|
||||
/obj/structure/closet/gimmick/tacticool
|
||||
name = "tacticool gear closet"
|
||||
desc = "It's a storage unit for Tacticool gear."
|
||||
icon_state = "syndicate1"
|
||||
icon_closed = "syndicate1"
|
||||
icon_opened = "syndicate1open"
|
||||
closet_appearance = /decl/closet_appearance/tactical
|
||||
|
||||
starts_with = list(
|
||||
/obj/item/clothing/glasses/eyepatch,
|
||||
@@ -60,9 +43,7 @@
|
||||
/obj/structure/closet/thunderdome
|
||||
name = "\improper Thunderdome closet"
|
||||
desc = "Everything you need!"
|
||||
icon_state = "syndicate"
|
||||
icon_closed = "syndicate"
|
||||
icon_opened = "syndicateopen"
|
||||
closet_appearance = /decl/closet_appearance/tactical/alt
|
||||
anchored = 1
|
||||
|
||||
/obj/structure/closet/thunderdome/tdred
|
||||
@@ -78,9 +59,7 @@
|
||||
|
||||
/obj/structure/closet/thunderdome/tdgreen
|
||||
name = "green-team Thunderdome closet"
|
||||
icon_state = "syndicate1"
|
||||
icon_closed = "syndicate1"
|
||||
icon_opened = "syndicate1open"
|
||||
closet_appearance = /decl/closet_appearance/tactical
|
||||
|
||||
starts_with = list(
|
||||
/obj/item/clothing/suit/armor/tdome/green = 3,
|
||||
@@ -93,8 +72,6 @@
|
||||
/obj/structure/closet/alien
|
||||
name = "alien container"
|
||||
desc = "Contains secrets of the universe."
|
||||
icon = 'icons/obj/abductor.dmi'
|
||||
icon_state = "alien_locker"
|
||||
icon_closed = "alien_locker"
|
||||
icon_opened = "alien_locker_open"
|
||||
icon = 'icons/obj/closets/abductor.dmi'
|
||||
anchored = TRUE
|
||||
closet_appearance = null // special icons
|
||||
|
||||
@@ -11,8 +11,7 @@
|
||||
/obj/structure/closet/gmcloset
|
||||
name = "formal closet"
|
||||
desc = "It's a storage unit for formal clothing."
|
||||
icon_state = "black"
|
||||
icon_closed = "black"
|
||||
closet_appearance = /decl/closet_appearance/wardrobe/black
|
||||
|
||||
starts_with = list(
|
||||
/obj/item/clothing/head/that = 2,
|
||||
@@ -37,8 +36,7 @@
|
||||
/obj/structure/closet/chefcloset
|
||||
name = "chef's closet"
|
||||
desc = "It's a storage unit for foodservice garments."
|
||||
icon_state = "black"
|
||||
icon_closed = "black"
|
||||
closet_appearance = /decl/closet_appearance/wardrobe/black
|
||||
|
||||
starts_with = list(
|
||||
/obj/item/clothing/under/sundress,
|
||||
@@ -55,8 +53,7 @@
|
||||
/obj/structure/closet/jcloset
|
||||
name = "custodial closet"
|
||||
desc = "It's a storage unit for janitorial clothes and gear."
|
||||
icon_state = "mixed"
|
||||
icon_closed = "mixed"
|
||||
closet_appearance = /decl/closet_appearance/wardrobe/mixed
|
||||
|
||||
starts_with = list(
|
||||
/obj/item/clothing/under/rank/janitor,
|
||||
@@ -79,8 +76,7 @@
|
||||
/obj/structure/closet/lawcloset
|
||||
name = "legal closet"
|
||||
desc = "It's a storage unit for courtroom apparel and items."
|
||||
icon_state = "blue"
|
||||
icon_closed = "blue"
|
||||
closet_appearance = /decl/closet_appearance/wardrobe
|
||||
|
||||
starts_with = list(
|
||||
/obj/item/clothing/under/lawyer/female = 2,
|
||||
|
||||
@@ -1,14 +1,10 @@
|
||||
/obj/structure/closet/l3closet
|
||||
name = "level-3 biohazard suit closet"
|
||||
desc = "It's a storage unit for level-3 biohazard gear."
|
||||
icon_state = "bio"
|
||||
icon_closed = "bio"
|
||||
icon_opened = "bioopen"
|
||||
closet_appearance = /decl/closet_appearance/bio
|
||||
|
||||
/obj/structure/closet/l3closet/general
|
||||
icon_state = "bio_general"
|
||||
icon_closed = "bio_general"
|
||||
icon_opened = "bio_generalopen"
|
||||
closet_appearance = /decl/closet_appearance/bio
|
||||
|
||||
starts_with = list(
|
||||
/obj/item/clothing/suit/bio_suit/general,
|
||||
@@ -16,9 +12,7 @@
|
||||
|
||||
|
||||
/obj/structure/closet/l3closet/virology
|
||||
icon_state = "bio_virology"
|
||||
icon_closed = "bio_virology"
|
||||
icon_opened = "bio_virologyopen"
|
||||
closet_appearance = /decl/closet_appearance/bio/virology
|
||||
|
||||
starts_with = list(
|
||||
/obj/item/clothing/suit/bio_suit/virology,
|
||||
@@ -28,9 +22,7 @@
|
||||
|
||||
|
||||
/obj/structure/closet/l3closet/security
|
||||
icon_state = "bio_security"
|
||||
icon_closed = "bio_security"
|
||||
icon_opened = "bio_securityopen"
|
||||
closet_appearance = /decl/closet_appearance/bio/security
|
||||
|
||||
starts_with = list(
|
||||
/obj/item/clothing/suit/bio_suit/security,
|
||||
@@ -38,9 +30,7 @@
|
||||
///obj/item/weapon/gun/energy/taser/xeno/sec) //VOREStation Removal
|
||||
|
||||
/obj/structure/closet/l3closet/janitor
|
||||
icon_state = "bio_janitor"
|
||||
icon_closed = "bio_janitor"
|
||||
icon_opened = "bio_janitoropen"
|
||||
closet_appearance = /decl/closet_appearance/bio/janitor
|
||||
|
||||
starts_with = list(
|
||||
/obj/item/clothing/suit/bio_suit/janitor = 2,
|
||||
@@ -50,9 +40,7 @@
|
||||
|
||||
|
||||
/obj/structure/closet/l3closet/scientist
|
||||
icon_state = "bio_scientist"
|
||||
icon_closed = "bio_scientist"
|
||||
icon_opened = "bio_scientistopen"
|
||||
closet_appearance = /decl/closet_appearance/bio/science
|
||||
|
||||
starts_with = list(
|
||||
/obj/item/clothing/suit/bio_suit/scientist,
|
||||
@@ -65,9 +53,7 @@
|
||||
|
||||
|
||||
/obj/structure/closet/l3closet/medical
|
||||
icon_state = "bio_scientist"
|
||||
icon_closed = "bio_scientist"
|
||||
icon_opened = "bio_scientistopen"
|
||||
closet_appearance = /decl/closet_appearance/bio/science
|
||||
|
||||
starts_with = list(
|
||||
/obj/item/clothing/suit/bio_suit/general = 3,
|
||||
|
||||
@@ -1,8 +1,6 @@
|
||||
/obj/structure/closet/malf/suits
|
||||
desc = "It's a storage unit for operational gear."
|
||||
icon_state = "syndicate"
|
||||
icon_closed = "syndicate"
|
||||
icon_opened = "syndicateopen"
|
||||
closet_appearance = /decl/closet_appearance/tactical
|
||||
|
||||
starts_with = list(
|
||||
/obj/item/weapon/tank/jetpack/void,
|
||||
|
||||
@@ -1,24 +1,7 @@
|
||||
/obj/structure/closet/secure_closet/bar
|
||||
name = "booze closet"
|
||||
req_access = list(access_bar)
|
||||
icon_state = "cabinetdetective_locked"
|
||||
icon_closed = "cabinetdetective"
|
||||
icon_locked = "cabinetdetective_locked"
|
||||
icon_opened = "cabinetdetective_open"
|
||||
icon_broken = "cabinetdetective_broken"
|
||||
icon_off = "cabinetdetective_broken"
|
||||
closet_appearance = /decl/closet_appearance/cabinet/secure
|
||||
|
||||
starts_with = list(
|
||||
/obj/item/weapon/reagent_containers/food/drinks/bottle/small/beer = 10)
|
||||
|
||||
/obj/structure/closet/secure_closet/bar/update_icon()
|
||||
if(broken)
|
||||
icon_state = icon_broken
|
||||
else
|
||||
if(!opened)
|
||||
if(locked)
|
||||
icon_state = icon_locked
|
||||
else
|
||||
icon_state = icon_closed
|
||||
else
|
||||
icon_state = icon_opened
|
||||
|
||||
@@ -1,12 +1,7 @@
|
||||
/obj/structure/closet/secure_closet/cargotech
|
||||
name = "cargo technician's locker"
|
||||
req_access = list(access_cargo)
|
||||
icon_state = "securecargo1"
|
||||
icon_closed = "securecargo"
|
||||
icon_locked = "securecargo1"
|
||||
icon_opened = "securecargoopen"
|
||||
icon_broken = "securecargobroken"
|
||||
icon_off = "securecargooff"
|
||||
closet_appearance = /decl/closet_appearance/secure_closet/cargo
|
||||
|
||||
starts_with = list(
|
||||
/obj/item/clothing/under/rank/cargotech,
|
||||
@@ -34,12 +29,7 @@
|
||||
/obj/structure/closet/secure_closet/quartermaster
|
||||
name = "quartermaster's locker"
|
||||
req_access = list(access_qm)
|
||||
icon_state = "secureqm1"
|
||||
icon_closed = "secureqm"
|
||||
icon_locked = "secureqm1"
|
||||
icon_opened = "secureqmopen"
|
||||
icon_broken = "secureqmbroken"
|
||||
icon_off = "secureqmoff"
|
||||
closet_appearance = /decl/closet_appearance/secure_closet/cargo/qm
|
||||
|
||||
starts_with = list(
|
||||
/obj/item/clothing/under/rank/cargo,
|
||||
@@ -70,13 +60,8 @@
|
||||
|
||||
/obj/structure/closet/secure_closet/miner
|
||||
name = "miner's equipment"
|
||||
icon_state = "miningsec1"
|
||||
icon_closed = "miningsec"
|
||||
icon_locked = "miningsec1"
|
||||
icon_opened = "miningsecopen"
|
||||
icon_broken = "miningsecbroken"
|
||||
icon_off = "miningsecoff"
|
||||
req_access = list(access_mining)
|
||||
closet_appearance = /decl/closet_appearance/secure_closet/mining
|
||||
|
||||
starts_with = list(
|
||||
/obj/item/device/radio/headset/headset_mine,
|
||||
|
||||
@@ -1,12 +1,7 @@
|
||||
/obj/structure/closet/secure_closet/engineering_chief
|
||||
name = "chief engineer's locker"
|
||||
icon_state = "securece1"
|
||||
icon_closed = "securece"
|
||||
icon_locked = "securece1"
|
||||
icon_opened = "secureceopen"
|
||||
icon_broken = "securecebroken"
|
||||
icon_off = "secureceoff"
|
||||
req_access = list(access_ce)
|
||||
closet_appearance = /decl/closet_appearance/secure_closet/engineering/ce
|
||||
|
||||
starts_with = list(
|
||||
/obj/item/clothing/accessory/storage/brown_vest,
|
||||
@@ -46,13 +41,8 @@
|
||||
|
||||
/obj/structure/closet/secure_closet/engineering_electrical
|
||||
name = "electrical supplies"
|
||||
icon_state = "secureengelec1"
|
||||
icon_closed = "secureengelec"
|
||||
icon_locked = "secureengelec1"
|
||||
icon_opened = "toolclosetopen"
|
||||
icon_broken = "secureengelecbroken"
|
||||
icon_off = "secureengelecoff"
|
||||
req_access = list(access_engine_equip)
|
||||
closet_appearance = /decl/closet_appearance/secure_closet/engineering/electrical
|
||||
|
||||
starts_with = list(
|
||||
/obj/item/clothing/gloves/yellow = 2,
|
||||
@@ -63,13 +53,8 @@
|
||||
|
||||
/obj/structure/closet/secure_closet/engineering_welding
|
||||
name = "welding supplies"
|
||||
icon_state = "secureengweld1"
|
||||
icon_closed = "secureengweld"
|
||||
icon_locked = "secureengweld1"
|
||||
icon_opened = "toolclosetopen"
|
||||
icon_broken = "secureengweldbroken"
|
||||
icon_off = "secureengweldoff"
|
||||
req_access = list(access_construction)
|
||||
closet_appearance = /decl/closet_appearance/secure_closet/engineering/welding
|
||||
|
||||
starts_with = list(
|
||||
/obj/item/clothing/head/welding = 3,
|
||||
@@ -79,13 +64,8 @@
|
||||
|
||||
/obj/structure/closet/secure_closet/engineering_personal
|
||||
name = "engineer's locker"
|
||||
icon_state = "secureeng1"
|
||||
icon_closed = "secureeng"
|
||||
icon_locked = "secureeng1"
|
||||
icon_opened = "secureengopen"
|
||||
icon_broken = "secureengbroken"
|
||||
icon_off = "secureengoff"
|
||||
req_access = list(access_engine_equip)
|
||||
closet_appearance = /decl/closet_appearance/secure_closet/engineering
|
||||
|
||||
starts_with = list(
|
||||
/obj/item/clothing/accessory/storage/brown_vest,
|
||||
@@ -115,13 +95,8 @@
|
||||
|
||||
/obj/structure/closet/secure_closet/atmos_personal
|
||||
name = "technician's locker"
|
||||
icon_state = "secureatm1"
|
||||
icon_closed = "secureatm"
|
||||
icon_locked = "secureatm1"
|
||||
icon_opened = "secureatmopen"
|
||||
icon_broken = "secureatmbroken"
|
||||
icon_off = "secureatmoff"
|
||||
req_access = list(access_atmospherics)
|
||||
closet_appearance = /decl/closet_appearance/secure_closet/engineering/atmos
|
||||
|
||||
starts_with = list(
|
||||
/obj/item/clothing/accessory/storage/brown_vest,
|
||||
|
||||
@@ -1,20 +1,6 @@
|
||||
/obj/structure/closet/secure_closet/freezer
|
||||
|
||||
/obj/structure/closet/secure_closet/freezer/update_icon()
|
||||
if(broken)
|
||||
icon_state = icon_broken
|
||||
else
|
||||
if(!opened)
|
||||
if(locked)
|
||||
icon_state = icon_locked
|
||||
else
|
||||
icon_state = icon_closed
|
||||
else
|
||||
icon_state = icon_opened
|
||||
|
||||
/obj/structure/closet/secure_closet/freezer/kitchen
|
||||
name = "kitchen cabinet"
|
||||
req_access = list()
|
||||
req_access = list(access_kitchen)
|
||||
|
||||
starts_with = list(
|
||||
/obj/item/weapon/reagent_containers/food/condiment/flour = 7,
|
||||
@@ -26,12 +12,8 @@
|
||||
|
||||
/obj/structure/closet/secure_closet/freezer/meat
|
||||
name = "meat fridge"
|
||||
icon_state = "fridge1"
|
||||
icon_closed = "fridge"
|
||||
icon_locked = "fridge1"
|
||||
icon_opened = "fridgeopen"
|
||||
icon_broken = "fridgebroken"
|
||||
icon_off = "fridge1"
|
||||
icon = 'icons/obj/closets/fridge.dmi'
|
||||
closet_appearance = null
|
||||
|
||||
starts_with = list(
|
||||
/obj/item/weapon/reagent_containers/food/snacks/meat/monkey = 10)
|
||||
@@ -39,12 +21,8 @@
|
||||
|
||||
/obj/structure/closet/secure_closet/freezer/fridge
|
||||
name = "refrigerator"
|
||||
icon_state = "fridge1"
|
||||
icon_closed = "fridge"
|
||||
icon_locked = "fridge1"
|
||||
icon_opened = "fridgeopen"
|
||||
icon_broken = "fridgebroken"
|
||||
icon_off = "fridge1"
|
||||
icon = 'icons/obj/closets/fridge.dmi'
|
||||
closet_appearance = null
|
||||
|
||||
starts_with = list(
|
||||
/obj/item/weapon/reagent_containers/food/drinks/milk = 6,
|
||||
@@ -55,12 +33,8 @@
|
||||
|
||||
/obj/structure/closet/secure_closet/freezer/money
|
||||
name = "freezer"
|
||||
icon_state = "fridge1"
|
||||
icon_closed = "fridge"
|
||||
icon_locked = "fridge1"
|
||||
icon_opened = "fridgeopen"
|
||||
icon_broken = "fridgebroken"
|
||||
icon_off = "fridge1"
|
||||
icon = 'icons/obj/closets/fridge.dmi'
|
||||
closet_appearance = null
|
||||
req_access = list(access_heads_vault)
|
||||
|
||||
|
||||
|
||||
@@ -2,12 +2,8 @@
|
||||
name = "gun cabinet"
|
||||
icon = 'icons/obj/guncabinet.dmi'
|
||||
icon_state = "base"
|
||||
icon_off ="base"
|
||||
icon_broken ="base"
|
||||
icon_locked ="base"
|
||||
icon_closed ="base"
|
||||
icon_opened = "base"
|
||||
req_one_access = list(access_armory)
|
||||
closet_appearance = null
|
||||
|
||||
/obj/structure/closet/secure_closet/guncabinet/Initialize()
|
||||
. = ..()
|
||||
|
||||
@@ -1,12 +1,7 @@
|
||||
/obj/structure/closet/secure_closet/hydroponics
|
||||
name = "botanist's locker"
|
||||
req_access = list(access_hydroponics)
|
||||
icon_state = "hydrosecure1"
|
||||
icon_closed = "hydrosecure"
|
||||
icon_locked = "hydrosecure1"
|
||||
icon_opened = "hydrosecureopen"
|
||||
icon_broken = "hydrosecurebroken"
|
||||
icon_off = "hydrosecureoff"
|
||||
closet_appearance = /decl/closet_appearance/secure_closet/hydroponics
|
||||
|
||||
starts_with = list(
|
||||
/obj/item/weapon/storage/bag/plants,
|
||||
@@ -32,12 +27,7 @@
|
||||
/obj/structure/closet/secure_closet/hydroponics/sci
|
||||
name = "xenoflorist's locker"
|
||||
req_access = list(access_xenobiology)
|
||||
icon_state = "scihydrosecure1"
|
||||
icon_closed = "scihydrosecure"
|
||||
icon_locked = "scihydrosecure1"
|
||||
icon_opened = "scihydrosecureopen"
|
||||
icon_broken = "scihydrosecurebroken"
|
||||
icon_off = "scihydrosecureoff"
|
||||
closet_appearance = /decl/closet_appearance/secure_closet/hydroponics
|
||||
|
||||
/obj/structure/closet/secure_closet/hydroponics/sci/Initialize()
|
||||
starts_with += /obj/item/clothing/head/bio_hood/scientist
|
||||
|
||||
@@ -1,13 +1,8 @@
|
||||
/obj/structure/closet/secure_closet/medical1
|
||||
name = "medicine closet"
|
||||
desc = "Filled with medical junk."
|
||||
icon_state = "medical1"
|
||||
icon_closed = "medical"
|
||||
icon_locked = "medical1"
|
||||
icon_opened = "medicalopen"
|
||||
icon_broken = "medicalbroken"
|
||||
icon_off = "medicaloff"
|
||||
req_access = list(access_medical)
|
||||
closet_appearance = /decl/closet_appearance/secure_closet/medical
|
||||
|
||||
starts_with = list(
|
||||
/obj/item/weapon/storage/box/autoinjectors,
|
||||
@@ -21,12 +16,6 @@
|
||||
/obj/structure/closet/secure_closet/medical2
|
||||
name = "anesthetics closet"
|
||||
desc = "Used to knock people out."
|
||||
icon_state = "medical1"
|
||||
icon_closed = "medical"
|
||||
icon_locked = "medical1"
|
||||
icon_opened = "medicalopen"
|
||||
icon_broken = "medicalbroken"
|
||||
icon_off = "medicaloff"
|
||||
req_access = list(access_surgery)
|
||||
|
||||
starts_with = list(
|
||||
@@ -37,12 +26,7 @@
|
||||
/obj/structure/closet/secure_closet/medical3
|
||||
name = "medical doctor's locker"
|
||||
req_access = list(access_medical_equip)
|
||||
icon_state = "securemed1"
|
||||
icon_closed = "securemed"
|
||||
icon_locked = "securemed1"
|
||||
icon_opened = "securemedopen"
|
||||
icon_broken = "securemedbroken"
|
||||
icon_off = "securemedoff"
|
||||
closet_appearance = /decl/closet_appearance/secure_closet/medical/alt
|
||||
|
||||
starts_with = list(
|
||||
/obj/item/clothing/under/rank/medical,
|
||||
@@ -105,13 +89,8 @@
|
||||
/obj/structure/closet/secure_closet/paramedic
|
||||
name = "paramedic locker"
|
||||
desc = "Supplies for a first responder."
|
||||
icon_state = "medical1"
|
||||
icon_closed = "medical"
|
||||
icon_locked = "medical1"
|
||||
icon_opened = "medicalopen"
|
||||
icon_broken = "medicalbroken"
|
||||
icon_off = "medicaloff"
|
||||
req_access = list(access_medical_equip)
|
||||
closet_appearance = /decl/closet_appearance/secure_closet/medical
|
||||
|
||||
starts_with = list(
|
||||
/obj/item/weapon/storage/backpack/dufflebag/emt,
|
||||
@@ -141,12 +120,7 @@
|
||||
/obj/structure/closet/secure_closet/CMO
|
||||
name = "chief medical officer's locker"
|
||||
req_access = list(access_cmo)
|
||||
icon_state = "cmosecure1"
|
||||
icon_closed = "cmosecure"
|
||||
icon_locked = "cmosecure1"
|
||||
icon_opened = "cmosecureopen"
|
||||
icon_broken = "cmosecurebroken"
|
||||
icon_off = "cmosecureoff"
|
||||
closet_appearance = /decl/closet_appearance/secure_closet/cmo
|
||||
|
||||
starts_with = list(
|
||||
/obj/item/clothing/under/rank/chief_medical_officer,
|
||||
@@ -155,7 +129,7 @@
|
||||
/obj/item/clothing/suit/storage/toggle/labcoat/cmoalt,
|
||||
/obj/item/weapon/cartridge/cmo,
|
||||
/obj/item/clothing/gloves/sterile/latex,
|
||||
/obj/item/clothing/shoes/brown ,
|
||||
/obj/item/clothing/shoes/brown,
|
||||
/obj/item/device/radio/headset/heads/cmo,
|
||||
/obj/item/device/radio/headset/heads/cmo/alt,
|
||||
/obj/item/device/flash,
|
||||
@@ -208,13 +182,8 @@
|
||||
/obj/structure/closet/secure_closet/chemical
|
||||
name = "chemical closet"
|
||||
desc = "Store dangerous chemicals in here."
|
||||
icon_state = "medical1"
|
||||
icon_closed = "medical"
|
||||
icon_locked = "medical1"
|
||||
icon_opened = "medicalopen"
|
||||
icon_broken = "medicalbroken"
|
||||
icon_off = "medicaloff"
|
||||
req_access = list(access_chemistry)
|
||||
closet_appearance = /decl/closet_appearance/secure_closet/medical
|
||||
|
||||
starts_with = list(
|
||||
/obj/item/weapon/storage/box/pillbottles = 2,
|
||||
@@ -230,13 +199,8 @@
|
||||
/obj/structure/closet/secure_closet/psych
|
||||
name = "psychiatric closet"
|
||||
desc = "Store psychology tools and medicines in here."
|
||||
icon_state = "medical1"
|
||||
icon_closed = "medical"
|
||||
icon_locked = "medical1"
|
||||
icon_opened = "medicalopen"
|
||||
icon_broken = "medicalbroken"
|
||||
icon_off = "medicaloff"
|
||||
req_access = list(access_psychiatrist)
|
||||
closet_appearance = /decl/closet_appearance/secure_closet/medical/alt
|
||||
|
||||
starts_with = list(
|
||||
/obj/item/clothing/under/rank/psych,
|
||||
@@ -257,30 +221,13 @@
|
||||
/obj/structure/closet/secure_closet/medical_wall
|
||||
name = "first aid closet"
|
||||
desc = "It's a secure wall-mounted storage unit for first aid supplies."
|
||||
icon_state = "medical_wall_locked"
|
||||
icon_closed = "medical_wall_unlocked"
|
||||
icon_locked = "medical_wall_locked"
|
||||
icon_opened = "medical_wall_open"
|
||||
icon_broken = "medical_wall_spark"
|
||||
icon_off = "medical_wall_off"
|
||||
plane = TURF_PLANE
|
||||
layer = ABOVE_TURF_LAYER
|
||||
anchored = 1
|
||||
density = 0
|
||||
wall_mounted = 1
|
||||
req_access = list(access_medical_equip)
|
||||
|
||||
/obj/structure/closet/secure_closet/medical_wall/update_icon()
|
||||
if(broken)
|
||||
icon_state = icon_broken
|
||||
else
|
||||
if(!opened)
|
||||
if(locked)
|
||||
icon_state = icon_locked
|
||||
else
|
||||
icon_state = icon_closed
|
||||
else
|
||||
icon_state = icon_opened
|
||||
closet_appearance = /decl/closet_appearance/wall/medical
|
||||
|
||||
/obj/structure/closet/secure_closet/medical_wall/pills
|
||||
name = "pill cabinet"
|
||||
|
||||
@@ -28,30 +28,13 @@
|
||||
|
||||
|
||||
/obj/structure/closet/secure_closet/personal/cabinet
|
||||
icon_state = "cabinetdetective_locked"
|
||||
icon_closed = "cabinetdetective"
|
||||
icon_locked = "cabinetdetective_locked"
|
||||
icon_opened = "cabinetdetective_open"
|
||||
icon_broken = "cabinetdetective_broken"
|
||||
icon_off = "cabinetdetective_broken"
|
||||
closet_appearance = /decl/closet_appearance/cabinet/secure
|
||||
|
||||
starts_with = list(
|
||||
/obj/item/weapon/storage/backpack/satchel/withwallet,
|
||||
/obj/item/device/radio/headset
|
||||
)
|
||||
|
||||
/obj/structure/closet/secure_closet/personal/cabinet/update_icon()
|
||||
if(broken)
|
||||
icon_state = icon_broken
|
||||
else
|
||||
if(!opened)
|
||||
if(locked)
|
||||
icon_state = icon_locked
|
||||
else
|
||||
icon_state = icon_closed
|
||||
else
|
||||
icon_state = icon_opened
|
||||
|
||||
/obj/structure/closet/secure_closet/personal/attackby(obj/item/weapon/W as obj, mob/user as mob)
|
||||
if (src.opened)
|
||||
if (istype(W, /obj/item/weapon/grab))
|
||||
@@ -69,8 +52,6 @@
|
||||
if(src.allowed(user) || !src.registered_name || (istype(I) && (src.registered_name == I.registered_name)))
|
||||
//they can open all lockers, or nobody owns this, or they own this locker
|
||||
src.locked = !( src.locked )
|
||||
if(src.locked) src.icon_state = src.icon_locked
|
||||
else src.icon_state = src.icon_closed
|
||||
|
||||
if(!src.registered_name)
|
||||
src.registered_name = I.registered_name
|
||||
@@ -86,14 +67,14 @@
|
||||
playsound(src, "sparks", 50, 1)
|
||||
else
|
||||
to_chat(user, "<span class='warning'>Access Denied</span>")
|
||||
return
|
||||
update_icon()
|
||||
|
||||
/obj/structure/closet/secure_closet/personal/emag_act(var/remaining_charges, var/mob/user, var/visual_feedback, var/audible_feedback)
|
||||
if(!broken)
|
||||
broken = 1
|
||||
locked = 0
|
||||
desc = "It appears to be broken."
|
||||
icon_state = src.icon_broken
|
||||
update_icon()
|
||||
if(visual_feedback)
|
||||
visible_message("<span class='warning'>[visual_feedback]</span>", "<span class='warning'>[audible_feedback]</span>")
|
||||
return 1
|
||||
@@ -115,7 +96,6 @@
|
||||
if(!src.close())
|
||||
return
|
||||
src.locked = 1
|
||||
src.icon_state = src.icon_locked
|
||||
update_icon()
|
||||
src.registered_name = null
|
||||
src.desc = "It's a secure locker for personnel. The first card swiped gains control."
|
||||
return
|
||||
|
||||
@@ -1,12 +1,7 @@
|
||||
/obj/structure/closet/secure_closet/scientist
|
||||
name = "scientist's locker"
|
||||
icon_state = "secureres1"
|
||||
icon_closed = "secureres"
|
||||
icon_locked = "secureres1"
|
||||
icon_opened = "secureresopen"
|
||||
icon_broken = "secureresbroken"
|
||||
icon_off = "secureresoff"
|
||||
req_access = list(access_tox_storage)
|
||||
closet_appearance = /decl/closet_appearance/secure_closet/expedition/science
|
||||
|
||||
starts_with = list(
|
||||
/obj/item/clothing/under/rank/scientist,
|
||||
@@ -28,13 +23,8 @@
|
||||
|
||||
/obj/structure/closet/secure_closet/RD
|
||||
name = "research director's locker"
|
||||
icon_state = "rdsecure1"
|
||||
icon_closed = "rdsecure"
|
||||
icon_locked = "rdsecure1"
|
||||
icon_opened = "rdsecureopen"
|
||||
icon_broken = "rdsecurebroken"
|
||||
icon_off = "rdsecureoff"
|
||||
req_access = list(access_rd)
|
||||
closet_appearance = /decl/closet_appearance/secure_closet/rd
|
||||
|
||||
starts_with = list(
|
||||
/obj/item/clothing/suit/bio_suit/scientist,
|
||||
@@ -55,3 +45,38 @@
|
||||
/obj/item/clothing/suit/storage/hooded/wintercoat/science,
|
||||
/obj/item/clothing/shoes/boots/winter/science,
|
||||
/obj/item/weapon/bluespace_harpoon) //VOREStation Add
|
||||
|
||||
/obj/structure/closet/secure_closet/xenoarchaeologist
|
||||
name = "Xenoarchaeologist Locker"
|
||||
req_access = list(access_tox_storage)
|
||||
closet_appearance = /decl/closet_appearance/secure_closet/expedition/science
|
||||
|
||||
starts_with = list(
|
||||
/obj/item/clothing/under/rank/scientist,
|
||||
/obj/item/clothing/suit/storage/toggle/labcoat,
|
||||
/obj/item/clothing/shoes/white,
|
||||
/obj/item/weapon/melee/umbrella, // vorestation addition,
|
||||
/obj/item/clothing/glasses/science,
|
||||
/obj/item/device/radio/headset/headset_sci,
|
||||
/obj/item/weapon/storage/belt/archaeology,
|
||||
/obj/item/weapon/storage/excavation)
|
||||
|
||||
/obj/structure/closet/excavation
|
||||
name = "Excavation tools"
|
||||
|
||||
starts_with = list(
|
||||
/obj/item/weapon/storage/belt/archaeology,
|
||||
/obj/item/weapon/storage/excavation,
|
||||
/obj/item/device/flashlight/lantern,
|
||||
/obj/item/device/ano_scanner,
|
||||
/obj/item/device/depth_scanner,
|
||||
/obj/item/device/core_sampler,
|
||||
/obj/item/device/gps,
|
||||
/obj/item/device/beacon_locator,
|
||||
/obj/item/device/radio/beacon,
|
||||
/obj/item/clothing/glasses/meson,
|
||||
/obj/item/weapon/pickaxe,
|
||||
/obj/item/device/measuring_tape,
|
||||
/obj/item/weapon/pickaxe/hand,
|
||||
/obj/item/weapon/storage/bag/fossils,
|
||||
/obj/item/weapon/hand_labeler)
|
||||
@@ -8,54 +8,43 @@
|
||||
var/locked = 1
|
||||
var/broken = 0
|
||||
var/large = 1
|
||||
icon_closed = "secure"
|
||||
var/icon_locked = "secure1"
|
||||
icon_opened = "secureopen"
|
||||
var/icon_broken = "securebroken"
|
||||
var/icon_off = "secureoff"
|
||||
wall_mounted = 0 //never solid (You can always pass over it)
|
||||
health = 200
|
||||
|
||||
closet_appearance = /decl/closet_appearance/secure_closet
|
||||
|
||||
/obj/structure/closet/secure_closet/can_open()
|
||||
if(src.locked)
|
||||
if(locked)
|
||||
return 0
|
||||
return ..()
|
||||
|
||||
/obj/structure/closet/secure_closet/close()
|
||||
if(..())
|
||||
if(broken)
|
||||
icon_state = src.icon_off
|
||||
return 1
|
||||
else
|
||||
return 0
|
||||
|
||||
/obj/structure/closet/secure_closet/emp_act(severity)
|
||||
for(var/obj/O in src)
|
||||
O.emp_act(severity)
|
||||
if(!broken)
|
||||
if(prob(50/severity))
|
||||
src.locked = !src.locked
|
||||
src.update_icon()
|
||||
locked = !locked
|
||||
update_icon()
|
||||
if(prob(20/severity) && !opened)
|
||||
if(!locked)
|
||||
open()
|
||||
else
|
||||
src.req_access = list()
|
||||
src.req_access += pick(get_all_station_access())
|
||||
req_access = list()
|
||||
req_access += pick(get_all_station_access())
|
||||
..()
|
||||
|
||||
/obj/structure/closet/secure_closet/proc/togglelock(mob/user as mob)
|
||||
if(src.opened)
|
||||
if(opened)
|
||||
to_chat(user, "<span class='notice'>Close the locker first.</span>")
|
||||
return
|
||||
if(src.broken)
|
||||
if(broken)
|
||||
to_chat(user, "<span class='warning'>The locker appears to be broken.</span>")
|
||||
return
|
||||
if(user.loc == src)
|
||||
to_chat(user, "<span class='notice'>You can't reach the lock from inside.</span>")
|
||||
return
|
||||
if(src.allowed(user))
|
||||
src.locked = !src.locked
|
||||
if(allowed(user))
|
||||
locked = !locked
|
||||
playsound(src, 'sound/machines/click.ogg', 15, 1, -3)
|
||||
for(var/mob/O in viewers(user, 3))
|
||||
if((O.client && !( O.blinded )))
|
||||
@@ -65,13 +54,13 @@
|
||||
to_chat(user, "<span class='notice'>Access Denied</span>")
|
||||
|
||||
/obj/structure/closet/secure_closet/attackby(obj/item/weapon/W as obj, mob/user as mob)
|
||||
if(src.opened)
|
||||
if(opened)
|
||||
if(istype(W, /obj/item/weapon/storage/laundry_basket))
|
||||
return ..(W,user)
|
||||
if(istype(W, /obj/item/weapon/grab))
|
||||
var/obj/item/weapon/grab/G = W
|
||||
if(src.large)
|
||||
src.MouseDrop_T(G.affecting, user) //act like they were dragged onto the closet
|
||||
if(large)
|
||||
MouseDrop_T(G.affecting, user) //act like they were dragged onto the closet
|
||||
else
|
||||
to_chat(user, "<span class='notice'>The locker is too small to stuff [G.affecting] into!</span>")
|
||||
if(isrobot(user))
|
||||
@@ -80,11 +69,11 @@
|
||||
return
|
||||
user.drop_item()
|
||||
if(W)
|
||||
W.forceMove(src.loc)
|
||||
W.forceMove(loc)
|
||||
else if(istype(W, /obj/item/weapon/melee/energy/blade))
|
||||
if(emag_act(INFINITY, user, "<span class='danger'>The locker has been sliced open by [user] with \an [W]</span>!", "<span class='danger'>You hear metal being sliced and sparks flying.</span>"))
|
||||
var/datum/effect/effect/system/spark_spread/spark_system = new /datum/effect/effect/system/spark_spread()
|
||||
spark_system.set_up(5, 0, src.loc)
|
||||
spark_system.set_up(5, 0, loc)
|
||||
spark_system.start()
|
||||
playsound(src, 'sound/weapons/blade1.ogg', 50, 1)
|
||||
playsound(src, "sparks", 50, 1)
|
||||
@@ -109,8 +98,6 @@
|
||||
broken = 1
|
||||
locked = 0
|
||||
desc = "It appears to be broken."
|
||||
icon_state = icon_off
|
||||
flick(icon_broken, src)
|
||||
|
||||
if(visual_feedback)
|
||||
visible_message(visual_feedback, audible_feedback)
|
||||
@@ -118,14 +105,15 @@
|
||||
visible_message("<span class='warning'>\The [src] has been broken by \the [user] with \an [emag_source]!</span>", "You hear a faint electrical spark.")
|
||||
else
|
||||
visible_message("<span class='warning'>\The [src] sparks and breaks open!</span>", "You hear a faint electrical spark.")
|
||||
update_icon()
|
||||
return 1
|
||||
|
||||
/obj/structure/closet/secure_closet/attack_hand(mob/user as mob)
|
||||
src.add_fingerprint(user)
|
||||
if(src.locked)
|
||||
src.togglelock(user)
|
||||
add_fingerprint(user)
|
||||
if(locked)
|
||||
togglelock(user)
|
||||
else
|
||||
src.toggle(user)
|
||||
toggle(user)
|
||||
|
||||
/obj/structure/closet/secure_closet/AltClick()
|
||||
..()
|
||||
@@ -140,25 +128,22 @@
|
||||
return
|
||||
|
||||
if(ishuman(usr) || isrobot(usr))
|
||||
src.add_fingerprint(usr)
|
||||
src.togglelock(usr)
|
||||
add_fingerprint(usr)
|
||||
togglelock(usr)
|
||||
else
|
||||
to_chat(usr, "<span class='warning'>This mob type can't use this verb.</span>")
|
||||
|
||||
/obj/structure/closet/secure_closet/update_icon()//Putting the sealed stuff in updateicon() so it's easy to overwrite for special cases (Fridges, cabinets, and whatnot)
|
||||
overlays.Cut()
|
||||
|
||||
if(!opened)
|
||||
if(broken)
|
||||
icon_state = icon_off
|
||||
else if(locked)
|
||||
icon_state = icon_locked
|
||||
else
|
||||
icon_state = icon_closed
|
||||
if(sealed)
|
||||
overlays += "sealed"
|
||||
/obj/structure/closet/secure_closet/update_icon()
|
||||
if(opened)
|
||||
icon_state = "open"
|
||||
else
|
||||
icon_state = icon_opened
|
||||
if(broken)
|
||||
icon_state = "closed_emagged[sealed ? "_welded" : ""]"
|
||||
else
|
||||
if(locked)
|
||||
icon_state = "closed_locked[sealed ? "_welded" : ""]"
|
||||
else
|
||||
icon_state = "closed_unlocked[sealed ? "_welded" : ""]"
|
||||
|
||||
/obj/structure/closet/secure_closet/req_breakout()
|
||||
if(!opened && locked) return 1
|
||||
|
||||
@@ -1,12 +1,7 @@
|
||||
/obj/structure/closet/secure_closet/captains
|
||||
name = "colony director's locker"
|
||||
icon_state = "capsecure1"
|
||||
icon_closed = "capsecure"
|
||||
icon_locked = "capsecure1"
|
||||
icon_opened = "capsecureopen"
|
||||
icon_broken = "capsecurebroken"
|
||||
icon_off = "capsecureoff"
|
||||
req_access = list(access_captain)
|
||||
closet_appearance = /decl/closet_appearance/secure_closet/command
|
||||
|
||||
starts_with = list(
|
||||
/obj/item/weapon/storage/backpack/dufflebag/captain,
|
||||
@@ -24,13 +19,8 @@
|
||||
|
||||
/obj/structure/closet/secure_closet/hop
|
||||
name = "head of personnel's locker"
|
||||
icon_state = "hopsecure1"
|
||||
icon_closed = "hopsecure"
|
||||
icon_locked = "hopsecure1"
|
||||
icon_opened = "hopsecureopen"
|
||||
icon_broken = "hopsecurebroken"
|
||||
icon_off = "hopsecureoff"
|
||||
req_access = list(access_hop)
|
||||
closet_appearance = /decl/closet_appearance/secure_closet/command/hop
|
||||
|
||||
starts_with = list(
|
||||
/obj/item/clothing/suit/storage/vest,
|
||||
@@ -48,13 +38,8 @@
|
||||
|
||||
/obj/structure/closet/secure_closet/hop2
|
||||
name = "head of personnel's attire"
|
||||
icon_state = "hopsecure1"
|
||||
icon_closed = "hopsecure"
|
||||
icon_locked = "hopsecure1"
|
||||
icon_opened = "hopsecureopen"
|
||||
icon_broken = "hopsecurebroken"
|
||||
icon_off = "hopsecureoff"
|
||||
req_access = list(access_hop)
|
||||
closet_appearance = /decl/closet_appearance/secure_closet/command/hop
|
||||
|
||||
starts_with = list(
|
||||
/obj/item/clothing/under/rank/head_of_personnel,
|
||||
@@ -80,14 +65,9 @@
|
||||
/obj/structure/closet/secure_closet/hos
|
||||
name = "head of security's locker"
|
||||
req_access = list(access_hos)
|
||||
icon_state = "hossecure1"
|
||||
icon_closed = "hossecure"
|
||||
icon_locked = "hossecure1"
|
||||
icon_opened = "hossecureopen"
|
||||
icon_broken = "hossecurebroken"
|
||||
icon_off = "hossecureoff"
|
||||
req_access = list(access_hos)
|
||||
storage_capacity = 2.5 * MOB_MEDIUM
|
||||
closet_appearance = /decl/closet_appearance/secure_closet/security/hos
|
||||
|
||||
starts_with = list(
|
||||
/obj/item/clothing/head/helmet/HoS,
|
||||
@@ -136,13 +116,8 @@
|
||||
|
||||
/obj/structure/closet/secure_closet/warden
|
||||
name = "warden's locker"
|
||||
icon_state = "wardensecure1"
|
||||
icon_closed = "wardensecure"
|
||||
icon_locked = "wardensecure1"
|
||||
icon_opened = "wardensecureopen"
|
||||
icon_broken = "wardensecurebroken"
|
||||
icon_off = "wardensecureoff"
|
||||
req_access = list(access_armory)
|
||||
closet_appearance = /decl/closet_appearance/secure_closet/security/warden
|
||||
|
||||
starts_with = list(
|
||||
/obj/item/clothing/suit/storage/vest/warden,
|
||||
@@ -185,13 +160,8 @@
|
||||
|
||||
/obj/structure/closet/secure_closet/security
|
||||
name = "security officer's locker"
|
||||
icon_state = "sec1"
|
||||
icon_closed = "sec"
|
||||
icon_locked = "sec1"
|
||||
icon_opened = "secopen"
|
||||
icon_broken = "secbroken"
|
||||
icon_off = "secoff"
|
||||
req_access = list(access_brig)
|
||||
closet_appearance = /decl/closet_appearance/secure_closet/security
|
||||
|
||||
starts_with = list(
|
||||
/obj/item/clothing/suit/storage/vest/officer,
|
||||
@@ -252,13 +222,8 @@
|
||||
|
||||
/obj/structure/closet/secure_closet/detective
|
||||
name = "detective's cabinet"
|
||||
icon_state = "cabinetdetective_locked"
|
||||
icon_closed = "cabinetdetective"
|
||||
icon_locked = "cabinetdetective_locked"
|
||||
icon_opened = "cabinetdetective_open"
|
||||
icon_broken = "cabinetdetective_broken"
|
||||
icon_off = "cabinetdetective_broken"
|
||||
req_access = list(access_forensics_lockers)
|
||||
closet_appearance = /decl/closet_appearance/cabinet/secure
|
||||
|
||||
starts_with = list(
|
||||
/obj/item/clothing/accessory/badge/holo/detective,
|
||||
@@ -278,19 +243,6 @@
|
||||
/obj/item/weapon/storage/bag/detective,
|
||||
/obj/item/device/tape/random = 3)
|
||||
|
||||
/obj/structure/closet/secure_closet/detective/update_icon()
|
||||
if(broken)
|
||||
icon_state = icon_broken
|
||||
else
|
||||
if(!opened)
|
||||
if(locked)
|
||||
icon_state = icon_locked
|
||||
else
|
||||
icon_state = icon_closed
|
||||
else
|
||||
icon_state = icon_opened
|
||||
|
||||
|
||||
/obj/structure/closet/secure_closet/injection
|
||||
name = "lethal injections locker"
|
||||
req_access = list(access_captain)
|
||||
@@ -337,26 +289,9 @@ GLOBAL_LIST_BOILERPLATE(all_brig_closets, /obj/structure/closet/secure_closet/br
|
||||
|
||||
/obj/structure/closet/secure_closet/wall
|
||||
name = "wall locker"
|
||||
icon_state = "wall-locker1"
|
||||
icon_closed = "wall-locker"
|
||||
icon_locked = "wall-locker1"
|
||||
icon_opened = "wall-lockeropen"
|
||||
icon_broken = "wall-lockerbroken"
|
||||
icon_off = "wall-lockeroff"
|
||||
req_access = list(access_security)
|
||||
closet_appearance = /decl/closet_appearance/wall
|
||||
density = 1
|
||||
|
||||
//too small to put a man in
|
||||
large = 0
|
||||
|
||||
/obj/structure/closet/secure_closet/wall/update_icon()
|
||||
if(broken)
|
||||
icon_state = icon_broken
|
||||
else
|
||||
if(!opened)
|
||||
if(locked)
|
||||
icon_state = icon_locked
|
||||
else
|
||||
icon_state = icon_closed
|
||||
else
|
||||
icon_state = icon_opened
|
||||
|
||||
@@ -1,9 +1,7 @@
|
||||
/obj/structure/closet/syndicate
|
||||
name = "armory closet"
|
||||
desc = "Why is this here?"
|
||||
icon_state = "syndicate"
|
||||
icon_closed = "syndicate"
|
||||
icon_opened = "syndicateopen"
|
||||
closet_appearance = /decl/closet_appearance/tactical/alt
|
||||
|
||||
/obj/structure/closet/syndicate/personal
|
||||
desc = "It's a storage unit for operative gear."
|
||||
|
||||
@@ -15,9 +15,7 @@
|
||||
/obj/structure/closet/emcloset
|
||||
name = "emergency closet"
|
||||
desc = "It's a storage unit for emergency breathmasks and O2 tanks."
|
||||
icon_state = "emergency"
|
||||
icon_closed = "emergency"
|
||||
icon_opened = "emergencyopen"
|
||||
closet_appearance = /decl/closet_appearance/oxygen
|
||||
|
||||
/obj/structure/closet/emcloset/Initialize()
|
||||
switch (pickweight(list("small" = 55, "aid" = 25, "tank" = 10, "both" = 10)))
|
||||
@@ -64,9 +62,7 @@
|
||||
/obj/structure/closet/firecloset
|
||||
name = "fire-safety closet"
|
||||
desc = "It's a storage unit for fire-fighting supplies."
|
||||
icon_state = "firecloset"
|
||||
icon_closed = "firecloset"
|
||||
icon_opened = "fireclosetopen"
|
||||
closet_appearance = /decl/closet_appearance/oxygen/fire
|
||||
|
||||
starts_with = list(
|
||||
/obj/item/clothing/suit/fire/firefighter,
|
||||
@@ -93,21 +89,13 @@
|
||||
/obj/item/weapon/extinguisher = 2,
|
||||
/obj/item/clothing/head/hardhat/red = 2)
|
||||
|
||||
/obj/structure/closet/firecloset/update_icon()
|
||||
if(!opened)
|
||||
icon_state = icon_closed
|
||||
else
|
||||
icon_state = icon_opened
|
||||
|
||||
/*
|
||||
* Tool Closet
|
||||
*/
|
||||
/obj/structure/closet/toolcloset
|
||||
name = "tool closet"
|
||||
desc = "It's a storage unit for tools."
|
||||
icon_state = "toolcloset"
|
||||
icon_closed = "toolcloset"
|
||||
icon_opened = "toolclosetopen"
|
||||
closet_appearance = /decl/closet_appearance/secure_closet/engineering/tools
|
||||
|
||||
/obj/structure/closet/toolcloset/Initialize()
|
||||
starts_with = list()
|
||||
@@ -151,9 +139,7 @@
|
||||
/obj/structure/closet/radiation
|
||||
name = "radiation suit closet"
|
||||
desc = "It's a storage unit for rad-protective suits."
|
||||
icon_state = "radsuitcloset"
|
||||
icon_opened = "toolclosetopen"
|
||||
icon_closed = "radsuitcloset"
|
||||
closet_appearance = /decl/closet_appearance/secure_closet/engineering/tools/radiation
|
||||
|
||||
starts_with = list(
|
||||
/obj/item/clothing/suit/radiation = 2,
|
||||
@@ -166,9 +152,7 @@
|
||||
/obj/structure/closet/bombcloset
|
||||
name = "\improper EOD closet"
|
||||
desc = "It's a storage unit for explosion-protective suits."
|
||||
icon_state = "bombsuit"
|
||||
icon_closed = "bombsuit"
|
||||
icon_opened = "bombsuitopen"
|
||||
closet_appearance = /decl/closet_appearance/bomb
|
||||
|
||||
starts_with = list(
|
||||
/obj/item/clothing/suit/bomb_suit,
|
||||
@@ -186,9 +170,7 @@
|
||||
/obj/structure/closet/bombclosetsecurity
|
||||
name = "\improper EOD closet"
|
||||
desc = "It's a storage unit for explosion-protective suits."
|
||||
icon_state = "bombsuitsec"
|
||||
icon_closed = "bombsuitsec"
|
||||
icon_opened = "bombsuitsecopen"
|
||||
closet_appearance = /decl/closet_appearance/bomb/security
|
||||
|
||||
starts_with = list(
|
||||
/obj/item/clothing/suit/bomb_suit/security,
|
||||
@@ -202,9 +184,7 @@
|
||||
/obj/structure/closet/hydrant //wall mounted fire closet
|
||||
name = "fire-safety closet"
|
||||
desc = "It's a storage unit for fire-fighting supplies."
|
||||
icon_state = "hydrant"
|
||||
icon_closed = "hydrant"
|
||||
icon_opened = "hydrant_open"
|
||||
closet_appearance = /decl/closet_appearance/wall/hydrant
|
||||
plane = TURF_PLANE
|
||||
layer = ABOVE_TURF_LAYER
|
||||
anchored = 1
|
||||
@@ -225,15 +205,7 @@
|
||||
/obj/structure/closet/medical_wall //wall mounted medical closet
|
||||
name = "first-aid closet"
|
||||
desc = "It's wall-mounted storage unit for first aid supplies."
|
||||
icon_state = "medical_wall"
|
||||
icon_closed = "medical_wall"
|
||||
icon_opened = "medical_wall_open"
|
||||
closet_appearance = /decl/closet_appearance/wall/medical
|
||||
anchored = 1
|
||||
density = 0
|
||||
wall_mounted = 1
|
||||
|
||||
/obj/structure/closet/medical_wall/update_icon()
|
||||
if(!opened)
|
||||
icon_state = icon_closed
|
||||
else
|
||||
icon_state = icon_opened
|
||||
|
||||
@@ -4,12 +4,9 @@
|
||||
/obj/structure/closet/walllocker
|
||||
desc = "A wall mounted storage locker."
|
||||
name = "Wall Locker"
|
||||
icon = 'icons/obj/walllocker.dmi'
|
||||
icon_state = "wall-locker"
|
||||
closet_appearance = /decl/closet_appearance/wall
|
||||
density = 0
|
||||
anchored = 1
|
||||
icon_closed = "wall-locker"
|
||||
icon_opened = "wall-lockeropen"
|
||||
|
||||
//spawns endless (3 sets) amounts of breathmask, emergency oxy tank and crowbar
|
||||
|
||||
@@ -18,9 +15,7 @@
|
||||
desc = "A wall mounted locker with emergency supplies."
|
||||
var/list/spawnitems = list(/obj/item/weapon/tank/emergency/oxygen,/obj/item/clothing/mask/breath,/obj/item/weapon/tool/crowbar/red)
|
||||
var/amount = 2 // spawns each items X times.
|
||||
icon_state = "emerg"
|
||||
icon_closed = "emerg"
|
||||
icon_opened = "emerg_open"
|
||||
closet_appearance = /decl/closet_appearance/wall/emergency
|
||||
|
||||
/obj/structure/closet/walllocker/emerglocker/toggle(mob/user as mob)
|
||||
src.attack_hand(user)
|
||||
|
||||
@@ -1,13 +1,11 @@
|
||||
/obj/structure/closet/wardrobe
|
||||
name = "wardrobe"
|
||||
desc = "It's a storage unit for standard-issue attire."
|
||||
icon_state = "blue"
|
||||
icon_closed = "blue"
|
||||
closet_appearance = /decl/closet_appearance/wardrobe
|
||||
|
||||
/obj/structure/closet/wardrobe/red
|
||||
name = "security wardrobe"
|
||||
icon_state = "red"
|
||||
icon_closed = "red"
|
||||
closet_appearance = /decl/closet_appearance/wardrobe/red
|
||||
|
||||
starts_with = list(
|
||||
/obj/item/clothing/under/rank/security = 3,
|
||||
@@ -41,9 +39,7 @@
|
||||
|
||||
/obj/structure/closet/wardrobe/detective
|
||||
name = "detective wardrobe"
|
||||
icon_state = "cabinet_closed"
|
||||
icon_closed = "cabinet_closed"
|
||||
icon_opened = "cabinet_open"
|
||||
closet_appearance = /decl/closet_appearance/cabinet
|
||||
|
||||
starts_with = list(
|
||||
/obj/item/clothing/head/det = 2,
|
||||
@@ -64,17 +60,15 @@
|
||||
|
||||
/obj/structure/closet/wardrobe/pink
|
||||
name = "pink wardrobe"
|
||||
icon_state = "pink"
|
||||
icon_closed = "pink"
|
||||
|
||||
closet_appearance = /decl/closet_appearance/wardrobe/pink
|
||||
|
||||
starts_with = list(
|
||||
/obj/item/clothing/under/color/pink = 3,
|
||||
/obj/item/clothing/shoes/brown = 3)
|
||||
|
||||
/obj/structure/closet/wardrobe/black
|
||||
name = "black wardrobe"
|
||||
icon_state = "black"
|
||||
icon_closed = "black"
|
||||
closet_appearance = /decl/closet_appearance/wardrobe/black
|
||||
|
||||
starts_with = list(
|
||||
/obj/item/clothing/under/color/black = 3,
|
||||
@@ -88,8 +82,7 @@
|
||||
/obj/structure/closet/wardrobe/chaplain_black
|
||||
name = "chapel wardrobe"
|
||||
desc = "It's a storage unit for approved religious attire."
|
||||
icon_state = "black"
|
||||
icon_closed = "black"
|
||||
closet_appearance = /decl/closet_appearance/wardrobe/black
|
||||
|
||||
starts_with = list(
|
||||
/obj/item/clothing/under/rank/chaplain,
|
||||
@@ -110,8 +103,7 @@
|
||||
|
||||
/obj/structure/closet/wardrobe/green
|
||||
name = "green wardrobe"
|
||||
icon_state = "green"
|
||||
icon_closed = "green"
|
||||
closet_appearance = /decl/closet_appearance/wardrobe/green
|
||||
|
||||
starts_with = list(
|
||||
/obj/item/clothing/under/color/green = 3,
|
||||
@@ -121,8 +113,7 @@
|
||||
|
||||
/obj/structure/closet/wardrobe/xenos
|
||||
name = "xenos wardrobe"
|
||||
icon_state = "green"
|
||||
icon_closed = "green"
|
||||
closet_appearance = /decl/closet_appearance/wardrobe/green
|
||||
|
||||
starts_with = list(
|
||||
/obj/item/clothing/suit/unathi/mantle,
|
||||
@@ -136,8 +127,7 @@
|
||||
/obj/structure/closet/wardrobe/orange
|
||||
name = "prison wardrobe"
|
||||
desc = "It's a storage unit for regulation prisoner attire."
|
||||
icon_state = "orange"
|
||||
icon_closed = "orange"
|
||||
closet_appearance = /decl/closet_appearance/wardrobe/orange
|
||||
|
||||
starts_with = list(
|
||||
/obj/item/clothing/under/color/prison = 3,
|
||||
@@ -146,8 +136,7 @@
|
||||
|
||||
/obj/structure/closet/wardrobe/yellow
|
||||
name = "yellow wardrobe"
|
||||
icon_state = "yellow"
|
||||
icon_closed = "yellow"
|
||||
closet_appearance = /decl/closet_appearance/wardrobe/yellow
|
||||
|
||||
starts_with = list(
|
||||
/obj/item/clothing/under/color/yellow = 3,
|
||||
@@ -158,8 +147,7 @@
|
||||
|
||||
/obj/structure/closet/wardrobe/atmospherics_yellow
|
||||
name = "atmospherics wardrobe"
|
||||
icon_state = "yellow"
|
||||
icon_closed = "yellow"
|
||||
closet_appearance = /decl/closet_appearance/wardrobe/yellow
|
||||
|
||||
starts_with = list(
|
||||
/obj/item/clothing/under/rank/atmospheric_technician = 3,
|
||||
@@ -173,8 +161,7 @@
|
||||
|
||||
/obj/structure/closet/wardrobe/engineering_yellow
|
||||
name = "engineering wardrobe"
|
||||
icon_state = "yellow"
|
||||
icon_closed = "yellow"
|
||||
closet_appearance = /decl/closet_appearance/wardrobe/yellow
|
||||
|
||||
starts_with = list(
|
||||
/obj/item/clothing/under/rank/engineer = 3,
|
||||
@@ -191,8 +178,7 @@
|
||||
|
||||
/obj/structure/closet/wardrobe/white
|
||||
name = "white wardrobe"
|
||||
icon_state = "white"
|
||||
icon_closed = "white"
|
||||
closet_appearance = /decl/closet_appearance/wardrobe/white
|
||||
|
||||
starts_with = list(
|
||||
/obj/item/clothing/under/color/white = 3,
|
||||
@@ -202,8 +188,7 @@
|
||||
|
||||
/obj/structure/closet/wardrobe/pjs
|
||||
name = "pajama wardrobe"
|
||||
icon_state = "white"
|
||||
icon_closed = "white"
|
||||
closet_appearance = /decl/closet_appearance/wardrobe/white
|
||||
|
||||
starts_with = list(
|
||||
/obj/item/clothing/under/pj/red = 2,
|
||||
@@ -214,8 +199,7 @@
|
||||
|
||||
/obj/structure/closet/wardrobe/science_white
|
||||
name = "science wardrobe"
|
||||
icon_state = "white"
|
||||
icon_closed = "white"
|
||||
closet_appearance = /decl/closet_appearance/wardrobe/white
|
||||
|
||||
starts_with = list(
|
||||
/obj/item/clothing/under/rank/scientist = 3,
|
||||
@@ -244,8 +228,7 @@
|
||||
|
||||
/obj/structure/closet/wardrobe/robotics_black
|
||||
name = "robotics wardrobe"
|
||||
icon_state = "black"
|
||||
icon_closed = "black"
|
||||
closet_appearance = /decl/closet_appearance/wardrobe/black
|
||||
|
||||
starts_with = list(
|
||||
/obj/item/clothing/under/rank/roboticist = 2,
|
||||
@@ -266,8 +249,7 @@
|
||||
|
||||
/obj/structure/closet/wardrobe/chemistry_white
|
||||
name = "chemistry wardrobe"
|
||||
icon_state = "white"
|
||||
icon_closed = "white"
|
||||
closet_appearance = /decl/closet_appearance/wardrobe/white
|
||||
|
||||
starts_with = list(
|
||||
/obj/item/clothing/under/rank/chemist = 2,
|
||||
@@ -281,8 +263,7 @@
|
||||
|
||||
/obj/structure/closet/wardrobe/genetics_white
|
||||
name = "genetics wardrobe"
|
||||
icon_state = "white"
|
||||
icon_closed = "white"
|
||||
closet_appearance = /decl/closet_appearance/wardrobe/white
|
||||
|
||||
starts_with = list(
|
||||
/obj/item/clothing/under/rank/geneticist = 2,
|
||||
@@ -295,8 +276,7 @@
|
||||
|
||||
/obj/structure/closet/wardrobe/virology_white
|
||||
name = "virology wardrobe"
|
||||
icon_state = "white"
|
||||
icon_closed = "white"
|
||||
closet_appearance = /decl/closet_appearance/wardrobe/white
|
||||
|
||||
starts_with = list(
|
||||
/obj/item/clothing/under/rank/virologist = 2,
|
||||
@@ -310,8 +290,7 @@
|
||||
|
||||
/obj/structure/closet/wardrobe/medic_white
|
||||
name = "medical wardrobe"
|
||||
icon_state = "white"
|
||||
icon_closed = "white"
|
||||
closet_appearance = /decl/closet_appearance/wardrobe/white
|
||||
|
||||
starts_with = list(
|
||||
/obj/item/clothing/under/rank/medical = 2,
|
||||
@@ -336,8 +315,7 @@
|
||||
|
||||
/obj/structure/closet/wardrobe/medic_gown
|
||||
name = "cloning wardrobe"
|
||||
icon_state = "white"
|
||||
icon_closed = "white"
|
||||
closet_appearance = /decl/closet_appearance/wardrobe/white
|
||||
|
||||
starts_with = list(
|
||||
/obj/item/clothing/under/medigown = 4)
|
||||
@@ -345,8 +323,7 @@
|
||||
|
||||
/obj/structure/closet/wardrobe/grey
|
||||
name = "grey wardrobe"
|
||||
icon_state = "grey"
|
||||
icon_closed = "grey"
|
||||
closet_appearance = /decl/closet_appearance/wardrobe/grey
|
||||
|
||||
starts_with = list(
|
||||
/obj/item/clothing/under/color/grey = 3,
|
||||
@@ -356,8 +333,7 @@
|
||||
|
||||
/obj/structure/closet/wardrobe/mixed
|
||||
name = "mixed wardrobe"
|
||||
icon_state = "mixed"
|
||||
icon_closed = "mixed"
|
||||
closet_appearance = /decl/closet_appearance/wardrobe/mixed
|
||||
|
||||
starts_with = list(
|
||||
/obj/item/clothing/under/color/blue,
|
||||
@@ -393,9 +369,7 @@
|
||||
|
||||
/obj/structure/closet/wardrobe/tactical
|
||||
name = "tactical equipment"
|
||||
icon_state = "syndicate1"
|
||||
icon_closed = "syndicate1"
|
||||
icon_opened = "syndicate1open"
|
||||
closet_appearance = /decl/closet_appearance/tactical
|
||||
|
||||
starts_with = list(
|
||||
/obj/item/clothing/under/tactical,
|
||||
@@ -420,9 +394,7 @@
|
||||
|
||||
/obj/structure/closet/wardrobe/ert
|
||||
name = "emergency response team equipment"
|
||||
icon_state = "syndicate1"
|
||||
icon_closed = "syndicate1"
|
||||
icon_opened = "syndicate1open"
|
||||
closet_appearance = /decl/closet_appearance/tactical
|
||||
|
||||
starts_with = list(
|
||||
/obj/item/clothing/under/rank/centcom,
|
||||
@@ -439,8 +411,7 @@
|
||||
|
||||
/obj/structure/closet/wardrobe/suit
|
||||
name = "suit locker"
|
||||
icon_state = "mixed"
|
||||
icon_closed = "mixed"
|
||||
closet_appearance = /decl/closet_appearance/wardrobe/mixed
|
||||
|
||||
starts_with = list(
|
||||
/obj/item/clothing/under/assistantformal,
|
||||
@@ -468,9 +439,7 @@
|
||||
|
||||
/obj/structure/closet/wardrobe/captain
|
||||
name = "colony director's wardrobe"
|
||||
icon_state = "cabinet_closed"
|
||||
icon_closed = "cabinet_closed"
|
||||
icon_opened = "cabinet_open"
|
||||
closet_appearance = /decl/closet_appearance/cabinet
|
||||
|
||||
starts_with = list(
|
||||
/obj/item/weapon/storage/backpack/captain,
|
||||
|
||||
@@ -3,13 +3,9 @@
|
||||
/obj/structure/closet/crate
|
||||
name = "crate"
|
||||
desc = "A rectangular steel crate."
|
||||
icon = 'icons/obj/storage_vr.dmi' //VOREStation edit
|
||||
icon_state = "crate"
|
||||
icon_opened = "crateopen"
|
||||
icon_closed = "crate"
|
||||
closet_appearance = /decl/closet_appearance/crate
|
||||
climbable = 1
|
||||
var/points_per_crate = 5
|
||||
// mouse_drag_pointer = MOUSE_ACTIVE_POINTER //???
|
||||
var/rigged = 0
|
||||
|
||||
/obj/structure/closet/crate/can_open()
|
||||
@@ -37,11 +33,11 @@
|
||||
playsound(src, 'sound/machines/click.ogg', 15, 1, -3)
|
||||
for(var/obj/O in src)
|
||||
O.forceMove(get_turf(src))
|
||||
icon_state = icon_opened
|
||||
src.opened = 1
|
||||
|
||||
if(climbable)
|
||||
structure_shaken()
|
||||
update_icon()
|
||||
return 1
|
||||
|
||||
/obj/structure/closet/crate/close()
|
||||
@@ -64,8 +60,8 @@
|
||||
O.forceMove(src)
|
||||
itemcount++
|
||||
|
||||
icon_state = icon_closed
|
||||
src.opened = 0
|
||||
update_icon()
|
||||
return 1
|
||||
|
||||
/obj/structure/closet/crate/attackby(obj/item/weapon/W as obj, mob/user as mob)
|
||||
@@ -125,28 +121,25 @@
|
||||
/obj/structure/closet/crate/secure
|
||||
desc = "A secure crate."
|
||||
name = "Secure crate"
|
||||
icon_state = "securecrate"
|
||||
icon_opened = "securecrateopen"
|
||||
icon_closed = "securecrate"
|
||||
var/redlight = "securecrater"
|
||||
var/greenlight = "securecrateg"
|
||||
var/sparks = "securecratesparks"
|
||||
var/emag = "securecrateemag"
|
||||
closet_appearance = /decl/closet_appearance/crate/secure
|
||||
var/broken = 0
|
||||
var/locked = 1
|
||||
|
||||
/obj/structure/closet/crate/secure/New()
|
||||
..()
|
||||
if(locked)
|
||||
overlays.Cut()
|
||||
overlays += redlight
|
||||
else
|
||||
overlays.Cut()
|
||||
overlays += greenlight
|
||||
|
||||
/obj/structure/closet/crate/secure/can_open()
|
||||
return !locked
|
||||
|
||||
/obj/structure/closet/crate/secure/update_icon()
|
||||
if(opened)
|
||||
icon_state = "open"
|
||||
else
|
||||
if(broken)
|
||||
icon_state = "closed_emagged[sealed ? "_welded" : ""]"
|
||||
else
|
||||
if(locked)
|
||||
icon_state = "closed_locked[sealed ? "_welded" : ""]"
|
||||
else
|
||||
icon_state = "closed_unlocked[sealed ? "_welded" : ""]"
|
||||
|
||||
/obj/structure/closet/crate/secure/proc/togglelock(mob/user as mob)
|
||||
if(src.opened)
|
||||
to_chat(user, "<span class='notice'>Close the crate first.</span>")
|
||||
@@ -166,8 +159,7 @@
|
||||
if(user)
|
||||
for(var/mob/O in viewers(user, 3))
|
||||
O.show_message( "<span class='notice'>The crate has been [locked ? null : "un"]locked by [user].</span>", 1)
|
||||
overlays.Cut()
|
||||
overlays += locked ? redlight : greenlight
|
||||
update_icon()
|
||||
|
||||
/obj/structure/closet/crate/secure/verb/verb_togglelock()
|
||||
set src in oview(1) // One square distance
|
||||
@@ -202,14 +194,11 @@
|
||||
|
||||
/obj/structure/closet/crate/secure/emag_act(var/remaining_charges, var/mob/user)
|
||||
if(!broken)
|
||||
overlays.Cut()
|
||||
overlays += emag
|
||||
overlays += sparks
|
||||
spawn(6) overlays -= sparks //Tried lots of stuff but nothing works right. so i have to use this *sadface*
|
||||
playsound(src, "sparks", 60, 1)
|
||||
src.locked = 0
|
||||
src.broken = 1
|
||||
locked = 0
|
||||
broken = 1
|
||||
to_chat(user, "<span class='notice'>You unlock \the [src].</span>")
|
||||
update_icon()
|
||||
return 1
|
||||
|
||||
/obj/structure/closet/crate/secure/emp_act(severity)
|
||||
@@ -217,45 +206,33 @@
|
||||
O.emp_act(severity)
|
||||
if(!broken && !opened && prob(50/severity))
|
||||
if(!locked)
|
||||
src.locked = 1
|
||||
overlays.Cut()
|
||||
overlays += redlight
|
||||
locked = 1
|
||||
else
|
||||
overlays.Cut()
|
||||
overlays += emag
|
||||
overlays += sparks
|
||||
spawn(6) overlays -= sparks //Tried lots of stuff but nothing works right. so i have to use this *sadface*
|
||||
playsound(src, 'sound/effects/sparks4.ogg', 75, 1)
|
||||
src.locked = 0
|
||||
locked = 0
|
||||
if(!opened && prob(20/severity))
|
||||
if(!locked)
|
||||
open()
|
||||
else
|
||||
src.req_access = list()
|
||||
src.req_access += pick(get_all_station_access())
|
||||
req_access = list()
|
||||
req_access += pick(get_all_station_access())
|
||||
update_icon()
|
||||
..()
|
||||
|
||||
/obj/structure/closet/crate/plastic
|
||||
name = "plastic crate"
|
||||
desc = "A rectangular plastic crate."
|
||||
icon_state = "plasticcrate"
|
||||
icon_opened = "plasticcrateopen"
|
||||
icon_closed = "plasticcrate"
|
||||
closet_appearance = /decl/closet_appearance/crate/plastic
|
||||
points_per_crate = 1 //5 crates per ordered crate, +5 for the crate it comes in.
|
||||
|
||||
/obj/structure/closet/crate/internals
|
||||
name = "internals crate"
|
||||
desc = "A internals crate."
|
||||
icon_state = "o2crate"
|
||||
icon_opened = "o2crateopen"
|
||||
icon_closed = "o2crate"
|
||||
|
||||
/obj/structure/closet/crate/trashcart
|
||||
name = "trash cart"
|
||||
desc = "A heavy, metal trashcart with wheels."
|
||||
icon_state = "trashcart"
|
||||
icon_opened = "trashcartopen"
|
||||
icon_closed = "trashcart"
|
||||
closet_appearance = /decl/closet_appearance/cart/trash
|
||||
|
||||
/*these aren't needed anymore
|
||||
/obj/structure/closet/crate/hat
|
||||
@@ -276,16 +253,11 @@
|
||||
/obj/structure/closet/crate/medical
|
||||
name = "medical crate"
|
||||
desc = "A medical crate."
|
||||
icon_state = "medicalcrate"
|
||||
icon_opened = "medicalcrateopen"
|
||||
icon_closed = "medicalcrate"
|
||||
closet_appearance = /decl/closet_appearance/crate/medical
|
||||
|
||||
/obj/structure/closet/crate/rcd
|
||||
name = "\improper RCD crate"
|
||||
desc = "A crate with rapid construction device."
|
||||
icon_state = "engi_crate"
|
||||
icon_opened = "engi_crateopen"
|
||||
icon_closed = "engi_crate"
|
||||
|
||||
starts_with = list(
|
||||
/obj/item/weapon/rcd_ammo = 3,
|
||||
@@ -293,9 +265,6 @@
|
||||
|
||||
/obj/structure/closet/crate/solar
|
||||
name = "solar pack crate"
|
||||
icon_state = "engi_crate" //VOREStation Edit
|
||||
icon_opened = "engi_crateopen" //VOREStation Edit
|
||||
icon_closed = "engi_crate" //VOREStation Edit
|
||||
|
||||
starts_with = list(
|
||||
/obj/item/solar_assembly = 21,
|
||||
@@ -306,9 +275,7 @@
|
||||
/obj/structure/closet/crate/freezer
|
||||
name = "freezer"
|
||||
desc = "A freezer."
|
||||
icon_state = "freezer"
|
||||
icon_opened = "freezeropen"
|
||||
icon_closed = "freezer"
|
||||
closet_appearance = /decl/closet_appearance/crate/freezer
|
||||
var/target_temp = T0C - 40
|
||||
var/cooling_power = 40
|
||||
|
||||
@@ -352,18 +319,12 @@
|
||||
/obj/structure/closet/crate/bin
|
||||
name = "large bin"
|
||||
desc = "A large bin."
|
||||
icon = 'icons/obj/storage.dmi' //VOREStation edit
|
||||
icon_state = "largebin"
|
||||
icon_opened = "largebinopen"
|
||||
icon_closed = "largebin"
|
||||
|
||||
|
||||
/obj/structure/closet/crate/radiation
|
||||
name = "radioactive gear crate"
|
||||
desc = "A crate with a radiation sign on it."
|
||||
icon_state = "radiation"
|
||||
icon_opened = "radiationopen"
|
||||
icon_closed = "radiation"
|
||||
closet_appearance = /decl/closet_appearance/crate/radiation
|
||||
|
||||
starts_with = list(
|
||||
/obj/item/clothing/suit/radiation = 4,
|
||||
@@ -373,72 +334,46 @@
|
||||
/obj/structure/closet/crate/secure/weapon
|
||||
name = "weapons crate"
|
||||
desc = "A secure weapons crate."
|
||||
icon_state = "weaponcrate"
|
||||
icon_opened = "weaponcrateopen"
|
||||
icon_closed = "weaponcrate"
|
||||
closet_appearance = /decl/closet_appearance/crate/secure/weapon
|
||||
|
||||
|
||||
/obj/structure/closet/crate/secure/phoron
|
||||
name = "phoron crate"
|
||||
desc = "A secure phoron crate."
|
||||
icon_state = "phoroncrate"
|
||||
icon_opened = "phoroncrateopen"
|
||||
icon_closed = "phoroncrate"
|
||||
closet_appearance = /decl/closet_appearance/crate/secure/hazard
|
||||
|
||||
|
||||
/obj/structure/closet/crate/secure/gear
|
||||
name = "gear crate"
|
||||
desc = "A secure gear crate."
|
||||
icon_state = "secgearcrate"
|
||||
icon_opened = "secgearcrateopen"
|
||||
icon_closed = "secgearcrate"
|
||||
closet_appearance = /decl/closet_appearance/crate/secure/weapon
|
||||
|
||||
|
||||
/obj/structure/closet/crate/secure/hydrosec
|
||||
name = "secure hydroponics crate"
|
||||
desc = "A crate with a lock on it, painted in the scheme of the station's botanists."
|
||||
icon_state = "hydrosecurecrate"
|
||||
icon_opened = "hydrosecurecrateopen"
|
||||
icon_closed = "hydrosecurecrate"
|
||||
closet_appearance = /decl/closet_appearance/crate/secure/hydroponics
|
||||
|
||||
|
||||
/obj/structure/closet/crate/secure/engineering
|
||||
desc = "A crate with a lock on it, painted in the scheme of the station's engineers."
|
||||
name = "secure engineering crate"
|
||||
icon_state = "engi_secure_crate"
|
||||
icon_opened = "engi_secure_crateopen"
|
||||
icon_closed = "engi_secure_crate"
|
||||
|
||||
|
||||
/obj/structure/closet/crate/secure/science
|
||||
name = "secure science crate"
|
||||
desc = "A crate with a lock on it, painted in the scheme of the station's scientists."
|
||||
icon_state = "scisecurecrate"
|
||||
icon_opened = "scisecurecrateopen"
|
||||
icon_closed = "scisecurecrate"
|
||||
|
||||
|
||||
/obj/structure/closet/crate/secure/bin
|
||||
name = "secure bin"
|
||||
desc = "A secure bin."
|
||||
icon = 'icons/obj/storage.dmi' //VOREStation edit
|
||||
icon_state = "largebins"
|
||||
icon_opened = "largebinsopen"
|
||||
icon_closed = "largebins"
|
||||
redlight = "largebinr"
|
||||
greenlight = "largebing"
|
||||
sparks = "largebinsparks"
|
||||
emag = "largebinemag"
|
||||
|
||||
|
||||
/obj/structure/closet/crate/large
|
||||
name = "large crate"
|
||||
desc = "A hefty metal crate."
|
||||
icon = 'icons/obj/storage_vr.dmi' //VOREStation Edit
|
||||
icon_state = "largemetal"
|
||||
icon_opened = "largemetalopen"
|
||||
icon_closed = "largemetal"
|
||||
|
||||
closet_appearance = /decl/closet_appearance/large_crate
|
||||
|
||||
/obj/structure/closet/crate/large/close()
|
||||
. = ..()
|
||||
@@ -462,12 +397,7 @@
|
||||
/obj/structure/closet/crate/secure/large
|
||||
name = "large crate"
|
||||
desc = "A hefty metal crate with an electronic locking system."
|
||||
icon = 'icons/obj/storage_vr.dmi' //VOREStation Edit
|
||||
icon_state = "largemetalsecure" //VOREStation Edit
|
||||
icon_opened = "largemetalsecureopen" //VOREStation Edit
|
||||
icon_closed = "largemetalsecure" //VOREStation Edit
|
||||
redlight = "largemetalr"
|
||||
greenlight = "largemetalg"
|
||||
closet_appearance = /decl/closet_appearance/large_crate/secure
|
||||
|
||||
|
||||
/obj/structure/closet/crate/secure/large/close()
|
||||
@@ -492,33 +422,19 @@
|
||||
//fluff variant
|
||||
/obj/structure/closet/crate/secure/large/reinforced
|
||||
desc = "A hefty, reinforced metal crate with an electronic locking system."
|
||||
icon_state = "largermetal"
|
||||
icon_opened = "largermetalopen"
|
||||
icon_closed = "largermetal"
|
||||
|
||||
/obj/structure/closet/crate/engineering
|
||||
name = "engineering crate"
|
||||
icon_state = "engi_crate"
|
||||
icon_opened = "engi_crateopen"
|
||||
icon_closed = "engi_crate"
|
||||
|
||||
/obj/structure/closet/crate/engineering/electrical
|
||||
icon_state = "engi_e_crate"
|
||||
icon_opened = "engi_crateopen"
|
||||
icon_closed = "engi_e_crate"
|
||||
|
||||
/obj/structure/closet/crate/science
|
||||
name = "science crate"
|
||||
icon_state = "scicrate"
|
||||
icon_opened = "scicrateopen"
|
||||
icon_closed = "scicrate"
|
||||
|
||||
/obj/structure/closet/crate/hydroponics
|
||||
name = "hydroponics crate"
|
||||
desc = "All you need to destroy those pesky weeds and pests."
|
||||
icon_state = "hydrocrate"
|
||||
icon_opened = "hydrocrateopen"
|
||||
icon_closed = "hydrocrate"
|
||||
closet_appearance = /decl/closet_appearance/crate/hydroponics
|
||||
|
||||
|
||||
/obj/structure/closet/crate/hydroponics/prespawned
|
||||
|
||||
@@ -1,9 +1,7 @@
|
||||
/obj/structure/closet/crate/secure/loot
|
||||
name = "abandoned crate"
|
||||
desc = "What could be inside?"
|
||||
icon_state = "securecrate"
|
||||
icon_opened = "securecrateopen"
|
||||
icon_closed = "securecrate"
|
||||
closet_appearance = /decl/closet_appearance/crate/secure
|
||||
var/list/code = list()
|
||||
var/list/lastattempt = list()
|
||||
var/attempts = 10
|
||||
|
||||
@@ -138,11 +138,8 @@
|
||||
/obj/structure/closet/crate/miningcar
|
||||
desc = "A mining car. This one doesn't work on rails, but has to be dragged."
|
||||
name = "Mining car (not for rails)"
|
||||
icon = 'icons/obj/storage.dmi'
|
||||
icon_state = "miningcar"
|
||||
icon = 'icons/obj/closets/miningcar.dmi'
|
||||
density = 1
|
||||
icon_opened = "miningcaropen"
|
||||
icon_closed = "miningcar"
|
||||
|
||||
// Flags.
|
||||
|
||||
|
||||
@@ -51,49 +51,6 @@
|
||||
new /obj/item/weapon/book/manual/stasis(src)
|
||||
update_icon()
|
||||
|
||||
/obj/structure/closet/secure_closet/xenoarchaeologist
|
||||
name = "Xenoarchaeologist Locker"
|
||||
icon_state = "secureres1"
|
||||
icon_closed = "secureres"
|
||||
icon_locked = "secureres1"
|
||||
icon_opened = "secureresopen"
|
||||
icon_broken = "secureresbroken"
|
||||
icon_off = "secureresoff"
|
||||
req_access = list(access_tox_storage)
|
||||
|
||||
starts_with = list(
|
||||
/obj/item/clothing/under/rank/scientist,
|
||||
/obj/item/clothing/suit/storage/toggle/labcoat,
|
||||
/obj/item/clothing/shoes/white,
|
||||
/obj/item/weapon/melee/umbrella, // vorestation addition,
|
||||
/obj/item/clothing/glasses/science,
|
||||
/obj/item/device/radio/headset/headset_sci,
|
||||
/obj/item/weapon/storage/belt/archaeology,
|
||||
/obj/item/weapon/storage/excavation)
|
||||
|
||||
/obj/structure/closet/excavation
|
||||
name = "Excavation tools"
|
||||
icon_state = "toolcloset"
|
||||
icon_closed = "toolcloset"
|
||||
icon_opened = "toolclosetopen"
|
||||
|
||||
starts_with = list(
|
||||
/obj/item/weapon/storage/belt/archaeology,
|
||||
/obj/item/weapon/storage/excavation,
|
||||
/obj/item/device/flashlight/lantern,
|
||||
/obj/item/device/ano_scanner,
|
||||
/obj/item/device/depth_scanner,
|
||||
/obj/item/device/core_sampler,
|
||||
/obj/item/device/gps,
|
||||
/obj/item/device/beacon_locator,
|
||||
/obj/item/device/radio/beacon,
|
||||
/obj/item/clothing/glasses/meson,
|
||||
/obj/item/weapon/pickaxe,
|
||||
/obj/item/device/measuring_tape,
|
||||
/obj/item/weapon/pickaxe/hand,
|
||||
/obj/item/weapon/storage/bag/fossils,
|
||||
/obj/item/weapon/hand_labeler)
|
||||
|
||||
/obj/machinery/alarm/isolation
|
||||
req_one_access = list(access_research, access_atmospherics, access_engine_equip)
|
||||
|
||||
|
||||
|
Before Width: | Height: | Size: 3.9 KiB |
BIN
icons/obj/closets/abductor.dmi
Normal file
|
After Width: | Height: | Size: 576 B |
BIN
icons/obj/closets/bases/cabinet.dmi
Normal file
|
After Width: | Height: | Size: 1.9 KiB |
BIN
icons/obj/closets/bases/cart.dmi
Normal file
|
After Width: | Height: | Size: 1.2 KiB |
BIN
icons/obj/closets/bases/closet.dmi
Normal file
|
After Width: | Height: | Size: 1.8 KiB |
BIN
icons/obj/closets/bases/crate.dmi
Normal file
|
After Width: | Height: | Size: 1.4 KiB |
BIN
icons/obj/closets/bases/large_crate.dmi
Normal file
|
After Width: | Height: | Size: 1.5 KiB |
BIN
icons/obj/closets/bases/wall.dmi
Normal file
|
After Width: | Height: | Size: 1.5 KiB |
BIN
icons/obj/closets/bodybag.dmi
Normal file
|
After Width: | Height: | Size: 643 B |
BIN
icons/obj/closets/coffin.dmi
Normal file
|
After Width: | Height: | Size: 563 B |
BIN
icons/obj/closets/coffin_wood.dmi
Normal file
|
After Width: | Height: | Size: 1.1 KiB |
BIN
icons/obj/closets/cryobag.dmi
Normal file
|
After Width: | Height: | Size: 1.2 KiB |
BIN
icons/obj/closets/decals/cart.dmi
Normal file
|
After Width: | Height: | Size: 250 B |
BIN
icons/obj/closets/decals/closet.dmi
Normal file
|
After Width: | Height: | Size: 3.2 KiB |
BIN
icons/obj/closets/decals/crate.dmi
Normal file
|
After Width: | Height: | Size: 1.9 KiB |
BIN
icons/obj/closets/decals/large_crate.dmi
Normal file
|
After Width: | Height: | Size: 593 B |
BIN
icons/obj/closets/decals/wall.dmi
Normal file
|
After Width: | Height: | Size: 916 B |
BIN
icons/obj/closets/fridge.dmi
Normal file
|
After Width: | Height: | Size: 1019 B |
BIN
icons/obj/closets/grave.dmi
Normal file
|
After Width: | Height: | Size: 812 B |
BIN
icons/obj/closets/miningcar.dmi
Normal file
|
After Width: | Height: | Size: 493 B |
BIN
icons/obj/closets/poireactor.dmi
Normal file
|
After Width: | Height: | Size: 659 B |
BIN
icons/obj/closets/rescuebag.dmi
Normal file
|
After Width: | Height: | Size: 897 B |
|
Before Width: | Height: | Size: 1.3 KiB |
@@ -1105,7 +1105,6 @@
|
||||
#include "code\game\objects\items\devices\holowarrant.dm"
|
||||
#include "code\game\objects\items\devices\laserpointer.dm"
|
||||
#include "code\game\objects\items\devices\lightreplacer.dm"
|
||||
#include "code\game\objects\items\devices\locker_painter.dm"
|
||||
#include "code\game\objects\items\devices\megaphone.dm"
|
||||
#include "code\game\objects\items\devices\modkit.dm"
|
||||
#include "code\game\objects\items\devices\multitool.dm"
|
||||
@@ -1395,7 +1394,8 @@
|
||||
#include "code\game\objects\structures\window.dm"
|
||||
#include "code\game\objects\structures\window_spawner.dm"
|
||||
#include "code\game\objects\structures\window_vr.dm"
|
||||
#include "code\game\objects\structures\crates_lockers\closets.dm"
|
||||
#include "code\game\objects\structures\crates_lockers\__closets.dm"
|
||||
#include "code\game\objects\structures\crates_lockers\_closets_appearance_definitions.dm"
|
||||
#include "code\game\objects\structures\crates_lockers\crates.dm"
|
||||
#include "code\game\objects\structures\crates_lockers\crates_vr.dm"
|
||||
#include "code\game\objects\structures\crates_lockers\largecrate.dm"
|
||||
@@ -1408,7 +1408,6 @@
|
||||
#include "code\game\objects\structures\crates_lockers\closets\gimmick.dm"
|
||||
#include "code\game\objects\structures\crates_lockers\closets\job_closets.dm"
|
||||
#include "code\game\objects\structures\crates_lockers\closets\l3closet.dm"
|
||||
#include "code\game\objects\structures\crates_lockers\closets\l3closet_vr.dm"
|
||||
#include "code\game\objects\structures\crates_lockers\closets\malfunction.dm"
|
||||
#include "code\game\objects\structures\crates_lockers\closets\misc_vr.dm"
|
||||
#include "code\game\objects\structures\crates_lockers\closets\statue.dm"
|
||||
|
||||