Actor Aracknight : Arachnotron
{
Health 1466
DamageFactor "SoulToxic", 0.0
DamageFactor "Cacolich", 0.0
+NoFear
Damagefactor "Acid", 0.6
Radius 64
Height 64
Mass 600
Speed 8
Painchance 21
+AvoidMelee
Bloodcolor Blue
DamageFactor "BeheComet", 0.0
DamageFactor "FatFlamer", 0.0
DropItem "BossLifeEssence" 230 25
DropItem "HEMBossArmorBonusMax35" 200
Species "SatanGuard"
Damagefactor "DTRPlayer", 0.5
Damagefactor "SatanGuard", 0.0
Damagefactor "CurseComet", 0.0
Obituary "%o was hunted down by an Aracknight."
Seesound "arakn/sight"
Painsound "arakn/fusionitepain"
Deathsound "arakn/death"
Activesound "arakn/active"
DamageFactor "Baby15K", 0.0
Species "BabySpiders"
MONSTER
+NoTarget
+MissileEvenMore
+QuickToRetaliate
+MISSILEMORE
States
{
Spawn:
   Idle:
    ARAK A 1
    ARAK A 1 A_Look
    Loop
See:
    //TNT1 A 0 A_JUMP(4,"Missile")
    ARAK A 1 A_BabyMetal
	//TNT1 A 0 A_JUMP(4,"Missile")
    ARAK AABBBCCC 1 A_Chase
	//TNT1 A 0 A_JUMP(4,"Missile")
    ARAK D 1 A_BabyMetal
	//TNT1 A 0 A_JUMP(4,"Missile")
    ARAK DDEEEFFF 1 A_Chase
    Goto See
Missile:
    TNT1 A 0 A_Jump(80,"MiniComets","CerebralDrain","BouncerGroundshot")
	Normal:
    ARAK A 0 A_PlaySound("arakn/charge",0,2.0,0)
    ARAK AAAAAAAAAA 1 A_FaceTarget
    NLoop:
    ARAK GGGG 1 Bright A_FaceTarget
	TNT1 A 0 A_CustomMissile("ArackBall",30,0,random(-13,13),0)
    ARAK HHHH 1 Bright A_FaceTarget
	TNT1 A 0 A_CustomMissile("ArackBall",30,0,random(-13,13),0)
	ARAK GGGG 1 Bright A_FaceTarget
	TNT1 A 0 A_CustomMissile("ArackBall",30,0,random(-13,13),0)
    ARAK HHHH 1 Bright A_FaceTarget
	TNT1 A 0 A_CustomMissile("ArackBall",30,0,random(-13,13),0)
    ARAK GGGG 1 Bright A_FaceTarget
	TNT1 A 0 A_CustomMissile("ArackBall",30,0,random(-13,13),0)
    ARAK HHHH 1 Bright A_FaceTarget
	TNT1 A 0 A_CustomMissile("ArackBall",30,0,random(-13,13),0)
	ARAK GGGG 1 Bright A_FaceTarget
	TNT1 A 0 A_CustomMissile("ArackBall",30,0,random(-13,13),0)
    ARAK HHHH 1 Bright A_FaceTarget
	TNT1 A 0 A_CustomMissile("ArackBall",30,0,random(-13,13),0)
    TNT1 A 0 A_Jump(80,"MiniComets","CerebralDrain","BouncerGroundshot")
    Goto See
	MiniComets:
	ARAK AAAAAAAAAAAAAA 1 A_FaceTarget
    ARAK GGGG 1 Bright A_FaceTarget
	TNT1 A 0 A_CustomMissile("MiniComet",30,0,random(-20,20),0)
    ARAK HHHH 1 Bright A_FaceTarget
	TNT1 A 0 A_CustomMissile("MiniComet",30,0,random(-20,20),0)
	ARAK GGGG 1 Bright A_FaceTarget
	TNT1 A 0 A_CustomMissile("MiniComet",30,0,random(-20,20),0)
    ARAK HHHH 1 Bright A_FaceTarget
	TNT1 A 0 A_CustomMissile("MiniComet",30,0,random(-20,20),0)
    ARAK A 14
    TNT1 A 0 A_Jump(42,"Missile")
	GoTo See
	BouncerGroundshot:
	ARAK A 15
	ARAK BBBBBBBBBBBBBBBBB 1 Bright A_SpawnItemEx("BlueFire2",0,0,35,0,0,random(5,11))
	ARAK C 1 Bright A_FaceTarget
	TNT1 AAAAAAAAAAAAA 0  A_CustomMissile("Kaboom23", random(20,40), random(10,-10), random(0,360), 2, random(0,360))
	TNT1 A 0 A_SpawnItemEx("BlueFlare2",0,0,37)
	TNT1 A 0 A_CustomMissile("AracknightGrounder",0,0,0)
	TNT1 A 0 A_CustomMissile("AracknightGrounder",0,0,25)
	TNT1 A 0 A_CustomMissile("AracknightGrounder",0,0,-25)
	ARAK C 5 Bright
	ARAK A 15
    TNT1 A 0 A_Jump(42,"Missile")
	GoTo See
	CerebralDrain:
	 TNT1 A 0 A_ChangeFlag(NOPAIN,1)
	 ARAK A 1 A_PlaySound("exile/voidstart")
	 ARAK AAAAAA 1 A_FaceTarget
	VileChargeLoop:
	 TNT1 A 0
	 TNT1 A 0 A_JumpIfInventory("Tic",210,"CheckLOS")
	 TNT1 A 0 A_SpawnItemEx("AracknightVileFire",0,0,60)
	 TNT1 A 0 HealThing(2)
	 TNT1 A 0 A_CustomMissile("AracknightVileFire",0,0,0)
	CheckLOS1:
	 ARAK G 1 Bright A_FaceTarget
	 TNT1 A 0 A_GiveInventory("Tic",1)
	 TNT1 A 0 A_JumpIfInventory("Tic",210,"CheckLOS")
	 TNT1 A 0 A_JumpIfTargetInLos("VileChargeLoop",360)
	 Loop
	CheckLOS:
	 tnt1 a 0 A_ChangeFlag(NOPAIN,0)
	 TNT1 A 0 A_TakeInventory("Tic",999)
	 TNT1 A 0 A_JumpIfTargetInLos("VileExplode",360)
	 ARAK G 4
	 GoTo See
	 VileExplode:
	 tnt1 a 0 A_ChangeFlag(NOPAIN,0)
	 ARAK GGG 1 Bright A_FaceTarget
	 TNT1 A 0 HealThing(80)
	 TNT1 A 0 A_VileTarget("AracknightVileExplode")
	 ARAK GG 1 Bright A_FaceTarget
	 ARAK A 5
    TNT1 A 0 A_Jump(42,"Missile")
	 GoTo See
Pain:
    ARAK I 7 A_Pain
    Goto See	
Death:
    ARAK I 10 A_Scream
	ARAK J 6
	TNT1 AA 0 A_SpawnItemEx("BlueGibbedGenerator",0,0,0,0,0,0,0,128,0)
    ARA2 K 2 Bright A_CustomMissile("Kaboom23", random(20,40), random(10,-10), random(0,360), 2, random(0,360))
	TNT1 A 0 A_PlaySound("weapons/rocklx",0,1.0,0)
	ARA2 K 2 Bright A_CustomMissile("Kaboom23", random(20,40), random(10,-10), random(0,360), 2, random(0,360))
	TNT1 A 0 A_PlaySound("weapons/rocklx",0,1.0,0)
	ARA2 K 2 Bright A_CustomMissile("Kaboom23", random(20,40), random(10,-10), random(0,360), 2, random(0,360))
	TNT1 A 0 A_PlaySound("weapons/rocklx",0,1.0,0)
	ARA2 K 2 Bright A_CustomMissile("Kaboom23", random(20,40), random(10,-10), random(0,360), 2, random(0,360))
	TNT1 A 0 A_PlaySound("weapons/rocklx",0,1.0,0)
	ARA2 K 2 Bright A_CustomMissile("Kaboom23", random(20,40), random(10,-10), random(0,360), 2, random(0,360))
	TNT1 A 0 A_PlaySound("weapons/rocklx",0,1.0,0)
	ARA2 K 2 Bright A_CustomMissile("Kaboom23", random(20,40), random(10,-10), random(0,360), 2, random(0,360))
	TNT1 A 0 A_PlaySound("weapons/rocklx",0,1.0,0)
	ARA2 K 2 Bright A_CustomMissile("Kaboom23", random(20,40), random(10,-10), random(0,360), 2, random(0,360))
	TNT1 A 0 A_PlaySound("weapons/rocklx",0,1.0,0)
	ARA2 K 2 Bright A_CustomMissile("Kaboom23", random(20,40), random(10,-10), random(0,360), 2, random(0,360))
	TNT1 A 0 A_PlaySound("weapons/rocklx",0,1.0,0)
	ARA2 K 2 Bright A_CustomMissile("Kaboom23", random(20,40), random(10,-10), random(0,360), 2, random(0,360))
	TNT1 A 0 A_PlaySound("weapons/rocklx",0,1.0,0)
	TNT1 AAAA 0 A_CustomMissile("SmokeFX2", random(20,40), 0, random(0,360), 2, random(0,360))
    ARAK L 6 A_NoBlocking
    ARAK MN 6
    ARAK O 6
    ARAK P -1 A_KillMaster
    Stop
Raise:
 TNT1 A 0
	Stop
    }
}

