ACTOR CyberBruiserDemon : CyberBaron
{
//Creator: Complex Doom CF 3.0 team
//Origin: Complex Doom CF 3.0 Aprilfools
//Sprite: BRCY
//Title: "Cyber Bruiser Demon"
Health 2800
SeeSound "superbaron/scream"
PainSound "superbaron/pain"
ActiveSound "superbaron/act"
DeathSound "superbaron/death"
DropItem "BossLifeEssence" 128 25
DropItem "BossArmorBonusMax" 128 1
DropItem "GreaterDemonicEnergy" 128 200
DropItem "GreaterFireEnergy" 128 200
DropItem "HellfireRodLauncher" 30
Obituary "%o got %p ass slapped by a Cyber Bruiser Demon."
HitObituary "%o was dismembered by a Cyber Bruiser Demon."
BloodColor "ff 5f 00"
MeleeDamage 16
Tag "\c[j9]Cyber \c[z4]Bruiser Demon\c-"
Scale 1.2
+MISSILEEVENMORE
+QUICKTORETALIATE
+BRIGHT
States 
{ 
  Spawn: 
    BRCY A 7 A_Look
    Loop 
  See:
    BRCY AABB 3 A_Chase
	TNT1 A 0 A_Playsound("cbaron/metal")
    TNT1 A 0 A_SpawnItem("HoofStep",0,0,0,0)
    BRCY CCDD 3 A_Chase
    TNT1 A 0 A_Playsound("monster/bruwlk")
    Loop
  Pause:
	TNT1 A 0
	TNT1 A 0 A_PlaySound("weapons/expmgunspinstop")
	BRCY E 10 A_StopSoundEx("Voice")
	Goto See
  Missile:
    TNT1 A 0
    TNT1 A 0 A_JumpIfCloser(400,"FlamethrowerShot")
	TNT1 A 0 A_Jump(100,"HellfireGauss","PyroBall","Railgun","BFG10K","MiniDTBFG")
	TNT1 A 0 A_Jump(200,"BigBall","Spread","Floor","PyroRocket","Missiles","Napalm")
  Normal:
    TNT1 A 0 A_JumpIfCloser(2000,1)
    Goto Missiles
    TNT1 A 0 A_PlaySound("weapons/expmgunspinstart")
    BRCY E 10 A_FaceTarget
	TNT1 A 0 A_PlaySoundEx("weapons/expmgunspin","Voice")
	TNT1 A 0 A_PlaySound("sentient/fire")
	TNT1 A 0 A_SpawnItemEx("OrangeShellCasing", 12, 6, 30, Random(2, 6), 0, Random(1, 3), Random(-80, -90), 128)
    BRCY F 2 A_CustomMissile("CybernobleExplosiveTracer",Random(38,42),8,Random(4,-4),0)
    BRCY E 1 A_FaceTarget
	TNT1 A 0 A_CustomMissile("MonsterTracer",Random(30,34),0,Random(5,-5),0)
    TNT1 A 0 A_PlaySound("sentient/fire")
	TNT1 A 0 A_SpawnItemEx("OrangeShellCasing", 12, 6, 30, Random(2, 6), 0, Random(1, 3), Random(-80, -90), 128)
    BRCY F 2 A_CustomMissile("CybernobleExplosiveTracer",Random(38,42),8,Random(4,-4),0)
    BRCY E 1 A_FaceTarget
	TNT1 A 0 A_JumpIfCloser(400,"FlamethrowerShotQuick")
    TNT1 A 0 A_MonsterRefire(10,"Pause") 
    Goto Normal+3
  FlamethrowerShot:
	BRCY EEEE 5 A_FaceTarget
	BRCY FF 1 A_FaceTarget
	TNT1 A 0 A_PlaySound("Weapons/PyroSGShot")
	TNT1 AAAA 0 A_CustomMissile("NobleFlamethrowerShot",40,20,random(-6,6),CMF_TRACKOWNER)
	BRCY EEEE 3 A_FaceTarget
	BRCY FF 1 A_FaceTarget
	TNT1 A 0 A_PlaySound("Weapons/PyroSGShot")
	TNT1 AAAA 0 A_CustomMissile("NobleFlamethrowerShot",40,20,random(-6,6),CMF_TRACKOWNER)
	BRCY EEEE 3 A_FaceTarget
	BRCY FF 1 A_FaceTarget
	TNT1 A 0 A_PlaySound("Weapons/PyroSGShot")
	TNT1 AAAA 0 A_CustomMissile("NobleFlamethrowerShot",40,20,random(-6,6),CMF_TRACKOWNER)
	BRCY E 5 
	TNT1 A 0 A_Jump(128,"Missiles","PyroBall","PyroRocket","Napalm")
	GoTo See
  FlamethrowerShotQuick:
	BRCY FF 1 A_FaceTarget
	TNT1 A 0 A_StopSoundEx("Voice")
	TNT1 A 0 A_PlaySound("Weapons/PyroSGShot")
	TNT1 AAAA 0 A_CustomMissile("NobleFlamethrowerShot",40,20,random(-6,6),CMF_TRACKOWNER)
	BRCY EEEE 3 A_FaceTarget
	BRCY FF 1 A_FaceTarget
	TNT1 A 0 A_PlaySound("Weapons/PyroSGShot")
	TNT1 AAAA 0 A_CustomMissile("NobleFlamethrowerShot",40,20,random(-6,6),CMF_TRACKOWNER)
	BRCY EEEE 3 A_FaceTarget
	BRCY FF 1 A_FaceTarget
	TNT1 A 0 A_PlaySound("Weapons/PyroSGShot")
	TNT1 AAAA 0 A_CustomMissile("NobleFlamethrowerShot",40,20,random(-6,6),CMF_TRACKOWNER)
	BRCY E 5 
	TNT1 A 0 A_Jump(128,"Missiles","PyroBall","PyroRocket","Napalm")
	GoTo See
  Napalm:
    BRCY E 14 A_FaceTarget
    BRCY F 8 A_CustomMissile("NobleNapalmBall",40,20,0,0)
    BRCY E 10 A_FaceTarget
    BRCY F 8 A_CustomMissile("NobleNapalmBall",40,20,0,0)
    BRCY E 10 A_FaceTarget
    BRCY F 8 A_CustomMissile("NobleNapalmBall",40,20,0,0)
    BRCY E 10
	TNT1 A 0 A_Jump(128,"Missiles","PyroBall","PyroRocket")
    Goto See
  PyroRocket:
    BRCY E 14 A_FaceTarget
    BRCY F 8 A_CustomMissile("NoblePyroRocket",40,20,0,0)
    BRCY E 10 A_FaceTarget
    BRCY F 8 A_CustomMissile("NoblePyroRocket",40,20,0,0)
    BRCY E 10 A_FaceTarget
    BRCY F 8 A_CustomMissile("NoblePyroRocket",40,20,0,0)
    BRCY E 10
	TNT1 A 0 A_Jump(128,"PyroBall","HellfireGauss","Railgun")
    Goto See
  PyroBall:
    BRCY E 14 A_FaceTarget
    BRCY F 8 A_CustomMissile("ObliteratorFireball",40,20,0,0)
    BRCY E 10 A_FaceTarget
    BRCY F 8 A_CustomMissile("ObliteratorFireball",40,20,0,0)
    BRCY E 10 A_FaceTarget
    BRCY F 8 A_CustomMissile("ObliteratorFireball",40,20,0,0)
    BRCY E 10
	TNT1 A 0 A_Jump(128,"Railgun","HellfireGauss","BFG10K")
    Goto See
  BigBall:
	BRCY HI 6 A_FaceTarget 
	BRCY J 1 A_CustomMissile("BBall2", 32, 0, 0)		
	TNT1 A 0 A_CustomMissile("BBall2", 32, 0, 6)
	BRCY J 1 A_CustomMissile("BBall2", 32, 0, -6)		
	TNT1 A 0 A_CustomMissile("BBall2", 32, 0, 12)
	BRCY J 3 A_CustomMissile("BBall2", 32, 0, -12)
	BRCY HI 6 A_FaceTarget 
	BRCY J 1 A_CustomMissile("BBall2", 32, 0, 0)		
	TNT1 A 0 A_CustomMissile("BBall2", 32, 0, 6)
	BRCY J 1 A_CustomMissile("BBall2", 32, 0, -6)		
	TNT1 A 0 A_CustomMissile("BBall2", 32, 0, 12)
	BRCY J 3 A_CustomMissile("BBall2", 32, 0, -12)	
	TNT1 A 0 A_Jump(128,"Spread","Floor","Missiles","Napalm","PyroRocket")
	Goto See
 Spread:
	BRCY HI 6 A_FaceTarget 
	BRCY J 1 A_CustomMissile("BBall", 32, 0, 0)		
	TNT1 A 0 A_CustomMissile("BBall", 32, 0, 4)
	BRCY J 1 A_CustomMissile("BBall", 32, 0, -4)	
	TNT1 A 0 A_CustomMissile("BBall", 32, 0, 8)
	BRCY J 1 A_CustomMissile("BBall", 32, 0, -8)	
	TNT1 A 0 A_CustomMissile("BBall", 32, 0, 12)
	BRCY J 1 A_CustomMissile("BBall", 32, 0, -12)	
	TNT1 A 0 A_CustomMissile("BBall", 32, 0, 16)
	BRCY J 1 A_CustomMissile("BBall", 32, 0, -16)
	TNT1 A 0 A_Jump(128,"Floor","Missiles","Napalm","PyroRocket")
	Goto See
 Floor:
	BRCY HHHIII 4 A_FaceTarget 
	BRCY J 0 A_CustomMissile("PyroFireSpawner",32,0,-6)
	BRCY J 0 A_CustomMissile("PyroFireSpawner",32,0,6)
	BRCY J 25 A_CustomMissile("PyroFireSpawner",32,0,0)
	TNT1 A 0 A_Jump(128,"Missiles","Napalm","PyroRocket")
	Goto See
 Missiles:
    BRCY E 5 A_FaceTarget
    BRCY F 5 A_CustomMissile("CyhunterDraugrMissile",40,8,random(-3,3))
	BRCY E 5 A_FaceTarget
    BRCY F 5 A_CustomMissile("CyhunterDraugrMissile",40,8,random(-3,3))
	BRCY E 5 A_FaceTarget
    BRCY F 5 A_CustomMissile("CyhunterDraugrMissile",40,8,random(-3,3))
	BRCY E 5 A_FaceTarget
    BRCY F 5 A_CustomMissile("CyhunterDraugrMissile",40,8,random(-3,3))
	BRCY E 5 A_FaceTarget
    BRCY F 5 A_CustomMissile("CyhunterDraugrMissile",40,8,random(-3,3))
	BRCY E 5 A_FaceTarget
    BRCY F 5 A_CustomMissile("CyhunterDraugrMissile",40,8,random(-3,3))
    BRCY E 10 A_Jump(128,"Railgun","PyroBall","Napalm","PyroRocket")
    Goto See	
 Railgun:
	TNT1 A 0 A_PlaySound("weapons/rgcharge")
	BRCY EEEEEEEEEEEEEEE 2 A_FaceTarget	     
	BRCY F 7 A_CustomMissile("CydestroyerRail",50,8,Random(4,-4))	
	BRCY EEE 4 A_FaceTarget	
	TNT1 A 0 A_Jump(128,"HellfireGauss","BFG10K","MiniDTBFG")
	Goto See
 BFG10K:
    TNT1 A 0 A_PlaySound("weapons/charge15k")
    BRCY E 18 A_FaceTarget
	BRCY E 6 A_FaceTarget
	HPAL F 0 A_PlaySound("weapons/bfg15kfire")
    BRCY F 4 A_CustomMissile("Cy10K",40,8,random(-4,4))
	BRCY E 4 A_FaceTarget
	HPAL F 0 A_PlaySound("weapons/bfg15kfire")
    BRCY F 4 A_CustomMissile("Cy10K",40,8,random(-4,4))
	BRCY E 4 A_FaceTarget
	HPAL F 0 A_PlaySound("weapons/bfg15kfire")
    BRCY F 4 A_CustomMissile("Cy10K",40,8,random(-4,4))
	BRCY E 4 A_FaceTarget
	HPAL F 0 A_PlaySound("weapons/bfg15kfire")
    BRCY F 4 A_CustomMissile("Cy10K",40,8,random(-4,4))
	BRCY E 4 A_FaceTarget
	HPAL F 0 A_PlaySound("weapons/bfg15kfire")
    BRCY F 4 A_CustomMissile("Cy10K",40,8,random(-4,4))
	BRCY E 20 A_PlaySound("weapons/bfg15kcooldown",CHAN_AUTO)
	TNT1 A 0 A_Jump(128,"MiniDTBFG","HellfireGauss")
    Goto See
 MiniDTBFG:
	TNT1 A 0 A_PlaySound("LesserCardinal/BFGCharge")
	BRCY EEEEEE 5 A_FaceTarget	     
	BRCY F 10 A_CustomMissile("LesserCardinalMiniDTBFG",40,8,Random(4,-4))	
	BRCY EE 5 A_FaceTarget	
	BRCY F 10 A_CustomMissile("LesserCardinalMiniDTBFG",40,8,Random(4,-4))	
	BRCY EE 5 A_FaceTarget	
	BRCY F 25 A_CustomMissile("LesserCardinalMiniDTBFG",40,8,Random(4,-4))	
	BRCY EE 5 A_FaceTarget	
	TNT1 A 0 A_Jump(128,"HellfireGauss")
	Goto See	
 HellfireGauss:
	BRCY E 14 A_FaceTarget	   
	TNT1 A 0 A_PlaySound("Weapons/HFGaussFire",1)
	BRCY F 10 A_CustomMissile("HFGaussProjectile",40,8,Random(2,-2))	
	BRCY E 10 A_FaceTarget	
	Goto See	
  Melee:
    BRCY HI 6 A_FaceTarget
	BRCY J 1 A_CustomMissile("BBall", 32, 0, 0)		
	TNT1 A 0 A_CustomMissile("BBall", 32, 0, 4)
	BRCY J 1 A_CustomMissile("BBall", 32, 0, -4)	
	TNT1 A 0 A_CustomMissile("BBall", 32, 0, 8)
	BRCY J 1 A_CustomMissile("BBall", 32, 0, -8)	
	TNT1 A 0 A_CustomMissile("BBall", 32, 0, 12)
	BRCY J 1 A_CustomMissile("BBall", 32, 0, -12)	
	TNT1 A 0 A_CustomMissile("BBall", 32, 0, 16)
	BRCY J 1 A_CustomMissile("BBall", 32, 0, -16)
    BRCY J 4 A_MeleeAttack
    Goto See
  Pain: 
    TNT1 A 0 A_Jump(135,"PainMissile")
    BRCY G 4 A_Pain
    Goto See
  PainMissile:
    BRCY G 4 A_Pain
    Goto Missile	
  Death:
    TNT1 A 0 
    TNT1 A 0 A_StopSoundEx("Voice")
    BRCY K 20 A_Scream
	TNT1 AA 0 A_SpawnItemEx("OrangeGibbedGenerator",0,0,0,0,0,0,0,128,0)	
	BRCY LLLMMMNNNOOO 2 A_CustomMissile ("Kaboom", Random(10,50), 0, random(0,360), 2, random(0,360))
	TNT1 AAAAAAAAA 0 A_SpawnItemEx("HFBaronLavaMist",0,0,20,Random(8,-8),Random(8,-8),Random(6,-6))
	TNT1 AA 0 A_SpawnItemEx("OrangeGibbedGenerator",0,0,0,0,0,0,0,128,0)
    TNT1 AAAA 0 A_CustomMissile("SmokeFX", Random(30,60), 0, random(0,360), 2, random(0,360))	
    BRCY P 4 A_NoBlocking
	TNT1 A 0 A_changeflag("BRIGHT",0)
	TNT1 AAAAAAAAAAAAAAAAAAAAAAA 0 A_SpawnItemEx("HFBaronLavaMist",0,0,20,Random(8,-8),Random(8,-8),Random(6,-6))
	TNT1 AAAA 0 A_CustomMissile("SmokeFX", Random(30,60), 0, random(0,360), 2, random(0,360))	
    BRCY QQQRRR 2 A_SpawnItemEx("OrangeParticleSpawner", Random(10,-10), Random(10,-10), Random(30,60), 0, 0, 0, 0, 128)
	TNT1 A 0 A_BossDeath
    BRCY S -1 A_KillMaster
    Stop
  Raise:
  	TNT1 A 0
	TNT1 A 0 A_changeflag("BRIGHT",1)
	TNT1 A 0 A_SpawnItemEx("VileHealEffect",0,0,0,0,0,0,0,SXF_NOCHECKPOSITION)
    BRCY RQPONMLK 3
	Goto See
    } 
}