- type: entity
  id: BaseShellShotgun12_gauge
  name: shotgun shell (12 gauge)
  parent: BaseCartridge
  description: Standard shotgun round practically everywhere.
  abstract: true
  components:
  - type: Tag
    tags:
    - Cartridge
    - ShellShotgun12_gaugeBuckshot
  - type: CartridgeAmmo
    soundEject:
      collection: ShellEject
      params:
        variation: 0.06
  - type: EmitSoundOnLand
    sound:
      collection: ShellEject
      params:
        variation: 0.06
  - type: Sprite
    sprite: _Mono/Objects/Weapons/Guns/Ammunition/Casings/12_gauge_shell.rsi
    layers:
      - state: base
        map: [ "enum.AmmoVisualLayers.Base" ]
    scale: 0.6, 0.6
  - type: Appearance
  - type: SpentAmmoVisuals
  - type: StaticPrice
    price: 1

- type: entity
  id: ShellShotgun12_gaugeBeanbag
  name: shotgun shell (12 gauge beanbag)
  parent: BaseShellShotgun12_gauge
  components:
  - type: Tag
    tags:
    - Cartridge
    - ShellShotgun12_gaugeBuckshot
    - ShellShotgun12_gaugeLight
  - type: Sprite
    layers:
      - state: beanbag
        map: [ "enum.AmmoVisualLayers.Base" ]
  - type: CartridgeAmmo
    proto: Pellet12_gaugeBeanbag
  - type: SpentAmmoVisuals
    state: "beanbag"

- type: entity
  id: ShellShotgun12_gaugeSlug
  name: shotgun shell (12 gauge slug)
  parent: BaseShellShotgun12_gauge
  components:
  - type: Sprite
    layers:
      - state: slug
        map: [ "enum.AmmoVisualLayers.Base" ]
  - type: CartridgeAmmo
    proto: Pellet12_gaugeSlug
  - type: SpentAmmoVisuals
    state: "slug"

- type: entity
  id: ShellShotgun12_gaugeFlare
  name: flare shell (12 gauge flare)
  parent: BaseShellShotgun12_gauge
  components:
  - type: Tag
    tags:
    - Cartridge
    - ShellShotgun12_gaugeBuckshot
    - ShellShotgun12_gaugeLight
  - type: Sprite
    layers:
      - state: flare
        map: [ "enum.AmmoVisualLayers.Base" ]
  - type: CartridgeAmmo
    proto: Pellet12_gaugeFlare
  - type: SpentAmmoVisuals
    state: "flare"

- type: entity
  id: ShellShotgun12_gaugeBuckshot
  name: shotgun shell (12 gauge buckshot)
  parent: BaseShellShotgun12_gauge
  components:
  - type: Sprite
    layers:
      - state: base
        map: [ "enum.AmmoVisualLayers.Base" ]
  - type: CartridgeAmmo
    proto: Pellet12_gaugeSpread

- type: entity
  id: ShellShotgun12_gaugeIncendiary
  name: shotgun shell (12 gauge incendiary)
  parent: BaseShellShotgun12_gauge
  components:
  - type: Sprite
    layers:
      - state: incendiary
        map: [ "enum.AmmoVisualLayers.Base" ]
  - type: CartridgeAmmo
    proto: Pellet12_gaugeIncendiarySpread
  - type: SpentAmmoVisuals
    state: "incendiary"

- type: entity
  id: ShellShotgun12_gaugePractice
  name: shotgun shell (12 gauge practice)
  parent: BaseShellShotgun12_gauge
  components:
  - type: Sprite
    layers:
      - state: practice
        map: [ "enum.AmmoVisualLayers.Base" ]
  - type: CartridgeAmmo
    proto: Pellet12_gaugePracticeSpread
  - type: SpentAmmoVisuals
    state: "practice"

