Actor Satanic_Cyberdemon : Cyberdemon //Replaces Cyberdemon
{
	PainChance 0
	DamageFactor NoDamage,	0
	DamageFactor Fire, 		0.25
	DamageFactor Posession, 0
	DropItem "Satanic_TaintedCrossAltAmmo" 256
	States
	{
	Spawn:
		CYBR A 0 Thing_Hate(0,669,3)
		CYBR AB 10 A_Look
		Goto Spawn+1
	Pain.DrainHealthEver:
		CYBR G 0
		CYBR G 0 ACS_ExecuteAlways(772,0,16,0,0)
    	CYBR G 10 A_Pain
    	Goto See
	XDeath:
	Death:
		CYBR H 0 A_Scream
		CYBR H 1 A_NoBlocking
		CYBR H 0 A_Fall
		CYBR HIJ 5
		TNT1 A 0 A_SpawnItemEx("SRBloodFountain",10,0,0)
		TNT1 A 0 A_SpawnItemEx("SRBloodFountain",-10,0,0)
		TNT1 A 0 A_SpawnItemEx("SRBloodFountain",0,10,0)
		TNT1 A 0 A_SpawnItemEx("CyberSplosion",0,0,20)
		TNT1 A 0 A_SpawnItemEx("CyberdemonHead",0,0,120,5,0,5)
		TNT1 A 0 A_SpawnItemEx("CyberdemonRightArm",20,0,80,0,7,frandom(1,2))
		TNT1 A 0 A_SpawnItemEx("CyberdemonLeftArm",-20,0,80,0,-7,frandom(1,2))
		CYBR K 5
		CYBR LMNO 5
		CYBR P 0 A_BossDeath
		CYBR P -1
		Stop
	Death.DrainMana:
		CYBR H 0 A_Scream
		CYBR H 1 A_NoBlocking
		CYBR H 0 A_Fall
		CYBR H 0 ACS_ExecuteAlways(779,0,48,0,0)
		CYBR HIJ 5
		TNT1 A 0 A_SpawnItemEx("SRBloodFountain",10,0,0)
		TNT1 A 0 A_SpawnItemEx("SRBloodFountain",-10,0,0)
		TNT1 A 0 A_SpawnItemEx("SRBloodFountain",0,10,0)
		TNT1 A 0 A_SpawnItemEx("CyberSplosion",0,0,20)
		TNT1 A 0 A_SpawnItemEx("CyberdemonHead",0,0,120,5,0,10)
		TNT1 A 0 A_SpawnItemEx("CyberdemonRightArm",20,0,90,0,7,1)
		TNT1 A 0 A_SpawnItemEx("CyberdemonLeftArm",-20,0,80,0,-7,0)
		CYBR K 5
		CYBR LMNO 5
		CYBR P 0 A_BossDeath
		CYBR P -1
		Stop
	Death.DrainHealthEver:	
	Death.DrainHealth:
		CYBR H 0 A_Scream
		CYBR H 1 A_NoBlocking
		CYBR H 0 A_Fall
		CYBR H 0 ACS_ExecuteAlways(772,0,80,0,0)
		TNT1 A 0 A_SpawnItemEx("SRBloodFountain",10,0,0)
		TNT1 A 0 A_SpawnItemEx("SRBloodFountain",-10,0,0)
		TNT1 A 0 A_SpawnItemEx("SRBloodFountain",0,10,0)
		CYBR HIJ 5
		TNT1 A 0 A_SpawnItemEx("CyberSplosion",0,0,20)
		TNT1 A 0 A_SpawnItemEx("CyberdemonHead",0,0,120,-5,0,20)
		TNT1 A 0 A_SpawnItemEx("CyberdemonRightArm",20,0,80,0,7,0)
		TNT1 A 0 A_SpawnItemEx("CyberdemonLeftArm",-20,0,80,0,-7,0)
		CYBR K 5
		CYBR LMNO 5
		CYBR P 0 A_BossDeath
		CYBR P -1
		Stop
	Death.DemonFire:
	Burn:
		CYBB H 0 A_Scream
		CYBR H 1 A_NoBlocking
		CYBB H 0 A_Fall
		CYBB H 0 A_CustomMissile("Satanic_HellfireDeviceBoltSecondary",Random(0,64),0,Random(-360,360),0,0)
		CYBB H 0 A_CustomMissile("Satanic_HellfireDeviceBoltSecondary",Random(0,64),0,Random(-360,360),0,0)
		CYBB H 0 A_CustomMissile("Satanic_HellfireDeviceBoltSecondary",Random(0,64),0,Random(-360,360),0,0)
		CYBB H 0 A_CustomMissile("Satanic_HellfireDeviceBoltSecondary",Random(0,64),0,Random(-360,360),0,0)
		CYBB H 0 A_CustomMissile("Satanic_HellfireDeviceBoltSecondary",Random(0,64),0,Random(-360,360),0,0)
		CYBB H 0 A_CustomMissile("Satanic_HellfireDeviceBoltSecondary",Random(0,64),0,Random(-360,360),0,0)
		CYBB H 0 A_CustomMissile("Satanic_HellfireDeviceBoltSecondary",Random(0,64),0,Random(-360,360),0,0)
		CYBB H 0 A_CustomMissile("Satanic_HellfireDeviceBoltSecondary",Random(0,64),0,Random(-360,360),0,0)
		CYBB H 0 A_CustomMissile("Satanic_HellfireDeviceBoltSecondary",Random(0,64),0,Random(-360,360),0,0)
		CYBB H 0 A_CustomMissile("Satanic_HellfireDeviceBoltSecondary",Random(0,64),0,Random(-360,360),0,0)
		CYBB H 0 A_CustomMissile("Satanic_HellfireDeviceBoltSecondary",Random(0,64),0,Random(-360,360),0,0)
		CYBB H 0 A_CustomMissile("Satanic_HellfireDeviceBoltSecondary",Random(0,64),0,Random(-360,360),0,0)
		CYBB H 0 A_CustomMissile("Satanic_HellfireDeviceBoltSecondary",Random(0,64),0,Random(-360,360),0,0)
		CYBB H 0 A_CustomMissile("Satanic_HellfireDeviceBoltSecondary",Random(0,64),0,Random(-360,360),0,0)
		CYBB H 0 A_CustomMissile("Satanic_HellfireDeviceBoltSecondary",Random(0,64),0,Random(-360,360),0,0)
		CYBB H 0 A_CustomMissile("Satanic_CyberdemonFireStarter",6,Random(-20,20),Random(-360,360),0)         
		CYBB H 0 A_CustomMissile("Satanic_CyberdemonFireStarter",6,Random(-20,20),Random(-360,360),0)
		CYBB H 0 A_CustomMissile("Satanic_CyberdemonFireStarter",6,Random(-20,20),Random(-360,360),0)         
		CYBB H 0 A_CustomMissile("Satanic_CyberdemonFireStarter",6,Random(-20,20),Random(-360,360),0)
		CYBB H 0 A_CustomMissile("Satanic_CyberdemonFireStarter",6,Random(-20,20),Random(-360,360),0)         
		CYBB H 0 A_CustomMissile("Satanic_CyberdemonFireStarter",6,Random(-20,20),Random(-360,360),0)
		CYBB H 0 A_CustomMissile("Satanic_CyberdemonFireStarter",6,Random(-20,20),Random(-360,360),0)         
		CYBB H 0 A_CustomMissile("Satanic_CyberdemonFireStarter",6,Random(-20,20),Random(-360,360),0)
		CYBB HIJ 5
		CYBR KLM 5
		CYBB NO 5
		CYBB PPPPPPPPPPPPPPPPPP 4 A_SpawnItem("Satanic_SmokeSpawner")
		CYBB P 0 A_BossDeath
		CYBB P -1
		Stop
	}
}

