- type: entity
  id: UnfinishedMachineFrame
  name: machine frame
  suffix: Unfinished
  placement:
    mode: SnapgridCenter
  components:
    - type: Physics
      mass: 25
      anchored: true
      shapes:
        - !type:PhysShapeAabb
          bounds: "-0.5,-0.25,0.5,0.25"
          layer:
            - Impassable
            - MobImpassable
            - VaultImpassable
            - Opaque
          mask:
            - Impassable
            - MobImpassable
            - VaultImpassable
    - type: Clickable
    - type: InteractionOutline
    - type: Anchorable
    - type: Rotatable
    - type: Pullable
    - type: Construction
      graph: machine
      node: missingWires
    - type: BreakableConstruction
      node: start
    - type: Sprite
      sprite: "Constructible/Misc/stock_parts.rsi"
      state: "box_0"

- type: entity
  id: MachineFrame
  name: machine frame
  suffix: Ready
  placement:
    mode: SnapgridCenter
  components:
    - type: Physics
      mass: 25
      anchored: true
      shapes:
        - !type:PhysShapeAabb
          bounds: "-0.5,-0.25,0.5,0.25"
          layer:
            - Impassable
            - MobImpassable
            - VaultImpassable
            - Opaque
          mask:
            - Impassable
            - MobImpassable
            - VaultImpassable
    - type: Clickable
    - type: InteractionOutline
    - type: Anchorable
    - type: Rotatable
    - type: Pullable
    - type: Construction
      graph: machine
      node: machineFrame
    - type: BreakableConstruction
      node: missingWires
    - type: MachineFrame
    - type: Sprite
      netsync: false
      sprite: "Constructible/Misc/stock_parts.rsi"
      state: "box_1"
    - type: Appearance
      visuals:
      - type: MachineFrameVisualizer
