# SPDX-FileCopyrightText: 2021 20kdc <asdd2808@gmail.com>
# SPDX-FileCopyrightText: 2021 Julian Giebel <j.giebel@netrocks.info>
# SPDX-FileCopyrightText: 2021 Julian Giebel <juliangiebel@live.de>
# SPDX-FileCopyrightText: 2021 Metal Gear Sloth <metalgearsloth@gmail.com>
# SPDX-FileCopyrightText: 2021 Pieter-Jan Briers <pieterjan.briers+git@gmail.com>
# SPDX-FileCopyrightText: 2021 Swept <sweptwastaken@protonmail.com>
# SPDX-FileCopyrightText: 2021 Vera Aguilera Puerto <zddm@outlook.es>
# SPDX-FileCopyrightText: 2022 Nemanja <98561806+EmoGarbage404@users.noreply.github.com>
# SPDX-FileCopyrightText: 2022 Peptide90 <78795277+Peptide90@users.noreply.github.com>
# SPDX-FileCopyrightText: 2022 Rane <60792108+Elijahrane@users.noreply.github.com>
# SPDX-FileCopyrightText: 2023 AJCM-git <60196617+AJCM-git@users.noreply.github.com>
# SPDX-FileCopyrightText: 2023 DrSmugleaf <DrSmugleaf@users.noreply.github.com>
# SPDX-FileCopyrightText: 2023 Leon Friedrich <60421075+ElectroJr@users.noreply.github.com>
# SPDX-FileCopyrightText: 2023 Morb <14136326+Morb0@users.noreply.github.com>
# SPDX-FileCopyrightText: 2023 Naive817 <31364560+Naive817@users.noreply.github.com>
# SPDX-FileCopyrightText: 2023 TemporalOroboros <TemporalOroboros@gmail.com>
# SPDX-FileCopyrightText: 2024 chavonadelal <156101927+chavonadelal@users.noreply.github.com>
# SPDX-FileCopyrightText: 2024 metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Aiden <28298836+Aidenkrz@users.noreply.github.com>
#
# SPDX-License-Identifier: AGPL-3.0-or-later

- type: entity
  parent: ParticleAcceleratorFinishedPart
  id: ParticleAcceleratorControlBox
  name: PA control computer
  description: This controls the density of the particles.
  components:
  - type: Sprite
    sprite: Structures/Power/Generation/PA/control_box.rsi
  - type: ParticleAcceleratorControlBox
  - type: ApcPowerReceiver
    powerLoad: 250
  - type: ExtensionCableReceiver
  - type: Construction
    graph: ParticleAcceleratorControlBox
  - type: ActivatableUI
    key: enum.ParticleAcceleratorControlBoxUiKey.Key
  - type: ActivatableUIRequiresPower
  - type: UserInterface
    interfaces:
      enum.ParticleAcceleratorControlBoxUiKey.Key:
        type: ParticleAcceleratorBoundUserInterface
      enum.WiresUiKey.Key:
        type: WiresBoundUserInterface
  - type: WiresPanel
  - type: Wires
    boardName: wires-board-name-pa
    layoutId: ParticleAccelerator
  - type: AccessReader
    access: [["Engineering"]]
  - type: MultipartMachine
    parts:
      enum.AcceleratorParts.EndCap:
        component: ParticleAcceleratorEndCap
        offset: 1, -1
        rotation: -90
        ghostProto: ParticleAcceleratorEndCap
        graph: ParticleAcceleratorEndCap
        expectedNode: completed
      enum.AcceleratorParts.FuelChamber:
        component: ParticleAcceleratorFuelChamber
        offset: 0, -1
        rotation: -90
        ghostProto: ParticleAcceleratorFuelChamber
        graph: ParticleAcceleratorFuelChamber
        expectedNode: completed
      enum.AcceleratorParts.PowerBox:
        component: ParticleAcceleratorPowerBox
        offset: -1, -1
        rotation: -90
        ghostProto: ParticleAcceleratorPowerBox
        graph: ParticleAcceleratorPowerBox
        expectedNode: completed
      enum.AcceleratorParts.PortEmitter:
        component: ParticleAcceleratorEmitter
        offset: -2, -2
        rotation: -90
        ghostProto: ParticleAcceleratorEmitterPort
        graph: ParticleAcceleratorEmitterPort
        expectedNode: completed
      enum.AcceleratorParts.ForeEmitter:
        component: ParticleAcceleratorEmitter
        offset: -2, -1
        rotation: -90
        ghostProto: ParticleAcceleratorEmitterFore
        graph: ParticleAcceleratorEmitterFore
        expectedNode: completed
      enum.AcceleratorParts.StarboardEmitter:
        component: ParticleAcceleratorEmitter
        offset: -2, 0
        rotation: -90
        ghostProto: ParticleAcceleratorEmitterStarboard
        graph: ParticleAcceleratorEmitterStarboard
        expectedNode: completed

# Unfinished

- type: entity
  parent: ParticleAcceleratorUnfinishedBase
  id: ParticleAcceleratorControlBoxUnfinished
  name: PA control computer
  suffix: Unfinished
  description: This controls the density of the particles. It looks unfinished.
  components:
    - type: Sprite
      sprite: Structures/Power/Generation/PA/control_box.rsi
    - type: Construction
      graph: ParticleAcceleratorControlBox