- type: entity
  id: BigThruster
  name: big thruster
  parent: [ BaseThruster ]
  components:
  - type: Anchorable
    flags:
    - Anchorable
  - type: Sprite
    sprite: _Sunrise/Structures/Shuttles/big_thruster.rsi
    layers:
    - state: base
      map: ["enum.ThrusterVisualLayers.Base"]
      offset: 0.5,0.5
    - state: thrust
      map: ["enum.ThrusterVisualLayers.ThrustOn"]
      shader: unshaded
      visible: false
      offset: 0.5,0.5
    - state: thrust_burn_unshaded
      map: ["enum.ThrusterVisualLayers.ThrustingUnshaded"]
      shader: unshaded
      visible: false
      offset: 0.5, 2.5
  - type: Fixtures
    fixtures:
      fix1:
        shape:
          !type:PhysShapeAabb
          bounds: "-0.35,-0.35,1.30,1.30"
        density: 60
        mask:
        - MachineMask
        layer:
        - MachineLayer
  - type: Thruster
    thrust: 400
    requireSpace: false
    damage:
      types:
        Heat: 80
  - type: Machine
    board: ThrusterMachineCircuitboard
  - type: Destructible
    thresholds:
    - trigger:
        !type:DamageTrigger
        damage: 1500
      behaviors:
        - !type:DoActsBehavior
          acts: ["Destruction"]
    - trigger:
        !type:DamageTrigger
        damage: 1450
      behaviors:
        - !type:DoActsBehavior
          acts: ["Destruction"]
        - !type:PlaySoundBehavior
          sound:
            collection: MetalBreak
        - !type:ChangeConstructionNodeBehavior
          node: machineFrame

- type: entity
  id: BigRedThruster
  name: big red thruster
  parent: [ BigThruster ]
  components:
  - type: Sprite
    sprite: _Sunrise/Structures/Shuttles/big_thruster.rsi
    layers:
    - state: base
      map: ["enum.ThrusterVisualLayers.Base"]
      offset: 0.5,0.5
    - state: red_thrust
      map: ["enum.ThrusterVisualLayers.ThrustOn"]
      shader: unshaded
      visible: false
      offset: 0.5,0.5
    - state: red_thrust_burn_unshaded
      map: ["enum.ThrusterVisualLayers.ThrustingUnshaded"]
      shader: unshaded
      visible: false
      offset: 0.5, 2.5

- type: entity
  id: HugeThruster
  name: huge thruster
  parent: [ BaseThruster ]
  components:
  - type: Anchorable
    flags:
    - Anchorable
  - type: Sprite
    sprite: _Sunrise/Structures/Shuttles/huge_thruster.rsi
    layers:
    - state: base
      map: ["enum.ThrusterVisualLayers.Base"]
      offset: 1 ,0.8
    - state: thrust
      map: ["enum.ThrusterVisualLayers.ThrustOn"]
      shader: unshaded
      visible: false
      offset: 1,0.95
    - state: thrust_burn_unshaded
      map: ["enum.ThrusterVisualLayers.ThrustingUnshaded"]
      shader: unshaded
      visible: false
      offset: 1, 3.75
  - type: Fixtures
    fixtures:
      fix1:
        shape:
          !type:PhysShapeAabb
          bounds: "-0.20,-0.25,2.20,2.20"
        density: 60
        mask:
        - MachineMask
        layer:
        - MachineLayer
  - type: Thruster
    thrust: 800
    requireSpace: false
    damage:
      types:
        Heat: 160
  - type: Machine
    board: ThrusterMachineCircuitboard
  - type: Destructible
    thresholds:
    - trigger:
        !type:DamageTrigger
        damage: 4500
      behaviors:
        - !type:DoActsBehavior
          acts: ["Destruction"]
    - trigger:
        !type:DamageTrigger
        damage: 4450
      behaviors:
        - !type:DoActsBehavior
          acts: ["Destruction"]
        - !type:PlaySoundBehavior
          sound:
            collection: MetalBreak
        - !type:ChangeConstructionNodeBehavior
          node: machineFrame

- type: entity
  id: HugeRedThruster
  name: huge red thruster
  parent: HugeThruster
  components:
  - type: Sprite
    sprite: _Sunrise/Structures/Shuttles/huge_thruster.rsi
    layers:
    - state: base
      map: ["enum.ThrusterVisualLayers.Base"]
      offset: 1 ,0.8
    - state: red_thrust
      map: ["enum.ThrusterVisualLayers.ThrustOn"]
      shader: unshaded
      visible: false
      offset: 1, 0.95
    - state: red_thrust_burn_unshaded
      map: ["enum.ThrusterVisualLayers.ThrustingUnshaded"]
      shader: unshaded
      visible: false
      offset: 1, 3.75
