- type: constructionGraph
  id: CreateRoof
  start: start
  graph:
  - node: start
    edges:
    - to: roof
      completed:
      - !type:SnapToGrid
        southRotation: true
      steps:
      - material: MetalRod
        amount: 1

  - node: roof
    entity: RoofMarker
    edges:
    - to: start
      completed:
      - !type:SpawnPrototype
        prototype: PartRodMetal1
        amount: 1
      - !type:DeleteEntity {}
      steps:
      - tool: Cutting

- type: constructionGraph
  id: RemoveRoof
  start: start
  graph:
  - node: start
    edges:
    - to: roof
      completed:
      - !type:SnapToGrid
        southRotation: true
      steps:
      - material: MetalRod
        amount: 1

  - node: roof
    entity: NoRoofMarker
    edges:
    - to: start
      completed:
      - !type:SpawnPrototype
        prototype: PartRodMetal1
        amount: 1
      - !type:DeleteEntity {}
      steps:
      - tool: Cutting

- type: construction
  name: create roof
  id: CreateRoof
  graph: CreateRoof
  startNode: start
  targetNode: roof
  category: construction-category-storage
  description: Creates a roof on the tile its constructed on.
  icon: { sprite: Markers/cross.rsi, state: green }
  placementMode: SnapgridCenter
  canRotate: false
  canBuildInImpassable: false
  objectType: Structure

- type: construction
  name: remove roof
  id: RemoveRoof
  graph: RemoveRoof
  startNode: start
  targetNode: roof
  category: construction-category-storage
  description: Removes a roof from the tile its constructed on.
  icon: { sprite: Markers/cross.rsi, state: red }
  placementMode: SnapgridCenter
  canRotate: false
  canBuildInImpassable: false
  objectType: Structure
