Actor NewDoomImp2 : NewDoomImp// replaces NewDoomImp
{
	States
	{
	Spawn:
		TRO2 A 0
		TRO2 A 0 ACS_NamedExecuteAlways("WOC Monster Init",0,56,0)
	Idle:
		TRO2 AB 10 A_Look
		Loop
	Pain.Morale:
		TNT1 A 0 A_Changeflag("Frightened", 1)
		Goto Pain
	Pain.Convert:
		TNT1 A 0 A_JumpIfInTargetInventory("Visions",Random(0,3),"ConvertMe")
		goto Pain
	ConvertMe:
		TNT1 A 0 ACS_ExecuteAlways(WOC_VISIONSSCRIPT,0,0,0,0)
		goto See
	See:
		TRO2 A 2 A_Chase
		TRO2 A 3 A_Chase
		TRO2 B 2 A_Chase
		TRO2 B 3 A_Chase
		TRO2 C 2 A_Chase
		TRO2 C 3 A_Chase
		TRO2 D 2 A_Chase
		TRO2 D 3 A_Chase
		Loop
	Melee:
		TRO2 EF 6 A_FaceTarget
		TRO2 G 6 A_CustomComboAttack("DoomImpBall", 32, ACS_NamedExecuteWithResult("WOC Monster Damage Scale",ACTIVATOR,FRandom(3,24)), "imp/melee", "Physical")
		Goto See
	Missile:
		TRO2 E 0 A_Jump(128, 2)
		TRO2 E 0 A_JumpIfCloser(200,"Charge")
		TRO2 EF 6 A_FaceTarget
		TRO2 G 6 A_CustomComboAttack("DoomImpBall", 32, ACS_NamedExecuteWithResult("WOC Monster Damage Scale",ACTIVATOR,FRandom(3,24)), "imp/melee", "Physical")
		Goto See
	Charge:
		TRO2 E 6 A_FaceTarget
		TRO2 E 0 ThrustThingZ(0,30,0,1)
        TRO2 E 0 A_FaceTarget
        TRO2 E 0 A_Recoil (-20)
		TRO2 FFFFFFFFGGGGGGGG 1 A_JumpIfTargetInsideMeleeRange("MeleeStrike")
		Goto See
	MeleeStrike:
		TRO2 G 0 A_FaceTarget
		TRO2 G 6 A_CustomMeleeAttack(ACS_NamedExecuteWithResult("WOC Monster Damage Scale",ACTIVATOR,FRandom(3,24)), "imp/melee", "", "Physical")
		Goto See
	Pain:
		TRO2 K 2
		TRO2 K 2 A_Pain
		Goto See
	Burn:
		BURN A 3 Bright A_PlaySound("monster/burndeath")
		BURN B 3 Bright A_Wander
		BURN C 3 Bright A_Pain
		BURN D 3 Bright A_NoBlocking
		BURN E 5 Bright A_Pain
		BURN FGH 5 Bright A_Wander
		BURN I 5 Bright A_Pain
		BURN JKL 5 Bright A_Wander
		BURN M 5 Bright A_Pain
		BURN NOP 5 Bright
		BURN Q 5 Bright A_Pain
		BURN PQ 5 Bright
		BURN R 7 Bright A_Scream
		BURN STU 7 Bright
		BURN V -1
		Stop
	Death:
		TRO2 L 8
		TRO2 M 8 A_Scream
		TRO2 N 6
		TRO2 O 6 A_NoBlocking
		TRO2 P -1
		stop
	XDeath:
		TRO2 Q 5 A_SpawnItem("GIBBER")
		TRO2 R 5 A_XScream
		TRO2 S 5
		TRO2 T 5 A_NoBlocking
		TRO2 UVW 5
		TRO2 X -1
		stop
	Raise:
		TRO2 P 0 ACS_NamedExecuteAlways("WOC Monster Init",0,56,0)
		TRO2 PO 8
		TRO2 NML 6
		goto See
	}
}

