ACTOR TK3Fireswarm : Weapon
{
  Weapon.Kickback 100
  scale 0.2
    	Weapon.AmmoUse 0
	Weapon.AmmoGive 10
	Weapon.AmmoType "TK3ShotgunShells"
		inventory.Icon "TKA5G0"
  Inventory.PickupMessage "Shotgun With Fireswarm"
  Obituary  "%k blew %o's head off with a Shotgun."
  	Inventory.PickupSound "Turok3/Items/PickupWeapon"
  States
  {
  Spawn:
    TKA3 J -1
    Loop
  Ready:
	TNT1 A 0 A_PlaySound ("Turok3/Weapons/FireShotgunUp","Weapon")
    TK24 A 2 
    TK24 B 2
    TK24 C 2
    TK24 D 2
    TK24 E 2
    TK24 F 2
    TK24 G 2
	TK24 H 2
	TK24 I 2
	TK24 J 2
	TK24 K 2
	TK24 L 2
	TK24 M 2
	TK24 N 2
	TK24 O 2
    TK24 O -1 A_WeaponReady
    Goto Ready+15
  Deselect:
    TK25 W 2
    TK25 XYZ 2
	TK26 ABCDEFG 2
    TK26 G 0 A_Lower
    wait
  Select: 
    TK26 O 0 A_Raise 
    Loop  
  Fire: 
        NULL A 0 A_JumpIfInventory("TK3ShotgunShells",1,1)
  goto Ready+15
		TNT1 A 0 A_TakeInventory("TK3ShotgunShells",5,TIF_NOTAKEINFINITE)
 	TNT1 A 0 A_PlaySound ("Turok3/Weapons/FireShotgunAttack","Weapon")
	TNT1 AAAAA 0 A_FireCustomMissile("TK3FireswarmShot",frandom(-0.5,2),5,frandom(3,9),0,0,frandom(-1.0,3))
    TK24 P 2 BRIGHT
    TK24 QRSTUVXYZ 2 
	TK25 ABCDEFGHIJKLMNOPQRSTUV 2
    Goto Ready+15
  }
}

