ACTOR Pinky : demon replaces demon
{
	Speed 10
	MeleeThreshold 196
	Obituary "%o was chomped by a pinky."
	SeeSound "pinky/see"
	PainSound "pinky/pain"
	attacksound "pinky/attack"
	ActiveSound "pinky/idle"
	DeathSound "Pinky/die"
	States
	{
	Spawn:
		SARG AB 10 A_Look
		Loop
	See:
		SARG AABBCCDD 2 Fast A_Chase
		Loop
	Melee:
		TNT1 A 0
		TNT1 A 0 a_stopsound (6)
		TNT1 A 0 a_takeinventory ("Pinkydash",99)
		TNT1 A 0 a_changeflag ("ThruSpecies", 0)
		SARG EF 8 Fast A_FaceTarget
		SARG G 8 Fast A_SargAttack
		Goto See
	Missile:
		TNT1 A 0
		TNT1 A 0 a_jumpifcloser (400, "see")
		TNT1 A 0 a_playsound ("pinky/charge")
		SARG AA 3 a_facetarget
		SARG BB 3
		SARG CC 3 a_facetarget
		SARG DD 3 
		SARG D 15 a_facetarget
		TNT1 A 0 a_playsound ("pinky/attack")
		goto dash
	dash:
		TNT1 A 0
		TNT1 A 0 a_changeflag ("ThruSpecies", 1)
		SARG AA 1 Fast A_Chase ("melee",0)
		TNT1 A 0 a_playsound ("misc/DMpunch", 6, 1,0,1.20)
		TNT1 AAA 0 a_spawnitemex ("monstersmokespawner",Frandom(-2,2),Frandom(-2,2),2,Frandom(-30,30)/20.0,Frandom(-30,30)/20.0,Frandom(-40,40)/20.0,0,160)
		TNT1 A 0 a_facetarget
		TNT1 A 0 ThrustThing(angle*256/360, 3, 0, 0)
		TNT1 A 0 a_jumpifcloser (150, "dashend")
		SARG BB 1 Fast A_Chase ("melee",0)
		TNT1 AAA 0 a_spawnitemex ("monstersmokespawner",Frandom(-2,2),Frandom(-2,2),2,Frandom(-30,30)/20.0,Frandom(-30,30)/20.0,Frandom(-40,40)/20.0,0,160)
		TNT1 A 0 a_facetarget
		TNT1 A 0 ThrustThing(angle*256/360, 3, 0, 0)
		TNT1 A 0 a_jumpifcloser (150, "dashend")
		SARG CC 1 Fast A_Chase ("melee",0)
		TNT1 A 0 a_playsound ("misc/DMpunch", 6, 1,0,1.20)
		TNT1 AAA 0 a_spawnitemex ("monstersmokespawner",Frandom(-2,2),Frandom(-2,2),2,Frandom(-30,30)/20.0,Frandom(-30,30)/20.0,Frandom(-40,40)/20.0,0,160)
		TNT1 A 0 a_facetarget
		TNT1 A 0 ThrustThing(angle*256/360, 3, 0, 0)
		TNT1 A 0 a_jumpifcloser (150, "dashend")
		SARG DD 1 Fast A_Chase ("melee",0)
		TNT1 AAA 0 a_spawnitemex ("monstersmokespawner",Frandom(-2,2),Frandom(-2,2),2,Frandom(-30,30)/20.0,Frandom(-30,30)/20.0,Frandom(-40,40)/20.0,0,160)
		TNT1 A 0 a_facetarget
		TNT1 A 0 ThrustThing(angle*256/360, 3, 0, 0)
		TNT1 A 0 a_jumpifcloser (150, "dashend")
		TNT1 A 0 a_giveinventory ("Pinkydash",1)
		TNT1 A 0 a_jumpifinventory ("Pinkydash",9,"dashend")
		loop
	dashend:	
		SARG A 1 a_stopsound (6)
		TNT1 A 0 a_stop
		TNT1 A 0 a_takeinventory ("Pinkydash",99)
		SARG A 1 a_changeflag ("ThruSpecies", 0)
		goto see
	Pain:
		SARG H 2 Fast
		TNT1 A 0 a_stopsound (6)	
		TNT1 A 0 a_takeinventory ("Pinkydash",99)
		TNT1 A 0 a_changeflag ("ThruSpecies", 0)
		SARG H 2 Fast A_Pain
		Goto See
	Death:
		SARG I 8 A_Scream
		TNT1 A 0 a_stopsound (6)
		TNT1 A 0 a_changeflag ("ThruSpecies", 0)
		SARG J 8
		SARG K 4
		SARG L 4 A_NoBlocking
		TNT1 A 0 a_playsound ("pinky/fall",0)
		SARG M 4
		SARG N -1
		Stop
	Death.CALinkedBomb:
	Death.CALinked:
		TNT1 A 0
		TNT1 A 0 a_scream
		TNT1 A 0 a_noblocking
		TNT1 A 0 a_changeflag ("ThruSpecies", 0)
		TNT1 A 0 a_changeflag ("THRUACTORS", 1)
		TNT1 A 0 a_stop
		TNT1 A 0 a_setscale (1.25)
		TNT1 A 0 a_playsound ("Malefactors/LinkedHurt",0,0.80)
		TNT1 A 1 a_spawnitemex ("CALinkedKill",0,0,35)
		TNT1 A 0 a_playsound ("Malefactors/LinkedDeath",0,1,0,0.90)
		TNT1 A 2
		TNT1 A 3 ThrustThingZ (0,30,0,1)
		L1ST E 2
		L1ST E -1
		wait
	Death.CABladeBeam:
		TNT1 A 0
		TNT1 A 0 a_facetarget
		TNT1 A 0 a_scream
		TNT1 A 0 a_noblocking
		TNT1 A 0 a_spawnitemex ("MalefactorPinkyTorso",0,0,36,random(-3,3),random(-3,3),random (1,2),0,SXF_NOCHECKPOSITION)
		TNT1 A 0 a_playsound ("Malefactors/BladeBeamDeath1",0,1,0,0.90)
		8DX5 B random (45,50)
		TNT1 AAA 0 a_spawnitemex("FireDebris",0,0,random(3,8),random(-8,8),random(-7,7),random(6,7),0,SXF_NOCHECKPOSITION)
		TNT1 A 0 a_playsound ("Malefactors/BladeBeamExplosion",0,0.80,0)
		TNT1 A 0 A_SpawnItemEx("MonsterFireExplosion",0,0,30)
		stop
	Raise:
		TNT1 A 0
		TNT1 A 0 a_changeflag ("ThruSpecies", 0)
		TNT1 A 0 a_setscale (1)
		SARG N 5
		SARG MLKJI 5
		Goto See
	}
}

actor Pinkydash : inventory
{inventory.maxamount 9}




actor MalefactorPinkyTorso : MalefactorRiflemanTorso
{
	gravity 0.80
    States
    {
    Spawn:
		TNT1 A 0
		8DX5 A 6
		TNT1 A 0 a_scalevelocity (0.30)
		8DX5 A 6
		TNT1 A 0 a_scalevelocity (0.50)
		8DX5 A 6
		TNT1 A 0 a_stop
		8DX5 A 10
		TNT1 A 0 a_changeflag ("NOGRAVITY",0)
		TNT1 A 0 a_changeflag ("HEXENBOUNCE",0)
	Falling:
		8DX5 A 1
		TNT1 A 0 A_CheckFloor ("Death")
		loop
    }
}
	