ACTOR Satanic_BulletPuff: BulletPuff Replaces BulletPuff
{
	RenderStyle Translucent
	Alpha 0.4
	Scale 1.5
	+NOBLOCKMAP
	-NOGRAVITY
	Gravity 0.01
	+NOEXTREMEDEATH
	+FORCEXYBILLBOARD
	Decal "BulletChip"
	States
	{
	Spawn:
		TNT1 A 0
		//TNT1 A 0 A_spawnitemex("Satanic_Spark",0,0,0,random(-4,4),random(-4,4),random(-2,4),0,169)
		//TNT1 A 0 A_SpawnItemEx("Satanic_Spark",0,0,0,frandom(5,10),frandom(5,10),random(-2,4),0,128)
		//TNT1 A 0 A_SpawnItemEx("Satanic_Spark",0,0,0,frandom(-10,-5),frandom(-10,-5),random(-2,4),0,128)
		//TNT1 A 0 A_SpawnItemEx("Satanic_Spark",0,0,0,frandom(-10,-5),frandom(5,10),random(-2,4),0,128)
		//TNT1 A 0 A_SpawnItemEx("Satanic_Spark",0,0,0,frandom(5,10),frandom(-10,-5),random(-2,4),0,128)
		TNT1 A 0 A_SpawnItemEx("Satanic_Spark",0,0,0,frandom(10,20),frandom(10,20),random(-2,4),0,128)
		TNT1 A 0 A_SpawnItemEx("Satanic_Spark",0,0,0,frandom(-20,-10),frandom(-20,-10),random(-2,4),0,128)
		TNT1 A 0 A_SpawnItemEx("Satanic_Spark",0,0,0,frandom(-20,-10),frandom(10,20),random(-2,4),0,128)
		TNT1 A 0 A_SpawnItemEx("Satanic_Spark",0,0,0,frandom(10,20),frandom(-20,-10),random(-2,4),0,128)
		PUFF A 3 
		PUFF B 3
		Goto Melee
	Melee:
		PUFF CD 3
		Stop
	}
}

ACTOR Satanic_ExtremeBulletPuff : Satanic_BulletPuff
{
	+EXTREMEDEATH
}

ACTOR BludgeonPuff : Satanic_BulletPuff
{
	DamageType "Bludgeon"
	States
	{
	Spawn:
		TNT1 A 0
		TNT1 A 0 A_PlaySound("*fist",CHAN_WEAPON,127)
		TNT1 A 0 A_SpawnItemEx("Satanic_Spark",0,0,0,frandom(10,20),frandom(10,20),random(-2,4),0,128)
		TNT1 A 0 A_SpawnItemEx("Satanic_Spark",0,0,0,frandom(-20,-10),frandom(-20,-10),random(-2,4),0,128)
		TNT1 A 0 A_SpawnItemEx("Satanic_Spark",0,0,0,frandom(-20,-10),frandom(10,20),random(-2,4),0,128)
		TNT1 A 0 A_SpawnItemEx("Satanic_Spark",0,0,0,frandom(10,20),frandom(-20,-10),random(-2,4),0,128)
		PUFF A 3 
		PUFF B 3
		Goto Melee
	Melee:
		PUFF CD 3
		Stop
	}
}

ACTOR StockBludgeonPuff
{
	+PUFFONACTORS
	DamageType "Bludgeon"
	Decal 		BloodSmear
	RenderStyle "Add"
	Alpha		0.8 
	Scale		1.5
	-SOLID
	+THRUGHOST
	+NOGRAVITY
	+EXTREMEDEATH
	+SPECTRAL
	States
	{
	Spawn:
		TNT1 A 0 A_SpawnItem("MEagleAltPuffInterior")
		EPUF E 0 A_PlaySound("Satanic/Weapons/Piece")    
		EPUF E 2 Bright
		EPUF D 2 Bright
		EPUF C 2 Bright
		EPUF B 3 Bright
		EPUF A 6 Bright
		Stop
	}
}

ACTOR Satanic_Spark : BulletPuff
{
	+THRUACTORS
	+NOTELEPORT
	+NOBLOCKMAP
	-ALLOWPARTICLES
	-NOGRAVITY
	+NOBLOCKMAP
	Mass 1
	Gravity .5
	RenderStyle Add
	Alpha 0.75
	Scale 0.15
	States
	{
	Spawn:
		SPRK A 10 BRIGHT
		Stop
	}
}

ACTOR SwordPuff : BulletPuff
{
	+FOILINVUL
	+THRUACTORS
	+NOTELEPORT
	+NOBLOCKMAP
	-ALLOWPARTICLES
	+NOGRAVITY
	+NOBLOCKMAP
	DamageType "LeechSword"
	RenderStyle "Add"
	Height 1
	Radius 1
	Health 1
	Alpha 0.75
	VSpeed 0
	XScale 0.15
	YScale 0.020
	States
	{
	Spawn:
		TNT1 A 0
		TNT1 AAAAAAAAA 0 A_SpawnDebris("SwordSpark")
		BPUF A 5 BRIGHT
	FadeLoop:
		BPUF A 1 BRIGHT A_FadeOut(0.1,1)
		Loop
	}
}

ACTOR SwordSpark : SwordPuff
{
	-NOGRAVITY
	+DONTSPLASH
	BounceType Doom
	Gravity 0.5
	Scale 0.010
	Speed 2
	States
	{
	Spawn:
		BPUF A 1 BRIGHT
	FadeLoop:
		BPUF A 1 BRIGHT A_FadeOut(0.1,1)
		Loop
	}
}