ACTOR BlueCardihilator : CorruptedCardinal
{
//Creator: NaturalxCF
//Origin: Nexus Infinity
//Sprite: CCRH
//Title: "Corrupted Cardihilator" 
Health 9000
Speed 15
Obituary "%o was blessed by a corrupted cardihilator."
// Damage Factors
DamageFactor 0.4
DamageFactor "PyroShot", 0.1
DamageFactor "PlayerPyro", 0.1
DamageFactor "PlayerBHole", 0.1
DamageFactor "Player", 0.05
DamageFactor "DBFG10K2", 0.0 // 0.05
DamageFactor "PlayerDBFG10K2", 0.025
DamageFactor "DBFG2", 0.0 // 0.05
DamageFactor "PlayerDBFG2", 0.05
DamageFactor "FreezerBurn", 0.0
DamageFactor "Ice", 0.0
DamageFactor "Legendary", 0.35 // Monster+player
DamageFactor "SuperWeapon", 0.35
DamageFactor "LegendaryPlayer", 0.35
DamageFactor "LegendaryGuru", 0.35
DamageFactor "LegendaryGuruPlayer", 0.35
DamageFactor "PlayerDevBall", 0.3
DamageFactor "PlayerDevTracer", 0.05
DamageFactor "PowerDoubleDamage", 0.1
DamageFactor "BFG10K", 0.65
DamageFactor "BFG9500Ball", 0.05
DamageFactor "CustomSpray", 0.05
DamageFactor "BFGSplash", 0.05
DamageFactor "BFGSpray", 0.05
DamageFactor "Explosion", 0.05
DamageFactor "PDTBFG", 0.05
DamageFactor "PDTBFGTracer", 0.05
DamageFactor "PlayerDTBFGRailgunSlug", 0.05
DamageFactor "PDTPuff", 0.05
// Drops
DropItem "BossLifeEssence", 192
DropItem "BossArmorBonusMax", 192
DropItem "DemonicChalice", 128, 1
DropItem "UltraSphere", 256, 1
Dropitem "D-BFG", 256
Dropitem "BFG3500", 128
Dropitem "GreaterCorruptedEnergy", 256, 32
Dropitem "GreaterCorruptedEnergy", 256, 32
Dropitem "GreaterCorruptedEnergy", 128, 24
Dropitem "CorruptedEnergy", 256, 10
Dropitem "CorruptedEnergy", 256, 10
Dropitem "CorruptedEnergy", 256, 10
Dropitem "CorruptedEnergy", 256, 10
Dropitem "MarineDBFGBeacon", 100, 1
Tag "\c[o7]Corrupted Cardihilator\c-"
States
{
	Spawn:
		CCRH A 4 Bright A_Look
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		CCRH B 4 Bright A_Look
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		Loop
	See:
		TNT1 A 0
		TNT1 A 0 A_JumpIf(user_music == 1,3)
		TNT1 A 0 ACS_NamedExecuteAlways("StartMonsterMusic",0,9017)
		TNT1 A 0 A_SetUserVar("user_music",1)
		TNT1 A 0 A_SetShootable
		TNT1 A 0 A_UnSetReflectiveInvulnerable
		TNT1 A 0 A_SetTranslucent(1)
		TNT1 A 0 A_JumpIfHealthLower(3000, 2) // 3000
		TNT1 A 0 A_Jump(256,2)
		TNT1 A 0 A_JumpIf(user_disappeared < 1, "Disappear")
		TNT1 A 0 A_Jump(100,"Rush")
		CCRH AA 2 Bright A_Chase
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		CCRH BB 2 Bright A_Chase
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		CCRH AA 2 Bright A_Chase
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		CCRH BB 2 Bright A_Chase
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		CCRH AA 2 Bright A_Chase
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		CCRH BB 2 Bright A_Chase
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		Loop
	Missile:
	Normal:
		TNT1 A 0 A_SetTranslucent(1)
		TNT1 A 0 A_Jump(128,"DBFG10K","Railgun")
		TNT1 A 0 A_Jump(128,"DBFG","DBFG10KBall")
		TNT1 A 0 A_Jump(64,"Lasers","FlashBFGs")
		TNT1 A 0 A_JumpIfCloser(128, "Teleport")
		//CCRH A 0 A_jump(100,5)
		CCRH C 5 Bright A_FaceTarget
		TNT1 A 0 A_FaceTarget
		TNT1 A 0 ThrustThing(angle*256/360, 15, 0, 0)
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		TNT1 A 0 A_CustomMissile("BlueCardinalRocket", 72, 30, 0)
		TNT1 A 0 A_CustomMissile("BlueCardinalRocket", 72, -30, 0)
		CCRH D 4 Bright A_FaceTarget
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		CCRH C 4 Bright A_FaceTarget
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		TNT1 A 0 A_CustomMissile("BlueCardinalRocket", 72, 30, 0)
		TNT1 A 0 A_CustomMissile("BlueCardinalRocket", 72, -30, 0)
		CCRH D 5 Bright A_FaceTarget
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		CCRH C 4 Bright A_FaceTarget
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		TNT1 A 0 A_CustomMissile("BlueCardinalRocket", 72, 30, 0)
		TNT1 A 0 A_CustomMissile("BlueCardinalRocket", 72, -30, 0)
		CCRH D 5 Bright A_FaceTarget
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		CCRH C 5 Bright A_FaceTarget
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		CCRH C 5 Bright A_FaceTarget
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		TNT1 A 0 A_JumpIfCloser(512, "Whirl")
		Goto See
	Rush:
		TNT1 A 0 A_PlaySound("BlueCardinal/Rush", CHAN_VOICE)
		TNT1 A 0 A_ChangeVelocity(0, 0, 0, CVF_REPLACE)
		CCRH A 2 Bright A_SpawnItemEx("BlueCardihilatorGhost")
		TNT1 AAAA 0 A_Chase
		CCRH A 2 Bright A_SpawnItemEx("BlueCardihilatorGhost")
		TNT1 AAAA 0 A_Chase
		CCRH B 2 Bright A_SpawnItemEx("BlueCardihilatorGhostB")
		TNT1 AAAA 0 A_Chase
		CCRH B 2 Bright A_SpawnItemEx("BlueCardihilatorGhostB")
		TNT1 AAAA 0 A_Chase
		TNT1 A 0 A_Jump(16,"Teleport")
		TNT1 A 0 A_Jump(32,"See")
		Loop
	"Whirl":
		TNT1 A 0
		TNT1 A 0 A_JumpIfCloser(128, "Teleport")
		TNT1 A 0 A_Jump(128, "DBFG10K")
		TNT1 A 0 A_PlaySound("BlueCardinal/Whirl", CHAN_VOICE)
		TNT1 A 0 A_FaceTarget
		TNT1 A 0 ThrustThing(angle*256/360, 15, 0, 0)
		CCR1 AA 2 Bright A_Chase(0, 0)
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		CCR1 BB 2 Bright A_Chase(0, 0)
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		CCR1 CC 2 Bright A_Chase(0, 0)
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		CCR1 DD 2 Bright A_Chase(0, 0)
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		CCR1 AB 3 Bright A_Chase(0, 0)
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		CCR1 CD 3 Bright A_Chase(0, 0)
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		CCR1 AB 2 Bright A_Chase(0, 0)
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		CCR1 CD 2 Bright A_Chase(0, 0)
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		CCR1 AB 2 Bright A_Chase(0, 0)
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		CCR1 CD 2 Bright A_Chase(0, 0)
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		TNT1 A 0 A_UnSetShootable
		TNT1 AAAAAAAAAAAA 0 A_SpawnItemEx("BlueCardLineSpawner")
		CCR1 AABBCCDDAAB 1 Bright A_FadeOut(0.1,0)
		TNT1 A 0 A_ChangeVelocity(0, 0, 0, CVF_REPLACE)
		TNT1 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 0 A_Chase(0, 0, CHF_NIGHTMAREFAST)
		TNT1 A 1 Bright A_PlayWeaponSound("boss/teleport")
		TNT1 AAAAAAAAAAAA 0 A_SpawnItemEx("BlueCardLineSpawner")
		CCRT BCCDDAABBCCD 1 A_FadeIn(0.1)
		TNT1 A 0 A_SetShootable
		TNT1 A 0 A_PlaySound("BlueCardinal/Spit")
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,0,2,0)
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,20,2,5)
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,40,2,10)
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,60,2,15)
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,80,2,25)
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,100,2,30)
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,120,2,35)
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,140,2,40)
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,160,2,45)
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,180,2,0)
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,200,2,-5)
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,220,2,-10)
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,240,2,-15)
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,260,2,-20)
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,280,2,-25)
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,300,2,-30)
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,320,2,-35)
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,340,2,-40)
		CCR1 AB 2 Bright A_Chase(0, 0)
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		CCR1 CD 2 Bright A_Chase(0, 0)
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		TNT1 A 0 A_PlaySound("BlueCardinal/Spit")
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,180,2,45)
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,200,2,40)
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,220,2,35)
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,240,2,30)
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,260,2,25)
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,280,2,20)
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,300,2,15)
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,320,2,10)
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,340,2,5)
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,0,2,0)
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,20,2,-5)
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,40,2,-10)
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,60,2,-15)
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,80,2,-20)
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,100,2,-25)
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,120,2,-30)
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,140,2,-35)
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,160,2,-40)
		CCR1 AB 2 Bright A_Chase(0, 0)
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		CCR1 CD 2 Bright A_Chase(0, 0)
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		TNT1 A 0 A_PlaySound("BlueCardinal/Spit")
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,90,2,45)
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,110,2,40)
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,130,2,35)
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,150,2,30)
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,170,2,25)
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,190,2,20)
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,210,2,15)
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,230,2,10)
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,250,2,5)
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,270,2,0)
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,290,2,-5)
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,310,2,-10)
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,330,2,-15)
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,350,2,-20)
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,10,2,-25)
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,30,2,-30)
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,50,2,-35)
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,70,2,-40)
		CCR1 AB 2 Bright A_Chase(0, 0)
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		CCR1 CD 2 Bright A_Chase(0, 0)
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		TNT1 A 0 A_PlaySound("BlueCardinal/Spit")
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,270,2,45)
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,290,2,40)
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,310,2,35)
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,330,2,30)
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,350,2,25)
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,10,2,20)
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,30,2,15)
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,50,2,10)
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,70,2,5)
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,90,2,0)
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,110,2,-5)
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,130,2,-10)
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,150,2,-15)
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,170,2,-20)
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,190,2,-25)
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,210,2,-30)
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,230,2,-35)
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,250,2,-40)
		CCR1 AB 2 Bright A_Chase(0, 0)
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		CCR1 CD 2 Bright A_Chase(0, 0)
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		CCR1 AB 2 Bright A_Chase(0, 0)
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		CCR1 CD 2 Bright A_Chase(0, 0)
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		CCR1 AB 3 Bright A_Chase(0, 0)
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		CCR1 CD 3 Bright A_Chase(0, 0)
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		CCR1 A 4 Bright A_Chase(0, 0)
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		CCR1 B 4 Bright A_Chase(0, 0)
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		CCR1 C 4 Bright A_Chase(0, 0)
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		CCR1 D 4 Bright A_Chase(0, 0)
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		Goto See
	Railgun:
		TNT1 A 0 A_PlaySound("CyberRail/Charge")
		CCRH C 4 Bright A_FaceTarget
		TNT1 A 0 A_FaceTarget
		TNT1 A 0 ThrustThing(angle*256/360, 15, 0, 0)
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		CCRH C 4 Bright A_FaceTarget
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		CCRH C 4 Bright A_FaceTarget
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		CCRH C 4 Bright A_FaceTarget
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		CCRH C 4 Bright A_FaceTarget
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		CCRH C 4 Bright A_FaceTarget
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		CCRH C 4 Bright A_FaceTarget
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		TNT1 A 0 A_CustomMissile("BlueCyberRail",88,30,0)
		TNT1 A 0 A_CustomMissile("BlueCyberRail",88,-30,0)
		CCRH D 4 Bright A_FaceTarget
		CCRH DDD 2 Bright A_FaceTarget
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		CCRH CC 2 Bright A_FaceTarget
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		CCRH CCCCC 2 A_FaceTarget
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		//TNT1 A 0 A_Jump(128,"Missile")
		Goto Missile
	"DBFG":
		TNT1 A 0 A_PlaySound("Weapons/dbfgcharge") // 196 tics.
		CCRH C 4 Bright A_FaceTarget
		TNT1 A 0 A_FaceTarget
		TNT1 A 0 ThrustThing(angle*256/360, 15, 0, 0)
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		CCRH C 4 Bright A_FaceTarget
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		CCRH C 4 Bright A_FaceTarget
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		CCRH C 4 Bright A_FaceTarget
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		CCRH C 4 Bright A_FaceTarget
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		CCRH C 4 Bright A_FaceTarget
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		CCRH C 4 Bright A_FaceTarget
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		CCRH C 4 Bright A_FaceTarget
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		CCRH C 4 Bright A_FaceTarget
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		CCRH C 4 Bright A_FaceTarget
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		CCRH C 4 Bright A_FaceTarget
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		CCRH C 4 Bright A_FaceTarget
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		CCRH CC 3 Bright A_FaceTarget
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		CCRH C 3 Bright A_FaceTarget
		CCRH CC 3 Bright A_FaceTarget
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		CCRH C 3 Bright A_FaceTarget
		CCRH CC 3 Bright A_FaceTarget
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		CCRH C 3 Bright A_FaceTarget
		CCRH CC 3 Bright A_FaceTarget
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		CCRH C 3 Bright A_FaceTarget
		CCRH CC 2 Bright A_FaceTarget
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		CCRH C 2 Bright A_FaceTarget
		CCRH C 2 Bright A_FaceTarget
		CCRH CC 2 Bright A_FaceTarget
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		TNT1 A 0 A_PlaySound("Weapons/dbfgfire", CHAN_AUTO)
		TNT1 A 0 A_CustomMissile("T3DBFGBall", 72, 30, Random(4, -4), 0, Random(4, -4))
		TNT1 A 0 A_CustomMissile("T3DBFGBall", 72, -30, Random(4, -4), 0, Random(4, -4))
		CCRH DDD 2 A_FaceTarget
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		CCRH CC 2 A_FaceTarget
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		TNT1 A 0 A_PlaySound("Weapons/dbfgcooldown")
		CCRH C 4 A_FaceTarget
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		Goto See
	"DBFG10K":
		TNT1 A 0
		TNT1 A 0 A_PlaySound("Weapons/dbfgcharge2") // 196 tics.
		CCRH CC 2 Bright A_FaceTarget
		TNT1 A 0 A_FaceTarget
		TNT1 A 0 ThrustThing(angle*256/360, 15, 0, 0)
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		CCRH CC 2 Bright A_FaceTarget
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		CCRH CC 2 Bright A_FaceTarget
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		/*
		CCRH CA 3 Bright A_FaceTarget
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		CCRH C 3 Bright A_FaceTarget
		CCRH CC 2 Bright A_FaceTarget
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		CCRH CC 2 Bright A_FaceTarget
		CCRH CC 2 Bright A_FaceTarget
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		*/
	"DBFG10KHold":
		CCRH CC 2 Bright A_FaceTarget
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		TNT1 A 0 A_PlaySound("Weapons/dbfgfire2")
		CCRH D 3 Bright A_CustomMissile("T3DBFG10kShot", 72, 30, Random(4, -4), 0, Random(4, -4))
		CCRH D 3 Bright A_CustomMissile("T3DBFG10kShot", 72, -30, Random(4, -4), 0, Random(4, -4))
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		TNT1 A 0 A_CheckSight(2)
		TNT1 A 0 A_Jump(240, "DBFG10KHold")
		TNT1 A 0 A_PlaySound("Weapons/dbfgcooldown2")
		CCRH CC 2
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		CCRH CC 2
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		CCRH AA 2 Bright A_FaceTarget
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		CCRH BB 2 Bright A_FaceTarget
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		CCRH AA 2 Bright A_FaceTarget
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		CCRH BB 2 Bright A_FaceTarget
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		CCRH AA 2 Bright A_FaceTarget
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		CCRH BB 2 Bright A_FaceTarget
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		Goto See
	"DBFG10KBall":
		TNT1 A 0
		TNT1 A 0 A_PlaySound("Weapons/dbfgcharge2") // 196 tics.
		CCRH CC 2 Bright A_FaceTarget
		TNT1 A 0 A_FaceTarget
		TNT1 A 0 ThrustThing(angle*256/360, 15, 0, 0)
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		CCRH CC 2 Bright A_FaceTarget
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		CCRH CC 2 Bright A_FaceTarget
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		TNT1 A 0 A_PlaySound("Weapons/dbfgfire2")
		TNT1 A 0 A_CustomMissile("T3DBFG10KBall",72,30)
		CCRH D 3 Bright A_CustomMissile("T3DBFG10KBall",72,-30)
		Goto Missile
	"FlashBFGs":
		TNT1 A 0 A_ChangeVelocity(0, 0, 0, CVF_REPLACE)
		TNT1 A 0 A_PlaySound("BlueCardinal/Flash", CHAN_NOPAUSE)
		CCRX A 4 Bright A_FaceTarget
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		CCRX B 4 Bright A_FaceTarget
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		CCRX C 4 Bright A_FaceTarget
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		CCRX D 4 Bright A_FaceTarget
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		CCRX E 4 Bright A_FaceTarget
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		CCRX D 4 Bright A_FaceTarget
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		CCRX E 4 Bright A_FaceTarget
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		CCRX D 4 Bright A_FaceTarget
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		CCRX E 4 Bright A_FaceTarget
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		CCRX D 3 Bright A_FaceTarget
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		CCRX E 3 Bright A_FaceTarget
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		CCRX D 3 Bright A_FaceTarget
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		CCRX E 3 Bright A_FaceTarget
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		CCRX D 3 Bright A_FaceTarget
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		CCRX E 3 Bright A_FaceTarget
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		CCRX DE 2 Bright A_FaceTarget
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		CCRX DE 2 Bright A_FaceTarget
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		CCRX DE 2 Bright A_FaceTarget
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		CCRX DE 2 Bright A_FaceTarget
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		CCRX DE 2 Bright A_FaceTarget
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		CCRX DE 2 Bright A_FaceTarget
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		CCRX DE 2 Bright A_FaceTarget
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		CCRX DEDE 1 Bright A_FaceTarget
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		CCRX DEDE 1 Bright A_FaceTarget
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		CCRX DEDE 1 Bright A_FaceTarget
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		TNT1 A 0 A_SetUserVar("user_flashing", 0)
	"Flashing":
		TNT1 A 0 A_JumpIf(user_flashing >= 6, "Missile")
		TNT1 A 0 A_SetUserVar("user_flashing", user_flashing+1)
		TNT1 A 0 A_UnSetShootable
		TNT1 AAAAAAAAAAAA 0 A_SpawnItemEx("BlueCardLineSpawner")
		CCRX EEEEE 1 Bright A_FadeOut(0.2,0)
		TNT1 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 0 A_Wander
		TNT1 AAAA 0 A_Chase(0, 0, CHF_NIGHTMAREFAST)
		TNT1 A 1 A_PlayWeaponSound("boss/teleport")
		TNT1 AAAAAAAAAAAA 0 A_SpawnItemEx("BlueCardLineSpawner")
		TNT1 A 0 A_FaceTarget
		CCRX EEEEE 1 A_FadeIn(0.2)
		CCRX DCBA 1 Bright A_FaceTarget
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		TNT1 A 0 A_SetShootable
		TNT1 A 0 A_PlaySound("Weapons/dbfgfire2")
		TNT1 A 0 A_CustomMissile("T3DBFG10KBall2",72,30)
		CCRH D 3 Bright A_CustomMissile("T3DBFG10KBall2",72,-30)
		TNT1 A 0 A_JumpIf(user_flashing >= 6, "Missile")
		CCRX ABCDE 1 Bright A_FaceTarget
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		Loop
	Lasers:
		TNT1 A 0 A_SetReflectiveInvulnerable
		TNT1 A 0 A_PlaySound("BlueCardinal/Charge2", CHAN_NOPAUSE)
		TNT1 A 0 A_SpawnItemEx("BlueCardShield", Random(-1,1), Random(-1,1), 8)
		CCRT AB 4 Bright A_FaceTarget
		TNT1 A 0 A_SpawnItemEx("BlueCardShield", Random(-1,1), Random(-1,1), 8)
		CCRT XA 4 Bright A_FaceTarget
		TNT1 A 0 A_SpawnItemEx("BlueCardShield", Random(-1,1), Random(-1,1), 8)
		CCRT BX 4 Bright A_FaceTarget
		TNT1 A 0 A_SpawnItemEx("BlueCardShield", Random(-1,1), Random(-1,1), 8)
		CCRT AB 4 Bright A_FaceTarget
		TNT1 A 0 A_SpawnItemEx("BlueCardShield", Random(-1,1), Random(-1,1), 8)
		CCRT XA 4 Bright A_FaceTarget
		TNT1 A 0 A_SpawnItemEx("BlueCardShield", Random(-1,1), Random(-1,1), 8)
		CCRT BX 4 Bright A_FaceTarget
		TNT1 A 0 A_SpawnItemEx("BlueCardShield", Random(-1,1), Random(-1,1), 8)
		CCRT X 4
		//TNT1 A 0 A_PlaySound("BlueCardinal/Charge", CHAN_AUTO|CHAN_NOPAUSE)
		TNT1 A 0 A_UnSetReflectiveInvulnerable
		TNT1 A 0 A_SetUserVar("user_lasershot", 0)
		TNT1 A 0 ThrustThing(angle*256/360, 15, 0, 0)
	Lasering:
		TNT1 A 0 A_JumpIf(user_lasershot >= 24, "Missile")
		TNT1 A 0 A_SetUserVar("user_lasershot", user_lasershot+1)
		TNT1 A 0 A_PlaySound("Laser/Beam", CHAN_NOPAUSE)
		TNT1 A 0 A_CustomMissile("LaserBeam",116,6,0,0)
		CCRH N 2 Bright A_CustomMissile("LaserBeam",116,-6,0,0)
		TNT1 A 0 A_CustomMissile("LaserBeam",116,6,0,0)
		CCRH O 2 Bright A_CustomMissile("LaserBeam",116,-6,0,0)
		Loop
	Rage:
		TNT1 A 0 A_JumpIfCloser(128, "Teleport")
		TNT1 A 0 A_UnSetShootable
		CCRH E 5 Bright A_FaceTarget
		TNT1 A 0 A_PlaySound("BlueCardinal/Whirl", CHAN_VOICE)
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,4)
		CCRH E 5 Bright A_FaceTarget
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,4)
		CCRH E 5 Bright A_FaceTarget
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,4)
		CCRH C 5 Bright A_FaceTarget
		TNT1 A 0 ThrustThing(angle*256/360, 15, 0, 0)
		TNT1 A 0 A_SpawnItemEx("BlueCardinalRagingSmokeSpawner",0,0,64)
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,4)
		CCRH C 5 Bright A_FaceTarget
		TNT1 A 0 A_SpawnItemEx("BlueCardinalRagingSmokeSpawner",0,0,64)
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,4)
		CCRH C 5 Bright A_FaceTarget
		TNT1 A 0 A_SpawnItemEx("BlueCardinalRagingSmokeSpawner",0,0,64)
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,4)
		CCRH C 5 Bright A_FaceTarget
		TNT1 A 0 A_SpawnItemEx("BlueCardinalRagingSmokeSpawner",0,0,64)
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,4)
		CCRH C 5 Bright A_FaceTarget
		TNT1 A 0 A_PlaySound("Weapons/dbfgcharge2") // 196 tics.
		CCRH C 4 Bright A_FaceTarget
		TNT1 A 0 A_SpawnItemEx("BlueCardinalRagingSmokeSpawner",0,0,64)
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,4)
		CCRH C 4 Bright A_FaceTarget
		TNT1 A 0 A_SpawnItemEx("BlueCardinalRagingSmokeSpawner",0,0,64)
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,4)
		CCRH C 4 Bright A_FaceTarget
		TNT1 A 0 A_SpawnItemEx("BlueCardinalRagingSmokeSpawner",0,0,64)
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,4)
		CCRH CC 3 Bright A_FaceTarget
		TNT1 A 0 A_SpawnItemEx("BlueCardinalRagingSmokeSpawner",0,0,64)
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,4)
		CCRH C 3 Bright A_FaceTarget
		CCRH CC 2 Bright A_FaceTarget
		TNT1 A 0 A_SpawnItemEx("BlueCardinalRagingSmokeSpawner",0,0,64)
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,4)
		CCRH C 2 Bright A_FaceTarget
		CCRH C 2 Bright A_FaceTarget
		CCRH CC 2 Bright A_FaceTarget
		TNT1 A 0 A_SpawnItemEx("BlueCardinalRagingSmokeSpawner",0,0,64)
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,4)
		TNT1 A 0 A_SetUserVar("user_mirrored", 0)
		TNT1 A 0 A_SetUserVar("user_rageshot", 0)
		TNT1 A 0 A_SetShootable
	Raging:
		TNT1 A 0 A_JumpIf(user_rageshot >= 24, "RagingFinalBlow")     
		TNT1 A 0 A_SetUserVar("user_rageshot", user_rageshot+1)
		TNT1 A 0 A_PlaySound("Weapons/dbfgfire2")
		TNT1 A 0 A_FaceTarget
		TNT1 A 0 A_CustomMissile("T3DBFG10kShot", 72, 30, Random(6, -6), 0, Random(4, -4))
		CCRH D 3 Bright A_CustomMissile("T3DBFG10kShot", 72, -30, Random(6, -6), 0, Random(4, -4))
		CCRH CC 1 Bright
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,4)
		Loop
	RagingFinalBlow:
		TNT1 A 0 A_PlaySound("Weapons/dbfgfire", CHAN_AUTO)
		TNT1 A 0 A_CustomMissile("T3DBFGBall", 72, 30, Random(4, -4), 0, Random(4, -4))
		TNT1 A 0 A_CustomMissile("T3DBFGBall", 72, -30, Random(4, -4), 0, Random(4, -4))
		CCRH DDC 2 A_FaceTarget
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		CCRH CC 2 A_FaceTarget
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		TNT1 A 0 A_PlaySound("Weapons/dbfgcooldown")
		CCRH C 4 A_FaceTarget
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		Goto Missile
	Pain:
		TNT1 A 0 A_SetTranslucent(1)
		TNT1 A 0 A_Jump(64,"PainMirror")
		TNT1 A 0 A_PlaySound("BlueCardinal/Pain")
		TNT1 A 0 A_Jump(32,"Rage","FlashBFGs")
		TNT1 A 0 A_Jump(64,"Teleport","Rage","FlashBFGs")
		TNT1 A 0 A_Jump(128,"Dodge")
		TNT1 A 0 A_Jump(128,"PainMissile")
		CCRH E 8 Bright
		TNT1 A 0 A_SpawnItem("BlueFireSpawner",0,16,0,0)
		Goto See
	"PainMirror":
		TNT1 A 0
		TNT1 A 0 A_PlaySound("BlueCardinal/Pain")
		TNT1 A 0 A_UnSetShootable
		TNT1 A 0 A_ChangeVelocity(0,0,0,CVF_REPLACE)
		CCRX A 1 A_SpawnItemEx("BlueCardihilatorTeleportMirrorOut", 0, 0, 0, -16, 0, 0, 0)
		CCRX A 1 A_SpawnItemEx("BlueCardihilatorTeleportMirrorOut", 0, 0, 0, -16, 0, 0, 45)
		CCRX A 1 A_SpawnItemEx("BlueCardihilatorTeleportMirrorOut", 0, 0, 0, -16, 0, 0, 90)
		CCRX A 1 A_SpawnItemEx("BlueCardihilatorTeleportMirrorOut", 0, 0, 0, -16, 0, 0, 135)
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		CCRX A 1 A_SpawnItemEx("BlueCardihilatorTeleportMirrorOut", 0, 0, 0, -16, 0, 0, 180)
		CCRX A 1 A_SpawnItemEx("BlueCardihilatorTeleportMirrorOut", 0, 0, 0, -16, 0, 0, 225)
		CCRX A 1 A_SpawnItemEx("BlueCardihilatorTeleportMirrorOut", 0, 0, 0, -16, 0, 0, 270)
		CCRX A 1 A_SpawnItemEx("BlueCardihilatorTeleportMirrorOut", 0, 0, 0, -16, 0, 0, 315)
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		TNT1 AAAAAAAAAAAA 0 A_SpawnItemEx("BlueCardLineSpawner")
		CCRX AAAAA 1 Bright A_FadeOut(0.2,0)
		TNT1 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 0 A_Wander
		TNT1 AAAAAAAAAAAAAAAAAAAAAAAAAA 1 A_Wander
		CCRX A 1 A_SpawnItemEx("BlueCardihilatorTeleportMirrorIn", -400, 0, 0, 16, 0, 0, 0)
		CCRX A 1 A_SpawnItemEx("BlueCardihilatorTeleportMirrorIn", -400, 0, 0, 16, 0, 0, 45)
		CCRX A 1 A_SpawnItemEx("BlueCardihilatorTeleportMirrorIn", -400, 0, 0, 16, 0, 0, 90)
		CCRX A 1 A_SpawnItemEx("BlueCardihilatorTeleportMirrorIn", -400, 0, 0, 16, 0, 0, 135)
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		CCRX A 1 A_SpawnItemEx("BlueCardihilatorTeleportMirrorIn", -400, 0, 0, 16, 0, 0, 180)
		CCRX A 1 A_SpawnItemEx("BlueCardihilatorTeleportMirrorIn", -400, 0, 0, 16, 0, 0, 225)
		CCRX A 1 A_SpawnItemEx("BlueCardihilatorTeleportMirrorIn", -400, 0, 0, 16, 0, 0, 270)
		CCRX A 1 A_SpawnItemEx("BlueCardihilatorTeleportMirrorIn", -400, 0, 0, 16, 0, 0, 315)
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		TNT1 A 1 A_PlayWeaponSound("boss/teleport")
		TNT1 AAAAAAAAAAAA 0 A_SpawnItemEx("BlueCardLineSpawner")
		TNT1 A 0 A_FaceTarget
		CCRX AAAAAAAAAAA 1 A_FadeIn(0.1)
		TNT1 A 0 A_SetShootable
		TNT1 A 0 A_Jump(32,"Rage")
		TNT1 A 0 A_Jump(64,"Teleport","Rage")
		TNT1 A 0 A_Jump(128,"Dodge")
		TNT1 A 0 A_Jump(128,"PainMissile")
		CCRT X 8 Bright
		TNT1 A 0 A_SpawnItem("BlueFireSpawner",0,16,0,0)
		Goto Missile
	Pain.Legendary:
	Pain.LegendaryPlayer:
	Pain.PlayerDevBall:
	Pain.PDTBFG:
	Pain.BFG10K:
		TNT1 A 0
		TNT1 A 0 A_Jump(200, "Teleport")
		TNT1 A 0
		Goto PainMissile
	Pain.LegendaryGuru:
	Pain.LegendaryGuruPlayer:
		TNT1 A 0
		TNT1 A 0 A_JumpIf(user_mirrored < 1, "MirrorDodge")
		TNT1 A 0 A_Jump(256, "Teleport")
		TNT1 A 0
		Goto PainMissile
	"Dodge":
		TNT1 A 0 A_FaceTarget
		TNT1 A 0 A_Jump(128,3)
		TNT1 A 0 ThrustThing(angle*256/360+64, 15, 0, 0)
		TNT1 A 0 A_Jump(256,2)
		TNT1 A 0 ThrustThing(angle*256/360+192, 15, 0, 0)
		CCRT X 8
		Goto PainMissile
	"MirrorDodge":
		TNT1 A 0 A_UnSetShootable
		TNT1 A 0 A_SetUserVar("user_mirrored", 1)
		TNT1 A 0 A_ChangeVelocity(0, 0, 0, CVF_REPLACE)
		TNT1 A 0 A_SpawnItemEx("LightBlueStruckGlow", 0, 0, 48)
		CCRT XXXXX 1 Bright A_FadeOut(0.2,0)
		TNT1 A 0 A_SpawnItemEx("BlueCardihilatorSplitMirror", 0, 0, 0, -16, 0, 0, 0)
		TNT1 A 0 A_SpawnItemEx("BlueCardihilatorSplitMirror", 0, 0, 0, -16, 0, 0, 45)
		TNT1 A 0 A_SpawnItemEx("BlueCardihilatorSplitMirror", 0, 0, 0, -16, 0, 0, 90)
		TNT1 A 0 A_SpawnItemEx("BlueCardihilatorSplitMirror", 0, 0, 0, -16, 0, 0, 135)
		TNT1 A 0 A_SpawnItemEx("BlueCardihilatorSplitMirror", 0, 0, 0, -16, 0, 0, 180)
		TNT1 A 0 A_SpawnItemEx("BlueCardihilatorSplitMirror", 0, 0, 0, -16, 0, 0, 225)
		TNT1 A 0 A_SpawnItemEx("BlueCardihilatorSplitMirror", 0, 0, 0, -16, 0, 0, 270)
		TNT1 A 0 A_SpawnItemEx("BlueCardihilatorSplitMirror", 0, 0, 0, -16, 0, 0, 315)
		TNT1 A 90 // 20+64+20=104
		CCRT XXXXX 1 Bright A_FadeIn(0.2)
		TNT1 A 0 A_SpawnItemEx("LightBlueStruckGlow", 0, 0, 48)
		TNT1 A 0 A_SetShootable
		Goto PainMissile
	PainMissile:
		TNT1 A 0
		CCRT X 8 Bright
		TNT1 A 0 A_SpawnItem("BlueFireSpawner",0,16,0,0)
		Goto Missile
	"Taunt":
		TNT1 A 0
		TNT1 A 0 A_SetReflectiveInvulnerable
		TNT1 A 0 A_PlaySound("BlueCardinal/Taunt", CHAN_VOICE)
		TNT1 A 0 A_SpawnItemEx("BlueCardShield", Random(-1,1), Random(-1,1), 8)
		CCRT A 4 Bright
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		CCRT B 4 Bright
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		TNT1 A 0 A_SpawnItemEx("BlueCardShield", Random(-1,1), Random(-1,1), 8)
		CCRT AB 3 Bright
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		CCRT A 2 Bright
		TNT1 A 0 A_SpawnItemEx("BlueCardShield", Random(-1,1), Random(-1,1), 8)
		CCRT B 2 Bright
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		CCRT AB 2 Bright
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		CCRT A 2 Bright
		TNT1 A 0 A_SpawnItemEx("BlueCardShield", Random(-1,1), Random(-1,1), 8)
		CCRT B 2 Bright
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		CCRT AB 3 Bright
		TNT1 A 0 A_SpawnItemEx("BlueCardShield", Random(-1,1), Random(-1,1), 8)
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		CCRT AB 4 Bright
		TNT1 A 0 A_SpawnItemEx("BlueCardShield", Random(-1,1), Random(-1,1), 8)
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		TNT1 A 0 A_UnSetReflectiveInvulnerable
		Goto See
	"Teleport":
		TNT1 A 0
		TNT1 A 0 A_UnSetShootable
		TNT1 AAAAAAAAAAAA 0 A_SpawnItemEx("BlueCardLineSpawner")
		CCRT XXXXXXXXXXX 1 Bright A_FadeOut(0.1,0)
		TNT1 A 0 A_ChangeVelocity(0, 0, 0, CVF_REPLACE)
		TNT1 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 0 A_Chase(0, 0, CHF_NIGHTMAREFAST)
		//TNT1 AAAA 0 A_Wander // Removed on 2016-07-31
		TNT1 A 1 A_PlayWeaponSound("boss/teleport")
		TNT1 AAAAAAAAAAAA 0 A_SpawnItemEx("BlueCardLineSpawner")
		TNT1 A 0 A_FaceTarget
		// Dash.
		TNT1 A 0 A_Jump(192,3)
		TNT1 A 0 ThrustThing(angle*256/360+128, 15, 0, 0)
		TNT1 A 0 A_Jump(256,2)
		TNT1 A 0 ThrustThing(angle*256/360, 15, 0, 0)
		CCRT XXXXXXXXXXX 1 A_FadeIn(0.1)
		CCRT X 20
		TNT1 A 0 A_ChangeVelocity(0, 0, 0, CVF_REPLACE)
		TNT1 A 0 A_SetShootable
		TNT1 A 0 A_Jump(70,"DBFG10K")
		TNT1 A 0 A_Jump(128,"Taunt")
		Goto Missile
	"Disappear":
		TNT1 A 0 A_UnSetShootable
		TNT1 A 0 A_SetUserVar("user_disappeared", 1)
		TNT1 AAAAAAAAAAAA 0 A_SpawnItemEx("BlueCardLineSpawner")
		CCRT XXXXXXXXXXX 4 Bright A_FadeOut(0.1,0)
		TNT1 A 0 A_ChangeVelocity(0, 0, 0, CVF_REPLACE)
		TNT1 A 0 A_SetUserVar("user_voidtravel", 0)
	"VoidTravel":
		TNT1 A 0 A_JumpIf(user_voidtravel >= Random(15,45), "Reappear")     
		TNT1 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 0 A_Wander
		TNT1 A 35
		TNT1 A 0 A_SetUserVar("user_voidtravel", user_voidtravel+1)
		Loop
	"Reappear":
		TNT1 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 0 A_Chase(0,0,CHF_NIGHTMAREFAST)
		TNT1 A 1 A_PlayWeaponSound("boss/teleport")
		TNT1 AAAAAAAAAAAA 0 A_SpawnItemEx("BlueCardLineSpawner")
		TNT1 A 0 A_FaceTarget
		TNT1 A 0 ThrustThing(angle*256/360+128,15,0,0)
		CCRT XXXXXXXXXXX 1 A_FadeIn(0.1)
		CCRT X 20
		TNT1 A 0 A_ChangeVelocity(0,0,0,CVF_REPLACE)
		TNT1 A 0 A_SetShootable
		TNT1 A 0 A_Jump(70,"DBFG10K")
		TNT1 A 0 A_Jump(128,"Taunt")
		Goto See
	Raise:
		Stop
	Death:
		TNT1 A 0
		TNT1 A 0 A_PlaySound("BlueCardinal/Taunt", CHAN_VOICE)
		// Dying
		CCRT A 4 Bright A_SpawnItemEx("BlueCardRocketExplosion", random(31,-31), frandom(31,-31), frandom(39,99), frandom(1,2), frandom(1,2), frandom(2,-2), random(0,359))
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		CCRT B 4 Bright A_SpawnItemEx("BlueCardRocketExplosion", random(31,-31), frandom(31,-31), frandom(39,99), frandom(1,2), frandom(1,2), frandom(2,-2), random(0,359))
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		// Whirl Attack
		TNT1 A 0 A_PlaySound("BlueCardinal/Spit")
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,0,2,0)
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,20,2,5)
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,40,2,10)
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,60,2,15)
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,80,2,25)
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,100,2,30)
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,120,2,35)
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,140,2,40)
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,160,2,45)
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,180,2,0)
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,200,2,-5)
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,220,2,-10)
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,240,2,-15)
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,260,2,-20)
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,280,2,-25)
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,300,2,-30)
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,320,2,-35)
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,340,2,-40)
		// Dying
		CCRT AB 3 Bright A_SpawnItemEx("BlueCardRocketExplosion", random(31,-31), frandom(31,-31), frandom(39,99), frandom(1,2), frandom(1,2), frandom(2,-2), random(0,359))
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		CCRT AB 2 Bright A_SpawnItemEx("BlueCardRocketExplosion", random(31,-31), frandom(31,-31), frandom(39,99), frandom(1,2), frandom(1,2), frandom(2,-2), random(0,359))
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		// Whirl attack 2
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,180,2,45)
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,200,2,40)
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,220,2,35)
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,240,2,30)
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,260,2,25)
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,280,2,20)
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,300,2,15)
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,320,2,10)
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,340,2,5)
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,0,2,0)
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,20,2,-5)
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,40,2,-10)
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,60,2,-15)
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,80,2,-20)
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,100,2,-25)
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,120,2,-30)
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,140,2,-35)
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,160,2,-40)
		// Dying
		CCRT AB 2 Bright A_SpawnItemEx("BlueCardRocketExplosion", random(31,-31), frandom(31,-31), frandom(39,99), frandom(1,2), frandom(1,2), frandom(2,-2), random(0,359))
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		CCRT AB 2 Bright A_SpawnItemEx("BlueCardRocketExplosion", random(31,-31), frandom(31,-31), frandom(39,99), frandom(1,2), frandom(1,2), frandom(2,-2), random(0,359))
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		// Whirl attack 3
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,90,2,45)
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,110,2,40)
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,130,2,35)
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,150,2,30)
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,170,2,25)
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,190,2,20)
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,210,2,15)
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,230,2,10)
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,250,2,5)
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,270,2,0)
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,290,2,-5)
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,310,2,-10)
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,330,2,-15)
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,350,2,-20)
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,10,2,-25)
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,30,2,-30)
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,50,2,-35)
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,70,2,-40)
		// Dying
		CCRT AB 1 Bright A_SpawnItemEx("BlueCardRocketExplosion", random(31,-31), frandom(31,-31), frandom(39,99), frandom(1,2), frandom(1,2), frandom(2,-2), random(0,359))
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		CCRT AB 1 Bright A_SpawnItemEx("BlueCardRocketExplosion", random(31,-31), frandom(31,-31), frandom(39,99), frandom(1,2), frandom(1,2), frandom(2,-2), random(0,359))
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		// Whirl attack 4
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,270,2,45)
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,290,2,40)
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,310,2,35)
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,330,2,30)
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,350,2,25)
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,10,2,20)
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,30,2,15)
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,50,2,10)
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,70,2,5)
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,90,2,0)
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,110,2,-5)
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,130,2,-10)
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,150,2,-15)
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,170,2,-20)
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,190,2,-25)
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,210,2,-30)
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,230,2,-35)
		TNT1 A 0 A_CustomMissile("BlueCardball",72,0,250,2,-40)
		// Explode
		CCRH F 5 Bright A_SpawnItemEx("BlueCardRocketExplosion", random(31,-31), frandom(31,-31), frandom(39,99), frandom(1,2), frandom(1,2), frandom(2,-2), random(0,359))
		TNT1 A 0 A_SpawnItemEx("BlueFireSpawner",0,0,-12)
		CCRH F 3 A_SpawnItemEx("BlueCardRocketExplosion", random(31,-31), frandom(31,-31), frandom(39,99), frandom(1,2), frandom(1,2), frandom(2,-2), random(0,359))
		CCRH G 2 Bright A_Scream
		CCRH GG 3 A_SpawnItemEx("BlueCardRocketExplosion", random(31,-31), frandom(31,-31), frandom(39,99), frandom(1,2), frandom(1,2), frandom(2,-2), random(0,359))
		CCRH H 5 Bright A_NoBlocking
		TNT1 A 0 A_SpawnItemEx("T3DBFGBoltExp")
		TNT1 A 0 A_SpawnItemEx("ShockDRifle",0,0,64,random(1,8),0,2,random(0,360),0,64)
		CCRH H 3 A_SpawnItemEx("BlueCardRocketExplosion", random(31,-31), frandom(31,-31), frandom(39,99), frandom(1,2), frandom(1,2), frandom(2,-2), random(0,359))
		CCRH I 2 Bright
		CCRH II 3 A_SpawnItemEx("BlueCardRocketExplosion", random(31,-31), frandom(31,-31), frandom(39,99), frandom(1,2), frandom(1,2), frandom(2,-2), random(0,359))
		CCRH J 2 Bright A_Explode
		CCRH JJ 3 A_SpawnItemEx("BlueCardRocketExplosion", random(31,-31), frandom(31,-31), frandom(39,99), frandom(1,2), frandom(1,2), frandom(2,-2), random(0,359))
		CCRH K 2 Bright
		CCRH K 3 A_SpawnItemEx("BlueCardRocketExplosion", random(31,-31), frandom(31,-31), frandom(39,99), frandom(1,2), frandom(1,2), frandom(2,-2), random(0,359))
		CCRH L 8 Bright A_BossDeath
		CCRH M 8 Bright
		TNT1 A 1
		Stop
	}
}

