- type: entity
  id: JetpackEffect
  categories: [ HideSpawnMenu ]
  components:
  - type: TimedDespawn
    lifetime: 2
  - type: Sprite
    drawdepth: SmallMobs
    noRot: true
    layers:
    - shader: unshaded
      map: ["enum.EffectLayers.Unshaded"]
      sprite: Effects/atmospherics.rsi
      state: frezon_old
  - type: EffectVisuals
  - type: Tag
    tags:
      - HideContextMenu
  - type: AnimationPlayer

- type: entity
  parent: GasTankBase
  abstract: true
  id: BaseJetpack
  name: jetpack
  description: It's a jetpack. It can hold 5 L of gas.
  components:
  - type: Sprite
    sprite: _DV/Objects/Tanks/Jetpacks/blue.rsi # DeltaV - Modified sprites to allow SUITSTORAGE use.
    layers:
    - state: icon
      map: ["enum.JetpackVisuals.Layer"]
  - type: Item
    sprite: _DV/Objects/Tanks/Jetpacks/blue.rsi # DeltaV - Modified sprites to allow SUITSTORAGE use.
    size: Huge
  - type: UserInterface
    interfaces:
      enum.SharedGasTankUiKey.Key:
        type: GasTankBoundUserInterface
  - type: UseDelay
    delays:
      gasTank:
        length: 1.0
  - type: Clothing
    sprite: _DV/Objects/Tanks/Jetpacks/blue.rsi # DeltaV - Modified sprites to allow SUITSTORAGE use.
    quickEquip: false
    slots:
    - Back
    - SuitStorage # DeltaV - Allow all jetpacks to fit in the suit storage slot
  - type: GasTank
    outputPressure: 21.3
    air:
      volume: 5
      temperature: 293.15
  - type: Jetpack
    moleUsage: 0.00085
  - type: Appearance
  - type: GenericVisualizer
    visuals:
      enum.JetpackVisuals.Enabled:
        enum.JetpackVisuals.Layer:
          True: {state: icon-on}
          False: {state: icon}
  - type: StaticPrice
    price: 100

- type: entity
  parent: BaseAction
  id: ActionToggleJetpack
  name: Toggle jetpack
  description: Toggles the jetpack, giving you movement outside the station.
  components:
  - type: Action
    icon:
      sprite: Objects/Tanks/Jetpacks/blue.rsi
      state: icon
    iconOn:
      sprite: Objects/Tanks/Jetpacks/blue.rsi
      state: icon-on
    useDelay: 1.0
  - type: InstantAction
    event: !type:ToggleJetpackEvent

#Empty blue
- type: entity
  id: JetpackBlue
  parent: BaseJetpack
  name: jetpack
  suffix: Empty
  components:
  - type: Sprite
    sprite: _DV/Objects/Tanks/Jetpacks/blue.rsi # DeltaV - Modified sprites to allow SUITSTORAGE use.
  - type: Clothing
    sprite: _DV/Objects/Tanks/Jetpacks/blue.rsi # DeltaV - Modified sprites to allow SUITSTORAGE use.
    # DeltaV modifications - Covered by modifications on parent
    #slots:
    #  - Back
    # End DeltaV modifications

# Filled blue
- type: entity
  id: JetpackBlueFilled
  parent: JetpackBlue
  name: jetpack
  suffix: Filled
  components:
  - type: GasTank
    outputPressure: 42.6
    air:
      # 13 minutes of thrust
      volume: 5
      temperature: 293.15
      moles:
        Oxygen: 1.025689525 # oxygen
        Nitrogen: 1.025689525 # nitrogen

#Empty black
- type: entity
  id: JetpackBlack
  parent: [BaseJetpack, BaseTraitorContraband, BaseExaminableClothing] # starcup: shared contraband level with nt gear, examinable clothing
  name: jetpack
  suffix: Empty
  components:
  - type: Item
    sprite: _DV/Objects/Tanks/Jetpacks/black.rsi # DeltaV - Modified sprites to allow SUITSTORAGE use.
  - type: Sprite
    sprite: _DV/Objects/Tanks/Jetpacks/black.rsi # DeltaV - Modified sprites to allow SUITSTORAGE use.
  - type: Clothing
    sprite: _DV/Objects/Tanks/Jetpacks/black.rsi # DeltaV - Modified sprites to allow SUITSTORAGE use.
    # DeltaV modifications - Covered by modifications on parent
    #slots:
    #  - Back
    # End DeltaV modifications
  # begin starcup: examinable clothing
  - type: ExaminableClothing
    examineText: clothing-black-jetpack
  # end starcup
  - type: StaticPrice
    price: 1000

  # Filled black
- type: entity
  id: JetpackBlackFilled
  parent: JetpackBlack
  name: jetpack
  suffix: Filled
  components:
  - type: GasTank
    outputPressure: 42.6
    air:
      # 13 minutes of thrust
      volume: 5
      temperature: 293.15
      moles:
        Oxygen: 1.025689525 # oxygen
        Nitrogen: 1.025689525 # nitrogen