ACTOR CyberSplosion
{
	RenderStyle "Add"
	Alpha 0.75
	Scale 1.5
	States
	{
	Spawn:
		MSP1 AAA 0 A_CustomMissile("Satanic_VengefulRipper",0,Random(-64,64),Random(0,360),2,Random(0,360)) 
		MSP1 AAA 0 A_CustomMissile("Satanic_VengefulRipper",0,Random(-64,64),Random(0,360),2,Random(0,360)) 
		MSP1 AAA 0 A_CustomMissile("Satanic_VengefulRipper",0,Random(-64,64),Random(0,360),2,Random(0,360)) 
		MSP1 AAA 0 A_CustomMissile("Satanic_VengefulRipper",0,Random(-64,64),Random(0,360),2,Random(0,360)) 
		MSP1 AAA 0 A_CustomMissile("Satanic_VengefulRipper",0,Random(-64,64),Random(0,360),2,Random(0,360)) 
		MSP1 AAA 0 A_CustomMissile("Satanic_VengefulRipper",0,Random(-64,64),Random(0,360),2,Random(0,360)) 
		MSP1 AAA 0 A_CustomMissile("Satanic_VengefulRipper",0,Random(-64,64),Random(0,360),2,Random(0,360)) 
		MSP1 AAA 0 A_CustomMissile("Satanic_VengefulRipper",0,Random(-64,64),Random(0,360),2,Random(0,360)) 
		MSP1 AAA 0 A_CustomMissile("Satanic_VengefulRipper",0,Random(-64,64),Random(0,360),2,Random(0,360)) 
		MSP1 AAA 0 A_CustomMissile("Satanic_VengefulRipper",0,Random(-64,64),Random(0,360),2,Random(0,360)) 
		MSP1 AAA 0 A_CustomMissile("Satanic_VengefulRipper",0,Random(-64,64),Random(0,360),2,Random(0,360)) 
		MSP1 AAA 0 A_CustomMissile("Satanic_VengefulRipper",0,Random(-64,64),Random(0,360),2,Random(0,360)) 
		MSP1 AAA 0 A_CustomMissile("Satanic_VengefulRipper",0,Random(-64,64),Random(0,360),2,Random(0,360)) 
		MSP1 AAA 0 A_CustomMissile("Satanic_VengefulRipper",0,Random(-64,64),Random(0,360),2,Random(0,360)) 
		MSP1 AAA 0 A_CustomMissile("Satanic_VengefulRipper",0,Random(-64,64),Random(0,360),2,Random(0,360)) 
		MSP1 AAA 0 A_CustomMissile("Satanic_VengefulRipper",0,Random(-64,64),Random(0,360),2,Random(0,360)) 
		MSP1 AAA 0 A_CustomMissile("Satanic_VengefulRipper",0,Random(-64,64),Random(0,360),2,Random(0,360)) 
		MSP1 AAA 0 A_CustomMissile("Satanic_VengefulRipper",0,Random(-64,64),Random(0,360),2,Random(0,360)) 
		MSP1 A 0 A_SpawnItem("Satanic_SmokeSpawner")
		MSP1 A 0 A_PlaySound("weapons/rocklx")
		MSP1 A 0 A_Explode
		MSP1 H 2 BRIGHT Light ("cyberexplosion1")
		MSP1 I 2 BRIGHT Light ("cyberexplosion2") 
		MSP1 J 2 BRIGHT Light ("cyberexplosion3")
		MSP1 K 2 BRIGHT Light ("cyberexplosion4")
		MSP1 L 2 BRIGHT Light ("cyberexplosion5")
		MSP1 M 2 BRIGHT Light ("cyberexplosion6")
		MSP1 N 2 BRIGHT Light ("cyberexplosion7")
		MSP1 OP 2 Bright
		Stop
	}
}

