- type: entity
  name: baserifle
  parent: BaseItem
  id: RifleBase
  description: A rooty tooty point and shooty.
  abstract: true
  components:
  - type: LoopingSound
  - type: BallisticMagazineWeapon
    caliber: A762mm
    magazines:
    - A762mm
    default_magazine: magazine_762mm_filled
    auto_eject_magazine: false
    sound_magazine_in: /Audio/Guns/MagIn/batrifle_magin.ogg
    sound_magazine_out: /Audio/Guns/MagOut/batrifle_magout.ogg
    sound_empty: /Audio/Guns/Empty/empty.ogg
    sound_gunshot: /Audio/Guns/Gunshots/batrifle.ogg

- type: entity
  name: ak
  parent: RifleBase
  id: RifleAk
  description: A rooty tooty point and shooty.
  components:
  - type: Sprite
    netsync: false
    sprite: Objects/Guns/Rifles/ak.rsi
    state: ak-0
  - type: Icon
    sprite: Objects/Guns/Rifles/ak.rsi
    state: ak-0
  - type: LoopingSound
  - type: RangedWeapon
    spreadstddev: 2
    automatic: true
    firerate: 8
  - type: BallisticMagazineWeapon
    caliber: A762mm
    magazines:
    - A762mm
    default_magazine: magazine_ak
    sound_gunshot: /Audio/Guns/Gunshots/rifle2.ogg
  - type: Appearance
    visuals:
    - type: BallisticMagazineWeaponVisualizer2D
      base_state: ak
      steps: 1
  - type: Item
    Size: 24
    sprite: Objects/Guns/Rifles/ak.rsi

- type: entity
  name: black ak
  parent: RifleBase
  id: RifleBlackAk
  description: A rooty tooty point and shooty.
  components:
  - type: Sprite
    netsync: false
    sprite: Objects/Guns/Rifles/black-ak.rsi
    state: black-ak-0
  - type: Icon
    sprite: Objects/Guns/Rifles/black-ak.rsi
    state: black-ak-0
  - type: LoopingSound
  - type: RangedWeapon
    spreadstddev: 2
    automatic: true
    firerate: 8
  - type: BallisticMagazineWeapon
    caliber: A762mm
    magazines:
    - A762mm
    default_magazine: magazine_ak
    sound_gunshot: /Audio/Guns/Gunshots/rifle2.ogg
  - type: Appearance
    visuals:
    - type: BallisticMagazineWeaponVisualizer2D
      base_state: black-ak
      steps: 1
  - type: Item
    Size: 24
    sprite: Objects/Guns/Rifles/black-ak.rsi

- type: entity
  name: carbine
  parent: RifleBase
  id: RifleCarbine
  description: A rooty tooty point and shooty.
  components:
  - type: Sprite
    netsync: false
    sprite: Objects/Guns/Rifles/carbine.rsi
    state: carbine-5
  - type: Icon
    sprite: Objects/Guns/Rifles/carbine.rsi
    state: carbine-5
  - type: LoopingSound
  - type: RangedWeapon
    spreadstddev: 1.5
    automatic: true
    firerate: 6
  - type: BallisticMagazineWeapon
    caliber: A10mm
    magazines:
    - A10mmSMG
    default_magazine: magazine_10mm_smg
    sound_gunshot: /Audio/Guns/Gunshots/rifle2.ogg
  - type: Appearance
    visuals:
    - type: BallisticMagazineWeaponVisualizer2D
      base_state: carbine
      steps: 6
  - type: Item
    Size: 24
    sprite: Objects/Guns/Rifles/carbine.rsi

- type: entity
  name: dallas
  parent: RifleBase
  id: RifleDallas
  description: A rooty tooty point and shooty.
  components:
  - type: Sprite
    netsync: false
    sprite: Objects/Guns/Rifles/dallas.rsi
    state: dallas-0
  - type: Icon
    sprite: Objects/Guns/Rifles/dallas.rsi
    state: dallas-0
  - type: LoopingSound
  - type: RangedWeapon
    spreadstddev: 2
    automatic: true
    firerate: 8
  - type: BallisticMagazineWeapon
    caliber: A24mm
    magazines:
    - A24mm
    default_magazine: magazine_24mm
    auto_eject_magazine: true
    sound_gunshot: /Audio/Guns/Gunshots/rifle2.ogg
  - type: Appearance
    visuals:
    - type: BallisticMagazineWeaponVisualizer2D
      base_state: dallas
      steps: 1
  - type: Item
    Size: 24
    sprite: Objects/Guns/Rifles/dallas.rsi

