# SPDX-FileCopyrightText: 2020 Exp <theexp111@gmail.com>
# SPDX-FileCopyrightText: 2020 Pieter-Jan Briers <pieterjan.briers@gmail.com>
# SPDX-FileCopyrightText: 2020 Víctor Aguilera Puerto <6766154+Zumorica@users.noreply.github.com>
# SPDX-FileCopyrightText: 2020 Víctor Aguilera Puerto <zddm@outlook.es>
# SPDX-FileCopyrightText: 2021 Alex Evgrashin <aevgrashin@yandex.ru>
# SPDX-FileCopyrightText: 2021 Paul Ritter <ritter.paul1@googlemail.com>
# SPDX-FileCopyrightText: 2021 Swept <sweptwastaken@protonmail.com>
# SPDX-FileCopyrightText: 2022 0x6273 <0x40@keemail.me>
# SPDX-FileCopyrightText: 2022 20kdc <asdd2808@gmail.com>
# SPDX-FileCopyrightText: 2022 BubblegumBlue <63939723+BubblegumBlue@users.noreply.github.com>
# SPDX-FileCopyrightText: 2022 Flipp Syder <76629141+vulppine@users.noreply.github.com>
# SPDX-FileCopyrightText: 2022 Martin Petkovski <63034378+martin69420@users.noreply.github.com>
# SPDX-FileCopyrightText: 2022 Moony <moonheart08@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: 2022 Starm4ncer <63939723+Starm4ncer@users.noreply.github.com>
# SPDX-FileCopyrightText: 2022 Veritius <veritiusgaming@gmail.com>
# SPDX-FileCopyrightText: 2022 Visne <39844191+Visne@users.noreply.github.com>
# SPDX-FileCopyrightText: 2022 fishfish458 <fishfish458>
# SPDX-FileCopyrightText: 2022 metalgearsloth <comedian_vs_clown@hotmail.com>
# SPDX-FileCopyrightText: 2022 mirrorcult <lunarautomaton6@gmail.com>
# SPDX-FileCopyrightText: 2023 778b <33431126+778b@users.noreply.github.com>
# SPDX-FileCopyrightText: 2023 Colin-Tel <113523727+Colin-Tel@users.noreply.github.com>
# SPDX-FileCopyrightText: 2023 Ed <96445749+TheShuEd@users.noreply.github.com>
# SPDX-FileCopyrightText: 2023 Flareguy <78941145+Flareguy@users.noreply.github.com>
# SPDX-FileCopyrightText: 2023 MishaUnity <81403616+MishaUnity@users.noreply.github.com>
# SPDX-FileCopyrightText: 2023 Pieter-Jan Briers <pieterjan.briers+git@gmail.com>
# SPDX-FileCopyrightText: 2023 lzk <124214523+lzk228@users.noreply.github.com>
# SPDX-FileCopyrightText: 2024 Aidenkrz <aiden@djkraz.com>
# SPDX-FileCopyrightText: 2024 Alpaccalypse <llamageddon@llamageddon.net>
# SPDX-FileCopyrightText: 2024 Boaz1111 <149967078+Boaz1111@users.noreply.github.com>
# SPDX-FileCopyrightText: 2024 BombasterDS <115770678+BombasterDS@users.noreply.github.com>
# SPDX-FileCopyrightText: 2024 Debug <49997488+DebugOk@users.noreply.github.com>
# SPDX-FileCopyrightText: 2024 EmoGarbage404 <retron404@gmail.com>
# SPDX-FileCopyrightText: 2024 Ghagliiarghii <68826635+Ghagliiarghii@users.noreply.github.com>
# SPDX-FileCopyrightText: 2024 Julian Giebel <juliangiebel@live.de>
# SPDX-FileCopyrightText: 2024 Kara <lunarautomaton6@gmail.com>
# SPDX-FileCopyrightText: 2024 Kira Bridgeton <161087999+Verbalase@users.noreply.github.com>
# SPDX-FileCopyrightText: 2024 Nemanja <98561806+EmoGarbage404@users.noreply.github.com>
# SPDX-FileCopyrightText: 2024 Nim <128169402+Nimfar11@users.noreply.github.com>
# SPDX-FileCopyrightText: 2024 Piras314 <p1r4s@proton.me>
# SPDX-FileCopyrightText: 2024 Plykiya <58439124+Plykiya@users.noreply.github.com>
# SPDX-FileCopyrightText: 2024 PoTeletubby <ajcraigaz@gmail.com>
# SPDX-FileCopyrightText: 2024 chromiumboy <50505512+chromiumboy@users.noreply.github.com>
# SPDX-FileCopyrightText: 2024 deltanedas <39013340+deltanedas@users.noreply.github.com>
# SPDX-FileCopyrightText: 2024 deltanedas <@deltanedas:kde.org>
# SPDX-FileCopyrightText: 2024 metalgearsloth <31366439+metalgearsloth@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Aiden <28298836+Aidenkrz@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Alpaccalypse <21291379+Alpaccalypse@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Errant <35878406+Errant-4@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Fishbait <Fishbait@git.ml>
# SPDX-FileCopyrightText: 2025 GoobBot <uristmchands@proton.me>
# SPDX-FileCopyrightText: 2025 IrisTheAmped <iristheamped@gmail.com>
# SPDX-FileCopyrightText: 2025 Myra <vasilis@pikachu.systems>
# SPDX-FileCopyrightText: 2025 ScarKy0 <106310278+ScarKy0@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 ScarKy0 <scarky0@onet.eu>
# SPDX-FileCopyrightText: 2025 fishbait <gnesse@gmail.com>
# SPDX-FileCopyrightText: 2025 slarticodefast <161409025+slarticodefast@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 āda <ss.adasts@gmail.com>
#
# SPDX-License-Identifier: AGPL-3.0-or-later

