Add proc set_viewsize() to allow hooking actions when client.view is changed.

- Proc is on mob to simplify the standard use case; maybe someday actually save it there too if desired.
This commit is contained in:
Leshana
2020-03-14 16:26:56 -04:00
parent 0d7f59242e
commit 73c4809d26
6 changed files with 17 additions and 10 deletions
+2 -4
View File
@@ -56,16 +56,14 @@ somewhere on that shuttle. Subtypes of these can be then used to perform ship ov
/obj/machinery/computer/ship/proc/look(var/mob/user)
if(linked)
user.reset_view(linked)
if(user.client)
user.client.view = world.view + extra_view
user.set_viewsize(world.view + extra_view)
GLOB.moved_event.register(user, src, /obj/machinery/computer/ship/proc/unlook)
// TODO GLOB.stat_set_event.register(user, src, /obj/machinery/computer/ship/proc/unlook)
LAZYDISTINCTADD(viewers, weakref(user))
/obj/machinery/computer/ship/proc/unlook(var/mob/user)
user.reset_view()
if(user.client)
user.client.view = world.view
user.set_viewsize() // reset to default
GLOB.moved_event.unregister(user, src, /obj/machinery/computer/ship/proc/unlook)
// TODO GLOB.stat_set_event.unregister(user, src, /obj/machinery/computer/ship/proc/unlook)
LAZYREMOVE(viewers, weakref(user))