ACTOR PlayerFastBullet : FastProjectile {
  Damage (Random(1,3)*Random(5,7))
  Radius 1
  Height 1
  Speed 320
  Projectile
  Renderstyle "None"
  +BLOODSPLATTER
  +MTHRUSPECIES
  +NOTIMEFREEZE
  Decal "Bulletchip"
  States {
    Spawn:
      PLSE E 1
      Loop
    Death:
      TNT1 A 1 A_SpawnItemEx("PlayerModdedBulletPuff")
      Stop
    XDeath:
      TNT1 A 1
      Stop
  }
}

ACTOR PlayerBullet {
  Damage (Random(1,3)*Random(5,7))
  Radius 1
  Height 1
  Speed 10
  Projectile
  Renderstyle "None"
  +BLOODSPLATTER
  +MTHRUSPECIES
  +NOTIMEFREEZE
  Decal "BulletChip"
  States {
    Spawn:
      TNT1 A 0
      TNT1 A 0 A_SpawnItemEx("PlayerFastBullet", 0,0,0, momx*3276.7,momy*3276.7,momz*3276.7, 0, SXF_ABSOLUTEMOMENTUM)
      Stop
    Death:
      TNT1 A 1 A_SpawnItemEx("PlayerModdedBulletPuff")
      Stop
    XDeath:
      TNT1 A 1
      Stop
  }
}

// Complex Doom:

ACTOR PlayerMinigunFastBullet : PlayerFastBullet { Damage (Random(1,3)*Random(7,10)) }

ACTOR PlayerMinigunBullet : PlayerBullet {
  Damage (Random(1,3)*Random(7,10))
  States {
    Spawn:
      TNT1 A 0
      TNT1 A 0 A_SpawnItemEx("PlayerMinigunFastBullet", 0,0,0, momx*3276.7,momy*3276.7,momz*3276.7, 0, SXF_ABSOLUTEMOMENTUM)
      Stop
  }
}

ACTOR PlayerMP40FastBullet : PlayerFastBullet { Damage (Random(1,3)*Random(8,10)) }

ACTOR PlayerMP40Bullet : PlayerBullet {
  Damage (Random(1,3)*Random(8,10))
  States {
    Spawn:
      TNT1 A 0
      TNT1 A 0 A_SpawnItemEx("PlayerMP40FastBullet", 0,0,0, momx*3276.7,momy*3276.7,momz*3276.7, 0, SXF_ABSOLUTEMOMENTUM)
      Stop
  }
}