- type: entity
  parent: BaseItem
  id: BaseComputerCircuitboard
  name: computer board
  abstract: true
  components:
    - type: ComputerBoard
    - type: Sprite
      sprite: Objects/Misc/module.rsi
      state: cpuboard
    - type: Item
      storedRotation: -90
    - type: Tag
      tags:
        - DroneUsable # Goobstation
    - type: StaticPrice
      price: 100
    - type: PhysicalComposition #Goobstation - Recycle update
      materialComposition:
        Steel: 25
        Glass: 125
      chemicalComposition:
        Silicon: 5

- type: entity
  parent: BaseComputerCircuitboard
  id: AlertsComputerCircuitboard
  name: atmospheric alerts computer board
  description: A computer printed circuit board for an atmospheric alerts computer.
  components:
    - type: Sprite
      state: cpu_engineering
    - type: ComputerBoard
      prototype: ComputerAlert

- type: entity
  parent: BaseComputerCircuitboard
  id: AtmosMonitoringComputerCircuitboard
  name: atmospheric network monitor board
  description: A computer printed circuit board for an atmospheric network monitor.
  components:
    - type: Sprite
      state: cpu_engineering
    - type: ComputerBoard
      prototype: ComputerAtmosMonitoring

- type: entity
  parent: BaseComputerCircuitboard
  id: PowerComputerCircuitboard
  name: power monitoring computer board
  description: A computer printed circuit board for a power monitoring computer.
  components:
    - type: Sprite
      state: cpu_engineering
    - type: ComputerBoard
      prototype: ComputerPowerMonitoring

- type: entity
  parent: BaseComputerCircuitboard
  id: MedicalRecordsComputerCircuitboard
  name: medical records computer board
  description: A computer printed circuit board for a medical records computer.
  components:
    - type: Sprite
      state: cpu_medical
    - type: ComputerBoard
      prototype: ComputerMedicalRecords

- type: entity
  parent: BaseComputerCircuitboard
  id: CriminalRecordsComputerCircuitboard
  name: criminal records computer board
  description: A computer printed circuit board for a criminal records computer.
  components:
    - type: Sprite
      state: cpu_security
    - type: ComputerBoard
      prototype: ComputerCriminalRecords

- type: entity
  parent: BaseComputerCircuitboard
  id: StationRecordsComputerCircuitboard
  name: station records computer board
  description: A computer printed circuit board for a station records computer.
  components:
    - type: Sprite
      state: cpu_command
    - type: ComputerBoard
      prototype: ComputerStationRecords

- type: entity
  parent: BaseComputerCircuitboard
  id: CargoRequestComputerCircuitboard
  name: cargo request computer board
  description: A computer printed circuit board for a cargo request computer.
  components:
    - type: Sprite
      state: cpu_supply
    - type: ComputerBoard
      prototype: ComputerCargoOrders
    - type: StaticPrice
      price: 750
    - type: Tag
      tags:
      - DroneUsable # Goobstation