ACTOR BlueCardihilatorGhost : BlueCardinalGhost
{
States
	{
	Spawn:
		CCRH A 2 A_FadeOut(0.1,1)
		Loop
	}
}

ACTOR BlueCardihilatorGhostB : BlueCardinalGhost
{
States
	{
	Spawn:
		CCRH B 2 A_FadeOut(0.1,1)
		Loop
	}
}

ACTOR BlueCardihilatorMirror : MonsterGhost
{
Height 100
Radius 40
Scale 1.1
Alpha 0.0
States
	{
	Spawn:
		TNT1 A 0
		CCRH ABABABABAB 4 A_FadeIn(0.1) // BCRDE
		CCRH ABABA 1 A_FadeOut(0.2,1)
		Stop
	}
}

ACTOR BlueCardihilatorTeleportMirrorIn : BlueCardinalMirror
{
States
	{
	Spawn:
		TNT1 A 0
		CCRX AAAAAAAAAA 2 A_FadeIn(0.1) // BCRDE
		CCRX AAAAA 1 A_FadeOut(0.2,1)
		Stop
	}
}

ACTOR BlueCardihilatorTeleportMirrorOut : BlueCardinalMirror
{
Alpha 1.0
States
	{
	Spawn:
		TNT1 A 0
		CCRX AAAAAAAAAA 2 A_FadeOut(0.1,1) // BCRDE
		Stop
	}
}

ACTOR BlueCardihilatorSplitMirror : BlueCardinalMirror
{
States
	{
	Spawn:
		TNT1 A 0
		CCR1 ABCDABCD 2 A_FadeIn(0.1) // BCRDE
		TNT1 A 0 A_ChangeVelocity(0, 0, 0, CVF_RELATIVE|CVF_REPLACE)
		CCR1 ABCDABCDABCDABCD 2
		CCR1 ABCDABCDABCDABCD 2
		TNT1 A 0 A_ChangeVelocity(16, 0, 0, CVF_RELATIVE|CVF_REPLACE)
		CCR1 ABCDABCD 2 A_FadeOut(0.1,1) // BCRDE
		Stop
	}
}