Files
Chap b51cc0f31c [PORT/FEATURE] Animated closet doors (#26832)
* Adds animated closets

* Remove unecessary icon states and fixes secure closets

* Actually fixes secure closets

* Please our linting overlords.

* Fixes non-crate subtypes

* Update code/game/objects/structures/crates_lockers/closets.dm

Co-authored-by: Luc <89928798+lewcc@users.noreply.github.com>
Signed-off-by: Chap <erwin@lombok.demon.nl>

* Moved legacy closet icons to seperate file

* Remove some unused variables

* GC

* Moved to proper destroy

* It's good when code compiles

---------

Signed-off-by: Chap <erwin@lombok.demon.nl>
Co-authored-by: adrermail@gmail.com <adrermail@gmail.com>
Co-authored-by: Luc <89928798+lewcc@users.noreply.github.com>
2024-10-14 14:05:16 +00:00

160 lines
4.5 KiB
Plaintext

/* Utility Closets
* Contains:
* Emergency Closet
* Fire Closet
* Tool Closet
* Radiation Closet
* Bombsuit Closet
* Hydrant
* First Aid
*/
/*
* Emergency Closet
*/
/obj/structure/closet/emcloset
name = "emergency closet"
desc = "It's a storage unit for emergency breathmasks and o2 tanks."
icon_state = "emergency"
/obj/structure/closet/emcloset/anchored
anchored = TRUE
/obj/structure/closet/emcloset/populate_contents()
switch(pickweight(list("small" = 55, "aid" = 25, "tank" = 10, "both" = 10, "nothing" = 0, "delete" = 0)))
if("small")
new /obj/item/tank/internals/emergency_oxygen(src)
new /obj/item/tank/internals/emergency_oxygen(src)
new /obj/item/clothing/mask/breath(src)
new /obj/item/clothing/mask/breath(src)
if("aid")
new /obj/item/tank/internals/emergency_oxygen(src)
new /obj/item/storage/toolbox/emergency(src)
new /obj/item/clothing/mask/breath(src)
new /obj/item/storage/firstaid/o2(src)
if("tank")
new /obj/item/tank/internals/emergency_oxygen/engi(src)
new /obj/item/clothing/mask/breath(src)
new /obj/item/tank/internals/emergency_oxygen/engi(src)
new /obj/item/clothing/mask/breath(src)
if("both")
new /obj/item/storage/toolbox/emergency(src)
new /obj/item/tank/internals/emergency_oxygen/engi(src)
new /obj/item/clothing/mask/breath(src)
new /obj/item/storage/firstaid/o2(src)
// teehee - Ah, tg coders...
if("delete")
qdel(src) // Please make this use init hints its called from Initialize() I beg
/obj/structure/closet/emcloset/legacy/populate_contents()
new /obj/item/tank/internals/oxygen(src)
new /obj/item/clothing/mask/gas(src)
/*
* Fire Closet
*/
/obj/structure/closet/firecloset
name = "fire-safety closet"
desc = "It's a storage unit for fire-fighting supplies."
icon_state = "fire"
/obj/structure/closet/firecloset/populate_contents()
new /obj/item/extinguisher(src)
new /obj/item/clothing/suit/fire/firefighter(src)
new /obj/item/clothing/mask/gas(src)
new /obj/item/tank/internals/oxygen/red(src)
new /obj/item/clothing/head/hardhat/red(src)
/obj/structure/closet/firecloset/full/populate_contents()
new /obj/item/extinguisher(src)
new /obj/item/clothing/suit/fire/firefighter(src)
new /obj/item/clothing/mask/gas(src)
new /obj/item/flashlight(src)
new /obj/item/tank/internals/oxygen/red(src)
new /obj/item/clothing/head/hardhat/red(src)
/*
* Tool Closet
*/
/obj/structure/closet/toolcloset
name = "tool closet"
desc = "It's a storage unit for tools."
icon_state = "eng"
closed_door_sprite = "eng_tool"
/obj/structure/closet/toolcloset/populate_contents()
if(prob(40))
new /obj/item/clothing/suit/storage/hazardvest/staff(src)
if(prob(70))
new /obj/item/flashlight(src)
if(prob(70))
new /obj/item/screwdriver(src)
if(prob(70))
new /obj/item/wrench(src)
if(prob(70))
new /obj/item/weldingtool(src)
if(prob(70))
new /obj/item/crowbar(src)
if(prob(70))
new /obj/item/wirecutters(src)
if(prob(70))
new /obj/item/t_scanner(src)
if(prob(20))
new /obj/item/storage/belt/utility(src)
if(prob(30))
new /obj/item/stack/cable_coil/random(src)
if(prob(30))
new /obj/item/stack/cable_coil/random(src)
if(prob(30))
new /obj/item/stack/cable_coil/random(src)
if(prob(20))
new /obj/item/multitool(src)
if(prob(5))
new /obj/item/clothing/gloves/color/yellow(src)
if(prob(40))
new /obj/item/clothing/head/hardhat(src)
/*
* Radiation Closet
*/
/obj/structure/closet/radiation
name = "radiation suit closet"
desc = "It's a storage unit for rad-protective suits."
icon_state = "eng"
closed_door_sprite = "eng_rad"
/obj/structure/closet/radiation/populate_contents()
new /obj/item/geiger_counter(src)
new /obj/item/clothing/suit/radiation(src)
new /obj/item/clothing/head/radiation(src)
/*
* Bombsuit closet
*/
/obj/structure/closet/bombcloset
name = "\improper EOD closet"
desc = "It's a storage unit for explosion-protective suits."
icon_state = "bomb"
/obj/structure/closet/bombcloset/populate_contents()
new /obj/item/clothing/suit/bomb_suit( src )
new /obj/item/clothing/under/color/black( src )
new /obj/item/clothing/shoes/black( src )
new /obj/item/clothing/head/bomb_hood( src )
/obj/structure/closet/bombclosetsecurity
name = "\improper EOD closet"
desc = "It's a storage unit for explosion-protective suits."
icon_state = "bomb"
/obj/structure/closet/bombclosetsecurity/populate_contents()
new /obj/item/clothing/suit/bomb_suit/security( src )
new /obj/item/clothing/under/rank/security/officer( src )
new /obj/item/clothing/shoes/brown( src )
new /obj/item/clothing/head/bomb_hood/security( src )