From 12c5c7e91b6f2258a30fb0d159fcc0c8c303656e Mon Sep 17 00:00:00 2001 From: JustinWinningham Date: Fri, 20 Dec 2024 19:28:46 -0800 Subject: [PATCH] Wood walls from barricades (#33902) * Wood wall is now built from barricade congraph and on top of a barricade instead of using rods * Fixed construction instructions for wooden wall * Wood wall is now built from barricade congraph and on top of a barricade instead of using rods * Fixed construction instructions for wooden wall * fixed linter error * Update Resources/Prototypes/Entities/Structures/Walls/walls.yml Reasonable suggestion Co-authored-by: Thomas <87614336+Aeshus@users.noreply.github.com> * Update Resources/Prototypes/Entities/Structures/Walls/walls.yml spelling error Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com> * removed ability to build wall from 'junk' wood barrier' * fixed ability to pry overlay barricades and not allow them to extend to full wood walls * renamed incorrectly named entity * fixed default entity graph so as to not complain for unit tests * corrected my incorrect assumptions and fixed destroy cost --------- Co-authored-by: Thomas <87614336+Aeshus@users.noreply.github.com> Co-authored-by: slarticodefast <161409025+slarticodefast@users.noreply.github.com> --- .../Entities/Structures/Walls/walls.yml | 5 +- .../Entities/Structures/barricades.yml | 7 ++- .../Graphs/structures/barricades.yml | 46 +++++++++++++++++++ .../Construction/Graphs/structures/girder.yml | 23 ---------- .../Recipes/Construction/structures.yml | 4 +- 5 files changed, 56 insertions(+), 29 deletions(-) diff --git a/Resources/Prototypes/Entities/Structures/Walls/walls.yml b/Resources/Prototypes/Entities/Structures/Walls/walls.yml index 8cdd9e9e79..1e1bec0c18 100644 --- a/Resources/Prototypes/Entities/Structures/Walls/walls.yml +++ b/Resources/Prototypes/Entities/Structures/Walls/walls.yml @@ -1106,13 +1106,14 @@ parent: BaseWall id: WallWood name: wood wall + description: The traditional greytide defense. components: - type: Sprite sprite: Structures/Walls/wood.rsi - type: Icon sprite: Structures/Walls/wood.rsi - type: Construction - graph: Girder + graph: Barricade node: woodWall - type: Destructible thresholds: @@ -1133,7 +1134,7 @@ sound: collection: WoodDestroyHeavy - !type:ChangeConstructionNodeBehavior - node: girder + node: Barricade - !type:DoActsBehavior acts: ["Destruction"] - type: IconSmooth diff --git a/Resources/Prototypes/Entities/Structures/barricades.yml b/Resources/Prototypes/Entities/Structures/barricades.yml index 7f697519cd..cd6e644176 100644 --- a/Resources/Prototypes/Entities/Structures/barricades.yml +++ b/Resources/Prototypes/Entities/Structures/barricades.yml @@ -38,8 +38,8 @@ - !type:SpawnEntitiesBehavior spawn: MaterialWoodPlank1: - min: 3 - max: 3 + min: 1 + max: 1 - !type:DoActsBehavior acts: [ "Destruction" ] - type: AtmosExposed @@ -73,6 +73,9 @@ - type: Sprite sprite: Structures/barricades.rsi state: barricade + - type: Construction + graph: BarricadeCovering + node: barricadecover #Directional Barricade - type: entity diff --git a/Resources/Prototypes/Recipes/Construction/Graphs/structures/barricades.yml b/Resources/Prototypes/Recipes/Construction/Graphs/structures/barricades.yml index 11d84ebbb7..3149290125 100644 --- a/Resources/Prototypes/Recipes/Construction/Graphs/structures/barricades.yml +++ b/Resources/Prototypes/Recipes/Construction/Graphs/structures/barricades.yml @@ -26,6 +26,25 @@ steps: - tool: Prying doAfter: 5 + - to: woodWall + completed: + - !type:SnapToGrid + southRotation: true + steps: + - material: WoodPlank + amount: 2 + doAfter: 2 + - node: woodWall + entity: WallWood + edges: + - to: barricadefull + completed: + - !type:GivePrototype + prototype: MaterialWoodPlank1 + amount: 2 + steps: + - tool: Prying + doAfter: 10 - type: constructionGraph id: BarricadeDirectional @@ -53,3 +72,30 @@ steps: - tool: Prying doAfter: 5 + +- type: constructionGraph + id: BarricadeCovering + start: start + graph: + - node: start + edges: + - to: barricadecover + steps: + - material: WoodPlank + amount: 2 + doAfter: 3 + - node: barricadecover + entity: BarricadeBlock + edges: + - to: start + completed: + - !type:SpawnPrototype + prototype: MaterialWoodPlank1 + amount: 2 #returns 1 less as one breaks + - !type:DeleteEntity { } + conditions: + - !type:EntityAnchored + anchored: true + steps: + - tool: Prying + doAfter: 2 diff --git a/Resources/Prototypes/Recipes/Construction/Graphs/structures/girder.yml b/Resources/Prototypes/Recipes/Construction/Graphs/structures/girder.yml index dcff7d6f5e..99525b653b 100644 --- a/Resources/Prototypes/Recipes/Construction/Graphs/structures/girder.yml +++ b/Resources/Prototypes/Recipes/Construction/Graphs/structures/girder.yml @@ -51,17 +51,6 @@ amount: 2 doAfter: 1 - - to: woodWall - completed: - - !type:SnapToGrid - southRotation: true - conditions: - - !type:EntityAnchored {} - steps: - - material: WoodPlank - amount: 2 - doAfter: 2 - - to: uraniumWall completed: - !type:SnapToGrid @@ -173,18 +162,6 @@ - tool: Welding doAfter: 10 - - node: woodWall - entity: WallWood - edges: - - to: girder - completed: - - !type:GivePrototype - prototype: MaterialWoodPlank1 - amount: 2 - steps: - - tool: Prying - doAfter: 10 - - node: uraniumWall entity: WallUranium edges: diff --git a/Resources/Prototypes/Recipes/Construction/structures.yml b/Resources/Prototypes/Recipes/Construction/structures.yml index 7781a1be88..435524c854 100644 --- a/Resources/Prototypes/Recipes/Construction/structures.yml +++ b/Resources/Prototypes/Recipes/Construction/structures.yml @@ -105,11 +105,11 @@ canBuildInImpassable: false conditions: - !type:TileNotBlocked -# here + - type: construction name: wood wall id: WoodWall - graph: Girder + graph: Barricade startNode: start targetNode: woodWall category: construction-category-structures