//==============================================================================
//================================CORPULENT=====================================
actor NewFatso2 : NewFatso
{
	Tag "Corpulent" 
	Obituary "%o was crushed by a corpulent." 
	Seesound "corpulent/see"
	Painsound "corpulent/pain"
	Deathsound "corpulent/death"
	States
	{
	Spawn:
		FAT2 A 0
		FAT2 A 0 ACS_NamedExecuteAlways("WOC Monster Init",0,72,0)
	Idle:
		FAT2 AB 15 A_Look
		loop
	See:
		FAT2 AABBCCDDEEFF 4 A_Chase
		loop
	Missile:
		FAT2 G 0 A_Playsound("corpulent/attack")
		FAT2 G 20 A_Facetarget
		FAT2 H 10 bright A_FatAttack1("NewFatShot2")
		FAT2 IG 5 A_FaceTarget
		FAT2 H 10 bright A_FatAttack2("NewFatShot2")
		FAT2 IG 5 A_FaceTarget
		FAT2 H 10 bright A_FatAttack3("NewFatShot2")
		FAT2 IG 5 A_FaceTarget
		goto See
	Pain:
		FAT2 J 3
		FAT2 J 3 A_Pain
		goto See
	Death:
		FAT2 K 6
		FAT2 L 6 A_Scream
		FAT2 M 6 A_NoBlocking
		FAT2 NOPQRS 6
		FAT2 T -1 A_BossDeath
		stop
	Raise:
		FAT2 R 0 ACS_NamedExecuteAlways("WOC Monster Init",0,72,0)
		FAT2 RQPONMLK 5
		goto See
	}
}

Actor NewFatShot2 : FatShot
{
	Scale 0.95
	Damage (ACS_NamedExecuteWithResult("WOC Monster Damage Scale",WOCTARGET,FRandom(26,46)))
	Projectile
	+NODAMAGETHRUST
	+ThruGhost
	+WindThrust
	Damagetype "Fire"
	Renderstyle Normal
	SeeSound "ArchonOfHell/Comet"
	Deathsound "ArchonOfHell/CometHit"
	Decal Scorch
	states
	{
	Spawn:
		PROJ ABC 4 Bright
		Loop
	Death:
		PROJ D 4 Bright A_SetTranslucent(1,1)
		PROJ EFGH 4 Bright
		PROJ I 4 Bright A_Fadeout(0.50)
		Stop
	}
}

ACTOR NewArachnotron2 : NewArachnotron
{
	Tag "Aracknight" 
	Obituary "An Aracknight wasted %o." 
	SeeSound "aracknight/sight"
	DeathSound "aracknight/death"
	ActiveSound "aracknight/active"
	States
	{
	Spawn:
		ARAC A 0
		ARAC A 0 ACS_NamedExecuteAlways("WOC Monster Init",0,64,0)//increase health on higher difficulties
	Idle:
		ARAC AB 10 A_Look
		Loop
	See:
		ARAC A 20
		ARAC A 3 A_Playsound("aracknight/walk",4,1,0,ATTN_IDLE)
		ARAC ABBCC 3 A_Chase
		ARAC D 3 A_Playsound("aracknight/walk",4,1,0,ATTN_IDLE)
		ARAC DEEFF 3 A_Chase
		Goto See+1
	Missile:
		ARAC A 20 Bright A_FaceTarget
		ARAC G 4 Bright A_CustomMissile("AracknightMissile",32,0,0,0,0)
		ARAC H 4 Bright
		ARAC H 1 Bright A_SpidRefire
		Goto Missile+1
	Pain:
		ARAC I 3
		ARAC I 3 A_Pain
		Goto See+1
	Death:
		ARAC J 0 A_Scream
		ARAC J 0 A_SpawnItemEx("GIB1",0,0,32,0,0,random(3,6), 48, 128)
		ARAC J 5 A_SpawnItemEx("GIB2SPLAT",0,0,30,0,0,random(3,6), 48, 128)
		ARAC J 5 A_SpawnItemEx("GIB3",0,0,34,0,0,random(3,6), 48, 128)
		ARAC J 5 A_SpawnItemEx("GIB5SPLAT",0,0,30,0,0,random(3,6), 48, 128)
		ARAC J 5 A_SpawnItemEx("GIB4", 0,0,25,0,0,random(3,6), 48, 128)
		ARAC K 7 A_NoBlocking
		ARAC LMNO 7
		ARAC P -1 A_BossDeath
		Stop
	Raise:
		ARAC P 5 ACS_NamedExecuteAlways("WOC Monster Init",0,64,0)
		ARAC ONMLKJ 5
		Goto See+1
	}
}

