//===========================================================================
//
// "Dahlia" Custom Concealable Weapon
//
// by Scroton and Marty Kirra
// Sprites by Marty Kirra
// Arrow Voxels by Voxelbro
//
//===========================================================================
ACTOR MelDahliaCrossbow : Weapon
{
	Weapon.Kickback 450
	Weapon.AmmoType	"DahliaNormalAmmo"
	Weapon.AmmoGive	10
	Weapon.AmmoUse	0
	Weapon.AmmoType2 "DahliaExplosiveAmmo"
	Weapon.AmmoGive2 5
	Weapon.AmmoUse2	0
	//Weapon.BobStyle Alpha
	//Weapon.BobSpeed 2.0
	//Weapon.BobRangeY 0.6
	//Weapon.BobRangeX 0.4
	Inventory.PickupMessage "[''Dahlia'' Custom Concealable Weapon] [Class: Bow, Slot 3]"
	Decal BulletChip
	Obituary "%o was taken out from the shadows by %k's crossbow."
	+Weapon.AMMO_OPTIONAL
	+NOEXTREMEDEATH
	+WEAPON.NoAlert
   States
   {
   Spawn:
	  DCBP A -1
	  Stop
   Ready:
      TNT1 A 0 A_JumpIfInventory("MeleePressed",1,"SPMeleeNormalMode")
      TNT1 A 0 A_JumpIfInventory("DahliaFired", 1, "ReadyEmpty")
      TNT1 A 0 A_JumpIfNoAmmo("ReadyEmpty")
	  TNT1 A 0 A_JumpIfInventory("DahliaExplosiveMode", 1, "ExplosiveReady")
	  TNT1 A 0 A_JumpIfInventory("Reloading",1,"Reload")
      DCBG A 1 A_WeaponReady
      LOOP
   ReadyEmpty:
      TNT1 A 0 A_JumpIfInventory("MeleePressed",1,"SPMeleeEmptyMode")
	  TNT1 A 0 A_JumpIfInventory("Reloading",1,"Reload")
      DCBE A 1 A_WeaponReady
	  Loop
   ExplosiveReady:
      TNT1 A 0 A_JumpIfInventory("MeleePressed",1,"SPMeleeExplosiveMode")
	  TNT1 A 0 A_JumpIfInventory("Reloading",1,"Reload")
      DCBB A 1 A_WeaponReady
	  Loop
   Deselect:
      TNT1 A 0 A_PlaySound("dahlia/down", 5)
	  TNT1 A 0 A_JumpIfNoAmmo("EmptyDeselect")
	  TNT1 A 0 A_JumpIfInventory("DahliaFired", 1, "EmptyDeselect")
	  TNT1 A 0 A_JumpIfInventory("DahliaExplosiveMode", 1, "ExplosiveDeselect")
	  DCBD ABCD 1 
   DeselectLoop:
	  TNT1 A 4 A_Lower
      Loop
   ExplosiveDeselect:
      DCBD IJKL 1
   ExplosiveDeselectLoop:
      TNT1 A 4 A_Lower
      Loop
   EmptyDeselect:
      DCBD EFGH 1 
   EmptyDeselectLoop:
      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("AmmoBoxSelected", 1)
	  TNT1 A 0 A_TakeInventory("ToolBoxSelected", 1)
	  TNT1 A 0 A_TakeInventory("MP40Selected", 1)
	  TNT1 A 0 A_GiveInventory("DahliaSelected", 1)
      TNT1 A 0 A_PlaySound("dahlia/up", 6)
      TNT1 A 4 SetPlayerProperty(0,1,2)
	  TNT1 A 0 A_JumpIfNoAmmo("EmptySelect")
	  TNT1 A 0 A_JumpIfInventory("DahliaFired", 1, "EmptySelect")
	  TNT1 A 0 A_JumpIfInventory("DahliaExplosiveMode", 1, "ExplosiveSelect")
      DCBU ABCD 1
   SelectLoop:
	  DCBG A 1 A_Raise
	  Loop
   ExplosiveSelect:
      DCBU IJKL 1
   ExplosiveSelectLoop:
      DCBB A 1 A_Raise
	  Loop
   EmptySelect:
      DCBU EFGH 1 
   EmptySelectLoop:
      DCBE A 1 A_Raise
	  Loop
   Fire:
      DCBG A 0 A_JumpIfInventory("DahliaFired", 1, "Reload")
	  DCBG A 0 A_JumpIfInventory("DahliaExplosiveMode", 1, "ExplosiveFire")
	  DCBG A 0 A_JumpIfInventory("DahliaNormalAmmo", 1, "Fire2")
      Goto ReadyEmpty
   Fire2:
      DCBG A 2
	  TNT1 A 0 A_SetPitch(pitch - 0.5)
	  TNT1 A 0 A_SetAngle(angle + (random(-1,3)/10))
	  TNT1 A 0 A_PlaySound("dahlia/fire", 5)
	  TNT1 A 0 A_JumpIfInventory("GameIsCoop", 1, "FireCoop")
	  Goto FireDM
	FireCoop:
	  DCBF A 1 A_FireCustomMissile("CrossbowBoltBlueCoop",0,1,2)
	  Goto FireFinish
	FireDM:
	  DCBF A 1 A_FireCustomMissile("CrossbowBoltBlue",0,1,2)
	  Goto FireFinish
	FireFinish:
	  TNT1 A 0 A_TakeInventory("DahliaNormalAmmo", 1)
	  TNT1 A 0 A_GiveInventory("DahliaFired", 1)
	  DCBF BCDDDDCBA 1
	  DCBE A 1
      TNT1 A 0 A_JumpIfInventory("DahliaNormalAmmo", 1, "ReloadStart")
      TNT1 A 0 A_JumpIfInventory("DahliaExplosiveAmmo", 1, "ExplosiveReloadEmpty")
      Goto ReadyEmpty
   ExplosiveFire:
      DCBG A 0 A_JumpIfInventory("DahliaFired", 1, "Reload")
      DCBG A 0 A_JumpIfInventory("DahliaExplosiveAmmo", 1, "ExplosiveFire2")
      Goto ReadyEmpty
   ExplosiveFire2:
      DCBB A 2
	  TNT1 A 0 A_SetPitch(pitch - 0.5)
	  TNT1 A 0 A_SetAngle(angle + (random(-1,3)/10))
	  TNT1 A 0 A_PlaySound("dahlia/fire", 5)
	  TNT1 A 0 A_JumpIfInventory("GameIsCoop", 1, "ExplosiveFireCoop")
	  Goto ExplosiveFireDM
   ExplosiveFireCoop:
	  DCBF A 1 A_FireCustomMissile("CrossbowBoltRedCoop",0,1,2)
	  //DCBF A 1 A_SpawnItemEx ("CrossbowBoltRed",0,2,32,cos(-pitch)*120,0,sin(-pitch)*120,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	  Goto ExplosiveFireFinish
   ExplosiveFireDM:
	  DCBF A 1 A_FireCustomMissile("CrossbowBoltRed",0,1,2)
	  //DCBF A 1 A_SpawnItemEx ("CrossbowBoltRed",0,2,32,cos(-pitch)*120,0,sin(-pitch)*120,0,SXF_TRANSFERPITCH|SXF_NOCHECKPOSITION)
	  Goto ExplosiveFireFinish
   ExplosiveFireFinish:	  
	  TNT1 A 0 A_TakeInventory("DahliaExplosiveAmmo", 1)
	  TNT1 A 0 A_GiveInventory("DahliaFired", 1)
	  DCBF BCDDDDCBA 1
	  DCBE A 1
      TNT1 A 0 A_JumpIfInventory("DahliaExplosiveAmmo", 1, "ReloadStart")
	  TNT1 A 0 A_JumpIfInventory("DahliaNormalAmmo", 1, "NormalReloadEmpty")
      Goto ReadyEmpty
   Reload:
      TNT1 A 0 A_TakeInventory("Reloading",9)
	  TNT1 A 0 A_JumpIfInventory("DahliaFired", 1, "ReloadCheck")
      Goto Ready

   ReloadCheck:
      TNT1 A 0 A_TakeInventory("Reloading",9)
	  TNT1 A 0 A_JumpIfInventory("DahliaNormalAmmo", 1, "ReloadStart")
      TNT1 A 0 A_JumpIfInventory("DahliaExplosiveAmmo", 1, "ReloadStart")
      Goto ReadyEmpty
   ReloadStart:
      TNT1 A 0 A_JumpIfInventory("DahliaExplosiveMode", 1, "ExplosiveReload")
	  TNT1 A 0 A_PlaySound("dahlia/load", 6)
	  TNT1 A 0 A_PlaySound("dahlia/load", 6)
	  DCBE A 4
	  DCBR ABCDDDDDDDDDDDDDDDEEFFGGHHHHHHHIIIII 1
	  TNT1 A 0 A_TakeInventory("DahliaFired", 99)
	  DCBU ABCD 1
	  DCBG A 3
	  Goto Ready
   ExplosiveReload:
      TNT1 A 0 A_PlaySound("dahlia/load", 6)
	  DCBE A 4
	  DCBR ABCDDDDDDDDDDDDDDDEEFFGGHHHHHHHIIIII 1
	  TNT1 A 0 A_TakeInventory("DahliaFired", 99)
	  DCBU IJKL 1
	  DCBB A 3
	  Goto ExplosiveReady

   NormalReloadEmpty:
      TNT1 A 0 A_Print("[Out of Explosive Bolts, Switching to Normal Bolts]")
	  DCBR A 0 A_TakeInventory("DahliaExplosiveMode", 99)
      TNT1 A 0 A_PlaySound("dahlia/load", 6)
	  TNT1 A 0 A_PlaySound("dahlia/load", 6)
	  DCBE A 4
	  DCBR ABCDDDDDDDDDDDDDDDEEFFGGHHHHHHHIIIII 1
	  TNT1 A 0 A_TakeInventory("DahliaFired", 99)
	  DCBU ABCD 1
	  DCBG A 3
	  Goto Ready
   ExplosiveReloadEmpty:
      TNT1 A 0 A_Print("[Out of Normal Bolts, Switching to Explosive Bolts]")
	  DCBR A 0 A_GiveInventory("DahliaExplosiveMode", 1)
	  TNT1 A 0 A_PlaySound("dahlia/load", 6)
	  DCBE A 4
	  DCBR ABCDDDDDDDDDDDDDDDEEFFGGHHHHHHHIIIII 1
	  TNT1 A 0 A_TakeInventory("DahliaFired", 99)
	  DCBU IJKL 1
	  DCBB A 3
	  Goto ExplosiveReady
   AltFire:
	  TNT1 A 0 A_JumpIfInventory("DahliaExplosiveMode", 1, "NormalSelect")
	  TNT1 A 0 A_JumpIfInventory("DahliaExplosiveAmmo", 1, "AltFire2")
	  Goto Ready
   AltFire2:
	  TNT1 A 0 A_Print("[Explosive Bolts Loaded]")
	  DCBG A 1
      DCBU DCBA 1
	  TNT1 A 0 A_PlaySound("dahlia/ammo1", 5)
	  DCBR IIIIIHHHHHHGGFFEEDDDDDD 1
	  TNT1 A 0 A_PlaySound("dahlia/ammo2", 6)
	  DCBR A 0 A_GiveInventory("DahliaExplosiveMode", 1)
	  DCBR DDEEFFGGHHHHHHHIIIII 1
	  DCBU IJKL 1
	  DCBB A 3 A_WeaponReady
	  Goto ExplosiveReady
   NormalSelect:
	  TNT1 A 0 A_JumpIfInventory("DahliaNormalAmmo", 1, "NormalSelect2")
	  Goto Ready
   NormalSelect2:
      TNT1 A 0 A_Print("[Normal Bolts Loaded]")
	  DCBB A 1
      DCBU LKJI 1
	  TNT1 A 0 A_PlaySound("dahlia/ammo2", 5)
	  DCBR IIIIIHHHHHHGGFFEEDDDDDD 1
	  TNT1 A 0 A_PlaySound("dahlia/ammo1", 6)
	  DCBR A 0 A_TakeInventory("DahliaExplosiveMode", 99)
	  DCBR DDEEFFGGHHHHHHHIIIII 1
	  DCBU ABCD 1
	  DCBG A 3 A_WeaponReady
	  Goto Ready
	  
   SPMeleeNormalMode:
      TNT1 A 0 A_PlaySound("dahlia/down", 6)
	  DCBD ABCD 1 
	  TNT1 A 1
	  TNT1 A 4 A_PlaySound("*strongmelee")
	  ML2F A 0 A_PlaySoundEX("strongmelee/miss", "SoundSlot5")
      MK1F ABC 1
      ML1F D 0 A_JumpIfInventory("PowerStrength",1,"SPMeleeNormalModeBerserk")
	  MK1F D 1 A_CustomPunch(9,0,0,"StrongMeleePuff",90)
	  Goto SPMeleeNormalModeA
	SPMeleeNormalModeBerserk:
	  MK1F D 1 A_CustomPunch(18,0,0,"StrongMeleePuff",90)
	  Goto SPMeleeNormalModeA
	SPMeleeNormalModeA:
	  MK1F EFGHI 1
	  TNT1 A 0 A_PlaySound("dahlia/up", 6)
	  TNT1 A 4
      DCBU ABCD 1
	  Goto Ready
	  
   SPMeleeEmptyMode:
      TNT1 A 0 A_PlaySound("dahlia/down", 6)
	  DCBD EFGH 1 
	  TNT1 A 1
	  TNT1 A 4 A_PlaySound("*strongmelee")
	  ML2F A 0 A_PlaySoundEX("strongmelee/miss", "SoundSlot5")
      MK1F ABC 1
      ML1F D 0 A_JumpIfInventory("PowerStrength",1,"SPMeleeEmptyModeBerserk")
	  MK1F D 1 A_CustomPunch(9,0,0,"StrongMeleePuff",90)
	  Goto SPMeleeEmptyModeA
	SPMeleeEmptyModeBerserk:
	  MK1F D 1 A_CustomPunch(18,0,0,"StrongMeleePuff",90)
	  Goto SPMeleeEmptyModeA
	SPMeleeEmptyModeA:
	  MK1F EFGHI 1
	  TNT1 A 0 A_PlaySound("dahlia/up", 6)
	  TNT1 A 4
      DCBU EFGH 1 
	  Goto ReadyEmpty
	  
	SPMeleeExplosiveMode:
      TNT1 A 0 A_PlaySound("dahlia/down", 6)
	  DCBD IJKL 1
	  TNT1 A 1
	  TNT1 A 4 A_PlaySound("*strongmelee")
	  ML2F A 0 A_PlaySoundEX("strongmelee/miss", "SoundSlot5")
      MK1F ABC 1
      ML1F D 0 A_JumpIfInventory("PowerStrength",1,"SPMeleeExplosiveModeBerserk")
	  MK1F D 1 A_CustomPunch(9,0,0,"StrongMeleePuff",90)
	  Goto SPMeleeExplosiveModeA
	SPMeleeExplosiveModeBerserk:
	  MK1F D 1 A_CustomPunch(18,0,0,"StrongMeleePuff",90)
	  Goto SPMeleeExplosiveModeA
	SPMeleeExplosiveModeA:
	  MK1F EFGHI 1
	  TNT1 A 0 A_PlaySound("dahlia/up", 6)
	  TNT1 A 4
      DCBU IJKL 1 
	  Goto ExplosiveReady
   }
}

