mirror of
https://github.com/CHOMPStation2/CHOMPStation2.git
synced 2025-12-10 18:22:39 +00:00
Adds a floppy disk which provides access to the station camera network given appropriate hardware.
This commit is contained in:
@@ -55,7 +55,8 @@
|
||||
new/datum/uplink_item(/obj/item/weapon/storage/box/syndie_kit/spy, 2, "Spy Kit", "SK"),
|
||||
new/datum/uplink_item(/obj/item/weapon/storage/box/syndie_kit/chameleon, 3, "Chameleon Kit", "CB"),
|
||||
new/datum/uplink_item(/obj/item/device/chameleon, 4, "Chameleon-Projector", "CP"),
|
||||
new/datum/uplink_item(/obj/item/clothing/mask/gas/voice, 4, "Voice Changer", "VC")
|
||||
new/datum/uplink_item(/obj/item/clothing/mask/gas/voice, 4, "Voice Changer", "VC"),
|
||||
new/datum/uplink_item(/obj/item/weapon/disk/file/cameras/syndicate, 6, "Camera Network Access - Floppy", "SF")
|
||||
),
|
||||
"Devices and Tools" = list(
|
||||
new/datum/uplink_item(/obj/item/weapon/storage/toolbox/syndicate, 1, "Fully Loaded Toolbox", "ST"),
|
||||
|
||||
@@ -123,6 +123,12 @@
|
||||
desc = "Monitors the prison."
|
||||
networks = list("Prison")
|
||||
|
||||
/datum/file/camnet_key/syndicate
|
||||
name = "Camera Network Key"
|
||||
title = "%!#BUFFER OVERFLOW"
|
||||
desc = "Connects to security cameras."
|
||||
networks = list("SS13")
|
||||
hidden_file = 1
|
||||
|
||||
|
||||
/*
|
||||
@@ -174,7 +180,7 @@
|
||||
|
||||
/datum/file/program/security
|
||||
name = "camera monitor"
|
||||
desc = "Connets to the Nanotrasen Camera Network"
|
||||
desc = "Connects to the Nanotrasen Camera Network"
|
||||
image = 'icons/ntos/camera.png'
|
||||
active_state = "camera-static"
|
||||
|
||||
@@ -268,15 +274,19 @@
|
||||
reset_current()
|
||||
usr.reset_view(null)
|
||||
key = input(usr,"Select a camera network key:", "Key Select", null) as null|anything in computer.list_files(/datum/file/camnet_key)
|
||||
camera_list = null
|
||||
update_icon()
|
||||
computer.update_icon()
|
||||
select_key(key)
|
||||
if(key)
|
||||
interact()
|
||||
else
|
||||
usr << "The screen turns to static."
|
||||
return
|
||||
|
||||
/datum/file/program/security/proc/select_key(var/selected_key)
|
||||
key = selected_key
|
||||
camera_list = null
|
||||
update_icon()
|
||||
computer.update_icon()
|
||||
|
||||
/datum/file/program/security/proc/set_current(var/obj/machinery/camera/C)
|
||||
if(current == C)
|
||||
return
|
||||
@@ -300,3 +310,35 @@
|
||||
// Atlantis: Required for camnetkeys to work.
|
||||
/datum/file/program/security/hidden
|
||||
hidden_file = 1
|
||||
|
||||
/*
|
||||
Camera monitoring program
|
||||
|
||||
Works much as the parent program, except:
|
||||
* It requires a camera to be found using the proximity network card.
|
||||
* It begins with all cam-access.
|
||||
*/
|
||||
|
||||
/datum/file/program/security/syndicate
|
||||
name = "camer# moni!%r"
|
||||
desc = "Cons the Nanotrash Camera Network"
|
||||
var/special_key = new/datum/file/camnet_key/syndicate
|
||||
var/camera_conn = null
|
||||
|
||||
interact()
|
||||
if(!interactable())
|
||||
return
|
||||
|
||||
if(!computer.net)
|
||||
computer.Crash(MISSING_PERIPHERAL)
|
||||
return
|
||||
|
||||
camera_conn = computer.net.connect_to(/obj/machinery/camera,camera_conn)
|
||||
|
||||
if(!camera_conn)
|
||||
computer.Crash(NETWORK_FAILURE)
|
||||
return
|
||||
|
||||
// On interact, override camera key selection
|
||||
select_key(special_key)
|
||||
..()
|
||||
|
||||
@@ -169,6 +169,9 @@
|
||||
if(typekey == null)
|
||||
typekey = /obj/machinery
|
||||
var/list/machines = list()
|
||||
for(var/obj/O in T)
|
||||
if(istype(O,typekey))
|
||||
machines += O
|
||||
for(var/d in cardinal)
|
||||
var/turf/T2 = get_step(T,d)
|
||||
for(var/obj/O in T2)
|
||||
|
||||
@@ -28,6 +28,13 @@
|
||||
icon_state = "datadisk_arcade"
|
||||
spawn_files = list(/datum/file/program/security)
|
||||
|
||||
/obj/item/weapon/disk/file/cameras/syndicate
|
||||
name = "Camera Viewer"
|
||||
desc = "A program install disk. A crude skull has been drawn on it and there is a list of items:\nFloppy Drive\nCamera Card\nNetwork Card: Adjacent\nPosition laptop nearby camera, enjoy."
|
||||
icon = 'icons/obj/stock_parts.dmi'
|
||||
icon_state = "datadisk_arcade"
|
||||
spawn_files = list(/datum/file/program/security/syndicate)
|
||||
|
||||
/obj/item/weapon/disk/file/card
|
||||
name = "ID Card Modifier"
|
||||
desc = "A program install disk."
|
||||
|
||||
Reference in New Issue
Block a user