- type: entity
  name: R1 arm module
  parent: BaseItem
  id: R1arm
  description: A bloody hydraulic arm coated in a layer of super-repellent substance from a redspace dimension.
  components:
  - type: Sprite
    sprite: Vanilla/Mobs/Silicon/chassis.rsi
    state: R1_Arm
  - type: MeleeWeapon
    wideAnimationRotation: 90
    attackRate: 2
    damage:
      types:
        Piercing: 10
        Structural: 10
    soundHit:
      collection: MetalThud
  - type: Item
    size: Normal
  - type: Reflect
    reflectProb: .2
    spread: 0
    soundOnReflect:
        path: /Audio/Vanilla/Effects/R1/Parry.ogg

- type: entity
  name: R1 arm module
  parent: R1arm
  id: R1armDebuffed
  description: A bloody hydraulic arm coated in a layer of super-repellent substance from a redspace dimension.
  suffix: Debuffed
  components:
  - type: MeleeWeapon
    damage:
      types:
        Piercing: 7
        Structural: 7
  - type: Reflect
    reflectProb: .1
    spread: 0

- type: entity
  name: slab revolver
  parent: BaseItem
  id: WeaponSlabRevoler
  description: A railgun that fires iron mined from blood.
  components:
  - type: Gun
    fireRate: 1.1
    selectedMode: SemiAuto
    availableModes:
      - SemiAuto
    soundGunshot:
      path: /Audio/Vanilla/Effects/R1/Slab.ogg
      params:
        volume: -1
  - type: Sprite
    sprite: Vanilla/Objects/Weapons/Guns/Slab.rsi
    layers:
      - state: base
        map: ["enum.GunVisualLayers.Base"]
      - state: unlit
        shader: unshaded
  - type: ContainerContainer
    containers:
      ballistic-ammo: !type:Container
  - type: BatteryAmmoProvider
    proto: BaseBulletAP
    fireCost: 10
  - type: Battery
    maxCharge: 50
    startingCharge: 50
  - type: BatterySelfRecharger
    autoRechargeRate: 2
  - type: AmmoCounter

- type: entity
  id: WeaponPiercerRevolver
  parent: WeaponPulsePistol
  name: piercer revolver
  description: A railgun that accelerates a projectile to hypersonic speeds.
  components:
  - type: Sprite
    sprite: Vanilla/Objects/Weapons/Guns/Piercer.rsi
  - type: Gun
    fireRate: 1
    soundGunshot:
      path: /Audio/Vanilla/Effects/R1/Piercer.ogg
      params:
        volume: -2
  - type: BatteryAmmoProvider
    proto: RailPiercer
    fireCost: 10
  - type: Battery
    maxCharge: 50
    startingCharge: 50
  - type: BatterySelfRecharger
    autoRechargeRate: 2

# Railgun

- type: entity
  name: Railcannon
  parent: BaseItem
  id: WeaponRailcannon
  description: A railcannon that fires iron mined from blood.
  components:
  - type: Gun
    soundGunshot:
      path: /Audio/Vanilla/Effects/R1/Railcannon.ogg
      params:
        volume: -1
  - type: Sprite
    sprite: Vanilla/Objects/Weapons/Guns/Railgun.rsi
    layers:
      - state: base
        map: ["enum.GunVisualLayers.Base"]
      - state: charge-unshaded-1
        map: ["enum.GunVisualLayers.MagUnshaded"]
        shader: unshaded
  - type: ContainerContainer
    containers:
      ballistic-ammo: !type:Container
  - type: Appearance
  - type: BatteryAmmoProvider
    proto: ProjectileRailgun
    fireCost: 150
  - type: Battery
    maxCharge: 150
    startingCharge: 0
  - type: BatterySelfRecharger
    autoRechargeRate: 1
  - type: AmmoCounter
  - type: MagazineVisuals
    magState: charge
    steps: 2
    zeroVisible: true

# Shotgun

- type: entity
  id: WeaponCoreEjectShotgun
  parent: BaseWeaponBattery
  name: core eject shotgun
  description: A shotgun with a reactor inside that shoots hot pieces of iron.
  components:
  - type: Sprite
    sprite: Vanilla/Objects/Weapons/Guns/CoreEject.rsi
    state: base
  - type: Gun
    fireRate: 0.8
    soundGunshot:
      path: /Audio/Vanilla/Effects/R1/Shotgun.ogg
      params:
        volume: -2
  - type: BatteryAmmoProvider
    proto: ShotCoreEject
    fireCost: 3
  - type: BatteryWeaponFireModes
    fireModes:
    - proto: ShotCoreEject
      fireCost: 3
    - proto: ShotCoreEjectHeat
      fireCost: 2
    - proto: CoreEjectProjectile
      fireCost: 10
  - type: Battery
    maxCharge: 15
    startingCharge: 15
  - type: BatterySelfRecharger
    autoRechargeRate: 0.3

# Nailgun

- type: entity
  name: nailgun
  parent: BaseItem
  id: WeaponNailgun
  description: A railgun that fires iron mined from blood.
  components:
  - type: Gun
    fireRate: 10
    selectedMode: FullAuto
    availableModes:
      - FullAuto
    soundGunshot:
      path: /Audio/Vanilla/Effects/R1/NailGun.ogg
      params:
        volume: -1
  - type: Sprite
    sprite: Vanilla/Objects/Weapons/Guns/Nailgun.rsi
    layers:
      - state: base
        map: ["enum.GunVisualLayers.Base"]
      - state: unlit
        shader: unshaded
  - type: ContainerContainer
    containers:
      ballistic-ammo: !type:Container
  - type: BatteryAmmoProvider
    proto: BulletNail
    fireCost: 1
  - type: Battery
    maxCharge: 100
    startingCharge: 100
  - type: BatterySelfRecharger
    autoRechargeRate: 1
  - type: AmmoCounter

# Hitscan
- type: entity
  parent: BasicHitscan
  id: RailPiercer
  components:
  - type: HitscanBasicDamage
    damage:
      types:
        Heat: 11
        Piercing: 5
  - type: HitscanBasicVisuals
    muzzleFlash:
      sprite: Objects/Weapons/Guns/Projectiles/projectiles.rsi
      state: muzzle_blue
    travelFlash:
      sprite: Objects/Weapons/Guns/Projectiles/projectiles.rsi
      state: beam_blue
    impactFlash:
      sprite: Objects/Weapons/Guns/Projectiles/projectiles.rsi
      state: impact_blue
