- type: entity
  id: BaseMagazine12_gauge
  name: ammo drum (12 gauge shells)
  parent: [ BaseItem, RecyclableItemSteelTiny ]
  abstract: true
  components:
  - type: Tag
    tags:
    - Magazine12_gaugeBuckshot
  - type: BallisticAmmoProvider
    mayTransfer: true
    whitelist:
      tags:
        - ShellShotgun12_gaugeBuckshot
    capacity: 8
    soundRack:
      path: /Audio/Weapons/Guns/Cock/smg_cock.ogg
  - type: Item
    size: Small
  - type: ContainerContainer
    containers:
      ballistic-ammo: !type:Container
  - type: Sprite
    sprite: _Mono/Objects/Weapons/Guns/Ammunition/Magazine/12_gauge/12_gauge_drum.rsi
    layers:
    - state: base
      map: ["enum.GunVisualLayers.Base"]
    - state: mag-1
      map: ["enum.GunVisualLayers.Mag"]
  - type: MagazineVisuals
    magState: mag
    steps: 2
    zeroVisible: false
  - type: Appearance

- type: entity
  id: Magazine12_gaugeEmpty
  name: ammo drum (12 gauge shells any)
  suffix: empty
  parent: BaseMagazine12_gauge
  components:
  - type: BallisticAmmoProvider
    proto: null

- type: entity
  id: Magazine12_gaugeBuckshot
  name: ammo drum (12 gauge buckshot)
  parent: BaseMagazine12_gauge
  components:
  - type: BallisticAmmoProvider
    proto: ShellShotgun12_gaugeBuckshot
  - type: Sprite
    layers:
    - state: pellets
      map: ["enum.GunVisualLayers.Base"]
    - state: mag-1
      map: ["enum.GunVisualLayers.Mag"]

- type: entity
  id: Magazine12_gaugeBeanbag
  name: ammo drum (12 gauge beanbags)
  parent: BaseMagazine12_gauge
  components:
  - type: BallisticAmmoProvider
    proto: ShellShotgun12_gaugeBeanbag
  - type: Sprite
    layers:
    - state: beanbag
      map: ["enum.GunVisualLayers.Base"]
    - state: mag-1
      map: ["enum.GunVisualLayers.Mag"]

- type: entity
  id: Magazine12_gaugeSlug
  name: ammo drum (12 gauge slug)
  parent: BaseMagazine12_gauge
  components:
  - type: BallisticAmmoProvider
    proto: ShellShotgun12_gaugeSlug
  - type: Sprite
    layers:
    - state: slug
      map: ["enum.GunVisualLayers.Base"]
    - state: mag-1
      map: ["enum.GunVisualLayers.Mag"]

- type: entity
  id: Magazine12_gaugeIncendiary
  name: ammo drum (12 gauge incendiary)
  parent: BaseMagazine12_gauge
  components:
  - type: BallisticAmmoProvider
    proto: ShellShotgun12_gaugeIncendiary
  - type: Sprite
    layers:
    - state: incendiary
      map: ["enum.GunVisualLayers.Base"]
    - state: mag-1
      map: ["enum.GunVisualLayers.Mag"]

- type: entity
  id: Magazine12_gaugeUranium
  name: ammo drum (12 gauge uranium)
  parent: BaseMagazine12_gauge
  components:
  - type: BallisticAmmoProvider
    proto: ShellShotgun12_gaugeUranium
  - type: Sprite
    layers:
    - state: uranium
      map: ["enum.GunVisualLayers.Base"]
    - state: mag-1
      map: ["enum.GunVisualLayers.Mag"]

- type: entity
  id: Magazine12_gaugePractice
  name: ammo drum (12 gauge practice)
  parent: BaseMagazine12_gauge
  components:
  - type: BallisticAmmoProvider
    proto: ShellShotgun12_gaugePractice
  - type: Sprite
    layers:
    - state: practice
      map: ["enum.GunVisualLayers.Base"]
    - state: mag-1
      map: ["enum.GunVisualLayers.Mag"]

#Mono AP system
#anti-flesh ammo
- type: entity
  id: Magazine12_gaugeOOBuckshot
  name: ammo drum (12 gauge OO magnum buckshot)
  parent: BaseMagazine12_gauge
  components:
  - type: BallisticAmmoProvider
    proto: ShellShotgun12_gaugeOOBuckshot
  - type: Sprite
    layers:
    - state: pellets
      map: ["enum.GunVisualLayers.Base"]
    - state: mag-1
      map: ["enum.GunVisualLayers.Mag"]

- type: entity
  id: Magazine12_gaugeSlugRIP
  name: ammo drum (12 gauge RIP)
  parent: BaseMagazine12_gauge
  components:
  - type: BallisticAmmoProvider
    proto: ShellShotgun12_gaugeSlugRIP
  - type: Sprite
    layers:
    - state: RIP
      map: ["enum.GunVisualLayers.Base"]
    - state: mag-1
      map: ["enum.GunVisualLayers.Mag"]

#armor-piercing ammo
- type: entity
  id: Magazine12_gaugeSlugAP
  name: ammo drum (12 gauge armor-piercing slug)
  parent: BaseMagazine12_gauge
  components:
  - type: BallisticAmmoProvider
    proto: ShellShotgun12_gaugeSlugAP
  - type: Sprite
    layers:
    - state: slug-AP
      map: ["enum.GunVisualLayers.Base"]
    - state: mag-1
      map: ["enum.GunVisualLayers.Mag"]

- type: entity
  id: Magazine12_gaugeFlechette
  name: ammo drum (12 gauge flechette)
  parent: BaseMagazine12_gauge
  components:
  - type: BallisticAmmoProvider
    proto: ShellShotgun12_gaugeFlechette
  - type: Sprite
    layers:
    - state: flechette
      map: ["enum.GunVisualLayers.Base"]
    - state: mag-1
      map: ["enum.GunVisualLayers.Mag"]
