- type: entity
  id: BaseStockPart
  name: stock part
  parent: BaseItem
  description: What?
  abstract: true
  components:
    - type: Sprite
      netsync: false
      sprite: Constructible/Misc/stock_parts.rsi
    - type: MachinePart
      rating: 1

# Rating 1

- type: entity
  id: CapacitorStockPart
  name: capacitor
  parent: BaseStockPart
  description: A basic capacitor used in the construction of a variety of devices.
  components:
    - type: Sprite
      state: capacitor
    - type: MachinePart
      part: Capacitor
      rating: 1

- type: entity
  id: ScanningModuleStockPart
  name: scanning module
  parent: BaseStockPart
  description: A compact, high resolution scanning module used in the construction of certain devices.
  components:
    - type: Sprite
      state: scan_module
    - type: MachinePart
      part: ScanningModule
      rating: 1

- type: entity
  id: MicroManipulatorStockPart
  name: micro-manipulator
  parent: BaseStockPart
  description: A tiny little manipulator used in the construction of certain devices.
  components:
    - type: Sprite
      state: micro_mani
    - type: MachinePart
      part: Manipulator
      rating: 1

- type: entity
  id: MicroLaserStockPart
  name: micro-laser
  parent: BaseStockPart
  description: A tiny laser used in certain devices.
  components:
    - type: Sprite
      state: micro_laser
    - type: MachinePart
      part: Laser
      rating: 1

- type: entity
  id: MatterBinStockPart
  name: matter bin
  parent: BaseStockPart
  description: A container designed to hold compressed matter awaiting reconstruction.
  components:
    - type: Sprite
      state: matter_bin
    - type: MachinePart
      part: MatterBin
      rating: 1

# Rating 2

- type: entity
  id: AdvancedCapacitorStockPart
  name: advanced capacitor
  parent: CapacitorStockPart
  description: An advanced capacitor used in the construction of a variety of devices.
  components:
    - type: Sprite
      state: adv_capacitor
    - type: MachinePart
      rating: 2

- type: entity
  id: AdvancedScanningModuleStockPart
  name: advanced scanning module
  parent: ScanningModuleStockPart
  description: A compact, high resolution scanning module used in the construction of certain devices.
  components:
    - type: Sprite
      state: adv_scan_module
    - type: MachinePart
      rating: 2

- type: entity
  id: NanoManipulatorStockPart
  name: nano-manipulator
  parent: MicroManipulatorStockPart
  description: A tiny little manipulator used in the construction of certain devices.
  components:
    - type: Sprite
      state: nano_mani
    - type: MachinePart
      rating: 2

- type: entity
  id: HighPowerMicroLaserStockPart
  name: high-power micro-laser
  parent: MicroLaserStockPart
  description: A tiny laser used in certain devices.
  components:
    - type: Sprite
      state: high_micro_laser
    - type: MachinePart
      rating: 2

- type: entity
  id: AdvancedMatterBinStockPart
  name: advanced matter bin
  parent: MatterBinStockPart
  description: A container designed to hold compressed matter awaiting reconstruction.
  components:
    - type: Sprite
      state: advanced_matter_bin
    - type: MachinePart
      rating: 2

# Rating 3

- type: entity
  id: SuperCapacitorStockPart
  name: super capacitor
  parent: CapacitorStockPart
  description: A super-high capacity capacitor used in the construction of a variety of devices.
  components:
    - type: Sprite
      state: super_capacitor
    - type: MachinePart
      rating: 3

- type: entity
  id: PhasicScanningModuleStockPart
  name: phasic scanning module
  parent: ScanningModuleStockPart
  description: A compact, high resolution phasic scanning module used in the construction of certain devices.
  components:
    - type: Sprite
      state: super_scan_module
    - type: MachinePart
      rating: 3

- type: entity
  id: PicoManipulatorStockPart
  name: pico-manipulator
  parent: MicroManipulatorStockPart
  description: A tiny little manipulator used in the construction of certain devices.
  components:
    - type: Sprite
      state: pico_mani
    - type: MachinePart
      rating: 3

