actor BulletSpark Replaces BulletPuff
{
  spawnid 131
  renderstyle Add
  alpha 0.9
  +NOBLOCKMAP
  +NOGRAVITY
  -ALLOWPARTICLES
  +DONTSPLASH
  +FORCEXYBILLBOARD
  Scale 0.17
  states
  {
  Spawn:
	SPRK A 0
	SPRK A 0 A_SpawnItemEx("BulletSmoke", 0, 0, 0, 0, 0, 0, 0, 128, 0)
	SPRK A 0 A_SpawnItemEx("BulletHeat", 0, 0, 0, 0, 0, 0, 0, 128, 64)
	SPRK A 0 A_SpawnItemEx("Ricochet", 0, 0, 0, 0, 0, 0, 0, 128, 168)
	SPRK AAA 0 A_SpawnItemEx("Debris1", 0, 0, 0, Random(-1, 1), Random(-1, 1), Random(0, 2), Random(-360, 360), 128, 164)
	SPRK AAA 0 A_SpawnItemEx("Debris2", 0, 0, 0, Random(-1, 1), Random(-1, 1), Random(0, 2), Random(-360, 360), 128, 164)
	SPRK AAA 0 A_SpawnItemEx("Debris3", 0, 0, 0, Random(-1, 1), Random(-1, 1), Random(0, 2), Random(-360, 360), 128, 164)
	SPRK AAA 0 A_SpawnItemEx("Debris4", 0, 0, 0, Random(-1, 1), Random(-1, 1), Random(0, 2), Random(-360, 360), 128, 164)
	SPRK A 0 A_SpawnItemEx("Debris5", 0, 0, 0, Random(-1, 1), Random(-1, 1), Random(0, 2), Random(-360, 360), 128, 164)
	SPRK A 0 A_Jump(127, "Spawn2", "Spawn3", "Spawn4")
	SPRK ABCDE 1 bright
	stop
  Spawn2:
  	SPR2 ABCDE 1 bright
	stop
  Spawn3:
  	SPR3 ABCDE 1 bright
	stop
  Spawn4:
  	SPR4 ABCDE 1 bright
	stop
  Melee:
	PUFF CD 4
	stop
  }
}

actor BulletSmoke
{
  Projectile
  Radius 1
  Height 1
  Damage 0
  Speed 0
  Scale 0.06
  RenderStyle Add
  Alpha 0.8
  +NOCLIP
  States
  {
   Spawn:
   SMOK A 0
   SMOK A 0 ThrustThingZ(0, 1, 0, 0)
   SMOK ABCDEFGHIJKLMNOPQ 2
   stop
  }
}

actor BulletSmoke2 : BulletSmoke
{
  Alpha 0.2
  States
  {
   Spawn:
   SMOK ABCDEFGHIJKLMNOPQ 3
   stop
  }
}


actor Ricochet
{
 radius 1
 height 1
 +noclip
 +DONTSPLASH
 -ACTIVATEMCROSS
 -ACTIVATEPCROSS
 -ACTIVATEIMPACT
 States
 {
 Spawn:
  TNT1 A 0
  TNT1 A 1 A_PlaySound("GE007/Weapons/Ricochet")
  stop
 }
}

actor BulletHeat
{
  Radius 1
  Height 1
  Speed 0
  Scale 0.025
  RenderStyle Translucent
  Alpha 0.9
  -SOLID
  +NOBLOCKMAP
  +NOCLIP
  +NOGRAVITY
  States
  {
  Spawn:
   TNT1 A 4
   FIR2 ABCDEFGHIJKLMN 2 BRIGHT
   TNT1 AAA 1 A_SpawnItemEx("BulletSmoke2", Random(-1,1), Random(-1,1), 0, 0, 0, 0, 0, 128, 64)
   stop
  }
}