diff --git a/Content.Client/GameObjects/Components/ComputerVisualizer2D.cs b/Content.Client/GameObjects/Components/ComputerVisualizer2D.cs index 1f8f5bfd37..84998bbc22 100644 --- a/Content.Client/GameObjects/Components/ComputerVisualizer2D.cs +++ b/Content.Client/GameObjects/Components/ComputerVisualizer2D.cs @@ -11,6 +11,9 @@ namespace Content.Client.GameObjects.Components { private string KeyboardState = "generic_key"; private string ScreenState = "generic"; + private string BodyState = "computer"; + private string BodyBrokenState = "broken"; + private string ScreenBroken = "computer_broken"; public override void LoadData(YamlMappingNode node) { @@ -25,6 +28,16 @@ namespace Content.Client.GameObjects.Components { ScreenState = scalar.AsString(); } + + if (node.TryGetNode("body", out scalar)) + { + BodyState = scalar.AsString(); + } + + if (node.TryGetNode("bodyBroken", out scalar)) + { + BodyBrokenState = scalar.AsString(); + } } public override void InitializeEntity(IEntity entity) @@ -33,8 +46,12 @@ namespace Content.Client.GameObjects.Components var sprite = entity.GetComponent(); sprite.LayerSetState(Layers.Screen, ScreenState); - sprite.LayerSetState(Layers.Keyboard, $"{KeyboardState}_off"); - sprite.LayerSetState(Layers.KeyboardOn, KeyboardState); + + if (!string.IsNullOrEmpty(KeyboardState)) + { + sprite.LayerSetState(Layers.Keyboard, $"{KeyboardState}_off"); + sprite.LayerSetState(Layers.KeyboardOn, KeyboardState); + } } public override void OnChangeData(AppearanceComponent component) @@ -52,17 +69,20 @@ namespace Content.Client.GameObjects.Components if (broken) { - sprite.LayerSetState(Layers.Body, "broken"); - sprite.LayerSetState(Layers.Screen, "computer_broken"); + sprite.LayerSetState(Layers.Body, BodyBrokenState); + sprite.LayerSetState(Layers.Screen, ScreenBroken); } else { - sprite.LayerSetState(Layers.Body, "computer"); + sprite.LayerSetState(Layers.Body, BodyState); sprite.LayerSetState(Layers.Screen, ScreenState); } sprite.LayerSetVisible(Layers.Screen, powered); - sprite.LayerSetVisible(Layers.KeyboardOn, powered); + if (sprite.LayerMapTryGet(Layers.KeyboardOn, out _)) + { + sprite.LayerSetVisible(Layers.KeyboardOn, powered); + } } public enum Layers diff --git a/Resources/Prototypes/Entities/Buildings/computers/arcade.yml b/Resources/Prototypes/Entities/Buildings/computers/arcade.yml new file mode 100644 index 0000000000..cedbc886d2 --- /dev/null +++ b/Resources/Prototypes/Entities/Buildings/computers/arcade.yml @@ -0,0 +1,24 @@ +- type: entity + id: Arcade + name: arcade + parent: ComputerBase + components: + - type: Icon + state: arcade + - type: PowerDevice + priority: Low + - type: Sprite + layers: + - state: arcade + map: ["enum.ComputerVisualizer2D+Layers.Body"] + - state: invaders + shader: unshaded + map: ["enum.ComputerVisualizer2D+Layers.Screen"] + + - type: Appearance + visuals: + - type: ComputerVisualizer2D + screen: invaders + key: "" + body: arcade + bodyBroken: arcade diff --git a/Resources/Textures/Buildings/computer.rsi/arcade.png b/Resources/Textures/Buildings/computer.rsi/arcade.png new file mode 100644 index 0000000000..4b36acd3a6 Binary files /dev/null and b/Resources/Textures/Buildings/computer.rsi/arcade.png differ diff --git a/Resources/Textures/Buildings/computer.rsi/arcade_broken.png b/Resources/Textures/Buildings/computer.rsi/arcade_broken.png new file mode 100644 index 0000000000..258df8cac3 Binary files /dev/null and b/Resources/Textures/Buildings/computer.rsi/arcade_broken.png differ diff --git a/Resources/Textures/Buildings/computer.rsi/invaders.png b/Resources/Textures/Buildings/computer.rsi/invaders.png new file mode 100644 index 0000000000..a238a6c833 Binary files /dev/null and b/Resources/Textures/Buildings/computer.rsi/invaders.png differ diff --git a/Resources/Textures/Buildings/computer.rsi/meta.json b/Resources/Textures/Buildings/computer.rsi/meta.json index 397852c32f..2bc55cafd3 100644 --- a/Resources/Textures/Buildings/computer.rsi/meta.json +++ b/Resources/Textures/Buildings/computer.rsi/meta.json @@ -1 +1 @@ -{"version": 1, "size": {"x": 32, "y": 32}, "states": [{"name": "ai-fixer", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "ai-fixer-404", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "ai-fixer-empty", "directions": 4, "delays": [[0.7, 0.7], [0.7, 0.7], [0.7, 0.7], [0.7, 0.7]]}, {"name": "ai-fixer-full", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "ai-fixer-on", "directions": 4, "delays": [[0.1, 0.1, 0.1, 0.1, 0.1], [0.1, 0.1, 0.1, 0.1, 0.1], [0.1, 0.1, 0.1, 0.1, 0.1], [0.1, 0.1, 0.1, 0.1, 0.1]]}, {"name": "aiupload", "directions": 4, "delays": [[0.2, 0.2], [0.2, 0.2], [0.2, 0.2], [0.2, 0.2]]}, {"name": "aiupload_key", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "alert-0", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "alert-1", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "alert-2", "directions": 4, "delays": [[0.1, 0.1], [0.1, 0.1], [0.1, 0.1], [0.1, 0.1]]}, {"name": "area_atmos", "directions": 4, "delays": [[1.0, 1.0], [1.0, 1.0], [1.0, 1.0], [1.0, 1.0]]}, {"name": "atmos_key", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "atmos_key_off", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "broken", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "cameras", "directions": 4, "delays": [[1.8, 0.1, 1.8, 0.1, 1.8, 0.1, 1.8, 0.1], [1.8, 0.1, 1.8, 0.1, 1.8, 0.1, 1.8, 0.1], [1.8, 0.1, 1.8, 0.1, 1.8, 0.1, 1.8, 0.1], [1.8, 0.1, 1.8, 0.1, 1.8, 0.1, 1.8, 0.1]]}, {"name": "comm", "directions": 4, "delays": [[0.1, 0.1], [0.1, 0.1], [0.1, 0.1], [0.1, 0.1]]}, {"name": "comm_logs", "directions": 4, "delays": [[0.1, 0.2, 0.1, 0.2, 0.1, 0.2, 0.1, 0.2], [0.1, 0.2, 0.1, 0.2, 0.1, 0.2, 0.1, 0.2], [0.1, 0.2, 0.1, 0.2, 0.1, 0.2, 0.1, 0.2], [0.1, 0.2, 0.1, 0.2, 0.1, 0.2, 0.1, 0.2]]}, {"name": "comm_monitor", "directions": 4, "delays": [[0.4, 0.4, 0.4], [0.4, 0.4, 0.4], [0.4, 0.4, 0.4], [0.4, 0.4, 0.4]]}, {"name": "command", "directions": 4, "delays": [[0.2, 0.2], [0.2, 0.2], [0.2, 0.2], [0.2, 0.2]]}, {"name": "computer", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "computer_broken", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "crew", "directions": 4, "delays": [[0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1], [0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1], [0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1], [0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1]]}, {"name": "dna", "directions": 4, "delays": [[0.2, 0.2, 0.2, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.8, 0.1, 0.1, 0.1, 0.1, 0.2, 0.2, 0.2], [0.2, 0.2, 0.2, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.8, 0.1, 0.1, 0.1, 0.1, 0.2, 0.2, 0.2], [0.2, 0.2, 0.2, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.8, 0.1, 0.1, 0.1, 0.1, 0.2, 0.2, 0.2], [0.2, 0.2, 0.2, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.1, 0.8, 0.1, 0.1, 0.1, 0.1, 0.2, 0.2, 0.2]]}, {"name": "dron_control_monitor", "directions": 4, "delays": [[0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05], [0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05], [0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05], [0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05, 0.05]]}, {"name": "engie_cams", "directions": 4, "delays": [[1.8, 0.1, 1.8, 0.1, 1.8, 0.1, 1.8, 0.1], [1.8, 0.1, 1.8, 0.1, 1.8, 0.1, 1.8, 0.1], [1.8, 0.1, 1.8, 0.1, 1.8, 0.1, 1.8, 0.1], [1.8, 0.1, 1.8, 0.1, 1.8, 0.1, 1.8, 0.1]]}, {"name": "engine", "directions": 4, "delays": [[0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2], [0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2], [0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2], [0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2]]}, {"name": "entertainment", "directions": 1, "delays": [[0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2]]}, {"name": "eris_control", "directions": 4, "delays": [[0.5, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5], [0.5, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5], [0.5, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5], [0.5, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5, 0.5]]}, {"name": "error", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "explosive", "directions": 4, "delays": [[1.0, 0.1, 0.1, 1.0, 0.1, 0.1, 1.0, 0.1, 0.1], [1.0, 0.1, 0.1, 1.0, 0.1, 0.1, 1.0, 0.1, 0.1], [1.0, 0.1, 0.1, 1.0, 0.1, 0.1, 1.0, 0.1, 0.1], [1.0, 0.1, 0.1, 1.0, 0.1, 0.1, 1.0, 0.1, 0.1]]}, {"name": "forensic", "directions": 4, "delays": [[0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2], [0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2], [0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2], [0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2]]}, {"name": "generic", "directions": 4, "delays": [[0.2, 0.2], [0.2, 0.2], [0.2, 0.2], [0.2, 0.2]]}, {"name": "generic_key", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "generic_key_off", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "holocontrol", "directions": 4, "delays": [[1.0, 0.1, 1.0, 0.1, 1.0, 0.1, 1.0, 0.1], [1.0, 0.1, 1.0, 0.1, 1.0, 0.1, 1.0, 0.1], [1.0, 0.1, 1.0, 0.1, 1.0, 0.1, 1.0, 0.1], [1.0, 0.1, 1.0, 0.1, 1.0, 0.1, 1.0, 0.1]]}, {"name": "id", "directions": 4, "delays": [[0.2, 0.2], [0.2, 0.2], [0.2, 0.2], [0.2, 0.2]]}, {"name": "id_key", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "id_key_off", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "mass_driver", "directions": 1, "delays": [[1.0]]}, {"name": "mecha", "directions": 4, "delays": [[0.1, 0.1, 0.1, 0.1, 0.1, 0.1], [0.1, 0.1, 0.1, 0.1, 0.1, 0.1], [0.1, 0.1, 0.1, 0.1, 0.1, 0.1], [0.1, 0.1, 0.1, 0.1, 0.1, 0.1]]}, {"name": "med_key", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "med_key_off", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "medcomp", "directions": 4, "delays": [[0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2], [0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2], [0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2], [0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2, 0.2]]}, {"name": "mining", "directions": 4, "delays": [[1.0, 0.1, 1.0, 0.1, 1.0, 0.1, 1.0, 0.1], [1.0, 0.1, 1.0, 0.1, 1.0, 0.1, 1.0, 0.1], [1.0, 0.1, 1.0, 0.1, 1.0, 0.1, 1.0, 0.1], [1.0, 0.1, 1.0, 0.1, 1.0, 0.1, 1.0, 0.1]]}, {"name": "mining_key", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "mining_key_off", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "power_key", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "power_key_off", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "power_monitor", "directions": 4, "delays": [[0.6, 0.6, 0.6, 0.6], [0.6, 0.6, 0.6, 0.6], [0.6, 0.6, 0.6, 0.6], [0.6, 0.6, 0.6, 0.6]]}, {"name": "power_monitor_warn", "directions": 4, "delays": [[0.2, 0.2], [0.2, 0.2], [0.2, 0.2], [0.2, 0.2]]}, {"name": "rd_key", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "rd_key_off", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "rdcomp", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "recharge_comp", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "recharge_comp_on", "directions": 4, "delays": [[0.2, 0.1, 0.1, 0.1, 0.1, 0.1, 0.2], [0.2, 0.1, 0.1, 0.1, 0.1, 0.1, 0.2], [0.2, 0.1, 0.1, 0.1, 0.1, 0.1, 0.2], [0.2, 0.1, 0.1, 0.1, 0.1, 0.1, 0.2]]}, {"name": "request", "directions": 4, "delays": [[0.3, 0.3, 0.3, 0.3, 0.3, 0.3], [0.3, 0.3, 0.3, 0.3, 0.3, 0.3], [0.3, 0.3, 0.3, 0.3, 0.3, 0.3], [0.3, 0.3, 0.3, 0.3, 0.3, 0.3]]}, {"name": "robot", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "security", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "security_key", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "security_key_off", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "shuttle", "directions": 4, "delays": [[0.1, 0.1, 0.1], [0.1, 0.1, 0.1], [0.1, 0.1, 0.1], [0.1, 0.1, 0.1]]}, {"name": "solar_screen", "directions": 4, "delays": [[0.1, 0.1, 0.1, 0.1], [0.1, 0.1, 0.1, 0.1], [0.1, 0.1, 0.1, 0.1], [0.1, 0.1, 0.1, 0.1]]}, {"name": "supply", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "syndie_key", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "syndie_key_off", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "syndishuttle", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "tank", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "tcboss", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "tech_key", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "tech_key_off", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "teleport", "directions": 4, "delays": [[0.1, 0.1, 0.1, 0.1], [0.1, 0.1, 0.1, 0.1], [0.1, 0.1, 0.1, 0.1], [0.1, 0.1, 0.1, 0.1]]}, {"name": "teleport_key", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "teleport_key_off", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "telesci", "directions": 4, "delays": [[0.1, 0.1, 0.1, 0.1], [0.1, 0.1, 0.1, 0.1], [0.1, 0.1, 0.1, 0.1], [0.1, 0.1, 0.1, 0.1]]}, {"name": "telesci_key", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "telesci_key_off", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}, {"name": "turbinecomp", "directions": 4, "delays": [[1.0], [1.0], [1.0], [1.0]]}]} +{"version":1,"size":{"x":32,"y":32},"states":[{"name":"ai-fixer","directions":4,"delays":[[1.0],[1.0],[1.0],[1.0]]},{"name":"ai-fixer-404","directions":4,"delays":[[1.0],[1.0],[1.0],[1.0]]},{"name":"ai-fixer-empty","directions":4,"delays":[[0.7,0.7],[0.7,0.7],[0.7,0.7],[0.7,0.7]]},{"name":"ai-fixer-full","directions":4,"delays":[[1.0],[1.0],[1.0],[1.0]]},{"name":"ai-fixer-on","directions":4,"delays":[[0.1,0.1,0.1,0.1,0.1],[0.1,0.1,0.1,0.1,0.1],[0.1,0.1,0.1,0.1,0.1],[0.1,0.1,0.1,0.1,0.1]]},{"name":"aiupload","directions":4,"delays":[[0.2,0.2],[0.2,0.2],[0.2,0.2],[0.2,0.2]]},{"name":"aiupload_key","directions":4,"delays":[[1.0],[1.0],[1.0],[1.0]]},{"name":"alert-0","directions":4,"delays":[[1.0],[1.0],[1.0],[1.0]]},{"name":"alert-1","directions":4,"delays":[[1.0],[1.0],[1.0],[1.0]]},{"name":"alert-2","directions":4,"delays":[[0.1,0.1],[0.1,0.1],[0.1,0.1],[0.1,0.1]]},{"name":"area_atmos","directions":4,"delays":[[1.0,1.0],[1.0,1.0],[1.0,1.0],[1.0,1.0]]},{"name":"atmos_key","directions":4,"delays":[[1.0],[1.0],[1.0],[1.0]]},{"name":"atmos_key_off","directions":4,"delays":[[1.0],[1.0],[1.0],[1.0]]},{"name":"broken","directions":4,"delays":[[1.0],[1.0],[1.0],[1.0]]},{"name":"cameras","directions":4,"delays":[[1.8,0.1,1.8,0.1,1.8,0.1,1.8,0.1],[1.8,0.1,1.8,0.1,1.8,0.1,1.8,0.1],[1.8,0.1,1.8,0.1,1.8,0.1,1.8,0.1],[1.8,0.1,1.8,0.1,1.8,0.1,1.8,0.1]]},{"name":"comm","directions":4,"delays":[[0.1,0.1],[0.1,0.1],[0.1,0.1],[0.1,0.1]]},{"name":"comm_logs","directions":4,"delays":[[0.1,0.2,0.1,0.2,0.1,0.2,0.1,0.2],[0.1,0.2,0.1,0.2,0.1,0.2,0.1,0.2],[0.1,0.2,0.1,0.2,0.1,0.2,0.1,0.2],[0.1,0.2,0.1,0.2,0.1,0.2,0.1,0.2]]},{"name":"comm_monitor","directions":4,"delays":[[0.4,0.4,0.4],[0.4,0.4,0.4],[0.4,0.4,0.4],[0.4,0.4,0.4]]},{"name":"command","directions":4,"delays":[[0.2,0.2],[0.2,0.2],[0.2,0.2],[0.2,0.2]]},{"name":"computer","directions":4,"delays":[[1.0],[1.0],[1.0],[1.0]]},{"name":"computer_broken","directions":4,"delays":[[1.0],[1.0],[1.0],[1.0]]},{"name":"crew","directions":4,"delays":[[0.1,0.1,0.1,0.1,0.1,0.1,0.1,0.1,0.1,0.1,0.1,0.1,0.1,0.1,0.1,0.1,0.1,0.1,0.1,0.1],[0.1,0.1,0.1,0.1,0.1,0.1,0.1,0.1,0.1,0.1,0.1,0.1,0.1,0.1,0.1,0.1,0.1,0.1,0.1,0.1],[0.1,0.1,0.1,0.1,0.1,0.1,0.1,0.1,0.1,0.1,0.1,0.1,0.1,0.1,0.1,0.1,0.1,0.1,0.1,0.1],[0.1,0.1,0.1,0.1,0.1,0.1,0.1,0.1,0.1,0.1,0.1,0.1,0.1,0.1,0.1,0.1,0.1,0.1,0.1,0.1]]},{"name":"dna","directions":4,"delays":[[0.2,0.2,0.2,0.1,0.1,0.1,0.1,0.1,0.1,0.1,0.1,0.1,0.1,0.1,0.8,0.1,0.1,0.1,0.1,0.2,0.2,0.2],[0.2,0.2,0.2,0.1,0.1,0.1,0.1,0.1,0.1,0.1,0.1,0.1,0.1,0.1,0.8,0.1,0.1,0.1,0.1,0.2,0.2,0.2],[0.2,0.2,0.2,0.1,0.1,0.1,0.1,0.1,0.1,0.1,0.1,0.1,0.1,0.1,0.8,0.1,0.1,0.1,0.1,0.2,0.2,0.2],[0.2,0.2,0.2,0.1,0.1,0.1,0.1,0.1,0.1,0.1,0.1,0.1,0.1,0.1,0.8,0.1,0.1,0.1,0.1,0.2,0.2,0.2]]},{"name":"dron_control_monitor","directions":4,"delays":[[0.05,0.05,0.05,0.05,0.05,0.05,0.05,0.05],[0.05,0.05,0.05,0.05,0.05,0.05,0.05,0.05],[0.05,0.05,0.05,0.05,0.05,0.05,0.05,0.05],[0.05,0.05,0.05,0.05,0.05,0.05,0.05,0.05]]},{"name":"engie_cams","directions":4,"delays":[[1.8,0.1,1.8,0.1,1.8,0.1,1.8,0.1],[1.8,0.1,1.8,0.1,1.8,0.1,1.8,0.1],[1.8,0.1,1.8,0.1,1.8,0.1,1.8,0.1],[1.8,0.1,1.8,0.1,1.8,0.1,1.8,0.1]]},{"name":"engine","directions":4,"delays":[[0.2,0.2,0.2,0.2,0.2,0.2,0.2,0.2],[0.2,0.2,0.2,0.2,0.2,0.2,0.2,0.2],[0.2,0.2,0.2,0.2,0.2,0.2,0.2,0.2],[0.2,0.2,0.2,0.2,0.2,0.2,0.2,0.2]]},{"name":"entertainment","directions":1,"delays":[[0.2,0.2,0.2,0.2,0.2,0.2,0.2,0.2,0.2,0.2,0.2,0.2,0.2,0.2,0.2,0.2,0.2,0.2,0.2,0.2,0.2,0.2,0.2,0.2,0.2,0.2,0.2,0.2,0.2,0.2,0.2,0.2,0.2,0.2,0.2]]},{"name":"eris_control","directions":4,"delays":[[0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5],[0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5],[0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5],[0.5,0.5,0.5,0.5,0.5,0.5,0.5,0.5]]},{"name":"error","directions":4,"delays":[[1.0],[1.0],[1.0],[1.0]]},{"name":"explosive","directions":4,"delays":[[1.0,0.1,0.1,1.0,0.1,0.1,1.0,0.1,0.1],[1.0,0.1,0.1,1.0,0.1,0.1,1.0,0.1,0.1],[1.0,0.1,0.1,1.0,0.1,0.1,1.0,0.1,0.1],[1.0,0.1,0.1,1.0,0.1,0.1,1.0,0.1,0.1]]},{"name":"forensic","directions":4,"delays":[[0.2,0.2,0.2,0.2,0.2,0.2,0.2,0.2,0.2,0.2,0.2,0.2,0.2,0.2,0.2],[0.2,0.2,0.2,0.2,0.2,0.2,0.2,0.2,0.2,0.2,0.2,0.2,0.2,0.2,0.2],[0.2,0.2,0.2,0.2,0.2,0.2,0.2,0.2,0.2,0.2,0.2,0.2,0.2,0.2,0.2],[0.2,0.2,0.2,0.2,0.2,0.2,0.2,0.2,0.2,0.2,0.2,0.2,0.2,0.2,0.2]]},{"name":"generic","directions":4,"delays":[[0.2,0.2],[0.2,0.2],[0.2,0.2],[0.2,0.2]]},{"name":"generic_key","directions":4,"delays":[[1.0],[1.0],[1.0],[1.0]]},{"name":"generic_key_off","directions":4,"delays":[[1.0],[1.0],[1.0],[1.0]]},{"name":"holocontrol","directions":4,"delays":[[1.0,0.1,1.0,0.1,1.0,0.1,1.0,0.1],[1.0,0.1,1.0,0.1,1.0,0.1,1.0,0.1],[1.0,0.1,1.0,0.1,1.0,0.1,1.0,0.1],[1.0,0.1,1.0,0.1,1.0,0.1,1.0,0.1]]},{"name":"id","directions":4,"delays":[[0.2,0.2],[0.2,0.2],[0.2,0.2],[0.2,0.2]]},{"name":"id_key","directions":4,"delays":[[1.0],[1.0],[1.0],[1.0]]},{"name":"id_key_off","directions":4,"delays":[[1.0],[1.0],[1.0],[1.0]]},{"name":"mass_driver","directions":1,"delays":[[1.0]]},{"name":"mecha","directions":4,"delays":[[0.1,0.1,0.1,0.1,0.1,0.1],[0.1,0.1,0.1,0.1,0.1,0.1],[0.1,0.1,0.1,0.1,0.1,0.1],[0.1,0.1,0.1,0.1,0.1,0.1]]},{"name":"med_key","directions":4,"delays":[[1.0],[1.0],[1.0],[1.0]]},{"name":"med_key_off","directions":4,"delays":[[1.0],[1.0],[1.0],[1.0]]},{"name":"medcomp","directions":4,"delays":[[0.2,0.2,0.2,0.2,0.2,0.2,0.2,0.2,0.2,0.2,0.2,0.2,0.2,0.2,0.2],[0.2,0.2,0.2,0.2,0.2,0.2,0.2,0.2,0.2,0.2,0.2,0.2,0.2,0.2,0.2],[0.2,0.2,0.2,0.2,0.2,0.2,0.2,0.2,0.2,0.2,0.2,0.2,0.2,0.2,0.2],[0.2,0.2,0.2,0.2,0.2,0.2,0.2,0.2,0.2,0.2,0.2,0.2,0.2,0.2,0.2]]},{"name":"mining","directions":4,"delays":[[1.0,0.1,1.0,0.1,1.0,0.1,1.0,0.1],[1.0,0.1,1.0,0.1,1.0,0.1,1.0,0.1],[1.0,0.1,1.0,0.1,1.0,0.1,1.0,0.1],[1.0,0.1,1.0,0.1,1.0,0.1,1.0,0.1]]},{"name":"mining_key","directions":4,"delays":[[1.0],[1.0],[1.0],[1.0]]},{"name":"mining_key_off","directions":4,"delays":[[1.0],[1.0],[1.0],[1.0]]},{"name":"power_key","directions":4,"delays":[[1.0],[1.0],[1.0],[1.0]]},{"name":"power_key_off","directions":4,"delays":[[1.0],[1.0],[1.0],[1.0]]},{"name":"power_monitor","directions":4,"delays":[[0.6,0.6,0.6,0.6],[0.6,0.6,0.6,0.6],[0.6,0.6,0.6,0.6],[0.6,0.6,0.6,0.6]]},{"name":"power_monitor_warn","directions":4,"delays":[[0.2,0.2],[0.2,0.2],[0.2,0.2],[0.2,0.2]]},{"name":"rd_key","directions":4,"delays":[[1.0],[1.0],[1.0],[1.0]]},{"name":"rd_key_off","directions":4,"delays":[[1.0],[1.0],[1.0],[1.0]]},{"name":"rdcomp","directions":4,"delays":[[1.0],[1.0],[1.0],[1.0]]},{"name":"recharge_comp","directions":4,"delays":[[1.0],[1.0],[1.0],[1.0]]},{"name":"recharge_comp_on","directions":4,"delays":[[0.2,0.1,0.1,0.1,0.1,0.1,0.2],[0.2,0.1,0.1,0.1,0.1,0.1,0.2],[0.2,0.1,0.1,0.1,0.1,0.1,0.2],[0.2,0.1,0.1,0.1,0.1,0.1,0.2]]},{"name":"request","directions":4,"delays":[[0.3,0.3,0.3,0.3,0.3,0.3],[0.3,0.3,0.3,0.3,0.3,0.3],[0.3,0.3,0.3,0.3,0.3,0.3],[0.3,0.3,0.3,0.3,0.3,0.3]]},{"name":"robot","directions":4,"delays":[[1.0],[1.0],[1.0],[1.0]]},{"name":"security","directions":4,"delays":[[1.0],[1.0],[1.0],[1.0]]},{"name":"security_key","directions":4,"delays":[[1.0],[1.0],[1.0],[1.0]]},{"name":"security_key_off","directions":4,"delays":[[1.0],[1.0],[1.0],[1.0]]},{"name":"shuttle","directions":4,"delays":[[0.1,0.1,0.1],[0.1,0.1,0.1],[0.1,0.1,0.1],[0.1,0.1,0.1]]},{"name":"solar_screen","directions":4,"delays":[[0.1,0.1,0.1,0.1],[0.1,0.1,0.1,0.1],[0.1,0.1,0.1,0.1],[0.1,0.1,0.1,0.1]]},{"name":"supply","directions":4,"delays":[[1.0],[1.0],[1.0],[1.0]]},{"name":"syndie_key","directions":4,"delays":[[1.0],[1.0],[1.0],[1.0]]},{"name":"syndie_key_off","directions":4,"delays":[[1.0],[1.0],[1.0],[1.0]]},{"name":"syndishuttle","directions":4,"delays":[[1.0],[1.0],[1.0],[1.0]]},{"name":"tank","directions":4,"delays":[[1.0],[1.0],[1.0],[1.0]]},{"name":"tcboss","directions":4,"delays":[[1.0],[1.0],[1.0],[1.0]]},{"name":"tech_key","directions":4,"delays":[[1.0],[1.0],[1.0],[1.0]]},{"name":"tech_key_off","directions":4,"delays":[[1.0],[1.0],[1.0],[1.0]]},{"name":"teleport","directions":4,"delays":[[0.1,0.1,0.1,0.1],[0.1,0.1,0.1,0.1],[0.1,0.1,0.1,0.1],[0.1,0.1,0.1,0.1]]},{"name":"teleport_key","directions":4,"delays":[[1.0],[1.0],[1.0],[1.0]]},{"name":"teleport_key_off","directions":4,"delays":[[1.0],[1.0],[1.0],[1.0]]},{"name":"telesci","directions":4,"delays":[[0.1,0.1,0.1,0.1],[0.1,0.1,0.1,0.1],[0.1,0.1,0.1,0.1],[0.1,0.1,0.1,0.1]]},{"name":"telesci_key","directions":4,"delays":[[1.0],[1.0],[1.0],[1.0]]},{"name":"telesci_key_off","directions":4,"delays":[[1.0],[1.0],[1.0],[1.0]]},{"name":"turbinecomp","directions":4,"delays":[[1.0],[1.0],[1.0],[1.0]]},{"name":"arcade","directions":1,"delays":[[1.0]]},{"name":"arcade_broken","directions":1,"delays":[[1.0]]},{"name":"computer-datatheory","directions":1,"delays":[[1.0]]},{"name":"invaders","directions":1,"delays":[[0.3,0.3,0.3,0.3,0.3,0.3]]}]} \ No newline at end of file