ACTOR AracknightMissile : NewArachnotronPlasma
{  
	SeeSound "weapons/magic7"
	DeathSound "Mage/SkullStaff/ImpactA"
	Damagetype "Arcane"
	States
	{
	Spawn:
		ARAX AAABBB 1 Bright A_SpawnItemEx("AracknightMissileTrail", -(MomX/1.6), -(MomY/1.6), (MomZ/1.6*-1), (MomX/1.6), (MomY/1.6), (MomZ/1.6), -Angle, 138)
		Loop
	Death:
		ARXP ABCDE 3 Bright
		Stop
	}
}

ACTOR AracknightMissileTrail
{
  Scale 0.75
  Radius 8
  Height 6
  Damage 0
  Projectile
  +CLIENTSIDEONLY +DONTBLAST
  +DONTSPLASH
  RenderStyle Add
  Alpha 0.5
  States
  {
  Spawn:
    ARAX A 0
    ARAX A 0 A_Jump(128, 4)
    ARAX AAABBB 2 Bright A_FadeOut(0.12)
    Loop
  }
}

ACTOR Draugr {
	Health 300
	Radius 20
	Height 56
	Mass 500
	Speed 10
	PainChance 100
	PainChance "Convert", 255
	Monster
	+MISSILEMORE 
	+FLOORCLIP
	+NOBLOOD
	+AVOIDMELEE
	SeeSound "Draugr/See"
	PainSound "Draugr/pain"
	DeathSound "Draugr/Die"
	ActiveSound "Draugr/Act"
	MeleeSound "skeleton/melee"
	HitObituary "%o was smacked in the face by a Draugr."
	Obituary "%o was caught by a Draugr's fire."
	Tag "Draugr"
	Species "Revenant"
	DropItem "ReagentTan" 128
	DamageFactor "Holy", 1.5
	DamageFactor "HolyPlayer", 1.5
	DamageFactor "HolyTime", 1.5
	DamageFactor "PoisonTime", 0.0
	DamageFactor "Bleed", 0.0
	States {
		Spawn:
			TNT1 A 0
			TNT1 A 0 ACS_NamedExecuteAlways("WOC Monster Init", 0, 86, 0)
		Idle:
			SKE2 AB 10 A_Look
		Loop
		See:
			SKE2 AABBCCDDEEFF 2 A_Chase
		Loop
		Melee:
			TNT1 A 0 A_FaceTarget
			SKE2 J 6 A_SkelWhoosh
			SKE2 K 6 A_FaceTarget
			SKE2 L 6 A_CustomMeleeAttack(ACS_NamedExecuteWithResult("WOC Monster Damage Scale",ACTIVATOR,FRandom(26,46)), "monster/inchit", "", "Physical")
		Goto See
		Missile:
			TNT1 A 0 A_Jump(64, "CannonLong")
			TNT1 A 0 A_JumpIfCloser(256, "Cannon")
			SKE2 G 8 A_FaceTarget
			TNT1 A 0 A_PlaySound("Draugr/CannonFire")
			SKE2 H 7 Bright A_CustomMissile("DraugrSeeker", 60, -16)
			SKE2 I 8 A_FaceTarget
		Goto See
		Cannon:
			TNT1 A 0 A_Jump(128, "3ShotBurst")
		CannonLong:
			SKE2 GG 4 A_FaceTarget
			TNT1 A 0 A_PlaySound("Draugr/CannonFire")
			SKE2 H 5 Bright A_CustomMissile("DraugrSlug", 64, -16)
			SKE2 I 5 A_FaceTarget
		Goto See
		3ShotBurst:
			SKE2 GGG 4 A_FaceTarget
			TNT1 A 0 A_PlaySound("Draugr/CannonFire")
			SKE2 H 5 Bright A_CustomMissile("DraugrSlug", 64, -16, random(-2, 2))
			SKE2 I 5 A_FaceTarget
			TNT1 A 0 A_PlaySound("Draugr/CannonFire")
			SKE2 H 5 Bright A_CustomMissile("DraugrSlug", 64, -16, random(-2, 2))
			SKE2 I 5 A_FaceTarget
			TNT1 A 0 A_PlaySound("Draugr/CannonFire")
			SKE2 H 5 Bright A_CustomMissile("DraugrSlug", 64, -16, random(-2, 2))
			SKE2 I 5 A_FaceTarget
		Goto See
		Pain:
			SKE2 M 5
			SKE2 M 5 A_Pain
		Goto See
		Pain.Morale:
			TNT1 A 0 A_Changeflag("Frightened", 1)
			Goto Pain
		Pain.Convert:
			TNT1 A 0 A_JumpIfInTargetInventory("Visions",Random(0,4),"ConvertMe")
			goto Pain
		ConvertMe:
			TNT1 A 0 ACS_ExecuteAlways(WOC_VISIONSSCRIPT, 0, 0, 0, 0)
			goto See
		Death:
			SKE2 NO 7
			SKE2 P 7 A_Scream
			SKE2 Q 7 A_NoBlocking
			SKE2 R 7
			SKE2 S -1
		Stop
		Raise:
			TNT1 A 0 ACS_NamedExecuteAlways("WOC Monster Init", 0, 86, 0)
			SKE2 R 5
			SKE2 QPON 5
		Goto See
	}
}

