Actor CerebralDefiler
{
//Creator: Titanium
//Origin: Nexus Infinity
//Sprite: HELE
//Title: "Cerebral Defiler" 
Obituary "%o was blown away by a Cerebral Defiler."
HitObituary "%o became a Cerebral Defiler's lunch."
Health 3000
Radius 31
Height 56
Mass 800
Speed 10
PainChance 30
MeleeDamage 24
SeeSound "ImpRed/sight"
PainSound "ImpRed/pain"
DeathSound "ImpRed/Death"
ActiveSound "caco/melee"
MeleeSound "ImpRed/death"
Species "EleSouls"
DamageFactor "PDTBFG", 0.25
DamageFactor "PDTBFGTracer", 0.25
DamageFactor "PlayerDevBall", 0.125
DamageFactor "PlayerDevBall2", 0.125
DamageFactor "PlayerDevTracer", 0.125
DamageFactor "Legendary", 0.3
DamageFactor "LegendaryPlayer", 0.3
DamageFactor "SatanGuard", 0.0
DamageFactor "CacoLich", 0.0
DamageFactor "PhazoDemon", 0.0
DamageFactor "CacoComet", 0.0
DamageFactor "CurseComet", 0.0
DamageFactor "HelementalComet", 0.0
Damagefactor "BloodSkull", 0.0
DamageFactor "SoulToxic", 0.0
DamageFactor "BombBreath", 0.0
DamageFactor "SoapOpera" , 0.0
DamageFactor 0.75
DamageType "BombBreath"
DropItem "HellStaff" 128
DropItem "BigDustMana" 128 100
DropItem "DustMana" 128 30
DropItem "DustMana" 128 30
DropItem "DustMana" 128 30
DropItem "Demon Tech BFG10K" 60
DropItem "BossLifeEssence", 128, 25
DropItem "BossArmorBonusMax", 128, 1
DropItem "GreaterDemonicEnergy", 128, 200
DropItem "BFG15K", 128
Dropitem "CannongunSphere", 80
Tag "\c[m6]Cerebral Defiler\c-"
Scale 1.2
Monster
+Float
+NoGravity
+MissileMore
+MissileEvenMore
+Notarget
+QuickToretaliate
+DontHarmSpecies
+NoRadiusDMG
States
{
Spawn:
    HELE A 10 A_Look
    Loop
  See:
    HELE A 3 A_Chase
	TNT1 A 0 A_ChangeFlag("NOPAIN",0)
    HELE A 0 A_Jump(32,"Teleport")
	TNT1 A 0 A_Jump(20,"Evade")
	TNT1 A 0 A_Jump(62,"Rush")
    Loop
  Teleport:
    HELE A 0 A_UnSetshootable
    HELE A 1
    HELE A 1 A_SetTranslucent(0.90)
    HELE A 1 A_SetTranslucent(0.80)
    HELE A 1 A_SetTranslucent(0.70)
    HELE A 1 A_SetTranslucent(0.60)
    HELE A 1 A_SetTranslucent(0.50)
    HELE A 1 A_SetTranslucent(0.40)
    HELE A 1 A_SetTranslucent(0.30)
    HELE A 1 A_SetTranslucent(0.20)
    HELE A 1 A_SetTranslucent(0.10)
    TNT1 A 0 A_Jump(128,25)
    TNT1 AAAAAAAAAAAAAAAAAAAAAAAA 0 A_Wander
    TNT1 A 0 A_Jump(128,25)
    TNT1 AAAAAAAAAAAAAAAAAAAAAAAA 0 A_ExtChase(0,0,1,1)
    HELE A 1 A_PlaySound("Boss/Teleport")
    HELE A 1 A_SetTranslucent(0.10)
    HELE A 1 A_SetTranslucent(0.20)
    HELE A 1 A_SetTranslucent(0.30)
    HELE A 1 A_SetTranslucent(0.40)
    HELE A 1 A_SetTranslucent(0.50)
    HELE A 1 A_SetTranslucent(0.60)
    HELE A 1 A_SetTranslucent(0.70)
    HELE A 1 A_SetTranslucent(0.80)
    HELE A 1 A_SetTranslucent(0.90)
    HELE A 1 A_SetTranslucent(1.0)
    HELE A 0 A_SetShootable
    Goto See
	Rush:
	TNT1 A 0 A_SpawnItemEx("CBElemGhostA")
	HELE A 1 A_Chase
	TNT1 A 0 A_SpawnItemEx("CBElemGhostA")
	HELE A 1 A_Chase
	TNT1 A 0 A_SpawnItemEx("CBElemGhostA")
	HELE A 1 A_Chase
	TNT1 A 0 A_SpawnItemEx("CBElemGhostA")
	HELE A 1 A_Chase
	TNT1 A 0 A_SpawnItemEx("CBElemGhostA")
	HELE A 1 A_Chase
	TNT1 A 0 A_SpawnItemEx("CBElemGhostA")
	HELE A 1 A_Chase
	TNT1 A 0 A_SpawnItemEx("CBElemGhostA")
	HELE A 1 A_Chase
	TNT1 A 0 A_SpawnItemEx("CBElemGhostA")
	HELE A 1 A_Chase
	TNT1 A 0 A_Jump(87,"See")
	Loop
  Evade:
	TNT1 A 0 A_Jump(128,7)
	TNT1 A 0 ThrustThing(Angle*256/360+64,14,0,0)
	HELE AAAA 3 A_Chase
	TNT1 A 0 A_Stop
	Goto See
	TNT1 A 0 ThrustThing(Angle*256/360+192,14,0,0)
	HELE AAAA 3 A_Chase
	TNT1 A 0 A_Stop
	Goto See
  Missile:
	TNT1 A 0 A_Jump(50,"Demontech10k")
	TNT1 A 0 A_Jump(100,"10K","MiniDTBFG","AntiLegendaryBlast","MiniDevastator")
	HELE A 0 A_Jump(200,"HadesSpheres","HellStaffNormal","HellStaffHoming","BFG","15k")
  Normal:
    HELE BC 5 Bright A_Facetarget
    HELE D 2 Bright A_CustomMissile("CBElemBall",30,0,0)
    HELE D 0 A_CustomMissile("CBElemBall",30,0,-5)
    HELE D 2 Bright A_CustomMissile("CBElemBall",30,0,5)
    HELE D 0 A_CustomMissile("CBElemBall",30,0,-10)
    HELE D 2 Bright A_CustomMissile("CBElemBall",30,0,10)
    HELE BC 5 Bright A_Facetarget
    HELE D 2 Bright A_CustomMissile("CBElemBall",30,0,0)
    HELE D 0 A_CustomMissile("CBElemBall",30,0,-5)
    HELE D 2 Bright A_CustomMissile("CBElemBall",30,0,5)
    HELE D 0 A_CustomMissile("CBElemBall",30,0,-10)
    HELE D 2 Bright A_CustomMissile("CBElemBall",30,0,10)
    HELE BC 5 Bright A_Facetarget
    HELE D 2 Bright A_CustomMissile("CBElemBall",30,0,0)
    HELE D 0 A_CustomMissile("CBElemBall",30,0,-5)
    HELE D 2 Bright A_CustomMissile("CBElemBall",30,0,5)
    HELE D 0 A_CustomMissile("CBElemBall",30,0,-10)
    HELE D 2 Bright A_CustomMissile("CBElemBall",30,0,10)
    Goto See
  HadesSpheres:
    HELE BC 5 Bright A_Facetarget
    HELE D 5 Bright A_DualPainAttack("CerebralSoul")
    Goto See
  HellStaffNormal:
    HELE BC 6 Bright A_Facetarget
    HELE D 0 A_CustomMissile("CacoHellStaffBall1",30,0,-10,0,0)
    HELE D 0 A_CustomMissile("CacoHellStaffBall1",30,0,-5,0,0)
    HELE D 0 A_CustomMissile("CacoHellStaffBall1",30,0,0,0,0)
    HELE D 0 A_CustomMissile("CacoHellStaffBall1",30,0,5,0,0)
    HELE D 6 Bright A_CustomMissile("CacoHellStaffBall1",30,0,10,0,0)
    HELE BC 6 Bright A_Facetarget
    HELE D 0 A_CustomMissile("CacoHellStaffBall1",30,0,-10,0,0)
    HELE D 0 A_CustomMissile("CacoHellStaffBall1",30,0,-5,0,0)
    HELE D 0 A_CustomMissile("CacoHellStaffBall1",30,0,0,0,0)
    HELE D 0 A_CustomMissile("CacoHellStaffBall1",30,0,5,0,0)
    HELE D 6 Bright A_CustomMissile("CacoHellStaffBall1",30,0,10,0,0)
	HELE BC 6 Bright A_Facetarget
    HELE D 0 A_CustomMissile("CacoHellStaffBall1",30,0,-10,0,0)
    HELE D 0 A_CustomMissile("CacoHellStaffBall1",30,0,-5,0,0)
    HELE D 0 A_CustomMissile("CacoHellStaffBall1",30,0,0,0,0)
    HELE D 0 A_CustomMissile("CacoHellStaffBall1",30,0,5,0,0)
    HELE D 6 Bright A_CustomMissile("CacoHellStaffBall1",30,0,10,0,0)
	TNT1 A 0 A_Jump(100,"15K","HellStaffHoming")
	Goto See
  HellStaffHoming:
	HELE EF 6 A_FaceTarget
	HELE D 0 A_CustomMissile("CacoHellStaffBall2",30,0,-20)
	HELE D 0 A_CustomMissile("CacoHellStaffBall2",30,0,20)
	HELE G 6 Bright A_CustomMissile("CacoHellStaffBall2",30)
	HELE EF 6 A_FaceTarget
	HELE D 0 A_CustomMissile("CacoHellStaffBall2",30,0,-20)
	HELE D 0 A_CustomMissile("CacoHellStaffBall2",30,0,20)
	HELE G 6 Bright A_CustomMissile("CacoHellStaffBall2",30)
	HELE EF 6 A_FaceTarget
	HELE D 0 A_CustomMissile("CacoHellStaffBall2",30,0,-20)
	HELE D 0 A_CustomMissile("CacoHellStaffBall2",30,0,20)
	HELE G 6 Bright A_CustomMissile("CacoHellStaffBall2",30)
	TNT1 A 0 A_Jump(100,"HadesSpheres")
	Goto See
  15K:
	TNT1 A 0 A_PlaySound("weapons/charge15k")
	HELE EEEEFF 3 Bright A_FaceTarget
	HELE G 8 Bright A_CustomMissile("CBElemBFG15k", 20, 0, random(-4,4))
	HELE F 4 Bright A_FaceTarget
	HELE G 8 Bright A_CustomMissile("CBElemBFG15k", 20, 0, random(-4,4))
	HELE F 4 Bright A_FaceTarget
	HELE G 8 Bright A_CustomMissile("CBElemBFG15k", 20, 0, random(-4,4))
	HELE F 4 Bright A_FaceTarget
	HELE G 8 Bright A_CustomMissile("CBElemBFG15k", 20, 0, random(-4,4))
	HELE F 4 Bright A_FaceTarget
	Goto See
  10K:
	TNT1 A 0 A_Jump(256,"15K")
	TNT1 A 0 A_PlaySound("weapons/charge15k")
	HELE EEEEFF 3 Bright A_FaceTarget
	TNT1 A 0 A_PlaySound("weapons/bfg15kfire")
	HELE G 8 Bright A_CustomMissile("BabySent10K", 20, 0, random(-4,4))
	HELE F 4 Bright A_FaceTarget
	TNT1 A 0 A_PlaySound("weapons/bfg15kfire")
	HELE G 8 Bright A_CustomMissile("BabySent10K", 20, 0, random(-4,4))
	HELE F 4 Bright A_FaceTarget
	TNT1 A 0 A_PlaySound("weapons/bfg15kfire")
	HELE G 8 Bright A_CustomMissile("BabySent10K", 20, 0, random(-4,4))
	HELE F 4 Bright A_FaceTarget
	TNT1 A 0 A_PlaySound("weapons/bfg15kfire")
	HELE G 8 Bright A_CustomMissile("BabySent10K", 20, 0, random(-4,4))
	HELE F 4 Bright A_FaceTarget
	Goto See
  BFG:
	TNT1 A 0 A_PlaySound("weapons/bfgf")
	HELE E 15 A_FaceTarget
	HELE F 10 Bright A_FaceTarget
	HELE G 10 Bright A_CustomMissile("CBElemRedBFGBall",30)
	HELE FE 15 A_FaceTarget
	Goto See
  Demontech10k:
	TNT1 A 0 A_PlaySound("Cardinal/9k")
	HELE E 20 A_FaceTarget
	HELE F 15 Bright A_FaceTarget
	HELE G 10 Bright A_CustomMissile("CBElemDTBFG10kBall",20)
	HELE FE 15 A_FaceTarget
	Goto See
  AntiLegendaryBlast:
	TNT1 A 0 A_Jump(129,"BFG","MiniDTBFG")
	TNT1 A 0 A_Jump(256,"BFG","Demontech10k","MiniDTBFG","MiniDevastator")
	TNT1 A 0 A_ChangeFlag("NOPAIN",1)
	HELE E 0 A_PlaySound("cydes/mischrg",7,1,0,0.5)
	HELE E 1 A_FaceTarget
	HELE EEEEEFFFFF 3 Bright A_FaceTarget
	TNT1 A 0 A_PlaySound("lrball3/shot")
	HELE G 7 Bright A_CustomMissile("SuperBall",20)
	HELE F 7 Bright A_FaceTarget
	TNT1 A 0 A_PlaySound("lrball3/shot")
	HELE G 7 Bright A_CustomMissile("SuperBall",20)
	HELE F 7 Bright A_FaceTarget
	TNT1 A 0 A_PlaySound("lrball3/shot")
	HELE G 7 Bright A_CustomMissile("SuperBall",20)
	HELE FE 10 A_FaceTarget
    Goto See
  MiniDTBFG:
	TNT1 A 0 A_ChangeFlag("NOPAIN",1)
	TNT1 A 0 A_PlaySound("LesserCardinal/BFGCharge")
    HELE EEFFF 5 Bright A_FaceTarget
	TNT1 A 0 A_PlaySound("LesserCardinal/BFGFire")
	HELE G 12 Bright A_CustomMissile("CBElemMiniDTBFG",20)
    HELE F 5 Bright A_FaceTarget
	TNT1 A 0 A_PlaySound("LesserCardinal/BFGFire")
	HELE G 12 Bright A_CustomMissile("CBElemMiniDTBFG",20)
	HELE F 5 Bright A_FaceTarget
	TNT1 A 0 A_PlaySound("LesserCardinal/BFGFire")
	HELE G 12 Bright A_CustomMissile("CBElemMiniDTBFG",20)
	HELE FE 15 A_FaceTarget
	Goto See
  MiniDevastator:
	TNT1 A 0 A_ChangeFlag("NOPAIN",1)
	HELE E 0 A_PlaySound("cydes/mischrg",7,1,0,0.5)
	HELE E 1 A_FaceTarget
	HELE EEEEEFFFFF 3 Bright A_FaceTarget
	TNT1 A 0 A_PlaySound("lrball3/shot")
	HELE G 7 Bright A_CustomMissile("MiniDevastatorBall",20)
	HELE FE 10 A_FaceTarget
    Goto See
  Melee:
    HELE ABD 5 Bright A_Facetarget
    HELE C 5 Bright A_MeleeAttack
    Goto See
  Pain:
	TNT1 A 0 A_JumpIfHealthLower(250,"PainSuicide")
    HELE H 3
    HELE H 3 A_Pain
    HELE H 6
	TNT1 A 0 A_Jump(142,"Missile")
    Goto See
  PainSuicide:
	TNT1 A 0 A_JumpIfCloser(1250,1)
	Goto Pain+2
	TNT1 A 0 A_Jump(18,"See")
	TNT1 A 0 A_StopSound
	TNT1 A 0 A_ChangeFlag(NOPAIN,1)
	TNT1 A 0 A_ChangeFlag(NOTARGET,1)
	TNT1 A 0 A_SpawnItem("BombFireSpawner",0,0,0,0)
	HELE E 2 Bright A_FaceTarget
	TNT1 A 0 A_SpawnItem("BombFireSpawner",0,0,0,0)
	HELE E 2 Bright A_FaceTarget
	TNT1 A 0 A_SpawnItem("BombFireSpawner",0,0,0,0)
	HELE F 2 Bright A_FaceTarget
	TNT1 A 0 A_SpawnItem("BombFireSpawner",0,0,0,0)
	HELE F 2 Bright A_FaceTarget
	TNT1 A 0 A_SpawnItem("BombFireSpawner",0,0,0,0)
	TNT1 A 0 A_CustomMissile("CBElemSuicide2",0,0,0,0) 
	TNT1 A 1 A_ChangeFlag(COUNTKILL,0)
	Stop
  Death:
    HELE I 5 Bright A_Scream
	TNT1 AAAA 0 A_SpawnItemEx("RedParticleSpawner", 0, 0, random(20,40), 0, 0, 0, 0, 128)  
	TNT1 AAAA 0 A_CustomMissile("SmokeFX", random(20,40), 0, random(0,360), 2, random(0,360))
	TNT1 AAAAAAA 0 A_CustomMissile("Kaboom18", random(20,40), 0, random(0,360), 2, random(0,360))
    HELE J 5 Bright
	TNT1 A 0 A_Explode(480,240)
	TNT1 A 0 A_StopSoundEx("Voice")
	TNT1 A 0 Radius_Quake(20,12,0,12,0)
	TNT1 A 0 A_PlaySound("weapons/dtech10kexplode")
	TNT1 A 0 A_SpawnItemEx("DTech10KShockwave2", 0, 0, 15, 0, 0, 0, 0, 128)
    TNT1 A 0 A_SpawnItem("RedDTBFGEx",0,-10)
	HELE KL 5 Bright
    HELE M 5 Bright A_NoBlocking
    HELE M 0 A_SpawnItemEx("CerebralSoul",36,36)
    HELE M 0 A_SpawnItemEx("CerebralSoul",-36,36)
    HELE M 0 A_SpawnItemEx("CerebralSoul",-36,-36)
    HELE M 0 A_SpawnItemEx("CerebralSoul",36,-36)
    HELE NOP 5 Bright
    HELE QRSTU 5
    HELE V -1 A_SetFloorClip
    Stop
  Death.Suicide:
	TNT1 A 0
	TNT1 A 100 A_NoBlocking
	Stop
  }
}