ACTOR CyberdemonHead
{
	+CANBOUNCEWATER
	+MOVEWITHSECTOR
	+BOUNCEONWALLS
	+BOUNCEONCEILINGS
	+BOUNCEONFLOORS
	//+SOLID
	//+SHOOTABLE
	+MISSILE
	Height 20
	Radius 20
	Speed 5
	Mass 100
	BounceFactor 0.5
	BounceCount 2
	States
	{
	Spawn:
		TNT1 A 0 A_SpawnItemEx("Satanic_Smoke")
		TNT1 A 0 A_SpawnItemEx("SRAerialBloodTrail",0,0,0,0,0,-4)
		CYXH A 1
		TNT1 A 0 A_SpawnItemEx("SRAerialBloodTrail",0,0,0,0,0,-4)
		CYXH A 1
		TNT1 A 0 A_SpawnItemEx("SRAerialBloodTrail",0,0,0,0,0,-4)
		CYXH A 1
		TNT1 A 0 A_SpawnItemEx("SRAerialBloodTrail",0,0,0,0,0,-4)
		CYXH A 1
		TNT1 A 0 A_SpawnItemEx("Satanic_Smoke")
		TNT1 A 0 A_SpawnItemEx("SRAerialBloodTrail",0,0,0,-4,0,-4)
		CYXH B 1
		TNT1 A 0 A_SpawnItemEx("SRAerialBloodTrail",0,0,0,-4,0,-4)
		CYXH B 1
		TNT1 A 0 A_SpawnItemEx("SRAerialBloodTrail",0,0,0,-4,0,-4)
		CYXH B 1
		TNT1 A 0 A_SpawnItemEx("SRAerialBloodTrail",0,0,0,-4,0,-4)
		CYXH B 1
		TNT1 A 0 A_SpawnItemEx("Satanic_Smoke")
		TNT1 A 0 A_SpawnItemEx("SRAerialBloodTrail",0,0,0,-4,0,0)
		CYXH C 1
		TNT1 A 0 A_SpawnItemEx("SRAerialBloodTrail",0,0,0,-4,0,0)
		CYXH C 1
		TNT1 A 0 A_SpawnItemEx("SRAerialBloodTrail",0,0,0,-4,0,0)
		CYXH C 1
		TNT1 A 0 A_SpawnItemEx("SRAerialBloodTrail",0,0,0,-4,0,0)
		CYXH C 1
		TNT1 A 0 A_SpawnItemEx("Satanic_Smoke")
		TNT1 A 0 A_SpawnItemEx("SRAerialBloodTrail",0,0,0,-4,0,4)
		CYXH D 1
		TNT1 A 0 A_SpawnItemEx("SRAerialBloodTrail",0,0,0,-4,0,4)
		CYXH D 1
		TNT1 A 0 A_SpawnItemEx("SRAerialBloodTrail",0,0,0,-4,0,4)
		CYXH D 1
		TNT1 A 0 A_SpawnItemEx("SRAerialBloodTrail",0,0,0,-4,0,4)
		CYXH D 1
		TNT1 A 0 A_SpawnItemEx("Satanic_Smoke")
		TNT1 A 0 A_SpawnItemEx("SRAerialBloodTrail",0,0,0,0,0,4)
		CYXH E 1
		TNT1 A 0 A_SpawnItemEx("SRAerialBloodTrail",0,0,0,0,0,4)
		CYXH E 1
		TNT1 A 0 A_SpawnItemEx("SRAerialBloodTrail",0,0,0,0,0,4)
		CYXH E 1
		TNT1 A 0 A_SpawnItemEx("SRAerialBloodTrail",0,0,0,0,0,4)
		CYXH E 1
		TNT1 A 0 A_SpawnItemEx("Satanic_Smoke")
		TNT1 A 0 A_SpawnItemEx("SRAerialBloodTrail",0,0,0,4,0,4)
		CYXH F 1
		TNT1 A 0 A_SpawnItemEx("SRAerialBloodTrail",0,0,0,4,0,4)
		CYXH F 1
		TNT1 A 0 A_SpawnItemEx("SRAerialBloodTrail",0,0,0,4,0,4)
		CYXH F 1
		TNT1 A 0 A_SpawnItemEx("SRAerialBloodTrail",0,0,0,4,0,4)
		CYXH F 1
		TNT1 A 0 A_SpawnItemEx("Satanic_Smoke")
		TNT1 A 0 A_SpawnItemEx("SRAerialBloodTrail",0,0,0,4,0,0)
		CYXH G 1
		TNT1 A 0 A_SpawnItemEx("SRAerialBloodTrail",0,0,0,4,0,0)
		CYXH G 1
		TNT1 A 0 A_SpawnItemEx("SRAerialBloodTrail",0,0,0,4,0,0)
		CYXH G 1
		TNT1 A 0 A_SpawnItemEx("SRAerialBloodTrail",0,0,0,4,0,0)
		CYXH G 1
		TNT1 A 0 A_SpawnItemEx("Satanic_Smoke")
		TNT1 A 0 A_SpawnItemEx("SRAerialBloodTrail",0,0,0,4,0,-4)
		CYXH H 1
		TNT1 A 0 A_SpawnItemEx("SRAerialBloodTrail",0,0,0,4,0,-4)
		CYXH H 1
		TNT1 A 0 A_SpawnItemEx("SRAerialBloodTrail",0,0,0,4,0,-4)
		CYXH H 1
		TNT1 A 0 A_SpawnItemEx("SRAerialBloodTrail",0,0,0,4,0,-4)
		CYXH H 1
		Loop
	Death:
		TNT1 A 0 A_Jump(85,"RightSideUp")
		TNT1 A 0 A_Jump(85,"UpsideDown")
		TNT1 A 0 A_Jump(85,"OnSide")
		Loop
	RightSideUp:	
		TNT1 A 0 A_SpawnItemEx("Satanic_Smoke",random(-2,2),random(-2,2),0,0,0,2)
		CYXH A 1
		TNT1 A 0 A_SpawnItemEx("Satanic_Smoke",random(-2,2),random(-2,2),0,0,0,2)
		CYXH A 1
		TNT1 A 0 A_SpawnItemEx("Satanic_Smoke",random(-2,2),random(-2,2),0,0,0,2)
		CYXH A 2
		TNT1 A 0 A_SpawnItemEx("Satanic_Smoke",random(-2,2),random(-2,2),0,0,0,2)
		CYXH A 2
		TNT1 A 0 A_SpawnItemEx("Satanic_Smoke",random(-2,2),random(-2,2),0,0,0,2)
		CYXH A 3
		TNT1 A 0 A_SpawnItemEx("Satanic_Smoke",random(-2,2),random(-2,2),0,0,0,2)
		CYXH A 3
		TNT1 A 0 A_SpawnItemEx("Satanic_Smoke",random(-2,2),random(-2,2),0,0,0,2)
		CYXH A 4
		TNT1 A 0 A_SpawnItemEx("Satanic_Smoke",random(-2,2),random(-2,2),0,0,0,2)
		CYXH A 4
		TNT1 A 0 A_SpawnItemEx("Satanic_Smoke",random(-2,2),random(-2,2),0,0,0,2)
		CYXH A 5
		TNT1 A 0 A_SpawnItemEx("Satanic_Smoke",random(-2,2),random(-2,2),0,0,0,2)
		CYXH A 5
		TNT1 A 0 A_SpawnItemEx("Satanic_Smoke",random(-2,2),random(-2,2),0,0,0,2)
		CYXH A 6
		TNT1 A 0 A_SpawnItemEx("Satanic_Smoke",random(-2,2),random(-2,2),0,0,0,2)
		CYXH A 6
		TNT1 A 0 A_SpawnItemEx("Satanic_Smoke",random(-2,2),random(-2,2),0,0,0,2)
		CYXH A 7
		TNT1 A 0 A_SpawnItemEx("Satanic_Smoke",random(-2,2),random(-2,2),0,0,0,2)
		CYXH A 7
		TNT1 A 0 A_SpawnItemEx("Satanic_Smoke",random(-2,2),random(-2,2),0,0,0,2)
		CYXH A 8
		TNT1 A 0 A_SpawnItemEx("Satanic_Smoke",random(-2,2),random(-2,2),0,0,0,2)
		CYXH A 8
		TNT1 A 0 A_SpawnItemEx("Satanic_Smoke",random(-2,2),random(-2,2),0,0,0,2)
		CYXH A 9
		TNT1 A 0 A_SpawnItemEx("Satanic_Smoke",random(-2,2),random(-2,2),0,0,0,2)
		CYXH A 9
		TNT1 A 0 A_SpawnItemEx("Satanic_Smoke",random(-2,2),random(-2,2),0,0,0,2)
		CYXH A 10
		TNT1 A 0 A_SpawnItemEx("Satanic_Smoke",random(-2,2),random(-2,2),0,0,0,2)
		CYXH A 10
		TNT1 A 0 A_SpawnItemEx("Satanic_Smoke",random(-2,2),random(-2,2),0,0,0,2)
		CYXH A -1
		Stop
	UpsideDown:
		TNT1 A 0 A_SpawnItemEx("Satanic_Smoke",random(-2,2),random(-2,2),0,0,0,2)
		CYXH C 1
		TNT1 A 0 A_SpawnItemEx("Satanic_Smoke",random(-2,2),random(-2,2),0,0,0,2)
		CYXH C 1
		TNT1 A 0 A_SpawnItemEx("Satanic_Smoke",random(-2,2),random(-2,2),0,0,0,2)
		CYXH C 2
		TNT1 A 0 A_SpawnItemEx("Satanic_Smoke",random(-2,2),random(-2,2),0,0,0,2)
		CYXH C 2
		TNT1 A 0 A_SpawnItemEx("Satanic_Smoke",random(-2,2),random(-2,2),0,0,0,2)
		CYXH C 3
		TNT1 A 0 A_SpawnItemEx("Satanic_Smoke",random(-2,2),random(-2,2),0,0,0,2)
		CYXH C 3
		TNT1 A 0 A_SpawnItemEx("Satanic_Smoke",random(-2,2),random(-2,2),0,0,0,2)
		CYXH C 4
		TNT1 A 0 A_SpawnItemEx("Satanic_Smoke",random(-2,2),random(-2,2),0,0,0,2)
		CYXH C 4
		TNT1 A 0 A_SpawnItemEx("Satanic_Smoke",random(-2,2),random(-2,2),0,0,0,2)
		CYXH C 5
		TNT1 A 0 A_SpawnItemEx("Satanic_Smoke",random(-2,2),random(-2,2),0,0,0,2)
		CYXH C 5
		TNT1 A 0 A_SpawnItemEx("Satanic_Smoke",random(-2,2),random(-2,2),0,0,0,2)
		CYXH C 6
		TNT1 A 0 A_SpawnItemEx("Satanic_Smoke",random(-2,2),random(-2,2),0,0,0,2)
		CYXH C 6
		TNT1 A 0 A_SpawnItemEx("Satanic_Smoke",random(-2,2),random(-2,2),0,0,0,2)
		CYXH C 7
		TNT1 A 0 A_SpawnItemEx("Satanic_Smoke",random(-2,2),random(-2,2),0,0,0,2)
		CYXH C 7
		TNT1 A 0 A_SpawnItemEx("Satanic_Smoke",random(-2,2),random(-2,2),0,0,0,2)
		CYXH C 8
		TNT1 A 0 A_SpawnItemEx("Satanic_Smoke",random(-2,2),random(-2,2),0,0,0,2)
		CYXH C 8
		TNT1 A 0 A_SpawnItemEx("Satanic_Smoke",random(-2,2),random(-2,2),0,0,0,2)
		CYXH C 9
		TNT1 A 0 A_SpawnItemEx("Satanic_Smoke",random(-2,2),random(-2,2),0,0,0,2)
		CYXH C 9
		TNT1 A 0 A_SpawnItemEx("Satanic_Smoke",random(-2,2),random(-2,2),0,0,0,2)
		CYXH C 10
		TNT1 A 0 A_SpawnItemEx("Satanic_Smoke",random(-2,2),random(-2,2),0,0,0,2)
		CYXH C 10
		TNT1 A 0 A_SpawnItemEx("Satanic_Smoke",random(-2,2),random(-2,2),0,0,0,2)
		CYXH C -1
		Stop
	OnSide:	
		TNT1 A 0 A_SpawnItemEx("Satanic_Smoke",random(-2,2),random(-2,2),0,0,0,2)
		CYXH E 1
		TNT1 A 0 A_SpawnItemEx("Satanic_Smoke",random(-2,2),random(-2,2),0,0,0,2)
		CYXH E 1
		TNT1 A 0 A_SpawnItemEx("Satanic_Smoke",random(-2,2),random(-2,2),0,0,0,2)
		CYXH E 2
		TNT1 A 0 A_SpawnItemEx("Satanic_Smoke",random(-2,2),random(-2,2),0,0,0,2)
		CYXH E 2
		TNT1 A 0 A_SpawnItemEx("Satanic_Smoke",random(-2,2),random(-2,2),0,0,0,2)
		CYXH E 3
		TNT1 A 0 A_SpawnItemEx("Satanic_Smoke",random(-2,2),random(-2,2),0,0,0,2)
		CYXH E 3
		TNT1 A 0 A_SpawnItemEx("Satanic_Smoke",random(-2,2),random(-2,2),0,0,0,2)
		CYXH E 4
		TNT1 A 0 A_SpawnItemEx("Satanic_Smoke",random(-2,2),random(-2,2),0,0,0,2)
		CYXH E 4
		TNT1 A 0 A_SpawnItemEx("Satanic_Smoke",random(-2,2),random(-2,2),0,0,0,2)
		CYXH E 5
		TNT1 A 0 A_SpawnItemEx("Satanic_Smoke",random(-2,2),random(-2,2),0,0,0,2)
		CYXH E 5
		TNT1 A 0 A_SpawnItemEx("Satanic_Smoke",random(-2,2),random(-2,2),0,0,0,2)
		CYXH E 6
		TNT1 A 0 A_SpawnItemEx("Satanic_Smoke",random(-2,2),random(-2,2),0,0,0,2)
		CYXH E 6
		TNT1 A 0 A_SpawnItemEx("Satanic_Smoke",random(-2,2),random(-2,2),0,0,0,2)
		CYXH E 7
		TNT1 A 0 A_SpawnItemEx("Satanic_Smoke",random(-2,2),random(-2,2),0,0,0,2)
		CYXH E 7
		TNT1 A 0 A_SpawnItemEx("Satanic_Smoke",random(-2,2),random(-2,2),0,0,0,2)
		CYXH E 8
		TNT1 A 0 A_SpawnItemEx("Satanic_Smoke",random(-2,2),random(-2,2),0,0,0,2)
		CYXH E 8
		TNT1 A 0 A_SpawnItemEx("Satanic_Smoke",random(-2,2),random(-2,2),0,0,0,2)
		CYXH E 9
		TNT1 A 0 A_SpawnItemEx("Satanic_Smoke",random(-2,2),random(-2,2),0,0,0,2)
		CYXH E 9
		TNT1 A 0 A_SpawnItemEx("Satanic_Smoke",random(-2,2),random(-2,2),0,0,0,2)
		CYXH E 10
		TNT1 A 0 A_SpawnItemEx("Satanic_Smoke",random(-2,2),random(-2,2),0,0,0,2)
		CYXH E 10
		TNT1 A 0 A_SpawnItemEx("Satanic_Smoke",random(-2,2),random(-2,2),0,0,0,2)
		CYXH E -1
		Stop
	}
}

