# SPDX-FileCopyrightText: 2021 ShadowCommander <10494922+ShadowCommander@users.noreply.github.com>
# SPDX-FileCopyrightText: 2021 metalgearsloth <comedian_vs_clown@hotmail.com>
# SPDX-FileCopyrightText: 2022 Peptide90 <78795277+Peptide90@users.noreply.github.com>
# SPDX-FileCopyrightText: 2023 Alekshhh <44923899+Alekshhh@users.noreply.github.com>
# SPDX-FileCopyrightText: 2023 Nemanja <98561806+EmoGarbage404@users.noreply.github.com>
# SPDX-FileCopyrightText: 2024 Ed <96445749+TheShuEd@users.noreply.github.com>
# SPDX-FileCopyrightText: 2024 Ko4ergaPunk <62609550+Ko4ergaPunk@users.noreply.github.com>
# SPDX-FileCopyrightText: 2024 MACMAN2003 <macman2003c@gmail.com>
# SPDX-FileCopyrightText: 2024 Nairod <110078045+Nairodian@users.noreply.github.com>
# SPDX-FileCopyrightText: 2024 Nim <128169402+Nimfar11@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Aiden <28298836+Aidenkrz@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Aineias1 <142914808+Aineias1@users.noreply.github.com>
#
# SPDX-License-Identifier: AGPL-3.0-or-later

- type: constructionGraph
  id: SofasGraph
  start: start
  graph:
    - node: start
      actions:
        - !type:DestroyEntity {}
      edges:
        - to: BenchSofaMiddleNode
          completed:
            - !type:SnapToGrid { }
          steps:
            - material: Steel
              amount: 2
              doAfter: 1
            - material: Cloth
              amount: 2
              doAfter: 1
        - to: BenchSofaLeftNode
          completed:
            - !type:SnapToGrid { }
          steps:
            - material: Steel
              amount: 2
              doAfter: 1
            - material: Cloth
              amount: 2
              doAfter: 1
        - to: BenchSofaRightNode
          completed:
            - !type:SnapToGrid { }
          steps:
            - material: Steel
              amount: 2
              doAfter: 1
            - material: Cloth
              amount: 2
              doAfter: 1
        - to: BenchSofaCornerNode
          completed:
            - !type:SnapToGrid { }
          steps:
            - material: Steel
              amount: 2
              doAfter: 1
            - material: Cloth
              amount: 2
              doAfter: 1
        - to: BenchSofaCorpMiddleNode
          completed:
            - !type:SnapToGrid { }
          steps:
            - material: Steel
              amount: 2
              doAfter: 1
            - material: Cloth
              amount: 2
              doAfter: 1
        - to: BenchSofaCorpLeftNode
          completed:
            - !type:SnapToGrid { }
          steps:
            - material: Steel
              amount: 2
              doAfter: 1
            - material: Cloth
              amount: 2
              doAfter: 1
        - to: BenchSofaCorpRightNode
          completed:
            - !type:SnapToGrid { }
          steps:
            - material: Steel
              amount: 2
              doAfter: 1
            - material: Cloth
              amount: 2
              doAfter: 1
        - to: BenchSofaCorpCornerNode
          completed:
            - !type:SnapToGrid { }
          steps:
            - material: Steel
              amount: 2
              doAfter: 1
            - material: Cloth
              amount: 2
              doAfter: 1
    - node: BenchSofaMiddleNode
      entity: BenchSofaMiddle
      edges:
        - to: start
          completed:
            - !type:SpawnPrototype
              prototype: SheetSteel1
              amount: 2
            - !type:SpawnPrototype
              prototype: MaterialCloth1
              amount: 2
          steps:
            - tool: Screwing
              doAfter: 1
    - node: BenchSofaLeftNode
      entity: BenchSofaLeft
      edges:
        - to: start
          completed:
            - !type:SpawnPrototype
              prototype: SheetSteel1
              amount: 2
            - !type:SpawnPrototype
              prototype: MaterialCloth1
              amount: 2
          steps:
            - tool: Screwing
              doAfter: 1
    - node: BenchSofaRightNode
      entity: BenchSofaRight
      edges:
        - to: start
          completed:
            - !type:SpawnPrototype
              prototype: SheetSteel1
              amount: 2
            - !type:SpawnPrototype
              prototype: MaterialCloth1
              amount: 2
          steps:
            - tool: Screwing
              doAfter: 1
    - node: BenchSofaCornerNode
      entity: BenchSofaCorner
      edges:
        - to: start
          completed:
            - !type:SpawnPrototype
              prototype: SheetSteel1
              amount: 2
            - !type:SpawnPrototype
              prototype: MaterialCloth1
              amount: 2
          steps:
            - tool: Screwing
              doAfter: 1
    - node: BenchSofaCorpMiddleNode
      entity: BenchSofaCorpMiddle
      edges:
        - to: start
          completed:
            - !type:SpawnPrototype
              prototype: SheetSteel1
              amount: 2
            - !type:SpawnPrototype
              prototype: MaterialCloth1
              amount: 2
          steps:
            - tool: Screwing
              doAfter: 1
    - node: BenchSofaCorpLeftNode
      entity: BenchSofaCorpLeft
      edges:
        - to: start
          completed:
            - !type:SpawnPrototype
              prototype: SheetSteel1
              amount: 2
            - !type:SpawnPrototype
              prototype: MaterialCloth1
              amount: 2
          steps:
            - tool: Screwing
              doAfter: 1
    - node: BenchSofaCorpRightNode
      entity: BenchSofaCorpRight
      edges:
        - to: start
          completed:
            - !type:SpawnPrototype
              prototype: SheetSteel1
              amount: 2
            - !type:SpawnPrototype
              prototype: MaterialCloth1
              amount: 2
          steps:
            - tool: Screwing
              doAfter: 1
    - node: BenchSofaCorpCornerNode
      entity: BenchSofaCorpCorner
      edges:
        - to: start
          completed:
            - !type:SpawnPrototype
              prototype: SheetSteel1
              amount: 2
            - !type:SpawnPrototype
              prototype: MaterialCloth1
              amount: 2
          steps:
            - tool: Screwing
              doAfter: 1