Reduces vision while in closet or trash pile and fixes closet teleporter camera update (#21154)

This started out as an update to reduce vision while inside closets.
While I was testing that, I noticed closet teleporters weren't updating
the camera properly, so I fixed that, as well as a bug with an early
`return` causing closets to have 0 density while a closet teleporter was
on cooldown.


Reduce vision inside locker:
<img width="1354" height="1345" alt="image"
src="https://github.com/user-attachments/assets/5f581031-51c0-4502-bddd-21045329c754"
/>
This commit is contained in:
AlaunusLux
2025-08-15 13:58:31 +00:00
committed by GitHub
parent 86d2f868ac
commit 4697e7b347
5 changed files with 75 additions and 3 deletions
@@ -190,6 +190,7 @@
if(M.client)
M.client.eye = M.client.mob
M.client.perspective = MOB_PERSPECTIVE
M.set_fullscreen(FALSE, "closet_impaired", /atom/movable/screen/fullscreen/closet_impaired)
/obj/structure/closet/proc/open()
if(opened)
@@ -232,9 +233,7 @@
animate_door_alt(TRUE)
update_icon()
if(linked_teleporter)
if(linked_teleporter.last_use + 600 > world.time)
return
if(linked_teleporter && linked_teleporter.last_use + 600 < world.time)
var/did_teleport = FALSE
for(var/mob/M in contents)
if(linked_teleporter.do_teleport(M))
@@ -279,6 +278,7 @@
if(M.client)
M.client.perspective = EYE_PERSPECTIVE
M.client.eye = src
M.set_fullscreen(TRUE, "closet_impaired", /atom/movable/screen/fullscreen/closet_impaired)
M.forceMove(src)
added_units += M.mob_size
if(mob_limit) //We only want to store one valid mob