ACTOR CyberdemonRightArm : CyberdemonHead
{
	States
	{
	Spawn:
		TNT1 A 0 A_SpawnItemEx("Satanic_Smoke")
		TNT1 A 0 A_SpawnItem("SRAerialBloodTrail", 0, 0, 0, 1)
		CYXR A 1
		TNT1 A 0 A_SpawnItem("SRAerialBloodTrail", 0, 0, 0, 1)
		CYXR A 1
		TNT1 A 0 A_SpawnItem("SRAerialBloodTrail", 0, 0, 0, 1)
		CYXR A 1
		TNT1 A 0 A_SpawnItem("SRAerialBloodTrail", 0, 0, 0, 1)
		CYXR A 1
		TNT1 A 0 A_SpawnItemEx("Satanic_Smoke")
		TNT1 A 0 A_SpawnItem("SRAerialBloodTrail", 0, 0, 0, 1)
		CYXR B 1
		TNT1 A 0 A_SpawnItem("SRAerialBloodTrail", 0, 0, 0, 1)
		CYXR B 1
		TNT1 A 0 A_SpawnItem("SRAerialBloodTrail", 0, 0, 0, 1)
		CYXR B 1
		TNT1 A 0 A_SpawnItem("SRAerialBloodTrail", 0, 0, 0, 1)
		CYXR B 1
		TNT1 A 0 A_SpawnItemEx("Satanic_Smoke")
		TNT1 A 0 A_SpawnItem("SRAerialBloodTrail", 0, 0, 0, 1)
		CYXR C 1
		TNT1 A 0 A_SpawnItem("SRAerialBloodTrail", 0, 0, 0, 1)
		CYXR C 1
		TNT1 A 0 A_SpawnItem("SRAerialBloodTrail", 0, 0, 0, 1)
		CYXR C 1
		TNT1 A 0 A_SpawnItem("SRAerialBloodTrail", 0, 0, 0, 1)
		CYXR C 1
	LoopOnSide:
		TNT1 A 0 A_SpawnItemEx("Satanic_Smoke")
		TNT1 A 0 A_SpawnItem("SRAerialBloodTrail", 0, 0, 0, 1)
		CYXR C 1
		TNT1 A 0 A_SpawnItem("SRAerialBloodTrail", 0, 0, 0, 1)
		CYXR C 1
		TNT1 A 0 A_SpawnItem("SRAerialBloodTrail", 0, 0, 0, 1)
		CYXR C 1
		TNT1 A 0 A_SpawnItem("SRAerialBloodTrail", 0, 0, 0, 1)
		CYXR C 1
		Goto LoopOnSide
	Death:
		TNT1 A 0 A_SpawnItemEx("Satanic_Smoke",random(-2,2),random(-2,2),0,0,0,2)
		CYXR D 1
		TNT1 A 0 A_SpawnItemEx("Satanic_Smoke",random(-2,2),random(-2,2),0,0,0,2)
		CYXR D 1
		TNT1 A 0 A_SpawnItemEx("Satanic_Smoke",random(-2,2),random(-2,2),0,0,0,2)
		CYXR D 2
		TNT1 A 0 A_SpawnItemEx("Satanic_Smoke",random(-2,2),random(-2,2),0,0,0,2)
		CYXR D 2
		TNT1 A 0 A_SpawnItemEx("Satanic_Smoke",random(-2,2),random(-2,2),0,0,0,2)
		CYXR D 3
		TNT1 A 0 A_SpawnItemEx("Satanic_Smoke",random(-2,2),random(-2,2),0,0,0,2)
		CYXR D 3
		TNT1 A 0 A_SpawnItemEx("Satanic_Smoke",random(-2,2),random(-2,2),0,0,0,2)
		CYXR D 4
		TNT1 A 0 A_SpawnItemEx("Satanic_Smoke",random(-2,2),random(-2,2),0,0,0,2)
		CYXR D 4
		TNT1 A 0 A_SpawnItemEx("Satanic_Smoke",random(-2,2),random(-2,2),0,0,0,2)
		CYXR D 5
		TNT1 A 0 A_SpawnItemEx("Satanic_Smoke",random(-2,2),random(-2,2),0,0,0,2)
		CYXR D 5
		TNT1 A 0 A_SpawnItemEx("Satanic_Smoke",random(-2,2),random(-2,2),0,0,0,2)
		CYXR D 6
		TNT1 A 0 A_SpawnItemEx("Satanic_Smoke",random(-2,2),random(-2,2),0,0,0,2)
		CYXR D 6
		TNT1 A 0 A_SpawnItemEx("Satanic_Smoke",random(-2,2),random(-2,2),0,0,0,2)
		CYXR D 7
		TNT1 A 0 A_SpawnItemEx("Satanic_Smoke",random(-2,2),random(-2,2),0,0,0,2)
		CYXR D 7
		TNT1 A 0 A_SpawnItemEx("Satanic_Smoke",random(-2,2),random(-2,2),0,0,0,2)
		CYXR D 8
		TNT1 A 0 A_SpawnItemEx("Satanic_Smoke",random(-2,2),random(-2,2),0,0,0,2)
		CYXR D 8
		TNT1 A 0 A_SpawnItemEx("Satanic_Smoke",random(-2,2),random(-2,2),0,0,0,2)
		CYXR D 9
		TNT1 A 0 A_SpawnItemEx("Satanic_Smoke",random(-2,2),random(-2,2),0,0,0,2)
		CYXR D 9
		TNT1 A 0 A_SpawnItemEx("Satanic_Smoke",random(-2,2),random(-2,2),0,0,0,2)
		CYXR D 10
		TNT1 A 0 A_SpawnItemEx("Satanic_Smoke",random(-2,2),random(-2,2),0,0,0,2)
		CYXR D 10
		TNT1 A 0 A_SpawnItemEx("Satanic_Smoke",random(-2,2),random(-2,2),0,0,0,2)
		CYXR D -1
		Stop
	}
}

