# 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: BenchesGraph
  start: start
  graph:
    - node: start
      actions:
        - !type:DestroyEntity {}
      edges:
# Steel bench
        - to: BenchSteelMiddleNode
          completed:
            - !type:SnapToGrid { }
          steps:
            - material: Steel
              amount: 3
              doAfter: 1
        - to: BenchSteelRightNode
          completed:
            - !type:SnapToGrid { }
          steps:
            - material: Steel
              amount: 3
              doAfter: 1
        - to: BenchSteelLeftNode
          completed:
            - !type:SnapToGrid { }
          steps:
            - material: Steel
              amount: 3
              doAfter: 1
# Pew
        - to: BenchPewMiddleNode
          completed:
            - !type:SnapToGrid { }
          steps:
            - material: WoodPlank
              amount: 3
              doAfter: 1
        - to: BenchPewRightNode
          completed:
            - !type:SnapToGrid { }
          steps:
            - material: WoodPlank
              amount: 3
              doAfter: 1
        - to: BenchPewLeftNode
          completed:
            - !type:SnapToGrid { }
          steps:
            - material: WoodPlank
              amount: 3
              doAfter: 1
# Park Bench
        - to: BenchParkMiddleNode
          completed:
            - !type:SnapToGrid { }
          steps:
            - material: Steel
              amount: 1
              doAfter: 1
            - material: WoodPlank
              amount: 2
              doAfter: 1
        - to: BenchParkRightNode
          completed:
            - !type:SnapToGrid { }
          steps:
            - material: Steel
              amount: 1
              doAfter: 1
            - material: WoodPlank
              amount: 2
              doAfter: 1
        - to: BenchParkLeftNode
          completed:
            - !type:SnapToGrid { }
          steps:
            - material: Steel
              amount: 1
              doAfter: 1
            - material: WoodPlank
              amount: 2
              doAfter: 1
# Bamboo Park Bench
        - to: BenchParkBambooMiddleNode
          completed:
            - !type:SnapToGrid { }
          steps:
            - material: WoodPlank
              amount: 3
              doAfter: 1
        - to: BenchParkBambooRightNode
          completed:
            - !type:SnapToGrid { }
          steps:
            - material: WoodPlank
              amount: 3
              doAfter: 1
        - to: BenchParkBambooLeftNode
          completed:
            - !type:SnapToGrid { }
          steps:
            - material: WoodPlank
              amount: 3
              doAfter: 1
# White steel bench
        - to: BenchSteelWhiteMiddleNode
          completed:
            - !type:SnapToGrid { }
          steps:
            - material: Steel
              amount: 3
              doAfter: 1
        - to: BenchSteelWhiteRightNode
          completed:
            - !type:SnapToGrid { }
          steps:
            - material: Steel
              amount: 3
              doAfter: 1
        - to: BenchSteelWhiteLeftNode
          completed:
            - !type:SnapToGrid { }
          steps:
            - material: Steel
              amount: 3
              doAfter: 1
# Nodes
# Steel bench
    - node: BenchSteelMiddleNode
      entity: BenchSteelMiddle
      edges:
        - to: start
          completed:
            - !type:SpawnPrototype
              prototype: SheetSteel1
              amount: 3
          steps:
            - tool: Screwing
              doAfter: 1
    - node: BenchSteelRightNode
      entity: BenchSteelRight
      edges:
        - to: start
          completed:
            - !type:SpawnPrototype
              prototype: SheetSteel1
              amount: 3
          steps:
            - tool: Screwing
              doAfter: 1
    - node: BenchSteelLeftNode
      entity: BenchSteelLeft
      edges:
        - to: start
          completed:
            - !type:SpawnPrototype
              prototype: SheetSteel1
              amount: 3
          steps:
            - tool: Screwing
              doAfter: 1
# Pew
    - node: BenchPewMiddleNode
      entity: BenchPewMiddle
      edges:
        - to: start
          completed:
            - !type:SpawnPrototype
              prototype: MaterialWoodPlank1
              amount: 3
          steps:
            - tool: Screwing
              doAfter: 1
    - node: BenchPewRightNode
      entity: BenchPewRight
      edges:
        - to: start
          completed:
            - !type:SpawnPrototype
              prototype: MaterialWoodPlank1
              amount: 3
          steps:
            - tool: Screwing
              doAfter: 1
    - node: BenchPewLeftNode
      entity: BenchPewLeft
      edges:
        - to: start
          completed:
            - !type:SpawnPrototype
              prototype: MaterialWoodPlank1
              amount: 3
          steps:
            - tool: Screwing
              doAfter: 1
# Park Bench
    - node: BenchParkMiddleNode
      entity: BenchParkMiddle
      edges:
        - to: start
          completed:
            - !type:SpawnPrototype
              prototype: SheetSteel1
              amount: 1
            - !type:SpawnPrototype
              prototype: MaterialWoodPlank1
              amount: 2
          steps:
            - tool: Screwing
              doAfter: 1
    - node: BenchParkRightNode
      entity: BenchParkRight
      edges:
        - to: start
          completed:
            - !type:SpawnPrototype
              prototype: SheetSteel1
              amount: 1
            - !type:SpawnPrototype
              prototype: MaterialWoodPlank1
              amount: 2
          steps:
            - tool: Screwing
              doAfter: 1
    - node: BenchParkLeftNode
      entity: BenchParkLeft
      edges:
        - to: start
          completed:
            - !type:SpawnPrototype
              prototype: SheetSteel1
              amount: 1
            - !type:SpawnPrototype
              prototype: MaterialWoodPlank1
              amount: 2
          steps:
            - tool: Screwing
              doAfter: 1
# Bamboo park bench
    - node: BenchParkBambooMiddleNode
      entity: BenchParkBambooMiddle
      edges:
        - to: start
          completed:
            - !type:SpawnPrototype
              prototype: MaterialWoodPlank1
              amount: 3
          steps:
            - tool: Screwing
              doAfter: 1
    - node: BenchParkBambooLeftNode
      entity: BenchParkBambooLeft
      edges:
        - to: start
          completed:
            - !type:SpawnPrototype
              prototype: MaterialWoodPlank1
              amount: 3
          steps:
            - tool: Screwing
              doAfter: 1
    - node: BenchParkBambooRightNode
      entity: BenchParkBambooRight
      edges:
        - to: start
          completed:
            - !type:SpawnPrototype
              prototype: MaterialWoodPlank1
              amount: 3
          steps:
            - tool: Screwing
              doAfter: 1
# White bench
    - node: BenchSteelWhiteMiddleNode
      entity: BenchSteelWhiteMiddle
      edges:
        - to: start
          completed:
            - !type:SpawnPrototype
              prototype: SheetSteel1
              amount: 3
          steps:
            - tool: Screwing
              doAfter: 1
    - node: BenchSteelWhiteRightNode
      entity: BenchSteelWhiteRight
      edges:
        - to: start
          completed:
            - !type:SpawnPrototype
              prototype: SheetSteel1
              amount: 3
          steps:
            - tool: Screwing
              doAfter: 1
    - node: BenchSteelWhiteLeftNode
      entity: BenchSteelWhiteLeft
      edges:
        - to: start
          completed:
            - !type:SpawnPrototype
              prototype: SheetSteel1
              amount: 3
          steps:
            - tool: Screwing
              doAfter: 1