ACTOR CBElemSuicide2 : BombSuicide
{
Speed 35
DeathSound "ImpRed/death"
DropItem "HellStaff" 128
DropItem "BigDustMana" 128 100
DropItem "DustMana" 128 30
DropItem "DustMana" 128 30
DropItem "DustMana" 128 30
DropItem "Demon Tech BFG10K" 60
DropItem "BossLifeEssence", 128, 25
DropItem "BossArmorBonusMax", 128, 1
DropItem "DemonAmmoBox", 128, 200
DropItem "BFG15K", 128
Dropitem "CannongunSphere", 80
DamageType "BombBreath"
States
{
Spawn:
	TNT1 A 0
	TNT1 A 0 A_PlaySound("CELEM/Charge",7)
	TNT1 A 0 A_SeekerMissile(10,0)
	HELE GG 1 Bright A_SpawnItem("BombFireSpawner",0,0,0,0)
	TNT1 A 0 A_PlaySoundEx("bomb/suiciderush","Voice",1)	
    Goto Spawn+2
Death:
	TNT1 A 0 A_Die
Explode:
	TNT1 A 0 A_ChangeFlag(NOBLOCKMAP,1)
	TNT1 A 0 A_ChangeFlag(NOGRAVITY,1)
	TNT1 A 0 A_Explode
	TNT1 A 0 A_StopSoundEx("Voice")
	TNT1 A 0 A_PlaySound("bomb/explode")
	HELE I 5 Bright A_Scream
	TNT1 AAAA 0 A_SpawnItemEx("RedParticleSpawner", 0, 0, random(20,40), 0, 0, 0, 0, 128)  
	TNT1 AAAA 0 A_CustomMissile("SmokeFX", random(20,40), 0, random(0,360), 2, random(0,360))
	TNT1 AAAAAAA 0 A_CustomMissile("Kaboom18", random(20,40), 0, random(0,360), 2, random(0,360))
    HELE J 5 Bright
	TNT1 A 0 A_Explode(480,240)
	TNT1 A 0 A_StopSoundEx("Voice")
	TNT1 A 0 Radius_Quake(20,12,0,12,0)
	TNT1 A 0 A_PlaySound("weapons/dtech10kexplode")
	TNT1 A 0 A_SpawnItemEx("DTech10KShockwave2", 0, 0, 15, 0, 0, 0, 0, 128)
    TNT1 A 0 A_SpawnItem("RedDTBFGEx",0,-10)
	HELE KL 5 Bright
	TNT1 A 0 A_NoBlocking
    HELE M 5 Bright A_Gravity
    //HELE M 0 A_SpawnItemEx("CerebralSoul",36,36)
    //HELE M 0 A_SpawnItemEx("CerebralSoul",-36,36)
    //HELE M 0 A_SpawnItemEx("CerebralSoul",-36,-36)
    //HELE M 0 A_SpawnItemEx("CerebralSoul",36,-36)
    HELE NOP 5 Bright
    HELE QRSTU 5
    HELE V -1 A_SetFloorClip
	Stop
    } 
}

