# SPDX-FileCopyrightText: 2024 Aidenkrz <aiden@djkraz.com>
# SPDX-FileCopyrightText: 2024 Debug <49997488+DebugOk@users.noreply.github.com>
# SPDX-FileCopyrightText: 2024 Emisse <99158783+Emisse@users.noreply.github.com>
# SPDX-FileCopyrightText: 2024 Eoin Mcloughlin <helloworld@eoinrul.es>
# SPDX-FileCopyrightText: 2024 IProduceWidgets <107586145+IProduceWidgets@users.noreply.github.com>
# SPDX-FileCopyrightText: 2024 Leon Friedrich <60421075+ElectroJr@users.noreply.github.com>
# SPDX-FileCopyrightText: 2024 Moomoobeef <62638182+Moomoobeef@users.noreply.github.com>
# SPDX-FileCopyrightText: 2024 Nairod <110078045+Nairodian@users.noreply.github.com>
# SPDX-FileCopyrightText: 2024 Nemanja <98561806+EmoGarbage404@users.noreply.github.com>
# SPDX-FileCopyrightText: 2024 Piras314 <p1r4s@proton.me>
# SPDX-FileCopyrightText: 2024 Plykiya <58439124+Plykiya@users.noreply.github.com>
# SPDX-FileCopyrightText: 2024 Southbridge <7013162+southbridge-fur@users.noreply.github.com>
# SPDX-FileCopyrightText: 2024 Spanky <scott@wearejacob.com>
# SPDX-FileCopyrightText: 2024 SpeltIncorrectyl <66873282+SpeltIncorrectyl@users.noreply.github.com>
# SPDX-FileCopyrightText: 2024 Spessmann <156740760+Spessmann@users.noreply.github.com>
# SPDX-FileCopyrightText: 2024 Ubaser <134914314+UbaserB@users.noreply.github.com>
# SPDX-FileCopyrightText: 2024 eoineoineoin <github@eoinrul.es>
# SPDX-FileCopyrightText: 2024 icekot8 <93311212+icekot8@users.noreply.github.com>
# SPDX-FileCopyrightText: 2024 lzk <124214523+lzk228@users.noreply.github.com>
# SPDX-FileCopyrightText: 2024 pigeonpeas <147350443+pigeonpeas@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Aiden <28298836+Aidenkrz@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 ArtisticRoomba <145879011+ArtisticRoomba@users.noreply.github.com>
# SPDX-FileCopyrightText: 2025 Fishbait <Fishbait@git.ml>
# SPDX-FileCopyrightText: 2025 ScarKy0 <scarky0@onet.eu>
# SPDX-FileCopyrightText: 2025 fishbait <gnesse@gmail.com>
#
# SPDX-License-Identifier: AGPL-3.0-or-later

- type: entity
  parent: BaseItem
  id: BaseFlatpack
  name: base flatpack
  description: A flatpack used for constructing something.
  categories:
  - HideSpawnMenu
  components:
  - type: Item
    size: Large
  - type: Sprite
    sprite: Objects/Devices/flatpack.rsi
    layers:
    - state: base
    - state: overlay
      color: "#cec8ac"
      map: ["enum.FlatpackVisualLayers.Overlay"]
    - state: icon-default
  - type: Appearance
  - type: Flatpack
    boardColors:
      command: "#334E6D"
      medical: "#52B4E9"
      service: "#9FED58"
      engineering: "#EFB341"
      security: "#DE3A3A"
      science: "#D381C9"
      supply: "#A46106"
      cpu_command: "#334E6D"
      cpu_medical: "#52B4E9"
      cpu_service: "#9FED58"
      cpu_engineering: "#EFB341"
      cpu_security: "#DE3A3A"
      cpu_science: "#D381C9"
      cpu_supply: "#A46106"
  - type: StaticPrice
    price: 250
  - type: Tag
    tags:
    - DroneUsable # Goobstation

- type: entity
  parent: BaseFlatpack
  id: SolarAssemblyFlatpack
  name: solar assembly flatpack
  description: A flatpack used for constructing a solar assembly.
  components:
  - type: Flatpack
    entity: SolarAssembly
  - type: Sprite
    layers:
    - state: solar-assembly-part
  - type: StaticPrice
    price: 75
  - type: Tag # Goobstation - stupid chuds didnt add the tag
    tags:
    - DroneUsable
    - SolarAssemblyFlatpack

- type: entity
  parent: BaseFlatpack
  id: AmePartFlatpack
  name: AME flatpack
  description: A flatpack used for constructing an antimatter engine reactor.
  components:
  - type: Sprite
    layers:
    - state: ame-part
  - type: Flatpack
    entity: AmeShielding
  - type: StaticPrice
    price: 500
  - type: GuideHelp
    guides:
    - AME
    - Power
  - type: StealTarget
    stealGroup: AmePartFlatpack