ACTOR DahliaFired : Inventory
{
	Inventory.MaxAmount 1
}

ACTOR DahliaExplosiveMode : Inventory
{
	Inventory.MaxAmount 1
}

ACTOR DahliaNormalMode : Inventory
{
	Inventory.MaxAmount 1
}

ACTOR DahliaNormalAmmo : Ammo
{
	Inventory.Amount 10
	Inventory.MaxAmount 40
	Ammo.BackpackAmount 30
	Ammo.BackpackMaxAmount 60
	Inventory.Icon "DCBAA0"
	Inventory.PickupMessage "Picked up a box of crossbow bolts. [+10 Crossbow Bolts]"
	Inventory.PickupSound "dahlia/normalammo"
	States
	{
	Spawn:
		DCBA A -1
		Stop
	}
}

ACTOR DahliaExplosiveAmmo : Ammo
{
	Inventory.Amount 10
	Inventory.MaxAmount 20
	Ammo.BackpackAmount 20
	Ammo.BackpackMaxAmount 40
	Inventory.Icon "DCBXA0"
	Inventory.PickupMessage "Picked up a box of explosive bolts. [+10 Explosive Bolts]"
	Inventory.PickupSound "dahlia/explosiveammo"
	States
	{
	Spawn:
		DCBX A -1
		Stop
	}
}

