Computer wirepanel (#32273)

* Computer wirehacking

* Power wire now shocks

* deconstruction fix

* updated tests

* Better parenting

* maintenance panel sprite

* new sprite for maintenance panel open
This commit is contained in:
Errant 2024-09-23 12:51:48 +02:00 committed by deltanedas
parent b225563ebc
commit 5c5fea73ee
8 changed files with 203 additions and 62 deletions

View File

@ -39,7 +39,7 @@ public sealed class ComputerConstruction : InteractionTest
await StartDeconstruction(ComputerId);
// Initial interaction turns id computer into generic computer
await InteractUsing(Screw);
await InteractUsing(Pry);
AssertPrototype(ComputerFrame);
// Perform deconstruction steps
@ -69,7 +69,7 @@ public sealed class ComputerConstruction : InteractionTest
await SpawnTarget(ComputerId);
// Initial interaction turns id computer into generic computer
await InteractUsing(Screw);
await InteractUsing(Pry);
AssertPrototype(ComputerFrame);
// Perform partial deconstruction steps

View File

@ -40,6 +40,7 @@ wires-board-name-fatextractor = FatExtractor
wires-board-name-flatpacker = Flatpacker
wires-board-name-spaceheater = Space Heater
wires-board-name-jukebox = Jukebox
wires-board-name-computer = Computer
# names that get displayed in the wire hacking hud & admin logs.

View File

@ -30,6 +30,8 @@
state: generic
- map: ["computerLayerKeys"]
state: generic_keys
- map: [ "enum.WiresVisualLayers.MaintenancePanel" ]
state: generic_panel_open
- type: Appearance
- type: GenericVisualizer
visuals:
@ -40,6 +42,10 @@
computerLayerKeys:
True: { visible: true, shader: unshaded }
False: { visible: true, shader: shaded }
enum.WiresVisuals.MaintenancePanelState:
enum.WiresVisualLayers.MaintenancePanel:
True: { visible: false }
False: { visible: true }
- type: LitOnPowered
- type: PointLight
radius: 1.5
@ -61,3 +67,26 @@
- type: LightningTarget
priority: 1
- type: RequireProjectileTarget
- type: Electrified
enabled: false
usesApcPower: true
- type: WiresPanel
- type: WiresVisuals
- type: Wires
boardName: wires-board-name-computer
layoutId: Computer
#
# This is overwritten by children, so needs to be defined there
# - type: UserInterface
# interfaces:
# enum.WiresUiKey.Key:
# type: WiresBoundUserInterface
- type: entity
parent: BaseComputer
id: BaseComputerAiAccess
components:
- type: StationAiWhitelist
- type: Wires
boardName: wires-board-name-computer
layoutId: ComputerAi

View File

@ -1,10 +1,9 @@
- type: entity
parent: BaseComputer
parent: BaseComputerAiAccess
id: ComputerAlert
name: atmospheric alerts computer
description: Used to access the station's atmospheric automated alert system.
components:
- type: StationAiWhitelist
- type: Computer
board: AlertsComputerCircuitboard
- type: Sprite
@ -17,6 +16,8 @@
state: alert-0
- map: ["computerLayerKeys"]
state: atmos_key
- map: [ "enum.WiresVisualLayers.MaintenancePanel" ]
state: generic_panel_open
- type: GenericVisualizer
visuals:
enum.ComputerVisuals.Powered:
@ -25,7 +26,7 @@
False: { visible: false }
computerLayerKeys:
True: { visible: true, shader: unshaded }
False: { visible: true, shader: shaded }
False: { visible: true, shader: shaded }
enum.AtmosAlertsComputerVisuals.ComputerLayerScreen:
computerLayerScreen:
0: { state: alert-0 }
@ -33,6 +34,10 @@
2: { state: alert-1 }
3: { state: alert-2 }
4: { state: alert-2 }
enum.WiresVisuals.MaintenancePanelState:
enum.WiresVisualLayers.MaintenancePanel:
True: { visible: false }
False: { visible: true }
- type: AtmosAlertsComputer
- type: ActivatableUI
singleUser: true
@ -41,6 +46,8 @@
interfaces:
enum.AtmosAlertsComputerUiKey.Key:
type: AtmosAlertsComputerBoundUserInterface
enum.WiresUiKey.Key:
type: WiresBoundUserInterface
- type: entity
parent: BaseComputer
@ -58,6 +65,8 @@
interfaces:
enum.EmergencyConsoleUiKey.Key:
type: EmergencyConsoleBoundUserInterface
enum.WiresUiKey.Key:
type: WiresBoundUserInterface
- type: PointLight
radius: 1.5
energy: 1.6
@ -79,6 +88,8 @@
interfaces:
enum.ShuttleConsoleUiKey.Key:
type: ShuttleConsoleBoundUserInterface
enum.WiresUiKey.Key:
type: WiresBoundUserInterface
- type: RadarConsole
- type: WorldLoader
radius: 256
@ -121,6 +132,8 @@
state: shuttle
- map: ["computerLayerKeys"]
state: generic_keys
- map: [ "enum.WiresVisualLayers.MaintenancePanel" ]
state: generic_panel_open
- type: Computer
board: ShuttleConsoleCircuitboard
@ -140,6 +153,8 @@
state: syndishuttle
- map: ["computerLayerKeys"]
state: syndie_key
- map: [ "enum.WiresVisualLayers.MaintenancePanel" ]
state: generic_panel_open
- type: Tag
tags:
- Syndicate
@ -170,6 +185,8 @@
state: shuttle
- map: ["computerLayerKeys"]
state: generic_keys
- map: [ "enum.WiresVisualLayers.MaintenancePanel" ]
state: generic_panel_open
- type: DroneConsole
components:
- type: CargoShuttle
@ -185,12 +202,11 @@
stealGroup: CargoShuttleConsoleCircuitboard
- type: entity
parent: BaseComputer
parent: BaseComputerAiAccess
id: ComputerIFF
name: IFF computer
description: Allows you to control the IFF characteristics of this vessel.
components:
- type: StationAiWhitelist
- type: IFFConsole
- type: Sprite
layers:
@ -203,12 +219,16 @@
state: helm
- map: ["computerLayerKeys"]
state: generic_keys
- map: [ "enum.WiresVisualLayers.MaintenancePanel" ]
state: generic_panel_open
- type: ActivatableUI
key: enum.IFFConsoleUiKey.Key
- type: UserInterface
interfaces:
enum.IFFConsoleUiKey.Key:
type: IFFConsoleBoundUserInterface
enum.WiresUiKey.Key:
type: WiresBoundUserInterface
- type: Computer
board: ComputerIFFCircuitboard
@ -229,16 +249,17 @@
interfaces:
enum.IFFConsoleUiKey.Key:
type: IFFConsoleBoundUserInterface
enum.WiresUiKey.Key:
type: WiresBoundUserInterface
- type: Computer
board: ComputerIFFSyndicateCircuitboard
- type: entity
parent: BaseComputer
parent: BaseComputerAiAccess
id: ComputerPowerMonitoring
name: power monitoring computer
description: It monitors power levels across the station.
components:
- type: StationAiWhitelist
- type: Sprite
layers:
- map: ["computerLayerBody"]
@ -249,6 +270,8 @@
state: power_monitor
- map: ["computerLayerKeys"]
state: power_key
- map: [ "enum.WiresVisualLayers.MaintenancePanel" ]
state: generic_panel_open
- type: PointLight
radius: 1.5
energy: 1.6
@ -270,14 +293,15 @@
interfaces:
enum.PowerMonitoringConsoleUiKey.Key:
type: PowerMonitoringConsoleBoundUserInterface
enum.WiresUiKey.Key:
type: WiresBoundUserInterface
- type: entity
parent: BaseComputer
parent: BaseComputerAiAccess
id: ComputerMedicalRecords
name: medical records computer
description: This can be used to check medical records.
components:
- type: StationAiWhitelist
- type: Sprite
layers:
- map: ["computerLayerBody"]
@ -288,6 +312,8 @@
state: medcomp
- map: ["computerLayerKeys"]
state: med_key
- map: [ "enum.WiresVisualLayers.MaintenancePanel" ]
state: generic_panel_open
- type: PointLight
radius: 1.5
energy: 1.6
@ -296,17 +322,18 @@
board: MedicalRecordsComputerCircuitboard
- type: entity
parent: BaseComputer
parent: BaseComputerAiAccess
id: ComputerCriminalRecords
name: criminal records computer
description: This can be used to check criminal records. Only security can modify them.
components:
- type: StationAiWhitelist
- type: CriminalRecordsConsole
- type: UserInterface
interfaces:
enum.CriminalRecordsConsoleKey.Key:
type: CriminalRecordsConsoleBoundUserInterface
enum.WiresUiKey.Key:
type: WiresBoundUserInterface
- type: ActivatableUI
key: enum.CriminalRecordsConsoleKey.Key
- type: Sprite
@ -319,6 +346,8 @@
state: explosive
- map: ["computerLayerKeys"]
state: security_key
- map: [ "enum.WiresVisualLayers.MaintenancePanel" ]
state: generic_panel_open
- type: PointLight
radius: 1.5
energy: 1.6
@ -332,17 +361,18 @@
- CriminalRecords
- type: entity
parent: BaseComputer
parent: BaseComputerAiAccess
id: ComputerStationRecords
name: station records computer
description: This can be used to check station records.
components:
- type: StationAiWhitelist
- type: GeneralStationRecordConsole
- type: UserInterface
interfaces:
enum.GeneralStationRecordConsoleKey.Key:
type: GeneralStationRecordConsoleBoundUserInterface
enum.WiresUiKey.Key:
type: WiresBoundUserInterface
- type: ActivatableUI
key: enum.GeneralStationRecordConsoleKey.Key
- type: PointLight
@ -356,12 +386,11 @@
- Forensics
- type: entity
parent: BaseComputer
parent: BaseComputerAiAccess
id: ComputerCrewMonitoring
name: crew monitoring console
description: Used to monitor active health sensors built into most of the crew's uniforms.
components:
- type: StationAiWhitelist
- type: Sprite
layers:
- map: ["computerLayerBody"]
@ -372,6 +401,8 @@
state: crew
- map: ["computerLayerKeys"]
state: med_key
- map: [ "enum.WiresVisualLayers.MaintenancePanel" ]
state: generic_panel_open
- type: PointLight
radius: 1.5
energy: 1.6
@ -384,6 +415,8 @@
interfaces:
enum.CrewMonitoringUIKey.Key:
type: CrewMonitoringBoundUserInterface
enum.WiresUiKey.Key:
type: WiresBoundUserInterface
- type: CrewMonitoringConsole
- type: DeviceNetwork
deviceNetId: Wireless
@ -392,12 +425,11 @@
range: 1200
- type: entity
parent: BaseComputer
parent: BaseComputerAiAccess
id: ComputerResearchAndDevelopment
name: R&D computer
description: A computer used to interface with R&D tools.
components:
- type: StationAiWhitelist
- type: Sprite
layers:
- map: ["computerLayerBody"]
@ -408,6 +440,8 @@
state: rdcomp
- map: ["computerLayerKeys"]
state: rd_key
- map: [ "enum.WiresVisualLayers.MaintenancePanel" ]
state: generic_panel_open
- type: ResearchClient
- type: ResearchConsole
- type: ActiveRadio
@ -422,6 +456,8 @@
type: ResearchConsoleBoundUserInterface
enum.ResearchClientUiKey.Key:
type: ResearchClientBoundUserInterface
enum.WiresUiKey.Key:
type: WiresBoundUserInterface
- type: ApcPowerReceiver
powerLoad: 1000
- type: Computer
@ -437,12 +473,11 @@
- Science
- type: entity
parent: BaseComputer
parent: BaseComputerAiAccess
id: ComputerAnalysisConsole
name: analysis console
description: A computer used to interface with the artifact analyzer.
components:
- type: StationAiWhitelist
- type: Sprite
layers:
- map: ["computerLayerBody"]
@ -453,6 +488,8 @@
state: artifact
- map: ["computerLayerKeys"]
state: tech_key
- map: [ "enum.WiresVisualLayers.MaintenancePanel" ]
state: generic_panel_open
- type: ResearchClient
- type: AnalysisConsole
reportEntityId: PaperArtifactAnalyzer
@ -471,6 +508,8 @@
type: AnalysisConsoleBoundUserInterface
enum.ResearchClientUiKey.Key:
type: ResearchClientBoundUserInterface
enum.WiresUiKey.Key:
type: WiresBoundUserInterface
- type: ApcPowerReceiver
powerLoad: 1000
- type: Computer
@ -484,12 +523,11 @@
- Xenoarchaeology
- type: entity
parent: BaseComputer
parent: BaseComputerAiAccess
id: ComputerId
name: ID card computer
description: Terminal for programming Nanotrasen employee ID cards to access parts of the station.
components:
- type: StationAiWhitelist
- type: IdCardConsole
privilegedIdSlot:
name: id-card-console-privileged-id
@ -515,6 +553,8 @@
interfaces:
enum.IdCardConsoleUiKey.Key:
type: IdCardConsoleBoundUserInterface
enum.WiresUiKey.Key:
type: WiresBoundUserInterface
- type: CrewManifestViewer
ownerKey: enum.IdCardConsoleUiKey.Key
- type: Sprite
@ -527,6 +567,8 @@
state: id
- map: ["computerLayerKeys"]
state: id_key
- map: [ "enum.WiresVisualLayers.MaintenancePanel" ]
state: generic_panel_open
- type: Computer
board: IDComputerCircuitboard
- type: PointLight
@ -544,12 +586,11 @@
IdCardConsole-targetId: !type:ContainerSlot
- type: entity
parent: BaseComputer
parent: BaseComputerAiAccess
id: computerBodyScanner
name: body scanner computer
description: A body scanner.
components:
- type: StationAiWhitelist
- type: ApcPowerReceiver
powerLoad: 500
- type: Computer
@ -560,12 +601,11 @@
color: "#1f8c28"
- type: entity
parent: BaseComputer
parent: BaseComputerAiAccess
id: ComputerComms
name: communications computer
description: A computer used to make station wide announcements via keyboard, set the appropriate alert level, and call the emergency shuttle.
components:
- type: StationAiWhitelist
- type: Sprite
layers:
- map: ["computerLayerBody"]
@ -576,6 +616,8 @@
state: comm
- map: ["computerLayerKeys"]
state: generic_keys
- map: [ "enum.WiresVisualLayers.MaintenancePanel" ]
state: generic_panel_open
- type: AccessReader
access: [[ "Command" ]]
- type: CommunicationsConsole
@ -588,6 +630,8 @@
interfaces:
enum.CommunicationsConsoleUiKey.Key:
type: CommunicationsConsoleBoundUserInterface
enum.WiresUiKey.Key:
type: WiresBoundUserInterface
- type: Computer
board: CommsComputerCircuitboard
- type: PointLight
@ -617,6 +661,8 @@
state: comm_syndie
- map: ["computerLayerKeys"]
state: syndie_key
- map: [ "enum.WiresVisualLayers.MaintenancePanel" ]
state: generic_panel_open
- type: AccessReader
access: [[ "NuclearOperative" ]]
- type: CommunicationsConsole
@ -633,12 +679,11 @@
color: "#f71713"
- type: entity
parent: BaseComputer
parent: BaseComputerAiAccess
id: ComputerSolarControl
name: solar control computer
description: A controller for solar panel arrays.
components:
- type: StationAiWhitelist
- type: Sprite
layers:
- map: ["computerLayerBody"]
@ -649,6 +694,8 @@
state: solar_screen
- map: ["computerLayerKeys"]
state: generic_keys
- map: [ "enum.WiresVisualLayers.MaintenancePanel" ]
state: generic_panel_open
- type: SolarControlConsole
- type: ActivatableUI
key: enum.SolarControlConsoleUiKey.Key
@ -656,6 +703,8 @@
interfaces:
enum.SolarControlConsoleUiKey.Key:
type: SolarControlConsoleBoundUserInterface
enum.WiresUiKey.Key:
type: WiresBoundUserInterface
- type: Computer
board: SolarControlComputerCircuitboard
- type: PointLight
@ -664,12 +713,11 @@
color: "#e6e227"
- type: entity
parent: BaseComputer
parent: BaseComputerAiAccess
id: ComputerRadar
name: mass scanner computer
description: A computer for detecting nearby bodies, displaying them by position and mass.
components:
- type: StationAiWhitelist
- type: Sprite
layers:
- map: ["computerLayerBody"]
@ -680,6 +728,8 @@
state: solar_screen
- map: ["computerLayerKeys"]
state: generic_keys
- map: [ "enum.WiresVisualLayers.MaintenancePanel" ]
state: generic_panel_open
- type: RadarConsole
- type: ActivatableUI
key: enum.RadarConsoleUiKey.Key
@ -687,6 +737,8 @@
interfaces:
enum.RadarConsoleUiKey.Key:
type: RadarConsoleBoundUserInterface
enum.WiresUiKey.Key:
type: WiresBoundUserInterface
- type: Computer
board: RadarConsoleCircuitboard
- type: PointLight
@ -696,11 +748,10 @@
- type: entity
id: ComputerCargoShuttle
parent: BaseComputer
parent: BaseComputerAiAccess
name: cargo shuttle computer
description: Used to order the shuttle.
components:
- type: StationAiWhitelist
- type: Sprite
layers:
- map: ["computerLayerBody"]
@ -711,6 +762,8 @@
state: supply
- map: ["computerLayerKeys"]
state: tech_key
- map: [ "enum.WiresVisualLayers.MaintenancePanel" ]
state: generic_panel_open
- type: CargoShuttleConsole
- type: ActivatableUI
key: enum.CargoConsoleUiKey.Shuttle
@ -718,6 +771,8 @@
interfaces:
enum.CargoConsoleUiKey.Shuttle:
type: CargoShuttleConsoleBoundUserInterface
enum.WiresUiKey.Key:
type: WiresBoundUserInterface
- type: Computer
board: CargoShuttleComputerCircuitboard
- type: PointLight
@ -732,11 +787,10 @@
- type: entity
id: ComputerCargoOrders
parent: BaseComputer
parent: BaseComputerAiAccess
name: cargo request computer
description: Used to order supplies and approve requests.
components:
- type: StationAiWhitelist
- type: Sprite
layers:
- map: ["computerLayerBody"]
@ -747,6 +801,8 @@
state: request
- map: ["computerLayerKeys"]
state: tech_key
- map: [ "enum.WiresVisualLayers.MaintenancePanel" ]
state: generic_panel_open
- type: CargoOrderConsole
- type: BankClient
- type: ActiveRadio
@ -758,6 +814,8 @@
interfaces:
enum.CargoConsoleUiKey.Orders:
type: CargoOrderConsoleBoundUserInterface
enum.WiresUiKey.Key:
type: WiresBoundUserInterface
- type: Computer
board: CargoRequestComputerCircuitboard
- type: PointLight
@ -781,11 +839,10 @@
- type: entity
id: ComputerCargoBounty
parent: BaseComputer
parent: BaseComputerAiAccess
name: cargo bounty computer
description: Used to manage currently active bounties.
components:
- type: StationAiWhitelist
- type: Sprite
layers:
- map: ["computerLayerBody"]
@ -796,6 +853,8 @@
state: bounty
- map: ["computerLayerKeys"]
state: tech_key
- map: [ "enum.WiresVisualLayers.MaintenancePanel" ]
state: generic_panel_open
- type: CargoBountyConsole
- type: ActivatableUI
key: enum.CargoConsoleUiKey.Bounty
@ -803,6 +862,8 @@
interfaces:
enum.CargoConsoleUiKey.Bounty:
type: CargoBountyConsoleBoundUserInterface
enum.WiresUiKey.Key:
type: WiresBoundUserInterface
- type: Computer
board: CargoBountyComputerCircuitboard
- type: PointLight
@ -817,12 +878,11 @@
- Cargo
- type: entity
parent: BaseComputer
parent: BaseComputerAiAccess
id: ComputerCloningConsole
name: cloning console computer
description: The centerpiece of the cloning system, medicine's greatest accomplishment. It has lots of ports and wires.
components:
- type: StationAiWhitelist
- type: CloningConsole
- type: DeviceList
- type: DeviceNetwork
@ -837,6 +897,8 @@
state: dna
- map: ["computerLayerKeys"]
state: generic_keys
- map: [ "enum.WiresVisualLayers.MaintenancePanel" ]
state: generic_panel_open
- type: ApcPowerReceiver
powerLoad: 3100 #We want this to fail first so I transferred most of the scanner and pod's power here. (3500 in total)
- type: Computer
@ -856,6 +918,8 @@
interfaces:
enum.CloningConsoleUiKey.Key:
type: CloningConsoleBoundUserInterface
enum.WiresUiKey.Key:
type: WiresBoundUserInterface
- type: Speech
speechVerb: Robotic
speechSounds: Pai
@ -868,11 +932,10 @@
- type: entity
id: ComputerSalvageExpedition
parent: BaseComputer
parent: BaseComputerAiAccess
name: salvage expeditions computer
description: Used to accept salvage missions, if you're tough enough.
components:
- type: StationAiWhitelist
- type: Sprite
layers:
- map: ["computerLayerBody"]
@ -883,6 +946,8 @@
state: mining
- map: ["computerLayerKeys"]
state: tech_key
- map: [ "enum.WiresVisualLayers.MaintenancePanel" ]
state: generic_panel_open
- type: Appearance
- type: GenericVisualizer
visuals:
@ -893,6 +958,10 @@
computerLayerKeys:
True: { visible: true, shader: unshaded }
False: { visible: true }
enum.WiresVisuals.MaintenancePanelState:
enum.WiresVisualLayers.MaintenancePanel:
True: { visible: false }
False: { visible: true }
- type: SalvageExpeditionConsole
- type: ActivatableUI
key: enum.SalvageConsoleUiKey.Expedition
@ -901,6 +970,8 @@
interfaces:
enum.SalvageConsoleUiKey.Expedition:
type: SalvageExpeditionConsoleBoundUserInterface
enum.WiresUiKey.Key:
type: WiresBoundUserInterface
- type: Computer
board: SalvageExpeditionsComputerCircuitboard
- type: PointLight
@ -928,6 +999,8 @@
state: cameras
- map: ["computerLayerKeys"]
state: tech_key
- map: [ "enum.WiresVisualLayers.MaintenancePanel" ]
state: generic_panel_open
- type: Computer
board: SurveillanceCameraMonitorCircuitboard
- type: DeviceNetwork
@ -946,6 +1019,8 @@
interfaces:
enum.SurveillanceCameraMonitorUiKey.Key:
type: SurveillanceCameraMonitorBoundUserInterface
enum.WiresUiKey.Key:
type: WiresBoundUserInterface
- type: entity
parent: BaseComputer
@ -963,6 +1038,8 @@
state: cameras
- map: ["computerLayerKeys"]
state: tech_key
- map: [ "enum.WiresVisualLayers.MaintenancePanel" ]
state: generic_panel_open
- type: Computer
board: SurveillanceWirelessCameraMonitorCircuitboard
- type: DeviceNetwork
@ -983,14 +1060,15 @@
interfaces:
enum.SurveillanceCameraMonitorUiKey.Key:
type: SurveillanceCameraMonitorBoundUserInterface
enum.WiresUiKey.Key:
type: WiresBoundUserInterface
- type: entity
id: ComputerPalletConsole
parent: BaseComputer
parent: BaseComputerAiAccess
name: cargo sale computer
description: Used to sell goods loaded onto cargo pallets.
components:
- type: StationAiWhitelist
- type: Sprite
layers:
- map: ["computerLayerBody"]
@ -1001,6 +1079,8 @@
state: request
- map: ["computerLayerKeys"]
state: tech_key
- map: [ "enum.WiresVisualLayers.MaintenancePanel" ]
state: generic_panel_open
- type: Anchorable
flags:
- Anchorable
@ -1011,6 +1091,8 @@
interfaces:
enum.CargoPalletConsoleUiKey.Sale:
type: CargoPalletConsoleBoundUserInterface
enum.WiresUiKey.Key:
type: WiresBoundUserInterface
- type: Computer
board: CargoSaleComputerCircuitboard
- type: PointLight
@ -1022,12 +1104,11 @@
- Cargo
- type: entity
parent: BaseComputer
parent: BaseComputerAiAccess
id: ComputerMassMedia
name: news manager console
description: Write your message to the world!
components:
- type: StationAiWhitelist
- type: Sprite
layers:
- map: ["computerLayerBody"]
@ -1038,6 +1119,8 @@
state: service
- map: ["computerLayerKeys"]
state: service_keys
- map: [ "enum.WiresVisualLayers.MaintenancePanel" ]
state: generic_panel_open
- type: Computer
board: ComputerMassMediaCircuitboard
- type: DeviceNetworkRequiresPower
@ -1053,6 +1136,8 @@
interfaces:
enum.NewsWriterUiKey.Key:
type: NewsWriterBoundUserInterface
enum.WiresUiKey.Key:
type: WiresBoundUserInterface
- type: entity
parent: BaseComputer
@ -1073,6 +1158,8 @@
state: sensors
- map: ["computerLayerKeys"]
state: atmos_key
- map: [ "enum.WiresVisualLayers.MaintenancePanel" ]
state: generic_panel_open
- type: PointLight
radius: 1.5
energy: 1.6
@ -1086,6 +1173,8 @@
interfaces:
enum.SensorMonitoringConsoleUiKey.Key:
type: SensorMonitoringConsoleBoundUserInterface
enum.WiresUiKey.Key:
type: WiresBoundUserInterface
- type: DeviceNetwork
deviceNetId: AtmosDevices
receiveFrequencyId: AtmosMonitor
@ -1098,12 +1187,11 @@
- type: AtmosDevice
- type: entity
parent: BaseComputer
parent: BaseComputerAiAccess
id: ComputerRoboticsControl
name: robotics control console
description: Used to remotely monitor, disable and destroy the station's cyborgs.
components:
- type: StationAiWhitelist
- type: Sprite
layers:
- map: ["computerLayerBody"]
@ -1114,6 +1202,8 @@
state: robot
- map: ["computerLayerKeys"]
state: rd_key
- map: [ "enum.WiresVisualLayers.MaintenancePanel" ]
state: generic_panel_open
- type: RoboticsConsole
- type: ActiveRadio
channels:
@ -1124,6 +1214,8 @@
interfaces:
enum.RoboticsConsoleUiKey.Key:
type: RoboticsConsoleBoundUserInterface
enum.WiresUiKey.Key:
type: WiresBoundUserInterface
- type: ApcPowerReceiver
powerLoad: 1000
- type: DeviceNetwork
@ -1153,6 +1245,8 @@
state: aiupload
- map: [ "computerLayerKeys" ]
state: generic_keys
- map: [ "enum.WiresVisualLayers.MaintenancePanel" ]
state: generic_panel_open
- type: ApcPowerReceiver
powerLoad: 1000
- type: Computer

View File

@ -117,15 +117,15 @@
amount: 2
steps:
- tool: Prying
doAfter: 1
- node: computer
entity: !type:BoardNodeEntity { container: board }
edges:
- to: monitorUnsecured
conditions:
- !type:AllWiresCut {}
steps:
- tool: Screwing
- tool: Prying
doAfter: 1
- node: monitorBroken
entity: ComputerBroken

View File

@ -156,22 +156,35 @@
id: TrainingDefusable
dummyWires: 0
wires:
- !type:ActivateWireAction
- !type:BoltWireAction
- !type:DelayWireAction
- !type:ProceedWireAction
- !type:BoomWireAction
- !type:ActivateWireAction
- !type:BoltWireAction
- !type:DelayWireAction
- !type:ProceedWireAction
- !type:BoomWireAction
- type: wireLayout
id: Jukebox
dummyWires: 2
wires:
- !type:PowerWireAction
- !type:AiInteractWireAction
- !type:PowerWireAction
- !type:AiInteractWireAction
- type: wireLayout
id: AnomalyGenerator
dummyWires: 2
wires:
- !type:PowerWireAction
- !type:AiInteractWireAction
- !type:PowerWireAction
- !type:AiInteractWireAction
- type: wireLayout
id: Computer
dummyWires: 3
wires:
- !type:PowerWireAction
- type: wireLayout
id: ComputerAi
dummyWires: 2
wires:
- !type:PowerWireAction
- !type:AiInteractWireAction

Binary file not shown.

After

Width:  |  Height:  |  Size: 405 B

View File

@ -1,7 +1,7 @@
{
"version": 1,
"license": "CC-BY-SA-3.0",
"copyright": "Taken from tgstation at commit https://github.com/tgstation/tgstation/commit/bd6873fd4dd6a61d7e46f1d75cd4d90f64c40894. comm_syndie made by Veritius, based on comm.",
"copyright": "Taken from tgstation at commit https://github.com/tgstation/tgstation/commit/bd6873fd4dd6a61d7e46f1d75cd4d90f64c40894. comm_syndie made by Veritius, based on comm. generic_panel_open made by Errant, commit https://github.com/space-wizards/space-station-14/pull/32273.",
"size": {
"x": 32,
"y": 32
@ -1013,6 +1013,10 @@
"name": "generic_keys",
"directions": 4
},
{
"name": "generic_panel_open",
"directions": 4
},
{
"name": "generic_keyboard",
"directions": 4