- type: entity
  id: ShellShotgun12_gaugeTranquilizer
  name: shotgun shell (12 gauge tranquilizer)
  parent: BaseShellShotgun12_gauge
  components:
  - type: Tag
    tags:
    - Cartridge
    - ShellShotgun12_gaugeBuckshot
    - ShellShotgun12_gaugeLight
  - type: Sprite
    layers:
      - state: tranquilizer
        map: [ "enum.AmmoVisualLayers.Base" ]
  - type: CartridgeAmmo
    proto: Pellet12_gaugeTranquilizer
  - type: ChemicalAmmo
  - type: SolutionContainerManager
    solutions:
      ammo:
        reagents:
        - ReagentId: ChloralHydrate
          Quantity: 4
  - type: SolutionTransfer
    maxTransferAmount: 4
  - type: SpentAmmoVisuals
    state: "tranquilizer"

- type: entity
  id: ShellShotgun12_gaugeImprovised
  name: improvised shotgun shell (12 gauge)
  description: A homemade shotgun shell that shoots painful glass shrapnel. The spread is so wide that it couldn't hit the broad side of a barn.
  parent: BaseShellShotgun12_gauge
  components:
  - type: Tag
    tags:
    - Cartridge
    - ShellShotgun12_gaugeBuckshot
    - ShellShotgun12_gaugeLight
  - type: Sprite
    layers:
      - state: improvised
        map: [ "enum.AmmoVisualLayers.Base" ]
  - type: Construction
    graph: ImprovisedShotgunShellGraph
    node: shell
  - type: CartridgeAmmo
    proto: Pellet12_gaugeImprovisedSpread
  - type: SpentAmmoVisuals
    state: "improvised"

- type: entity
  id: ShellShotgun12_gaugeUranium
  name: shotgun shell (12 gauge uranium)
  parent: BaseShellShotgun12_gauge
  components:
    - type: Sprite
      layers:
        - state: depleted-uranium
          map: [ "enum.AmmoVisualLayers.Base" ]
    - type: CartridgeAmmo
      proto: Pellet12_gaugeUraniumSpread
    - type: SpentAmmoVisuals
      state: "depleted-uranium"

# Mono AP syst
#anti-flesh:
- type: entity
  id: ShellShotgun12_gaugeOOBuckshot
  name: shotgun shell (12 gauge OO magnum buckshot)
  parent: BaseShellShotgun12_gauge
  components:
  - type: Sprite
    layers:
      - state: base
        map: [ "enum.AmmoVisualLayers.Base" ]
  - type: CartridgeAmmo
    proto: Pellet12_gaugeOOBuckshotSpread
  - type: SpentAmmoVisuals

- type: entity
  id: ShellShotgun12_gaugeSlugRIP
  name: shotgun shell (12 gauge RIP)
  parent: BaseShellShotgun12_gauge
  components:
  - type: Sprite
    layers:
      - state: RIP
        map: [ "enum.AmmoVisualLayers.Base" ]
  - type: CartridgeAmmo
    proto: Pellet12_gaugeSlugRIP
  - type: SpentAmmoVisuals
    state: "RIP"

#armor-piercing:
- type: entity
  id: ShellShotgun12_gaugeSlugAP
  name: shotgun shell (12 gauge armor-piercing slug)
  parent: BaseShellShotgun12_gauge
  components:
  - type: Sprite
    layers:
      - state: slug-AP
        map: [ "enum.AmmoVisualLayers.Base" ]
  - type: CartridgeAmmo
    proto: Pellet12_gaugeSlugAP
  - type: SpentAmmoVisuals
    state: "slug-AP"

- type: entity
  id: ShellShotgun12_gaugeFlechette
  name: shotgun shell (12 gauge flechette)
  parent: BaseShellShotgun12_gauge
  components:
  - type: Sprite
    layers:
      - state: flechette
        map: [ "enum.AmmoVisualLayers.Base" ]
  - type: CartridgeAmmo
    proto: Pellet12_gaugeFlechetteSpread
  - type: SpentAmmoVisuals
    state: "flechette"