Actor SlugExp {
	DamageType Fire
	Obituary "%o was forced to become a widow thanks to a Widowmaker."
	Speed 0
	Height 4
	Radius 4
	Damage (0)
	+MISSILE
	+DONTBLAST
	+NOBLOCKMAP
	+NOGRAVITY
	+DONTSPLASH
	-TELESTOMP
	+NODAMAGETHRUST
	States
	{
		Spawn:
			TNT1 A 0
			TNT1 A 0 A_GiveToTarget("DONTHARMSPECIESON",1)
			TNT1 A 0 A_Explode(ACS_NamedExecuteWithResult("WOC Monster Damage Scale",WOCTARGET,10), 96, 0)
			TNT1 A 1 A_GiveToTarget("DONTHARMSPECIESOFF",1)
		Stop
	}
}

Actor SlugBoomFX {
	+NOINTERACTION
	+FORCEXYBILLBOARD
	renderstyle add
	+CLIENTSIDEONLY
	states {
		spawn:
			SX02 ABCDEFGHIJKLMNOPQRSTU 1 bright
		stop
	}
}

actor SlugSpark {
	radius 2
	height 2
	alpha 1
	scale 0.04
	gravity 0.4
	renderstyle add
	+NOTELEPORT
	+FLOORCLIP
	+FORCEXYBILLBOARD
	+CLIENTSIDEONLY
	+DOOMBOUNCE
	bouncefactor 0.2
	states {
		spawn:
			SPRK A 15 bright
		spawnloop:
			SPRK A 1 bright A_FadeOut(0.1)
		loop
	}
}

actor SlugSpark2 : SlugSpark {
	scale 0.06
	gravity 0.3
	states {
		spawn:
			SPRK C 20 bright
		spawnloop:
			SPRK C 1 bright A_FadeOut(0.1)
		loop
	}
}

actor SlugTrailSpawner {
	+NOGRAVITY
	+NOCLIP
	+CLIENTSIDEONLY
	States{
		spawn:
			TNT1 A 0
			TNT1 A 0 A_SpawnItemEx ("SlugCoreTrail", 0,0,0, 0,0,0, 0)
			TNT1 A 1 A_SpawnItemEx ("SlugTrail", 0,0,0, 0,0,0, 0)
			stop
	}
}

actor SlugCoreTrail {
	scale 0.12
	alpha 1.0
	renderstyle add
	+NOINTERACTION
	+NOGRAVITY
	+FORCEXYBILLBOARD
	+NOTELEPORT
	+CLIENTSIDEONLY
	states {
		spawn:
			SPRK C 2 bright
		sploop:
			SPRK C 1 bright A_FadeOut(0.25)
			loop
	}		
}

actor SlugTrail {
	scale 0.08
	alpha 1.0
	renderstyle add
	+NOINTERACTION
	+NOGRAVITY
	+FORCEXYBILLBOARD
	+NOTELEPORT
	+CLIENTSIDEONLY
	states {
		spawn:
			TNT1 A 0
			SMOK ABCDEFGHIJKLMNOPQ 1 bright A_FadeOut(0.08)
			stop
	
	}
}

