diff --git a/Content.Server/Construction/NodeEntities/BoardNodeEntity.cs b/Content.Server/Construction/NodeEntities/BoardNodeEntity.cs index 3e73ffde3e1..1631f846049 100644 --- a/Content.Server/Construction/NodeEntities/BoardNodeEntity.cs +++ b/Content.Server/Construction/NodeEntities/BoardNodeEntity.cs @@ -1,4 +1,4 @@ -using Content.Server.Construction.Components; +using Content.Server._NF.Construction.Components; // Frontier using Content.Shared.Construction; using Content.Shared.Construction.Components; using JetBrains.Annotations; @@ -15,6 +15,7 @@ namespace Content.Server.Construction.NodeEntities; public sealed partial class BoardNodeEntity : IGraphNodeEntity { [DataField("container")] public string Container { get; private set; } = string.Empty; + [DataField] public ComputerType Computer { get; private set; } = ComputerType.Default; // Frontier public string? GetId(EntityUid? uid, EntityUid? userUid, GraphNodeEntityArgs args) { @@ -29,13 +30,22 @@ public sealed partial class BoardNodeEntity : IGraphNodeEntity var board = container.ContainedEntities[0]; - // Frontier - adds tabletop variants - if (args.EntityManager.TryGetComponent(container.Owner, out ConstructionComponent? constructionComponent) - && constructionComponent.Graph == "ComputerTabletop" - && args.EntityManager.TryGetComponent(board, out ComputerTabletopBoardComponent? tabletopComputer)) + // Frontier - alternative computer variants + switch (Computer) { - return tabletopComputer.Prototype; + case ComputerType.Tabletop: + if (args.EntityManager.TryGetComponent(board, out ComputerTabletopBoardComponent? tabletopComputer)) + return tabletopComputer.Prototype; + break; + case ComputerType.Wallmount: + if (args.EntityManager.TryGetComponent(board, out ComputerWallmountBoardComponent? wallmountComputer)) + return wallmountComputer.Prototype; + break; + case ComputerType.Default: + default: + break; } + // End Frontier // There should not be a case where both of these components exist on the same entity... if (args.EntityManager.TryGetComponent(board, out MachineBoardComponent? machine)) @@ -46,4 +56,13 @@ public sealed partial class BoardNodeEntity : IGraphNodeEntity return null; } + + // Frontier: support for multiple computer types + public enum ComputerType : byte + { + Default, // Default machines + Tabletop, + Wallmount + } + // End Frontier } diff --git a/Content.Server/Construction/Components/ComputerTabletopBoardComponent.cs b/Content.Server/_NF/Construction/Components/ComputerTabletopBoardComponent.cs similarity index 90% rename from Content.Server/Construction/Components/ComputerTabletopBoardComponent.cs rename to Content.Server/_NF/Construction/Components/ComputerTabletopBoardComponent.cs index 78e892cd947..680ccdb9819 100644 --- a/Content.Server/Construction/Components/ComputerTabletopBoardComponent.cs +++ b/Content.Server/_NF/Construction/Components/ComputerTabletopBoardComponent.cs @@ -1,7 +1,7 @@ using Robust.Shared.Prototypes; using Robust.Shared.Serialization.TypeSerializers.Implementations.Custom.Prototype; -namespace Content.Server.Construction.Components +namespace Content.Server._NF.Construction.Components { /// /// Used for construction graphs in building tabletop computers. diff --git a/Content.Server/_NF/Construction/Components/ComputerWallmountBoardComponent.cs b/Content.Server/_NF/Construction/Components/ComputerWallmountBoardComponent.cs new file mode 100644 index 00000000000..3d8eba5ad03 --- /dev/null +++ b/Content.Server/_NF/Construction/Components/ComputerWallmountBoardComponent.cs @@ -0,0 +1,15 @@ +using Robust.Shared.Prototypes; +using Robust.Shared.Serialization.TypeSerializers.Implementations.Custom.Prototype; + +namespace Content.Server._NF.Construction.Components +{ + /// + /// Used for construction graphs in building wallmount computers. + /// + [RegisterComponent] + public sealed partial class ComputerWallmountBoardComponent : Component + { + [DataField("prototype", customTypeSerializer: typeof(PrototypeIdSerializer))] + public string? Prototype { get; private set; } + } +} diff --git a/Resources/Prototypes/Entities/Objects/Devices/Circuitboards/computer.yml b/Resources/Prototypes/Entities/Objects/Devices/Circuitboards/computer.yml index 5c101b0f7ec..df00bb3edac 100644 --- a/Resources/Prototypes/Entities/Objects/Devices/Circuitboards/computer.yml +++ b/Resources/Prototypes/Entities/Objects/Devices/Circuitboards/computer.yml @@ -325,10 +325,8 @@ prototype: ComputerRadar - type: ComputerTabletopBoard # Frontier prototype: ComputerTabletopRadar # Frontier - - type: Tag # Frontier - tags: # Frontier - - DroneUsable # Frontier - - RadarConsoleCircuitboard # Frontier + - type: ComputerWallmountBoard # Frontier + prototype: ComputerWallmountRadar # Frontier - type: entity parent: BaseComputerCircuitboard @@ -341,10 +339,8 @@ prototype: ComputerAdvancedRadar - type: ComputerTabletopBoard # Frontier prototype: ComputerTabletopAdvancedRadar # Frontier - - type: Tag # Frontier - tags: # Frontier - - DroneUsable # Frontier - - AdvancedRadarConsoleCircuitboard # Frontier + - type: ComputerWallmountBoard # Frontier + prototype: ComputerWallmountAdvancedRadar # Frontier - type: entity parent: BaseComputerCircuitboard diff --git a/Resources/Prototypes/_NF/Entities/Structures/Machines/Computers/computers_wallmount.yml b/Resources/Prototypes/_NF/Entities/Structures/Machines/Computers/computers_wallmount.yml new file mode 100644 index 00000000000..fdc693ee044 --- /dev/null +++ b/Resources/Prototypes/_NF/Entities/Structures/Machines/Computers/computers_wallmount.yml @@ -0,0 +1,26 @@ +# Mass scanner telescreen +- type: entity + parent: [BaseStructureComputerWallmount, ComputerRadar] + id: ComputerWallmountRadar + components: + - type: Sprite + drawdepth: WallMountedItems + sprite: _NF/Structures/Machines/computer_wallmount.rsi + layers: + - map: ["computerLayerBody"] + state: computer_wallmount + - map: ["computerLayerScreen"] + state: screen_mass + +- type: entity + parent: [BaseStructureComputerWallmount, ComputerAdvancedRadar] + id: ComputerWallmountAdvancedRadar + components: + - type: Sprite + drawdepth: WallMountedItems + sprite: _NF/Structures/Machines/computer_wallmount.rsi + layers: + - map: ["computerLayerBody"] + state: computer_wallmount + - map: ["computerLayerScreen"] + state: screen_radar diff --git a/Resources/Prototypes/_NF/Entities/Structures/Machines/Computers/frame_wallmount.yml b/Resources/Prototypes/_NF/Entities/Structures/Machines/Computers/frame_wallmount.yml new file mode 100644 index 00000000000..0973d8b9402 --- /dev/null +++ b/Resources/Prototypes/_NF/Entities/Structures/Machines/Computers/frame_wallmount.yml @@ -0,0 +1,76 @@ +- type: entity + id: BaseStructureComputerWallmount + parent: [BaseStructureWallmount, BaseStructure] + suffix: Wallmount + abstract: true + components: + - type: Anchorable + - type: InteractionOutline + - type: Construction + graph: ComputerWallmount + node: wallmount computer + - type: Sprite + sprite: _NF/Structures/Machines/computer_wallmount.rsi + drawdepth: WallMountedItems + layers: + - map: [ "computerLayerBody" ] + sprite: _NF/Structures/Machines/computer_wallmount.rsi + state: computer_wallmount + - map: [ "computerLayerScreen" ] + sprite: _NF/Structures/Machines/computer_wallmount.rsi + state: screen_generic + - type: Damageable + damageContainer: Inorganic + damageModifierSet: Electronic + - type: Destructible + thresholds: + - trigger: + !type:DamageTrigger + damage: 100 + behaviors: + - !type:PlaySoundBehavior + sound: + collection: GlassBreak + - !type:ChangeConstructionNodeBehavior + node: monitorBroken + - !type:DoActsBehavior + acts: ["Destruction"] + - type: StaticPrice + price: 100 + +- type: entity + parent: BaseStructureComputerWallmount + name: computer + id: ComputerWallmountFrame + components: + - type: Construction + graph: ComputerWallmount + node: frameUnsecured + containers: + - board + - type: Sprite + drawdepth: WallMountedItems + sprite: _NF/Structures/Machines/computer_wallmount.rsi + layers: + - state: computer_wallmount_frame + map: [ "enum.ConstructionVisuals.Layer" ] + - type: Appearance + - type: GenericVisualizer + visuals: + enum.ConstructionVisuals.Key: + enum.ConstructionVisuals.Layer: + frameUnsecured: { state: computer_wallmount_frame } + boardUnsecured: { state: computer_board_exposed } + missingWires: { state: computer_needs_wires } + monitorMissing: { state: computer_no_monitor } + monitorUnsecured: { state: computer_monitor_unscrewed } + +- type: entity + parent: [BaseStructureWallmount, ComputerBroken] + id: ComputerWallmountBroken + suffix: Wallmount + components: + - type: Sprite + drawdepth: WallMountedItems + sprite: _NF/Structures/Machines/computer_wallmount.rsi + state: broken_wallmount diff --git a/Resources/Prototypes/_NF/Entities/Structures/Wallmounts/monitors_televisions.yml b/Resources/Prototypes/_NF/Entities/Structures/Wallmounts/monitors_televisions.yml deleted file mode 100644 index c60c5e0b710..00000000000 --- a/Resources/Prototypes/_NF/Entities/Structures/Wallmounts/monitors_televisions.yml +++ /dev/null @@ -1,91 +0,0 @@ -# Mass scanner telescreen frame for construction graph -- type: entity - parent: WallmountTelescreenFrame - id: ComputerRadarTelescreenFrame - name: mass scanner telescreen frame - description: A computer for detecting nearby bodies, displaying them by position and mass. - components: - - type: Construction - graph: ComputerRadarTelescreen - node: TelescreenFrame - -# Mass scanner telescreen -- type: entity - parent: ComputerRadarTelescreenFrame - id: ComputerRadarTelescreen - name: mass scanner telescreen - description: A computer for detecting nearby bodies, displaying them by position and mass. - components: - - type: Construction - graph: ComputerRadarTelescreen - node: Telescreen - - type: Sprite - layers: - - map: ["computerLayerBody"] - state: telescreen_frame - - map: ["computerLayerScreen"] - sprite: _NF/Structures/Machines/computers.rsi - state: telescreen_mass - - type: RadarConsole - maxRange: 256 - maxIffRange: 512 - - type: ActivatableUI - key: enum.RadarConsoleUiKey.Key - - type: UserInterface - interfaces: - enum.RadarConsoleUiKey.Key: - type: RadarConsoleBoundUserInterface - enum.WiresUiKey.Key: - type: WiresBoundUserInterface - - type: Computer - board: RadarConsoleCircuitboard - - type: PointLight - radius: 1.5 - energy: 1.6 - color: "#e6e227" - -# Radar telescreen frame for construction graph -- type: entity - parent: WallmountTelescreenFrame - id: ComputerAdvancedRadarTelescreenFrame - name: radar telescreen frame - description: This advanced radar lets you detect far away objects for an increased tactical advantage. - components: - - type: Construction - graph: ComputerAdvancedRadarTelescreen - node: TelescreenFrame - -# Radar telescreen -- type: entity - parent: ComputerAdvancedRadarTelescreenFrame - id: ComputerAdvancedRadarTelescreen - name: radar telescreen - description: This advanced radar lets you detect far away objects for an increased tactical advantage. - components: - - type: Construction - graph: ComputerAdvancedRadarTelescreen - node: Telescreen - - type: Sprite - layers: - - map: ["computerLayerBody"] - state: telescreen_frame - - map: ["computerLayerScreen"] - sprite: _NF/Structures/Machines/computers.rsi - state: telescreen_radar - - type: RadarConsole - maxRange: 768 - maxIffRange: null - - type: ActivatableUI - key: enum.RadarConsoleUiKey.Key - - type: UserInterface - interfaces: - enum.RadarConsoleUiKey.Key: - type: RadarConsoleBoundUserInterface - enum.WiresUiKey.Key: - type: WiresBoundUserInterface - - type: Computer - board: AdvancedRadarConsoleCircuitboard - - type: PointLight - radius: 1.5 - energy: 1.6 - color: "#e6e227" \ No newline at end of file diff --git a/Resources/Prototypes/_NF/Recipes/Construction/Graphs/machines/computer_tabletop.yml b/Resources/Prototypes/_NF/Recipes/Construction/Graphs/machines/computer_tabletop.yml index 5cc27fc1e69..107a04620f6 100644 --- a/Resources/Prototypes/_NF/Recipes/Construction/Graphs/machines/computer_tabletop.yml +++ b/Resources/Prototypes/_NF/Recipes/Construction/Graphs/machines/computer_tabletop.yml @@ -36,7 +36,7 @@ amount: 5 - !type:DeleteEntity {} steps: - - tool: Welding + - tool: Screwing doAfter: 2 - node: boardUnsecured @@ -119,7 +119,9 @@ - tool: Prying - node: tabletop computer - entity: !type:BoardNodeEntity { container: board } + entity: !type:BoardNodeEntity + container: board + computer: Tabletop edges: - to: monitorUnsecured conditions: diff --git a/Resources/Prototypes/_NF/Recipes/Construction/Graphs/machines/computer_wallmount.yml b/Resources/Prototypes/_NF/Recipes/Construction/Graphs/machines/computer_wallmount.yml new file mode 100644 index 00000000000..a8b403facc6 --- /dev/null +++ b/Resources/Prototypes/_NF/Recipes/Construction/Graphs/machines/computer_wallmount.yml @@ -0,0 +1,141 @@ +- type: constructionGraph + id: ComputerWallmount + start: start + graph: + - node: start + edges: + - to: frameUnsecured + completed: + - !type:SetAnchor + value: true # Explicitly true - should always be anchored + steps: + - material: Steel + amount: 5 + doAfter: 2.5 + + - node: frameUnsecured + actions: + - !type:AppearanceChange + entity: ComputerWallmountFrame + edges: + - to: boardUnsecured + steps: + - component: ComputerWallmountBoard + store: board + name: any wallmount computer circuit board + icon: + sprite: "Objects/Misc/module.rsi" + state: "id_mod" + + - to: start + completed: + - !type:SpawnPrototype + prototype: SheetSteel1 + amount: 5 + - !type:DeleteEntity {} + steps: + - tool: Screwing + doAfter: 2 + + - node: boardUnsecured + actions: + - !type:AppearanceChange + edges: + - to: missingWires + conditions: + - !type:EntityAnchored {} + steps: + - tool: Screwing + + - to: frameUnsecured + conditions: + - !type:EntityAnchored { } + completed: + - !type:EmptyAllContainers + emptyAtUser: true # Try and prevent stuff going out into space + steps: + - tool: Prying + + - node: missingWires + actions: + - !type:AppearanceChange + edges: + - to: monitorMissing + conditions: + - !type:EntityAnchored {} + steps: + - material: Cable + amount: 5 + + - to: boardUnsecured + conditions: + - !type:EntityAnchored { } + steps: + - tool: Screwing + + - node: monitorMissing + entity: ComputerWallmountFrame + actions: + - !type:AppearanceChange + edges: + - to: monitorUnsecured + conditions: + - !type:EntityAnchored {} + steps: + - material: Glass + amount: 2 + + - to: missingWires + conditions: + - !type:EntityAnchored { } + completed: + - !type:SpawnPrototype + prototype: CableApcStack1 + amount: 5 + steps: + - tool: Cutting + + - node: monitorUnsecured + actions: + - !type:AppearanceChange + entity: ComputerWallmountFrame + edges: + - to: wallmount computer + conditions: + - !type:EntityAnchored {} + steps: + - tool: Screwing + + - to: monitorMissing + conditions: + - !type:EntityAnchored {} + completed: + - !type:SpawnPrototype + prototype: SheetGlass1 + amount: 2 + steps: + - tool: Prying + + - node: wallmount computer + entity: !type:BoardNodeEntity + container: board + computer: Wallmount + edges: + - to: monitorUnsecured + steps: + - tool: Prying + doAfter: 1 + + - node: monitorBroken + entity: ComputerWallmountBroken + edges: + - to: monitorMissing + conditions: + - !type:EntityAnchored {} + completed: + - !type:SpawnPrototype + prototype: ShardGlass + amount: 2 + steps: + - tool: Prying + doAfter: 2 diff --git a/Resources/Prototypes/_NF/Recipes/Construction/Graphs/utilities/wallmount_telescreens.yml b/Resources/Prototypes/_NF/Recipes/Construction/Graphs/utilities/wallmount_telescreens.yml deleted file mode 100644 index 2608abe5e9c..00000000000 --- a/Resources/Prototypes/_NF/Recipes/Construction/Graphs/utilities/wallmount_telescreens.yml +++ /dev/null @@ -1,167 +0,0 @@ -# Mass Scanner Telescreen -- type: constructionGraph - id: ComputerRadarTelescreen - start: start - graph: - - node: start - edges: - - to: TelescreenFrame - steps: - - material: Steel - amount: 2 - doAfter: 2 - - - node: TelescreenFrame - entity: ComputerRadarTelescreenFrame - edges: - - to: Wired - steps: - - material: Cable - amount: 5 - doAfter: 3 - - - to: start - completed: - - !type:GivePrototype - prototype: SheetSteel1 - amount: 2 - - !type:DeleteEntity {} - steps: - - tool: Welding - doAfter: 2 - - - node: Wired - edges: - - to: Screen - steps: - - tool: Screwing - doAfter: 2 - - tag: RadarConsoleCircuitboard - name: radar console computer board - icon: - sprite: Objects/Misc/module.rsi - state: cpuboard - - - to: TelescreenFrame - completed: - - !type:GivePrototype - prototype: CableApcStack1 - amount: 5 - - !type:GivePrototype - prototype: RadarConsoleCircuitboard - amount: 1 - steps: - - tool: Cutting - doAfter: 2 - - - node: Screen - entity: ComputerRadarTelescreenFrame - edges: - - to: Telescreen - steps: - - tool: Screwing - doAfter: 2 - - material: Glass - amount: 2 - doAfter: 2 - - - to: Wired - completed: - - !type:GivePrototype - prototype: SheetGlass1 - amount: 2 - steps: - - tool: Prying - doAfter: 2 - - - node: Telescreen - entity: ComputerRadarTelescreen - edges: - - to: Screen - steps: - - tool: Screwing - doAfter: 3 - -# Advanced Radar Telescreen -- type: constructionGraph - id: ComputerAdvancedRadarTelescreen - start: start - graph: - - node: start - edges: - - to: TelescreenFrame - steps: - - material: Steel - amount: 2 - doAfter: 2 - - - node: TelescreenFrame - entity: ComputerAdvancedRadarTelescreenFrame - edges: - - to: Wired - steps: - - material: Cable - amount: 5 - doAfter: 3 - - - to: start - completed: - - !type:GivePrototype - prototype: SheetSteel1 - amount: 2 - - !type:DeleteEntity {} - steps: - - tool: Welding - doAfter: 2 - - - node: Wired - edges: - - to: Screen - steps: - - tool: Screwing - doAfter: 2 - - tag: AdvancedRadarConsoleCircuitboard - name: advanced radar console computer board - icon: - sprite: Objects/Misc/module.rsi - state: cpuboard - - - to: TelescreenFrame - completed: - - !type:GivePrototype - prototype: CableApcStack1 - amount: 5 - - !type:GivePrototype - prototype: AdvancedRadarConsoleCircuitboard - amount: 1 - steps: - - tool: Cutting - doAfter: 2 - - - node: Screen - entity: ComputerAdvancedRadarTelescreenFrame - edges: - - to: Telescreen - steps: - - tool: Screwing - doAfter: 2 - - material: Glass - amount: 2 - doAfter: 2 - - - to: Wired - completed: - - !type:GivePrototype - prototype: SheetGlass1 - amount: 2 - steps: - - tool: Prying - doAfter: 2 - - - node: Telescreen - entity: ComputerAdvancedRadarTelescreen - edges: - - to: Screen - steps: - - tool: Screwing - doAfter: 3 \ No newline at end of file diff --git a/Resources/Prototypes/_NF/Recipes/Construction/machines.yml b/Resources/Prototypes/_NF/Recipes/Construction/machines.yml index ff303800b5a..76978b6fef4 100644 --- a/Resources/Prototypes/_NF/Recipes/Construction/machines.yml +++ b/Resources/Prototypes/_NF/Recipes/Construction/machines.yml @@ -11,3 +11,20 @@ icon: sprite: _NF/Structures/Machines/computer_tabletop.rsi state: computer_tabletop_frame + +- type: construction + name: computer (wallmount) + id: ConstructionComputerWallmount + graph: ComputerWallmount + startNode: start + targetNode: wallmount computer + category: construction-category-machines + description: A frame used to construct anything with a computer circuitboard. + icon: + sprite: _NF/Structures/Machines/computer_wallmount.rsi + state: computer_wallmount_frame + objectType: Structure + placementMode: SnapgridCenter + canBuildInImpassable: true + conditions: + - !type:WallmountCondition {} diff --git a/Resources/Prototypes/_NF/Recipes/Construction/utilities.yml b/Resources/Prototypes/_NF/Recipes/Construction/utilities.yml deleted file mode 100644 index c67381e9045..00000000000 --- a/Resources/Prototypes/_NF/Recipes/Construction/utilities.yml +++ /dev/null @@ -1,35 +0,0 @@ -# Wallmount mass scanner telescreen -- type: construction - name: mass scanner telescreen - id: ComputerRadarTelescreen - graph: ComputerRadarTelescreen - startNode: start - targetNode: Telescreen - category: construction-category-utilities - description: "A computer for detecting nearby bodies, displaying them by position and mass." - icon: - sprite: Structures/Machines/computers.rsi - state: telescreen_frame - objectType: Structure - placementMode: SnapgridCenter - canBuildInImpassable: true - conditions: - - !type:WallmountCondition {} - -# Wallmount advanced radar telescreen -- type: construction - name: radar telescreen - id: ComputerAdvancedRadarTelescreen - graph: ComputerAdvancedRadarTelescreen - startNode: start - targetNode: Telescreen - category: construction-category-utilities - description: "This advanced radar lets you detect far away objects for an increased tactical advantage." - icon: - sprite: Structures/Machines/computers.rsi - state: telescreen_frame - objectType: Structure - placementMode: SnapgridCenter - canBuildInImpassable: true - conditions: - - !type:WallmountCondition {} \ No newline at end of file diff --git a/Resources/Prototypes/_NF/tags.yml b/Resources/Prototypes/_NF/tags.yml index 931aaecbe17..bba0f16bf41 100644 --- a/Resources/Prototypes/_NF/tags.yml +++ b/Resources/Prototypes/_NF/tags.yml @@ -69,19 +69,19 @@ - type: Tag id: SalvageOutpost - + - type: Tag id: HoverbikeKeys - + - type: Tag id: WeaponRifleNovaliteC1 - + - type: Tag id: MagazineNovaliteC1 - type: Tag id: TrackingDart - + - type: Tag id: SpeedLoaderRifleHeavy @@ -96,7 +96,7 @@ - type: Tag id: BrassKnucklesNF - + - type: Tag id: MaterialHideRosyMothroach @@ -105,9 +105,3 @@ - type: Tag id: NFVGRoidInterior - -- type: Tag - id: RadarConsoleCircuitboard - -- type: Tag - id: AdvancedRadarConsoleCircuitboard \ No newline at end of file diff --git a/Resources/Textures/_NF/Structures/Machines/computer_wallmount.rsi/broken_wallmount.png b/Resources/Textures/_NF/Structures/Machines/computer_wallmount.rsi/broken_wallmount.png new file mode 100644 index 00000000000..e6faf190db9 Binary files /dev/null and b/Resources/Textures/_NF/Structures/Machines/computer_wallmount.rsi/broken_wallmount.png differ diff --git a/Resources/Textures/_NF/Structures/Machines/computer_wallmount.rsi/computer_board_exposed.png b/Resources/Textures/_NF/Structures/Machines/computer_wallmount.rsi/computer_board_exposed.png new file mode 100644 index 00000000000..2b46b31ac8c Binary files /dev/null and b/Resources/Textures/_NF/Structures/Machines/computer_wallmount.rsi/computer_board_exposed.png differ diff --git a/Resources/Textures/_NF/Structures/Machines/computer_wallmount.rsi/computer_monitor_unscrewed.png b/Resources/Textures/_NF/Structures/Machines/computer_wallmount.rsi/computer_monitor_unscrewed.png new file mode 100644 index 00000000000..550e97bed10 Binary files /dev/null and b/Resources/Textures/_NF/Structures/Machines/computer_wallmount.rsi/computer_monitor_unscrewed.png differ diff --git a/Resources/Textures/_NF/Structures/Machines/computer_wallmount.rsi/computer_needs_wires.png b/Resources/Textures/_NF/Structures/Machines/computer_wallmount.rsi/computer_needs_wires.png new file mode 100644 index 00000000000..cc7b7f0cee1 Binary files /dev/null and b/Resources/Textures/_NF/Structures/Machines/computer_wallmount.rsi/computer_needs_wires.png differ diff --git a/Resources/Textures/_NF/Structures/Machines/computer_wallmount.rsi/computer_no_monitor.png b/Resources/Textures/_NF/Structures/Machines/computer_wallmount.rsi/computer_no_monitor.png new file mode 100644 index 00000000000..813f00e67d0 Binary files /dev/null and b/Resources/Textures/_NF/Structures/Machines/computer_wallmount.rsi/computer_no_monitor.png differ diff --git a/Resources/Textures/_NF/Structures/Machines/computer_wallmount.rsi/computer_wallmount.png b/Resources/Textures/_NF/Structures/Machines/computer_wallmount.rsi/computer_wallmount.png new file mode 100644 index 00000000000..b96cd3ca6df Binary files /dev/null and b/Resources/Textures/_NF/Structures/Machines/computer_wallmount.rsi/computer_wallmount.png differ diff --git a/Resources/Textures/_NF/Structures/Machines/computer_wallmount.rsi/computer_wallmount_frame.png b/Resources/Textures/_NF/Structures/Machines/computer_wallmount.rsi/computer_wallmount_frame.png new file mode 100644 index 00000000000..505c0bfaeb9 Binary files /dev/null and b/Resources/Textures/_NF/Structures/Machines/computer_wallmount.rsi/computer_wallmount_frame.png differ diff --git a/Resources/Textures/_NF/Structures/Machines/computer_wallmount.rsi/meta.json b/Resources/Textures/_NF/Structures/Machines/computer_wallmount.rsi/meta.json new file mode 100644 index 00000000000..7ac097aa545 --- /dev/null +++ b/Resources/Textures/_NF/Structures/Machines/computer_wallmount.rsi/meta.json @@ -0,0 +1,48 @@ +{ + "version": 1, + "license": "CC-BY-SA-3.0", + "copyright": "Taken from tgstation at commit https://github.com/tgstation/tgstation/commit/bd6873fd4dd6a61d7e46f1d75cd4d90f64c40894, resprited by whatston3 (GitHub)", + "copyright": "screen_mass, screen_radar by Tych0thesynth (GitHub)", + "size": { + "x": 32, + "y": 32 + }, + "states": [ + { + "name": "broken_wallmount", + "directions": 4 + }, + { + "name": "computer_board_exposed", + "directions": 4 + }, + { + "name": "computer_monitor_unscrewed", + "directions": 4 + }, + { + "name": "computer_needs_wires", + "directions": 4 + }, + { + "name": "computer_no_monitor", + "directions": 4 + }, + { + "name": "computer_wallmount", + "directions": 4 + }, + { + "name": "computer_wallmount_frame", + "directions": 4 + }, + { + "name": "screen_mass", + "directions": 4 + }, + { + "name": "screen_radar", + "directions": 4 + } + ] +} diff --git a/Resources/Textures/_NF/Structures/Machines/computers.rsi/telescreen_mass.png b/Resources/Textures/_NF/Structures/Machines/computer_wallmount.rsi/screen_mass.png similarity index 100% rename from Resources/Textures/_NF/Structures/Machines/computers.rsi/telescreen_mass.png rename to Resources/Textures/_NF/Structures/Machines/computer_wallmount.rsi/screen_mass.png diff --git a/Resources/Textures/_NF/Structures/Machines/computers.rsi/telescreen_radar.png b/Resources/Textures/_NF/Structures/Machines/computer_wallmount.rsi/screen_radar.png similarity index 100% rename from Resources/Textures/_NF/Structures/Machines/computers.rsi/telescreen_radar.png rename to Resources/Textures/_NF/Structures/Machines/computer_wallmount.rsi/screen_radar.png diff --git a/Resources/Textures/_NF/Structures/Machines/computers.rsi/meta.json b/Resources/Textures/_NF/Structures/Machines/computers.rsi/meta.json index bb6d9af30a0..183fb96bfc3 100644 --- a/Resources/Textures/_NF/Structures/Machines/computers.rsi/meta.json +++ b/Resources/Textures/_NF/Structures/Machines/computers.rsi/meta.json @@ -262,12 +262,6 @@ 0.5 ] ] - }, - { "name": "telescreen_mass", - "directions": 4 - }, - { "name": "telescreen_radar", - "directions": 4 } ] }