ACTOR CrossbowPickup : CustomInventory
{
    Inventory.PickupMessage "[''Dahlia'' Custom Concealable Weapon] [Class: Bow, Slot 3]"
	Inventory.PickupSound "misc/w_pkup"
	+INVENTORY.AUTOACTIVATE
	States
	{
	Spawn:
      DCBP 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("MelDahliaCrossbow", 1, "AmmoCheck")
	  TNT1 A 0 A_GiveInventory("MelDahliaCrossbow", 1)
	  TNT1 A 0 A_GiveInventory("DahliaJustPickedUp", 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("MelDahliaCrossbow", 1, "AmmoCheck")
	  TNT1 A 0 A_GiveInventory("MelDahliaCrossbow", 1)
	  TNT1 A 0 A_GiveInventory("DahliaJustPickedUp", 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 0 A_JumpIf(ACS_ExecuteWithResult(860,1) >= 1,"PickupFail")
	  TNT1 A 0 A_JumpIfInventory("DahliaNormalAmmo", 0, "AmmoCheck2")
	  TNT1 A 0 A_GiveInventory("DahliaNormalAmmo", 10)
	  TNT1 A 0 A_GiveInventory("DahliaExplosiveAmmo",5)
	  Stop
	AmmoCheck2:
      TNT1 A 0 A_JumpIf(ACS_ExecuteWithResult(860,1) >= 1,"PickupFail")
	  TNT1 A 0 A_JumpIfInventory("DahliaExplosiveAmmo", 0, "PickupFail")
	  TNT1 A 0 A_GiveInventory("DahliaNormalAmmo", 10)
	  TNT1 A 0 A_GiveInventory("DahliaExplosiveAmmo",5)
	  Stop
	PretendPickupFail:
	  TNT1 A 0 ACS_ExecuteAlways(857,0,15)
      DCBP A 1
      Fail
	PickupFail:
      DCBP A 1
      Fail
	}
}

ACTOR CrossbowSSGPickup : CustomInventory Replaces SuperShotgun
{
    Inventory.PickupMessage "[''Dahlia'' Custom Concealable Weapon] [Class: Bow, Slot 3]"
	Inventory.PickupSound "misc/w_pkup"
	+INVENTORY.AUTOACTIVATE
	States
	{
	Spawn:
      DCBP 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("MelDahliaCrossbow", 1, "AmmoCheck")
	  TNT1 A 0 A_GiveInventory("MelDahliaCrossbow", 1)
	  TNT1 A 0 A_GiveInventory("DahliaJustPickedUp", 1)
	  TNT1 A 0 A_GiveInventory("DahliaExplosiveAmmo", 5)
	  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("MelDahliaCrossbow", 1, "AmmoCheck")
	  TNT1 A 0 A_GiveInventory("MelDahliaCrossbow", 1)
	  TNT1 A 0 A_GiveInventory("DahliaJustPickedUp", 1)
	  TNT1 A 0 A_GiveInventory("DahliaExplosiveAmmo", 5)
	  TNT1 A 0 ACS_ExecuteAlways(859)
	  TNT1 A 0 A_JumpIf(ACS_ExecuteWithResult(860,1) >= 1,"PretendPickupFail")
	  TNT1 A 1 
	  Stop
	AmmoCheck:
      TNT1 A 0 A_JumpIf(ACS_ExecuteWithResult(860,1) >= 1,"PickupFail")
	  TNT1 A 0 A_JumpIfInventory("DahliaNormalAmmo", 0, "AmmoCheck2")
	  TNT1 A 0 A_GiveInventory("DahliaNormalAmmo", 10)
	  TNT1 A 0 A_GiveInventory("DahliaExplosiveAmmo",10)
	  Stop
	AmmoCheck2:
      TNT1 A 0 A_JumpIf(ACS_ExecuteWithResult(860,1) >= 1,"PickupFail")
	  TNT1 A 0 A_JumpIfInventory("DahliaExplosiveAmmo", 0, "PickupFail")
	  TNT1 A 0 A_GiveInventory("DahliaNormalAmmo", 10)
	  TNT1 A 0 A_GiveInventory("DahliaExplosiveAmmo",10)
	  Stop
	PretendPickupFail:
	  TNT1 A 0 ACS_ExecuteAlways(857,0,15)
      DCBP A 1
      Fail
	PickupFail:
      DCBP A 1
      Fail
	}
}

ACTOR CrossbowBoltBlue : FastProjectile //The second crossbow voxel voxelbro made; to edit the scale look in voxeldef
{
   Radius 3
   Height 3
   Speed 120
   Damage 7
   PROJECTILE
   +BLOODSPLATTER
   +RIPPER
   +NOEXTREMEDEATH
   States
   {
   Spawn:
      ARWP A 1
      Loop
   Death:
      ARWP A 1 A_PlaySound("dahlia/impact", 5)
	  ARWP A 1 A_ChangeFlag("NOINTERACTION",1)
      Goto Death2
   Death2:
      ARWP A 700
      Stop
   XdeathUnused:
      TNT1 A 0 A_PlaySound("dahlia/impactenemy", 5)
	  stop
   }
}

ACTOR CrossbowBoltBlueCoop : CrossbowBoltBlue
{
   Species "Player"
   +THRUSPECIES
}

ACTOR CrossbowBoltRed : FastProjectile 
{
   Radius 4
   Height 1
   Speed 120
   Damage 1
   DamageType "XBolt"
   PROJECTILE
   +BLOODSPLATTER
   +SEEKERMISSILE
   //+FORCEPAIN
   +NOEXTREMEDEATH
   +FORCERADIUSDMG
   //var int user_height;
   +NONSHOOTABLE //These are to replace the user_var
   +SHOOTABLE
   +NORADIUSDMG
   Health 100000
   States
   {
   Spawn:
      ARWP A 1
      Loop
   Death:
      ARWP A 0 A_JumpIfInventory("ShockCanDie",1,"XDeath2")
	  ARWP A 1 A_PlaySound("dahlia/impact", 5)
	  ARWP A 1 A_ChangeFlag("NOINTERACTION",1)
      Goto Death2
   Death2:
      ARWP A 10
	  ARWP A 0 A_PlaySound("dahlia/beep",0)
      ARWP A 20
	  ARWP A 0 A_PlaySound("dahlia/beep",0)
	  ARWP A 20
	  ARWP A 0 A_PlaySound("dahlia/beep",0)
	  ARWP A 20
	  Goto RegularExplode
  RegularExplode:
	  
	  TNT1 A 0 A_Explode(90,128)
	  ARWP A 0 A_PlaySound("dahlia/boltexplode", 0)
      
	  
	  SHAP A 0 A_SpawnItemEx("ShrapnelScatter1",0,0,0,cos(-pitch+Random(-90,90))*(Random(20,30)/10),0,sin(-pitch+Random(-90,90))*(Random(20,30)/10),Random(-180,180),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("ShrapnelScatter1",0,0,0,cos(-pitch+Random(-90,90))*(Random(20,30)/10),0,sin(-pitch+Random(-90,90))*(Random(20,30)/10),Random(-180,180),SXF_NOCHECKPOSITION)
 	  SHAP A 0 A_SpawnItemEx("ShrapnelScatter1",0,0,0,cos(-pitch+Random(-90,90))*(Random(20,30)/10),0,sin(-pitch+Random(-90,90))*(Random(20,30)/10),Random(-180,180),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("ShrapnelScatter1",0,0,0,cos(-pitch+Random(-90,90))*(Random(20,30)/10),0,sin(-pitch+Random(-90,90))*(Random(20,30)/10),Random(-180,180),SXF_NOCHECKPOSITION)
  	  SHAP A 0 A_SpawnItemEx("ShrapnelScatter1",0,0,0,cos(-pitch+Random(-90,90))*(Random(20,30)/10),0,sin(-pitch+Random(-90,90))*(Random(20,30)/10),Random(-180,180),SXF_NOCHECKPOSITION)


	  SHAP A 0 A_SpawnItemEx("ShrapnelScatter1",0,0,0,cos(-pitch+Random(-90,90))*(Random(0,30)/10),0,sin(-pitch+Random(-90,90))*(Random(0,30)/10),Random(-180,180),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("ShrapnelScatter1",0,0,0,cos(-pitch+Random(-90,90))*(Random(0,30)/10),0,sin(-pitch+Random(-90,90))*(Random(0,30)/10),Random(-180,180),SXF_NOCHECKPOSITION)
 	  SHAP A 0 A_SpawnItemEx("ShrapnelScatter1",0,0,0,cos(-pitch+Random(-90,90))*(Random(0,30)/10),0,sin(-pitch+Random(-90,90))*(Random(0,30)/10),Random(-180,180),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("ShrapnelScatter1",0,0,0,cos(-pitch+Random(-90,90))*(Random(0,30)/10),0,sin(-pitch+Random(-90,90))*(Random(0,30)/10),Random(-180,180),SXF_NOCHECKPOSITION)
  	  SHAP A 0 A_SpawnItemEx("ShrapnelScatter1",0,0,0,cos(-pitch+Random(-90,90))*(Random(0,30)/10),0,sin(-pitch+Random(-90,90))*(Random(0,30)/10),Random(-180,180),SXF_NOCHECKPOSITION)
	  
	   
	  

	  SHZZ A 1 //light("HellFireShelllight") 
	  
	  

	  SHAP A 0 A_SpawnItemEx("BoltSmokeB",0,0,0,cos(-pitch+Random(-15,15))*(Random(0,30)/10),0,sin(-pitch+Random(-15,15))*(Random(0,30)/10),45+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltSmokeB",0,0,0,cos(-pitch+Random(-15,15)+22.5)*(Random(0,30)/10),0,sin(-pitch+Random(-15,15)+22.5)*(Random(0,30)/10),22.5+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltSmoke",0,0,0,cos(-pitch+Random(-15,15)+45)*(Random(0,30)/10),0,sin(-pitch+Random(-15,15)+45)*(Random(0,30)/10),0+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltSmokeA",0,0,0,cos(-pitch+Random(-15,15)+22.5)*(Random(0,30)/10),0,sin(-pitch+Random(-15,15)+22.5)*(Random(0,30)/10),-22.5+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltSmoke",0,0,0,cos(-pitch+Random(-15,15))*(Random(0,30)/10),0,sin(-pitch+Random(-15,15))*(Random(0,30)/10),-45+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltSmokeA",0,0,0,cos(-pitch+Random(-15,15)-22.5)*(Random(0,30)/10),0,sin(-pitch+Random(-15,15)-22.5)*(Random(0,30)/10),-22.5+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltSmoke",0,0,0,cos(-pitch+Random(-15,15)-45)*(Random(0,30)/10),0,sin(-pitch+Random(-15,15)-45)*(Random(0,30)/10),0+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltSmokeA",0,0,0,cos(-pitch+Random(-15,15)-22.5)*(Random(0,30)/10),0,sin(-pitch+Random(-15,15)-22.5)*(Random(0,30)/10),22.5+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltSmoke",0,0,0,-(cos(-pitch+Random(-15,15))*(Random(0,30)/10)),0,-(sin(-pitch+Random(-15,15))*(Random(0,30)/10)),-45+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltSmokeA",0,0,0,-(cos(-pitch+Random(-15,15)+22.5)*(Random(0,30)/10)),0,-(sin(-pitch+Random(-15,15)+22.5)*(Random(0,30)/10)),-22.5+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltSmoke",0,0,0,-(cos(-pitch+Random(-15,15)+45)*(Random(0,30)/10)),0,-(sin(-pitch+Random(-15,15)+45)*(Random(0,30)/10)),0+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltSmokeA",0,0,0,-(cos(-pitch+Random(-15,15)+22.5)*(Random(0,30)/10)),0,-(sin(-pitch+Random(-15,15)+22.5)*(Random(0,30)/10)),22.5+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltSmoke",0,0,0,-(cos(-pitch+Random(-15,15))*(Random(0,30)/10)),0,-(sin(-pitch+Random(-15,15))*(Random(0,30)/10)),45+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltSmokeA",0,0,0,-(cos(-pitch+Random(-15,15)-22.5)*(Random(0,30)/10)),0,-(sin(-pitch+Random(-15,15)-22.5)*(Random(0,30)/10)),22.5+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltSmoke",0,0,0,-(cos(-pitch+Random(-15,15)-45)*(Random(0,30)/10)),0,-(sin(-pitch+Random(-15,15)-45)*(Random(0,30)/10)),0+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltSmokeA",0,0,0,-(cos(-pitch+Random(-15,15)-22.5)*(Random(0,30)/10)),0,-(sin(-pitch+Random(-15,15)-22.5)*(Random(0,30)/10)),-22.5+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltSmoke",0,0,0,-(cos(-pitch+Random(-15,15)-90)*(Random(0,30)/10)),0,-(sin(-pitch+Random(-15,15)-90)*(Random(0,30)/10)),0+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltSmokeA",0,0,0,-(cos(-pitch+Random(-15,15)+90)*(Random(0,30)/10)),0,-(sin(-pitch+Random(-15,15)+90)*(Random(0,30)/10)),0+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltSmoke",0,0,0,-(cos(-pitch+Random(-15,15))*(Random(0,30)/10)),0,-(sin(-pitch+Random(-15,15))*(Random(0,30)/10)),0+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltSmokeA",0,0,0,-(cos(-pitch+Random(-15,15))*(Random(0,30)/10)),0,-(sin(-pitch+Random(-15,15))*(Random(0,30)/10)),-180+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltSmoke",0,0,0,-(cos(-pitch+Random(-15,15))*(Random(0,30)/10)),0,-(sin(-pitch+Random(-15,15))*(Random(0,30)/10)),90+Random(-15,15),SXF_NOCHECKPOSITION)
  	  SHAP A 0 A_SpawnItemEx("BoltSmokeA",0,0,0,-(cos(-pitch+Random(-15,15))*(Random(0,30)/10)),0,-(sin(-pitch+Random(-15,15))*(Random(0,30)/10)),-90+Random(-15,15),SXF_NOCHECKPOSITION)

	  SHAP A 0 A_SpawnItemEx("BoltSmoke",0,0,0,cos(-pitch+Random(-15,15))*(Random(20,30)/10),0,sin(-pitch+Random(-15,15))*(Random(20,30)/10),45+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltSmokeA",0,0,0,cos(-pitch+Random(-15,15)+22.5)*(Random(20,30)/10),0,sin(-pitch+Random(-15,15)+22.5)*(Random(20,30)/10),22.5+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltSmoke",0,0,0,cos(-pitch+Random(-15,15)+45)*(Random(20,30)/10),0,sin(-pitch+Random(-15,15)+45)*(Random(20,30)/10),0+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltSmokeA",0,0,0,cos(-pitch+Random(-15,15)+22.5)*(Random(20,30)/10),0,sin(-pitch+Random(-15,15)+22.5)*(Random(20,30)/10),-22.5+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltSmoke",0,0,0,cos(-pitch+Random(-15,15))*(Random(20,30)/10),0,sin(-pitch+Random(-15,15))*(Random(20,30)/10),-45+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltSmokeA",0,0,0,cos(-pitch+Random(-15,15)-22.5)*(Random(20,30)/10),0,sin(-pitch+Random(-15,15)-22.5)*(Random(20,30)/10),-22.5+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltSmoke",0,0,0,cos(-pitch+Random(-15,15)-45)*(Random(20,30)/10),0,sin(-pitch+Random(-15,15)-45)*(Random(20,30)/10),0+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltSmokeA",0,0,0,cos(-pitch+Random(-15,15)-22.5)*(Random(20,30)/10),0,sin(-pitch+Random(-15,15)-22.5)*(Random(20,30)/10),22.5+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltSmoke",0,0,0,-(cos(-pitch+Random(-15,15))*(Random(20,30)/10)),0,-(sin(-pitch+Random(-15,15))*(Random(20,30)/10)),-45+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltSmokeA",0,0,0,-(cos(-pitch+Random(-15,15)+22.5)*(Random(20,30)/10)),0,-(sin(-pitch+Random(-15,15)+22.5)*(Random(20,30)/10)),-22.5+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltSmoke",0,0,0,-(cos(-pitch+Random(-15,15)+45)*(Random(20,30)/10)),0,-(sin(-pitch+Random(-15,15)+45)*(Random(20,30)/10)),0+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltSmokeA",0,0,0,-(cos(-pitch+Random(-15,15)+22.5)*(Random(20,30)/10)),0,-(sin(-pitch+Random(-15,15)+22.5)*(Random(20,30)/10)),22.5+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltSmoke",0,0,0,-(cos(-pitch+Random(-15,15))*(Random(20,30)/10)),0,-(sin(-pitch+Random(-15,15))*(Random(20,30)/10)),45+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltSmokeA",0,0,0,-(cos(-pitch+Random(-15,15)-22.5)*(Random(20,30)/10)),0,-(sin(-pitch+Random(-15,15)-22.5)*(Random(20,30)/10)),22.5+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltSmoke",0,0,0,-(cos(-pitch+Random(-15,15)-45)*(Random(20,30)/10)),0,-(sin(-pitch+Random(-15,15)-45)*(Random(20,30)/10)),0+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltSmokeA",0,0,0,-(cos(-pitch+Random(-15,15)-22.5)*(Random(20,30)/10)),0,-(sin(-pitch+Random(-15,15)-22.5)*(Random(20,30)/10)),-22.5+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltSmoke",0,0,0,-(cos(-pitch+Random(-15,15)-90)*(Random(20,30)/10)),0,-(sin(-pitch+Random(-15,15)-90)*(Random(20,30)/10)),0+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltSmokeA",0,0,0,-(cos(-pitch+Random(-15,15)+90)*(Random(20,30)/10)),0,-(sin(-pitch+Random(-15,15)+90)*(Random(20,30)/10)),0+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltSmoke",0,0,0,-(cos(-pitch+Random(-15,15))*(Random(20,30)/10)),0,-(sin(-pitch+Random(-15,15))*(Random(20,30)/10)),0+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltSmokeA",0,0,0,-(cos(-pitch+Random(-15,15))*(Random(20,30)/10)),0,-(sin(-pitch+Random(-15,15))*(Random(20,30)/10)),-180+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltSmoke",0,0,0,-(cos(-pitch+Random(-15,15))*(Random(20,30)/10)),0,-(sin(-pitch+Random(-15,15))*(Random(20,30)/10)),90+Random(-15,15),SXF_NOCHECKPOSITION)
  	  SHAP A 0 A_SpawnItemEx("BoltSmokeA",0,0,0,-(cos(-pitch+Random(-15,15))*(Random(20,30)/10)),0,-(sin(-pitch+Random(-15,15))*(Random(20,30)/10)),-90+Random(-15,15),SXF_NOCHECKPOSITION)

	  SHAP A 0 A_SpawnItemEx("BoltSmoke",0,0,0,cos(-pitch+Random(-15,15))*(Random(20,30)/10),0,sin(-pitch+Random(-15,15))*(Random(20,30)/10),45+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltSmokeA",0,0,0,cos(-pitch+Random(-15,15)+22.5)*(Random(20,30)/10),0,sin(-pitch+Random(-15,15)+22.5)*(Random(20,30)/10),22.5+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltSmoke",0,0,0,cos(-pitch+Random(-15,15)+45)*(Random(20,30)/10),0,sin(-pitch+Random(-15,15)+45)*(Random(20,30)/10),0+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltSmokeA",0,0,0,cos(-pitch+Random(-15,15)+22.5)*(Random(20,30)/10),0,sin(-pitch+Random(-15,15)+22.5)*(Random(20,30)/10),-22.5+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltSmoke",0,0,0,cos(-pitch+Random(-15,15))*(Random(20,30)/10),0,sin(-pitch+Random(-15,15))*(Random(20,30)/10),-45+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltSmokeA",0,0,0,cos(-pitch+Random(-15,15)-22.5)*(Random(20,30)/10),0,sin(-pitch+Random(-15,15)-22.5)*(Random(20,30)/10),-22.5+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltSmoke",0,0,0,cos(-pitch+Random(-15,15)-45)*(Random(20,30)/10),0,sin(-pitch+Random(-15,15)-45)*(Random(20,30)/10),0+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltSmokeA",0,0,0,cos(-pitch+Random(-15,15)-22.5)*(Random(20,30)/10),0,sin(-pitch+Random(-15,15)-22.5)*(Random(20,30)/10),22.5+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltSmoke",0,0,0,-(cos(-pitch+Random(-15,15))*(Random(20,30)/10)),0,-(sin(-pitch+Random(-15,15))*(Random(20,30)/10)),-45+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltSmokeA",0,0,0,-(cos(-pitch+Random(-15,15)+22.5)*(Random(20,30)/10)),0,-(sin(-pitch+Random(-15,15)+22.5)*(Random(20,30)/10)),-22.5+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltSmoke",0,0,0,-(cos(-pitch+Random(-15,15)+45)*(Random(20,30)/10)),0,-(sin(-pitch+Random(-15,15)+45)*(Random(20,30)/10)),0+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltSmokeA",0,0,0,-(cos(-pitch+Random(-15,15)+22.5)*(Random(20,30)/10)),0,-(sin(-pitch+Random(-15,15)+22.5)*(Random(20,30)/10)),22.5+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltSmoke",0,0,0,-(cos(-pitch+Random(-15,15))*(Random(20,30)/10)),0,-(sin(-pitch+Random(-15,15))*(Random(20,30)/10)),45+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltSmokeA",0,0,0,-(cos(-pitch+Random(-15,15)-22.5)*(Random(20,30)/10)),0,-(sin(-pitch+Random(-15,15)-22.5)*(Random(20,30)/10)),22.5+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltSmoke",0,0,0,-(cos(-pitch+Random(-15,15)-45)*(Random(20,30)/10)),0,-(sin(-pitch+Random(-15,15)-45)*(Random(20,30)/10)),0+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltSmokeA",0,0,0,-(cos(-pitch+Random(-15,15)-22.5)*(Random(20,30)/10)),0,-(sin(-pitch+Random(-15,15)-22.5)*(Random(20,30)/10)),-22.5+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltSmoke",0,0,0,-(cos(-pitch+Random(-15,15)-90)*(Random(20,30)/10)),0,-(sin(-pitch+Random(-15,15)-90)*(Random(20,30)/10)),0+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltSmokeA",0,0,0,-(cos(-pitch+Random(-15,15)+90)*(Random(20,30)/10)),0,-(sin(-pitch+Random(-15,15)+90)*(Random(20,30)/10)),0+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltSmoke",0,0,0,-(cos(-pitch+Random(-15,15))*(Random(20,30)/10)),0,-(sin(-pitch+Random(-15,15))*(Random(20,30)/10)),0+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltSmokeA",0,0,0,-(cos(-pitch+Random(-15,15))*(Random(20,30)/10)),0,-(sin(-pitch+Random(-15,15))*(Random(20,30)/10)),-180+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltSmoke",0,0,0,-(cos(-pitch+Random(-15,15))*(Random(20,30)/10)),0,-(sin(-pitch+Random(-15,15))*(Random(20,30)/10)),90+Random(-15,15),SXF_NOCHECKPOSITION)
  	  SHAP A 0 A_SpawnItemEx("BoltSmokeA",0,0,0,-(cos(-pitch+Random(-15,15))*(Random(20,30)/10)),0,-(sin(-pitch+Random(-15,15))*(Random(20,30)/10)),-90+Random(-15,15),SXF_NOCHECKPOSITION)


      TNT1 A 1
      stop

   Xdeath:
	  ARWP A 0 A_GiveInventory("ShockCanDie", 1)
      TNT1 A 0 A_ChangeFlag("NOCLIP",1)
	  TNT1 A 0 A_ChangeFlag("THRUACTORS",1)
	  TNT1 A 0 DamageThing ((z-floorz))
	  TNT1 A 0 //A_SeekerMissile(0,0,SMF_LOOK,256,2) I'm probably going to have to do a weird missile shooting thing instead
	  TNT1 A 1 A_GiveInventory("ShockCanDie", 1)
	  TNT1 A 1 //ACS_NamedExecuteWithResult("TSPBoltStickScript")
	  TNT1 A 0 A_PlaySound("dahlia/impactenemy", 6)
   XDeath2:
	  TNT1 A 0 A_ChangeFlag("NODAMAGETHRUST",1)
	  ARWP A 1 
      Goto XDeath3

   XDeath3:
      ARWP AAAAAAAAAA 1 A_Fire(100000-health)
	  ARWP A 0 A_PlaySound("dahlia/beep",0)
      ARWP AAAAAAAAAA 1 A_Fire(100000-health)
	  ARWP AAAAAAAAAA 1 A_Fire(100000-health)
	  ARWP A 0 A_PlaySound("dahlia/beep",0)
	  ARWP AAAAAAAAAA 1 A_Fire(100000-health)
	  ARWP AAAAAAAAAA 1 A_Fire(100000-health)
	  ARWP A 0 A_PlaySound("dahlia/beep",0)
	  ARWP AAAAAAAAAA 1 A_Fire(100000-health)
	  ARWP AAAAAAAAAA 1 A_Fire(100000-health)
	  Goto CountdownExplode
	  
	  
   CountdownExplode:


	  ARWP A 0 A_SpawnItemEx("BoltAnchor",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION)
	  
	  ARWP A 1 A_Fire(100000-health)

	  
	  TNT1 A 0 A_Explode(90,128)
	  ARWP A 0 A_PlaySound("dahlia/boltexplode", 0)

	  

	  SHAP A 0 A_SpawnItemEx("ShrapnelScatter1",0,0,0,cos(-pitch+Random(-90,90))*(Random(20,30)/10),0,sin(-pitch+Random(-90,90))*(Random(20,30)/10),Random(-180,180),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("ShrapnelScatter1",0,0,0,cos(-pitch+Random(-90,90))*(Random(20,30)/10),0,sin(-pitch+Random(-90,90))*(Random(20,30)/10),Random(-180,180),SXF_NOCHECKPOSITION)
 	  SHAP A 0 A_SpawnItemEx("ShrapnelScatter1",0,0,0,cos(-pitch+Random(-90,90))*(Random(20,30)/10),0,sin(-pitch+Random(-90,90))*(Random(20,30)/10),Random(-180,180),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("ShrapnelScatter1",0,0,0,cos(-pitch+Random(-90,90))*(Random(20,30)/10),0,sin(-pitch+Random(-90,90))*(Random(20,30)/10),Random(-180,180),SXF_NOCHECKPOSITION)
  	  SHAP A 0 A_SpawnItemEx("ShrapnelScatter1",0,0,0,cos(-pitch+Random(-90,90))*(Random(20,30)/10),0,sin(-pitch+Random(-90,90))*(Random(20,30)/10),Random(-180,180),SXF_NOCHECKPOSITION)


	  SHAP A 0 A_SpawnItemEx("ShrapnelScatter1",0,0,0,cos(-pitch+Random(-90,90))*(Random(0,30)/10),0,sin(-pitch+Random(-90,90))*(Random(0,30)/10),Random(-180,180),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("ShrapnelScatter1",0,0,0,cos(-pitch+Random(-90,90))*(Random(0,30)/10),0,sin(-pitch+Random(-90,90))*(Random(0,30)/10),Random(-180,180),SXF_NOCHECKPOSITION)
 	  SHAP A 0 A_SpawnItemEx("ShrapnelScatter1",0,0,0,cos(-pitch+Random(-90,90))*(Random(0,30)/10),0,sin(-pitch+Random(-90,90))*(Random(0,30)/10),Random(-180,180),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("ShrapnelScatter1",0,0,0,cos(-pitch+Random(-90,90))*(Random(0,30)/10),0,sin(-pitch+Random(-90,90))*(Random(0,30)/10),Random(-180,180),SXF_NOCHECKPOSITION)
  	  SHAP A 0 A_SpawnItemEx("ShrapnelScatter1",0,0,0,cos(-pitch+Random(-90,90))*(Random(0,30)/10),0,sin(-pitch+Random(-90,90))*(Random(0,30)/10),Random(-180,180),SXF_NOCHECKPOSITION)
	  

	  SHAP A 0 A_SpawnItemEx("BoltMeatA",0,0,0,cos(-pitch+Random(-15,15))*(Random(0,30)/10),0,sin(-pitch+Random(-15,15))*(Random(0,30)/10),45+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltMeat",0,0,0,cos(-pitch+Random(-15,15)+22.5)*(Random(0,30)/10),0,sin(-pitch+Random(-15,15)+22.5)*(Random(0,30)/10),22.5+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltMeatA",0,0,0,cos(-pitch+Random(-15,15)+45)*(Random(0,30)/10),0,sin(-pitch+Random(-15,15)+45)*(Random(0,30)/10),0+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltMeat",0,0,0,cos(-pitch+Random(-15,15)+22.5)*(Random(0,30)/10),0,sin(-pitch+Random(-15,15)+22.5)*(Random(0,30)/10),-22.5+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltMeatA",0,0,0,cos(-pitch+Random(-15,15))*(Random(0,30)/10),0,sin(-pitch+Random(-15,15))*(Random(0,30)/10),-45+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltMeat",0,0,0,cos(-pitch+Random(-15,15)-22.5)*(Random(0,30)/10),0,sin(-pitch+Random(-15,15)-22.5)*(Random(0,30)/10),-22.5+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltMeatA",0,0,0,cos(-pitch+Random(-15,15)-45)*(Random(0,30)/10),0,sin(-pitch+Random(-15,15)-45)*(Random(0,30)/10),0+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltMeat",0,0,0,cos(-pitch+Random(-15,15)-22.5)*(Random(0,30)/10),0,sin(-pitch+Random(-15,15)-22.5)*(Random(0,30)/10),22.5+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltMeatA",0,0,0,-(cos(-pitch+Random(-15,15))*(Random(0,30)/10)),0,-(sin(-pitch+Random(-15,15))*(Random(0,30)/10)),-45+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltMeat",0,0,0,-(cos(-pitch+Random(-15,15)+22.5)*(Random(0,30)/10)),0,-(sin(-pitch+Random(-15,15)+22.5)*(Random(0,30)/10)),-22.5+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltMeatA",0,0,0,-(cos(-pitch+Random(-15,15)+45)*(Random(0,30)/10)),0,-(sin(-pitch+Random(-15,15)+45)*(Random(0,30)/10)),0+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltMeat",0,0,0,-(cos(-pitch+Random(-15,15)+22.5)*(Random(0,30)/10)),0,-(sin(-pitch+Random(-15,15)+22.5)*(Random(0,30)/10)),22.5+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltMeatA",0,0,0,-(cos(-pitch+Random(-15,15))*(Random(0,30)/10)),0,-(sin(-pitch+Random(-15,15))*(Random(0,30)/10)),45+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltMeat",0,0,0,-(cos(-pitch+Random(-15,15)-22.5)*(Random(0,30)/10)),0,-(sin(-pitch+Random(-15,15)-22.5)*(Random(0,30)/10)),22.5+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltMeatA",0,0,0,-(cos(-pitch+Random(-15,15)-45)*(Random(0,30)/10)),0,-(sin(-pitch+Random(-15,15)-45)*(Random(0,30)/10)),0+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltMeat",0,0,0,-(cos(-pitch+Random(-15,15)-22.5)*(Random(0,30)/10)),0,-(sin(-pitch+Random(-15,15)-22.5)*(Random(0,30)/10)),-22.5+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltMeatA",0,0,0,-(cos(-pitch+Random(-15,15)-90)*(Random(0,30)/10)),0,-(sin(-pitch+Random(-15,15)-90)*(Random(0,30)/10)),0+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltMeat",0,0,0,-(cos(-pitch+Random(-15,15)+90)*(Random(0,30)/10)),0,-(sin(-pitch+Random(-15,15)+90)*(Random(0,30)/10)),0+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltMeatA",0,0,0,-(cos(-pitch+Random(-15,15))*(Random(0,30)/10)),0,-(sin(-pitch+Random(-15,15))*(Random(0,30)/10)),0+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltMeat",0,0,0,-(cos(-pitch+Random(-15,15))*(Random(0,30)/10)),0,-(sin(-pitch+Random(-15,15))*(Random(0,30)/10)),-180+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltMeatA",0,0,0,-(cos(-pitch+Random(-15,15))*(Random(0,30)/10)),0,-(sin(-pitch+Random(-15,15))*(Random(0,30)/10)),90+Random(-15,15),SXF_NOCHECKPOSITION)
  	  SHAP A 0 A_SpawnItemEx("BoltMeat",0,0,0,-(cos(-pitch+Random(-15,15))*(Random(0,30)/10)),0,-(sin(-pitch+Random(-15,15))*(Random(0,30)/10)),-90+Random(-15,15),SXF_NOCHECKPOSITION)

	  SHAP A 0 A_SpawnItemEx("BoltMeat",0,0,0,cos(-pitch+Random(-15,15))*(Random(20,30)/10),0,sin(-pitch+Random(-15,15))*(Random(20,30)/10),45+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltMeatA",0,0,0,cos(-pitch+Random(-15,15)+22.5)*(Random(20,30)/10),0,sin(-pitch+Random(-15,15)+22.5)*(Random(20,30)/10),22.5+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltMeat",0,0,0,cos(-pitch+Random(-15,15)+45)*(Random(20,30)/10),0,sin(-pitch+Random(-15,15)+45)*(Random(20,30)/10),0+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltMeatA",0,0,0,cos(-pitch+Random(-15,15)+22.5)*(Random(20,30)/10),0,sin(-pitch+Random(-15,15)+22.5)*(Random(20,30)/10),-22.5+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltMeat",0,0,0,cos(-pitch+Random(-15,15))*(Random(20,30)/10),0,sin(-pitch+Random(-15,15))*(Random(20,30)/10),-45+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltMeatA",0,0,0,cos(-pitch+Random(-15,15)-22.5)*(Random(20,30)/10),0,sin(-pitch+Random(-15,15)-22.5)*(Random(20,30)/10),-22.5+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltMeat",0,0,0,cos(-pitch+Random(-15,15)-45)*(Random(20,30)/10),0,sin(-pitch+Random(-15,15)-45)*(Random(20,30)/10),0+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltMeatA",0,0,0,cos(-pitch+Random(-15,15)-22.5)*(Random(20,30)/10),0,sin(-pitch+Random(-15,15)-22.5)*(Random(20,30)/10),22.5+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltMeat",0,0,0,-(cos(-pitch+Random(-15,15))*(Random(20,30)/10)),0,-(sin(-pitch+Random(-15,15))*(Random(20,30)/10)),-45+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltMeatA",0,0,0,-(cos(-pitch+Random(-15,15)+22.5)*(Random(20,30)/10)),0,-(sin(-pitch+Random(-15,15)+22.5)*(Random(20,30)/10)),-22.5+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltMeat",0,0,0,-(cos(-pitch+Random(-15,15)+45)*(Random(20,30)/10)),0,-(sin(-pitch+Random(-15,15)+45)*(Random(20,30)/10)),0+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltMeatA",0,0,0,-(cos(-pitch+Random(-15,15)+22.5)*(Random(20,30)/10)),0,-(sin(-pitch+Random(-15,15)+22.5)*(Random(20,30)/10)),22.5+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltMeat",0,0,0,-(cos(-pitch+Random(-15,15))*(Random(20,30)/10)),0,-(sin(-pitch+Random(-15,15))*(Random(20,30)/10)),45+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltMeatA",0,0,0,-(cos(-pitch+Random(-15,15)-22.5)*(Random(20,30)/10)),0,-(sin(-pitch+Random(-15,15)-22.5)*(Random(20,30)/10)),22.5+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltMeat",0,0,0,-(cos(-pitch+Random(-15,15)-45)*(Random(20,30)/10)),0,-(sin(-pitch+Random(-15,15)-45)*(Random(20,30)/10)),0+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltMeatA",0,0,0,-(cos(-pitch+Random(-15,15)-22.5)*(Random(20,30)/10)),0,-(sin(-pitch+Random(-15,15)-22.5)*(Random(20,30)/10)),-22.5+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltMeat",0,0,0,-(cos(-pitch+Random(-15,15)-90)*(Random(20,30)/10)),0,-(sin(-pitch+Random(-15,15)-90)*(Random(20,30)/10)),0+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltMeatA",0,0,0,-(cos(-pitch+Random(-15,15)+90)*(Random(20,30)/10)),0,-(sin(-pitch+Random(-15,15)+90)*(Random(20,30)/10)),0+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltMeat",0,0,0,-(cos(-pitch+Random(-15,15))*(Random(20,30)/10)),0,-(sin(-pitch+Random(-15,15))*(Random(20,30)/10)),0+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltMeatA",0,0,0,-(cos(-pitch+Random(-15,15))*(Random(20,30)/10)),0,-(sin(-pitch+Random(-15,15))*(Random(20,30)/10)),-180+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltMeat",0,0,0,-(cos(-pitch+Random(-15,15))*(Random(20,30)/10)),0,-(sin(-pitch+Random(-15,15))*(Random(20,30)/10)),90+Random(-15,15),SXF_NOCHECKPOSITION)
  	  SHAP A 0 A_SpawnItemEx("BoltMeatA",0,0,0,-(cos(-pitch+Random(-15,15))*(Random(20,30)/10)),0,-(sin(-pitch+Random(-15,15))*(Random(20,30)/10)),-90+Random(-15,15),SXF_NOCHECKPOSITION)









	  SHAP A 0 A_SpawnItemEx("BoltMeatSprayA",0,0,0,cos(-pitch+Random(-15,15))*(Random(20,30)/10),0,sin(-pitch+Random(-15,15))*(Random(20,30)/10),45+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltMeatSpray",0,0,0,cos(-pitch+Random(-15,15)+22.5)*(Random(20,30)/10),0,sin(-pitch+Random(-15,15)+22.5)*(Random(20,30)/10),22.5+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltMeatSprayA",0,0,0,cos(-pitch+Random(-15,15)+45)*(Random(20,30)/10),0,sin(-pitch+Random(-15,15)+45)*(Random(20,30)/10),0+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltMeatSpray",0,0,0,cos(-pitch+Random(-15,15)+22.5)*(Random(20,30)/10),0,sin(-pitch+Random(-15,15)+22.5)*(Random(20,30)/10),-22.5+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltMeatSprayA",0,0,0,cos(-pitch+Random(-15,15))*(Random(20,30)/10),0,sin(-pitch+Random(-15,15))*(Random(20,30)/10),-45+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltMeatSpray",0,0,0,cos(-pitch+Random(-15,15)-22.5)*(Random(20,30)/10),0,sin(-pitch+Random(-15,15)-22.5)*(Random(20,30)/10),-22.5+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltMeatSprayA",0,0,0,cos(-pitch+Random(-15,15)-45)*(Random(20,30)/10),0,sin(-pitch+Random(-15,15)-45)*(Random(20,30)/10),0+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltMeatSpray",0,0,0,cos(-pitch+Random(-15,15)-22.5)*(Random(20,30)/10),0,sin(-pitch+Random(-15,15)-22.5)*(Random(20,30)/10),22.5+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltMeatSprayA",0,0,0,-(cos(-pitch+Random(-15,15))*(Random(20,30)/10)),0,-(sin(-pitch+Random(-15,15))*(Random(20,30)/10)),-45+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltMeatSpray",0,0,0,-(cos(-pitch+Random(-15,15)+22.5)*(Random(20,30)/10)),0,-(sin(-pitch+Random(-15,15)+22.5)*(Random(20,30)/10)),-22.5+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltMeatSprayA",0,0,0,-(cos(-pitch+Random(-15,15)+45)*(Random(20,30)/10)),0,-(sin(-pitch+Random(-15,15)+45)*(Random(20,30)/10)),0+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltMeatSpray",0,0,0,-(cos(-pitch+Random(-15,15)+22.5)*(Random(20,30)/10)),0,-(sin(-pitch+Random(-15,15)+22.5)*(Random(20,30)/10)),22.5+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltMeatSprayA",0,0,0,-(cos(-pitch+Random(-15,15))*(Random(20,30)/10)),0,-(sin(-pitch+Random(-15,15))*(Random(20,30)/10)),45+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltMeatSpray",0,0,0,-(cos(-pitch+Random(-15,15)-22.5)*(Random(20,30)/10)),0,-(sin(-pitch+Random(-15,15)-22.5)*(Random(20,30)/10)),22.5+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltMeatSprayA",0,0,0,-(cos(-pitch+Random(-15,15)-45)*(Random(20,30)/10)),0,-(sin(-pitch+Random(-15,15)-45)*(Random(20,30)/10)),0+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltMeatSpray",0,0,0,-(cos(-pitch+Random(-15,15)-22.5)*(Random(20,30)/10)),0,-(sin(-pitch+Random(-15,15)-22.5)*(Random(20,30)/10)),-22.5+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltMeatSprayA",0,0,0,-(cos(-pitch+Random(-15,15)-90)*(Random(20,30)/10)),0,-(sin(-pitch+Random(-15,15)-90)*(Random(20,30)/10)),0+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltMeatSpray",0,0,0,-(cos(-pitch+Random(-15,15)+90)*(Random(20,30)/10)),0,-(sin(-pitch+Random(-15,15)+90)*(Random(20,30)/10)),0+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltMeatSprayA",0,0,0,-(cos(-pitch+Random(-15,15))*(Random(20,30)/10)),0,-(sin(-pitch+Random(-15,15))*(Random(20,30)/10)),0+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltMeatSpray",0,0,0,-(cos(-pitch+Random(-15,15))*(Random(20,30)/10)),0,-(sin(-pitch+Random(-15,15))*(Random(20,30)/10)),-180+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltMeatSprayA",0,0,0,-(cos(-pitch+Random(-15,15))*(Random(20,30)/10)),0,-(sin(-pitch+Random(-15,15))*(Random(20,30)/10)),90+Random(-15,15),SXF_NOCHECKPOSITION)
  	  SHAP A 0 A_SpawnItemEx("BoltMeatSpray",0,0,0,-(cos(-pitch+Random(-15,15))*(Random(20,30)/10)),0,-(sin(-pitch+Random(-15,15))*(Random(20,30)/10)),-90+Random(-15,15),SXF_NOCHECKPOSITION)



	  SHZZ A 1 A_Fire(100000-health)//light("HellFireShelllight")


	  //SHAP A 1
	  
	  SHAP A 0 A_SpawnItemEx("BoltSmokeB",0,0,0,cos(-pitch+Random(-15,15))*(Random(0,30)/10),0,sin(-pitch+Random(-15,15))*(Random(0,30)/10),45+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltSmokeB",0,0,0,cos(-pitch+Random(-15,15)+22.5)*(Random(0,30)/10),0,sin(-pitch+Random(-15,15)+22.5)*(Random(0,30)/10),22.5+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltSmokeB",0,0,0,cos(-pitch+Random(-15,15)+45)*(Random(0,30)/10),0,sin(-pitch+Random(-15,15)+45)*(Random(0,30)/10),0+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltSmokeB",0,0,0,cos(-pitch+Random(-15,15)+22.5)*(Random(0,30)/10),0,sin(-pitch+Random(-15,15)+22.5)*(Random(0,30)/10),-22.5+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltSmokeB",0,0,0,cos(-pitch+Random(-15,15))*(Random(0,30)/10),0,sin(-pitch+Random(-15,15))*(Random(0,30)/10),-45+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltSmoke",0,0,0,cos(-pitch+Random(-15,15)-22.5)*(Random(0,30)/10),0,sin(-pitch+Random(-15,15)-22.5)*(Random(0,30)/10),-22.5+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltSmokeA",0,0,0,cos(-pitch+Random(-15,15)-45)*(Random(0,30)/10),0,sin(-pitch+Random(-15,15)-45)*(Random(0,30)/10),0+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltSmoke",0,0,0,cos(-pitch+Random(-15,15)-22.5)*(Random(0,30)/10),0,sin(-pitch+Random(-15,15)-22.5)*(Random(0,30)/10),22.5+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltSmokeA",0,0,0,-(cos(-pitch+Random(-15,15))*(Random(0,30)/10)),0,-(sin(-pitch+Random(-15,15))*(Random(0,30)/10)),-45+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltSmoke",0,0,0,-(cos(-pitch+Random(-15,15)+22.5)*(Random(0,30)/10)),0,-(sin(-pitch+Random(-15,15)+22.5)*(Random(0,30)/10)),-22.5+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltSmokeA",0,0,0,-(cos(-pitch+Random(-15,15)+45)*(Random(0,30)/10)),0,-(sin(-pitch+Random(-15,15)+45)*(Random(0,30)/10)),0+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltSmoke",0,0,0,-(cos(-pitch+Random(-15,15)+22.5)*(Random(0,30)/10)),0,-(sin(-pitch+Random(-15,15)+22.5)*(Random(0,30)/10)),22.5+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltSmokeA",0,0,0,-(cos(-pitch+Random(-15,15))*(Random(0,30)/10)),0,-(sin(-pitch+Random(-15,15))*(Random(0,30)/10)),45+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltSmoke",0,0,0,-(cos(-pitch+Random(-15,15)-22.5)*(Random(0,30)/10)),0,-(sin(-pitch+Random(-15,15)-22.5)*(Random(0,30)/10)),22.5+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltSmokeA",0,0,0,-(cos(-pitch+Random(-15,15)-45)*(Random(0,30)/10)),0,-(sin(-pitch+Random(-15,15)-45)*(Random(0,30)/10)),0+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltSmoke",0,0,0,-(cos(-pitch+Random(-15,15)-22.5)*(Random(0,30)/10)),0,-(sin(-pitch+Random(-15,15)-22.5)*(Random(0,30)/10)),-22.5+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltSmokeA",0,0,0,-(cos(-pitch+Random(-15,15)-90)*(Random(0,30)/10)),0,-(sin(-pitch+Random(-15,15)-90)*(Random(0,30)/10)),0+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltSmoke",0,0,0,-(cos(-pitch+Random(-15,15)+90)*(Random(0,30)/10)),0,-(sin(-pitch+Random(-15,15)+90)*(Random(0,30)/10)),0+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltSmokeA",0,0,0,-(cos(-pitch+Random(-15,15))*(Random(0,30)/10)),0,-(sin(-pitch+Random(-15,15))*(Random(0,30)/10)),0+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltSmoke",0,0,0,-(cos(-pitch+Random(-15,15))*(Random(0,30)/10)),0,-(sin(-pitch+Random(-15,15))*(Random(0,30)/10)),-180+Random(-15,15),SXF_NOCHECKPOSITION)
	  SHAP A 0 A_SpawnItemEx("BoltSmokeA",0,0,0,-(cos(-pitch+Random(-15,15))*(Random(0,30)/10)),0,-(sin(-pitch+Random(-15,15))*(Random(0,30)/10)),90+Random(-15,15),SXF_NOCHECKPOSITION)
  	  SHAP A 0 A_SpawnItemEx("BoltSmoke",0,0,0,-(cos(-pitch+Random(-15,15))*(Random(0,30)/10)),0,-(sin(-pitch+Random(-15,15))*(Random(0,30)/10)),-90+Random(-15,15),SXF_NOCHECKPOSITION)


	  TNT1 A 0 //ACS_NamedExecuteWithResult("TSPBoltHurtTracerScript")


      TNT1 A 1
      stop

   }
}


ACTOR CrossbowBoltRedCoop : CrossbowBoltRed
{
   Species "Player"
   +THRUSPECIES
}

ACTOR BoltSmoke
{
  Radius 1
  Height 1
  Mass 1
  Scale 0.2
  RenderStyle "Add"
  Alpha 0.6
  +THRUACTORS
  +NOCLIP
  +NOGRAVITY
  +NOINTERACTION
  +CLIENTSIDEONLY
  +BRIGHT
  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:
    HLFC ABCB 2 A_FadeOut(0.05)
    Loop
  }
}

ACTOR BoltSmokeA : BoltSmoke
{
  States
  {
  Toaster1:
    TNT1 A 0
	Stop
  }
}

ACTOR BoltSmokeB : BoltSmoke
{
  States
  {
  Spawn:
    HLFC ABCB 2 A_FadeOut(0.05)
    Loop
  }
}

ACTOR BoltMeat
{
  +NOINTERACTION
  +NOGRAVITY
  +CLIENTSIDEONLY
  Radius 1
  Height 1
  
  +THRUACTORS
  +NOCLIP
  
  //Renderstyle Add
  //+BRIGHT
  
  Scale 0.3
  
  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_Jump(256, "Spawn1", "Spawn2", "Spawn3", "Spawn4", "Spawn5", "Spawn6", "Spawn7", "Spawn8", "Spawn9", "Spawn10", "Spawn11", "Spawn12", "Spawn13", "Spawn14", "Spawn15", "Spawn16", "Spawn17", "Spawn18", "Spawn19", "Spawn20")
    Stop
  Spawn1:
    BTMT A 9
    Stop
  Spawn2:
    BTMT B 9
    Stop
  Spawn3:
    BTMT C 9
    Stop
  Spawn4:	
    BTMT D 9
    Stop
  Spawn5:	
    BTMT E 9
    Stop
  Spawn6:	
    BTMT F 9
    Stop
  Spawn7:	
    BTMT G 9
    Stop
  Spawn8:	
    BTMT H 9
    Stop
  Spawn9:	
    BTMT I 9
    Stop
  Spawn10:	
    BTMT J 9
    Stop
  Spawn11:	
    BTMT K 9
    Stop
  Spawn12:	
    BTMT L 9
    Stop
  Spawn13:	
    BTMT M 9
    Stop
  Spawn14:	
    BTMT N 9
    Stop
  Spawn15:	
    BTMT O 9
    Stop
  Spawn16:	
    BTMT P 9
    Stop
  Spawn17:	
    BTMT Q 9
    Stop
  Spawn18:	
    BTMT R 9
    Stop
  Spawn19:	
    BTMT S 9
    Stop
  Spawn20:	
    BTMT T 9
    Stop
  }
}


ACTOR BoltMeatA : BoltMeat
{
  States
  {
  Toaster1:
    TNT1 A 0
	Stop
  }
}

ACTOR BoltMeatSpray
{
  +NOINTERACTION
  +NOGRAVITY
  Radius 1
  Height 1
  
  +THRUACTORS
  +NOCLIP
  
  Renderstyle Add
  Alpha 0.8
  +BRIGHT
  
  Scale 0.3
  
  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 A_Jump(256, "Spawn1", "Spawn2", "Spawn3", "Spawn4", "Spawn5", "Spawn6", "Spawn7", "Spawn8", "Spawn9", "Spawn10", "Spawn11", "Spawn12", "Spawn13", "Spawn14", "Spawn15", "Spawn16", "Spawn17", "Spawn18", "Spawn19", "Spawn20")
    Stop
  Spawn1:
    BTMT A 2 A_FadeOut(0.05)
    Stop
  Spawn2:
    BTMT B 2 A_FadeOut(0.05)
    Stop
  Spawn3:
    BTMT C 2 A_FadeOut(0.05)
    Stop
  Spawn4:	
    BTMT D 2 A_FadeOut(0.05)
    Stop
  Spawn5:	
    BTMT E 2 A_FadeOut(0.05)
    Stop
  Spawn6:	
    BTMT F 2 A_FadeOut(0.05)
    Stop
  Spawn7:	
    BTMT G 2 A_FadeOut(0.05)
    Stop
  Spawn8:	
    BTMT H 2 A_FadeOut(0.05)
    Stop
  Spawn9:	
    BTMT I 2 A_FadeOut(0.05)
    Stop
  Spawn10:	
    BTMT J 2 A_FadeOut(0.05)
    Stop
  Spawn11:	
    BTMT K 2 A_FadeOut(0.05)
    Stop
  Spawn12:	
    BTMT L 2 A_FadeOut(0.05)
    Stop
  Spawn13:	
    BTMT M 2 A_FadeOut(0.05)
    Stop
  Spawn14:	
    BTMT N 2 A_FadeOut(0.05)
    Stop
  Spawn15:	
    BTMT O 2 A_FadeOut(0.05)
    Stop
  Spawn16:	
    BTMT P 2 A_FadeOut(0.05)
    Stop
  Spawn17:	
    BTMT Q 2 A_FadeOut(0.05)
    Stop
  Spawn18:	
    BTMT R 2 A_FadeOut(0.05)
    Stop
  Spawn19:	
    BTMT S 2 A_FadeOut(0.05)
    Stop
  Spawn20:	
    BTMT T 2 A_FadeOut(0.05)
    Stop
  }
}

ACTOR BoltMeatSprayA : BoltMeatSpray
{
  States
  {
  Toaster1:
    TNT1 A 0
	Stop
  }
}

ACTOR BoltAnchor
{
   +SOLID
   +NOGRAVITY
   Height 2
   Radius 2
   States
   {
   Spawn:
      TNT1 A 0
	  TNT1 A 0
	  TNT1 A 0
	  TNT1 A 2
	  Stop
   }
}


