Relaymove Moved To Remote Views (#18714)

* Remote view setting datums

* remote view handles relayed move

* setting up checks

* many fixes

* small fixes

* default relay behavior

* use camera settings

* coordinated for overmap shuttle

* lock this down

* not needed

* not needed

* inaccurate doc

* small fixes

* various set machine calls no longer needed

* runtime

* health hud moved to signal controls

* overriding huds

* allow signal based huds entirely

* uav health icon

* fix

* oops that's important

* more return types

* mmis view fix

* not needed

* protect against instantly deleted ghosts

* all of these need remote on enter

* these too

* order
This commit is contained in:
Will
2025-11-05 17:47:58 -05:00
committed by GitHub
parent 8f08fd5500
commit fd60bee1cb
45 changed files with 560 additions and 418 deletions
+2 -2
View File
@@ -268,11 +268,11 @@ GLOBAL_LIST_EMPTY(all_waypoints)
. = TRUE
if("manual")
if(check_eye(ui.user) < 0)
if(!get_dist(ui.user, src) > 1 || ui.user.blinded || !linked)
return FALSE
else if(!viewing_overmap(ui.user) && linked)
if(!viewers) viewers = list() // List must exist for pass by reference to work
start_coordinated_remoteview(ui.user, linked, viewers)
start_coordinated_remoteview(ui.user, linked, viewers, /datum/remote_view_config/overmap_ship_control)
else
ui.user.reset_perspective()
. = TRUE
@@ -89,7 +89,7 @@
switch(action)
if("viewing")
if(ui.user && !isAI(ui.user))
if(check_eye(ui.user) < 0)
if(!get_dist(ui.user, src) > 1 || ui.user.blinded || !linked)
. = FALSE
else if(!viewing_overmap(ui.user) && linked)
if(!viewers) viewers = list() // List must exist for pass by reference to work
@@ -67,22 +67,13 @@ somewhere on that shuttle. Subtypes of these can be then used to perform ship ov
// Management of mob view displacement. look to shift view to the ship on the overmap; unlook to shift back.
/obj/machinery/computer/ship/look(var/mob/user)
apply_visual(user)
if(linked.real_appearance)
user.client?.images += linked.real_appearance
user.set_machine(src)
if(isliving(user))
var/mob/living/L = user
L.handle_vision()
user.set_viewsize(world.view + extra_view)
/obj/machinery/computer/ship/unlook(var/mob/user)
user.unset_machine()
if(linked && linked.real_appearance && user.client)
user.client.images -= linked.real_appearance
if(isliving(user))
var/mob/living/L = user
L.handle_vision()
user.set_viewsize() // reset to default
/obj/machinery/computer/ship/proc/viewing_overmap(mob/user)
@@ -92,13 +83,6 @@ somewhere on that shuttle. Subtypes of these can be then used to perform ship ov
. = ..()
user.reset_perspective()
/obj/machinery/computer/ship/check_eye(var/mob/user)
if(user.blinded || !linked)
user.reset_perspective()
return -1
else
return 0
/obj/machinery/computer/ship/sensors/Destroy()
sensors = null
. = ..()