Actor ArackBall : PaladinBall
{
  Damagetype "SatanGuard"
  Speed 32
  FastSpeed 36
  States
  {
	Spawn:	
        SATL AB 1 Bright A_SpawnItemEx("ArackBallTrail",0,0,0,0,0,0,0,128,0)	
        Loop
    }   
}

ACTOR ArackBallTrail
{
RENDERSTYLE Add
   +ClientSideOnly
   Gravity 0.0
   Alpha 0.78
   +NOGRAVITY
   +NOBLOCKMAP
   +NoInteraction
   +NoBlockMap
   +FORCEXYBILLBOARD
States
{
Spawn:
    TNT1 A 1
    SATL ABABABAB 1 Bright A_FadeOut(0.1)
	Stop
    }
}

Actor AracknightVileFire
{
  XScale 1.0
  YScale 1.5
  Projectile
  +SEEKERMISSILE
  +PierceArmor
  +NODAMAGETHRUST
  Renderstyle Add
  Height 3
  Radius 3
  VSpeed 7
  Alpha 1.0
  Obituary "%o's soul was dried out by an Aracknight."
  DamageType "SatanGuard"
  States
  {
  Spawn:
    TNT1 A 0
	TNT1 A 0 A_Warp(AAPTR_TRACER,11,0,36,0,WARPF_NOCHECKPOSITION)
	TNT1 A 0 A_RadiusGive("DefilersMarkWeak",67,RGF_PLAYERS,1)
	TNT1 A 0 A_RadiusGive("DefilersMarkWeak",67,RGF_MONSTERS,1)
	TNT1 A 0 A_PlaySound("DSFLAME",0,1.0,0)
	TNT1 A 0 A_SpawnItem("AracknightFireSpawner",0,0,0,0)
	SAFX C 3 Bright
    TNT1 A 0 Bright A_Explode(2,75,0,0,75)
	SAFX CDDFFGGHHH 1 Bright A_FadeOut
    Stop
  }
}
Actor AracknightVileFireB : AracknightVileFire
{
  States
  {
  Spawn:
    TNT1 A 0
	TNT1 A 0 A_PlaySound("DSFLAME",0,1.0,0)
	TNT1 A 0 A_SpawnItem("AracknightFireSpawner",0,0,0,0)
	SAFX C 3 Bright
	SAFX CDDFFGGHHH 1 Bright A_FadeOut
    Stop
  }
}

