diff --git a/Resources/Locale/ru-RU/_white/recipes/structures/airlocks.ftl b/Resources/Locale/ru-RU/_white/recipes/structures/airlocks.ftl new file mode 100644 index 0000000000..3df37da0ea --- /dev/null +++ b/Resources/Locale/ru-RU/_white/recipes/structures/airlocks.ftl @@ -0,0 +1,5 @@ +ent-airlockExternal = { ent-AirlockExternal } + .desc = { ent-AirlockExternal.desc } + +ent-airlockExternalGlass = стеклянный внешний шлюз + .desc = { ent-airlockExternal.desc} \ No newline at end of file diff --git a/Resources/Prototypes/Entities/Structures/Doors/Airlocks/assembly.yml b/Resources/Prototypes/Entities/Structures/Doors/Airlocks/assembly.yml index c464c70a15..f6ea95337b 100644 --- a/Resources/Prototypes/Entities/Structures/Doors/Airlocks/assembly.yml +++ b/Resources/Prototypes/Entities/Structures/Doors/Airlocks/assembly.yml @@ -108,6 +108,11 @@ - type: Sprite sprite: Structures/Doors/Airlocks/Standard/external.rsi state: "assembly" + - type: Construction ## WD edit + graph: Airlock + node: externalAssembly + containers: + - board - type: entity parent: AirlockAssembly @@ -117,6 +122,11 @@ - type: Sprite sprite: Structures/Doors/Airlocks/Glass/external.rsi state: "assembly" + - type: Construction ## WD edit + graph: Airlock + node: externalAssemblyGlass + containers: + - board #Public (Glass Airlock) - type: entity diff --git a/Resources/Prototypes/Entities/Structures/Doors/Airlocks/external.yml b/Resources/Prototypes/Entities/Structures/Doors/Airlocks/external.yml index 00df7a942e..93310beb73 100644 --- a/Resources/Prototypes/Entities/Structures/Doors/Airlocks/external.yml +++ b/Resources/Prototypes/Entities/Structures/Doors/Airlocks/external.yml @@ -20,6 +20,9 @@ - type: PaintableAirlock group: External department: null + - type: Construction ## WD edit + graph: Airlock + node: external - type: entity parent: AirlockExternal @@ -34,3 +37,6 @@ sprite: Structures/Doors/Airlocks/Glass/external.rsi - type: PaintableAirlock group: ExternalGlass + - type: Construction ## WD edit + graph: Airlock + node: externalGlass diff --git a/Resources/Prototypes/Recipes/Construction/Graphs/structures/airlock.yml b/Resources/Prototypes/Recipes/Construction/Graphs/structures/airlock.yml index 8021b5a298..d6180fb037 100644 --- a/Resources/Prototypes/Recipes/Construction/Graphs/structures/airlock.yml +++ b/Resources/Prototypes/Recipes/Construction/Graphs/structures/airlock.yml @@ -77,6 +77,15 @@ - material: ReinforcedGlass amount: 1 doAfter: 2 +## WD edit start + - to: externalAssembly + conditions: + - !type:EntityAnchored {} + steps: + - material: Steel + amount: 1 + doAfter: 2 +## WD edit end - to: wired conditions: - !type:EntityAnchored {} @@ -114,6 +123,55 @@ - tool: Prying doAfter: 5 +## WD edit start + - node: externalAssembly + entity: AirlockAssemblyExternal + edges: + - to: electronics + conditions: + - !type:EntityAnchored {} + completed: + - !type:SpawnPrototype + prototype: SheetSteel1 + amount: 1 + steps: + - tool: Prying + doAfter: 5 + - to: external + conditions: + - !type:EntityAnchored {} + steps: + - tool: Screwing + doAfter: 2.5 + - to: externalAssemblyGlass + conditions: + - !type:EntityAnchored {} + steps: + - material: ReinforcedGlass + amount: 1 + doAfter: 2 + + - node: externalAssemblyGlass + entity: AirlockAssemblyExternalGlass + edges: + - to: externalGlass + conditions: + - !type:EntityAnchored {} + steps: + - tool: Screwing + doAfter: 2.5 + - to: externalAssembly + conditions: + - !type:EntityAnchored {} + completed: + - !type:SpawnPrototype + prototype: SheetRGlass1 + amount: 1 + steps: + - tool: Prying + doAfter: 5 +## WD edit end + ## Glass airlock - node: glassAirlock entity: AirlockGlass @@ -154,6 +212,23 @@ amount: 2 doAfter: 2 +## WD edit start + - node: externalGlass + entity: AirlockExternalGlass + edges: + - to: externalAssemblyGlass + conditions: + - !type:EntityAnchored {} + - !type:DoorWelded {} + - !type:DoorBolted + value: false + - !type:WirePanel {} + - !type:AllWiresCut + steps: + - tool: Prying + doAfter: 5 +## WD edit end + ## Standard airlock - node: airlock entity: Airlock @@ -194,6 +269,23 @@ amount: 2 doAfter: 2 +## WD edit start + - node: external + entity: AirlockExternal + edges: + - to: externalAssembly + conditions: + - !type:EntityAnchored {} + - !type:DoorWelded {} + - !type:DoorBolted + value: false + - !type:WirePanel {} + - !type:AllWiresCut + steps: + - tool: Prying + doAfter: 5 +## WD edit end + ## High security door - node: highSecDoor actions: diff --git a/Resources/Prototypes/_White/Recipes/Construction/structures.yml b/Resources/Prototypes/_White/Recipes/Construction/structures.yml new file mode 100644 index 0000000000..a7685e8959 --- /dev/null +++ b/Resources/Prototypes/_White/Recipes/Construction/structures.yml @@ -0,0 +1,29 @@ +- type: construction + name: external airlock + id: airlockExternal + graph: Airlock + startNode: start + targetNode: external + category: construction-category-structures + description: It opens, it closes, it might crush you, and there might be only space behind it. Has to be manually activated. + icon: { sprite: Structures/Doors/Airlocks/Standard/external.rsi, state: closed } + objectType: Structure + placementMode: SnapgridCenter + canBuildInImpassable: false + conditions: + - !type:TileNotBlocked + +- type: construction + name: external airlock + id: airlockExternalGlass + graph: Airlock + startNode: start + targetNode: externalGlass + category: construction-category-structures + description: It opens, it closes, it might crush you, and there might be only space behind it. Has to be manually activated. + icon: { sprite: Structures/Doors/Airlocks/Glass/external.rsi, state: closed } + objectType: Structure + placementMode: SnapgridCenter + canBuildInImpassable: false + conditions: + - !type:TileNotBlocked \ No newline at end of file