- type: entity
  id: UltraHighPowerMicroLaserStockPart
  name: ultra-high-power micro-laser
  parent: MicroLaserStockPart
  description: A tiny laser used in certain devices.
  components:
    - type: Sprite
      state: ultra_high_micro_laser
    - type: MachinePart
      rating: 3

- type: entity
  id: SuperMatterBinStockPart
  name: super matter bin
  parent: MatterBinStockPart
  description: A container designed to hold compressed matter awaiting reconstruction.
  components:
    - type: Sprite
      state: super_matter_bin
    - type: MachinePart
      rating: 3

# Rating 4

- type: entity
  id: QuadraticCapacitorStockPart
  name: quadratic capacitor
  parent: CapacitorStockPart
  description: A quadratic capacity capacitor used in the construction of a variety of devices.
  components:
    - type: Sprite
      state: quadratic_capacitor
    - type: MachinePart
      rating: 4

- type: entity
  id: TriphasicScanningModuleStockPart
  name: triphasic scanning module
  parent: ScanningModuleStockPart
  description: A compact, ultra resolution triphasic scanning module used in the construction of certain devices.
  components:
    - type: Sprite
      state: triphasic_scan_module
    - type: MachinePart
      rating: 4

- type: entity
  id: FemtoManipulatorStockPart
  name: femto-manipulator
  parent: MicroManipulatorStockPart
  description: A tiny little manipulator used in the construction of certain devices.
  components:
    - type: Sprite
      state: femto_mani
    - type: MachinePart
      rating: 4

- type: entity
  id: QuadUltraMicroLaserStockPart
  name: quad-ultra micro-laser
  parent: MicroLaserStockPart
  description: A tiny laser used in certain devices.
  components:
    - type: Sprite
      state: quadultra_micro_laser
    - type: MachinePart
      rating: 4

- type: entity
  id: BluespaceMatterBinStockPart
  name: bluespace matter bin
  parent: MatterBinStockPart
  description: A container designed to hold compressed matter in bluespace awaiting reconstruction.
  components:
    - type: Sprite
      state: bluespace_matter_bin
    - type: MachinePart
      rating: 4

# Subspace stock parts

- type: entity
  id: AnsibleSubspaceStockPart
  name: subspace ansible
  parent: BaseStockPart
  description: A compact module capable of sensing extradimensional activity.
  components:
    - type: Sprite
      state: subspace_ansible
    - type: MachinePart
      part: Ansible

- type: entity
  id: FilterSubspaceStockPart
  name: hyperwave filter
  parent: BaseStockPart
  description: A tiny device capable of filtering and converting super-intense radiowaves.
  components:
    - type: Sprite
      state: hyperwave_filter
    - type: MachinePart
      part: Filter

- type: entity
  id: AmplifierSubspaceStockPart
  name: subspace amplifier
  parent: BaseStockPart
  description: A compact micro-machine capable of amplifying weak subspace transmissions.
  components:
    - type: Sprite
      state: subspace_amplifier
    - type: MachinePart
      part: Amplifier

- type: entity
  id: TreatmentSubspaceStockPart
  name: subspace treatment disk
  parent: BaseStockPart
  description: A compact micro-machine capable of stretching out hyper-compressed radio waves.
  components:
    - type: Sprite
      state: treatment_disk
    - type: MachinePart
      part: Treatment

- type: entity
  id: AnalyzerSubspaceStockPart
  name: subspace wavelength analyzer
  parent: BaseStockPart
  description: A sophisticated analyzer capable of analyzing cryptic subspace wavelengths.
  components:
    - type: Sprite
      state: wavelength_analyzer
    - type: MachinePart
      part: Analyzer

- type: entity
  id: CrystalSubspaceStockPart
  name: ansible crystal
  parent: BaseStockPart
  description: A crystal made from pure glass used to transmit laser databursts to subspace.
  components:
    - type: Sprite
      state: ansible_crystal
    - type: MachinePart
      part: Crystal

- type: entity
  id: TransmitterSubspaceStockPart
  name: subspace transmitter
  parent: BaseStockPart
  description: A large piece of equipment used to open a window into the subspace dimension.
  components:
    - type: Sprite
      state: subspace_transmitter
    - type: MachinePart
      part: Transmitter