actor DraugrSlug { 
    Radius 5
	Height 5  
	Mass 1
	Damage (ACS_NamedExecuteWithResult("WOC Monster Damage Scale",WOCTARGET,FRandom(15,30)))
	DamageType Fire
	alpha 1
	Speed 48
	RenderStyle ADD
	Scale 0.275
	Decal "Scorch"
	MissileHeight 8
	DeathSound "Draugr/CannonExp"
	PROJECTILE
	+THRUGHOST
	+NOTELEPORT
	+FORCEXYBILLBOARD
	/*+NODAMAGETHRUST*/
	States{
		Spawn:
			LEYS O 1 bright A_SpawnItem("SlugTrailSpawner")
      		loop
		Death:
			TNT1 AA 0 A_PlaySound("Draugr/cannonblast")
			TNT1 A 0 bright A_SpawnItem("SlugExp")
			TNT1 A 0 A_SpawnItemEx("SlugBoomFX", 0, 0, 0, 0, 0, 0, 0, 0)
			TNT1 AAAAA 0 A_SpawnItemEx ("SlugSpark", 0, 0, 0, random(1,2), random(2,4) , random(0,6) , random(180,360))
			TNT1 AAA 0 A_SpawnItemEx ("SlugSpark2", 0, 0, 0, random(1,2), random(2,4) , random(0,6) , random(180,360))
			TNT1 A 3
			stop		
   	}
}

Actor DraugrSeekerTrail {
	RenderStyle Add
	Alpha 0.85
	+CLIENTSIDEONLY
	+NOINTERACTION
	States {
		Spawn:
			TNT1 A 2
			FMTT ABCDE 2 Bright A_FadeOut(0.2)
		Stop
	}
}

Actor DraugrSeekerBoomFX {
	Scale 0.75
	RenderStyle Add
	Alpha 0.75
	+CLIENTSIDEONLY
	+NOGRAVITY
	States {
		Spawn:
			NREB CDEFGHIJKL 2 Bright
		Stop
	}
}

Actor DraugrSeeker {
	Speed 16
	Damage (ACS_NamedExecuteWithResult("WOC Monster Damage Scale",WOCTARGET,FRandom(35,55)))
	Radius 8
	Height 6
	Renderstyle Add
	Scale 0.45
	PROJECTILE
	DamageType Fire
	+SEEKERMISSILE
	+DOOMBOUNCE
	/*+NODAMAGETHRUST*/
	BounceCount 2
	BounceFactor 1
	Decal RevenantScorch
	SeeSound "Draugr/SeekerFire"
	DeathSound "Draugr/SeekerExp"
	States {
		Spawn:
			TNT1 A 0
			TNT1 A 0 A_Jump(128,1,3,5,7,9)
			NREB ABABABABAB 2 Bright
			Goto StartSeek
		StartSeek:
			TNT1 A 0 A_SpawnItemEx("DraugrSeekerTrail",0,0,6,0,0,0,0,128) 
			NREB A 2 Bright	A_Tracer2
			NREB B 2 Bright A_SpawnItemEx("DraugrSeekerTrail",0,0,6,0,0,0,0,128) 
			Loop
		Death:
			TNT1 A 0
			TNT1 A 0 //A_SpawnItemEx("RedParticleSpawner", 0, 0, 0, 0, 0, 0, 0, 128)
			TNT1 A 1 A_SpawnItem("DraugrSeekerBoomFX")
			Stop
	}
}

