ACTOR "Legendary BFG15K" : Weapon 
{
  Scale 0.85
  Height 20
  Weapon.PreferredSkin "BFG10K-Marine"
  Weapon.SelectionOrder 2790
  Weapon.KickBack 90
  Weapon.SlotNumber 8
  Weapon.AmmoGive 150
  Weapon.AmmoUse 10
  Weapon.AmmoType "LegendaryCell"
  Weapon.AmmoType2 "LegendaryCell"
  Inventory.PickupMessage "Legendary BFG15K! Now you can REALLY die in peace now..."
  Inventory.PickupSound "weapons/pickup15k"
  Obituary "%o was turned into nothing by %k's Legendary BFG15K."
  +WEAPON.NOAUTOFIRE
  +INVENTORY.UNDROPPABLE
  States
  {
  Spawn:
    L15W A -1
    Stop
  Ready:
    TNT1 A 0 A_JumpIfNoAmmo("Ready2")
    TNT1 A 0 A_PlayWeaponSound("weapons/bfg15kidle")
    L15C BCD 3 A_Weaponready
	L15C EFG 3 A_Weaponready
	L15C HIJ 3 A_Weaponready
	L15C JIH 3 A_Weaponready
	L15C GFE 3 A_Weaponready
	L15C DCB 3 A_Weaponready
	Loop
  Ready2:
    TNT1 A 0 A_JumpIfInventory("LegendaryCell",10,"Ready")
    L15D A 1 A_WeaponReady
	Loop
  Deselect:
  	TNT1 A 0 A_TakeInventory("HandGrenadeAction",1)
	TNT1 A 0 A_TakeInventory("MineAction",1)
	TNT1 A 0 A_TakeInventory("RailgunAction",1)
    TNT1 A 0 A_JumpIfNoAmmo("Deselect2")
	TNT1 A 0 A_PlayWeaponSound("weapons/weapondown")
	L15D A 1 A_Lower
    Goto Deselect+5
  Deselect2:
	TNT1 A 0 A_PlayWeaponSound("weapons/weapondown")
	L15D A 1 A_Lower
    Goto Deselect2+1		
  Select:
	TNT1 A 0 A_JumpIfNoAmmo("Select2")
    TNT1 A 0 A_Playsound("weapons/pickup15k")
    L15D A 1 A_Raise
    Goto Select+2
  Select2:
    TNT1 A 0 A_PlayWeaponSound("weapons/pickup15k")
    L15D A 1 A_Raise
    Goto Select2+1
  Fire:
    L15F H 2 
   Goto Hold
  Hold:
    L15F A 2 Bright A_GunFlash
    L15F B 1
	TNT1 A 0 A_PlaySound("weapons/bfg15kfire")
	L15F C 0 Radius_Quake(6,3,0,1,0)
	L15F D 1 Bright A_FireCustomMissile("PlayerTrueLegBFG15KBall",Random(100,-100)/100.00,1,0,0,0,Random(100,-100)/100.00)
    L15F E 1 A_Recoil(6)
    L15F F 1
	L15F G 1
	L15F H 1
	TNT1 A 0 A_ReFire
    L15C J 1 A_PlaySound("weapons/bfg15kcooldown") 
	L15C IHGFEDCB 3 
    Goto Ready
  Flash:
    TNT1 A 2 Bright A_Light1
    TNT1 A 2 Bright A_Light2
	TNT1 A 2 Bright A_Light1
    Goto LightDone
  }
}

ACTOR PlayerTrueLegBFG15KBall : BFG15KBall
{
Height 15
Radius 15
Decal LegBFG15K
Speed 45
Damage 75
DamageType "Legendary"
Scale 0.5
+FORCERADIUSDMG
+NOTIMEFREEZE
ExplosionDamage 180
ExplosionRadius 165
SeeSound "weapons/bfg15kfire"
DeathSound "weapons/bfg95explode"
States
{
Spawn:
    SFS1 AB 2 Bright A_SpawnItemEx("BFGTrailParticleBlue",Random(-8,8),Random(-8,8),Random(-8,8),Random(-1,1),Random(-1,1),Random(-1,1),Random(-20,20),128)
    Loop
Death:
	TNT1 A 0
    TNT1 A 0 A_SpawnItemEx("BFGShockwaveBlue", 0, 0, 0, 0, 0, 0, 0, 128)
	TNT1 A 0 A_SpawnItemEx("LegendaryBlueParticleSpawner", 0, 0, 0, 0, 0, 0, 0, 128) 
	TNT1 AAA 0 A_CustomMissile("KaboomBlue6", 0, 0, random(0,360), 2, random(0,360))      
    SFE3 A 4 Bright A_Explode	
    SFE3 BCDEF 4 Bright
    Stop
    }
}
ACTOR BFGTrailParticleBlue : BFGTrailParticleGreen
{
Scale 0.06
+NOTIMEFREEZE
States
{
Spawn:
TNT1 A 0
TNT1 A 0 A_JumpIf(ACS_ExecuteWithResult(304) == 1, "Toaster")
BPKG A 2 Bright A_FadeOut(0.015)
Loop
}
}

ACTOR BFGShockwaveBlue : BFGShockwave2 
{
Scale 1.1
+NOTIMEFREEZE
States
{
Spawn:
TNT1 A 0
TNT1 A 0 A_JumpIf(ACS_ExecuteWithResult(304) == 1, "Toaster")
BHOG ABCDEFGHIJKLMNOPQR 1 Bright A_FadeOut(0.04)
Stop
}
}

ACTOR KaboomBlue6 : KaboomGold
{
Speed 1
Scale 0.9
+NOTIMEFREEZE
States
{
Spawn:
TNT1 A 0
TNT1 A 0 A_JumpIf(ACS_ExecuteWithResult(304) == 1, "Toaster")
BXPG AABBCDEFGHIJKLM 1 Bright A_FadeOut(0.05)
Stop
}
}