ACTOR AracknightFireSpawner : RedParticleSpawner
{
  States
  {
  Spawn:
    TNT1 A 0
	TNT1 A 0 A_SpawnItemEx("Kaboom23",random(16,-16),random(16,-16),random(6,12),0,0,random(2,4),0,128,0)
    TNT1 A 0 A_SpawnItemEx("BlueFire2",random(16,-16),random(16,-16),random(6,12),0,0,random(4,6),0,128,0)
    TNT1 A 1
    Stop
  }
}

Actor AracknightVileExplode : AracknightVileFire
{
  States
  {
  Spawn:
	TNT1 A 0 A_RadiusGive("SlayersOmen",80,RGF_PLAYERS,1)
	TNT1 A 0 A_RadiusGive("SlayersOmen",15,RGF_MONSTERS,1)
    SAFX CC 1 Bright
	TNT1 A 0 A_RadiusGive("DefilersMark",15,RGF_MONSTERS,1)
	TNT1 A 0 A_PlaySound("monsters/newfireexplode",0,1.0,0)
	TNT1 AAAAAAAAAAA 0 A_SpawnItem("AracknightFireSpawner2",0,0,0,0)
    TNT1 A 0 Bright A_Explode(55,150,0,0,125)
	SAFX DDFFGGHHH 1 Bright A_FadeOut
    Stop
  }
}

ACTOR AracknightFireSpawner2 : RedParticleSpawner
{
  States
  {
  Spawn:
    TNT1 A 0
	TNT1 A 0 A_SpawnItemEx("Kaboom23",random(16,-16),random(16,-16),random(6,12),random(-5,5),random(-5,5),random(9,11),random(0,360),128,0)
    TNT1 A 0 A_SpawnItemEx("BlueFire2",random(16,-16),random(16,-16),random(6,12),random(-5,5),random(-5,5),random(7,9),random(0,360),128,0)
    TNT1 A 1
    Stop
  }
}

Actor AracknightGrounder : HeresiarchTrail
{
Bouncecount 4
BounceFactor 1.1
WallBounceFactor 1.1
+HexenBounce
+DONTHARMSPECIES
+DONTHURTSPECIES
Species ""
Damagetype "Baby15K"
}