ACTOR CyberdemonLeftArm : CyberdemonRightArm
{
	States
	{
	Spawn:
		TNT1 A 0 A_SpawnItemEx("Satanic_Smoke")
		TNT1 A 0 A_SpawnItem("SRAerialBloodTrail", 0, 0, 0, 1)
		CYXL A 1
		TNT1 A 0 A_SpawnItem("SRAerialBloodTrail", 0, 0, 0, 1)
		CYXL A 1
		TNT1 A 0 A_SpawnItem("SRAerialBloodTrail", 0, 0, 0, 1)
		CYXL A 1
		TNT1 A 0 A_SpawnItem("SRAerialBloodTrail", 0, 0, 0, 1)
		CYXL A 1
		TNT1 A 0 A_SpawnItemEx("Satanic_Smoke")
		TNT1 A 0 A_SpawnItem("SRAerialBloodTrail", 0, 0, 0, 1)
		CYXL B 1
		TNT1 A 0 A_SpawnItem("SRAerialBloodTrail", 0, 0, 0, 1)
		CYXL B 1
		TNT1 A 0 A_SpawnItem("SRAerialBloodTrail", 0, 0, 0, 1)
		CYXL B 1
		TNT1 A 0 A_SpawnItem("SRAerialBloodTrail", 0, 0, 0, 1)
		CYXL B 1
		TNT1 A 0 A_SpawnItemEx("Satanic_Smoke")
		TNT1 A 0 A_SpawnItem("SRAerialBloodTrail", 0, 0, 0, 1)
		CYXL C 1
		TNT1 A 0 A_SpawnItem("SRAerialBloodTrail", 0, 0, 0, 1)
		CYXL C 1
		TNT1 A 0 A_SpawnItem("SRAerialBloodTrail", 0, 0, 0, 1)
		CYXL C 1
		TNT1 A 0 A_SpawnItem("SRAerialBloodTrail", 0, 0, 0, 1)
		CYXL C 1
	LoopOnSide:
		TNT1 A 0 A_SpawnItemEx("Satanic_Smoke")
		TNT1 A 0 A_SpawnItem("SRAerialBloodTrail", 0, 0, 0, 1)
		CYXL C 1
		TNT1 A 0 A_SpawnItem("SRAerialBloodTrail", 0, 0, 0, 1)
		CYXL C 1
		TNT1 A 0 A_SpawnItem("SRAerialBloodTrail", 0, 0, 0, 1)
		CYXL C 1
		TNT1 A 0 A_SpawnItem("SRAerialBloodTrail", 0, 0, 0, 1)
		CYXL C 1
		Goto LoopOnSide
	Death:
		TNT1 A 0 A_SpawnItemEx("Satanic_Smoke",random(-2,2),random(-2,2),0,0,0,2)
		CYXL D 1
		TNT1 A 0 A_SpawnItemEx("Satanic_Smoke",random(-2,2),random(-2,2),0,0,0,2)
		CYXL D 1
		TNT1 A 0 A_SpawnItemEx("Satanic_Smoke",random(-2,2),random(-2,2),0,0,0,2)
		CYXL D 2
		TNT1 A 0 A_SpawnItemEx("Satanic_Smoke",random(-2,2),random(-2,2),0,0,0,2)
		CYXL D 2
		TNT1 A 0 A_SpawnItemEx("Satanic_Smoke",random(-2,2),random(-2,2),0,0,0,2)
		CYXL D 3
		TNT1 A 0 A_SpawnItemEx("Satanic_Smoke",random(-2,2),random(-2,2),0,0,0,2)
		CYXL D 3
		TNT1 A 0 A_SpawnItemEx("Satanic_Smoke",random(-2,2),random(-2,2),0,0,0,2)
		CYXL D 4
		TNT1 A 0 A_SpawnItemEx("Satanic_Smoke",random(-2,2),random(-2,2),0,0,0,2)
		CYXL D 4
		TNT1 A 0 A_SpawnItemEx("Satanic_Smoke",random(-2,2),random(-2,2),0,0,0,2)
		CYXL D 5
		TNT1 A 0 A_SpawnItemEx("Satanic_Smoke",random(-2,2),random(-2,2),0,0,0,2)
		CYXL D 5
		TNT1 A 0 A_SpawnItemEx("Satanic_Smoke",random(-2,2),random(-2,2),0,0,0,2)
		CYXL D 6
		TNT1 A 0 A_SpawnItemEx("Satanic_Smoke",random(-2,2),random(-2,2),0,0,0,2)
		CYXL D 6
		TNT1 A 0 A_SpawnItemEx("Satanic_Smoke",random(-2,2),random(-2,2),0,0,0,2)
		CYXL D 7
		TNT1 A 0 A_SpawnItemEx("Satanic_Smoke",random(-2,2),random(-2,2),0,0,0,2)
		CYXL D 7
		TNT1 A 0 A_SpawnItemEx("Satanic_Smoke",random(-2,2),random(-2,2),0,0,0,2)
		CYXL D 8
		TNT1 A 0 A_SpawnItemEx("Satanic_Smoke",random(-2,2),random(-2,2),0,0,0,2)
		CYXL D 8
		TNT1 A 0 A_SpawnItemEx("Satanic_Smoke",random(-2,2),random(-2,2),0,0,0,2)
		CYXL D 9
		TNT1 A 0 A_SpawnItemEx("Satanic_Smoke",random(-2,2),random(-2,2),0,0,0,2)
		CYXL D 9
		TNT1 A 0 A_SpawnItemEx("Satanic_Smoke",random(-2,2),random(-2,2),0,0,0,2)
		CYXL D 10
		TNT1 A 0 A_SpawnItemEx("Satanic_Smoke",random(-2,2),random(-2,2),0,0,0,2)
		CYXL D 10
		TNT1 A 0 A_SpawnItemEx("Satanic_Smoke",random(-2,2),random(-2,2),0,0,0,2)
		CYXL D -1
		Stop
	}
}
	
	

Actor Satanic_CyberdemonFireStarter : Satanic_FireStarter
{
	Speed 8
}