- type: entity
  parent: BaseFlatpack
  id: SingularityGeneratorFlatpack
  name: singularity generator flatpack
  description: A flatpack used for constructing a singularity generator.
  components:
  - type: Flatpack
    entity: SingularityGenerator
  - type: Sprite
    layers:
    - state: singularity-generator
  - type: GuideHelp
    guides:
    - SingularityEngine
    - Power

- type: entity
  parent: BaseFlatpack
  id: RadiationCollectorFlatpack
  name: radiation collector flatpack
  description: A flatpack used for constructing a radiation collector.
  components:
  - type: Flatpack
    entity: RadiationCollectorNoTank
  - type: Sprite
    layers:
    - state: radiation-collector
  - type: GuideHelp
    guides:
    - SingularityEngine
    - Power

- type: entity
  parent: BaseFlatpack
  id: ContainmentFieldGeneratorFlatpack
  name: containment field generator flatpack
  description: A flatpack used for constructing a containment field generator.
  components:
  - type: Flatpack
    entity: ContainmentFieldGenerator
  - type: Sprite
    layers:
    - state: containment-field-generator
  - type: GuideHelp
    guides:
    - SingularityEngine
    - Power

- type: entity
  parent: BaseFlatpack
  id: EmitterFlatpack
  name: emitter flatpack
  description: A flatpack used for constructing an emitter.
  components:
  - type: Flatpack
    entity: Emitter
  - type: Sprite
    layers:
    - state: emitter
  - type: GuideHelp
    guides:
    - SingularityEngine
    - Power

- type: entity
  parent: BaseFlatpack
  id: TeslaGeneratorFlatpack
  name: tesla generator flatpack
  description: A flatpack used for constructing a tesla generator.
  components:
  - type: Flatpack
    entity: TeslaGenerator
  - type: Sprite
    layers:
    - state: tesla-generator
  - type: GuideHelp
    guides:
    - TeslaEngine
    - Power

- type: entity
  parent: BaseFlatpack
  id: TeslaCoilFlatpack
  name: tesla coil flatpack
  description: A flatpack used for constructing a tesla coil.
  components:
  - type: Flatpack
    entity: TeslaCoil
  - type: Sprite
    layers:
    - state: tesla-coil
  - type: GuideHelp
    guides:
    - TeslaEngine
    - Power

- type: entity
  parent: BaseFlatpack
  id: TeslaGroundingRodFlatpack
  name: grounding rod flatpack
  description: A flatpack used for constructing a grounding rod.
  components:
  - type: Flatpack
    entity: TeslaGroundingRod
  - type: Sprite
    layers:
    - state: grounding-rod
  - type: GuideHelp
    guides:
    - TeslaEngine
    - Power

- type: entity
  parent: BaseFlatpack
  id: GyroscopeFlatpack
  name: gyroscope flatpack
  description: A flatpack used for constructing a gyroscope.
  components:
  - type: Flatpack
    entity: Gyroscope
  - type: Sprite
    layers:
    - state: base
    - state: overlay
      color: "#cec8ac"
    - state: icon-default

- type: entity
  parent: BaseFlatpack
  id: ThrusterFlatpack
  name: thruster flatpack
  description: A flatpack used for constructing a thruster.
  components:
  - type: Flatpack
    entity: Thruster
  - type: Sprite
    layers:
    - state: base
    - state: overlay
      color: "#cec8ac"
    - state: icon-default

- type: entity
  parent: BaseFlatpack
  id: SpaceHeaterFlatpack
  name: space heater flatpack
  description: A flatpack used for constructing a space heater.
  components:
  - type: Flatpack
    entity: SpaceHeaterAnchored

- type: entity
  parent: BaseFlatpack
  id: FaxMachineFlatpack
  name: fax machine flatpack
  description: A flatpack used for constructing a fax machine.
  components:
  - type: Sprite
    layers:
    - state: fax-machine
  - type: Flatpack
    entity: FaxMachineBase

- type: entity
  parent: BaseFlatpack
  id: CrewMonitoringServerFlatpack
  name: crew monitoring server flatpack
  description: A flatpack used for constructing a crew monitoring server.
  components:
  - type: Flatpack
    entity: CrewMonitoringServer

- type: entity
  parent: BaseFlatpack
  id: CrewMonitoringComputerFlatpack
  name: crew monitoring computer flatpack
  description: A flatpack used for constructing a crew monitoring console.
  components:
  - type: Flatpack
    entity: ComputerCrewMonitoring

- type: entity
  parent: BaseFlatpack
  id: HydroponicsTrayFlatpack
  name: hydroponics tray flatpack
  description: A flatpack used for constructing a hydroponics tray.
  components:
  - type: Flatpack
    entity: hydroponicsTray
  - type: Sprite
    layers:
    - state: hydroponics-tray
  - type: GuideHelp
    guides:
    - Botany
    - Chemicals