ACTOR CBElemGhostA
{
  Radius 2
  Height 2
  Speed 0
  Alpha 0.85
  Scale 1.2
  PROJECTILE
  RENDERSTYLE Translucent
  +CLIENTSIDEONLY
  States
  {
  Spawn:
    TNT1 A 0
    TNT1 A 0 A_JumpIf(ACS_ExecuteWithResult(304) == 1, "Toaster")
  Fade:
    TNT1 A 1
	HELE A 2 A_FadeOut(0.15)
	Goto Fade+1
  Toaster:
    TNT1 A 0
    Stop
  }
}

ACTOR CerebralSoul replaces HS
{
  Health 100
  Radius 24
  Height 48
  Mass 3000
  Speed 20
  Obituary "%o was blown apart by a Cerebral Soul."
  Monster
  SeeSound "HSphere/Sight"
  DeathSound "HSphere/Explode"
  Species "Souls"
  DamageFactor "Hell", 0.0
  DamageFactor "SatanGuard", 0.0
  DamageFactor "CacoLich", 0.0
  DamageFactor "PhazoDemon", 0.0
  DamageFactor "CacoComet", 0.0
  DamageFactor "CurseComet", 0.0
  DamageFactor "HelementalComet", 0.0
  Damagefactor "BloodSkull", 0.0
  DamageFactor "SoulToxic", 0.0
  DamageFactor "BombBreath", 0.0
  DamageFactor "SoapOpera" , 0.0
  DamageType "SoulToxic"
  MeleeRange 50
  +LOOKALLAROUND
  +DONTHURTSPECIES
  +QUICKTORETALIATE
  +NOTARGET
  +NOGRAVITY
  +FLOAT
  +DONTFALL
  +NOICEDEATH
  +CANTSEEK
  Tag "\c[m6]Cerebral Soul\c-"
  States
  {
  Spawn:
    TNT1 A 1 Bright A_Look
    Loop
  See:
    HADE EFGH 4 Bright
  SeeLoop:
	TNT1 A 0 A_Playsound("HSphere/Active")
    HADE AABBCCDD 2 Bright A_Chase
    TNT1 A 0 A_Jump(16,"TeleportOut")
    Loop
  TeleportOut:
    TNT1 A 0 A_UnSetShootable
    HADE H 3 Bright A_Playsound("HSphere/Tele")
    HADE GFEIJKL 2 Bright
  SeeTeleport:
    TNT1 AAAAAAAAAAA 1 A_Chase(0)
    TNT1 A 0 A_Jump(96,"TeleportIn")
    Loop
  TeleportIn:
    HADE L 2 Bright A_Playsound("HSphere/Tele")
    HADE KJIEFG 2 Bright
    TNT1 A 0 A_SetShootable
    Goto SeeLoop
  Melee:
    TNT1 A 0 A_SetInvulnerable
    TNT1 A 0 A_UnSetInvulnerable
    TNT1 A 0 A_SetShootable
    TNT1 A 0 A_Die
    Stop
  Death:
    TNT1 A 0 A_NoBlocking
	TNT1 A 0 A_SetTranslucent(0.9, 1)
	TNT1 A 0 A_Scream
	TNT1 AAA 0 A_SpawnItemEx("RedParticleSpawner", 0, 0, random(15,35), 0, 0, 0, 0, 128)  
	TNT1 AAA 0 A_CustomMissile("SmokeFX", random(15,35), 0, random(0,360), 2, random(0,360))
	TNT1 AAA 0 A_CustomMissile("Kaboom18",random(15,35),0,random(0,360),2,random(0,360))	
	HADE M 4 Bright A_Explode(112, 112)
    HADE NOPQ 5 Bright
    Stop
  }
}

