- type: entity
  id: RadiationCollector
  name: radiation collector
  description: A machine that collects Radiation and turns it into power.
  placement:
    mode: SnapgridCenter
  components:
  - type: Clickable
  - type: InteractionOutline
  - type: Physics
    bodyType: Static
    fixtures:
    - shape:
        !type:PhysShapeAabb
          bounds: "-0.5, -0.5, 0.5, 0.5"
      mass: 25
      layer:
      - Impassable
      - MobImpassable
      - VaultImpassable
      - Opaque
      mask:
      - Impassable
      - MobImpassable
      - VaultImpassable
  - type: SnapGrid
  - type: Sprite
    sprite: Constructible/Power/Singularity/collector.rsi
    layers:
      - state: ca_on
        map: ["enum.RadiationCollectorVisualLayers.Main"]
  - type: Appearance
    visuals:
      - type: RadiationCollectorVisualizer
  - type: NodeContainer
    examinable: true
    nodes:
      input:
        !type:AdjacentNode
        nodeGroupID: HVPower
  - type: RadiationCollector
    # Note that this doesn't matter too much (see next comment)
    # However it does act as a cap on power receivable via the collector.
  - type: Battery
    maxCharge: 100000
    startingCharge: 0
  - type: BatteryDischarger
    # This is JUST a default. It has to be dynamically adjusted to ensure that the battery doesn't discharge "too fast" & run out immediately, while still scaling by input power.
    activeSupplyRate: 100000
  - type: PowerSupplier
    supplyRate: 0
  - type: Anchorable
  - type: Rotatable
  - type: Pullable
