diff --git a/_maps/map_files/BoxStation/BoxStation.dmm b/_maps/map_files/BoxStation/BoxStation.dmm index 70d53643d0..ce5a4d5c9f 100644 --- a/_maps/map_files/BoxStation/BoxStation.dmm +++ b/_maps/map_files/BoxStation/BoxStation.dmm @@ -893,7 +893,7 @@ /turf/open/floor/carpet, /area/crew_quarters/heads/hos) "aco" = ( -/obj/structure/closet/bombcloset, +/obj/structure/closet/bombcloset/security, /turf/open/floor/plasteel/showroomfloor, /area/security/main) "acp" = ( diff --git a/_maps/map_files/Deltastation/DeltaStation2.dmm b/_maps/map_files/Deltastation/DeltaStation2.dmm index dcb83ee9bb..6f634cba41 100644 --- a/_maps/map_files/Deltastation/DeltaStation2.dmm +++ b/_maps/map_files/Deltastation/DeltaStation2.dmm @@ -25204,7 +25204,7 @@ /area/security/prison) "baF" = ( /obj/effect/decal/cleanable/dirt, -/obj/structure/closet/bombcloset, +/obj/structure/closet/bombcloset/security, /turf/open/floor/plasteel/vault{ dir = 8 }, diff --git a/_maps/map_files/MetaStation/MetaStation.dmm b/_maps/map_files/MetaStation/MetaStation.dmm index 229ba40ea9..f8a69689b0 100644 --- a/_maps/map_files/MetaStation/MetaStation.dmm +++ b/_maps/map_files/MetaStation/MetaStation.dmm @@ -4763,7 +4763,7 @@ /turf/open/floor/plasteel, /area/security/warden) "ajw" = ( -/obj/structure/closet/bombcloset, +/obj/structure/closet/bombcloset/security, /obj/machinery/atmospherics/pipe/manifold/scrubbers/hidden{ dir = 4 }, diff --git a/_maps/map_files/PubbyStation/PubbyStation.dmm b/_maps/map_files/PubbyStation/PubbyStation.dmm index 51dd61f255..87e314b5ba 100644 --- a/_maps/map_files/PubbyStation/PubbyStation.dmm +++ b/_maps/map_files/PubbyStation/PubbyStation.dmm @@ -2788,7 +2788,7 @@ /turf/open/floor/plasteel/showroomfloor, /area/security/main) "aip" = ( -/obj/structure/closet/bombcloset, +/obj/structure/closet/bombcloset/security, /obj/effect/turf_decal/delivery, /turf/open/floor/plasteel/showroomfloor, /area/security/main) diff --git a/code/game/objects/structures/crates_lockers/closets/utility_closets.dm b/code/game/objects/structures/crates_lockers/closets/utility_closets.dm index a87d8c136e..055b660885 100644 --- a/code/game/objects/structures/crates_lockers/closets/utility_closets.dm +++ b/code/game/objects/structures/crates_lockers/closets/utility_closets.dm @@ -1,3 +1,4 @@ +<<<<<<< HEAD /* Utility Closets * Contains: * Emergency Closet @@ -178,3 +179,185 @@ ..() for(var/i in 1 to 8) new /obj/item/ammo_casing/shotgun/beanbag(src) +======= +/* 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 breath masks and O2 tanks." + icon_state = "emergency" + +/obj/structure/closet/emcloset/anchored + anchored = TRUE + +/obj/structure/closet/emcloset/PopulateContents() + ..() + + if (prob(40)) + new /obj/item/storage/toolbox/emergency(src) + + switch (pickweight(list("small" = 40, "aid" = 25, "tank" = 20, "both" = 10, "nothing" = 4, "delete" = 1))) + 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/firstaid/o2(src) + new /obj/item/clothing/mask/breath(src) + + if ("tank") + new /obj/item/tank/internals/air(src) + new /obj/item/clothing/mask/breath(src) + + if ("both") + new /obj/item/tank/internals/emergency_oxygen(src) + new /obj/item/clothing/mask/breath(src) + + if ("nothing") + // doot + + // teehee + if ("delete") + qdel(src) + + //If you want to re-add fire, just add "fire" = 15 to the pick list. + /*if ("fire") + new /obj/structure/closet/firecloset(src.loc) + qdel(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/PopulateContents() + ..() + + 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/extinguisher(src) + new /obj/item/clothing/head/hardhat/red(src) + +/obj/structure/closet/firecloset/full/PopulateContents() + new /obj/item/clothing/suit/fire/firefighter(src) + new /obj/item/clothing/mask/gas(src) + new /obj/item/device/flashlight(src) + new /obj/item/tank/internals/oxygen/red(src) + new /obj/item/extinguisher(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" + icon_door = "eng_tool" + +/obj/structure/closet/toolcloset/PopulateContents() + ..() + if(prob(40)) + new /obj/item/clothing/suit/hazardvest(src) + if(prob(70)) + new /obj/item/device/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/device/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/device/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" + icon_door = "eng_rad" + +/obj/structure/closet/radiation/PopulateContents() + ..() + new /obj/item/device/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/PopulateContents() + ..() + new /obj/item/clothing/suit/bomb_suit(src) + new /obj/item/clothing/under/color/black(src) + new /obj/item/clothing/shoes/sneakers/black(src) + new /obj/item/clothing/head/bomb_hood(src) + +/obj/structure/closet/bombcloset/security/PopulateContents() + new /obj/item/clothing/suit/bomb_suit/security(src) + new /obj/item/clothing/under/rank/security(src) + new /obj/item/clothing/shoes/jackboots(src) + new /obj/item/clothing/head/bomb_hood/security(src) + +/obj/structure/closet/bombcloset/white/PopulateContents() + new /obj/item/clothing/suit/bomb_suit/white(src) + new /obj/item/clothing/under/color/black(src) + new /obj/item/clothing/shoes/sneakers/black(src) + new /obj/item/clothing/head/bomb_hood/white(src) + +/* + * Ammunition + */ +/obj/structure/closet/ammunitionlocker + name = "ammunition locker" + +/obj/structure/closet/ammunitionlocker/PopulateContents() + ..() + for(var/i in 1 to 8) + new /obj/item/ammo_casing/shotgun/beanbag(src) +>>>>>>> 2145af9... Merge pull request #31707 from ShizCalev/bombsuit diff --git a/code/modules/clothing/suits/utility.dm b/code/modules/clothing/suits/utility.dm index 835ac2374b..38fbe299f5 100644 --- a/code/modules/clothing/suits/utility.dm +++ b/code/modules/clothing/suits/utility.dm @@ -59,6 +59,8 @@ flags_1 = THICKMATERIAL_1 armor = list(melee = 20, bullet = 0, laser = 20,energy = 10, bomb = 100, bio = 0, rad = 0, fire = 80, acid = 50) flags_inv = HIDEFACE|HIDEMASK|HIDEEARS|HIDEEYES|HIDEHAIR|HIDEFACIALHAIR + dynamic_hair_suffix = "" + dynamic_fhair_suffix = "" cold_protection = HEAD min_cold_protection_temperature = HELMET_MIN_TEMP_PROTECT heat_protection = HEAD @@ -92,15 +94,23 @@ /obj/item/clothing/head/bomb_hood/security - icon_state = "bombsuitsec" - item_state = "bombsuitsec" - + icon_state = "bombsuit_sec" + item_state = "bombsuit_sec" /obj/item/clothing/suit/bomb_suit/security - icon_state = "bombsuitsec" - item_state = "bombsuitsec" + icon_state = "bombsuit_sec" + item_state = "bombsuit_sec" allowed = list(/obj/item/gun/energy, /obj/item/melee/baton, /obj/item/restraints/handcuffs) + +/obj/item/clothing/head/bomb_hood/white + icon_state = "bombsuit_white" + item_state = "bombsuit_white" + +/obj/item/clothing/suit/bomb_suit/white + icon_state = "bombsuit_white" + item_state = "bombsuit_white" + /* * Radiation protection */