ACTOR Hellduke : NewCyberdemon2
{
	Health 8000
	Tag "The Hellduke"
	SeeSound "hellduke/sight"
	DeathSound "hellduke/death"
	Obituary "%o was blasted away by the Hellduke."
	-NORADIUSDMG
	+DONTHURTSPECIES
	+NOFEAR
	+LOOKALLAROUND
	Damagefactor "PoisonCloud", 0.25
	DropItem "AccessoryRandomSpawner" 16
	+NOPAIN
	+USEKILLSCRIPTS
	+NOTARGET
	+DONTHARMSPECIES
	Species "Cyberdemon"
	States
	{
	Spawn:
		DUKE A 0
		DUKE A 0 ACS_NamedExecuteAlways("WOC Monster Init",0,110,WOC_STATUSIMMUNE|WOC_MAXLEVEL)
	Idle:
		DUKE AB 10 A_Look
		Loop
	See:
		DUKE A 3 A_Hoof
		DUKE ABB 3 A_Chase
		DUKE C 3 A_Hoof
		DUKE CDD 3 A_Chase
		Loop
	Missile:
		DUKE E 6 A_FaceTarget
		DUKE F 12 Bright A_CustomMissile("Dukeshot",60,-24)
		DUKE E 12 A_FaceTarget
		DUKE F 12 Bright A_CustomMissile("Dukeshot",60,-24)
		DUKE E 12 A_FaceTarget
		DUKE F 12 Bright A_CustomMissile("Dukeshot",60,-24)
		Goto See
	Pain:
		DUKE G 10 A_Pain
		Goto See
	Death:
		DUKE H 60 A_Scream 
		DUKE HHHHHHHHHH 1 A_SpawnItemEx("Kaboom", 0, 0, 0,0,random(-9,9),random(-9,9),random(5,9), 48, 128)
		DUKE H 1 A_SpawnItem("BOSSGIBBER")
		DUKE HH 1 A_SpawnItemEx("Kaboom", 0, 0, 0,0,random(-9,9),random(-9,9),random(5,9), 48, 128)
		DUKE JJJJJJJJJJJJJJJ 1 A_SpawnItemEx("Kaboom", 0, 0,0,random(-9,9),random(-9,9),random(5,9), 48, 128)
		DUKE J 1 A_SpawnItem("BOSSGIBBER")
		DUKE JJJJJJJJJJJJ 1 A_SpawnItemEx("Kaboom", 0, 0,0,random(-9,9),random(-9,9),random(5,9), 48, 128)
		DUKE K 1 A_SpawnItemEx("Kaboom", 0, 0,0,random(-9,9),random(-9,9),random(5,9), 48, 128)
		DUKE K 1 A_SpawnItem("BOSSGIBBER")
		DUKE KKKKKKKKK 1 A_SpawnItemEx("Kaboom", 0, 0,0,random(-9,9),random(-9,9),random(5,9), 48, 128)
		DUKE K 1 A_SpawnItem("BOSSGIBBER")
		DUKE KKKKKKKKKKK 1 A_SpawnItemEx("Kaboom", 0, 0,0,random(-9,9),random(-9,9),random(5,9), 48, 128)
		DUKE LLLLLLL 1 A_SpawnItemEx("Kaboom", 0, 0,0,random(-9,9),random(-9,9),random(5,9), 48, 128)
		DUKE L 1 A_SpawnItem("BOSSGIBBER")
		DUKE LLLLLLLLLLLL 1 A_SpawnItemEx("Kaboom", 0, 0,0,random(-9,9),random(-9,9),random(5,9), 48, 128)
		DUKE L 1 A_SpawnItem("BOSSGIBBER")
		DUKE LLLLLLLL 1 A_SpawnItemEx("Kaboom", 0, 0,0,random(-9,9),random(-9,9),random(5,9), 48, 128)
		DUKE NO 5
		DUKE P 30
		DUKE P 0 A_BossDeath
		DUKE P -1 A_NoBlocking
		stop
	}
}

ACTOR DukeShot : Rocket
{
	Speed 25
	Damage (ACS_NamedExecuteWithResult("WOC Monster Damage Scale",WOCTARGET,FRandom(80,100)))
	RENDERSTYLE ADD
	Alpha 1.0
	Seesound "Hellduke/Fire"
	DeathSound "Hellduke/Explode"
	DamageType "Fire"
	Obituary "%o was blasted %k's Hellbolt."
	+THRUGHOST
	+FORCEXYBILLBOARD
	+EXPLODEONWATER
	-DEHEXPLOSION
	-ROCKETTRAIL
	States
	{
	Spawn: 
		HBAL ABCD 3 Bright A_SpawnItemEx("IrePuff",0,0,0,0,0,0,0,8)
		loop
	Death:
		HBAL EF 3 Bright
		HBAL G 3 Bright A_Explode(ACS_NamedExecuteWithResult("WOC Monster Damage Scale",WOCTARGET,128),128,0)
		HBAL HI 3 Bright
		stop
	}
}

ACTOR IrePuff
{ 
	Radius 0
	Height 1
	RENDERSTYLE ADD
	Alpha 0.85
	+NOGRAVITY
	+NOBLOCKMAP
	+FORCEXYBILLBOARD   
	+NOINTERACTION
	+CLIENTSIDEONLY
	States
	{
	Spawn:
		TNT1 A 3 Bright
		IRFX ABCDEF 3 Bright
		Stop 
	}
}