- type: entity
  parent: BaseComputerCircuitboard
  id: CargoRequestEngineeringComputerCircuitboard
  name: engineering request computer board
  description: A computer printed circuit board for an engineering request computer.
  components:
  - type: Sprite
    state: cpu_engineering
  - type: ComputerBoard
    prototype: ComputerCargoOrdersEngineering
  - type: StaticPrice
    price: 750

- type: entity
  parent: BaseComputerCircuitboard
  id: CargoRequestMedicalComputerCircuitboard
  name: medical request computer board
  description: A computer printed circuit board for a medical request computer.
  components:
  - type: Sprite
    state: cpu_medical
  - type: ComputerBoard
    prototype: ComputerCargoOrdersMedical
  - type: StaticPrice
    price: 750

- type: entity
  parent: BaseComputerCircuitboard
  id: CargoRequestScienceComputerCircuitboard
  name: science request computer board
  description: A computer printed circuit board for a science request computer.
  components:
  - type: Sprite
    state: cpu_science
  - type: ComputerBoard
    prototype: ComputerCargoOrdersScience
  - type: StaticPrice
    price: 750

- type: entity
  parent: BaseComputerCircuitboard
  id: CargoRequestSecurityComputerCircuitboard
  name: security request computer board
  description: A computer printed circuit board for a security request computer.
  components:
  - type: Sprite
    state: cpu_security
  - type: ComputerBoard
    prototype: ComputerCargoOrdersSecurity
  - type: StaticPrice
    price: 750

- type: entity
  parent: BaseComputerCircuitboard
  id: CargoRequestServiceComputerCircuitboard
  name: service request computer board
  description: A computer printed circuit board for a service request computer.
  components:
  - type: Sprite
    state: cpu_service
  - type: ComputerBoard
    prototype: ComputerCargoOrdersService
  - type: StaticPrice
    price: 750

- type: entity
  parent: BaseComputerCircuitboard
  id: FundingAllocationComputerCircuitboard
  name: funding allocation computer board
  description: A computer printed circuit board for a funding allocation card console.
  components:
  - type: Sprite
    state: cpu_command
  - type: ComputerBoard
    prototype: ComputerFundingAllocation
  - type: StaticPrice
    price: 750

- type: entity
  parent: BaseComputerCircuitboard
  id: CargoSaleComputerCircuitboard
  name: cargo sale computer board
  description: A computer printed circuit board for a cargo sale computer.
  components:
    - type: Sprite
      state: cpu_supply
    - type: ComputerBoard
      prototype: ComputerPalletConsole

- type: entity
  id: CargoBountyComputerCircuitboard
  parent: BaseComputerCircuitboard
  name: cargo bounty computer board
  description: A computer printed circuit board for a cargo bounty computer.
  components:
  - type: Sprite
    state: cpu_supply
  - type: ComputerBoard
    prototype: ComputerCargoBounty
  - type: StaticPrice

- type: entity
  parent: BaseComputerCircuitboard
  id: SalvageJobBoardComputerCircuitboard
  name: salvage job board computer board
  description: A computer printed circuit board for a salvage job board computer.
  components:
  - type: Sprite
    state: cpu_supply
  - type: ComputerBoard
    prototype: ComputerSalvageJobBoard

- type: entity
  parent: BaseComputerCircuitboard
  id: SalvageExpeditionsComputerCircuitboard
  name: salvage expeditions computer board
  description: A computer printed circuit board for a salvage expeditions computer.
  components:
    - type: Sprite
      state: cpu_supply
    - type: ComputerBoard
      prototype: ComputerSalvageExpedition
#    - type: StealTarget                                   Goob edit - Removed cause Lavaland
#      stealGroup: SalvageExpeditionsComputerCircuitboard

- type: entity
  parent: BaseComputerCircuitboard
  id: CargoShuttleConsoleCircuitboard
  name: cargo shuttle console board
  description: A computer printed circuit board for a cargo shuttle console.
  components:
  - type: Sprite
    state: cpu_supply
  - type: ComputerBoard
    prototype: ComputerShuttleCargo
  - type: StealTarget
    stealGroup: CargoShuttleConsoleCircuitboard

- type: entity
  parent: BaseComputerCircuitboard
  id: SalvageShuttleConsoleCircuitboard
  name: salvage shuttle console board
  description: A computer printed circuit board for a salvage shuttle console.
  components:
    - type: ComputerBoard
      prototype: ComputerShuttleSalvage
    - type: StealTarget
      stealGroup: SalvageShuttleConsoleCircuitboard