ACTOR CBElemMiniDTBFG : LesserCardinalMiniDTBFG
{
DamageType "BombBreath"
Obituary "%o couldn't even hide from Cerebral Defiler's Mini DTBFG10K."
States
{
Spawn:
    TNT1 A 0
    TNT1 A 0 A_PlaySoundEx("LesserCardinal/BFGIdle","Voice",1)
	TNT1 A 0 A_SpawnItemEx("ProjectileTrailParticleOrange2",Random(-12,12),Random(-12,12),Random(12,22),Random(-2,2),Random(-2,2),Random(-2,2),Random(-20,20),128)
    CRS1 ABCD 1 Bright
	TNT1 A 0 A_SpawnItemEx("ProjectileTrailParticleOrange2",Random(-12,12),Random(-12,12),Random(12,22),Random(-2,2),Random(-2,2),Random(-2,2),Random(-20,20),128)
	CRS1 ABCD 1 Bright
    TNT1 A 0 A_CustomMissile("CBElemBFGProjectileAttack",Random(-10,10),0,0,CMF_TRACKOWNER)
    Loop  
    }
}

ACTOR CBElemBFGProjectileAttack : LesserCardinalBFGProjectileAttack
{
Obituary "%o couldn't even hide from Cerebral Defiler's Mini DTBFG10K."
MissileType "CBElemLightningProjectile"
}

