- type: entity
  parent: BaseBullet
  id: WatcherBolt
  categories: [ HideSpawnMenu ]
  name: watcher bolt
  components:
  - type: FlyBySound
    sound:
      collection: EnergyMiss
      params:
        volume: 5
  - type: Sprite
    sprite: Objects/Weapons/Guns/Projectiles/projectiles_tg.rsi
    layers:
    - state: omnilaser
      shader: unshaded
  - type: Ammo
    muzzleFlash: MuzzleFlashEffectOmnilaser
  - type: Physics
  - type: Fixtures
    fixtures:
      projectile:
        shape: !type:PhysShapeAabb
          bounds: "-0.2,-0.2,0.2,0.2"
        hard: false
        mask:
        - Opaque
        - Impassable
        - BulletImpassable
      fly-by: &flybyfixture
        shape: !type:PhysShapeCircle
          radius: 1.5
        layer:
        - Impassable
        - MidImpassable
        - HighImpassable
        - LowImpassable
        hard: false
  - type: Projectile
    #soundHit: Waiting on serv3
    impactEffect: BulletImpactEffectDisabler
    damage:
      types:
        Cold: 0
  - type: TimedDespawn
    lifetime: 3
  - type: ChangeTemperatureOnCollide
    heat: -50000

- type: entity
  parent: WatcherBolt
  id: WatcherBoltMagmawing
  categories: [ HideSpawnMenu ]
  name: magmawing watcher bolt
  components:
  - type: Sprite
    sprite: Objects/Weapons/Guns/Projectiles/projectiles_tg.rsi
    layers:
    - state: omnilaser_greyscale
      shader: unshaded
      color: orangered
  - type: Ammo
    muzzleFlash: MuzzleFlashEffectHeavyLaser
  - type: Projectile
    #soundHit: Waiting on serv3
    impactEffect: BulletImpactEffectOrangeDisabler
    damage:
      types:
        Heat: 0
  - type: ChangeTemperatureOnCollide
    heat: 50000

- type: entity
  parent: BaseBullet
  id: BasiliskRay
  categories: [ HideSpawnMenu ]
  name: basilisk ray
  components:
  - type: FlyBySound
    sound:
      collection: EnergyMiss
      params:
        volume: 5
  - type: Sprite
    sprite: Objects/Weapons/Guns/Projectiles/projectiles_tg.rsi
    layers:
    - state: ice
      shader: unshaded
  - type: Ammo
    muzzleFlash: null
  - type: Physics
  - type: Fixtures
    fixtures:
      projectile:
        shape: !type:PhysShapeAabb
          bounds: "-0.05,-0.05,0.05,0.05"
        hard: false
        mask:
        - Opaque
      fly-by: *flybyfixture
  - type: Projectile
    impactEffect: BulletImpactEffectDisabler
    damage:
      types:
        Cold: 5
  - type: TimedDespawn
    lifetime: 3
  - type: ChangeTemperatureOnCollide
    heat: -50000
