Actor InsanitySpider : DarkDemolisher
{
  Health 4500
  DamageFactor "Normal", 0.65
  Bloodcolor Red
  DropItem "BossLifeEssence" 256 25
  DropItem "BossArmorBonusMax" 256 1
  DropItem "DemonAmmoBox" 128 200
  DropItem "BFG10K " 100
  Obituary "%o didn't take cover from an Insanity Spider's barrage."
  Tag "\c[i7]Insanity Spider\c-"
  States
  {
  Spawn:
	INSP A 10 A_Look
	Loop
  See:
	TNT1 A 0 A_Metal
	TNT1 A 0 A_SpawnItemEx("InsaneSpiderGhostA",0,0,0,0,0,0,0,128)
	INSP A 2 A_Chase
	TNT1 A 0 A_SpawnItemEx("InsaneSpiderGhostA",0,0,0,0,0,0,0,128)	
	INSP A 2 A_Chase
	TNT1 A 0 A_SpawnItemEx("InsaneSpiderGhostB",0,0,0,0,0,0,0,128)
	INSP B 2 A_Chase
	TNT1 A 0 A_SpawnItemEx("InsaneSpiderGhostB",0,0,0,0,0,0,0,128)
	INSP B 2 A_Chase
	TNT1 A 0 A_Metal	
	TNT1 A 0 A_SpawnItemEx("InsaneSpiderGhostC",0,0,0,0,0,0,0,128)
	INSP C 2 A_Chase
	TNT1 A 0 A_SpawnItemEx("InsaneSpiderGhostC",0,0,0,0,0,0,0,128)
	INSP C 2 A_Chase
	TNT1 A 0 A_SpawnItemEx("InsaneSpiderGhostD",0,0,0,0,0,0,0,128)
	INSP D 2 A_Chase
	TNT1 A 0 A_SpawnItemEx("InsaneSpiderGhostD",0,0,0,0,0,0,0,128)
	INSP D 2 A_Chase
	TNT1 A 0 A_Metal	
	TNT1 A 0 A_SpawnItemEx("InsaneSpiderGhostE",0,0,0,0,0,0,0,128)
	INSP E 2 A_Chase
	TNT1 A 0 A_SpawnItemEx("InsaneSpiderGhostE",0,0,0,0,0,0,0,128)
	INSP E 2 A_Chase
	TNT1 A 0 A_SpawnItemEx("InsaneSpiderGhostF",0,0,0,0,0,0,0,128)
	INSP F 2 A_Chase
	TNT1 A 0 A_SpawnItemEx("InsaneSpiderGhostF",0,0,0,0,0,0,0,128)
	INSP F 2 A_Chase	
	TNT1 A 0 A_Jump(84,"See")	
	Loop
  Missile:
	TNT1 A 0 A_Jump(100,"BFG15k")
	TNT1 A 0 A_Jump(50,"BFG10k")
	TNT1 A 0 A_Jump(128,"ExplosiveMinigun")
  DemonTech:
	INSP A 20 A_FaceTarget
	TNT1 A 0 A_FaceTarget
	TNT1 A 0 A_CustomMissile("InsanitySpiderDemontech",39,0,frandom(-10,10),CMF_OFFSETPITCH,frandom(-1,1))
	INSP G 2 Bright A_PlaySoundEx("weapons/demontechfire","Weapon")
	TNT1 A 0 A_FaceTarget
	TNT1 A 0 A_CustomMissile("InsanitySpiderDemontech",39,0,frandom(-10,10),CMF_OFFSETPITCH,frandom(-1,1))
	INSP H 2 Bright A_PlaySoundEx("weapons/demontechfire","Weapon")
	TNT1 A 0 A_SpidRefire
	Goto DemonTech+1
  ExplosiveMinigun:
	INSP A 20 A_FaceTarget
	TNT1 A 0 A_FaceTarget
	TNT1 A 0 A_SpawnItemEx("OrangeShellCasing",10,0,40, Random(2, 6), 0, Random(1, 3), Random(80, 90), 128)
	TNT1 A 0 A_CustomMissile("SentientExplosiveTracer",39,0,frandom(-8,8))
	INSP G 2 Bright A_PlaySound("sentient/fire")
	TNT1 A 0 A_FaceTarget
	TNT1 A 0 A_SpawnItemEx("OrangeShellCasing",10,0,40, Random(2, 6), 0, Random(1, 3), Random(80, 90), 128)
	TNT1 A 0 A_CustomMissile("SentientExplosiveTracer",39,0,frandom(-8,8))
	INSP H 2 Bright A_PlaySound("sentient/fire")
	TNT1 A 0 A_SpidRefire
	Goto ExplosiveMinigun+1
  BFG15k:
	TNT1 A 0 A_PlaySound("weapons/charge15k")
	INSP GGGGG 5 A_FaceTarget
	TNT1 A 0 A_CustomMissile("InsanitySpider15k",39,0,frandom(-7,7))
	INSP HG 4 Bright A_FaceTarget
	TNT1 A 0 A_SpidRefire
	Goto BFG15k+6
  BFG10k:
	TNT1 A 0 A_PlaySound("weapons/charge15k")
	INSP GGGGGGG 5 A_FaceTarget
	TNT1 A 0 A_PlaySound("weapons/bfg15kfire")
	TNT1 A 0 A_CustomMissile("Sentient10K",39,0,frandom(-7,7))
	INSP HG 4 Bright A_FaceTarget
	TNT1 A 0 A_SpidRefire
	Goto BFG10k+8
  Pain:
	INSP I 6 A_Pain
	TNT1 A 0 A_Jump(128,"Missile")
	Goto See
  Death:
	TNT1 A 0 A_Scream
	INSP I 20 A_Fall
	TNT1 AA 0 A_SpawnItemEx("GibbedGenerator",Random(10,-10),Random(10,-10),Random(20,60),0,0,0,0,128,0)	
	TNT1 AAA 0 A_CustomMissile("BigRedBloodCloud", random(10,80), 0, random(0,360), 2, random(0,360))	
	INSP JJJJJ 2 Bright A_CustomMissile("Kaboom", random(10,60), random(30,-30), random(0,360), 2, random(0,360))
	TNT1 AA 0 A_SpawnItemEx("GibbedGenerator",Random(10,-10),Random(10,-10),Random(20,60),0,0,0,0,128,0)	
	TNT1 AAA 0 A_CustomMissile("BigRedBloodCloud", random(10,80), 0, random(0,360), 2, random(0,360))	
	INSP KKKKK 2 Bright A_CustomMissile("Kaboom", random(10,60), random(30,-30), random(0,360), 2, random(0,360))
	TNT1 AA 0 A_SpawnItemEx("GibbedGenerator",Random(10,-10),Random(10,-10),Random(20,60),0,0,0,0,128,0)	
	TNT1 AAA 0 A_CustomMissile("BigRedBloodCloud", random(10,80), 0, random(0,360), 2, random(0,360))
	INSP LLLLL 2 Bright A_CustomMissile("Kaboom", random(10,60), random(30,-30), random(0,360), 2, random(0,360))
	TNT1 AA 0 A_SpawnItemEx("GibbedGenerator",Random(10,-10),Random(10,-10),Random(20,60),0,0,0,0,128,0)	
	TNT1 AAA 0 A_CustomMissile("BigRedBloodCloud", random(10,80), 0, random(0,360), 2, random(0,360))
	INSP MMMMM 2 Bright A_CustomMissile("Kaboom", random(10,60), random(30,-30), random(0,360), 2, random(0,360))
	TNT1 AA 0 A_SpawnItemEx("GibbedGenerator",Random(10,-10),Random(10,-10),Random(20,60),0,0,0,0,128,0)	
	TNT1 AAA 0 A_CustomMissile("BigRedBloodCloud", random(10,80), 0, random(0,360), 2, random(0,360))
	INSP NNNNN 2 Bright A_CustomMissile("Kaboom", random(10,60), random(30,-30), random(0,360), 2, random(0,360))
	TNT1 AA 0 A_SpawnItemEx("GibbedGenerator",Random(10,-10),Random(10,-10),Random(20,60),0,0,0,0,128,0)	
	TNT1 AAA 0 A_CustomMissile("BigRedBloodCloud", random(10,80), 0, random(0,360), 2, random(0,360))
	INSP OOOOO 2 Bright A_CustomMissile("Kaboom", random(10,60), random(30,-30), random(0,360), 2, random(0,360))
	TNT1 AA 0 A_SpawnItemEx("GibbedGenerator",Random(10,-10),Random(10,-10),Random(20,60),0,0,0,0,128,0)	
	TNT1 AAA 0 A_CustomMissile("BigRedBloodCloud", random(10,80), 0, random(0,360), 2, random(0,360))
	INSP PPPPP 2 Bright A_CustomMissile("Kaboom", random(10,60), random(30,-30), random(0,360), 2, random(0,360))	
	TNT1 AAAA 0 A_SpawnItemEx("GibbedGenerator",Random(10,-10),Random(10,-10),Random(20,60),0,0,0,0,128,0)
	TNT1 AAAAAA 0 A_CustomMissile("BigRedBloodCloud", random(10,80), 0, random(0,360), 2, random(0,360))
	TNT1 AAAAAAAA 0 A_CustomMissile("SmokeFX3", random(10,60), random(30,-30), random(0,360), 2, random(0,360))	
	INSP QR 5
	INSP S -1 A_KillMaster
	Stop
	}
}