ACTOR CBElemLightningProjectile : LesserCardinalLightningProjectile { DamageType "BombBreath" }

ACTOR MiniDevastatorBall
{
Radius 8
Height 8
DamageType "Cyber10K"
Obituary "%o underestimated a Clockwork Cyberdemon." 
Damage 500
Speed 15
Alpha 0.95
Scale 0.45
RENDERSTYLE Translucent
Alpha 0.85
PROJECTILE
+FORCERADIUSDMG
+FORCEXYBILLBOARD
+EXTREMEDEATH
+SKYEXPLODE
+MTHRUSPECIES
States
{
Spawn:
    TNT1 A 0
    TNT1 A 0 A_PlaySoundEx("devastator/fly","Voice",1)

	TNT1 A 0 A_CustomMissile("WeakDevastatorBolt",2,0,random(0,359),CMF_AIMDIRECTION|CMF_TRACKOWNER,random(-40,40))
	CRS9 A 0 A_CustomMissile("FusionLiteShot2",0,0,Random(0,360))
    CRS9 A 1 Bright A_SpawnItemEx("ProjectileTrailParticleRed",Random(-12,12),Random(-12,12),Random(-12,12),Random(-2,2),Random(-2,2),Random(-2,2),Random(-20,20),128)
	TNT1 A 0 A_SpawnItemEx("DevastatorLightningRed",Random(6,-6),Random(6,-6),Random(6,-6),0,0,0,0,128)
	CRS9 A 1 Bright A_CustomMissile("FusionDTBFGProjectileAttack2",Random(-10,10),0,0,CMF_TRACKOWNER)
	TNT1 A 0 //A_CustomMissile("MiniDevastatorTrail",0,0,0,CMF_AIMDIRECTION|CMF_TRACKOWNER,0) Does not exist
	TNT1 A 0 A_Explode(16,450,0)

	TNT1 A 0 A_CustomMissile("WeakDevastatorBolt",2,0,random(0,359),CMF_AIMDIRECTION|CMF_TRACKOWNER,random(-40,40))
	//CRS9 A 0 A_CustomMissile("FusionLiteShot2",0,0,Random(0,360))
    CRS9 B 1 Bright A_SpawnItemEx("ProjectileTrailParticleRed",Random(-12,12),Random(-12,12),Random(-12,12),Random(-2,2),Random(-2,2),Random(-2,2),Random(-20,20),128)
	TNT1 A 0 A_SpawnItemEx("DevastatorLightningRed2",Random(6,-6),Random(6,-6),Random(6,-6),0,0,0,0,128)
	CRS9 A 1 Bright A_CustomMissile("FusionDTBFGProjectileAttack2",Random(-10,10),0,0,CMF_TRACKOWNER)
	TNT1 A 0 A_Explode(16,450,0)

	TNT1 A 0 A_CustomMissile("WeakDevastatorBolt",2,0,random(0,359),CMF_AIMDIRECTION|CMF_TRACKOWNER,random(-40,40))
	CRS9 A 0 A_CustomMissile("FusionLiteShot2",0,0,Random(0,360))
    CRS9 C 1 Bright A_SpawnItemEx("ProjectileTrailParticleRed",Random(-12,12),Random(-12,12),Random(-12,12),Random(-2,2),Random(-2,2),Random(-2,2),Random(-20,20),128)
	TNT1 A 0 A_SpawnItemEx("DevastatorLightningRed",Random(6,-6),Random(6,-6),Random(6,-6),0,0,0,0,128)
	CRS9 A 1 Bright A_CustomMissile("FusionDTBFGProjectileAttack2",Random(-10,10),0,0,CMF_TRACKOWNER)
	TNT1 A 0 //A_CustomMissile("MiniDevastatorTrail",0,0,0,CMF_AIMDIRECTION|CMF_TRACKOWNER,0) Does not exist
	TNT1 A 0 A_Explode(16,450,0)

	TNT1 A 0 A_CustomMissile("WeakDevastatorBolt",2,0,random(0,359),CMF_AIMDIRECTION|CMF_TRACKOWNER,random(-40,40))
	//CRS9 A 0 A_CustomMissile("FusionLiteShot2",0,0,Random(0,360))
    CRS9 D 1 Bright A_SpawnItemEx("ProjectileTrailParticleRed",Random(-12,12),Random(-12,12),Random(-12,12),Random(-2,2),Random(-2,2),Random(-2,2),Random(-20,20),128)
	TNT1 A 0 A_SpawnItemEx("DevastatorLightningRed2",Random(6,-6),Random(6,-6),Random(6,-6),0,0,0,0,128)
	CRS9 A 1 Bright A_CustomMissile("FusionDTBFGProjectileAttack2",Random(-10,10),0,0,CMF_TRACKOWNER)
	TNT1 A 0 A_Explode(16,450,0)
    Goto Spawn
Death:
    TNT1 A 0
	TNT1 A 0 A_SetTranslucent(0.75,1)
	TNT1 A 0 Radius_Quake(3,35,0,10,0)
	TNT1 A 0 A_CustomMissile("DTBFG10KTracerCyber",0,0,0,CMF_TRACKOWNER)
	TNT1 A 0 A_CustomMissile("DTBFG10KTracerCyber",0,0,10,CMF_TRACKOWNER)
	TNT1 A 0 A_CustomMissile("DTBFG10KTracerCyber",0,0,20,CMF_TRACKOWNER)
	TNT1 A 0 A_CustomMissile("DTBFG10KTracerCyber",0,0,30,CMF_TRACKOWNER)
	TNT1 A 0 A_CustomMissile("DTBFG10KTracerCyber",0,0,40,CMF_TRACKOWNER)
	TNT1 A 0 A_CustomMissile("DTBFG10KTracerCyber",0,0,50,CMF_TRACKOWNER)
	TNT1 A 0 A_CustomMissile("DTBFG10KTracerCyber",0,0,60,CMF_TRACKOWNER)
	TNT1 A 0 A_CustomMissile("DTBFG10KTracerCyber",0,0,70,CMF_TRACKOWNER)
	TNT1 A 0 A_CustomMissile("DTBFG10KTracerCyber",0,0,80,CMF_TRACKOWNER)
	TNT1 A 0 A_CustomMissile("DTBFG10KTracerCyber",0,0,90,CMF_TRACKOWNER)
	TNT1 A 0 A_CustomMissile("DTBFG10KTracerCyber",0,0,100,CMF_TRACKOWNER)
	TNT1 A 0 A_CustomMissile("DTBFG10KTracerCyber",0,0,110,CMF_TRACKOWNER)
	TNT1 A 0 A_CustomMissile("DTBFG10KTracerCyber",0,0,120,CMF_TRACKOWNER)
	TNT1 A 0 A_CustomMissile("DTBFG10KTracerCyber",0,0,130,CMF_TRACKOWNER)
	TNT1 A 0 A_CustomMissile("DTBFG10KTracerCyber",0,0,140,CMF_TRACKOWNER)
	TNT1 A 0 A_CustomMissile("DTBFG10KTracerCyber",0,0,150,CMF_TRACKOWNER)
	TNT1 A 0 A_CustomMissile("DTBFG10KTracerCyber",0,0,160,CMF_TRACKOWNER)
	TNT1 A 0 A_CustomMissile("DTBFG10KTracerCyber",0,0,170,CMF_TRACKOWNER)
	TNT1 A 0 A_CustomMissile("DTBFG10KTracerCyber",0,0,180,CMF_TRACKOWNER)
	TNT1 A 0 A_CustomMissile("DTBFG10KTracerCyber",0,0,190,CMF_TRACKOWNER)
	TNT1 A 0 A_CustomMissile("DTBFG10KTracerCyber",0,0,200,CMF_TRACKOWNER)
	TNT1 A 0 A_CustomMissile("DTBFG10KTracerCyber",0,0,210,CMF_TRACKOWNER)
	TNT1 A 0 A_CustomMissile("DTBFG10KTracerCyber",0,0,220,CMF_TRACKOWNER)
	TNT1 A 0 A_CustomMissile("DTBFG10KTracerCyber",0,0,230,CMF_TRACKOWNER)
	TNT1 A 0 A_CustomMissile("DTBFG10KTracerCyber",0,0,240,CMF_TRACKOWNER)
	TNT1 A 0 A_CustomMissile("DTBFG10KTracerCyber",0,0,250,CMF_TRACKOWNER)
	TNT1 A 0 A_CustomMissile("DTBFG10KTracerCyber",0,0,260,CMF_TRACKOWNER)
	TNT1 A 0 A_CustomMissile("DTBFG10KTracerCyber",0,0,270,CMF_TRACKOWNER)
	TNT1 A 0 A_CustomMissile("DTBFG10KTracerCyber",0,0,280,CMF_TRACKOWNER)
	TNT1 A 0 A_CustomMissile("DTBFG10KTracerCyber",0,0,290,CMF_TRACKOWNER)
	TNT1 A 0 A_CustomMissile("DTBFG10KTracerCyber",0,0,300,CMF_TRACKOWNER)
	TNT1 A 0 A_CustomMissile("DTBFG10KTracerCyber",0,0,310,CMF_TRACKOWNER)
	TNT1 A 0 A_CustomMissile("DTBFG10KTracerCyber",0,0,320,CMF_TRACKOWNER)
	TNT1 A 0 A_CustomMissile("DTBFG10KTracerCyber",0,0,330,CMF_TRACKOWNER)
	TNT1 A 0 A_CustomMissile("DTBFG10KTracerCyber",0,0,340,CMF_TRACKOWNER)
	TNT1 A 0 A_CustomMissile("DTBFG10KTracerCyber",0,0,350,CMF_TRACKOWNER)	
	TNT1 A 0 A_SpawnItemEx("DevastatorLightningRedSpawner",0,0,0,0,0,0,0,128)	
	TNT1 A 0 A_Explode(40,256)
	CRS9 A 6 Bright A_SpawnItemEx("MiniDevastatorShockWave",0,0,0,0,0,0,0,128)
	TNT1 A 0 A_Explode(40,256)
	CRS9 B 6 Bright A_SpawnItemEx("MiniDevastatorShockWave",0,0,0,0,0,0,0,128)
	TNT1 A 0 A_Explode(40,256)
	CRS9 C 6 Bright A_SpawnItemEx("MiniDevastatorShockWave",0,0,0,0,0,0,0,128)
	TNT1 A 0 A_Explode(40,256)
	CRS9 D 6 Bright A_SpawnItemEx("MiniDevastatorShockWave",0,0,0,0,0,0,0,128)
	TNT1 A 0 A_Explode(40,256)
	CRS9 A 6 Bright A_SpawnItemEx("MiniDevastatorShockWave",0,0,0,0,0,0,0,128)
	TNT1 A 0 A_Explode(40,256)
	CRS9 B 6 Bright A_SpawnItemEx("MiniDevastatorShockWave",0,0,0,0,0,0,0,128)
	TNT1 A 0 A_Explode(40,256)
	CRS9 C 6 Bright A_SpawnItemEx("MiniDevastatorShockWave",0,0,0,0,0,0,0,128)
	TNT1 A 0 A_Explode(40,256)
	CRS9 D 6 Bright A_SpawnItemEx("MiniDevastatorShockWave",0,0,0,0,0,0,0,128)
	TNT1 A 0 A_Explode(40,256)
	CRS9 A 6 Bright A_SpawnItemEx("MiniDevastatorShockWave",0,0,0,0,0,0,0,128)
	TNT1 A 0 A_Explode(40,256)
	CRS9 B 6 Bright A_SpawnItemEx("MiniDevastatorShockWave",0,0,0,0,0,0,0,128)
	TNT1 A 0 A_Explode(40,256)
	CRS9 C 6 Bright A_SpawnItemEx("MiniDevastatorShockWave",0,0,0,0,0,0,0,128)
	TNT1 A 0 A_Explode(40,256)
	CRS9 D 6 Bright A_SpawnItemEx("MiniDevastatorShockWave",0,0,0,0,0,0,0,128)
	TNT1 A 0 A_Explode(64,1024,0)
	TNT1 A 0 A_Explode(230,640,0)
	TNT1 A 0 A_Explode(309,256)
	TNT1 A 0 A_StopSoundEx("Voice")
	TNT1 A 0 Radius_Quake(20,12,0,12,0)
	TNT1 A 0 A_PlaySound("BFG9K/Explode")
	TNT1 A 0 A_SpawnItemEx("DevastatorShockWave",0,0,0,0,0,0,0,128)
	TNT1 A 0 A_SpawnItem("RedDTBFGEx",0,-5)
	CRE9 D 0 A_CustomMissile("FusionDevastatorBall2",0,0,18,2)
    //CRE9 D 0 A_CustomMissile("FusionDevastatorBall2",0,0,36,2)
    CRE9 D 0 A_CustomMissile("FusionDevastatorBall2",0,0,54,2)
    //CRE9 D 0 A_CustomMissile("FusionDevastatorBall2",0,0,72,2)
    CRE9 D 0 A_CustomMissile("FusionDevastatorBall2",0,0,90,2)
    //CRE9 D 0 A_CustomMissile("FusionDevastatorBall2",0,0,108,2)
    CRE9 D 0 A_CustomMissile("FusionDevastatorBall2",0,0,126,2)
    //CRE9 D 0 A_CustomMissile("FusionDevastatorBall2",0,0,144,2)
    CRE9 D 0 A_CustomMissile("FusionDevastatorBall2",0,0,144,2)
    //CRE9 D 0 A_CustomMissile("FusionDevastatorBall2",0,0,162,2)
    CRE9 D 0 A_CustomMissile("FusionDevastatorBall2",0,0,180,2)
    //CRE9 D 0 A_CustomMissile("FusionDevastatorBall2",0,0,196,2)
    //CRE9 D 0 A_CustomMissile("FusionDevastatorBall2",0,0,216,2)
    //CRE9 D 0 A_CustomMissile("FusionDevastatorBall2",0,0,234,2)
    CRE9 D 0 A_CustomMissile("FusionDevastatorBall2",0,0,252,2)
   // CRE9 D 0 A_CustomMissile("FusionDevastatorBall2",0,0,270,2)
    CRE9 D 0 A_CustomMissile("FusionDevastatorBall2",0,0,288,2)
    //CRE9 D 0 A_CustomMissile("FusionDevastatorBall2",0,0,306,2)
    CRE9 D 0 A_CustomMissile("FusionDevastatorBall2",0,0,324,2)
   // CRE9 D 0 A_CustomMissile("FusionDevastatorBall2",0,0,342,2)
	CRE9 AAAAAABBBBBBCCCCCCDDDDDD 1 A_CustomMissile("KaboomDevastator22",0,0,random(0,360),2,random(0,360))
    CRE9 EF 6 Bright
    Stop    
    }
}

