- type: entity
  abstract: true
  parent: BaseItem
  id: BaseMagazineBoxRifle
  components:
  - type: BallisticAmmoProvider
    mayTransfer: true
    whitelist:
      tags:
        - CartridgeRifle
    proto: CartridgeRifle
    capacity: 50
  - type: Item
    size: Small
  - type: ContainerContainer
    containers:
      ballistic-ammo: !type:Container
  - type: Sprite
    sprite: Objects/Weapons/Guns/Ammunition/Boxes/rifle.rsi
  - type: MagazineVisuals
    magState: mag
    steps: 4
    zeroVisible: false
  - type: Appearance

# Boxes
- type: entity
  parent: BaseMagazineBoxRifle
  id: MagazineBoxRifleBig
  name: ammunition box (.20 rifle)
  suffix: Big
  components:
  - type: BallisticAmmoProvider
    capacity: 200
    proto: CartridgeRifle
  - type: Sprite
    layers:
    - state: base-big
      map: ["enum.GunVisualLayers.Base"]
    - state: mag-big-1
      map: ["enum.GunVisualLayers.Mag"]
  - type: MagazineVisuals
    magState: mag-big
    steps: 4
    zeroVisible: false
  - type: Appearance

- type: entity
  parent: BaseMagazineBoxRifle
  id: MagazineBoxRifle
  name: ammunition box (.20 rifle)
  description: A cardboard box of .20 rifle rounds. Intended to hold general-purpose kinetic ammunition.
  components:
  - type: BallisticAmmoProvider
    proto: CartridgeRifle
  - type: Sprite
    layers:
    - state: base
      map: ["enum.GunVisualLayers.Base"]
    - state: mag-1
      map: ["enum.GunVisualLayers.Mag"]

- type: entity
  parent: BaseMagazineBoxRifle
  id: MagazineBoxRiflePractice
  name: ammunition box (.20 rifle practice)
  description: A cardboard box of .20 rifle rounds. Intended to hold harmless practice ammunition.
  components:
  - type: BallisticAmmoProvider
    proto: CartridgeRiflePractice
  - type: Sprite
    layers:
    - state: base
      map: ["enum.GunVisualLayers.Base"]
    - state: mag-1
      map: ["enum.GunVisualLayers.Mag"]
    - state: practice

- type: entity
  id: MagazineBoxRifleIncendiary
  parent: BaseMagazineBoxRifle
  name: ammunition box (.20 rifle incendiary)
  description: A cardboard box of .20 rifle rounds. Intended to hold self-igniting incendiary ammunition.
  components:
  - type: BallisticAmmoProvider
    proto: CartridgeRifleIncendiary
  - type: Sprite
    layers:
    - state: base
      map: ["enum.GunVisualLayers.Base"]
    - state: mag-1
      map: ["enum.GunVisualLayers.Mag"]
    - state: incendiary

- type: entity
  id: MagazineBoxRifleUranium
  parent: BaseMagazineBoxRifle
  name: ammunition box (.20 rifle uranium)
  description: A cardboard box of .20 rifle rounds. Intended to hold exotic uranium-core ammunition.
  components:
  - type: BallisticAmmoProvider
    proto: CartridgeRifleUranium
  - type: Sprite
    layers:
    - state: base
      map: ["enum.GunVisualLayers.Base"]
    - state: mag-1
      map: ["enum.GunVisualLayers.Mag"]
    - state: uranium