#Empty captain
- type: entity
  id: JetpackCaptain
  parent: [BaseJetpack, BaseGrandTheftContraband]
  name: captain's jetpack
  suffix: Empty
  components:
  - type: Sprite
    sprite: Objects/Tanks/Jetpacks/captain.rsi
  - type: Clothing
    sprite: Objects/Tanks/Jetpacks/captain.rsi
    # DeltaV modifications - Covered by modifications on parent
    #slots:
    #  - Back
    # End DeltaV modifications
  - type: Item
    sprite: Objects/Tanks/Jetpacks/captain.rsi
    size: Normal
  - type: Tag
    tags:
    - HighRiskItem
  - type: StealTarget
    stealGroup: JetpackCaptainFilled

# Filled captain
- type: entity
  id: JetpackCaptainFilled
  parent: JetpackCaptain
  name: captain's jetpack
  suffix: Filled
  components:
  - type: GasTank
    outputPressure: 42.6
    air:
      # 13 minutes of thrust
      volume: 5
      temperature: 293.15
      moles:
        Oxygen: 1.025689525 # oxygen
        Nitrogen: 1.025689525 # nitrogen

#Empty mini
- type: entity
  id: JetpackMini
  parent: BaseJetpack
  name: mini jetpack
  description: It's a jetpack. It can hold 1.5 L of gas.
  suffix: Empty
  components:
    - type: Item
      sprite: Objects/Tanks/Jetpacks/mini.rsi
    - type: Sprite
      sprite: Objects/Tanks/Jetpacks/mini.rsi
    - type: Clothing
      sprite: Objects/Tanks/Jetpacks/mini.rsi
      slots:
        - Back
        - suitStorage
        - Belt
    - type: GasTank
      outputPressure: 42.6
      air:
        volume: 1.5

# Filled mini
- type: entity
  id: JetpackMiniFilled
  parent: JetpackMini
  name: mini jetpack
  suffix: Filled
  components:
  - type: GasTank
    outputPressure: 42.6
    air:
      # 4 minutes of thrust
      volume: 1.5
      temperature: 293.15
      moles:
        Oxygen: 0.307706858 # oxygen
        Nitrogen: 0.307706858 # nitrogen

#Empty security
- type: entity
  id: JetpackSecurity
  parent: [JetpackMini, BaseSecurityContraband, BaseExaminableClothing] # starcup: examinable clothing
  name: security mini jetpack
  description: A compact jetpack utilized by station security when patrolling the station's exterior. Not intended for long range travel, it holds only 1.5 L of gas.
  suffix: Empty
  components:
  - type: Item
    sprite: _DV/Objects/Tanks/Jetpacks/security.rsi # DeltaV - Modified sprites to allow SUITSTORAGE use.
  - type: Sprite
    sprite: _DV/Objects/Tanks/Jetpacks/security.rsi # DeltaV - Modified sprites to allow SUITSTORAGE use.
  - type: Clothing
    sprite: _DV/Objects/Tanks/Jetpacks/security.rsi # DeltaV - Modified sprites to allow SUITSTORAGE use.
    # DeltaV modifications - Covered by modifications on parent
    #slots:
    #  - Back
    # End DeltaV modifications
  # begin starcup: examinable clothing
  - type: ExaminableClothing
    examineText: clothing-security-jetpack
  # end starcup

#Filled security
- type: entity
  id: JetpackSecurityFilled
  parent: JetpackSecurity
  name: security jetpack
  suffix: Filled
  components:
  - type: GasTank
    outputPressure: 42.6
    air:
      # 4 minutes of thrust
      volume: 1.5
      temperature: 293.15
      moles:
        Oxygen: 0.307706858 # oxygen
        Nitrogen: 0.307706858 # nitrogen

#Empty void
- type: entity
  id: JetpackVoid
  parent: BaseJetpack
  name: void jetpack
  suffix: Empty
  components:
  - type: Item
    sprite: Objects/Tanks/Jetpacks/void.rsi
  - type: Sprite
    sprite: Objects/Tanks/Jetpacks/void.rsi
  - type: Clothing
    sprite: Objects/Tanks/Jetpacks/void.rsi
    slots:
      - Back
      - suitStorage
      - Belt

# Filled void
- type: entity
  id: JetpackVoidFilled
  parent: JetpackVoid
  name: void jetpack
  suffix: Filled
  components:
  - type: GasTank
    outputPressure: 42.6
    air:
      # 13 minutes of thrust
      volume: 5
      temperature: 293.15
      moles:
        Oxygen: 1.025689525 # oxygen
        Nitrogen: 1.025689525 # nitrogen

        # Infinite jetpack
- type: entity
  parent: [ JetpackBlack, BaseXenoborgContraband ]
  id: JetpackXenoborg
  name: xenoborg jetpack
  suffix: Infinite
  components:
  - type: GasTank
    outputPressure: 21.3
    air:
      volume: 5
      temperature: 293.15
  - type: Jetpack
    moleUsage: 0
  - type: MovementSpeedModifier
    weightlessAcceleration: 1.3
    weightlessFriction: 0.3
    weightlessModifier: 1