ACTOR HellforgeDirector : NewSpiderMastermind
{
	Health 6000
	Radius 108
	Height 100
	Tag "The Director"
	Species "Cyberdemon"
	+NOTARGET
	SeeSound "director/sight"
	ActiveSound "Director/active"
	DeathSound "director/death"
	Obituary "The Director turned %o into confetti."
	States
	{
	Spawn:
		DIRE A 0
		DIRE A 0 ACS_NamedExecuteAlways("WOC Monster Init",0,100,WOC_STATUSIMMUNE|WOC_MAXLEVEL)
	Idle:
		DIRE A 0 
		DIRE AB 10 A_Look
		Loop
	See:
		DIRE A 3 A_PlaySound("director/walk",4,1,0,ATTN_IDLE)
		DIRE ABB 3 A_Chase
		DIRE C 3 A_PlaySound("director/walk",4,1,0,ATTN_IDLE)
		DIRE CDD 3 A_Chase
		DIRE E 3 A_PlaySound("director/walk",4,1,0,ATTN_IDLE)
		DIRE EFF 3 A_Chase
		Loop
	Missile:
		DIRE A 20 Bright A_FaceTarget
		DIRE G 0 Bright A_PlaySound("Director/Fire",4)
		DIRE G 0 Bright A_CustomMissile("DirectorNail",54,0,frandom(-9,9))
		DIRE G 0 Bright A_CustomMissile("DirectorNail",54,0,frandom(-9,9))
		DIRE G 4 Bright A_CustomMissile("DirectorNail",54,0,frandom(-9,9))
		DIRE H 0 Bright A_PlaySound("Director/Fire",4)
		DIRE H 0 Bright A_CustomMissile("DirectorNail",54,0,frandom(-9,9))
		DIRE H 0 Bright A_CustomMissile("DirectorNail",54,0,frandom(-9,9))
		DIRE H 4 Bright A_CustomMissile("DirectorNail",54,0,frandom(-9,9))
		DIRE H 1 Bright A_SpidRefire
		Goto Missile+1
	Pain:
		DIRE I 3
		DIRE I 3 A_Pain
		Goto See
	Death:
		DIRE J 20 A_Scream
		DIRE K 10 A_NoBlocking
		DIRE L 10
		DIRE MMMMMMMM 1 A_SpawnItemEx("Kaboom", 0, 0,0,random(-9,9),random(-9,9),random(5,9), 48, 128)
		DIRE M 1 A_SpawnItem("BOSSGIBBER")
		DIRE MMM 1 A_SpawnItemEx("Kaboom", 0, 0,0,random(-9,9),random(-9,9),random(5,9), 48, 128)
		DIRE NNNNNNNNNNNNNNN 1 A_SpawnItemEx("Kaboom", 0, 0,0,random(-9,9),random(-9,9),random(5,9), 48, 128)
		DIRE N 1 A_SpawnItem("BOSSGIBBER")
		DIRE NNNNNNNNN 1 A_SpawnItemEx("Kaboom", 0, 0,0,random(-9,9),random(-9,9),random(5,9), 48, 128)
		DIRE O 1 A_SpawnItem("BOSSGIBBER")
		DIRE O 1 A_SpawnItemEx("Kaboom", 0, 0,0,random(-9,9),random(-9,9),random(5,9), 48, 128)
		DIRE P 5
		DIRE QR 10
		DIRE S -1 A_BossDeath
		stop
	}
}

actor DirectorNail : FastProjectile
{
   Damage (ACS_NamedExecuteWithResult("WOC Monster Damage Scale",WOCTARGET,FRandom(1,4)))
   Radius 1
   Height 1
   Speed 100
   Damagetype "Physical"
   Projectile
   +THRUGHOST
   +WINDTHRUST
   +RIPPER
   +NODAMAGETHRUST
   +HITTRACER
   DeathSound "AssassinNailgunHit"
   States
   {	
   Spawn:
		NAIL A 1
		Wait
	Crash:
   Death:
		NAIL D 2 A_SetTranslucent(1.0, 1)
		NAIL EFGHI 2 Bright A_Fadeout(0.125)
		stop
	Xdeath: 
		TNT1 a 2 //A_PlaySound("weapons/rico")
		stop
	}
}
