ACTOR BulletPuff2 Replaces BulletPuff
{
	Scale 0.1
	+NOGRAVITY
	Alpha 0.95
	States
	{
	Spawn:
	SMOK A 0
	SMOK A 0 A_PlaySound("weapons/bullethit",CHAN_AUTO,0.5)
	SMOK A 1 A_SetScale(scalex+0.05,scaley+0.05)
	SMOK A 0 A_FadeOut(0.2)
	SMOK A 1 A_SetScale(scalex+0.05,scaley+0.05)
	SMOK A 0 A_FadeOut(0.2)
	SMOK A 1 A_SetScale(scalex+0.05,scaley+0.05)
	SMOK A 0 A_FadeOut(0.2)
	SMOK A 1 A_SetScale(scalex+0.05,scaley+0.05)
	SMOK A 0 A_FadeOut(0.2)
	SMOK A 1 A_SetScale(scalex+0.05,scaley+0.05)
	SMOK A 0 A_FadeOut(0.2)
	SMOK A 1 A_SetScale(scalex+0.05,scaley+0.05)
	SMOK A 0 A_FadeOut(0.2)
	SMOK A 1 A_SetScale(scalex+0.05,scaley+0.05)
	SMOK A 0 A_FadeOut(0.2)
	SMOK A 1 A_SetScale(scalex+0.05,scaley+0.05)
	SMOK A 0 A_FadeOut(0.2)
	SMOK A 1 A_SetScale(scalex+0.05,scaley+0.05)
	SMOK A 0 A_FadeOut(0.2)
	SMOK A 1 A_SetScale(scalex+0.05,scaley+0.05)
	SMOK A 0 A_FadeOut(0.2)
	Stop
	}
}

ACTOR MuzzleFlash_PistolHandler
{
  Speed 120
  Damage 0
  Projectile
  +NOCLIP
  States
  {
  Spawn:
    TNT1 A 1 Bright
	Death:
	TNT1 A 0 Bright A_SpawnItemEx ("MuzzleFlash_Pistol")
    Stop
  }
}

ACTOR MuzzleFlash_Pistol
{
	+NOGRAVITY
	RenderStyle Add
	Scale 0.05
	+FORCEXYBILLBOARD
	+CLIENTSIDEONLY
	Alpha 0.9
	States
	{
	Spawn:
	MUZ2 ABCD 0 A_Jump(64,"Spawn2")
	Goto Spawn2
	Spawn2:
	"####" "#" 1 BRIGHT A_SetScale(scalex+0.15,scaley+0.15)
	"####" "#" 0 A_FadeOut(0.1)
	"####" "#" 1 BRIGHT A_SetScale(scalex+0.15,scaley+0.15)
	"####" "#" 0 A_FadeOut(0.2)
	"####" "#" 1 BRIGHT A_SetScale(scalex+0.05,scaley+0.05)
	"####" "#" 0 A_FadeOut(0.3)
	Stop
	}
}

ACTOR MuzzleFlash_RifleHandler
{
  Speed 120
  Damage 0
  Projectile
  +NOCLIP
  States
  {
  Spawn:
    TNT1 A 1 Bright
	Death:
	TNT1 A 0 Bright A_SpawnItemEx ("MuzzleFlash_Rifle")
    Stop
  }
}

ACTOR MuzzleFlash_Rifle
{
	+NOGRAVITY
	RenderStyle Add
	Scale 0.05
	+FORCEXYBILLBOARD
	+CLIENTSIDEONLY
	Alpha 0.9
	States
	{
	Spawn:
	MUZ1 ABCD 0 A_Jump(64,"Spawn2")
	Goto Spawn2
	Spawn2:
	"####" "#" 1 BRIGHT A_SetScale(scalex+0.15,scaley+0.15)
	"####" "#" 0 A_FadeOut(0.1)
	"####" "#" 1 BRIGHT A_SetScale(scalex+0.15,scaley+0.15)
	"####" "#" 0 A_FadeOut(0.2)
	"####" "#" 1 BRIGHT A_SetScale(scalex+0.05,scaley+0.05)
	"####" "#" 0 A_FadeOut(0.3)
	Stop
	}
}

ACTOR MuzzleFlash_ShotgunHandler
{
  Speed 120
  Damage 0
  Projectile
  +NOCLIP
  States
  {
  Spawn:
    TNT1 A 1 Bright
	Death:
	TNT1 A 0 Bright A_SpawnItemEx ("MuzzleFlash_Shotgun")
    Stop
  }
}

