diff --git a/Resources/Prototypes/Entities/Structures/Windows/plasma.yml b/Resources/Prototypes/Entities/Structures/Windows/plasma.yml index 83f995cb33..af09cdf537 100644 --- a/Resources/Prototypes/Entities/Structures/Windows/plasma.yml +++ b/Resources/Prototypes/Entities/Structures/Windows/plasma.yml @@ -59,6 +59,9 @@ - type: Icon sprite: Structures/Windows/directional.rsi state: plasma_window + - type: Construction + graph: windowDirectional + node: plasmaWindowDirectional - type: Destructible thresholds: - trigger: diff --git a/Resources/Prototypes/Entities/Structures/Windows/reinforced.yml b/Resources/Prototypes/Entities/Structures/Windows/reinforced.yml index 41fb98b181..82466829cc 100644 --- a/Resources/Prototypes/Entities/Structures/Windows/reinforced.yml +++ b/Resources/Prototypes/Entities/Structures/Windows/reinforced.yml @@ -59,6 +59,9 @@ - type: Icon sprite: Structures/Windows/directional.rsi state: reinforced_window + - type: Construction + graph: windowDirectional + node: windowReinforcedDirectional - type: Destructible thresholds: - trigger: diff --git a/Resources/Prototypes/Entities/Structures/Windows/rplasma.yml b/Resources/Prototypes/Entities/Structures/Windows/rplasma.yml index f7e8ae55ed..38dd07e183 100644 --- a/Resources/Prototypes/Entities/Structures/Windows/rplasma.yml +++ b/Resources/Prototypes/Entities/Structures/Windows/rplasma.yml @@ -62,6 +62,9 @@ - type: Icon sprite: Structures/Windows/directional.rsi state: plasma_reinforced_window + - type: Construction + graph: windowDirectional + node: plasmaReinforcedWindowDirectional - type: Destructible thresholds: - trigger: diff --git a/Resources/Prototypes/Entities/Structures/Windows/window.yml b/Resources/Prototypes/Entities/Structures/Windows/window.yml index 1e5b09d24e..ae123d2d38 100644 --- a/Resources/Prototypes/Entities/Structures/Windows/window.yml +++ b/Resources/Prototypes/Entities/Structures/Windows/window.yml @@ -122,6 +122,9 @@ airBlockedDirection: - South - type: Window + - type: Construction + graph: windowDirectional + node: windowDirectional - type: entity id: WindowTintedDirectional diff --git a/Resources/Prototypes/Recipes/Construction/Graphs/windowdirectional.yml b/Resources/Prototypes/Recipes/Construction/Graphs/windowdirectional.yml new file mode 100644 index 0000000000..d332e75f98 --- /dev/null +++ b/Resources/Prototypes/Recipes/Construction/Graphs/windowdirectional.yml @@ -0,0 +1,101 @@ +- type: constructionGraph + id: windowDirectional + start: start + graph: + - node: start + edges: + - to: plasmaWindowDirectional + steps: + - material: PlasmaGlass + amount: 1 + doAfter: 2 + + - to: windowReinforcedDirectional + steps: + - material: ReinforcedGlass + amount: 1 + doAfter: 2 + + - to: plasmaReinforcedWindowDirectional + steps: + - material: ReinforcedPlasmaGlass + amount: 1 + doAfter: 3 + + - to: windowDirectional + steps: + - material: Glass + amount: 1 + doAfter: 3 + + - node: windowDirectional + entity: WindowDirectional + edges: + - to: start + completed: + - !type:SpawnPrototype + prototype: SheetGlass1 + amount: 1 + - !type:DeleteEntity {} + steps: + - tool: Screwing + doAfter: 1 + - tool: Anchoring + doAfter: 2 + + - node: windowReinforcedDirectional + entity: WindowReinforcedDirectional + edges: + - to: start + completed: + - !type:SpawnPrototype + prototype: SheetRGlass1 + amount: 1 + - !type:DeleteEntity {} + steps: + - tool: Screwing + doAfter: 1 + - tool: Prying + doAfter: 2 + - tool: Screwing + doAfter: 1 + - tool: Anchoring + doAfter: 2 + + - node: plasmaWindowDirectional + entity: PlasmaWindowDirectional + edges: + - to: start + completed: + - !type:SpawnPrototype + prototype: SheetPGlass1 + amount: 1 + - !type:DeleteEntity {} + steps: + - tool: Screwing + doAfter: 2 + - tool: Prying + doAfter: 3 + - tool: Screwing + doAfter: 2 + - tool: Anchoring + doAfter: 3 + + - node: plasmaReinforcedWindowDirectional + entity: PlasmaReinforcedWindowDirectional + edges: + - to: start + completed: + - !type:SpawnPrototype + prototype: SheetRPGlass1 + amount: 1 + - !type:DeleteEntity {} + steps: + - tool: Screwing + doAfter: 2 + - tool: Prying + doAfter: 3 + - tool: Screwing + doAfter: 2 + - tool: Anchoring + doAfter: 3 diff --git a/Resources/Prototypes/Recipes/Construction/structures.yml b/Resources/Prototypes/Recipes/Construction/structures.yml index 4831d2350d..6cac301c92 100644 --- a/Resources/Prototypes/Recipes/Construction/structures.yml +++ b/Resources/Prototypes/Recipes/Construction/structures.yml @@ -145,6 +145,78 @@ placementMode: SnapgridCenter canRotate: false +- type: construction + name: directional window + id: WindowDirectional + graph: windowDirectional + startNode: start + targetNode: windowDirectional + category: Structures + description: Clear. + canBuildInImpassable: true + conditions: + - !type:EmptyOrWindowValidInTile {} + - !type:NoWindowsInTile {} + icon: + sprite: Structures/Windows/directional.rsi + state: window + objectType: Structure + placementMode: SnapgridCenter + +- type: construction + name: directional reinforced window + id: WindowReinforcedDirectional + graph: windowDirectional + startNode: start + targetNode: windowReinforcedDirectional + category: Structures + description: Clear but tough. + canBuildInImpassable: true + conditions: + - !type:EmptyOrWindowValidInTile {} + - !type:NoWindowsInTile {} + icon: + sprite: Structures/Windows/directional.rsi + state: reinforced_window + objectType: Structure + placementMode: SnapgridCenter + +- type: construction + name: directional plasma window + id: PlasmaWindowDirectional + graph: windowDirectional + startNode: start + targetNode: plasmaWindowDirectional + category: Structures + canBuildInImpassable: true + description: Clear and even tougher, with a purple tint. + conditions: + - !type:EmptyOrWindowValidInTile {} + - !type:NoWindowsInTile {} + icon: + sprite: Structures/Windows/directional.rsi + state: plasma_window + objectType: Structure + placementMode: SnapgridCenter + +- type: construction + name: directional reinforced plasma window + id: PlasmaReinforcedWindowDirectional + graph: windowDirectional + startNode: start + targetNode: plasmaReinforcedWindowDirectional + category: Structures + canBuildInImpassable: true + description: Fire resistant and even tougher, with a purple tint. + conditions: + - !type:EmptyOrWindowValidInTile {} + - !type:NoWindowsInTile {} + icon: + sprite: Structures/Windows/directional.rsi + state: plasma_reinforced_window + objectType: Structure + placementMode: SnapgridCenter + - type: construction name: firelock id: Firelock