// ------------------------------------------------------------
//   Arachnotron
// ------------------------------------------------------------

ACTOR Krangling : Arachnotron replaces Arachnotron
{
	obituary "%o was fried by the Wrath of Krang."
	Speed 14
	DeathHeight 18
	DropItem Cell 96 20
	DropItem Cell 64 16
	+DONTHURTSPECIES
	+MISSILEMORE
	+NOBLOOD
	+FASTER
	damagefactor "SmallArms0", 0.8
	damagefactor "SmallArms1", 0.8
	damagefactor "SmallArms2", 0.9
	States
	{
	Missile:
		BSPI AG 10 A_FaceTarget

		BSPI H 1 bright A_CustomMissile ("KranglingAimpoint", 32, 0, random(-1.0,1.0))
		BSPI G 2
		BSPI H 1 bright
		BSPI G 2
		BSPI H 1 bright
		BSPI G 2
		BSPI H 1 bright
		BSPI G 2
		BSPI H 1 bright
		BSPI G 6
		BSPI G 0 A_Jump (56, "See")
		BSPI G 0 A_SpidRefire
		Goto Missile+2
	Death:
		TNT1 AAAAAAAA 0 A_SpawnItemEx ("HugeWallChunk",random(-4,4),random(-4,4),random(28,34), random(-6,6),random(-6,6),random(-2,16), 0,160,0)
//		TNT1 A 0 A_CheckSight ("Death2")
		TNT1 AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA 0 A_SpawnItemEx ("BigWallChunk",random(-3,3),random(-3,3),random(28,34), random(-2,2),random(-2,2),random(2,14), 0,160,0)
	Death2:
		TNT1 A 0 A_SpawnItemEx ("tempshield", 0,0,0, velx,vely,velz, 0,40)
		BSPI J 4 A_Scream
		BSPI J 6 A_SpawnItemEx ("MegaBloodSplatter",random(-10,10),random(-10,10),32, 0,0,0, 0,160,0)
		BSPI J 10 A_SpawnItemEx ("MegaBloodSplatter",random(-4,4),random(-4,4),32, 0,0,0, 0,160,0)
		TNT1 A 0 A_NoBlocking
		TNT1 A 0 A_SpawnItemEx ("tempshield2", 0,0,0, velx,vely,velz, 0,40)
		BSPI KLMN 7 A_SpawnItemEx ("MegaBloodSplatter",0,0,28, 0,0,0, 0,160,0)
		TNT1 A 0 A_SpawnItemEx ("MegaBloodSplatter",0,0,14, 0,0,0, 0,160,0)
		BSPI O 7
		TNT1 A 0 A_GivetoTarget("HDKillCount",1)
		TNT1 A 0 ACS_ExecuteAlways(558,0,0,1,20)
		BSPI P -1 A_BossDeath
		stop
	}
}

actor KranglingAimpoint
{
	projectile
	speed 10
	+noclip
	height 0
	radius 0
	states
	{
	spawn:
		TNT1 A 0
		TNT1 A 0 A_GiveInventory ("Timer", 5)
	attack:
		TNT1 A 0 A_JumpIfInventory ("Timer", 1, 1)
		stop
		TNT1 A 0 A_PlayWeaponSound ("weapons/plasmaf")
		TNT1 A 0 A_TakeInventory ("Timer", 1)
		TNT1 A 1 A_SpawnItemEx ("PlasmaBalleWeak", 0,0,0, (velx*12),(vely*12),(velz*12),0,40)
		TNT1 A 2 A_SpawnItemEx ("DistantPlasma", 0,0,0, 0,0,0, 0,32)
		loop
	}
}