- type: entity
  parent: BaseComputerCircuitboard
  id: SurveillanceCameraMonitorCircuitboard
  name: surveillance camera monitor board
  description: A computer printed circuit board for a surveillance camera monitor.
  components:
  - type: Sprite
    state: cpu_security
  - type: ComputerBoard
    prototype: ComputerSurveillanceCameraMonitor
  - type: Tag
    tags:
    - SurveillanceCameraMonitorCircuitboard
    - DroneUsable # Goobstation

- type: entity
  parent: BaseComputerCircuitboard
  id: SurveillanceWirelessCameraMonitorCircuitboard
  name: surveillance wireless camera monitor board
  description: A computer printed circuit board for a surveillance wireless camera monitor.
  components:
  - type: Sprite
    state: cpu_service
  - type: ComputerBoard
    prototype: ComputerSurveillanceWirelessCameraMonitor

- type: entity
  parent: BaseComputerCircuitboard
  id: ComputerTelevisionCircuitboard
  name: television board
  description: A computer printed circuit board for a television.
  components:
    - type: ComputerBoard
      prototype: ComputerTelevision
    - type: Tag
      tags:
        - ComputerTelevisionCircuitboard
        - DroneUsable # Goobstation

- type: entity
  parent: BaseComputerCircuitboard
  id: ResearchComputerCircuitboard
  name: R&D computer board
  description: A computer printed circuit board for a R&D console.
  components:
    - type: Sprite
      state: cpu_science
    - type: ComputerBoard
      prototype: ComputerResearchAndDevelopment

- type: entity
  parent: BaseComputerCircuitboard
  id: AnalysisComputerCircuitboard
  name: analysis computer board
  description: A computer printed circuit board for an analysis console.
  components:
    - type: Sprite
      state: cpu_science
    - type: ComputerBoard
      prototype: ComputerAnalysisConsole

- type: entity
  parent: BaseComputerCircuitboard
  id: TechDiskComputerCircuitboard
  name: tech disk terminal board
  description: A computer printed circuit board for a technology disk terminal.
  components:
  - type: Sprite
    state: cpu_science
  - type: ComputerBoard
    prototype: ComputerTechnologyDiskTerminal

- type: entity
  parent: BaseComputerCircuitboard
  id: CrewMonitoringComputerCircuitboard
  name: crew monitoring computer board
  description: A computer printed circuit board for a crew monitoring console.
  components:
  - type: Sprite
    state: cpu_medical
  - type: ComputerBoard
    prototype: ComputerCrewMonitoring

- type: entity
  parent: [BaseComputerCircuitboard, BaseCommandContraband]
  id: IDComputerCircuitboard
  name: ID card computer board
  description: A computer printed circuit board for an ID card console.
  components:
    - type: Sprite
      state: cpu_command
    - type: ComputerBoard
      prototype: ComputerId
    - type: StaticPrice
      price: 750
    - type: Tag
      tags:
      - HighRiskItem
      - DroneUsable # Goobstation

- type: entity
  parent: BaseComputerCircuitboard
  id: BodyScannerComputerCircuitboard
  name: body scanner computer board
  description: A computer printed circuit board for a body scanner console.
  components:
    - type: Sprite
      state: cpu_medical
    - type: ComputerBoard
      prototype: computerBodyScanner

- type: entity
  parent: [ BaseComputerCircuitboard, BaseCommandContraband ]
  id: CommsComputerCircuitboard
  name: communications computer board
  description: A computer printed circuit board for a communications console.
  components:
    - type: Sprite
      state: cpu_command
    - type: ComputerBoard
      prototype: ComputerComms

- type: entity
  parent: [ BaseComputerCircuitboard, BaseSyndicateContraband ]
  id: SyndicateCommsComputerCircuitboard
  name: syndicate communications computer board
  description: A computer printed circuit board for a syndicate communications console.
  components:
  - type: Sprite
    state: cpu_syndicate
  - type: ComputerBoard
    prototype: SyndicateComputerComms

- type: entity
  parent: [ BaseComputerCircuitboard, BaseCentcommContraband ]
  id: CentcommCommsComputerCircuitboard
  name: central command communications computer board
  description: A computer printed circuit board for a central command communications console.
  components:
  - type: Sprite
    state: cpu_centcomm
  - type: ComputerBoard
    prototype: CentcommComputerComms

