ACTOR Infernal_DnD : DnD_BaseRangedBoss replaces Infernal {
	Health 15000
	Speed 42
	Radius 90
	Height 140
	Mass 5000
	Damage 40
	PainChance 10
	Scale 2.0
	+MISSILEMORE
	+MISSILEEVENMORE
	+BOSS
	+FLOORCLIP
	+TELESTOMP
	+DONTMORPH
	+NOTARGET
	+NOICEDEATH
	+DONTRIP
	+ISMONSTER
	+NODAMAGETHRUST
	Tag "Inferno Demon"
	MaxDropOffHeight 512
	damagefactor "Inferno", 0
	SeeSound "Infdem/see"
	PainSound "Infdem/pain"
	DeathSound "Infdem/death"
	ActiveSound "Infdem/active"
	Obituary "%o was sent to burn in the fires of hell by an Inferno Demon."
	States {
		SetInfo:
			TNT1 A 0
		Goto SpawnSetup
	
		SpawnSetup:
			DIAA A 0 ACS_NamedExecuteWithResult("DnD Init Monster Data", 50000)
			DIAA A 0 ACS_NamedExecuteWithResult(
				"DnD Custom Monster Scale",
				DND_CUSTOM_UNIQUEBOSS | (MONSTERCLASS_CYBERDEMON << 9) | (DND_MTYPE_DEMON_POW << 14),
				DND_FIRECREATURE,
				DND_SCORCHED, 
				-1
			)
			DIAA A 0 A_Jump(256, "Idle")
			DIAA A 35
		Wait
	
		Idle:
			DIAA A 5 A_Look
		Loop
		SeeState:
			DIAA A 0 A_PlaySound("KoraxStep")
			DIAA A 0 Radius_Quake(10,5,0,10,0)
			DIAA A 6 A_Chase
			DIAA B 6 A_Chase
			DIAA C 0 A_PlaySound("KoraxStep")
			DIAA C 0 Radius_Quake(10,5,0,10,0)
			DIAA C 6 A_Chase
			DIAA D 6 A_Chase
			DIAA D 0 A_CheckSight("Meteor")
		Goto See
		MissileState:
			TNT1 A 0
			TNT1 A 0 A_JumpIfCloser(400, "Stomp")
			TNT1 A 0 A_Jump(128, "FireBall")
			TNT1 A 0 A_Jump(64, "sTOMP")
		Goto Meteor

		Fireball:
			DIAA E 10 A_FaceTarget
			TNT1 A 0 A_CustomMissile("InfernoDemonFireball",random (90, 180), 90)
			DIAA F 10 A_FaceTarget

			DIAA E 10 A_FaceTarget
			TNT1 A 0 A_CustomMissile("InfernoDemonFireball",random (90, 180), -90)
			DIAA F 10 A_FaceTarget

			DIAA E 10 A_FaceTarget
			TNT1 A 0 A_CustomMissile("InfernoDemonFireball",random (90, 180), 90)
			DIAA F 10 A_FaceTarget

			DIAA E 10 A_FaceTarget
			TNT1 A 0 A_CustomMissile("InfernoDemonFireball",random (90, 180), -90)
			DIAA F 10 A_FaceTarget
		Goto See


		Meteor:
			DIAA E 5 A_FaceTarget
			DIAA G 5 BRIGHT A_CustomMissile("InfernoDemonMETEOR",200, 90)
			DIAA H 5 A_FaceTarget

			DIAA E 5 A_FaceTarget
			DIAA G 5 BRIGHT A_CustomMissile("InfernoDemonMETEOR",200, -90)
			DIAA H 5 A_FaceTarget

			DIAA E 5 A_FaceTarget
			DIAA G 5 BRIGHT A_CustomMissile("InfernoDemonMETEOR",200, 90)
			DIAA H 5 A_FaceTarget

			DIAA E 5 A_FaceTarget
			DIAA G 5 BRIGHT A_CustomMissile("InfernoDemonMETEOR",200, -90)
			DIAA H 5 A_FaceTarget

			DIAA E 5 A_FaceTarget
			DIAA G 5 BRIGHT A_CustomMissile("InfernoDemonMETEOR",200, 90)
			DIAA H 5 A_FaceTarget
			DIAA H 20 A_FaceTarget
		Goto See

		Stomp:
			DIAA B 20 Bright A_FaceTarget
			DIAA B 0 Bright A_CustomMissile("InfernoDemonFireBeam",0,0,0,2,0)
			DIAA B 0 Bright A_CustomMissile("InfernoDemonFireBeam",0,0,20,2,0)
			DIAA B 0 Bright A_CustomMissile("InfernoDemonFireBeam",0,0,40,2,0)
			DIAA B 0 Bright A_CustomMissile("InfernoDemonFireBeam",0,0,60,2,0)
			DIAA B 0 Bright A_CustomMissile("InfernoDemonFireBeam",0,0,80,2,0)
			DIAA B 0 Bright A_CustomMissile("InfernoDemonFireBeam",0,0,-20,2,0)
			DIAA B 0 Bright A_CustomMissile("InfernoDemonFireBeam",0,0,-40,2,0)
			DIAA B 0 Bright A_CustomMissile("InfernoDemonFireBeam",0,0,-60,2,0)
			DIAA B 0 Bright A_CustomMissile("InfernoDemonFireBeam",0,0,-80,2,0)
			DIAA C 0 Radius_Quake(20,35,0,40,0)
			DIAA C 20 Bright
			DIAA B 20 Bright A_FaceTarget
			DIAA B 0 Bright A_CustomMissile("InfernoDemonFireBeam",0,0,0,2,0)
			DIAA B 0 Bright A_CustomMissile("InfernoDemonFireBeam",0,0,20,2,0)
			DIAA B 0 Bright A_CustomMissile("InfernoDemonFireBeam",0,0,40,2,0)
			DIAA B 0 Bright A_CustomMissile("InfernoDemonFireBeam",0,0,60,2,0)
			DIAA B 0 Bright A_CustomMissile("InfernoDemonFireBeam",0,0,80,2,0)
			DIAA B 0 Bright A_CustomMissile("InfernoDemonFireBeam",0,0,-20,2,0)
			DIAA B 0 Bright A_CustomMissile("InfernoDemonFireBeam",0,0,-40,2,0)
			DIAA B 0 Bright A_CustomMissile("InfernoDemonFireBeam",0,0,-60,2,0)
			DIAA B 0 Bright A_CustomMissile("InfernoDemonFireBeam",0,0,-80,2,0)
			DIAA C 0 Radius_Quake(20,35,0,40,0)
			DIAA C 20 Bright
		Goto See
		PainState:
			DIAA A 0 A_Pain
		Goto See
		XDeathState:
		DeathState:
		Death.Emerald:
		Death.MagicSealing:
		Death.Ice:
		Death.P_Ice:
			tnt1 A 0 A_Scream
			DIAA IJKJKJKJ 5
			DIAA K 5 A_FaceTarget
			DIAA L 5 A_Scream
			DIAA MNOPQ 5
			tnt1 a 0 Radius_Quake(5,200,0,5,0)
			DIAA PQRQPQRQPQR 4
			DIAA R 5 A_NoBlocking
			DIAA R 5
			DIAA R 15 ACS_NamedExecuteAlways("DnD Generic Boss Loot", 0, DND_BOSS_LOWTIER, 0, 15)
			DIAA R -1
		Stop
	}
}

Actor InfernalMultiplayer_DnD : Infernal_DnD replaces InfernalMultiplayer {
	DamageFactor "Normal", 0.5
}

ACTOR InfernoDemonFireball_DnD : InfernoDemonFireball replaces InfernoDemonFireball
{
	Stamina 36
}



ACTOR InfernoDemonMeteor_DnD : InfernoDemonMeteor replaces InfernoDemonMeteor
{
	Stamina 36
}


ACTOR InfernoDemonMeteorSeeker_DnD : InfernoDemonMeteorSeeker replaces InfernoDemonMeteorSeeker
{
	Stamina 36
}

ACTOR InfernoDemonFireBeam_DnD : InfernoDemonFireBeam replaces InfernoDemonFireBeam
{
	Stamina 32
}

ACTOR BeamFire_DnD : BeamFire replaces BeamFire
{
	Stamina 32
}