- type: entity
  name: Launcher Base
  parent: BaseItem
  id: LauncherBase
  description: A rooty tooty point and shooty.
  abstract: true
  components:
  - type: Sprite
    netsync: false
  - type: Item
    size: 24

- type: entity
  name: china lake
  parent: LauncherBase
  id: LauncherChinaLake
  description: PLOOP
  components:
  - type: Sprite
    sprite: Objects/Weapons/Guns/Launchers/china_lake.rsi
    layers:
      - state: base
        map: ["enum.RangedBarrelVisualLayers.Base"]
      - state: bolt-closed
        map: ["enum.RangedBarrelVisualLayers.Bolt"]
  - type: Item
    size: 24
    sprite: Objects/Weapons/Guns/Launchers/china_lake.rsi
  - type: RangedWeapon
  - type: BoltActionBarrel
    caliber: Grenade
    currentSelector: Single
    allSelectors:
    - Single
    fillPrototype: GrenadeFrag
    fireRate: 1
    capacity: 3
    soundEmpty: /Audio/Weapons/Guns/Empty/empty.ogg
    soundGunshot: /Audio/Weapons/Guns/Gunshots/grenade_launcher.ogg
    soundInsert: /Audio/Weapons/Guns/MagIn/batrifle_magin.ogg
  - type: Appearance
    visuals:
    - type: BarrelBoltVisualizer

- type: entity
  name: RPG-7
  parent: LauncherBase
  id: LauncherRocket
  description: A modified ancient rocket-propelled grenade launcher.
  components:
  - type: Sprite
    sprite: Objects/Weapons/Guns/Launchers/rocket.rsi
    layers:
      - state: base
        map: ["enum.RangedBarrelVisualLayers.Base"]
      - state: mag-0
        map: ["enum.RangedBarrelVisualLayers.Mag"]
  - type: Item
    size: 24
    sprite: Objects/Weapons/Guns/Launchers/rocket.rsi
  - type: RangedWeapon
  - type: RevolverBarrel
    caliber: Rocket
    currentSelector: Single
    allSelectors:
    - Single
    fillPrototype: RocketAmmo
    fireRate: 0.5
    capacity: 1
    soundEmpty: /Audio/Weapons/Guns/Empty/empty.ogg
    soundGunshot: /Audio/Weapons/Guns/Gunshots/rpgfire.ogg
    soundInsert: /Audio/Weapons/Guns/MagIn/batrifle_magin.ogg
  - type: Appearance
    visuals:
    - type: MagVisualizer
      magState: mag
      steps: 1
      zeroVisible: true

- type: entity
  name: pie cannon
  parent: LauncherBase
  id: LauncherCreamPie
  description: Load cream pie for optimal results.
  components:
    - type: Sprite
      sprite: Objects/Weapons/Guns/Launchers/pie_cannon.rsi
      state: piecannon
    - type: Item
      size: 24
      sprite: Objects/Weapons/Guns/Launchers/pie_cannon.rsi
    - type: RangedWeapon
      clumsyCheck: false
    - type: RevolverBarrel
      caliber: CreamPie
      currentSelector: Single
      allSelectors:
        - Single
      fillPrototype: FoodPieBananaCream
      fireRate: 5
      capacity: 5
      soundEmpty: /Audio/Weapons/Guns/Empty/empty.ogg
      soundGunshot: /Audio/Effects/bang.ogg
      soundInsert: /Audio/Items/bikehorn.ogg