- type: entity
  parent: BaseComputerCircuitboard
  id: RadarConsoleCircuitboard
  name: radar console computer board
  components:
  - type: Sprite
    state: cpu_supply
  - type: ComputerBoard
    prototype: ComputerRadar

- type: entity
  parent: BaseComputerCircuitboard
  id: SolarControlComputerCircuitboard
  name: solar control computer board
  description: A computer printed circuit board for a solar control console.
  components:
    - type: Sprite
      state: cpu_engineering
    - type: ComputerBoard
      prototype: ComputerSolarControl

- type: entity
  parent: BaseComputerCircuitboard
  id: SpaceVillainArcadeComputerCircuitboard
  name: space villain arcade board
  description: A computer printed circuit board for a space villain arcade cabinet.
  components:
    - type: ComputerBoard
      prototype: SpaceVillainArcade

- type: entity
  parent: BaseComputerCircuitboard
  id: BlockGameArcadeComputerCircuitboard
  name: block game arcade board
  description: A computer printed circuit board for a block game arcade cabinet.
  components:
    - type: ComputerBoard
      prototype: BlockGameArcade

- type: entity
  parent: BaseComputerCircuitboard
  id: ParticleAcceleratorComputerCircuitboard
  name: PA control box computer board
  description: A computer printed circuit board for a particle accelerator control box.
  components:
    - type: Sprite
      state: cpu_engineering
    - type: ComputerBoard
      prototype: ParticleAcceleratorControlBoxUnfinished

- type: entity
  parent: BaseComputerCircuitboard
  id: ShuttleConsoleCircuitboard
  name: shuttle console board
  description: A computer printed circuit board for a shuttle console.
  components:
  - type: Sprite
    state: cpu_supply
  - type: ComputerBoard
    prototype: ComputerShuttle

- type: entity
  parent: [ BaseComputerCircuitboard, BaseSyndicateContraband ]
  id: SyndicateShuttleConsoleCircuitboard
  name: syndicate shuttle console board
  description: A computer printed circuit board for a syndicate shuttle console.
  components:
  - type: Sprite
    state: cpu_syndicate
  - type: ComputerBoard
    prototype: ComputerShuttleSyndie

- type: entity
  parent: BaseComputerCircuitboard
  id: CloningConsoleComputerCircuitboard
  name: cloning console computer board
  description: A computer printed circuit board for a cloning console.
  components:
    - type: Sprite
      state: cpu_medical
    - type: ComputerBoard
      prototype: ComputerCloningConsole

- type: entity
  parent: BaseComputerCircuitboard
  id: ComputerIFFCircuitboard
  name: IFF console board
  description: Allows you to control the IFF characteristics of this vessel.
  components:
    - type: Sprite
      state: cpu_command
    - type: ComputerBoard
      prototype: ComputerIFF

- type: entity
  parent: [ BaseComputerCircuitboard, BaseSyndicateContraband ]
  id: ComputerIFFSyndicateCircuitboard
  name: syndicate IFF console board
  description: Allows you to control the IFF and stealth characteristics of this vessel.
  components:
  - type: Sprite
    state: cpu_syndicate
  - type: ComputerBoard
    prototype: ComputerIFFSyndicate

- type: entity
  parent: BaseComputerCircuitboard
  id: ComputerMassMediaCircuitboard
  name: news manager console board
  description: Write your message to the world!
  components:
    - type: Sprite
      state: cpu_service
    - type: StaticPrice
      price: 150
    - type: ComputerBoard
      prototype: ComputerMassMedia

- type: entity
  parent: BaseComputerCircuitboard
  id: SensorConsoleCircuitboard
  name: sensor monitoring console board
  description: A computer printed circuit board for a sensor monitoring console.
  components:
    - type: Sprite
      state: cpu_engineering
    - type: ComputerBoard
      prototype: ComputerSensorMonitoring

- type: entity
  parent: BaseComputerCircuitboard
  id: RoboticsConsoleCircuitboard
  name: robotics control console board
  description: A computer printed circuit board for a robotics control console.
  components:
    - type: Sprite
      state: cpu_science
    - type: ComputerBoard
      prototype: ComputerRoboticsControl

- type: entity
  parent: BaseComputerCircuitboard
  id: StationAiUploadCircuitboard
  name: AI upload console board
  description: A computer printed circuit board for a AI upload console.
  components:
    - type: Sprite
      state: cpu_science
    - type: ComputerBoard
      prototype: StationAiUploadComputer