- type: entity
  name: IH heavy rifle
  parent: RifleBase
  id: RifleIhHeavy
  description: A rooty tooty point and shooty.
  components:
  - type: Sprite
    netsync: false
    sprite: Objects/Guns/Rifles/ih_heavyrifle.rsi
    state: ih_heavyrifle-0
  - type: Icon
    sprite: Objects/Guns/Rifles/ih_heavyrifle.rsi
    state: ih_heavyrifle-0
  - type: LoopingSound
  - type: RangedWeapon
    spreadstddev: 1.5
    automatic: true
    firerate: 6
  - type: BallisticMagazineWeapon
    caliber: A10mm
    magazines:
    - A10mmSMG
    default_magazine: magazine_10mm_smg
    auto_eject_magazine: true
    sound_gunshot: /Audio/Guns/Gunshots/ltrifle.ogg
  - type: Appearance
    visuals:
    - type: BallisticMagazineWeaponVisualizer2D
      base_state: ih_heavyrifle
      steps: 1
  - type: Item
    Size: 24
    sprite: Objects/Guns/Rifles/ih_heavyrifle.rsi

- type: entity
  name: sol-eot
  parent: RifleBase
  id: RifleSolEot
  description: A rooty tooty point and shooty.
  components:
  - type: Sprite
    netsync: false
    sprite: Objects/Guns/Rifles/sol-eot.rsi
    state: sol-eot-4
  - type: Icon
    sprite: Objects/Guns/Rifles/sol-eot.rsi
    state: sol-eot-4
  - type: RangedWeapon
    spreadstddev: 2.8
    automatic: true
    firerate: 8
  - type: BallisticMagazineWeapon
    caliber: A65mm
    magazines:
    - A65mm
    default_magazine: magazine_65mm
    auto_eject_magazine: true
    lmg_alarm_animation: true
    sound_auto_eject: /Audio/Guns/EmptyAlarm/lmg_empty_alarm.ogg
    sound_gunshot: /Audio/Guns/Gunshots/rifle.ogg
  - type: Appearance
    visuals:
    - type: BallisticMagazineWeaponVisualizer2D
      base_state: sol-eot
      steps: 5
  - type: Item
    Size: 24
    sprite: Objects/Guns/Rifles/sol-eot.rsi

- type: entity
  name: sol-para
  parent: RifleBase
  id: RifleSolPara
  description: A rooty tooty point and shooty.
  components:
  - type: Sprite
    netsync: false
    sprite: Objects/Guns/Rifles/sol-para.rsi
    state: sol-para-4
  - type: Icon
    sprite: Objects/Guns/Rifles/sol-para.rsi
    state: sol-para-4
  - type: RangedWeapon
    spreadstddev: 3
    automatic: true
    firerate: 8
  - type: BallisticMagazineWeapon
    caliber: A65mm
    magazines:
    - A65mm
    default_magazine: magazine_65mm
    auto_eject_magazine: true
    lmg_alarm_animation: true
    sound_auto_eject: /Audio/Guns/EmptyAlarm/lmg_empty_alarm.ogg
    sound_gunshot: /Audio/Guns/Gunshots/rifle.ogg
  - type: Appearance
    visuals:
    - type: BallisticMagazineWeaponVisualizer2D
      base_state: sol-para
      steps: 5
  - type: Item
    Size: 24
    sprite: Objects/Guns/Rifles/sol-para.rsi

- type: entity
  name: sts
  parent: RifleBase
  id: RifleSts
  description: A rooty tooty point and shooty.
  components:
  - type: Sprite
    netsync: false
    sprite: Objects/Guns/Rifles/sts.rsi
    state: sts-0
  - type: Icon
    sprite: Objects/Guns/Rifles/sts.rsi
    state: sts-0
  - type: RangedWeapon
    spreadstddev: 2
    automatic: true
    firerate: 6
  - type: BallisticMagazineWeapon
    caliber: A65mm
    magazines:
    - A65mm
    default_magazine: magazine_65mm
    sound_gunshot: /Audio/Guns/Gunshots/rifle2.ogg
  - type: Appearance
    visuals:
    - type: BallisticMagazineWeaponVisualizer2D
      base_state: sts
      steps: 1
  - type: Item
    Size: 24
    sprite: Objects/Guns/Rifles/sts.rsi
