To note - the original change was intentional change on Paradise/Polaris's part.
"You might not have been able to actually view the cameras, but you should have been able to open the interface."
* Yes, all of them.
* Also did a few corrections to redundant New() and broken Destroy() along the way
* Renamed the turf_initializer.initialize() proc to InitializeTurf to avoid confusion.
* Subsumed /area/proc/initialize into /atom/proc/initialize() - Made /area's LateInitialize to get same behavior as before.
* Yes, all of them.
* Also did a few corrections to redundant New() and broken Destroy() along the way
* Renamed the turf_initializer.initialize() proc to InitializeTurf to avoid confusion.
* Subsumed /area/proc/initialize into /atom/proc/initialize() - Made /area's LateInitialize to get same behavior as before.
Adds a traitor device to warn the traitor if they're being spied or are about to be spied on by the AI or anyone using a camera console.
It will warn the holder by changing color, beeping a specific tone, and sending a message to their chat log. It only does this when the state of spying changes, so it will not spam the chatlog if nothing changes. Only the holder can hear the warnings. It also functions like a regular multitool.
* Added a proc to the map datum which returns what zlevels a nanomap capable computer should display.
* Updated the atmos control, power monitoring, crew monitoring, and camera consoles to use it.
* Changed templates to not show the map button if no map levels are available.
Links many map-specific details such as the station name, z-level information, and allowed jobs from global vars to map datum vars, which should help us maintain multiple maps at once in the future, which will be needed for the future Southern Cross.
Note that a config change will be needed to change GENERATE_ASTEROID to GENERATE_MAP, otherwise no changes should be required to continue normal map usage.
To change to a different map, it's suggested to tick the file that ticks all the other needed files, which for the Northern Star is called northern_star.dm.
Improves camera EMP handling. Now uses a var and processing to determine when the EMP should end, preventing inconsistent states when a camera is EMPd multiple times.
Reduces the process and bandwidth need for cameras.
* There is now a common camera repository, responsible for setting up cameras once for every invalidation.
* Camera consoles now only updates when the camera cache is invalidated, not every second.
* The console now only presents one network at a time, and only sends the data necessary to view that network (as opposed to sending the data for all cameras).
Refactors how synthetics set their modules. On login, if appearance selection was initiated but not finalized, the selection options popup again. Fixes a long-standing issue of borgs being able to look like the standard module by loging out.
Ensures the syndicate agent IDs and syndicate borgs will always have the same initial access permissions.
Removes now unnecessary syndicate snowflake code from NanoUI.
Synths now utilize actual ids.
Computers now use an overlay based system, instead of demanding a full set of icons (on, off, broken) for every different computer.
Partially ports ParadiseSS13/Paradise#1468 which is a port of tgstation/-tg-station#9931.
Partial port from vgstation.
Notable differences:
handle_regular_hud_updates() is called anytime view is reset, instead of
just from the cancel camera verb. check_eye() now returns the vision
flags to be set on the viewer. Moved cameraFollow to silicon. Camera
consoles now call reset_view explicitly when they want to change a mob's
view, instead of leaving it as a side effect of check_eye()