#ifndef T_BOARD #error T_BOARD macro is not defined but we need it! #endif /obj/item/circuitboard/security name = T_BOARD("security camera monitor") build_path = /obj/machinery/computer/security req_access = list(ACCESS_SECURITY_EQUIPMENT) var/list/network var/locked = TRUE var/emagged = 0 /obj/item/circuitboard/security/Initialize(mapload) . = ..() network = (LEGACY_MAP_DATUM)?.station_networks /obj/item/circuitboard/security/tv name = T_BOARD("security camera monitor - television") build_path = /obj/machinery/computer/security/wooden_tv /obj/item/circuitboard/security/engineering name = T_BOARD("engineering camera monitor") build_path = /obj/machinery/computer/security/engineering req_access = list() /obj/item/circuitboard/security/engineering/Initialize(mapload) . = ..() network = engineering_networks /obj/item/circuitboard/security/mining name = T_BOARD("mining camera monitor") build_path = /obj/machinery/computer/security/mining network = list("Mining Outpost") req_access = list() /obj/item/circuitboard/security/telescreen/entertainment name = T_BOARD("entertainment camera monitor") build_path = /obj/machinery/computer/security/telescreen/entertainment board_type = new /datum/frame/frame_types/display materials_base = list(MAT_STEEL = 50, MAT_GLASS = 50) /obj/item/circuitboard/security/telescreen/entertainment/Initialize(mapload) . = ..() network = NETWORK_THUNDER /obj/item/circuitboard/security/after_construct(atom/A) . = ..() if(!istype(A, /obj/machinery/computer/security)) return var/obj/machinery/computer/security/S = A S.set_network(network.Copy()) /obj/item/circuitboard/security/after_deconstruct(atom/A) . = ..() if(!istype(A, /obj/machinery/computer/security)) return var/obj/machinery/computer/security/S = A network = S.network.Copy() /obj/item/circuitboard/security/emag_act(remaining_charges, mob/user) if(emagged) to_chat(user, "Circuit lock is already removed.") return to_chat(user, SPAN_NOTICE("You override the circuit lock and open controls.")) emagged = 1 locked = FALSE return 1 /obj/item/circuitboard/security/attackby(obj/item/I as obj, mob/user as mob) if(istype(I,/obj/item/card/id)) if(emagged) to_chat(user, SPAN_WARNING("Circuit lock does not respond.")) return if(check_access(I)) locked = !locked to_chat(user, SPAN_NOTICE("You [locked ? "" : "un"]lock the circuit controls.")) else to_chat(user, SPAN_WARNING("Access denied.")) else if(istype(I,/obj/item/multitool)) if(locked) to_chat(user, SPAN_WARNING("Circuit controls are locked.")) return var/existing_networks = jointext(network,",") var/input = sanitize(input(usr, "Which networks would you like to connect this camera console circuit to? Seperate networks with a comma. No Spaces!\nFor example: SS13,Security,Secret ", "Multitool-Circuitboard interface", existing_networks)) if(!input) to_chat(usr, "No input found please hang up and try your call again.") return var/list/tempnetwork = splittext(input, ",") tempnetwork = difflist(tempnetwork,restricted_camera_networks,1) if(tempnetwork.len < 1) to_chat(usr, "No network found please hang up and try your call again.") return network = tempnetwork return