mirror of
https://github.com/CHOMPStation2/CHOMPStation2.git
synced 2025-12-13 03:33:21 +00:00
Merge branch 'CHOMPStation2:master' into craft
This commit is contained in:
@@ -1,5 +1,5 @@
|
||||
/obj/item/weapon/flame/lighter/safesmzippo
|
||||
name = "Supermatter Zippo"
|
||||
/obj/item/weapon/flame/lighter/supermatter
|
||||
name = "Hardlight Supermatter Zippo" // Base SM Lighter
|
||||
desc = "State of the Art Supermatter Lighter."
|
||||
description_fluff = "A zippo style lighter with a tiny supermatter sliver held by a hardlight shield. When lighting a cigar, make sure to hover the tip near the sliver, not against it!"
|
||||
icon = 'icons/obj/zippo_ch.dmi'
|
||||
@@ -8,8 +8,8 @@
|
||||
activation_sound = 'modular_chomp/sound/items/open.ogg'
|
||||
deactivation_sound = 'sound/items/zippo_off.ogg'
|
||||
|
||||
/obj/item/weapon/flame/lighter/syndismzippo
|
||||
name = "Syndicate SM Zippo"
|
||||
/obj/item/weapon/flame/lighter/supermatter/syndismzippo
|
||||
name = "Phoron Supermatter Zippo" // Syndicate SM Lighter
|
||||
desc = "State of the Art Supermatter Lighter."
|
||||
description_fluff = "A red zippo style lighter with a tiny supermatter sliver held by a phoron field."
|
||||
icon = 'icons/obj/zippo_ch.dmi'
|
||||
@@ -18,8 +18,18 @@
|
||||
activation_sound = 'modular_chomp/sound/items/open.ogg'
|
||||
deactivation_sound = 'sound/items/zippo_off.ogg'
|
||||
|
||||
/obj/item/weapon/flame/lighter/supermatter/expsmzippo
|
||||
name = "Experimental SM Lighter" // Dangerous WIP (admin/event only ATM)
|
||||
desc = "State of the Art Supermatter Lighter"
|
||||
description_fluff = "A unique take originating from the zippo design, a shard of supermatter placed within lead-lined walls. Cautious, VERY DANGEROUS do NOT touch!"
|
||||
icon = 'icons/obj/zippo_ch.dmi'
|
||||
icon_state = "ExpSMzippo"
|
||||
item_state = "ExpSMzippo"
|
||||
activation_sound = 'modular_chomp/sound/items/button-open.ogg'
|
||||
deactivation_sound = 'modular_chomp/sound/items/button-close.ogg'
|
||||
|
||||
// safe smzippo
|
||||
/obj/item/weapon/flame/lighter/safesmzippo/attack_self(mob/living/user)
|
||||
/obj/item/weapon/flame/lighter/supermatter/attack_self(mob/living/user)
|
||||
if(!base_state)
|
||||
base_state = icon_state
|
||||
if(!lit)
|
||||
@@ -32,7 +42,7 @@
|
||||
else
|
||||
if(prob(95))
|
||||
user.visible_message("<span class='notice'>After a few attempts, [user] manages to excite the supermatter within the [src].</span>")
|
||||
else
|
||||
else // Just like the cheap lighter, this time you can shock/burn yourself a little on the hardlight shield
|
||||
to_chat(user, "<span class='warning'>You hurt yourself on the shielding!</span>")
|
||||
if (user.get_left_hand() == src)
|
||||
user.apply_damage(1,SEARING,"l_hand")
|
||||
@@ -40,10 +50,10 @@
|
||||
user.apply_damage(3,CLONE,"l_hand")
|
||||
user.apply_damage(4,ELECTROMAG,"l_hand")
|
||||
else
|
||||
user.apply_damage(1,SEARING,"l_hand")
|
||||
user.apply_damage(1,SEARING,"r_hand")
|
||||
user.apply_damage(2,ELECTROCUTE,"r_hand")
|
||||
user.apply_damage(3,CLONE,"r_hand")
|
||||
user.apply_damage(4,ELECTROMAG,"l_hand")
|
||||
user.apply_damage(4,ELECTROMAG,"r_hand")
|
||||
user.visible_message("<span class='notice'>After a few attempts, [user] manages to activate the [src], they however sting themselves on the shielding!</span>")
|
||||
|
||||
set_light(2)
|
||||
@@ -53,7 +63,7 @@
|
||||
icon_state = "[base_state]"
|
||||
item_state = "[base_state]"
|
||||
playsound(src, deactivation_sound, 75, 1)
|
||||
if(istype(src, /obj/item/weapon/flame/lighter/safesmzippo) )
|
||||
if(istype(src, /obj/item/weapon/flame/lighter/supermatter) )
|
||||
user.visible_message("<span class='rose'>You hear a quiet click, as [user] shuts the [src] without even looking at what they're doing.</span>")
|
||||
else
|
||||
user.visible_message("<span class='notice'>[user] quietly shuts the [src].</span>")
|
||||
@@ -63,7 +73,7 @@
|
||||
return
|
||||
|
||||
|
||||
/obj/item/weapon/flame/lighter/safesmzippo/attack(mob/living/carbon/M as mob, mob/living/carbon/user as mob)
|
||||
/obj/item/weapon/flame/lighter/supermatter/attack(mob/living/carbon/M as mob, mob/living/carbon/user as mob)
|
||||
if(!istype(M, /mob))
|
||||
return
|
||||
|
||||
@@ -76,21 +86,21 @@
|
||||
if(M == user)
|
||||
cig.attackby(src, user)
|
||||
else
|
||||
if(istype(src, /obj/item/weapon/flame/lighter/zippo))
|
||||
if(istype(src, /obj/item/weapon/flame/lighter/supermatter))
|
||||
cig.light("<span class='rose'>[user] whips the [name] out and holds it for [M].</span>")
|
||||
else
|
||||
cig.light("<span class='notice'>[user] holds the [name] out for [M], and lights the [cig.name].</span>")
|
||||
else
|
||||
..()
|
||||
|
||||
/obj/item/weapon/flame/lighter/safesmzippo/process()
|
||||
/obj/item/weapon/flame/lighter/supermatter/process()
|
||||
var/turf/location = get_turf(src)
|
||||
if(location)
|
||||
location.hotspot_expose(700, 5)
|
||||
return
|
||||
|
||||
// syndicate smzippo
|
||||
/obj/item/weapon/flame/lighter/syndismzippo/attack_self(mob/living/user)
|
||||
/obj/item/weapon/flame/lighter/supermatter/syndismzippo/attack_self(mob/living/user)
|
||||
if(!base_state)
|
||||
base_state = icon_state
|
||||
if(!lit)
|
||||
@@ -101,18 +111,18 @@
|
||||
if(prob(50))
|
||||
user.visible_message("<span class='rose'>[user] safely activates the [src] with a push of a button!</span>")
|
||||
else
|
||||
if(prob(99))
|
||||
if(prob(95))
|
||||
user.visible_message("<span class='notice'>After a few attempts, [user] manages to excite the supermatter within the [src].</span>")
|
||||
else
|
||||
else // Just like with the cheap lighter, but this time you can hurt yourself on the heated phoron field
|
||||
to_chat(user, "<span class='warning'>You singe yourself on the phoron shielding the excited supermatter!</span>")
|
||||
if (user.get_left_hand() == src)
|
||||
user.apply_damage(30,HALLOSS,"l_hand")
|
||||
user.apply_damage(20,CLONE,"l_hand")
|
||||
user.apply_effect(20,IRRADIATE)
|
||||
user.apply_damage(5,BURN,"l_hand")
|
||||
user.apply_damage(5,ELECTROCUTE,"l_hand")
|
||||
else
|
||||
user.apply_damage(30,HALLOSS,"r_hand")
|
||||
user.apply_damage(20,CLONE,"r_hand")
|
||||
user.apply_effect(20,IRRADIATE)
|
||||
user.apply_damage(5,BURN,"r_hand")
|
||||
user.apply_damage(5,ELECTROCUTE,"r_hand")
|
||||
user.visible_message("<span class='notice'>After a few attempts, [user] manages to activate the [src], they however burn themselves with the heated phoron field!</span>")
|
||||
@@ -124,7 +134,7 @@
|
||||
icon_state = "[base_state]"
|
||||
item_state = "[base_state]"
|
||||
playsound(src, deactivation_sound, 75, 1)
|
||||
if(istype(src, /obj/item/weapon/flame/lighter/syndismzippo) )
|
||||
if(istype(src, /obj/item/weapon/flame/lighter/supermatter/syndismzippo) )
|
||||
user.visible_message("<span class='rose'>You hear a quiet click, as [user] shuts the [src] without even looking at what they're doing.</span>")
|
||||
else
|
||||
user.visible_message("<span class='notice'>[user] quietly shuts the [src].</span>")
|
||||
@@ -134,7 +144,7 @@
|
||||
return
|
||||
|
||||
|
||||
/obj/item/weapon/flame/lighter/syndismzippo/attack(mob/living/carbon/M as mob, mob/living/carbon/user as mob)
|
||||
/obj/item/weapon/flame/lighter/supermatter/syndismzippo/attack(mob/living/carbon/M as mob, mob/living/carbon/user as mob)
|
||||
if(!istype(M, /mob))
|
||||
return
|
||||
|
||||
@@ -147,7 +157,7 @@
|
||||
if(M == user)
|
||||
cig.attackby(src, user)
|
||||
else
|
||||
if(istype(src, /obj/item/weapon/flame/lighter/syndismzippo))
|
||||
if(istype(src, /obj/item/weapon/flame/lighter/supermatter/syndismzippo))
|
||||
cig.light("<span class='rose'>[user] whips the [name] out and holds it for [M].</span>")
|
||||
else
|
||||
cig.light("<span class='notice'>[user] holds the [name] out for [M], and lights the [cig.name].</span>")
|
||||
@@ -159,3 +169,169 @@
|
||||
if(location)
|
||||
location.hotspot_expose(700, 5)
|
||||
return
|
||||
|
||||
// Experimental smzippo
|
||||
/obj/item/weapon/flame/lighter/supermatter/expsmzippo/attack_self(mob/living/user)
|
||||
if (!base_state)
|
||||
base_state = icon_state
|
||||
if (!lit)
|
||||
lit = 1
|
||||
icon_state = "[base_state]on"
|
||||
item_state = "[base_state]on"
|
||||
playsound(src, activation_sound, 75, 1)
|
||||
var/i = rand(1, 100)
|
||||
switch(i)
|
||||
if(1 to 22)
|
||||
to_chat("<span class='rose'>[user] safely reveals the supermatter shard within the [src]!</span>")
|
||||
user.visible_message("<span class='rose'>You safely revealed the supermatter shard within the [src]!</span>")
|
||||
if (user.get_left_hand() == src)
|
||||
user.apply_damage(1, IRRADIATE, "l_hand")
|
||||
else // Even using this safely will irradiate you a tiny tiny bit.
|
||||
user.apply_damage(1, IRRADIATE, "r_hand")
|
||||
if(23 to 33)
|
||||
to_chat(user, "<span class='warning'>[user]'s hand slipped and they brush against the supermatter within [src]!</span>")
|
||||
user.visible_message("<span class='notice'>You accidentally grazed your hand across the supermatter!</span>")
|
||||
if (user.get_left_hand() == src)
|
||||
user.apply_damage(10, IRRADIATE, "l_hand")
|
||||
user.apply_damage(20, BURN, "l_hand")
|
||||
user.apply_damage(20, ELECTROCUTE, "l_hand")
|
||||
user.apply_damage(50, AGONY, "l_hand")
|
||||
else // One of the outcomes will burn and shock you, the pain is the worst part of this one though.
|
||||
user.apply_damage(10, IRRADIATE, "r_hand")
|
||||
user.apply_damage(20, BURN, "r_hand")
|
||||
user.apply_damage(20, ELECTROCUTE, "r_hand")
|
||||
user.apply_damage(50, AGONY, "r_hand")
|
||||
if(34 to 44)
|
||||
to_chat(user, "<span class='warning'>[user] burned themselves on the [src]!</span>")
|
||||
user.visible_message("<span class='notice'>You accidentally burn yourself on the [src]!</span>")
|
||||
if (user.get_left_hand() == src)
|
||||
user.apply_damage(30, IRRADIATE, "l_hand")
|
||||
user.apply_damage(20, SEARING, "l_hand")
|
||||
user.apply_damage(15, BURN, "l_hand")
|
||||
else // One of the outcomes is pure burn and radiation.
|
||||
user.apply_damage(30, IRRADIATE, "r_hand")
|
||||
user.apply_damage(20, SEARING, "r_hand")
|
||||
user.apply_damage(15, BURN, "r_hand")
|
||||
if(45 to 55)
|
||||
to_chat(user, "<span class='warning'>[user] fumbled the [src] and the supermatter let out sparks!</span>")
|
||||
user.visible_message("<span class='notice'>You fumble the [src], letting the supermatter spark as the case opens!</span>")
|
||||
if (user.get_left_hand() == src)
|
||||
user.apply_damage(1, ELECTROCUTE, "l_hand")
|
||||
user.apply_damage(100, ELECTROMAG, "l_hand")
|
||||
else // This one is mostly dangerous to synthetics and it will EMP you. But otherwise it's safe.
|
||||
user.apply_damage(1, ELECTROCUTE, "r_hand")
|
||||
user.apply_damage(100, ELECTROMAG, "r_hand")
|
||||
if(56 to 66)
|
||||
to_chat(user, "<span class='warning'>[user] struggles to open their [src], but when they do they get burned by the extreme heat within!</span>")
|
||||
user.visible_message("<span class='notice'>You struggle to get the case to open, and when it does the heat that pours out of the [src] burns!</span>")
|
||||
if (user.get_left_hand() == src)
|
||||
user.apply_damage(1, IRRADIATE, "l_hand")
|
||||
user.apply_damage(1, BRUISE, "l_hand")
|
||||
user.apply_damage(200, BURN, "l_hand")
|
||||
user.drop_l_hand()
|
||||
else // This will INSTA-DUST your hand that you're holding the item in, and then make you drop the lighter.
|
||||
user.apply_damage(1, IRRADIATE, "r_hand")
|
||||
user.apply_damage(1, BRUISE, "r_hand")
|
||||
user.apply_damage(200, BURN, "r_hand")
|
||||
user.drop_r_hand()
|
||||
if(67 to 77)
|
||||
to_chat(user, "<span class='warning'>Ouch! While pushing on the release to open the [src], [user]'s finger slipped right as the case opened, pressing their finger firm against the supermatter!</span>")
|
||||
user.visible_message("<span class='notice'>You accidentally pushed your finger against the supermatter!</span>")
|
||||
if (user.get_left_hand() == src)
|
||||
user.apply_damage(50, HALLOSS, "l_hand")
|
||||
user.apply_damage(40, IRRADIATE, "l_hand")
|
||||
user.apply_damage(30, BURN, "l_hand")
|
||||
user.apply_damage(20, TOX, "l_hand")
|
||||
user.apply_damage(10, ELECTROCUTE, "l_hand")
|
||||
user.apply_effect(25, STUTTER)
|
||||
user.apply_effect(15, SLUR)
|
||||
user.apply_effect(5, STUN)
|
||||
else // This one is VERY punishing, you get a ton of damage, a lot of pain, and a minor stun. Once the stun goes away you'll be stuttering for awhile as if in crit.
|
||||
user.apply_damage(50, HALLOSS, "r_hand")
|
||||
user.apply_damage(40, IRRADIATE, "r_hand")
|
||||
user.apply_damage(30, BURN, "r_hand")
|
||||
user.apply_damage(20, TOX, "r_hand")
|
||||
user.apply_damage(10, ELECTROCUTE, "r_hand")
|
||||
user.apply_effect(25, STUTTER)
|
||||
user.apply_effect(15, SLUR)
|
||||
user.apply_effect(5, STUN)
|
||||
if(78 to 88)
|
||||
to_chat(user, "<span class='notice'>[user] managed to pinch themselves on the case of their [src]... it could have been worse.</span>")
|
||||
user.visible_message("<span class='notice'>You manage to pinch yourself on the case!</span>")
|
||||
if (user.get_left_hand() == src)
|
||||
user.apply_damage(1, CLONE, "l_hand")
|
||||
user.apply_damage(1, HALLOSS, "l_hand")
|
||||
else // Aside from the base, this one isn't punishing outside of giving you genetic damage.
|
||||
user.apply_damage(1, CLONE, "r_hand")
|
||||
user.apply_damage(1, HALLOSS, "r_hand")
|
||||
if(89 to 99)
|
||||
to_chat(user, "<span class='notice'>[user] opened the [src] but forgot that you aren't supposed to look at supermatter!</span>")
|
||||
user.visible_message("<span class='notice'>You find yourself looking at the supermatter for longer than you should...</span>")
|
||||
if (user.get_left_hand() == src)
|
||||
user.apply_damage(15, HALLOSS, "l_hand")
|
||||
user.apply_effect(5, WEAKEN)
|
||||
user.apply_damage(15, IRRADIATE, "l_hand")
|
||||
user.apply_effect(100, EYE_BLUR)
|
||||
user.apply_effect(50, AGONY)
|
||||
user.apply_damage(5, OXY)
|
||||
user.eye_blurry = 10
|
||||
else // This one just blinds and blurs your screen, but otherwise doesn't actually risk harming you. Even the oxy damage heals on its own.
|
||||
user.apply_damage(15, HALLOSS, "r_hand")
|
||||
user.apply_effect(5, WEAKEN)
|
||||
user.apply_damage(15, IRRADIATE, "l_hand")
|
||||
user.apply_effect(100, EYE_BLUR)
|
||||
user.apply_effect(50, AGONY)
|
||||
user.apply_damage(15, OXY)
|
||||
user.eye_blurry = 10
|
||||
if(100) // This is the part that makes it admin only for the moment, it spawns 500 rads from the carbon's position, and dusts the carbon instantly. It does also drop everything unlike the supermatter crystal though, so hopefully you won't lose any items if you fumble this badly!
|
||||
to_chat(user, "<span class='warning'>OH NO! [user] almost dropped their live [src]! Thank goodness they caught it... by the glowing yellow crystal... oh.</span>")
|
||||
user.visible_message("<span class='danger'>You almost dropped your [src], thank goodness you caught it! By the glowing crystal within. You find your ears filled with unearthly ringing and your last thought is \"Oh, fuck.\"</span>")
|
||||
user.drop_r_hand() // To ensure the lighter is dropped <3
|
||||
user.drop_l_hand() // To ensure the lighter is dropped <3
|
||||
for(var/obj/item/e in user)
|
||||
user.drop_from_inventory(e)
|
||||
log_and_message_admins("[user] dusted themselves and caused massive radiation with [src]!",user)
|
||||
user.dust()
|
||||
var/rads = 500
|
||||
SSradiation.radiate(src, rads)
|
||||
|
||||
set_light(5)
|
||||
START_PROCESSING(SSobj, src)
|
||||
else
|
||||
lit = 0
|
||||
icon_state = "[base_state]"
|
||||
item_state = "[base_state]"
|
||||
playsound(src, deactivation_sound, 75, 1)
|
||||
if (istype(src, /obj/item/weapon/flame/lighter/supermatter/expsmzippo))
|
||||
user.visible_message("<span class='rose'>You hear a quiet click, as [user] closes the [src].</span>")
|
||||
else
|
||||
user.visible_message("<span class='notice'>[user] quietly shuts the [src].</span>")
|
||||
|
||||
set_light(0)
|
||||
STOP_PROCESSING(SSobj, src)
|
||||
|
||||
/obj/item/weapon/flame/lighter/supermatter/expsmzippo/attack(mob/living/carbon/M as mob, mob/living/carbon/user as mob)
|
||||
if (!istype(M, /mob))
|
||||
return
|
||||
|
||||
if (lit == 1)
|
||||
M.IgniteMob()
|
||||
add_attack_logs(user, M, "Lit on fire with [src]")
|
||||
|
||||
if (istype(M.wear_mask, /obj/item/clothing/mask/smokable/cigarette) && user.zone_sel.selecting == O_MOUTH && lit)
|
||||
var/obj/item/clothing/mask/smokable/cigarette/cig = M.wear_mask
|
||||
if (M == user)
|
||||
cig.attackby(src, user)
|
||||
else
|
||||
if (istype(src, /obj/item/weapon/flame/lighter/supermatter/expsmzippo))
|
||||
cig.light("<span class='rose'>[user] whips the [name] out and holds it for [M].</span>")
|
||||
else
|
||||
cig.light("<span class='notice'>[user] holds the [name] out for [M], and lights the [cig.name].</span>")
|
||||
else
|
||||
..()
|
||||
|
||||
/obj/item/weapon/flame/lighter/supermatter/expsmzippo/process()
|
||||
var/turf/location = get_turf(src)
|
||||
if (location)
|
||||
location.hotspot_expose(700, 5)
|
||||
return
|
||||
|
||||
@@ -0,0 +1,339 @@
|
||||
/obj/structure/closet/secure_closet/captains
|
||||
name = "site manager's locker"
|
||||
req_access = list(access_captain)
|
||||
closet_appearance = /decl/closet_appearance/secure_closet/command
|
||||
|
||||
starts_with = list(
|
||||
/obj/item/weapon/storage/backpack/dufflebag/captain,
|
||||
/obj/item/clothing/head/helmet,
|
||||
/obj/item/clothing/suit/storage/vest,
|
||||
/obj/item/weapon/cartridge/captain,
|
||||
/obj/item/weapon/storage/lockbox/medal,
|
||||
/obj/item/device/radio/headset/heads/captain,
|
||||
/obj/item/device/radio/headset/heads/captain/alt,
|
||||
/obj/item/weapon/gun/energy/gun,
|
||||
/obj/item/weapon/melee/telebaton,
|
||||
/obj/item/device/flash,
|
||||
/obj/item/weapon/storage/box/ids)
|
||||
|
||||
|
||||
/obj/structure/closet/secure_closet/hop
|
||||
name = "head of personnel's locker"
|
||||
req_access = list(access_hop)
|
||||
closet_appearance = /decl/closet_appearance/secure_closet/command/hop
|
||||
|
||||
starts_with = list(
|
||||
/obj/item/clothing/suit/storage/vest,
|
||||
/obj/item/clothing/head/helmet,
|
||||
/obj/item/weapon/cartridge/hop,
|
||||
/obj/item/device/radio/headset/heads/hop,
|
||||
/obj/item/device/radio/headset/heads/hop/alt,
|
||||
/obj/item/weapon/storage/box/ids = 2,
|
||||
/obj/item/weapon/gun/energy/gun/compact,
|
||||
/obj/item/weapon/storage/box/commandkeys,
|
||||
/obj/item/weapon/storage/box/servicekeys,
|
||||
/obj/item/device/flash)
|
||||
|
||||
/obj/structure/closet/secure_closet/hop2
|
||||
name = "head of personnel's attire"
|
||||
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,
|
||||
/obj/item/clothing/under/dress/dress_hop,
|
||||
/obj/item/clothing/under/dress/dress_hr,
|
||||
/obj/item/clothing/under/lawyer/female,
|
||||
/obj/item/clothing/under/lawyer/black,
|
||||
/obj/item/clothing/under/lawyer/black/skirt,
|
||||
/obj/item/clothing/under/lawyer/red,
|
||||
/obj/item/clothing/under/lawyer/red/skirt,
|
||||
/obj/item/clothing/under/lawyer/oldman,
|
||||
/obj/item/clothing/under/rank/neo_hop,
|
||||
/obj/item/clothing/under/rank/neo_hop_skirt,
|
||||
/obj/item/clothing/under/rank/neo_hop_parade_masc,
|
||||
/obj/item/clothing/under/rank/neo_hop_parade_fem,
|
||||
/obj/item/clothing/under/rank/neo_hop_turtle,
|
||||
/obj/item/clothing/under/rank/neo_hop_turtle_skirt,
|
||||
/obj/item/clothing/under/rank/neo_cmd_gorka,
|
||||
/obj/item/clothing/suit/storage/toggle/labcoat/neo_hopformal,
|
||||
/obj/item/clothing/suit/storage/toggle/labcoat/neo_civ_dep,
|
||||
/obj/item/clothing/shoes/brown,
|
||||
/obj/item/clothing/shoes/black,
|
||||
/obj/item/clothing/shoes/laceup,
|
||||
/obj/item/clothing/shoes/laceup/brown,
|
||||
/obj/item/clothing/shoes/white,
|
||||
/obj/item/clothing/under/rank/head_of_personnel_whimsy,
|
||||
/obj/item/clothing/head/caphat/hop,
|
||||
/obj/item/clothing/under/suit_jacket/teal,
|
||||
/obj/item/clothing/under/suit_jacket/teal/skirt,
|
||||
/obj/item/clothing/glasses/sunglasses,
|
||||
/obj/item/clothing/suit/storage/hooded/wintercoat/hop,
|
||||
/obj/item/clothing/head/caphat/hop/beret,
|
||||
/obj/item/clothing/head/caphat/hop/beret/white)
|
||||
|
||||
|
||||
/obj/structure/closet/secure_closet/hos
|
||||
name = "head of security's locker"
|
||||
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,
|
||||
/obj/item/clothing/head/helmet/HoS/hat,
|
||||
/obj/item/clothing/suit/storage/vest/hos,
|
||||
/obj/item/clothing/under/rank/head_of_security/jensen,
|
||||
/obj/item/clothing/under/rank/head_of_security/corp,
|
||||
/obj/item/clothing/suit/storage/vest/hoscoat/jensen,
|
||||
/obj/item/clothing/suit/storage/vest/hoscoat,
|
||||
/obj/item/clothing/head/helmet/dermal,
|
||||
/obj/item/weapon/cartridge/hos,
|
||||
/obj/item/device/radio/headset/heads/hos,
|
||||
/obj/item/device/radio/headset/heads/hos/alt,
|
||||
/obj/item/clothing/glasses/sunglasses/sechud,
|
||||
/obj/item/taperoll/police,
|
||||
/obj/item/weapon/shield/riot,
|
||||
/obj/item/weapon/shield/riot/tele,
|
||||
/obj/item/weapon/storage/box/holobadge/hos,
|
||||
/obj/item/clothing/accessory/badge/holo/hos,
|
||||
/obj/item/weapon/reagent_containers/spray/pepper,
|
||||
/obj/item/weapon/tool/crowbar/red,
|
||||
/obj/item/weapon/storage/box/flashbangs,
|
||||
/obj/item/weapon/storage/belt/security,
|
||||
/obj/item/device/flash,
|
||||
/obj/item/weapon/melee/baton/loaded,
|
||||
/obj/item/weapon/gun/magnetic/railgun/heater/pistol/hos,
|
||||
/obj/item/weapon/rcd_ammo/large,
|
||||
/obj/item/weapon/cell/device/weapon,
|
||||
/obj/item/clothing/accessory/holster/waist,
|
||||
/obj/item/weapon/melee/telebaton,
|
||||
/obj/item/clothing/head/beret/sec/corporate/hos,
|
||||
/obj/item/clothing/suit/storage/hooded/wintercoat/security,
|
||||
/obj/item/clothing/suit/storage/hooded/wintercoat/security/hos,
|
||||
/obj/item/clothing/shoes/boots/winter/security,
|
||||
/obj/item/device/flashlight/maglight,
|
||||
/obj/item/clothing/mask/gas/half,
|
||||
/obj/item/clothing/mask/gas/sechailer/swat/hos)
|
||||
|
||||
/obj/structure/closet/secure_closet/hos/Initialize()
|
||||
if(prob(50))
|
||||
starts_with += /obj/item/weapon/storage/backpack/security
|
||||
else
|
||||
starts_with += /obj/item/weapon/storage/backpack/satchel/sec
|
||||
if(prob(50))
|
||||
starts_with += /obj/item/weapon/storage/backpack/dufflebag/sec
|
||||
return ..()
|
||||
|
||||
|
||||
/obj/structure/closet/secure_closet/warden
|
||||
name = "warden's locker"
|
||||
storage_capacity = 42
|
||||
req_access = list(access_armory)
|
||||
closet_appearance = /decl/closet_appearance/secure_closet/security/warden
|
||||
|
||||
starts_with = list(
|
||||
/obj/item/clothing/suit/storage/vest/warden,
|
||||
/obj/item/clothing/under/rank/warden,
|
||||
/obj/item/clothing/under/rank/warden/corp,
|
||||
/obj/item/clothing/suit/storage/vest/wardencoat,
|
||||
/obj/item/clothing/suit/storage/vest/wardencoat/alt,
|
||||
/obj/item/clothing/suit/storage/vest/wardencoat/alt2, //VOREStation Add,
|
||||
/obj/item/clothing/head/helmet/dermal,
|
||||
/obj/item/clothing/head/helmet/warden,
|
||||
/obj/item/clothing/head/helmet/warden/hat,
|
||||
/obj/item/clothing/under/rank/neo_warden_red,
|
||||
/obj/item/clothing/under/rank/neo_warden_red_skirt,
|
||||
/obj/item/clothing/under/rank/neo_warden_blue,
|
||||
/obj/item/clothing/suit/storage/vest/wardencoat/neo_armsco_trench,
|
||||
/obj/item/clothing/suit/storage/vest/wardencoat/neo_bluewarden,
|
||||
/obj/item/clothing/suit/storage/vest/wardencoat/neo_warden_heavy,
|
||||
/obj/item/clothing/under/rank/neo_sec_gorka,
|
||||
/obj/item/weapon/cartridge/security,
|
||||
/obj/item/device/radio/headset/headset_sec,
|
||||
/obj/item/device/radio/headset/headset_sec/alt,
|
||||
/obj/item/clothing/glasses/sunglasses/sechud,
|
||||
/obj/item/taperoll/police,
|
||||
/obj/item/clothing/accessory/badge/holo/warden,
|
||||
/obj/item/weapon/storage/box/flashbangs,
|
||||
/obj/item/weapon/storage/belt/security,
|
||||
/obj/item/weapon/reagent_containers/spray/pepper,
|
||||
/obj/item/weapon/melee/baton/loaded,
|
||||
/obj/item/weapon/gun/energy/gun,
|
||||
/obj/item/weapon/cell/device/weapon,
|
||||
/obj/item/weapon/storage/box/holobadge,
|
||||
/obj/item/clothing/head/beret/sec/corporate/warden,
|
||||
/obj/item/clothing/suit/storage/hooded/wintercoat/security,
|
||||
/obj/item/clothing/shoes/boots/winter/security,
|
||||
/obj/item/device/flashlight/maglight,
|
||||
/obj/item/device/megaphone,
|
||||
/obj/item/clothing/mask/gas/sechailer/swat/warden,
|
||||
/obj/item/weapon/gun/projectile/revolvershotgun,
|
||||
/obj/item/ammo_magazine/m12gdrumjack/beanbag,
|
||||
/obj/item/ammo_magazine/m12gdrumjack/beanbag,
|
||||
/obj/item/device/ticket_printer, //CHOMPStation addition
|
||||
/obj/item/device/retail_scanner/security //CHOMPStation addition
|
||||
)
|
||||
|
||||
/obj/structure/closet/secure_closet/warden/Initialize()
|
||||
if(prob(50))
|
||||
starts_with += /obj/item/weapon/storage/backpack/security
|
||||
else
|
||||
starts_with += /obj/item/weapon/storage/backpack/satchel/sec
|
||||
if(prob(50))
|
||||
starts_with += /obj/item/weapon/storage/backpack/dufflebag/sec
|
||||
return ..()
|
||||
|
||||
/obj/structure/closet/secure_closet/security
|
||||
name = "security officer's locker"
|
||||
req_access = list(access_brig)
|
||||
closet_appearance = /decl/closet_appearance/secure_closet/security
|
||||
|
||||
starts_with = list(
|
||||
/obj/item/clothing/suit/storage/vest/officer,
|
||||
/obj/item/clothing/head/helmet,
|
||||
/obj/item/clothing/mask/gas/sechailer/swat/officer,
|
||||
/obj/item/weapon/cartridge/security,
|
||||
/obj/item/device/radio/headset/headset_sec,
|
||||
/obj/item/device/radio/headset/headset_sec/alt,
|
||||
/obj/item/weapon/storage/belt/security,
|
||||
/obj/item/device/flash,
|
||||
/obj/item/weapon/reagent_containers/spray/pepper,
|
||||
/obj/item/weapon/grenade/flashbang,
|
||||
/obj/item/weapon/melee/baton/loaded,
|
||||
/obj/item/clothing/glasses/sunglasses/sechud,
|
||||
/obj/item/taperoll/police,
|
||||
/obj/item/device/hailer,
|
||||
/obj/item/device/flashlight/flare,
|
||||
/obj/item/clothing/accessory/storage/black_vest,
|
||||
/obj/item/clothing/head/soft/sec/corp,
|
||||
/obj/item/clothing/under/rank/security/corp,
|
||||
/obj/item/ammo_magazine/m45/rubber,
|
||||
/obj/item/weapon/gun/energy/taser,
|
||||
/obj/item/weapon/cell/device/weapon,
|
||||
/obj/item/clothing/suit/storage/hooded/wintercoat/security,
|
||||
/obj/item/clothing/shoes/boots/winter/security,
|
||||
/obj/item/device/flashlight/maglight,
|
||||
/obj/item/device/holowarrant, //CHOMPStation addition
|
||||
/obj/item/device/retail_scanner/security, //CHOMPStation addition
|
||||
/obj/item/clothing/glasses/hud/security, //CHOMPStation addition
|
||||
/obj/item/device/ticket_printer //CHOMPStation addition
|
||||
)
|
||||
|
||||
/obj/structure/closet/secure_closet/security/Initialize()
|
||||
if(prob(50))
|
||||
starts_with += /obj/item/weapon/storage/backpack/security
|
||||
else
|
||||
starts_with += /obj/item/weapon/storage/backpack/satchel/sec
|
||||
if(prob(50))
|
||||
starts_with += /obj/item/weapon/storage/backpack/dufflebag/sec
|
||||
if(prob(30))
|
||||
starts_with += /obj/item/poster/nanotrasen
|
||||
return ..()
|
||||
|
||||
/obj/structure/closet/secure_closet/security/cargo/Initialize()
|
||||
starts_with += /obj/item/clothing/accessory/armband/cargo
|
||||
starts_with += /obj/item/device/encryptionkey/headset_cargo
|
||||
return ..()
|
||||
|
||||
/obj/structure/closet/secure_closet/security/engine/Initialize()
|
||||
starts_with += /obj/item/clothing/accessory/armband/engine
|
||||
starts_with += /obj/item/device/encryptionkey/headset_eng
|
||||
return ..()
|
||||
|
||||
/obj/structure/closet/secure_closet/security/science/Initialize()
|
||||
starts_with += /obj/item/clothing/accessory/armband/science
|
||||
starts_with += /obj/item/device/encryptionkey/headset_sci
|
||||
return ..()
|
||||
|
||||
/obj/structure/closet/secure_closet/security/med/Initialize()
|
||||
starts_with += /obj/item/clothing/accessory/armband/medblue
|
||||
starts_with += /obj/item/device/encryptionkey/headset_med
|
||||
return ..()
|
||||
|
||||
|
||||
/obj/structure/closet/secure_closet/detective
|
||||
name = "detective's cabinet"
|
||||
req_access = list(access_forensics_lockers)
|
||||
closet_appearance = /decl/closet_appearance/cabinet/secure
|
||||
|
||||
open_sound = 'sound/effects/wooden_closet_open.ogg'
|
||||
close_sound = 'sound/effects/wooden_closet_close.ogg'
|
||||
|
||||
starts_with = list(
|
||||
/obj/item/clothing/accessory/badge/holo/detective,
|
||||
/obj/item/clothing/gloves/forensic, //CHOMP Edit replaces black gloves
|
||||
/obj/item/gunbox, //CHOMP Edit undoes vorestation removal and adds back gunbox
|
||||
/obj/item/gunbox/stun,
|
||||
/obj/item/weapon/storage/belt/detective,
|
||||
/obj/item/weapon/storage/box/evidence,
|
||||
/obj/item/device/radio/headset/headset_sec,
|
||||
/obj/item/device/radio/headset/headset_sec/alt,
|
||||
/obj/item/clothing/suit/storage/vest/detective,
|
||||
/obj/item/taperoll/police,
|
||||
/obj/item/clothing/accessory/holster/armpit,
|
||||
/obj/item/device/flashlight/maglight,
|
||||
/obj/item/weapon/reagent_containers/food/drinks/flask/detflask,
|
||||
/obj/item/weapon/storage/briefcase/crimekit,
|
||||
/obj/item/device/taperecorder,
|
||||
/obj/item/weapon/storage/bag/detective,
|
||||
/obj/item/device/tape/random = 3,
|
||||
/obj/item/device/retail_scanner/security, //CHOMPStation addition
|
||||
/obj/item/clothing/glasses/hud/security //CHOMPStation addition
|
||||
)
|
||||
|
||||
/obj/structure/closet/secure_closet/injection
|
||||
name = "lethal injections locker"
|
||||
req_access = list(access_captain)
|
||||
closet_appearance = /decl/closet_appearance/secure_closet/courtroom
|
||||
|
||||
starts_with = list(
|
||||
/obj/item/weapon/reagent_containers/syringe/ld50_syringe/choral = 2)
|
||||
|
||||
GLOBAL_LIST_BOILERPLATE(all_brig_closets, /obj/structure/closet/secure_closet/brig)
|
||||
|
||||
/obj/structure/closet/secure_closet/brig
|
||||
name = "brig locker"
|
||||
req_access = list(access_brig)
|
||||
closet_appearance = /decl/closet_appearance/secure_closet/brig
|
||||
anchored = TRUE
|
||||
var/id = null
|
||||
|
||||
starts_with = list(
|
||||
/obj/item/clothing/under/color/prison,
|
||||
/obj/item/clothing/shoes/orange)
|
||||
|
||||
/obj/structure/closet/secure_closet/posters
|
||||
name = "morale storage"
|
||||
req_access = list(access_security)
|
||||
anchored = TRUE
|
||||
|
||||
starts_with = list(
|
||||
/obj/item/poster/nanotrasen,
|
||||
/obj/item/poster/nanotrasen,
|
||||
/obj/item/poster/nanotrasen,
|
||||
/obj/item/poster/nanotrasen,
|
||||
/obj/item/poster/nanotrasen)
|
||||
|
||||
/obj/structure/closet/secure_closet/courtroom
|
||||
name = "courtroom locker"
|
||||
req_access = list(access_lawyer)
|
||||
closet_appearance = /decl/closet_appearance/secure_closet/courtroom
|
||||
|
||||
starts_with = list(
|
||||
/obj/item/clothing/shoes/brown,
|
||||
/obj/item/weapon/paper/Court = 3,
|
||||
/obj/item/weapon/pen,
|
||||
/obj/item/clothing/suit/judgerobe,
|
||||
/obj/item/clothing/head/powdered_wig,
|
||||
/obj/item/weapon/storage/briefcase)
|
||||
|
||||
|
||||
/obj/structure/closet/secure_closet/wall
|
||||
name = "wall locker"
|
||||
req_access = list(access_security)
|
||||
closet_appearance = /decl/closet_appearance/wall
|
||||
density = TRUE
|
||||
|
||||
//too small to put a man in
|
||||
large = 0
|
||||
Reference in New Issue
Block a user