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 GitHub
parent b6845defa0
commit a7e29f2878
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:
@@ -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
@@ -614,6 +658,8 @@
state: comm_syndie
- map: ["computerLayerKeys"]
state: syndie_key
- map: [ "enum.WiresVisualLayers.MaintenancePanel" ]
state: generic_panel_open
- type: AccessReader
access: [[ "NuclearOperative" ]]
- type: CommunicationsConsole
@@ -630,12 +676,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"]
@@ -646,6 +691,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
@@ -653,6 +700,8 @@
interfaces:
enum.SolarControlConsoleUiKey.Key:
type: SolarControlConsoleBoundUserInterface
enum.WiresUiKey.Key:
type: WiresBoundUserInterface
- type: Computer
board: SolarControlComputerCircuitboard
- type: PointLight
@@ -661,12 +710,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"]
@@ -677,6 +725,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
@@ -684,6 +734,8 @@
interfaces:
enum.RadarConsoleUiKey.Key:
type: RadarConsoleBoundUserInterface
enum.WiresUiKey.Key:
type: WiresBoundUserInterface
- type: Computer
board: RadarConsoleCircuitboard
- type: PointLight
@@ -693,11 +745,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"]
@@ -708,6 +759,8 @@
state: supply
- map: ["computerLayerKeys"]
state: tech_key
- map: [ "enum.WiresVisualLayers.MaintenancePanel" ]
state: generic_panel_open
- type: CargoShuttleConsole
- type: ActivatableUI
key: enum.CargoConsoleUiKey.Shuttle
@@ -715,6 +768,8 @@
interfaces:
enum.CargoConsoleUiKey.Shuttle:
type: CargoShuttleConsoleBoundUserInterface
enum.WiresUiKey.Key:
type: WiresBoundUserInterface
- type: Computer
board: CargoShuttleComputerCircuitboard
- type: PointLight
@@ -729,11 +784,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"]
@@ -744,6 +798,8 @@
state: request
- map: ["computerLayerKeys"]
state: tech_key
- map: [ "enum.WiresVisualLayers.MaintenancePanel" ]
state: generic_panel_open
- type: CargoOrderConsole
- type: BankClient
- type: ActiveRadio
@@ -755,6 +811,8 @@
interfaces:
enum.CargoConsoleUiKey.Orders:
type: CargoOrderConsoleBoundUserInterface
enum.WiresUiKey.Key:
type: WiresBoundUserInterface
- type: Computer
board: CargoRequestComputerCircuitboard
- type: PointLight
@@ -778,11 +836,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"]
@@ -793,6 +850,8 @@
state: bounty
- map: ["computerLayerKeys"]
state: tech_key
- map: [ "enum.WiresVisualLayers.MaintenancePanel" ]
state: generic_panel_open
- type: CargoBountyConsole
- type: ActivatableUI
key: enum.CargoConsoleUiKey.Bounty
@@ -800,6 +859,8 @@
interfaces:
enum.CargoConsoleUiKey.Bounty:
type: CargoBountyConsoleBoundUserInterface
enum.WiresUiKey.Key:
type: WiresBoundUserInterface
- type: Computer
board: CargoBountyComputerCircuitboard
- type: PointLight
@@ -814,12 +875,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
@@ -834,6 +894,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
@@ -853,6 +915,8 @@
interfaces:
enum.CloningConsoleUiKey.Key:
type: CloningConsoleBoundUserInterface
enum.WiresUiKey.Key:
type: WiresBoundUserInterface
- type: Speech
speechVerb: Robotic
speechSounds: Pai
@@ -865,11 +929,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"]
@@ -880,6 +943,8 @@
state: mining
- map: ["computerLayerKeys"]
state: tech_key
- map: [ "enum.WiresVisualLayers.MaintenancePanel" ]
state: generic_panel_open
- type: Appearance
- type: GenericVisualizer
visuals:
@@ -890,6 +955,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
@@ -898,6 +967,8 @@
interfaces:
enum.SalvageConsoleUiKey.Expedition:
type: SalvageExpeditionConsoleBoundUserInterface
enum.WiresUiKey.Key:
type: WiresBoundUserInterface
- type: Computer
board: SalvageExpeditionsComputerCircuitboard
- type: PointLight
@@ -925,6 +996,8 @@
state: cameras
- map: ["computerLayerKeys"]
state: tech_key
- map: [ "enum.WiresVisualLayers.MaintenancePanel" ]
state: generic_panel_open
- type: Computer
board: SurveillanceCameraMonitorCircuitboard
- type: DeviceNetwork
@@ -943,6 +1016,8 @@
interfaces:
enum.SurveillanceCameraMonitorUiKey.Key:
type: SurveillanceCameraMonitorBoundUserInterface
enum.WiresUiKey.Key:
type: WiresBoundUserInterface
- type: entity
parent: BaseComputer
@@ -960,6 +1035,8 @@
state: cameras
- map: ["computerLayerKeys"]
state: tech_key
- map: [ "enum.WiresVisualLayers.MaintenancePanel" ]
state: generic_panel_open
- type: Computer
board: SurveillanceWirelessCameraMonitorCircuitboard
- type: DeviceNetwork
@@ -980,14 +1057,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"]
@@ -998,6 +1076,8 @@
state: request
- map: ["computerLayerKeys"]
state: tech_key
- map: [ "enum.WiresVisualLayers.MaintenancePanel" ]
state: generic_panel_open
- type: Anchorable
flags:
- Anchorable
@@ -1008,6 +1088,8 @@
interfaces:
enum.CargoPalletConsoleUiKey.Sale:
type: CargoPalletConsoleBoundUserInterface
enum.WiresUiKey.Key:
type: WiresBoundUserInterface
- type: Computer
board: CargoSaleComputerCircuitboard
- type: PointLight
@@ -1019,12 +1101,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"]
@@ -1035,6 +1116,8 @@
state: service
- map: ["computerLayerKeys"]
state: service_keys
- map: [ "enum.WiresVisualLayers.MaintenancePanel" ]
state: generic_panel_open
- type: Computer
board: ComputerMassMediaCircuitboard
- type: DeviceNetworkRequiresPower
@@ -1050,6 +1133,8 @@
interfaces:
enum.NewsWriterUiKey.Key:
type: NewsWriterBoundUserInterface
enum.WiresUiKey.Key:
type: WiresBoundUserInterface
- type: entity
parent: BaseComputer
@@ -1070,6 +1155,8 @@
state: sensors
- map: ["computerLayerKeys"]
state: atmos_key
- map: [ "enum.WiresVisualLayers.MaintenancePanel" ]
state: generic_panel_open
- type: PointLight
radius: 1.5
energy: 1.6
@@ -1083,6 +1170,8 @@
interfaces:
enum.SensorMonitoringConsoleUiKey.Key:
type: SensorMonitoringConsoleBoundUserInterface
enum.WiresUiKey.Key:
type: WiresBoundUserInterface
- type: DeviceNetwork
deviceNetId: AtmosDevices
receiveFrequencyId: AtmosMonitor
@@ -1095,12 +1184,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"]
@@ -1111,6 +1199,8 @@
state: robot
- map: ["computerLayerKeys"]
state: rd_key
- map: [ "enum.WiresVisualLayers.MaintenancePanel" ]
state: generic_panel_open
- type: RoboticsConsole
- type: ActiveRadio
channels:
@@ -1121,6 +1211,8 @@
interfaces:
enum.RoboticsConsoleUiKey.Key:
type: RoboticsConsoleBoundUserInterface
enum.WiresUiKey.Key:
type: WiresBoundUserInterface
- type: ApcPowerReceiver
powerLoad: 1000
- type: DeviceNetwork
@@ -1150,6 +1242,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