ACTOR MuzzleFlash_Shotgun
{
	+NOGRAVITY
	RenderStyle Add
	Scale 0.05
	+FORCEXYBILLBOARD
	+CLIENTSIDEONLY
	Alpha 0.9
	States
	{
	Spawn:
	MUZ1 GHIJ 0 A_Jump(64,"Spawn2")
	Goto Spawn2
	Spawn2:
	"####" "#" 1 BRIGHT A_SetScale(scalex+0.15,scaley+0.15)
	"####" "#" 0 A_FadeOut(0.1)
	"####" "#" 1 BRIGHT A_SetScale(scalex+0.15,scaley+0.15)
	"####" "#" 0 A_FadeOut(0.2)
	"####" "#" 1 BRIGHT A_SetScale(scalex+0.05,scaley+0.05)
	"####" "#" 0 A_FadeOut(0.3)
	Stop
	}
}

ACTOR SmokeFlash_RifleHandler
{
  Speed 120
  Damage 0
  Projectile
  +NOCLIP
  States
  {
  Spawn:
    TNT1 A 1 Bright
	Death:
	TNT1 A 0 Bright A_SpawnItemEx ("SmokeFlash_Rifle",0,0,0,3)
	TNT1 A 0 Bright A_SpawnItemEx ("SmokeFlash_Rifle",0,0,0,5)
    Stop
  }
}

ACTOR SmokeFlash_Rifle
{
	+NOGRAVITY
	Scale 0.05
	+FORCEXYBILLBOARD
	+CLIENTSIDEONLY
	Alpha 0.9
	States
	{
	Spawn:
	SMOK A 0
	Goto Spawn2
	Spawn2:
	"####" "#" 1 A_SetScale(scalex+0.05,scaley+0.05)
	"####" "#" 0 A_FadeOut(0.05)
	"####" "#" 1 A_SetScale(scalex+0.05,scaley+0.05)
	"####" "#" 0 A_FadeOut(0.05)
	"####" "#" 1 A_SetScale(scalex+0.05,scaley+0.05)
	"####" "#" 0 A_FadeOut(0.05)
	"####" "#" 1 A_SetScale(scalex+0.05,scaley+0.05)
	"####" "#" 0 A_FadeOut(0.05)
	"####" "#" 1 A_SetScale(scalex+0.05,scaley+0.05)
	"####" "#" 0 A_FadeOut(0.05)
	"####" "#" 1 A_SetScale(scalex+0.05,scaley+0.05)
	"####" "#" 0 A_FadeOut(0.05)
	"####" "#" 1 A_SetScale(scalex+0.05,scaley+0.05)
	"####" "#" 0 A_FadeOut(0.05)
	"####" "#" 1 A_SetScale(scalex+0.05,scaley+0.05)
	"####" "#" 0 A_FadeOut(0.05)
	"####" "#" 1 A_SetScale(scalex+0.05,scaley+0.05)
	"####" "#" 0 A_FadeOut(0.05)
	"####" "#" 1 A_SetScale(scalex+0.05,scaley+0.05)
	"####" "#" 0 A_FadeOut(0.05)
	"####" "#" 1 A_SetScale(scalex+0.05,scaley+0.05)
	"####" "#" 0 A_FadeOut(0.05)
	"####" "#" 1 A_SetScale(scalex+0.05,scaley+0.05)
	"####" "#" 0 A_FadeOut(0.05)
	"####" "#" 1 A_SetScale(scalex+0.05,scaley+0.05)
	"####" "#" 0 A_FadeOut(0.05)
	"####" "#" 1 A_SetScale(scalex+0.05,scaley+0.05)
	"####" "#" 0 A_FadeOut(0.05)
	"####" "#" 1 A_SetScale(scalex+0.05,scaley+0.05)
	"####" "#" 0 A_FadeOut(0.05)
	"####" "#" 1 A_SetScale(scalex+0.05,scaley+0.05)
	"####" "#" 0 A_FadeOut(0.05)
	"####" "#" 1 A_SetScale(scalex+0.05,scaley+0.05)
	"####" "#" 0 A_FadeOut(0.05)
	"####" "#" 1 A_SetScale(scalex+0.05,scaley+0.05)
	"####" "#" 0 A_FadeOut(0.05)
	"####" "#" 1 A_SetScale(scalex+0.05,scaley+0.05)
	"####" "#" 0 A_FadeOut(0.05)
	Stop
	}
}