ACTOR InsanitySpiderDemontech : RedZDemonTechProjectile
{
DamageType "DarkDemoEx"
Speed 90
Damage 4
}

ACTOR InsanitySpider15k : Cybruiser15k
{
DamageType "DarkDemoEx"
}

ACTOR InsaneSpiderGhostA
{
Scale 1.05
RENDERSTYLE Translucent
Alpha 0.75
+NOGRAVITY
+CLIENTSIDEONLY
+DONTSPLASH
+NOINTERACTION
+NOCLIP
States
{
Spawn:
    INSP A 2 A_FadeOut(0.18)
    Loop
    }
}

ACTOR InsaneSpiderGhostB : InsaneSpiderGhostA
{   
States
{
Spawn:
    INSP B 2 A_FadeOut(0.18)
    Loop
    }
}

ACTOR InsaneSpiderGhostC : InsaneSpiderGhostA
{   
States
{
Spawn:
    INSP C 2 A_FadeOut(0.18)
    Loop
    }
}

ACTOR InsaneSpiderGhostD : InsaneSpiderGhostA
{   
States
{
Spawn:
    INSP D 2 A_FadeOut(0.18)
    Loop
    }
}

ACTOR InsaneSpiderGhostE : InsaneSpiderGhostA
{   
States
{
Spawn:
    INSP E 2 A_FadeOut(0.18)
    Loop
    }
}

ACTOR InsaneSpiderGhostF : InsaneSpiderGhostA
{   
States
{
Spawn:
    INSP F 2 A_FadeOut(0.18)
    Loop
    }
}