diff --git a/code/defines/obj/closet.dm b/code/defines/obj/closet.dm index 52b5c7d1379..2b23ae0d50c 100644 --- a/code/defines/obj/closet.dm +++ b/code/defines/obj/closet.dm @@ -8,6 +8,7 @@ var/icon_opened = "open" var/opened = 0 var/welded = 0 + var/wall_mounted = 0 //never solid (You can always pass over it) flags = FPRINT /obj/spresent @@ -37,11 +38,22 @@ icon_opened = "fireclosetopen" /obj/closet/hydrant //wall mounted fire closet + anchored = 1 desc = "A wall mounted closet which comes with supplies to fight fire." name = "Fire Closet" icon_state = "hydrant" icon_closed = "hydrant" icon_opened = "hydrant_open" + wall_mounted = 1 + +/obj/closet/medical_wall //wall mounted fire closet + anchored = 1 + desc = "A wall mounted closet which should have some first aid." + name = "First Aid Closet" + icon_state = "medical_wall" + icon_closed = "medical_wall" + icon_opened = "medical_wall_open" + wall_mounted = 1 /obj/closet/fireaxecabinet name = "Fire Axe Cabinet" @@ -577,6 +589,7 @@ var/icon_opened = "secureopen" var/icon_broken = "securebroken" var/icon_off = "secureoff" + var/wall_mounted = 0 //never solid (You can always pass over it) /obj/secure_closet/courtroom name = "Courtroom Locker" @@ -644,6 +657,19 @@ name = "Medical Doctor's Locker" req_access = list(access_medical) +/obj/secure_closet/medical_wall + anchored = 1 + name = "First Aid Closet" + desc = "A wall mounted closet which --should-- contain medical 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" + req_access = list(access_medical) + wall_mounted = 1 + /obj/secure_closet/RD name = "Research Director" req_access = list(access_rd) diff --git a/code/game/objects/closets.dm b/code/game/objects/closets.dm index cf12e07b3a3..a8c3673cd05 100644 --- a/code/game/objects/closets.dm +++ b/code/game/objects/closets.dm @@ -2,7 +2,7 @@ return get_turf(src) /obj/closet/CanPass(atom/movable/mover, turf/target, height=0, air_group=0) - if(air_group || (height==0)) return 1 + if(air_group || (height==0 || wall_mounted)) return 1 return opened diff --git a/code/game/objects/secure_closets.dm b/code/game/objects/secure_closets.dm index 966dc825b46..442cc7b4735 100644 --- a/code/game/objects/secure_closets.dm +++ b/code/game/objects/secure_closets.dm @@ -2,7 +2,7 @@ return get_turf(src) /obj/secure_closet/CanPass(atom/movable/mover, turf/target, height=0, air_group=0) - if(air_group || (height==0)) return 1 + if(air_group || (height==0) || wall_mounted) return 1 return src.opened @@ -69,7 +69,10 @@ M.client.eye = src M.loc = src - src.icon_state = src.icon_closed + if(broken) + src.icon_state = src.icon_off + else + src.icon_state = src.icon_closed src.opened = 0 playsound(src.loc, 'click.ogg', 15, 1, -3) return 1 diff --git a/icons/obj/closet.dmi b/icons/obj/closet.dmi index 36a84a3431d..40994b6570a 100644 Binary files a/icons/obj/closet.dmi and b/icons/obj/closet.dmi differ