actor TK3FireswarmShot: Fastprojectile
{
  obituary "%o got swarmed by %k's Fireswarm."
  radius 8
  height 8
  speed 120
  damage 4
  scale 0.1
  PROJECTILE
  +FORCEXYBILLBOARD
  states
  {
  Spawn:
      TNT1 A 0 A_SpawnItemEx("TK3FireswarmShotTrail", 0,               0,              2)
      TNT1 A 0 A_SpawnItemEx("TK3FireswarmShotTrail",     momx /-90.0,     -momy /-90.0, 2+    momz /-90.0, 0,0,0, 0, SXF_ABSOLUTEANGLE)
      TNT1 A 0 A_SpawnItemEx("TK3FireswarmShotTrail", (2 *momx)/-90.0, -(2 *momy)/-90.0, 2+(2 *momz)/-90.0, 0,0,0, 0, SXF_ABSOLUTEANGLE)
      TNT1 A 0 A_SpawnItemEx("TK3FireswarmShotTrail", (3 *momx)/-90.0, -(3 *momy)/-90.0, 2+(3 *momz)/-90.0, 0,0,0, 0, SXF_ABSOLUTEANGLE)
      TNT1 A 0 A_SpawnItemEx("TK3FireswarmShotTrail", (4 *momx)/-90.0, -(4 *momy)/-90.0, 2+(4 *momz)/-90.0, 0,0,0, 0, SXF_ABSOLUTEANGLE)
      TNT1 A 0 A_SpawnItemEx("TK3FireswarmShotTrail", (5 *momx)/-90.0, -(5 *momy)/-90.0, 2+(5 *momz)/-90.0, 0,0,0, 0, SXF_ABSOLUTEANGLE)
      TNT1 A 0 A_SpawnItemEx("TK3FireswarmShotTrail", (6 *momx)/-90.0, -(6 *momy)/-90.0, 2+(6 *momz)/-90.0, 0,0,0, 0, SXF_ABSOLUTEANGLE)
      TNT1 A 0 A_SpawnItemEx("TK3FireswarmShotTrail", (7 *momx)/-90.0, -(7 *momy)/-90.0, 2+(7 *momz)/-90.0, 0,0,0, 0, SXF_ABSOLUTEANGLE)
	  TNT1 A 0 A_SpawnItemEx("TK3FireswarmShotTrail", (8 *momx)/-90.0, -(8 *momy)/-90.0, 2+(8 *momz)/-90.0, 0,0,0, 0, SXF_ABSOLUTEANGLE)
      TNT1 A 0 A_SpawnItemEx("TK3FireswarmShotTrail", (9 *momx)/-90.0, -(9 *momy)/-90.0, 2+(9 *momz)/-90.0, 0,0,0, 0, SXF_ABSOLUTEANGLE)
      TNT1 A 0 A_SpawnItemEx("TK3FireswarmShotTrail", (10*momx)/-90.0, -(10*momy)/-90.0, 2+(10*momz)/-90.0, 0,0,0, 0, SXF_ABSOLUTEANGLE)
      TNT1 A 0 A_SpawnItemEx("TK3FireswarmShotTrail", (11*momx)/-90.0, -(11*momy)/-90.0, 2+(11*momz)/-90.0, 0,0,0, 0, SXF_ABSOLUTEANGLE)
      TNT1 A 0 A_SpawnItemEx("TK3FireswarmShotTrail", (12*momx)/-90.0, -(12*momy)/-90.0, 2+(12*momz)/-90.0, 0,0,0, 0, SXF_ABSOLUTEANGLE)
      TNT1 A 0 A_SpawnItemEx("TK3FireswarmShotTrail", (13*momx)/-90.0, -(13*momy)/-90.0, 2+(13*momz)/-90.0, 0,0,0, 0, SXF_ABSOLUTEANGLE)
      TNT1 A 0 A_SpawnItemEx("TK3FireswarmShotTrail", (14*momx)/-90.0, -(14*momy)/-90.0, 2+(14*momz)/-90.0, 0,0,0, 0, SXF_ABSOLUTEANGLE)
      TNT1 A 0 A_SpawnItemEx("TK3FireswarmShotTrail", (15*momx)/-90.0, -(15*momy)/-90.0, 2+(15*momz)/-90.0, 0,0,0, 0, SXF_ABSOLUTEANGLE)
      TNT1 A 0 A_SpawnItemEx("TK3FireswarmShotTrail", (16*momx)/-90.0, -(16*momy)/-90.0, 2+(16*momz)/-90.0, 0,0,0, 0, SXF_ABSOLUTEANGLE)
      TNT1 A 0 A_SpawnItemEx("TK3FireswarmShotTrail", (17*momx)/-90.0, -(17*momy)/-90.0, 2+(17*momz)/-90.0, 0,0,0, 0, SXF_ABSOLUTEANGLE)
      TNT1 A 0 A_SpawnItemEx("TK3FireswarmShotTrail", (18*momx)/-90.0, -(18*momy)/-90.0, 2+(18*momz)/-90.0, 0,0,0, 0, SXF_ABSOLUTEANGLE)
      TNT1 A 0 A_SpawnItemEx("TK3FireswarmShotTrail", (19*momx)/-90.0, -(19*momy)/-90.0, 2+(19*momz)/-90.0, 0,0,0, 0, SXF_ABSOLUTEANGLE)
      TNT1 A 0 A_SpawnItemEx("TK3FireswarmShotTrail", (20*momx)/-90.0, -(20*momy)/-90.0, 2+(20*momz)/-90.0, 0,0,0, 0, SXF_ABSOLUTEANGLE)
      TNT1 A 0 A_SpawnItemEx("TK3FireswarmShotTrail", (21*momx)/-90.0, -(21*momy)/-90.0, 2+(21*momz)/-90.0, 0,0,0, 0, SXF_ABSOLUTEANGLE)
      TNT1 A 0 A_SpawnItemEx("TK3FireswarmShotTrail", (22*momx)/-90.0, -(22*momy)/-90.0, 2+(22*momz)/-90.0, 0,0,0, 0, SXF_ABSOLUTEANGLE)
      TNT1 A 0 A_SpawnItemEx("TK3FireswarmShotTrail", (23*momx)/-90.0, -(23*momy)/-90.0, 2+(23*momz)/-90.0, 0,0,0, 0, SXF_ABSOLUTEANGLE)
      TNT1 A 0 A_SpawnItemEx("TK3FireswarmShotTrail", (24*momx)/-90.0, -(24*momy)/-90.0, 2+(24*momz)/-90.0, 0,0,0, 0, SXF_ABSOLUTEANGLE)
      TNT1 A 0 A_SpawnItemEx("TK3FireswarmShotTrail", (25*momx)/-90.0, -(25*momy)/-90.0, 2+(25*momz)/-90.0, 0,0,0, 0, SXF_ABSOLUTEANGLE)
      TNT1 A 0 A_SpawnItemEx("TK3FireswarmShotTrail", (26*momx)/-90.0, -(26*momy)/-90.0, 2+(26*momz)/-90.0, 0,0,0, 0, SXF_ABSOLUTEANGLE)
      TNT1 A 0 A_SpawnItemEx("TK3FireswarmShotTrail", (27*momx)/-90.0, -(27*momy)/-90.0, 2+(27*momz)/-90.0, 0,0,0, 0, SXF_ABSOLUTEANGLE)
      TNT1 A 0 A_SpawnItemEx("TK3FireswarmShotTrail", (28*momx)/-90.0, -(28*momy)/-90.0, 2+(28*momz)/-90.0, 0,0,0, 0, SXF_ABSOLUTEANGLE)
      TNT1 A 0 A_SpawnItemEx("TK3FireswarmShotTrail", (29*momx)/-90.0, -(29*momy)/-90.0, 2+(29*momz)/-90.0, 0,0,0, 0, SXF_ABSOLUTEANGLE)
      TNT1 A 1 BRIGHT
      Loop
DEATH:
NULL A 0
NULL A 0 A_ALERTMONSTERS
      TNT1 A 0 A_SpawnItemEx("TK3FireswarmShotFire", (26*momx)/-90.0, -(26*momy)/-90.0, 2+(26*momz)/-90.0, 0,0,0, 0, SXF_ABSOLUTEANGLE)
      TNT1 A 0 A_SpawnItemEx("TK3FireswarmShotFire", (27*momx)/-90.0, -(27*momy)/-90.0, 2+(27*momz)/-90.0, 0,0,0, 0, SXF_ABSOLUTEANGLE)
      TNT1 A 0 A_SpawnItemEx("TK3FireswarmShotFire", (28*momx)/-90.0, -(28*momy)/-90.0, 2+(28*momz)/-90.0, 0,0,0, 0, SXF_ABSOLUTEANGLE)
STOP
}}

actor TK3FireswarmShotTrail
{
  Scale 0.1
  +NOINTERACTION
  +FORCEXYBILLBOARD
  +CLIENTSIDEONLY
  States
  {
	Spawn:
	  TF48 A 2 BRIGHT
	  Stop
  }
}


Actor TK3FireswarmShotFire
{
  obituary "%k's Fireswarm made %o go up in flames."
  radius 1
  height 1
  speed 20
  bouncefactor 0.0
  scale 0.3
  PROJECTILE
  +FORCEXYBILLBOARD
  +NODAMAGETHRUST
  +NOCLIP
  states
  {
  Spawn:
    NULL A 3
    NULL A 0 A_Stop
	TNT1 A 0 A_Playsound("Turok3/Weapons/Fire",7,1,TRUE)
    goto death
  Death:
    TF47 ABCDEFGHIJKLMNO 3 bright A_Explode (7,8,1)
	TNT1 A 0 A_Stopsound(7)
    stop
  }
}