ACTOR MiniDevastatorShockWave : BFGShockwave 
{
States
{
Spawn:
TNT1 A 0
SHOK ABCDEFGHIJKLMNOPQR 1 Bright A_FadeOut(0.04)
Stop
}
}

ACTOR WeakDevastatorBolt
{
  Speed 35
  Radius 6
  Height 6
  Damage 9
  Alpha 0.8
  Projectile
  +SEEKERMISSILE
  +MTHRUSPECIES
  +DONTREFLECT
  +BRIGHT
  ReactionTime 170
  RenderStyle Add
  Damagetype "Cyber10K"
  DeathSound "bolt/explode"
  States
  {
  Spawn:
  	DVS1 A 0 A_Seekermissile(5,5,SMF_LOOK)
    DVS1 A 1 A_SpawnItem("BoltTrail")
    Loop
  Death:
    TNT1 A 0
    TNT1 A 0 A_JumpIf(ACS_ExecuteWithResult(304) == 1, "ToasterDeath")
    TNT1 A 0 A_SpawnItemEx("RedParticleSpawner",0,0,0,0,0,0,0,128)
    TNT1 AAAA 0 A_CustomMissile("KaboomDevastator15",0,0,random(0,360),2,random(0,360))
  ToasterDeath:
    DVS1 LMN 2
    Stop
  }
}

