cameranet ![code/modules/mob/living/silicon/ai/freelook/cameranet.dm 7](git.png)
Vars | |
cameras | The cameras on the map, no matter if they work or not. Updated in obj/machinery/camera.dm in Initialize() and Destroy(). |
---|---|
chunks | The chunks of the map, mapping the areas that the cameras can see. |
name | Name to show for VV and stat() |
obscured_images | List of images cloned by all chunk static images put onto turfs cameras cant see Indexed by the plane offset to use |
Procs | |
addCamera | Add a camera to a chunk. |
bareMajorChunkChange | A faster, turf only version of /datum/cameranet/proc/majorChunkChange For use in sensitive code, be careful with it |
checkCameraVis | Will check if a mob is on a viewable turf. Returns 1 if it is, otherwise returns 0. |
chunkGenerated | Checks if a chunk has been Generated in x, y, z. |
get_available_camera_by_tag_list | get_available_camera_by_tag_list |
get_available_cameras_data | Returns list of available cameras, ready to use for UIs displaying list of them The format is: list("name" = "camera.c_tag", ref = REF(camera)) |
get_filtered_and_sorted_cameras | Returns list of all cameras that passed is_camera_available filter and sorted by cmp_camera_ctag_asc |
is_camera_available | Checks if the camera_to_check meets the requirements of availability. |
majorChunkChange | Never access this proc directly!!!! This will update the chunk and all the surrounding chunks. It will also add the atom to the cameras list if you set the choice to 1. Setting the choice to 0 will remove the camera from the chunks. If you want to update the chunks around an object, without adding/removing a camera, use choice 2. update_delay_buffer is passed all the way to hasChanged() from portable camera updates on movement to change the time between static updates. |
removeCamera | Removes a camera from a chunk. |
updatePortableCamera | Used for Cyborg/mecha cameras. Since portable cameras can be in ANY chunk. update_delay_buffer is passed all the way to hasChanged() from their camera updates on movement to change the time between static updates. |
updateVisibility | Updates the chunks that the turf is located in. Use this when obstacles are destroyed or when doors open. |
visibility | Updates what the camera eye can see. It is recommended you use this when a camera eye moves or its location is set. |
Var Details
cameras ![code/modules/mob/living/silicon/ai/freelook/cameranet.dm 12](git.png)
The cameras on the map, no matter if they work or not. Updated in obj/machinery/camera.dm in Initialize() and Destroy().
chunks ![code/modules/mob/living/silicon/ai/freelook/cameranet.dm 14](git.png)
The chunks of the map, mapping the areas that the cameras can see.
name ![code/modules/mob/living/silicon/ai/freelook/cameranet.dm 9](git.png)
Name to show for VV and stat()
obscured_images ![code/modules/mob/living/silicon/ai/freelook/cameranet.dm 20](git.png)
List of images cloned by all chunk static images put onto turfs cameras cant see Indexed by the plane offset to use
Proc Details
addCamera
Add a camera to a chunk.
bareMajorChunkChange
A faster, turf only version of /datum/cameranet/proc/majorChunkChange For use in sensitive code, be careful with it
checkCameraVis
Will check if a mob is on a viewable turf. Returns 1 if it is, otherwise returns 0.
chunkGenerated
Checks if a chunk has been Generated in x, y, z.
get_available_camera_by_tag_list
get_available_camera_by_tag_list
Builds a list of all available cameras that can be seen to networks_available and in z_levels_available.
Entries are stored in c_tag[camera.can_use() ? null : " (Deactivated)"]
=> camera
format
Args:
networks_available - List of networks that we use to see which cameras are visible to it.
z_levels_available - List of z levels to filter camera by. If empty, all z levels are considered valid.
sort_by_ctag - If the resulting list should be sorted by c_tag
.
get_available_cameras_data
Returns list of available cameras, ready to use for UIs displaying list of them The format is: list("name" = "camera.c_tag", ref = REF(camera))
get_filtered_and_sorted_cameras
Returns list of all cameras that passed is_camera_available
filter and sorted by cmp_camera_ctag_asc
is_camera_available
Checks if the camera_to_check
meets the requirements of availability.
majorChunkChange
Never access this proc directly!!!! This will update the chunk and all the surrounding chunks. It will also add the atom to the cameras list if you set the choice to 1. Setting the choice to 0 will remove the camera from the chunks. If you want to update the chunks around an object, without adding/removing a camera, use choice 2. update_delay_buffer is passed all the way to hasChanged() from portable camera updates on movement to change the time between static updates.
removeCamera
Removes a camera from a chunk.
updatePortableCamera
Used for Cyborg/mecha cameras. Since portable cameras can be in ANY chunk. update_delay_buffer is passed all the way to hasChanged() from their camera updates on movement to change the time between static updates.
updateVisibility
Updates the chunks that the turf is located in. Use this when obstacles are destroyed or when doors open.
visibility
Updates what the camera eye can see. It is recommended you use this when a camera eye moves or its location is set.