//===========================================================================
//
// The Toolbox
//
// by Scroton and Marty Kirra
// Sprites by Marty Kirra
//
//===========================================================================
ACTOR MelToolbox : Weapon
{
	Weapon.AmmoType	"ToolboxMag"
	Weapon.AmmoGive	0
	Weapon.AmmoUse	1
	Weapon.AmmoType2 "ToolboxAmmo"
	Weapon.AmmoGive2 0
	Weapon.AmmoUse2	0
	//Weapon.BobStyle Alpha
	//Weapon.BobSpeed 1.2
	//Weapon.BobRangeY 0.5
	//Weapon.BobRangeX 0.6
	Inventory.PickupMessage "[Marston Arms RPG-2090 (The Toolbox)] [Class: Projectile Weapon, Slot 5]"
	Obituary "%k was brought closer to god thanks to %o's Toolbox."
	+Weapon.AMMO_OPTIONAL
	+WEAPON.NoAlert
   States
   {
   Spawn:
      RNLP A -1
	  Stop
   Ready:
      TNT1 A 0 A_JumpIfInventory("MeleePressed",1,"SPMeleeToolbox")
	  TNT1 A 0 A_JumpIfInventory("Reloading",1,"Reload")
      RNLG A 1 A_WeaponReady
      LOOP
   Deselect:
      RNLG A 0 A_PlaySound("toolbox/off", 6)
	  RNLU GFE 1
	  RNLU E 0 A_PlaySound("toolbox/deequip", 5)
	  RNLD ABCD 1
   DeselectLoop:
	  TNT1 A 4 A_Lower
      Loop
   Select:
	  TNT1 A 0 A_TakeInventory("MeleeSelected", 1)
	  TNT1 A 0 A_TakeInventory("919Selected", 1)
	  TNT1 A 0 A_TakeInventory("ZekeSelected", 1)
	  TNT1 A 0 A_TakeInventory("DahliaSelected", 1)
	  TNT1 A 0 A_TakeInventory("AmmoBoxSelected", 1)
	  TNT1 A 0 A_TakeInventory("MP40Selected", 1)
	  TNT1 A 0 A_GiveInventory("ToolBoxSelected", 1)
	  TNT1 A 5 A_PlaySound("toolbox/equip", 5)
	  RNLU ABCD 1
	  RNLU D 0 A_PlaySound("toolbox/on", 6)
	  RNLU DEFG 1
   SelectLoop:
      RNLG A 1 A_Raise
	  Loop
   Fire:
	  TNT1 A 0 A_JumpIfInventory("ToolBoxMag", 1, "Fire2")
	  Goto Reload
   Fire2:
      TNT1 A 0 A_JumpIfNoAmmo("Empty")
	  TNT1 A 0 A_JumpIfInventory("ToolBoxFired", 5, "Empty")
      RNLF A 0 A_JumpIfInventory("ToolboxHeld", 4, "FireHold4") // WHAT IS THIS?!
      RNLF A 0 A_JumpIfInventory("ToolboxHeld", 3, "FireHold3") // this is some dumb shenanigans to get
      RNLF A 0 A_JumpIfInventory("ToolboxHeld", 2, "FireHold2") // the sound to not cut off when firing
      RNLF A 0 A_JumpIfInventory("ToolboxHeld", 1, "FireHold") // just hopping through channels. :P
      RNLF A 0 A_PlaySound("toolbox/prime", 5)
      RNLF ABCDE 1
	  TNT1 A 0 A_SetPitch(pitch - 1.4)
	  TNT1 A 0 A_SetAngle(angle + (random(-2,2)/10))
	  TNT1 A 0 A_JumpIfInventory("GameIsCoop", 1, "FireCoop")
	  Goto FireDM
	FireCoop:
	  RNLF F 0 A_SpawnItemEx ("ToolboxRocketCoop",0,1,38,cos(-pitch)*35,0,sin(-pitch)*35,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	  Goto FireFinish
	FireDM:
	  RNLF F 0 A_SpawnItemEx ("ToolboxRocket",0,1,38,cos(-pitch)*35,0,sin(-pitch)*35,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	  Goto FireFinish
	FireFinish:
	  RNLF F 0 A_TakeInventory("ToolBoxMag", 1)
	  RNLF F 2 BRIGHT A_PlaySound("toolbox/rocket", 6)
	  TNT1 A 0 A_AlertMonsters
	  RNLF G 2 BRIGHT
	  RNLF HIJKLE 1
	  RNLF E 0 A_GiveInventory("ToolboxFired", 1)
	  RNLF E 0 A_GiveInventory("ToolboxHeld", 1)
	  RNLF E 5 A_WeaponReady
	  Goto FireEnd
   FireHold:
      RNLF E 7
	  TNT1 A 0 A_SetPitch(pitch - 1.4)
	  TNT1 A 0 A_SetAngle(angle + (random(-2,2)/10))
	  TNT1 A 0 A_JumpIfInventory("GameIsCoop", 1, "FireHoldCoop")
	  Goto FireHoldDM
	FireHoldCoop:
	  RNLF F 0 A_SpawnItemEx ("ToolboxRocketCoop",0,1,38,cos(-pitch)*35,0,sin(-pitch)*35,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	  Goto FireHoldFinish
	FireHoldDM:
	  RNLF F 0 A_SpawnItemEx ("ToolboxRocket",0,1,38,cos(-pitch)*35,0,sin(-pitch)*35,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	  Goto FireHoldFinish
	FireHoldFinish:
	  RNLF F 0 A_TakeInventory("ToolBoxMag", 1)
	  RNLF F 2 BRIGHT A_PlaySound("toolbox/rocket", 5)
	  TNT1 A 0 A_AlertMonsters
	  RNLF G 2 BRIGHT
	  RNLF HIJKLE 1
	  RNLF E 0 A_GiveInventory("ToolboxFired", 1)
	  RNLF E 0 A_GiveInventory("ToolboxHeld", 1)
      RNLF E 1 A_WeaponReady
	  Goto FireEnd
   FireHold2:
      RNLF E 7
	  TNT1 A 0 A_SetPitch(pitch - 1.4)
	  TNT1 A 0 A_SetAngle(angle + (random(-2,2)/10))
	  TNT1 A 0 A_JumpIfInventory("GameIsCoop", 1, "FireHold2Coop")
	  Goto FireHold2DM
	FireHold2Coop:
	  RNLF F 0 A_SpawnItemEx ("ToolboxRocketCoop",0,1,38,cos(-pitch)*35,0,sin(-pitch)*35,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	  Goto FireHold2Finish
	FireHold2DM:
	  RNLF F 0 A_SpawnItemEx ("ToolboxRocket",0,1,38,cos(-pitch)*35,0,sin(-pitch)*35,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	  Goto FireHold2Finish
	FireHold2Finish:
	  RNLF F 0 A_TakeInventory("ToolBoxMag", 1)
	  RNLF F 2 BRIGHT A_PlaySound("toolbox/rocket", 6)
	  TNT1 A 0 A_AlertMonsters
	  RNLF G 2 BRIGHT
	  RNLF HIJKLE 1
	  RNLF E 0 A_GiveInventory("ToolboxFired", 1)
	  RNLF E 0 A_GiveInventory("ToolboxHeld", 1)
      RNLF E 1 A_WeaponReady
	  Goto FireEnd
   FireHold3:
      RNLF E 7
	  TNT1 A 0 A_SetPitch(pitch - 1.4)
	  TNT1 A 0 A_SetAngle(angle + (random(-2,2)/10))
	  TNT1 A 0 A_JumpIfInventory("GameIsCoop", 1, "FireHold3Coop")
	  Goto FireHold3DM
	FireHold3Coop:
	  RNLF F 0 A_SpawnItemEx ("ToolboxRocketCoop",0,1,38,cos(-pitch)*35,0,sin(-pitch)*35,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	  Goto FireHold3Finish
	FireHold3DM:
	  RNLF F 0 A_SpawnItemEx ("ToolboxRocket",0,1,38,cos(-pitch)*35,0,sin(-pitch)*35,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	  Goto FireHold3Finish
	FireHold3Finish:
	  RNLF F 0 A_TakeInventory("ToolBoxMag", 1)
	  RNLF F 2 BRIGHT A_PlaySound("toolbox/rocket", 5)
	  TNT1 A 0 A_AlertMonsters
	  RNLF G 2 BRIGHT
	  RNLF HIJKLE 1
	  RNLF E 0 A_GiveInventory("ToolboxFired", 1)
	  RNLF E 0 A_GiveInventory("ToolboxHeld", 1)
      RNLF E 1 A_WeaponReady
	  Goto FireEnd
   FireHold4:
      RNLF E 7
	  TNT1 A 0 A_SetPitch(pitch - 1.4)
	  TNT1 A 0 A_SetAngle(angle + (random(-2,2)/10))
	  TNT1 A 0 A_JumpIfInventory("GameIsCoop", 1, "FireHold4Coop")
	  Goto FireHold4DM
	FireHold4Coop:
	  RNLF F 0 A_SpawnItemEx ("ToolboxRocketCoop",0,1,38,cos(-pitch)*35,0,sin(-pitch)*35,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	  Goto FireHold4Finish
	FireHold4DM:
	  RNLF F 0 A_SpawnItemEx ("ToolboxRocket",0,1,38,cos(-pitch)*35,0,sin(-pitch)*35,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	  Goto FireHold4Finish
	FireHold4Finish:
	  RNLF F 0 A_TakeInventory("ToolBoxMag", 1)
	  RNLF F 2 BRIGHT A_PlaySound("toolbox/rocket", 6)
	  TNT1 A 0 A_AlertMonsters
	  RNLF G 2 BRIGHT
	  RNLF HIJKLE 1
	  RNLF E 0 A_GiveInventory("ToolboxFired", 1)
	  RNLF E 0 A_TakeInventory("ToolboxHeld", 4)
      RNLF E 1 A_WeaponReady
	  Goto FireEnd
   FireEnd:
      RNLF A 0 A_TakeInventory("ToolboxHeld", 99)
      RNLF EDCBA 1
	  RNLG A 3
	  Goto Ready
   AltFire:
	  TNT1 A 0 A_JumpIfInventory("ToolBoxMag", 1, "AltFire2")
	  Goto Reload
   AltFire2:
	  TNT1 A 0 A_JumpIfInventory("ToolBoxFired", 5, "Empty")
	  TNT1 A 0 A_PlaySound("toolbox/grind", 6)
	  RNLE ABCDABCDA 2
	  RNLF A 0 A_PlaySound("toolbox/prime", 0)
      RNLF ABCDE 1
	  TNT1 A 0 A_SetPitch(pitch - 2.0)
	  TNT1 A 0 A_SetAngle(angle + (random(-5,5)/10))
	  TNT1 A 0 A_JumpIfInventory("GameIsCoop", 1, "AltFireCoop")
	  Goto AltFireDM
	AltFireCoop:
	  RNLF FFFFFFFFFFFFFF 0 A_SpawnItemEx ("DummyShrapnelCoop",0,2,44,cos(-pitch),0,sin(-pitch),(random(-400,400)/100),SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	  Goto AltFireFinish
	AltFireDM:
	  RNLF FFFFFFFFFFFFFF 0 A_SpawnItemEx ("DummyShrapnel",0,2,44,cos(-pitch),0,sin(-pitch),(random(-400,400)/100),SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	  Goto AltFireFinish
	AltFireFinish:
	  RNLF F 0 A_TakeInventory("ToolBoxMag", 1)
	  RNLF F 2 BRIGHT A_PlaySound("toolbox/nailgun", 6)
	  TNT1 A 0 A_AlertMonsters
	  RNLF G 2 BRIGHT
	  RNLF HIJKLE 1
	  RNLF E 0 A_GiveInventory("ToolboxFired", 1)
      RNLF EDCBA 1
	  RNLG A 5
	  Goto Ready
    Reload:
	  TNT1 A 0 A_TakeInventory("Reloading",9)
	  RNLG A 0 A_JumpIfInventory("ToolBoxMag", 5, "Ready")
	  RNLG A 0 A_JumpIfInventory("ToolBoxAmmo", 1, "ReloadStart")
	  RNLG A 1 A_WeaponReady(WRF_NOFIRE)
	  Goto Ready
	ReloadStart:
	  RNLG A 0 A_PlaySound("toolbox/off", 6)
	  RNLU GFE 1
	  RNLR C 0 A_PlaySound("toolbox/reload1", 5)
	  RNLR ABC 1
	  RNLR DEEFFGHI 1
	  RNLR J 0 A_PlaySound("toolbox/reload2", 6)
	  RNLR JJJJJJJJJJJJJJJJJJJJJJJJ 1
	ReloadWork:
	  MPTR I 0 A_TakeInventory("ToolBoxAmmo",1)
	  MPTR I 0 A_GiveInventory("ToolBoxMag",1)
	  MPTR I 0 A_JumpIfInventory("ToolBoxMag",5,"ReloadFinish")
	  MPTR I 0 A_JumpifInventory("ToolBoxAmmo",1,"ReloadWork")
	ReloadFinish:
	  RNLR K 0 A_TakeInventory("ToolboxFired", 99)
	  RNLR KLMMMMMMMMM 1
	  RNLR NOA 1
	  RNLU D 0 A_PlaySound("toolbox/on", 5)
	  RNLU EFG 1
	  RNLG A 2
	  Goto Ready
    Empty:
	  RNLU A 0 A_PlaySound("toolbox/empty")
	  RNLU E 1
	  RNLE A 2
	  RNLU E 2
	  RNLE A 2
	  RNLU EFG 1
	  RNLG A 1
	  Goto Reload
    SPMeleeToolbox:
	  RNLG A 3
	  RNLM ABBCC 1
	  TNT1 A 0 A_PlaySound("strongmelee/miss", 5)
	  TNT1 A 0 A_PlaySound("*melee", 6)
	  RNLM DEF 1
	  ML1F D 0 A_JumpIfInventory("PowerStrength",1,"SPMeleeBerserk")
	  RNLM G 1 A_CustomPunch(8,0,0,"StrongMeleePuff",90)
	  Goto SPMeleeA
	SPMeleeBerserk:
	  RNLM G 1 A_CustomPunch(16,0,0,"StrongMeleePuff",90)
	  Goto SPMeleeA
	SPMeleeA: 
	  RNLM FEDCCBA 1
	  RNLG A 5
	  Goto Ready
	}
}

ACTOR ToolboxHeld : Inventory
{
	Inventory.MaxAmount 5
}

ACTOR ToolboxFired : Inventory
{
	Inventory.MaxAmount 5
}

ACTOR ToolboxMag : Ammo
{
	+IGNORESKILL
	Inventory.MaxAmount 5
}

ACTOR ToolboxAmmo : Ammo Replaces RocketAmmo
{
	+IGNORESKILL
	Inventory.Amount 1
	Inventory.MaxAmount 30
	Ammo.BackpackAmount 5
	Ammo.BackpackMaxAmount 60
	Ammo.DropAmount 1
	Scale 0.4
	Inventory.Icon "SRTPA0"
	Inventory.PickupMessage "Picked up a Toolbox Rocket. [+1 Toolbox Ammo]"
	Inventory.PickupSound "toolbox/ammo1"
	States
	{
	Spawn:
		SRTP A -1
		Stop
	}
}

ACTOR ToolboxRocketBox : ToolboxAmmo replaces RocketBox
{
  Inventory.PickupMessage "Picked up a crate of Toolbox Rockets. [+5 Toolbox Ammo]"
  Inventory.PickupSound "toolbox/ammo2"
  Inventory.Amount 5
  Scale 1.0
  States
  {
  Spawn:
    BROK A -1
    Stop
  }
}

ACTOR ToolboxPickup : CustomInventory Replaces RocketLauncher
{
    Inventory.PickupMessage "[Marston Arms RPG-2090 (The Toolbox)] [Class: Projectile Weapon, Slot 5]"
	+INVENTORY.AUTOACTIVATE
	States
	{
	Spawn:
      RNLP A -1
	  Stop
	Pickup:
	  TNT1 A 0 A_JumpIfInventory("IsMel",1,"MelPickup")
	  TNT1 A 0 A_JumpIfInventory("IsVexler",1,"MelPickup")
	  Fail
	VexlerPickup:
	  TNT1 A 0 A_JumpIfInventory("MelToolbox", 1, "AmmoCheck")
	  TNT1 A 0 A_GiveInventory("MelToolbox", 1)
	  TNT1 A 0 A_GiveInventory("ToolboxAmmo", 10)
	  TNT1 A 0 A_GiveInventory("ToolBoxJustPickedUp", 1)
	  TNT1 A 0 ACS_ExecuteAlways(859)
	  TNT1 A 0 A_JumpIf(ACS_ExecuteWithResult(860,1) >= 1,"PretendPickupFail")
	  TNT1 A 1 
	  Stop
	MelPickup:
	  TNT1 A 0 A_JumpIfInventory("MelToolbox", 1, "AmmoCheck")
	  TNT1 A 0 A_GiveInventory("MelToolbox", 1)
	  TNT1 A 0 A_GiveInventory("ToolboxAmmo", 10)
	  TNT1 A 0 A_GiveInventory("ToolBoxJustPickedUp", 1)
	  TNT1 A 0 ACS_ExecuteAlways(859)
	  TNT1 A 0 A_JumpIf(ACS_ExecuteWithResult(860,1) >= 1,"PretendPickupFail")
	  TNT1 A 1 
	  Stop
	AmmoCheck:
      TNT1 A 1 A_JumpIf(ACS_ExecuteWithResult(860,1) >= 1,"PickupFail")
	  TNT1 A 0 A_JumpIfInventory("ToolboxAmmo", 0, "PickupFail")
	  TNT1 A 0 A_GiveInventory("ToolBoxAmmo", 10)
	  Stop
	PretendPickupFail:
	  TNT1 A 0 ACS_ExecuteAlways(857,0,17)
      DCBP A 1
      Fail
	PickupFail:
      RNLP A 1
      Fail
	}
}

ACTOR ToolboxRocket
{
  Radius 5
  Height 4
  Speed 20
  Damage 20
  Scale 0.4
  Projectile
  //+RANDOMIZE
  //+DEHEXPLOSION
  +ROCKETTRAIL
  //SeeSound "toolbox/rocketfly"
  //DeathSound "toolbox/rocketimpact"
  Obituary "%o took %k's rocket to the moon."
  Decal "DoomImpScorch"
  States
  {
  Spawn:
    SRKT A 0
	SRKT A 0
	SRKT A 0
	SRKT A 1
    Goto Spawn2
  Spawn2:
    TNT1 A 0 A_PlaySound("toolbox/rocketfly", 5)
    SRKT A 3 Bright
    Loop
  Death:
	TNT1 A 0 A_SpawnItemEx("ToolboxRocketExplosion",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION)
	TNT1 A 1 A_Explode
	TNT1 A 0 A_PlaySound("toolbox/rocketimpact", 5)
    Stop
  }
}

ACTOR ToolboxRocketCoop : ToolboxRocket
{
  Species "Player"
  +THRUSPECIES
}

//sprites from Aeons of Death/Metroid Dreadnaught, code nicked from TerminusEst13. Whoops!
ACTOR ToolboxRocketExplosion
{
  Radius 1
  Height 1
  +NOINTERACTION
  RenderStyle Add
  Alpha 0.9
  Scale 0.55
  States
  {
    Spawn:
	    TNT1 A 0
        TNT1 A 0 A_Jump(256,"Spawn1","Spawn2","Spawn3","Spawn4","Spawn5","Spawn6","Spawn7")
        TNT1 A 1
        stop
    Spawn1:
        MXP1 ABCDEFGHIJKLMNOPQRSTUVWXYZ 1 BRIGHT
        stop
    Spawn2:
        MXP2 ABCDEFGHIJKLMNOPQRSTUVWXYZ 1 BRIGHT
        stop
    Spawn3:
        MXP3 ABCDEFGHIJKLMNOPQRSTUVWXYZ 1 BRIGHT
        stop
    Spawn4:
        MXP4 ABCDEFGHIJKLMNOPQRSTUVWXYZ 1 BRIGHT
        stop
    Spawn5:
        MXP5 ABCDEFGHIJKLMNOPQRSTUVWXYZ 1 BRIGHT
        stop
    Spawn6:
        MXP6 ABCDEFGHIJKLMNOPQRSTUVWXYZ 1 BRIGHT
        stop
    Spawn7:
        MXP7 ABCDEFGHIJKLMNOPQRSTUVWXYZ 1 BRIGHT
        stop
  }
}

actor DummyShrapnel
{
  +NOINTERACTION
  Radius 1
  Height 1
  States
  {
  Spawn:
	PUFF A 0
	PUFF A 0
	PUFF A 0 A_SetPitch(pitch+(random(-400,400)/100)) 
	Goto Spawn2
  Spawn2:
	PUFF A 0
	PUFF A 0
	PUFF A 0 A_Jump(256, "Shoot50", "Shoot51", "Shoot52", "Shoot53", "Shoot54", "Shoot55", "Shoot56", "Shoot57", "Shoot58", "Shoot59", "Shoot60")
	Goto Shoot55
  Shoot30:
	PUFF A 0 A_SpawnItemEx ("ToolboxShrapnelMissile",0,0,0,cos(-pitch)*30,0,sin(-pitch)*30,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail",-1,0,(sin(pitch)*1),cos(-pitch)*30,0,sin(-pitch)*30,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail1",-2,0,(sin(pitch)*2),cos(-pitch)*30,0,sin(-pitch)*30,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail1",-3,0,(sin(pitch)*3),cos(-pitch)*30,0,sin(-pitch)*30,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail2",-4,0,(sin(pitch)*4),cos(-pitch)*30,0,sin(-pitch)*30,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail2",-5,0,(sin(pitch)*5),cos(-pitch)*30,0,sin(-pitch)*30,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail3",-6,0,(sin(pitch)*6),cos(-pitch)*30,0,sin(-pitch)*30,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail3",-7,0,(sin(pitch)*7),cos(-pitch)*30,0,sin(-pitch)*30,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	Goto Spawn3
  Shoot31:
	PUFF A 0 A_SpawnItemEx ("ToolboxShrapnelMissile",0,0,0,cos(-pitch)*31,0,sin(-pitch)*31,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail",-1,0,(sin(pitch)*1),cos(-pitch)*31,0,sin(-pitch)*31,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail1",-2,0,(sin(pitch)*2),cos(-pitch)*31,0,sin(-pitch)*31,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail1",-3,0,(sin(pitch)*3),cos(-pitch)*31,0,sin(-pitch)*31,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail2",-4,0,(sin(pitch)*4),cos(-pitch)*31,0,sin(-pitch)*31,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail2",-5,0,(sin(pitch)*5),cos(-pitch)*31,0,sin(-pitch)*31,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail3",-6,0,(sin(pitch)*6),cos(-pitch)*31,0,sin(-pitch)*31,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail3",-7,0,(sin(pitch)*7),cos(-pitch)*31,0,sin(-pitch)*31,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	Goto Spawn3
  Shoot32:
	PUFF A 0 A_SpawnItemEx ("ToolboxShrapnelMissile",0,0,0,cos(-pitch)*32,0,sin(-pitch)*32,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail",-1,0,(sin(pitch)*1),cos(-pitch)*32,0,sin(-pitch)*32,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail1",-2,0,(sin(pitch)*2),cos(-pitch)*32,0,sin(-pitch)*32,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail1",-3,0,(sin(pitch)*3),cos(-pitch)*32,0,sin(-pitch)*32,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail2",-4,0,(sin(pitch)*4),cos(-pitch)*32,0,sin(-pitch)*32,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail2",-5,0,(sin(pitch)*5),cos(-pitch)*32,0,sin(-pitch)*32,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail3",-6,0,(sin(pitch)*6),cos(-pitch)*32,0,sin(-pitch)*32,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail3",-7,0,(sin(pitch)*7),cos(-pitch)*32,0,sin(-pitch)*32,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	Goto Spawn3
  Shoot33:
	PUFF A 0 A_SpawnItemEx ("ToolboxShrapnelMissile",0,0,0,cos(-pitch)*33,0,sin(-pitch)*33,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail",-1,0,(sin(pitch)*1),cos(-pitch)*33,0,sin(-pitch)*33,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail1",-2,0,(sin(pitch)*2),cos(-pitch)*33,0,sin(-pitch)*33,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail1",-3,0,(sin(pitch)*3),cos(-pitch)*33,0,sin(-pitch)*33,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail2",-4,0,(sin(pitch)*4),cos(-pitch)*33,0,sin(-pitch)*33,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail2",-5,0,(sin(pitch)*5),cos(-pitch)*33,0,sin(-pitch)*33,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail3",-6,0,(sin(pitch)*6),cos(-pitch)*33,0,sin(-pitch)*33,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail3",-7,0,(sin(pitch)*7),cos(-pitch)*33,0,sin(-pitch)*33,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	Goto Spawn3
  Shoot34:
	PUFF A 0 A_SpawnItemEx ("ToolboxShrapnelMissile",0,0,0,cos(-pitch)*34,0,sin(-pitch)*34,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail",-1,0,(sin(pitch)*1),cos(-pitch)*34,0,sin(-pitch)*34,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail1",-2,0,(sin(pitch)*2),cos(-pitch)*34,0,sin(-pitch)*34,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail1",-3,0,(sin(pitch)*3),cos(-pitch)*34,0,sin(-pitch)*34,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail2",-4,0,(sin(pitch)*4),cos(-pitch)*34,0,sin(-pitch)*34,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail2",-5,0,(sin(pitch)*5),cos(-pitch)*34,0,sin(-pitch)*34,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail3",-6,0,(sin(pitch)*6),cos(-pitch)*34,0,sin(-pitch)*34,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail3",-7,0,(sin(pitch)*7),cos(-pitch)*34,0,sin(-pitch)*34,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	Goto Spawn3
  Shoot35:
	PUFF A 0 A_SpawnItemEx ("ToolboxShrapnelMissile",0,0,0,cos(-pitch)*35,0,sin(-pitch)*35,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail",-1,0,(sin(pitch)*1),cos(-pitch)*35,0,sin(-pitch)*35,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail1",-2,0,(sin(pitch)*2),cos(-pitch)*35,0,sin(-pitch)*35,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail1",-3,0,(sin(pitch)*3),cos(-pitch)*35,0,sin(-pitch)*35,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail2",-4,0,(sin(pitch)*4),cos(-pitch)*35,0,sin(-pitch)*35,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail2",-5,0,(sin(pitch)*5),cos(-pitch)*35,0,sin(-pitch)*35,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail3",-6,0,(sin(pitch)*6),cos(-pitch)*35,0,sin(-pitch)*35,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail3",-7,0,(sin(pitch)*7),cos(-pitch)*35,0,sin(-pitch)*35,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	Goto Spawn3
  Shoot36:
	PUFF A 0 A_SpawnItemEx ("ToolboxShrapnelMissile",0,0,0,cos(-pitch)*36,0,sin(-pitch)*36,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail",-1,0,(sin(pitch)*1),cos(-pitch)*36,0,sin(-pitch)*36,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail1",-2,0,(sin(pitch)*2),cos(-pitch)*36,0,sin(-pitch)*36,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail1",-3,0,(sin(pitch)*3),cos(-pitch)*36,0,sin(-pitch)*36,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail2",-4,0,(sin(pitch)*4),cos(-pitch)*36,0,sin(-pitch)*36,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail2",-5,0,(sin(pitch)*5),cos(-pitch)*36,0,sin(-pitch)*36,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail3",-6,0,(sin(pitch)*6),cos(-pitch)*36,0,sin(-pitch)*36,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail3",-7,0,(sin(pitch)*7),cos(-pitch)*36,0,sin(-pitch)*36,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	Goto Spawn3
  Shoot37:
	PUFF A 0 A_SpawnItemEx ("ToolboxShrapnelMissile",0,0,0,cos(-pitch)*37,0,sin(-pitch)*37,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail",-1,0,(sin(pitch)*1),cos(-pitch)*37,0,sin(-pitch)*37,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail1",-2,0,(sin(pitch)*2),cos(-pitch)*37,0,sin(-pitch)*37,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail1",-3,0,(sin(pitch)*3),cos(-pitch)*37,0,sin(-pitch)*37,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail2",-4,0,(sin(pitch)*4),cos(-pitch)*37,0,sin(-pitch)*37,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail2",-5,0,(sin(pitch)*5),cos(-pitch)*37,0,sin(-pitch)*37,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail3",-6,0,(sin(pitch)*6),cos(-pitch)*37,0,sin(-pitch)*37,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail3",-7,0,(sin(pitch)*7),cos(-pitch)*37,0,sin(-pitch)*37,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	Goto Spawn3
  Shoot38:
	PUFF A 0 A_SpawnItemEx ("ToolboxShrapnelMissile",0,0,0,cos(-pitch)*38,0,sin(-pitch)*38,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail",-1,0,(sin(pitch)*1),cos(-pitch)*38,0,sin(-pitch)*38,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail1",-2,0,(sin(pitch)*2),cos(-pitch)*38,0,sin(-pitch)*38,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail1",-3,0,(sin(pitch)*3),cos(-pitch)*38,0,sin(-pitch)*38,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail2",-4,0,(sin(pitch)*4),cos(-pitch)*38,0,sin(-pitch)*38,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail2",-5,0,(sin(pitch)*5),cos(-pitch)*38,0,sin(-pitch)*38,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail3",-6,0,(sin(pitch)*6),cos(-pitch)*38,0,sin(-pitch)*38,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail3",-7,0,(sin(pitch)*7),cos(-pitch)*38,0,sin(-pitch)*38,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	Goto Spawn3
  Shoot39:
	PUFF A 0 A_SpawnItemEx ("ToolboxShrapnelMissile",0,0,0,cos(-pitch)*39,0,sin(-pitch)*39,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail",-1,0,(sin(pitch)*1),cos(-pitch)*39,0,sin(-pitch)*39,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail1",-2,0,(sin(pitch)*2),cos(-pitch)*39,0,sin(-pitch)*39,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail1",-3,0,(sin(pitch)*3),cos(-pitch)*39,0,sin(-pitch)*39,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail2",-4,0,(sin(pitch)*4),cos(-pitch)*39,0,sin(-pitch)*39,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail2",-5,0,(sin(pitch)*5),cos(-pitch)*39,0,sin(-pitch)*39,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail3",-6,0,(sin(pitch)*6),cos(-pitch)*39,0,sin(-pitch)*39,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail3",-7,0,(sin(pitch)*7),cos(-pitch)*39,0,sin(-pitch)*39,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	Goto Spawn3
  Shoot40:
	PUFF A 0 A_SpawnItemEx ("ToolboxShrapnelMissile",0,0,0,cos(-pitch)*40,0,sin(-pitch)*40,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail",-1,0,(sin(pitch)*1),cos(-pitch)*40,0,sin(-pitch)*40,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail1",-2,0,(sin(pitch)*2),cos(-pitch)*40,0,sin(-pitch)*40,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail1",-3,0,(sin(pitch)*3),cos(-pitch)*40,0,sin(-pitch)*40,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail2",-4,0,(sin(pitch)*4),cos(-pitch)*40,0,sin(-pitch)*40,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail2",-5,0,(sin(pitch)*5),cos(-pitch)*40,0,sin(-pitch)*40,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail3",-6,0,(sin(pitch)*6),cos(-pitch)*40,0,sin(-pitch)*40,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail3",-7,0,(sin(pitch)*7),cos(-pitch)*40,0,sin(-pitch)*40,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	Goto Spawn3
  Shoot41:
	PUFF A 0 A_SpawnItemEx ("ToolboxShrapnelMissile",0,0,0,cos(-pitch)*41,0,sin(-pitch)*41,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail",-1,0,(sin(pitch)*1),cos(-pitch)*41,0,sin(-pitch)*41,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail1",-2,0,(sin(pitch)*2),cos(-pitch)*41,0,sin(-pitch)*41,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail1",-3,0,(sin(pitch)*3),cos(-pitch)*41,0,sin(-pitch)*41,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail2",-4,0,(sin(pitch)*4),cos(-pitch)*41,0,sin(-pitch)*41,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail2",-5,0,(sin(pitch)*5),cos(-pitch)*41,0,sin(-pitch)*41,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail3",-6,0,(sin(pitch)*6),cos(-pitch)*41,0,sin(-pitch)*41,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail3",-7,0,(sin(pitch)*7),cos(-pitch)*41,0,sin(-pitch)*41,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	Goto Spawn3
  Shoot42:
	PUFF A 0 A_SpawnItemEx ("ToolboxShrapnelMissile",0,0,0,cos(-pitch)*42,0,sin(-pitch)*42,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail",-1,0,(sin(pitch)*1),cos(-pitch)*42,0,sin(-pitch)*42,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail1",-2,0,(sin(pitch)*2),cos(-pitch)*42,0,sin(-pitch)*42,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail1",-3,0,(sin(pitch)*3),cos(-pitch)*42,0,sin(-pitch)*42,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail2",-4,0,(sin(pitch)*4),cos(-pitch)*42,0,sin(-pitch)*42,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail2",-5,0,(sin(pitch)*5),cos(-pitch)*42,0,sin(-pitch)*42,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail3",-6,0,(sin(pitch)*6),cos(-pitch)*42,0,sin(-pitch)*42,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail3",-7,0,(sin(pitch)*7),cos(-pitch)*42,0,sin(-pitch)*42,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	Goto Spawn3
  Shoot43:
	PUFF A 0 A_SpawnItemEx ("ToolboxShrapnelMissile",0,0,0,cos(-pitch)*43,0,sin(-pitch)*43,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail",-1,0,(sin(pitch)*1),cos(-pitch)*43,0,sin(-pitch)*43,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail1",-2,0,(sin(pitch)*2),cos(-pitch)*43,0,sin(-pitch)*43,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail1",-3,0,(sin(pitch)*3),cos(-pitch)*43,0,sin(-pitch)*43,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail2",-4,0,(sin(pitch)*4),cos(-pitch)*43,0,sin(-pitch)*43,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail2",-5,0,(sin(pitch)*5),cos(-pitch)*43,0,sin(-pitch)*43,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail3",-6,0,(sin(pitch)*6),cos(-pitch)*43,0,sin(-pitch)*43,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail3",-7,0,(sin(pitch)*7),cos(-pitch)*43,0,sin(-pitch)*43,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	Goto Spawn3
  Shoot44:
	PUFF A 0 A_SpawnItemEx ("ToolboxShrapnelMissile",0,0,0,cos(-pitch)*44,0,sin(-pitch)*44,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail",-1,0,(sin(pitch)*1),cos(-pitch)*44,0,sin(-pitch)*44,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail1",-2,0,(sin(pitch)*2),cos(-pitch)*44,0,sin(-pitch)*44,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail1",-3,0,(sin(pitch)*3),cos(-pitch)*44,0,sin(-pitch)*44,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail2",-4,0,(sin(pitch)*4),cos(-pitch)*44,0,sin(-pitch)*44,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail2",-5,0,(sin(pitch)*5),cos(-pitch)*44,0,sin(-pitch)*44,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail3",-6,0,(sin(pitch)*6),cos(-pitch)*44,0,sin(-pitch)*44,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail3",-7,0,(sin(pitch)*7),cos(-pitch)*44,0,sin(-pitch)*44,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	Goto Spawn3
  Shoot45:
	PUFF A 0 A_SpawnItemEx ("ToolboxShrapnelMissile",0,0,0,cos(-pitch)*45,0,sin(-pitch)*45,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail",-1,0,(sin(pitch)*1),cos(-pitch)*45,0,sin(-pitch)*45,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail1",-2,0,(sin(pitch)*2),cos(-pitch)*45,0,sin(-pitch)*45,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail1",-3,0,(sin(pitch)*3),cos(-pitch)*45,0,sin(-pitch)*45,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail2",-4,0,(sin(pitch)*4),cos(-pitch)*45,0,sin(-pitch)*45,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail2",-5,0,(sin(pitch)*5),cos(-pitch)*45,0,sin(-pitch)*45,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail3",-6,0,(sin(pitch)*6),cos(-pitch)*45,0,sin(-pitch)*45,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail3",-7,0,(sin(pitch)*7),cos(-pitch)*45,0,sin(-pitch)*45,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	Goto Spawn3
  Shoot46:
	PUFF A 0 A_SpawnItemEx ("ToolboxShrapnelMissile",0,0,0,cos(-pitch)*46,0,sin(-pitch)*46,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail",-1,0,(sin(pitch)*1),cos(-pitch)*46,0,sin(-pitch)*46,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail1",-2,0,(sin(pitch)*2),cos(-pitch)*46,0,sin(-pitch)*46,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail1",-3,0,(sin(pitch)*3),cos(-pitch)*46,0,sin(-pitch)*46,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail2",-4,0,(sin(pitch)*4),cos(-pitch)*46,0,sin(-pitch)*46,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail2",-5,0,(sin(pitch)*5),cos(-pitch)*46,0,sin(-pitch)*46,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail3",-6,0,(sin(pitch)*6),cos(-pitch)*46,0,sin(-pitch)*46,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail3",-7,0,(sin(pitch)*7),cos(-pitch)*46,0,sin(-pitch)*46,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	Goto Spawn3
  Shoot47:
	PUFF A 0 A_SpawnItemEx ("ToolboxShrapnelMissile",0,0,0,cos(-pitch)*47,0,sin(-pitch)*47,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail",-1,0,(sin(pitch)*1),cos(-pitch)*47,0,sin(-pitch)*47,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail1",-2,0,(sin(pitch)*2),cos(-pitch)*47,0,sin(-pitch)*47,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail1",-3,0,(sin(pitch)*3),cos(-pitch)*47,0,sin(-pitch)*47,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail2",-4,0,(sin(pitch)*4),cos(-pitch)*47,0,sin(-pitch)*47,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail2",-5,0,(sin(pitch)*5),cos(-pitch)*47,0,sin(-pitch)*47,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail3",-6,0,(sin(pitch)*6),cos(-pitch)*47,0,sin(-pitch)*47,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail3",-7,0,(sin(pitch)*7),cos(-pitch)*47,0,sin(-pitch)*47,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	Goto Spawn3
  Shoot48:
	PUFF A 0 A_SpawnItemEx ("ToolboxShrapnelMissile",0,0,0,cos(-pitch)*48,0,sin(-pitch)*48,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail",-1,0,(sin(pitch)*1),cos(-pitch)*48,0,sin(-pitch)*48,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail1",-2,0,(sin(pitch)*2),cos(-pitch)*48,0,sin(-pitch)*48,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail1",-3,0,(sin(pitch)*3),cos(-pitch)*48,0,sin(-pitch)*48,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail2",-4,0,(sin(pitch)*4),cos(-pitch)*48,0,sin(-pitch)*48,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail2",-5,0,(sin(pitch)*5),cos(-pitch)*48,0,sin(-pitch)*48,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail3",-6,0,(sin(pitch)*6),cos(-pitch)*48,0,sin(-pitch)*48,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail3",-7,0,(sin(pitch)*7),cos(-pitch)*48,0,sin(-pitch)*48,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	Goto Spawn3
  Shoot49:
	PUFF A 0 A_SpawnItemEx ("ToolboxShrapnelMissile",0,0,0,cos(-pitch)*49,0,sin(-pitch)*49,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail",-1,0,(sin(pitch)*1),cos(-pitch)*49,0,sin(-pitch)*49,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail1",-2,0,(sin(pitch)*2),cos(-pitch)*49,0,sin(-pitch)*49,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail1",-3,0,(sin(pitch)*3),cos(-pitch)*49,0,sin(-pitch)*49,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail2",-4,0,(sin(pitch)*4),cos(-pitch)*49,0,sin(-pitch)*49,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail2",-5,0,(sin(pitch)*5),cos(-pitch)*49,0,sin(-pitch)*49,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail3",-6,0,(sin(pitch)*6),cos(-pitch)*49,0,sin(-pitch)*49,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail3",-7,0,(sin(pitch)*7),cos(-pitch)*49,0,sin(-pitch)*49,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	Goto Spawn3
  Shoot50:
	PUFF A 0 A_SpawnItemEx ("ToolboxShrapnelMissile",0,0,0,cos(-pitch)*50,0,sin(-pitch)*50,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail",-1,0,(sin(pitch)*1),cos(-pitch)*50,0,sin(-pitch)*50,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail1",-2,0,(sin(pitch)*2),cos(-pitch)*50,0,sin(-pitch)*50,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail1",-3,0,(sin(pitch)*3),cos(-pitch)*50,0,sin(-pitch)*50,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail2",-4,0,(sin(pitch)*4),cos(-pitch)*50,0,sin(-pitch)*50,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail2",-5,0,(sin(pitch)*5),cos(-pitch)*50,0,sin(-pitch)*50,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail3",-6,0,(sin(pitch)*6),cos(-pitch)*50,0,sin(-pitch)*50,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail3",-7,0,(sin(pitch)*7),cos(-pitch)*50,0,sin(-pitch)*50,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	Goto Spawn3
  Shoot51:
	PUFF A 0 A_SpawnItemEx ("ToolboxShrapnelMissile",0,0,0,cos(-pitch)*51,0,sin(-pitch)*51,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail",-1,0,(sin(pitch)*1),cos(-pitch)*51,0,sin(-pitch)*51,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail1",-2,0,(sin(pitch)*2),cos(-pitch)*51,0,sin(-pitch)*51,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail1",-3,0,(sin(pitch)*3),cos(-pitch)*51,0,sin(-pitch)*51,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail2",-4,0,(sin(pitch)*4),cos(-pitch)*51,0,sin(-pitch)*51,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail2",-5,0,(sin(pitch)*5),cos(-pitch)*51,0,sin(-pitch)*51,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail3",-6,0,(sin(pitch)*6),cos(-pitch)*51,0,sin(-pitch)*51,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail3",-7,0,(sin(pitch)*7),cos(-pitch)*51,0,sin(-pitch)*51,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	Goto Spawn3
  Shoot52:
	PUFF A 0 A_SpawnItemEx ("ToolboxShrapnelMissile",0,0,0,cos(-pitch)*52,0,sin(-pitch)*52,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail",-1,0,(sin(pitch)*1),cos(-pitch)*52,0,sin(-pitch)*52,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail1",-2,0,(sin(pitch)*2),cos(-pitch)*52,0,sin(-pitch)*52,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail1",-3,0,(sin(pitch)*3),cos(-pitch)*52,0,sin(-pitch)*52,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail2",-4,0,(sin(pitch)*4),cos(-pitch)*52,0,sin(-pitch)*52,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail2",-5,0,(sin(pitch)*5),cos(-pitch)*52,0,sin(-pitch)*52,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail3",-6,0,(sin(pitch)*6),cos(-pitch)*52,0,sin(-pitch)*52,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail3",-7,0,(sin(pitch)*7),cos(-pitch)*52,0,sin(-pitch)*52,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	Goto Spawn3
  Shoot53:
	PUFF A 0 A_SpawnItemEx ("ToolboxShrapnelMissile",0,0,0,cos(-pitch)*53,0,sin(-pitch)*53,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail",-1,0,(sin(pitch)*1),cos(-pitch)*53,0,sin(-pitch)*53,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail1",-2,0,(sin(pitch)*2),cos(-pitch)*53,0,sin(-pitch)*53,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail1",-3,0,(sin(pitch)*3),cos(-pitch)*53,0,sin(-pitch)*53,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail2",-4,0,(sin(pitch)*4),cos(-pitch)*53,0,sin(-pitch)*53,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail2",-5,0,(sin(pitch)*5),cos(-pitch)*53,0,sin(-pitch)*53,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail3",-6,0,(sin(pitch)*6),cos(-pitch)*53,0,sin(-pitch)*53,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail3",-7,0,(sin(pitch)*7),cos(-pitch)*53,0,sin(-pitch)*53,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	Goto Spawn3
  Shoot54:
	PUFF A 0 A_SpawnItemEx ("ToolboxShrapnelMissile",0,0,0,cos(-pitch)*54,0,sin(-pitch)*54,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail",-1,0,(sin(pitch)*1),cos(-pitch)*54,0,sin(-pitch)*54,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail1",-2,0,(sin(pitch)*2),cos(-pitch)*54,0,sin(-pitch)*54,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail1",-3,0,(sin(pitch)*3),cos(-pitch)*54,0,sin(-pitch)*54,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail2",-4,0,(sin(pitch)*4),cos(-pitch)*54,0,sin(-pitch)*54,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail2",-5,0,(sin(pitch)*5),cos(-pitch)*54,0,sin(-pitch)*54,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail3",-6,0,(sin(pitch)*6),cos(-pitch)*54,0,sin(-pitch)*54,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail3",-7,0,(sin(pitch)*7),cos(-pitch)*54,0,sin(-pitch)*54,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	Goto Spawn3
  Shoot55:
	PUFF A 0 A_SpawnItemEx ("ToolboxShrapnelMissile",0,0,0,cos(-pitch)*55,0,sin(-pitch)*55,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail",-1,0,(sin(pitch)*1),cos(-pitch)*55,0,sin(-pitch)*55,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail1",-2,0,(sin(pitch)*2),cos(-pitch)*55,0,sin(-pitch)*55,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail1",-3,0,(sin(pitch)*3),cos(-pitch)*55,0,sin(-pitch)*55,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail2",-4,0,(sin(pitch)*4),cos(-pitch)*55,0,sin(-pitch)*55,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail2",-5,0,(sin(pitch)*5),cos(-pitch)*55,0,sin(-pitch)*55,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail3",-6,0,(sin(pitch)*6),cos(-pitch)*55,0,sin(-pitch)*55,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail3",-7,0,(sin(pitch)*7),cos(-pitch)*55,0,sin(-pitch)*55,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	Goto Spawn3
  Shoot56:
	PUFF A 0 A_SpawnItemEx ("ToolboxShrapnelMissile",0,0,0,cos(-pitch)*56,0,sin(-pitch)*56,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail",-1,0,(sin(pitch)*1),cos(-pitch)*56,0,sin(-pitch)*56,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail1",-2,0,(sin(pitch)*2),cos(-pitch)*56,0,sin(-pitch)*56,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail1",-3,0,(sin(pitch)*3),cos(-pitch)*56,0,sin(-pitch)*56,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail2",-4,0,(sin(pitch)*4),cos(-pitch)*56,0,sin(-pitch)*56,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail2",-5,0,(sin(pitch)*5),cos(-pitch)*56,0,sin(-pitch)*56,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail3",-6,0,(sin(pitch)*6),cos(-pitch)*56,0,sin(-pitch)*56,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail3",-7,0,(sin(pitch)*7),cos(-pitch)*56,0,sin(-pitch)*56,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	Goto Spawn3
  Shoot57:
	PUFF A 0 A_SpawnItemEx ("ToolboxShrapnelMissile",0,0,0,cos(-pitch)*57,0,sin(-pitch)*57,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail",-1,0,(sin(pitch)*1),cos(-pitch)*57,0,sin(-pitch)*57,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail1",-2,0,(sin(pitch)*2),cos(-pitch)*57,0,sin(-pitch)*57,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail1",-3,0,(sin(pitch)*3),cos(-pitch)*57,0,sin(-pitch)*57,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail2",-4,0,(sin(pitch)*4),cos(-pitch)*57,0,sin(-pitch)*57,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail2",-5,0,(sin(pitch)*5),cos(-pitch)*57,0,sin(-pitch)*57,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail3",-6,0,(sin(pitch)*6),cos(-pitch)*57,0,sin(-pitch)*57,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail3",-7,0,(sin(pitch)*7),cos(-pitch)*57,0,sin(-pitch)*57,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	Goto Spawn3
  Shoot58:
	PUFF A 0 A_SpawnItemEx ("ToolboxShrapnelMissile",0,0,0,cos(-pitch)*58,0,sin(-pitch)*58,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail",-1,0,(sin(pitch)*1),cos(-pitch)*58,0,sin(-pitch)*58,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail1",-2,0,(sin(pitch)*2),cos(-pitch)*58,0,sin(-pitch)*58,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail1",-3,0,(sin(pitch)*3),cos(-pitch)*58,0,sin(-pitch)*58,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail2",-4,0,(sin(pitch)*4),cos(-pitch)*58,0,sin(-pitch)*58,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail2",-5,0,(sin(pitch)*5),cos(-pitch)*58,0,sin(-pitch)*58,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail3",-6,0,(sin(pitch)*6),cos(-pitch)*58,0,sin(-pitch)*58,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail3",-7,0,(sin(pitch)*7),cos(-pitch)*58,0,sin(-pitch)*58,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	Goto Spawn3
  Shoot59:
	PUFF A 0 A_SpawnItemEx ("ToolboxShrapnelMissile",0,0,0,cos(-pitch)*59,0,sin(-pitch)*59,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail",-1,0,(sin(pitch)*1),cos(-pitch)*59,0,sin(-pitch)*59,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail1",-2,0,(sin(pitch)*2),cos(-pitch)*59,0,sin(-pitch)*59,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail1",-3,0,(sin(pitch)*3),cos(-pitch)*59,0,sin(-pitch)*59,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail2",-4,0,(sin(pitch)*4),cos(-pitch)*59,0,sin(-pitch)*59,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail2",-5,0,(sin(pitch)*5),cos(-pitch)*59,0,sin(-pitch)*59,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail3",-6,0,(sin(pitch)*6),cos(-pitch)*59,0,sin(-pitch)*59,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail3",-7,0,(sin(pitch)*7),cos(-pitch)*59,0,sin(-pitch)*59,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	Goto Spawn3
  Shoot60:
	PUFF A 0 A_SpawnItemEx ("ToolboxShrapnelMissile",0,0,0,cos(-pitch)*60,0,sin(-pitch)*60,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail",-1,0,(sin(pitch)*1),cos(-pitch)*60,0,sin(-pitch)*60,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail1",-2,0,(sin(pitch)*2),cos(-pitch)*60,0,sin(-pitch)*60,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail1",-3,0,(sin(pitch)*3),cos(-pitch)*60,0,sin(-pitch)*60,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail2",-4,0,(sin(pitch)*4),cos(-pitch)*60,0,sin(-pitch)*60,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail2",-5,0,(sin(pitch)*5),cos(-pitch)*60,0,sin(-pitch)*60,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail3",-6,0,(sin(pitch)*6),cos(-pitch)*60,0,sin(-pitch)*60,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail3",-7,0,(sin(pitch)*7),cos(-pitch)*60,0,sin(-pitch)*60,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	Goto Spawn3
  Spawn3:
	TNT1 A 1 A_JumpIfInventory ("ShockCanDie", 1, "Death")
	Loop
  Death:
	TNT1 A 4
	stop
	}
}

actor DummyShrapnelCoop : DummyShrapnel
{
  States
  {
  Shoot30:
	PUFF A 0 A_SpawnItemEx ("ToolboxShrapnelMissileCoop",0,0,0,cos(-pitch)*30,0,sin(-pitch)*30,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail",-1,0,(sin(pitch)*1),cos(-pitch)*30,0,sin(-pitch)*30,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail1",-2,0,(sin(pitch)*2),cos(-pitch)*30,0,sin(-pitch)*30,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail1",-3,0,(sin(pitch)*3),cos(-pitch)*30,0,sin(-pitch)*30,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail2",-4,0,(sin(pitch)*4),cos(-pitch)*30,0,sin(-pitch)*30,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail2",-5,0,(sin(pitch)*5),cos(-pitch)*30,0,sin(-pitch)*30,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail3",-6,0,(sin(pitch)*6),cos(-pitch)*30,0,sin(-pitch)*30,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail3",-7,0,(sin(pitch)*7),cos(-pitch)*30,0,sin(-pitch)*30,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	Goto Spawn3
  Shoot31:
	PUFF A 0 A_SpawnItemEx ("ToolboxShrapnelMissileCoop",0,0,0,cos(-pitch)*31,0,sin(-pitch)*31,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail",-1,0,(sin(pitch)*1),cos(-pitch)*31,0,sin(-pitch)*31,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail1",-2,0,(sin(pitch)*2),cos(-pitch)*31,0,sin(-pitch)*31,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail1",-3,0,(sin(pitch)*3),cos(-pitch)*31,0,sin(-pitch)*31,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail2",-4,0,(sin(pitch)*4),cos(-pitch)*31,0,sin(-pitch)*31,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail2",-5,0,(sin(pitch)*5),cos(-pitch)*31,0,sin(-pitch)*31,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail3",-6,0,(sin(pitch)*6),cos(-pitch)*31,0,sin(-pitch)*31,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail3",-7,0,(sin(pitch)*7),cos(-pitch)*31,0,sin(-pitch)*31,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	Goto Spawn3
  Shoot32:
	PUFF A 0 A_SpawnItemEx ("ToolboxShrapnelMissileCoop",0,0,0,cos(-pitch)*32,0,sin(-pitch)*32,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail",-1,0,(sin(pitch)*1),cos(-pitch)*32,0,sin(-pitch)*32,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail1",-2,0,(sin(pitch)*2),cos(-pitch)*32,0,sin(-pitch)*32,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail1",-3,0,(sin(pitch)*3),cos(-pitch)*32,0,sin(-pitch)*32,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail2",-4,0,(sin(pitch)*4),cos(-pitch)*32,0,sin(-pitch)*32,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail2",-5,0,(sin(pitch)*5),cos(-pitch)*32,0,sin(-pitch)*32,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail3",-6,0,(sin(pitch)*6),cos(-pitch)*32,0,sin(-pitch)*32,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail3",-7,0,(sin(pitch)*7),cos(-pitch)*32,0,sin(-pitch)*32,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	Goto Spawn3
  Shoot33:
	PUFF A 0 A_SpawnItemEx ("ToolboxShrapnelMissileCoop",0,0,0,cos(-pitch)*33,0,sin(-pitch)*33,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail",-1,0,(sin(pitch)*1),cos(-pitch)*33,0,sin(-pitch)*33,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail1",-2,0,(sin(pitch)*2),cos(-pitch)*33,0,sin(-pitch)*33,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail1",-3,0,(sin(pitch)*3),cos(-pitch)*33,0,sin(-pitch)*33,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail2",-4,0,(sin(pitch)*4),cos(-pitch)*33,0,sin(-pitch)*33,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail2",-5,0,(sin(pitch)*5),cos(-pitch)*33,0,sin(-pitch)*33,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail3",-6,0,(sin(pitch)*6),cos(-pitch)*33,0,sin(-pitch)*33,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail3",-7,0,(sin(pitch)*7),cos(-pitch)*33,0,sin(-pitch)*33,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	Goto Spawn3
  Shoot34:
	PUFF A 0 A_SpawnItemEx ("ToolboxShrapnelMissileCoop",0,0,0,cos(-pitch)*34,0,sin(-pitch)*34,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail",-1,0,(sin(pitch)*1),cos(-pitch)*34,0,sin(-pitch)*34,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail1",-2,0,(sin(pitch)*2),cos(-pitch)*34,0,sin(-pitch)*34,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail1",-3,0,(sin(pitch)*3),cos(-pitch)*34,0,sin(-pitch)*34,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail2",-4,0,(sin(pitch)*4),cos(-pitch)*34,0,sin(-pitch)*34,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail2",-5,0,(sin(pitch)*5),cos(-pitch)*34,0,sin(-pitch)*34,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail3",-6,0,(sin(pitch)*6),cos(-pitch)*34,0,sin(-pitch)*34,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail3",-7,0,(sin(pitch)*7),cos(-pitch)*34,0,sin(-pitch)*34,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	Goto Spawn3
  Shoot35:
	PUFF A 0 A_SpawnItemEx ("ToolboxShrapnelMissileCoop",0,0,0,cos(-pitch)*35,0,sin(-pitch)*35,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail",-1,0,(sin(pitch)*1),cos(-pitch)*35,0,sin(-pitch)*35,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail1",-2,0,(sin(pitch)*2),cos(-pitch)*35,0,sin(-pitch)*35,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail1",-3,0,(sin(pitch)*3),cos(-pitch)*35,0,sin(-pitch)*35,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail2",-4,0,(sin(pitch)*4),cos(-pitch)*35,0,sin(-pitch)*35,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail2",-5,0,(sin(pitch)*5),cos(-pitch)*35,0,sin(-pitch)*35,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail3",-6,0,(sin(pitch)*6),cos(-pitch)*35,0,sin(-pitch)*35,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail3",-7,0,(sin(pitch)*7),cos(-pitch)*35,0,sin(-pitch)*35,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	Goto Spawn3
  Shoot36:
	PUFF A 0 A_SpawnItemEx ("ToolboxShrapnelMissileCoop",0,0,0,cos(-pitch)*36,0,sin(-pitch)*36,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail",-1,0,(sin(pitch)*1),cos(-pitch)*36,0,sin(-pitch)*36,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail1",-2,0,(sin(pitch)*2),cos(-pitch)*36,0,sin(-pitch)*36,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail1",-3,0,(sin(pitch)*3),cos(-pitch)*36,0,sin(-pitch)*36,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail2",-4,0,(sin(pitch)*4),cos(-pitch)*36,0,sin(-pitch)*36,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail2",-5,0,(sin(pitch)*5),cos(-pitch)*36,0,sin(-pitch)*36,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail3",-6,0,(sin(pitch)*6),cos(-pitch)*36,0,sin(-pitch)*36,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail3",-7,0,(sin(pitch)*7),cos(-pitch)*36,0,sin(-pitch)*36,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	Goto Spawn3
  Shoot37:
	PUFF A 0 A_SpawnItemEx ("ToolboxShrapnelMissileCoop",0,0,0,cos(-pitch)*37,0,sin(-pitch)*37,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail",-1,0,(sin(pitch)*1),cos(-pitch)*37,0,sin(-pitch)*37,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail1",-2,0,(sin(pitch)*2),cos(-pitch)*37,0,sin(-pitch)*37,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail1",-3,0,(sin(pitch)*3),cos(-pitch)*37,0,sin(-pitch)*37,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail2",-4,0,(sin(pitch)*4),cos(-pitch)*37,0,sin(-pitch)*37,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail2",-5,0,(sin(pitch)*5),cos(-pitch)*37,0,sin(-pitch)*37,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail3",-6,0,(sin(pitch)*6),cos(-pitch)*37,0,sin(-pitch)*37,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail3",-7,0,(sin(pitch)*7),cos(-pitch)*37,0,sin(-pitch)*37,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	Goto Spawn3
  Shoot38:
	PUFF A 0 A_SpawnItemEx ("ToolboxShrapnelMissileCoop",0,0,0,cos(-pitch)*38,0,sin(-pitch)*38,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail",-1,0,(sin(pitch)*1),cos(-pitch)*38,0,sin(-pitch)*38,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail1",-2,0,(sin(pitch)*2),cos(-pitch)*38,0,sin(-pitch)*38,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail1",-3,0,(sin(pitch)*3),cos(-pitch)*38,0,sin(-pitch)*38,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail2",-4,0,(sin(pitch)*4),cos(-pitch)*38,0,sin(-pitch)*38,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail2",-5,0,(sin(pitch)*5),cos(-pitch)*38,0,sin(-pitch)*38,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail3",-6,0,(sin(pitch)*6),cos(-pitch)*38,0,sin(-pitch)*38,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail3",-7,0,(sin(pitch)*7),cos(-pitch)*38,0,sin(-pitch)*38,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	Goto Spawn3
  Shoot39:
	PUFF A 0 A_SpawnItemEx ("ToolboxShrapnelMissileCoop",0,0,0,cos(-pitch)*39,0,sin(-pitch)*39,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail",-1,0,(sin(pitch)*1),cos(-pitch)*39,0,sin(-pitch)*39,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail1",-2,0,(sin(pitch)*2),cos(-pitch)*39,0,sin(-pitch)*39,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail1",-3,0,(sin(pitch)*3),cos(-pitch)*39,0,sin(-pitch)*39,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail2",-4,0,(sin(pitch)*4),cos(-pitch)*39,0,sin(-pitch)*39,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail2",-5,0,(sin(pitch)*5),cos(-pitch)*39,0,sin(-pitch)*39,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail3",-6,0,(sin(pitch)*6),cos(-pitch)*39,0,sin(-pitch)*39,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail3",-7,0,(sin(pitch)*7),cos(-pitch)*39,0,sin(-pitch)*39,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	Goto Spawn3
  Shoot40:
	PUFF A 0 A_SpawnItemEx ("ToolboxShrapnelMissileCoop",0,0,0,cos(-pitch)*40,0,sin(-pitch)*40,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail",-1,0,(sin(pitch)*1),cos(-pitch)*40,0,sin(-pitch)*40,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail1",-2,0,(sin(pitch)*2),cos(-pitch)*40,0,sin(-pitch)*40,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail1",-3,0,(sin(pitch)*3),cos(-pitch)*40,0,sin(-pitch)*40,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail2",-4,0,(sin(pitch)*4),cos(-pitch)*40,0,sin(-pitch)*40,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail2",-5,0,(sin(pitch)*5),cos(-pitch)*40,0,sin(-pitch)*40,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail3",-6,0,(sin(pitch)*6),cos(-pitch)*40,0,sin(-pitch)*40,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail3",-7,0,(sin(pitch)*7),cos(-pitch)*40,0,sin(-pitch)*40,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	Goto Spawn3
  Shoot41:
	PUFF A 0 A_SpawnItemEx ("ToolboxShrapnelMissileCoop",0,0,0,cos(-pitch)*41,0,sin(-pitch)*41,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail",-1,0,(sin(pitch)*1),cos(-pitch)*41,0,sin(-pitch)*41,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail1",-2,0,(sin(pitch)*2),cos(-pitch)*41,0,sin(-pitch)*41,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail1",-3,0,(sin(pitch)*3),cos(-pitch)*41,0,sin(-pitch)*41,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail2",-4,0,(sin(pitch)*4),cos(-pitch)*41,0,sin(-pitch)*41,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail2",-5,0,(sin(pitch)*5),cos(-pitch)*41,0,sin(-pitch)*41,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail3",-6,0,(sin(pitch)*6),cos(-pitch)*41,0,sin(-pitch)*41,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail3",-7,0,(sin(pitch)*7),cos(-pitch)*41,0,sin(-pitch)*41,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	Goto Spawn3
  Shoot42:
	PUFF A 0 A_SpawnItemEx ("ToolboxShrapnelMissileCoop",0,0,0,cos(-pitch)*42,0,sin(-pitch)*42,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail",-1,0,(sin(pitch)*1),cos(-pitch)*42,0,sin(-pitch)*42,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail1",-2,0,(sin(pitch)*2),cos(-pitch)*42,0,sin(-pitch)*42,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail1",-3,0,(sin(pitch)*3),cos(-pitch)*42,0,sin(-pitch)*42,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail2",-4,0,(sin(pitch)*4),cos(-pitch)*42,0,sin(-pitch)*42,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail2",-5,0,(sin(pitch)*5),cos(-pitch)*42,0,sin(-pitch)*42,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail3",-6,0,(sin(pitch)*6),cos(-pitch)*42,0,sin(-pitch)*42,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail3",-7,0,(sin(pitch)*7),cos(-pitch)*42,0,sin(-pitch)*42,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	Goto Spawn3
  Shoot43:
	PUFF A 0 A_SpawnItemEx ("ToolboxShrapnelMissileCoop",0,0,0,cos(-pitch)*43,0,sin(-pitch)*43,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail",-1,0,(sin(pitch)*1),cos(-pitch)*43,0,sin(-pitch)*43,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail1",-2,0,(sin(pitch)*2),cos(-pitch)*43,0,sin(-pitch)*43,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail1",-3,0,(sin(pitch)*3),cos(-pitch)*43,0,sin(-pitch)*43,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail2",-4,0,(sin(pitch)*4),cos(-pitch)*43,0,sin(-pitch)*43,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail2",-5,0,(sin(pitch)*5),cos(-pitch)*43,0,sin(-pitch)*43,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail3",-6,0,(sin(pitch)*6),cos(-pitch)*43,0,sin(-pitch)*43,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail3",-7,0,(sin(pitch)*7),cos(-pitch)*43,0,sin(-pitch)*43,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	Goto Spawn3
  Shoot44:
	PUFF A 0 A_SpawnItemEx ("ToolboxShrapnelMissileCoop",0,0,0,cos(-pitch)*44,0,sin(-pitch)*44,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail",-1,0,(sin(pitch)*1),cos(-pitch)*44,0,sin(-pitch)*44,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail1",-2,0,(sin(pitch)*2),cos(-pitch)*44,0,sin(-pitch)*44,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail1",-3,0,(sin(pitch)*3),cos(-pitch)*44,0,sin(-pitch)*44,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail2",-4,0,(sin(pitch)*4),cos(-pitch)*44,0,sin(-pitch)*44,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail2",-5,0,(sin(pitch)*5),cos(-pitch)*44,0,sin(-pitch)*44,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail3",-6,0,(sin(pitch)*6),cos(-pitch)*44,0,sin(-pitch)*44,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail3",-7,0,(sin(pitch)*7),cos(-pitch)*44,0,sin(-pitch)*44,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	Goto Spawn3
  Shoot45:
	PUFF A 0 A_SpawnItemEx ("ToolboxShrapnelMissileCoop",0,0,0,cos(-pitch)*45,0,sin(-pitch)*45,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail",-1,0,(sin(pitch)*1),cos(-pitch)*45,0,sin(-pitch)*45,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail1",-2,0,(sin(pitch)*2),cos(-pitch)*45,0,sin(-pitch)*45,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail1",-3,0,(sin(pitch)*3),cos(-pitch)*45,0,sin(-pitch)*45,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail2",-4,0,(sin(pitch)*4),cos(-pitch)*45,0,sin(-pitch)*45,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail2",-5,0,(sin(pitch)*5),cos(-pitch)*45,0,sin(-pitch)*45,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail3",-6,0,(sin(pitch)*6),cos(-pitch)*45,0,sin(-pitch)*45,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail3",-7,0,(sin(pitch)*7),cos(-pitch)*45,0,sin(-pitch)*45,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	Goto Spawn3
  Shoot46:
	PUFF A 0 A_SpawnItemEx ("ToolboxShrapnelMissileCoop",0,0,0,cos(-pitch)*46,0,sin(-pitch)*46,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail",-1,0,(sin(pitch)*1),cos(-pitch)*46,0,sin(-pitch)*46,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail1",-2,0,(sin(pitch)*2),cos(-pitch)*46,0,sin(-pitch)*46,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail1",-3,0,(sin(pitch)*3),cos(-pitch)*46,0,sin(-pitch)*46,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail2",-4,0,(sin(pitch)*4),cos(-pitch)*46,0,sin(-pitch)*46,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail2",-5,0,(sin(pitch)*5),cos(-pitch)*46,0,sin(-pitch)*46,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail3",-6,0,(sin(pitch)*6),cos(-pitch)*46,0,sin(-pitch)*46,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail3",-7,0,(sin(pitch)*7),cos(-pitch)*46,0,sin(-pitch)*46,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	Goto Spawn3
  Shoot47:
	PUFF A 0 A_SpawnItemEx ("ToolboxShrapnelMissileCoop",0,0,0,cos(-pitch)*47,0,sin(-pitch)*47,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail",-1,0,(sin(pitch)*1),cos(-pitch)*47,0,sin(-pitch)*47,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail1",-2,0,(sin(pitch)*2),cos(-pitch)*47,0,sin(-pitch)*47,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail1",-3,0,(sin(pitch)*3),cos(-pitch)*47,0,sin(-pitch)*47,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail2",-4,0,(sin(pitch)*4),cos(-pitch)*47,0,sin(-pitch)*47,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail2",-5,0,(sin(pitch)*5),cos(-pitch)*47,0,sin(-pitch)*47,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail3",-6,0,(sin(pitch)*6),cos(-pitch)*47,0,sin(-pitch)*47,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail3",-7,0,(sin(pitch)*7),cos(-pitch)*47,0,sin(-pitch)*47,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	Goto Spawn3
  Shoot48:
	PUFF A 0 A_SpawnItemEx ("ToolboxShrapnelMissileCoop",0,0,0,cos(-pitch)*48,0,sin(-pitch)*48,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail",-1,0,(sin(pitch)*1),cos(-pitch)*48,0,sin(-pitch)*48,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail1",-2,0,(sin(pitch)*2),cos(-pitch)*48,0,sin(-pitch)*48,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail1",-3,0,(sin(pitch)*3),cos(-pitch)*48,0,sin(-pitch)*48,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail2",-4,0,(sin(pitch)*4),cos(-pitch)*48,0,sin(-pitch)*48,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail2",-5,0,(sin(pitch)*5),cos(-pitch)*48,0,sin(-pitch)*48,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail3",-6,0,(sin(pitch)*6),cos(-pitch)*48,0,sin(-pitch)*48,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail3",-7,0,(sin(pitch)*7),cos(-pitch)*48,0,sin(-pitch)*48,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	Goto Spawn3
  Shoot49:
	PUFF A 0 A_SpawnItemEx ("ToolboxShrapnelMissileCoop",0,0,0,cos(-pitch)*49,0,sin(-pitch)*49,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail",-1,0,(sin(pitch)*1),cos(-pitch)*49,0,sin(-pitch)*49,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail1",-2,0,(sin(pitch)*2),cos(-pitch)*49,0,sin(-pitch)*49,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail1",-3,0,(sin(pitch)*3),cos(-pitch)*49,0,sin(-pitch)*49,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail2",-4,0,(sin(pitch)*4),cos(-pitch)*49,0,sin(-pitch)*49,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail2",-5,0,(sin(pitch)*5),cos(-pitch)*49,0,sin(-pitch)*49,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail3",-6,0,(sin(pitch)*6),cos(-pitch)*49,0,sin(-pitch)*49,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail3",-7,0,(sin(pitch)*7),cos(-pitch)*49,0,sin(-pitch)*49,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	Goto Spawn3
  Shoot50:
	PUFF A 0 A_SpawnItemEx ("ToolboxShrapnelMissileCoop",0,0,0,cos(-pitch)*50,0,sin(-pitch)*50,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail",-1,0,(sin(pitch)*1),cos(-pitch)*50,0,sin(-pitch)*50,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail1",-2,0,(sin(pitch)*2),cos(-pitch)*50,0,sin(-pitch)*50,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail1",-3,0,(sin(pitch)*3),cos(-pitch)*50,0,sin(-pitch)*50,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail2",-4,0,(sin(pitch)*4),cos(-pitch)*50,0,sin(-pitch)*50,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail2",-5,0,(sin(pitch)*5),cos(-pitch)*50,0,sin(-pitch)*50,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail3",-6,0,(sin(pitch)*6),cos(-pitch)*50,0,sin(-pitch)*50,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail3",-7,0,(sin(pitch)*7),cos(-pitch)*50,0,sin(-pitch)*50,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	Goto Spawn3
  Shoot51:
	PUFF A 0 A_SpawnItemEx ("ToolboxShrapnelMissileCoop",0,0,0,cos(-pitch)*51,0,sin(-pitch)*51,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail",-1,0,(sin(pitch)*1),cos(-pitch)*51,0,sin(-pitch)*51,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail1",-2,0,(sin(pitch)*2),cos(-pitch)*51,0,sin(-pitch)*51,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail1",-3,0,(sin(pitch)*3),cos(-pitch)*51,0,sin(-pitch)*51,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail2",-4,0,(sin(pitch)*4),cos(-pitch)*51,0,sin(-pitch)*51,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail2",-5,0,(sin(pitch)*5),cos(-pitch)*51,0,sin(-pitch)*51,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail3",-6,0,(sin(pitch)*6),cos(-pitch)*51,0,sin(-pitch)*51,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail3",-7,0,(sin(pitch)*7),cos(-pitch)*51,0,sin(-pitch)*51,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	Goto Spawn3
  Shoot52:
	PUFF A 0 A_SpawnItemEx ("ToolboxShrapnelMissileCoop",0,0,0,cos(-pitch)*52,0,sin(-pitch)*52,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail",-1,0,(sin(pitch)*1),cos(-pitch)*52,0,sin(-pitch)*52,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail1",-2,0,(sin(pitch)*2),cos(-pitch)*52,0,sin(-pitch)*52,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail1",-3,0,(sin(pitch)*3),cos(-pitch)*52,0,sin(-pitch)*52,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail2",-4,0,(sin(pitch)*4),cos(-pitch)*52,0,sin(-pitch)*52,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail2",-5,0,(sin(pitch)*5),cos(-pitch)*52,0,sin(-pitch)*52,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail3",-6,0,(sin(pitch)*6),cos(-pitch)*52,0,sin(-pitch)*52,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail3",-7,0,(sin(pitch)*7),cos(-pitch)*52,0,sin(-pitch)*52,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	Goto Spawn3
  Shoot53:
	PUFF A 0 A_SpawnItemEx ("ToolboxShrapnelMissileCoop",0,0,0,cos(-pitch)*53,0,sin(-pitch)*53,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail",-1,0,(sin(pitch)*1),cos(-pitch)*53,0,sin(-pitch)*53,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail1",-2,0,(sin(pitch)*2),cos(-pitch)*53,0,sin(-pitch)*53,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail1",-3,0,(sin(pitch)*3),cos(-pitch)*53,0,sin(-pitch)*53,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail2",-4,0,(sin(pitch)*4),cos(-pitch)*53,0,sin(-pitch)*53,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail2",-5,0,(sin(pitch)*5),cos(-pitch)*53,0,sin(-pitch)*53,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail3",-6,0,(sin(pitch)*6),cos(-pitch)*53,0,sin(-pitch)*53,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail3",-7,0,(sin(pitch)*7),cos(-pitch)*53,0,sin(-pitch)*53,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	Goto Spawn3
  Shoot54:
	PUFF A 0 A_SpawnItemEx ("ToolboxShrapnelMissileCoop",0,0,0,cos(-pitch)*54,0,sin(-pitch)*54,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail",-1,0,(sin(pitch)*1),cos(-pitch)*54,0,sin(-pitch)*54,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail1",-2,0,(sin(pitch)*2),cos(-pitch)*54,0,sin(-pitch)*54,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail1",-3,0,(sin(pitch)*3),cos(-pitch)*54,0,sin(-pitch)*54,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail2",-4,0,(sin(pitch)*4),cos(-pitch)*54,0,sin(-pitch)*54,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail2",-5,0,(sin(pitch)*5),cos(-pitch)*54,0,sin(-pitch)*54,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail3",-6,0,(sin(pitch)*6),cos(-pitch)*54,0,sin(-pitch)*54,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail3",-7,0,(sin(pitch)*7),cos(-pitch)*54,0,sin(-pitch)*54,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	Goto Spawn3
  Shoot55:
	PUFF A 0 A_SpawnItemEx ("ToolboxShrapnelMissileCoop",0,0,0,cos(-pitch)*55,0,sin(-pitch)*55,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail",-1,0,(sin(pitch)*1),cos(-pitch)*55,0,sin(-pitch)*55,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail1",-2,0,(sin(pitch)*2),cos(-pitch)*55,0,sin(-pitch)*55,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail1",-3,0,(sin(pitch)*3),cos(-pitch)*55,0,sin(-pitch)*55,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail2",-4,0,(sin(pitch)*4),cos(-pitch)*55,0,sin(-pitch)*55,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail2",-5,0,(sin(pitch)*5),cos(-pitch)*55,0,sin(-pitch)*55,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail3",-6,0,(sin(pitch)*6),cos(-pitch)*55,0,sin(-pitch)*55,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail3",-7,0,(sin(pitch)*7),cos(-pitch)*55,0,sin(-pitch)*55,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	Goto Spawn3
  Shoot56:
	PUFF A 0 A_SpawnItemEx ("ToolboxShrapnelMissileCoop",0,0,0,cos(-pitch)*56,0,sin(-pitch)*56,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail",-1,0,(sin(pitch)*1),cos(-pitch)*56,0,sin(-pitch)*56,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail1",-2,0,(sin(pitch)*2),cos(-pitch)*56,0,sin(-pitch)*56,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail1",-3,0,(sin(pitch)*3),cos(-pitch)*56,0,sin(-pitch)*56,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail2",-4,0,(sin(pitch)*4),cos(-pitch)*56,0,sin(-pitch)*56,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail2",-5,0,(sin(pitch)*5),cos(-pitch)*56,0,sin(-pitch)*56,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail3",-6,0,(sin(pitch)*6),cos(-pitch)*56,0,sin(-pitch)*56,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail3",-7,0,(sin(pitch)*7),cos(-pitch)*56,0,sin(-pitch)*56,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	Goto Spawn3
  Shoot57:
	PUFF A 0 A_SpawnItemEx ("ToolboxShrapnelMissileCoop",0,0,0,cos(-pitch)*57,0,sin(-pitch)*57,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail",-1,0,(sin(pitch)*1),cos(-pitch)*57,0,sin(-pitch)*57,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail1",-2,0,(sin(pitch)*2),cos(-pitch)*57,0,sin(-pitch)*57,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail1",-3,0,(sin(pitch)*3),cos(-pitch)*57,0,sin(-pitch)*57,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail2",-4,0,(sin(pitch)*4),cos(-pitch)*57,0,sin(-pitch)*57,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail2",-5,0,(sin(pitch)*5),cos(-pitch)*57,0,sin(-pitch)*57,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail3",-6,0,(sin(pitch)*6),cos(-pitch)*57,0,sin(-pitch)*57,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail3",-7,0,(sin(pitch)*7),cos(-pitch)*57,0,sin(-pitch)*57,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	Goto Spawn3
  Shoot58:
	PUFF A 0 A_SpawnItemEx ("ToolboxShrapnelMissileCoop",0,0,0,cos(-pitch)*58,0,sin(-pitch)*58,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail",-1,0,(sin(pitch)*1),cos(-pitch)*58,0,sin(-pitch)*58,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail1",-2,0,(sin(pitch)*2),cos(-pitch)*58,0,sin(-pitch)*58,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail1",-3,0,(sin(pitch)*3),cos(-pitch)*58,0,sin(-pitch)*58,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail2",-4,0,(sin(pitch)*4),cos(-pitch)*58,0,sin(-pitch)*58,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail2",-5,0,(sin(pitch)*5),cos(-pitch)*58,0,sin(-pitch)*58,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail3",-6,0,(sin(pitch)*6),cos(-pitch)*58,0,sin(-pitch)*58,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail3",-7,0,(sin(pitch)*7),cos(-pitch)*58,0,sin(-pitch)*58,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	Goto Spawn3
  Shoot59:
	PUFF A 0 A_SpawnItemEx ("ToolboxShrapnelMissileCoop",0,0,0,cos(-pitch)*59,0,sin(-pitch)*59,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail",-1,0,(sin(pitch)*1),cos(-pitch)*59,0,sin(-pitch)*59,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail1",-2,0,(sin(pitch)*2),cos(-pitch)*59,0,sin(-pitch)*59,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail1",-3,0,(sin(pitch)*3),cos(-pitch)*59,0,sin(-pitch)*59,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail2",-4,0,(sin(pitch)*4),cos(-pitch)*59,0,sin(-pitch)*59,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail2",-5,0,(sin(pitch)*5),cos(-pitch)*59,0,sin(-pitch)*59,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail3",-6,0,(sin(pitch)*6),cos(-pitch)*59,0,sin(-pitch)*59,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail3",-7,0,(sin(pitch)*7),cos(-pitch)*59,0,sin(-pitch)*59,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	Goto Spawn3
  Shoot60:
	PUFF A 0 A_SpawnItemEx ("ToolboxShrapnelMissileCoop",0,0,0,cos(-pitch)*60,0,sin(-pitch)*60,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail",-1,0,(sin(pitch)*1),cos(-pitch)*60,0,sin(-pitch)*60,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail1",-2,0,(sin(pitch)*2),cos(-pitch)*60,0,sin(-pitch)*60,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail1",-3,0,(sin(pitch)*3),cos(-pitch)*60,0,sin(-pitch)*60,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail2",-4,0,(sin(pitch)*4),cos(-pitch)*60,0,sin(-pitch)*60,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail2",-5,0,(sin(pitch)*5),cos(-pitch)*60,0,sin(-pitch)*60,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail3",-6,0,(sin(pitch)*6),cos(-pitch)*60,0,sin(-pitch)*60,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	PUFF A 0 A_SpawnItemEx ("ShrapnelTrail3",-7,0,(sin(pitch)*7),cos(-pitch)*60,0,sin(-pitch)*60,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	Goto Spawn3
	}
}

actor ToolboxShrapnelMissile : FastProjectile
{
  Damage 5
  DamageType "Shrapnel"
  Radius 3
  Height 6
  Speed 50 //Doesn't actually do anything here
  Scale 0.4
  Projectile
  RenderStyle "Add"
  Alpha 0.5
  +BLOODSPLATTER
  Species "Player"
  +THRUSPECIES
  +BRIGHT
  //Alpha 1.0
  Decal Bulletchip
  States
  {
  Spawn:
	SHAP A 1 Bright A_ChangeFlag("THRUSPECIES",0)
	loop
  Death:
	SHAP A 1 A_GiveToTarget("ShockCanDie", 1)
	
	TNT1 A 0 A_SpawnItemEx("ShrapnelShooter1",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION)
	TNT1 A 0 A_SpawnItemEx("ShrapnelShooter2",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION)
	TNT1 A 0 A_SpawnItemEx("ShrapnelShooter3",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION)

	TNT1 A 0 A_Explode(2,130)
	TNT1 A 0 A_Explode(2,130)
	TNT1 A 0 A_Explode(2,130)
	TNT1 A 0 A_Explode(2,130)
	TNT1 A 2 A_Explode(2,130)  //Light("SmallHellFireShellLight")
	TNT1 A 0 A_PlaySound("toolbox/nailgunimpact")
	stop
   XDeath:
	SHAP A 1 A_GiveToTarget("ShockCanDie", 1)
	
	TNT1 A 0 A_SpawnItemEx("ShrapnelShooter1",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION)
	TNT1 A 0 A_SpawnItemEx("ShrapnelShooter2",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION)
	TNT1 A 0 A_SpawnItemEx("ShrapnelShooter3",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION)

	TNT1 A 0 A_Explode(2,130)
	TNT1 A 0 A_Explode(2,130)
	TNT1 A 0 A_Explode(2,130)
	TNT1 A 0 A_Explode(2,130)
	TNT1 A 2 A_Explode(2,130)  //Light("SmallHellFireShellLight")
	TNT1 A 0 A_PlaySound("toolbox/nailgunflesh")
	stop

	}
}

actor ToolboxShrapnelMissileCoop : ToolboxShrapnelMissile
{
  DamageType "Player"
  Species "Player"
  +THRUSPECIES
  States
  {
  Spawn:
	SHAP A 1 Bright
	loop
  }
}

ACTOR ShrapnelShooter1
{
  +NOINTERACTION
  +THRUACTORS
  +NOCLIP
  States
  {
  Spawn:
    TNT1 A 0
	TNT1 A 0
	TNT1 A 0
	SHAP A 0 A_SpawnItemEx("ShrapnelScatter1",0,0,0,cos(-pitch+Random(-90,90))*3,0,sin(-pitch+Random(-90,90))*3,Random(-180,180),SXF_NOCHECKPOSITION)
	SHAP A 0 A_SpawnItemEx("ShrapnelScatter1",0,0,0,cos(-pitch+Random(-90,90))*3,0,sin(-pitch+Random(-90,90))*3,Random(-180,180),SXF_NOCHECKPOSITION)
	SHAP A 0 A_SpawnItemEx("ShrapnelScatter1",0,0,0,cos(-pitch+Random(-90,90))*3,0,sin(-pitch+Random(-90,90))*3,Random(-180,180),SXF_NOCHECKPOSITION)
    TNT1 A 2
	Stop
  }
}

ACTOR ShrapnelShooter2
{
  +NOINTERACTION
  +THRUACTORS
  +NOCLIP
  States
  {
  Spawn:
    TNT1 A 0 
	TNT1 A 0 
	TNT1 A 0
	TNT1 A 0
	TNT1 A 0 ACS_ExecuteWithResult(857,12)
	//TNT1 A 0 A_JumpIf(ACS_ExecuteWithResult(857,11) == 1,"Toaster1")
	//TNT1 A 0 A_JumpIf(ACS_ExecuteWithResult(857,11) >= 2,"Toaster2")
	Goto SpawnAfterScript
  Toaster1:
    Goto SpawnAfterScript
  Toaster2:
    TNT1 A 0
	Stop
  SpawnAfterScript:
    TNT1 A 0
	TNT1 A 0
	TNT1 A 0
	TNT1 A 0 A_SpawnItemEx("ShrapnelScatter2",0,0,0,cos(-pitch+Random(-15,15)+22.5)*3,0,sin(-pitch+Random(-15,15)+22.5)*3,22.5+Random(-15,15),SXF_NOCHECKPOSITION)
	TNT1 A 0 A_SpawnItemEx("ShrapnelScatter2",0,0,0,cos(-pitch+Random(-15,15)+22.5)*3,0,sin(-pitch+Random(-15,15)+22.5)*3,-22.5+Random(-15,15),SXF_NOCHECKPOSITION)
	TNT1 A 0 A_SpawnItemEx("ShrapnelScatter2",0,0,0,cos(-pitch+Random(-15,15)-22.5)*3,0,sin(-pitch+Random(-15,15)-22.5)*3,-22.5+Random(-15,15),SXF_NOCHECKPOSITION)
	TNT1 A 0 A_SpawnItemEx("ShrapnelScatter2",0,0,0,cos(-pitch+Random(-15,15)-22.5)*3,0,sin(-pitch+Random(-15,15)-22.5)*3,22.5+Random(-15,15),SXF_NOCHECKPOSITION)
	TNT1 A 0 A_SpawnItemEx("ShrapnelScatter2",0,0,0,-(cos(-pitch+Random(-15,15)+22.5)*3),0,-(sin(-pitch+Random(-15,15)+22.5)*3),-22.5+Random(-15,15),SXF_NOCHECKPOSITION)
	TNT1 A 0 A_SpawnItemEx("ShrapnelScatter2",0,0,0,-(cos(-pitch+Random(-15,15)+22.5)*3),0,-(sin(-pitch+Random(-15,15)+22.5)*3),22.5+Random(-15,15),SXF_NOCHECKPOSITION)
	TNT1 A 0 A_SpawnItemEx("ShrapnelScatter2",0,0,0,-(cos(-pitch+Random(-15,15)-22.5)*3),0,-(sin(-pitch+Random(-15,15)-22.5)*3),22.5+Random(-15,15),SXF_NOCHECKPOSITION)
	TNT1 A 0 A_SpawnItemEx("ShrapnelScatter2",0,0,0,-(cos(-pitch+Random(-15,15)-22.5)*3),0,-(sin(-pitch+Random(-15,15)-22.5)*3),-22.5+Random(-15,15),SXF_NOCHECKPOSITION)
	TNT1 A 0 A_SpawnItemEx("ShrapnelScatter2",0,0,0,-(cos(-pitch+Random(-15,15)+90)*3),0,-(sin(-pitch+Random(-15,15)+90)*3),0+Random(-15,15),SXF_NOCHECKPOSITION)
	TNT1 A 0 A_SpawnItemEx("ShrapnelScatter2",0,0,0,-(cos(-pitch+Random(-15,15))*3),0,-(sin(-pitch+Random(-15,15))*3),-180+Random(-15,15),SXF_NOCHECKPOSITION)
	TNT1 A 0 A_SpawnItemEx("ShrapnelScatter2",0,0,0,-(cos(-pitch+Random(-15,15))*3),0,-(sin(-pitch+Random(-15,15))*3),-90+Random(-15,15),SXF_NOCHECKPOSITION)
    TNT1 A 2
	Stop
  }
}

ACTOR ShrapnelShooter3
{
  +NOINTERACTION
  +THRUACTORS
  +NOCLIP
  States
  {
  Spawn:
    TNT1 A 0 
	TNT1 A 0 
	TNT1 A 0
	TNT1 A 0
	TNT1 A 0 ACS_ExecuteWithResult(857,12)
	//TNT1 A 0 A_JumpIf(ACS_ExecuteWithResult(857,11) == 1,"Toaster1")
	//TNT1 A 0 A_JumpIf(ACS_ExecuteWithResult(857,11) >= 2,"Toaster2")
	Goto SpawnAfterScript
  Toaster1:
    TNT1 A 0
	Stop
  Toaster2:
    TNT1 A 0
	Stop
  SpawnAfterScript:
    TNT1 A 0
	TNT1 A 0
	TNT1 A 0
	TNT1 A 0 A_SpawnItemEx("ShrapnelScatter2",0,0,0,cos(-pitch+Random(-15,15))*3,0,sin(-pitch+Random(-15,15))*3,45+Random(-15,15),SXF_NOCHECKPOSITION)
	TNT1 A 0 A_SpawnItemEx("ShrapnelScatter2",0,0,0,cos(-pitch+Random(-15,15)+45)*3,0,sin(-pitch+Random(-15,15)+45)*3,0+Random(-15,15),SXF_NOCHECKPOSITION)
	TNT1 A 0 A_SpawnItemEx("ShrapnelScatter2",0,0,0,cos(-pitch+Random(-15,15))*3,0,sin(-pitch+Random(-15,15))*3,-45+Random(-15,15),SXF_NOCHECKPOSITION)
	TNT1 A 0 A_SpawnItemEx("ShrapnelScatter2",0,0,0,cos(-pitch+Random(-15,15)-45)*3,0,sin(-pitch+Random(-15,15)-45)*3,0+Random(-15,15),SXF_NOCHECKPOSITION)
	TNT1 A 0 A_SpawnItemEx("ShrapnelScatter2",0,0,0,-(cos(-pitch+Random(-15,15))*3),0,-(sin(-pitch+Random(-15,15))*3),-45+Random(-15,15),SXF_NOCHECKPOSITION)
	TNT1 A 0 A_SpawnItemEx("ShrapnelScatter2",0,0,0,-(cos(-pitch+Random(-15,15)+45)*3),0,-(sin(-pitch+Random(-15,15)+45)*3),0+Random(-15,15),SXF_NOCHECKPOSITION)
	TNT1 A 0 A_SpawnItemEx("ShrapnelScatter2",0,0,0,-(cos(-pitch+Random(-15,15))*3),0,-(sin(-pitch+Random(-15,15))*3),45+Random(-15,15),SXF_NOCHECKPOSITION)
	TNT1 A 0 A_SpawnItemEx("ShrapnelScatter2",0,0,0,-(cos(-pitch+Random(-15,15)-45)*3),0,-(sin(-pitch+Random(-15,15)-45)*3),0+Random(-15,15),SXF_NOCHECKPOSITION)
	TNT1 A 0 A_SpawnItemEx("ShrapnelScatter2",0,0,0,-(cos(-pitch+Random(-15,15)-90)*3),0,-(sin(-pitch+Random(-15,15)-90)*3),0+Random(-15,15),SXF_NOCHECKPOSITION)
	TNT1 A 0 A_SpawnItemEx("ShrapnelScatter2",0,0,0,-(cos(-pitch+Random(-15,15))*3),0,-(sin(-pitch+Random(-15,15))*3),0+Random(-15,15),SXF_NOCHECKPOSITION)
	TNT1 A 0 A_SpawnItemEx("ShrapnelScatter2",0,0,0,-(cos(-pitch+Random(-15,15))*3),0,-(sin(-pitch+Random(-15,15))*3),90+Random(-15,15),SXF_NOCHECKPOSITION)
    TNT1 A 2
	Stop
  }
}

actor ShrapnelTrail
{
  +NOINTERACTION
  +BRIGHT
  +NOGRAVITY
  +CLIENTSIDEONLY
  Radius 1
  Height 1
  Scale 0.4
  States
  {
  Spawn:
	SHAP A 1 A_JumpIfInTargetInventory("ShockCanDie", 1, "Death")
	Loop
  Death:
	TNT1 A 1
	Stop
  }
}

actor ShrapnelTrail1 : ShrapnelTrail
{
  Scale 0.3
}

actor ShrapnelTrail2 : ShrapnelTrail
{
  Scale 0.2
}

actor ShrapnelTrail3 : ShrapnelTrail
{
  Scale 0.1
}

actor ShrapnelScatter1
{
  +CLIENTSIDEONLY
  +NOINTERACTION
  +BRIGHT
  RenderStyle "Add"
  Alpha 0.5
  Radius 1
  Height 1
  States
  {
  Spawn:
	SHAP A 0
	SHAP A 0
	SHAP A 0
	SHA2 A 0 A_ScaleVelocity(0.5)
	SHA2 A 1
	SHA2 A 1
	SHA2 A 1
	SHA2 A 1
	SHA2 A 1
	Stop
  }
}

actor ShrapnelScatter2
{
  +CLIENTSIDEONLY
  +NOINTERACTION
  +BRIGHT
  RenderStyle "Add"
  Alpha 0.5
  Radius 1
  Height 1
  States
  {
  Spawn:
	SHAP A 0
	SHAP A 0
	SHAP A 0
	SHAP A 0 A_Jump(90,"Death")
	SHAP A 0 A_Jump(256,"Spawn2","Spawn3")
	Goto Spawn2
  Spawn2:
	SHA2 A 0 A_ScaleVelocity(2)
	SHA1 AAAAA 1
	Stop
  Spawn3:
	SHA2 A 0 A_ScaleVelocity(2)
	SHA2 AAAAA 1
	Stop
  Death:
	SHAP A 0
	Stop
  }
}