- type: entity
  id: BaseCartridgePistol
  name: cartridge (.35 auto)
  parent: [ BaseCartridge, BaseSecurityContraband ]
  abstract: true
  components:
  - type: Tag
    tags:
      - CartridgePistol
  - type: Sprite
    sprite: Objects/Weapons/Guns/Ammunition/Casings/ammo_casing.rsi
    layers:
      - state: base
        map: [ "enum.AmmoVisualLayers.Base" ]
  - type: Appearance
  - type: SpentAmmoVisuals

- type: entity
  id: CartridgePistolRubber
  name: cartridge (.35 auto rubber)
  parent: BaseCartridgePistol
  components:
  - type: HitScanCartridgeAmmo
    hitscan: BulletPistolTraceRubber
  - type: Sprite
    layers:
      - state: base
        map: [ "enum.AmmoVisualLayers.Base" ]
      - state: tip
        map: [ "enum.AmmoVisualLayers.Tip" ]
        color: "#00c1b8"

- type: entity
  id: CartridgePistolSP
  name: cartridge (.35 auto SP)
  parent: BaseCartridgePistol
  components:
  - type: HitScanCartridgeAmmo
    hitscan: BulletPistolTraceSP
  - type: Sprite
    layers:
      - state: base
        map: [ "enum.AmmoVisualLayers.Base" ]
      - state: tip
        map: [ "enum.AmmoVisualLayers.Tip" ]
        color: "#3F47DB"

- type: entity
  id: CartridgePistolHP
  name: cartridge (.35 auto HP)
  parent: BaseCartridgePistol
  components:
  - type: HitScanCartridgeAmmo
    hitscan: BulletPistolTraceHP
  - type: Sprite
    layers:
      - state: base
        map: [ "enum.AmmoVisualLayers.Base" ]
      - state: tip
        map: [ "enum.AmmoVisualLayers.Tip" ]
        color: "#000000"

- type: entity
  id: CartridgePistolFMJ
  name: cartridge (.35 auto FMJ)
  parent: BaseCartridgePistol
  components:
  - type: HitScanCartridgeAmmo
    hitscan: BulletPistolTraceFMJ
  - type: Sprite
    layers:
      - state: base
        map: [ "enum.AmmoVisualLayers.Base" ]
      - state: tip
        map: [ "enum.AmmoVisualLayers.Tip" ]
        color: "#B68F0E"

- type: entity
  id: CartridgePistolAP
  name: cartridge (.35 auto AP)
  parent: BaseCartridgePistol
  components:
  - type: HitScanCartridgeAmmo
    hitscan: BulletPistolTraceAP
  - type: Sprite
    layers:
      - state: base
        map: [ "enum.AmmoVisualLayers.Base" ]
      - state: tip
        map: [ "enum.AmmoVisualLayers.Tip" ]
        color: "#540000"

- type: entity
  id: CartridgePistolPractice
  name: cartridge (.35 auto practice)
  description: Arguably the most popular caliber on the market, used by all manner of pistols and submachine guns. Chalk ammunition is generally non-harmful, used for practice.
  parent: BaseCartridgePistol
  components:
  - type: HitScanCartridgeAmmo
    hitscan: BulletPistolTracePractice
  -  type: Sprite
     layers:
       - state: base
         map: [ "enum.AmmoVisualLayers.Base" ]
       - state: tip
         map: [ "enum.AmmoVisualLayers.Tip" ]
         color: "#dbdbdb"

- type: entity
  id: CartridgePistolIncendiary
  name: cartridge (.35 auto incendiary)
  description: Arguably the most popular caliber on the market, used by all manner of pistols and submachine guns. Incendiary ammunition contains a self-igniting compound that sets the target ablaze.
  parent: BaseCartridgePistol
  components:
  - type: CartridgeAmmo
    proto: BulletPistolIncendiary
  - type: Sprite
    layers:
      - state: base
        map: [ "enum.AmmoVisualLayers.Base" ]
      - state: tip
        map: [ "enum.AmmoVisualLayers.Tip" ]
        color: "#ff6e52"

- type: entity
  id: CartridgePistolUranium
  name: cartridge (.35 auto uranium)
  description: Arguably the most popular caliber on the market, used by all manner of pistols and submachine guns. Uranium core ammunition features a load of fissile material, irradiating the target from the inside.
  parent: BaseCartridgePistol
  components:
  - type: HitScanCartridgeAmmo
    hitscan: BulletPistolTraceUranium
  - type: Sprite
    layers:
      - state: base
        map: [ "enum.AmmoVisualLayers.Base" ]
      - state: tip
        map: [ "enum.AmmoVisualLayers.Tip" ]
        color: "#65fe08"

- type: entity
  id: CartridgePistolSpent
  name: cartridge (.35 auto)
  suffix: spent
  parent: BaseCartridgePistol
  components:
  - type: Sprite
    sprite: Objects/Weapons/Guns/Ammunition/Casings/ammo_casing.rsi
    layers:
    - state: base-spent
      map: [ "enum.AmmoVisualLayers.Base" ]
  - type: SpentAmmoVisuals
  - type: CartridgeAmmo
    proto: BulletPistol
    spent: true
  - type: Tag
    tags:
    - CartridgePistol
    - Trash # surely theres a way to automatically add this...
