# Боеприпасы

- type: Tag
  id: ShellShotgunCarnage

- type: Tag
  id: MagazineShotgunCarnage

- type: entity
  id: PelletShotgunCarnage
  parent: BulletTrace
  categories: [ HideSpawnMenu ]
  components:
  - type: HitscanBasicDamage
    damage:
      types:
        Piercing: 18
        Heat: 3
        Structural: 14
  - type: HitscanPierce
    chance: 0.45
    deviation: 0.05
    pierceLevel: HardenedMetal
  - type: HitscanRicochet
    chance: 0.55
  - type: HitscanBasicVisuals
    bullet:
      sprite:
        sprite: Objects/Weapons/Guns/Projectiles/projectiles2.rsi
        state: uranium

- type: entity
  id: PelletShotgunCarnageSpread
  parent: PelletShotgunCarnage
  categories: [ HideSpawnMenu ]
  components:
  - type: ProjectileSpread
    proto: PelletShotgunCarnage
    count: 6
    spread: 15

# Раздатчик ружейных патронов (.60 карнаж)

- type: entity
  parent: BaseAmmoProvider
  id: AmmoProviderShotgunShellCarnage
  abstract: true
  components:
    - type: Sprite
      sprite: Objects/Weapons/Guns/Ammunition/Boxes/shotgun.rsi
    - type: BallisticAmmoProvider
      mayTransfer: true
      whitelist:
        tags:
        - ShellShotgunCarnage
      capacity: 16
    - type: MagazineVisuals
      magState: mag
      steps: 5
      zeroVisible: false
    - type: Appearance

- type: entity
  parent: AmmoProviderShotgunShellCarnage
  id: BoxCarnage
  name: ammunition box (.60 AP)
  components:
    - type: BallisticAmmoProvider
      proto: ShellShotgunCarnage
    - type: Sprite
      layers:
      - state: base
        map: ["enum.GunVisualLayers.Base"]
      - state: mag-1
        map: ["enum.GunVisualLayers.Mag"]
      - state: beanbag

# .60 AP

- type: entity
  id: BaseShellShotgunCarnage
  name: shell (.60 AP)
  parent: [ BaseCartridge, BaseRestrictedContraband ]
  abstract: true
  components:
  - type: Tag
    tags:
    - Cartridge
    - ShellShotgunCarnage
  - type: CartridgeAmmo
    soundEject:
      collection: ShellEject
  - type: Sprite
    sprite: _Lust/Objects/Weapons/Guns/Ammunition/Casings/carnage_shell.rsi
    layers:
      - state: base
        map: [ "enum.AmmoVisualLayers.Base" ]
  - type: Appearance
  - type: SpentAmmoVisuals

- type: entity
  id: BaseShellHitscanShotgunCarnage
  name: shell (.60 AP)
  parent: [ BaseCartridge, BaseRestrictedContraband ]
  abstract: true
  components:
  - type: Tag
    tags:
    - Cartridge
    - ShellShotgunCarnage
  - type: CartridgeAmmo
    soundEject:
      collection: ShellEject
  - type: Sprite
    sprite: _Lust/Objects/Weapons/Guns/Ammunition/Casings/carnage_shell.rsi
    layers:
      - state: base
        map: [ "enum.AmmoVisualLayers.Base" ]
  - type: Appearance
  - type: SpentAmmoVisuals

- type: entity
  id: ShellShotgunCarnage
  name: shell (.60 AP)
  parent: [ BaseShellShotgun, BaseSecurityContraband ]
  suffix: Arrows
  components:
  - type: Sprite
    layers:
      - state: base
        map: [ "enum.AmmoVisualLayers.Base" ]
  - type: CartridgeAmmo
    soundEject:
      collection: ShellEject
    proto: PelletShotgunCarnageSpread

- type: entity
  id: BaseMagazineShotgunCarnage
  name: shell (.60 AP)
  parent: [ BaseItem, BaseSecurityContraband ]
  abstract: true
  components:
  - type: Tag
    tags:
    - MagazineShotgunCarnage
  - type: BallisticAmmoProvider
    mayTransfer: true
    whitelist:
      tags:
      - ShellShotgunCarnage
    capacity: 8
    soundRack:
      path: /Audio/_Lust/Weapons/Guns/Cock/shotgun_cock.ogg
  - type: Item
    size: Small
  - type: ContainerContainer
    containers:
      ballistic-ammo: !type:Container
  - type: Sprite
    sprite: Objects/Weapons/Guns/Ammunition/Magazine/Shotgun/m12.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: MagazineShotgunCarnage
  name: drum magazine (.60 AP)
  parent: BaseMagazineShotgunCarnage
  suffix: Arrows
  components:
  - type: BallisticAmmoProvider
    proto: ShellShotgunCarnage
  - type: Sprite
    layers:
    - state: base
      map: ["enum.GunVisualLayers.Base"]
    - state: mag-1
      map: ["enum.GunVisualLayers.Mag"]