ACTOR FusionDTBFGProjectileAttack2
{
PROJECTILE
+LOOKALLAROUND
+ISMONSTER
+QUICKTORETALIATE
+NOTARGET
+NOCLIP
Obituary "%o underestimated a Clockwork Cyberdemon."
MissileType "FusionDTBFGRailgunSlug2"
States
{
Spawn:
    TNT1 A 0
	TNT1 AAAAA 1 A_Look
	Stop
See:
    TNT1 A 0
	TNT1 A 1 A_JumpIfCloser(950,"Attack")
	Stop
Attack:
    TNT1 A 0
	TNT1 A 0 A_FaceTarget
	TNT1 A 0 A_MissileAttack
	TNT1 A 1 A_CustomRailgun(-1,0,NONE,"Red",1,1,2)
	Goto Death	
Death:
	TNT1 A 1
	Stop
	}
}

ACTOR LiteShot2
{
   Radius 8
   Height 12
   Speed 32
   Damage 15
   PROJECTILE
   RENDERSTYLE ADD
   ALPHA 0.85
   Damagetype "PlayerDevBall"
   +THRUGHOST
   SeeSound "weapons/devlit"
   DeathSound "weapons/devzap" 
   States
   {
   Spawn:
      DLIT AAABBBCCC 1 Bright A_SpawnItem ("LiteTrail",0,0,0)
      Loop
   Death:
      DLIT DEFGHIJKLMNO 1 Bright
      Stop
   }
}

ACTOR FusionLiteShot2 : LiteShot2
{
   Damagetype "Cyber10K"
   States
   {
   Spawn:
      DLIT AAABBBCCC 1 Bright A_SpawnItem ("LiteTrail",0,0,0)
      Loop
   Death:
      DLIT DEFGHIJKLMNO 1 Bright
      Stop
   }
}