
ACTOR NoFlash
{
 // SeeSound "mysounds/myflashsound"
 RenderStyle None
 States
 {
 Spawn:
  TNT1 A 1
  Stop
 }
}


actor HHBulletPuff2 : HHBulletPuff 
{
  spawnid 131
  renderstyle Translucent
  alpha 0.5
  +NOBLOCKMAP
  +NOGRAVITY
  -ALLOWPARTICLES
  damagetype "Bullet"
  +NOEXTREMEDEATH
  +PUFFONACTORS
  +PUFFGETSOWNER
  states
  {
  Spawn:
    TNT1 A 1
    TNT1 A 0 //A_GiveToTarget("HitIndicator",1)
    PUFF A 0 A_SpawnItemEx("ImpactSmokePuff", 0, 0, 0, 0, 0, 0, 0, 128, 0)
    //TNT1 A 4 A_SpawnItemEx("Ricochet", 0, 0, 0, 0, 0, 0, 0, 128, 0)
    TNT1 A 4 
    stop
  Crash:
    PUFF A 0 
    PUFF A 0 A_SpawnItemEx("ImpactSmokePuff", 0, 0, 0, 0, 0, 0, 0, 128, 0)
    //TNT1 A 4 A_SpawnItemEx("Ricochet", 0, 0, 0, 0, 0, 0, 0, 128, 0)
    TNT1 A 4 
    stop
  XDeath:
    TNT1 A 2 
	Stop

  }
}






actor Ricochet
{
 radius 1
 height 1
 +noclip
 States
 {
 Spawn:
  TNT1 A 0
  TNT1 A 1 A_PlaySound("generic/ricochet")
  stop
 }
}



actor ImpactSmokePuff
{
  RenderStyle Add
  alpha 0.55
  -RANDOMIZE
  +NOCLIP
  PROJECTILE
  Speed 2
  Damage 0
  Scale 0.5
  +CLIENTSIDEONLY
  states
  {
  Spawn:
    TNT1 A 1
//    TNT1 AAAAA 0 A_SpawnItemEx("ImpactSpark", 0, 0, 0, random(0,4), random(-2,2), random(-1,1), 0, 128, 64)
"----" AAA 0 A_SpawnItemEx(ImpactSparkNew,0,-2,0,FRandom(1,4),0,FRandom(2,7),Random(1,360),1)
    TNT1 A 0 A_Jump(156,"Spawn2","Spawn3","Spawn4")
    SMK1 ABCDEFGHIJKLMNOP 2 bright A_FadeOut(0.05)
    stop
  Spawn2:
    SMK2 ABCDEFGHIJKLMNOP 2 bright A_FadeOut(0.05)
    stop
  Spawn3:
    SMK3 ABCDEFGHIJKLMNOP 2 bright A_FadeOut(0.05)
    stop
  Spawn4:
    SMK4 ABCDEFGHIJKLMNOP 2 bright A_FadeOut(0.05)
    stop
  }
}

actor ImpactSpark
{
  RenderStyle Add
  alpha 0.95
  -RANDOMIZE
  +NOCLIP
  PROJECTILE
  Speed 2
  Damage 0
  Scale 0.05
  +CLIENTSIDEONLY
  +NOINTERACTION
  -NOGRAVITY
  Gravity 1.2
  states
  {
  Spawn:
    SPRK A 0
    SPRK A 1 bright A_FadeOut(0.075)
    loop
  }
}

actor ImpactSparkNew
{
  RenderStyle Add
  alpha 0.95
  -RANDOMIZE
  +NOCLIP
  PROJECTILE
  Speed 2
  Damage 0
  Scale 0.07
  +CLIENTSIDEONLY
  -NOINTERACTION
  -NOGRAVITY
	+DOOMBOUNCE

	+DONTSPLASH
	+THRUACTORS
	+NOTRIGGER
	+NOBLOCKMONST
	+CANNOTPUSH

//  Gravity 1.2
	Gravity 0.75//56
  states
  {
  Spawn:
    SPRK A 0
    SPRK A 2 bright A_FadeOut(0.075)
    loop
  }
}


actor ImpactSpark2
{
  RenderStyle Add
  alpha 0.95
  -RANDOMIZE
  +NOCLIP
  PROJECTILE
  Speed 2
  Damage 0
  Scale 0.08
  +CLIENTSIDEONLY
  +NOINTERACTION
  -NOGRAVITY
  Gravity 1.2
  states
  {
  Spawn:
    SPRK A 0
    SPRK A 1 bright A_FadeOut(0.05)
    loop
  }
}

actor ImpactSparkPost3
{
  RenderStyle Add
  alpha 0.95
  -RANDOMIZE
  +NOCLIP
  PROJECTILE
  Speed 2
  Damage 0
  Scale 0.1
  +CLIENTSIDEONLY
  +NOINTERACTION
  -NOGRAVITY
  Gravity 1.2
  states
  {
  Spawn:
    SPRK A 0
    SPRK A 1 bright A_FadeOut(0.05)
    loop
  }
}

actor ImpactSparkMach
{
  RenderStyle Add
  alpha 0.95
  -RANDOMIZE
  +NOCLIP
  PROJECTILE
  Speed 2
  Damage 0
  Scale 0.01
  +CLIENTSIDEONLY
  +NOINTERACTION
  -NOGRAVITY
  Gravity 1.2
  states
  {
  Spawn:
    MUZ2 A 0
    MUZ2 A 1 bright A_FadeOut(0.075)
    loop
  }
}

actor ImpactSparkShot
{
  RenderStyle Add
  alpha 0.95
  -RANDOMIZE
  +NOCLIP
  PROJECTILE
  Speed 2
  Damage 0
  Scale 0.015
  +CLIENTSIDEONLY
  +NOINTERACTION
  -NOGRAVITY
  Gravity 1.2
  states
  {
  Spawn:
    SPRK A 0
    MUZ3 A 1 bright A_FadeOut(0.05)
    loop
  }
}

actor ImpactSparkGren
{
  RenderStyle Add
  alpha 0.95
  -RANDOMIZE
  +NOCLIP
  PROJECTILE
  Speed 2
  Damage 0
  Scale 0.02
  +CLIENTSIDEONLY
  +NOINTERACTION
  -NOGRAVITY
  Gravity 1.2
  states
  {
  Spawn:
    SPRK A 0
    MUZ5 A 1 bright A_FadeOut(0.05)
    loop
  }
}

actor ImpactSparkNail
{
  RenderStyle Add
  alpha 0.95
  -RANDOMIZE
  +NOCLIP
  PROJECTILE
  Speed 2
  Damage 0
  Scale 0.015
  +CLIENTSIDEONLY
  +NOINTERACTION
  -NOGRAVITY
  Gravity 1.2
  states
  {
  Spawn:
    SPRK A 0
    MUZ6 A 1 bright A_FadeOut(0.075)
    loop
  }
}


actor WeaponSMGSILENCEDSmokePuff
{
  RenderStyle None
  -RANDOMIZE
  +NOCLIP
  PROJECTILE
  Speed 28
  Damage 0
  states
  {
  Spawn:
    TNT1 A 1
    TNT1 A 0 
    TNT1 A 0 A_SpawnItemEx("WeaponSmokePuff_Spawned", 1, 0, 0, 0, 0, 0, 0, 128, 0)
    TNT1 A 0 //A_SpawnItemEx("MuzzleFlash", 0, 0, 0, 0, 0, 0, 0, 128, 0)
    stop
  }
}



actor WeaponSmokePuff
{
  RenderStyle None
  -RANDOMIZE
  +NOCLIP
  PROJECTILE
  Speed 28
  Damage 0
  states
  {
  Spawn:
    TNT1 A 1
    TNT1 A 0 A_AlertMonsters
    TNT1 A 0 A_SpawnItemEx("WeaponSmokePuff_Spawned", 1, 0, 0, 0, 0, 0, 0, 128, 0)
    TNT1 A 0 A_SpawnItemEx("MuzzleFlash", 0, 0, 0, 0, 0, 0, 0, 128, 0)
    stop
  }
}

actor WeaponMachinegunSmokePuff
{
  RenderStyle None
  -RANDOMIZE
  +NOCLIP
  PROJECTILE
  Speed 28
  Damage 0
  states
  {
  Spawn:
    TNT1 A 1
    TNT1 A 0 A_AlertMonsters
    TNT1 A 0 A_SpawnItemEx("WeaponMachinegunSmokePuff_Spawned", 1, 0, 0, 0, 0, 0, 0, 128, 0)
    TNT1 A 0 A_SpawnItemEx("MuzzleFlash", 0, 0, 0, 0, 0, 0, 0, 128, 0)
    stop
  }
}



actor WeaponMachinegunNoFlashSmokePuff
{
  RenderStyle None
  -RANDOMIZE
  +NOCLIP
  PROJECTILE
  Speed 28
  Damage 0
  states
  {
  Spawn:
    TNT1 A 1
    TNT1 A 0 A_AlertMonsters
    TNT1 A 0 A_SpawnItemEx("WeaponMachinegunSmokePuff_Spawned", 1, 0, 0, 0, 0, 0, 0, 128, 0)
    stop
  }
}




actor WeaponShotgunSmokePuff
{
  RenderStyle None
  -RANDOMIZE
  +NOCLIP
  PROJECTILE
  Speed 28
  Damage 0
  states
  {
  Spawn:
    TNT1 A 1
    TNT1 A 0 A_AlertMonsters
    TNT1 A 0 A_SpawnItemEx("WeaponShotgunSmokePuff_Spawned", 1, 0, 0, 0, 0, 0, 0, 128, 0)
    TNT1 A 0 A_SpawnItemEx("MuzzleFlashPost3", 0, 0, 0, 0, 0, 0, 0, 128, 0)
    stop
  }
}

actor WeaponGrenadelSmokePuff
{
  RenderStyle None
  -RANDOMIZE
  +NOCLIP
  PROJECTILE
  Speed 28
  Damage 0
  states
  {
  Spawn:
    TNT1 A 1
    TNT1 A 0 A_AlertMonsters
    TNT1 A 0 A_SpawnItemEx("WeaponGrenadelSmokePuff_Spawned", 1, 0, 0, 0, 0, 0, 0, 128, 0)
    TNT1 A 0 A_SpawnItemEx("MuzzleFlashPost3", 0, 0, 0, 0, 0, 0, 0, 128, 0)
    stop
  }
}

actor WeaponNailgunSmokePuff
{
  RenderStyle None
  -RANDOMIZE
  +NOCLIP
  PROJECTILE
  Speed 28
  Damage 0
  states
  {
  Spawn:
    TNT1 A 1
    TNT1 A 0 A_AlertMonsters
    TNT1 A 0 A_SpawnItemEx("WeaponNailgunSmokePuff_Spawned", 1, 0, 0, 0, 0, 0, 0, 128, 0)
    TNT1 A 0 A_SpawnItemEx("MuzzleFlash", 0, 0, 0, 0, 0, 0, 0, 128, 0)
    stop
  }
}


actor WeaponSmokePuffLong
{
  RenderStyle None
  -RANDOMIZE
  +NOCLIP
  PROJECTILE
  Speed 28
  Damage 0
  states
  {
  Spawn:
    TNT1 A 1
    TNT1 A 0 A_AlertMonsters
    TNT1 A 0 A_SpawnItemEx("WeaponSmokePuffLong_Spawned", 0, 0, 0, 0, 0, 0, 0, 128, 0)
    stop
  }
}

actor WeaponSmokePuffShotgun
{
  RenderStyle None
  -RANDOMIZE
  +NOCLIP
  PROJECTILE
  Speed 28
  Damage 0
  states
  {
  Spawn:
    TNT1 A 1
    TNT1 A 0 A_AlertMonsters
    TNT1 A 0 A_SpawnItemEx("WeaponSmokePuffShotgun_Spawned", 0, 0, 0, 0, 0, 0, 0, 128, 0)
    stop
  }
}

actor WeaponSmokePuff_Spawned
{
  RenderStyle Add
  alpha 0.275
  -RANDOMIZE
  +NOCLIP
  PROJECTILE
  Speed 0
  Damage 0
  Scale 1.4325
  +CLIENTSIDEONLY
  states
  {
  Spawn:
    TNT1 A 1
    TNT1 AAA 0 A_SpawnItemEx("ImpactSpark", 0, 0, 0, random(3,3), random(-3,3), random(-3,3), 0, 128, 128)
    TNT1 A 0 A_Jump(156,"Spawn2","Spawn3","Spawn4")
    SMK1 ABCDEFGHIJKLMNOP 2 bright A_FadeOut(0.05)
    stop
  Spawn2:
    SMK2 ABCDEFGHIJKLMNOP 2 bright A_FadeOut(0.05)
    stop
  Spawn3:
    SMK3 ABCDEFGHIJKLMNOP 2 bright A_FadeOut(0.05)
    stop
  Spawn4:
    SMK4 ABCDEFGHIJKLMNOP 2 bright A_FadeOut(0.05)
    stop
  }
}

actor WeaponSmokePuffLong_Spawned
{
  RenderStyle Add
  alpha 0.175
  -RANDOMIZE
  +NOCLIP
  PROJECTILE
  Speed 0
  Damage 0
  Scale 1.125
  +CLIENTSIDEONLY
  states
  {
  Spawn:
    TNT1 A 1
    TNT1 A 0 A_Jump(156,"Spawn2","Spawn3","Spawn4")
    SMK1 ACEFGHIJKLMNOP 4 bright A_FadeOut(0.05)
    stop
  Spawn2:
    TNT1 A 0 A_Stop
    SMK2 ACEFGHIJKLMNOP 4 bright A_FadeOut(0.05)
    stop
  Spawn3:
    TNT1 A 0 A_Stop
    SMK3 ACEFGHIJKLMNOP 4 bright A_FadeOut(0.05)
    stop
  Spawn4:
    TNT1 A 0 A_Stop
    SMK4 ACEFGHIJKLMNOP 4 bright A_FadeOut(0.05)
    stop
  }
}

actor WeaponSmokePuffShotgun_Spawned
{
  RenderStyle Add
  alpha 0.475
  -RANDOMIZE
  +NOCLIP
  PROJECTILE
  Speed 0
  Damage 0
  Scale 1.95
  +CLIENTSIDEONLY
  states
  {
  Spawn:
    TNT1 A 1
    TNT1 AAA 0 A_SpawnItemEx("ImpactSpark", 0, 0, 0, random(3,3), random(-3,3), random(-3,3), 0, 128, 0)
    TNT1 A 0 A_Jump(156,"Spawn2","Spawn3","Spawn4")
    SMK1 ABCDEFGHIJKLMNOP 4 bright A_FadeOut(0.05)
    stop
  Spawn2:
    TNT1 A 0 A_Stop
    SMK2 ABCDEFGHIJKLMNOP 4 bright A_FadeOut(0.05)
    stop
  Spawn3:
    TNT1 A 0 A_Stop
    SMK3 ABCDEFGHIJKLMNOP 4 bright A_FadeOut(0.05)
    stop
  Spawn4:
    TNT1 A 0 A_Stop
    SMK4 ABCDEFGHIJKLMNOP 4 bright A_FadeOut(0.05)
    stop
  }
}

actor FlightSmokePuff
{
  RenderStyle Add
  alpha 0.95
  -RANDOMIZE
  +NOCLIP
  PROJECTILE
  Speed 2
  Damage 0
  Scale 1.5
  +CLIENTSIDEONLY
  states
  {
  Spawn:
    TNT1 A 1
    TNT1 A 0 A_Jump(156,"Spawn2","Spawn3","Spawn4")
    SMK1 ABCDEFGHIJKLMNOP 2 bright A_FadeOut(0.05)
    stop
  Spawn2:
    SMK2 ABCDEFGHIJKLMNOP 2 bright A_FadeOut(0.05)
    stop
  Spawn3:
    SMK3 ABCDEFGHIJKLMNOP 2 bright A_FadeOut(0.05)
    stop
  Spawn4:
    SMK4 ABCDEFGHIJKLMNOP 2 bright A_FadeOut(0.05)
    stop
  }
}


actor WeaponSmokePuff_BigMuzzle
{
  RenderStyle None
  -RANDOMIZE
  +NOCLIP
  PROJECTILE
  Speed 28
  Damage 0
  states
  {
  Spawn:
    TNT1 A 1
    TNT1 A 0 A_AlertMonsters
    TNT1 A 0 A_SpawnItemEx("WeaponSmokePuff_Spawned", 1, 0, 0, 0, 0, 0, 0, 128, 0)
    TNT1 A 0 A_SpawnItemEx("MuzzleFlash2", 0, 0, 0, 0, 0, 0, 0, 128, 0)
    stop
  }
}

actor WeaponMachinegunSmokePuff_Spawned
{
  RenderStyle Add
  alpha 0.275
  -RANDOMIZE
  +NOCLIP
  PROJECTILE
  Speed 0
  Damage 0
  Scale 1.4325
  +CLIENTSIDEONLY
  states
  {
  Spawn:
    TNT1 A 1
    TNT1 AAAAAAAAA 0 A_SpawnItemEx("ImpactSparkMach", 0, 0, 0, random(3,3), random(-3,3), random(-3,3), 0, 128, 128)
    TNT1 A 0 A_Jump(156,"Spawn2","Spawn3","Spawn4")
    SMK1 ABCDEFGHIJKLMNOP 2 bright A_FadeOut(0.05)
    stop
  Spawn2:
    SMK2 ABCDEFGHIJKLMNOP 2 bright A_FadeOut(0.05)
    stop
  Spawn3:
    SMK3 ABCDEFGHIJKLMNOP 2 bright A_FadeOut(0.05)
    stop
  Spawn4:
    SMK4 ABCDEFGHIJKLMNOP 2 bright A_FadeOut(0.05)
    stop
  }
}

actor WeaponShotgunSmokePuff_Spawned
{
  RenderStyle Add
  alpha 0.475
  -RANDOMIZE
  +NOCLIP
  PROJECTILE
  Speed 0
  Damage 0
  Scale 1.95
  +CLIENTSIDEONLY
  states
  {
  Spawn:
    TNT1 A 1
    TNT1 AAAAAAAAA 0 A_SpawnItemEx("ImpactSparkShot", 0, 0, 0, random(3,3), random(-3,3), random(-3,3), 0, 128, 128)
    TNT1 A 0 A_Jump(156,"Spawn2","Spawn3","Spawn4")
    SMK1 ABCDEFGHIJKLMNOP 2 bright A_FadeOut(0.05)
    stop
  Spawn2:
    SMK2 ABCDEFGHIJKLMNOP 2 bright A_FadeOut(0.05)
    stop
  Spawn3:
    SMK3 ABCDEFGHIJKLMNOP 2 bright A_FadeOut(0.05)
    stop
  Spawn4:
    SMK4 ABCDEFGHIJKLMNOP 2 bright A_FadeOut(0.05)
    stop
  }
}

actor WeaponGrenadelSmokePuff_Spawned
{
  RenderStyle Add
  alpha 0.375
  -RANDOMIZE
  +NOCLIP
  PROJECTILE
  Speed 0
  Damage 0
  Scale 2.125
  +CLIENTSIDEONLY
  states
  {
  Spawn:
    TNT1 A 1
    TNT1 AAAAAAAAA 0 A_SpawnItemEx("ImpactSparkGren", 0, 0, 0, random(3,3), random(-3,3), random(-3,3), 0, 128, 128)
    TNT1 A 0 A_Jump(156,"Spawn2","Spawn3","Spawn4")
    SMK1 ABCDEFGHIJKLMNOP 2 bright A_FadeOut(0.05)
    stop
  Spawn2:
    SMK2 ABCDEFGHIJKLMNOP 2 bright A_FadeOut(0.05)
    stop
  Spawn3:
    SMK3 ABCDEFGHIJKLMNOP 2 bright A_FadeOut(0.05)
    stop
  Spawn4:
    SMK4 ABCDEFGHIJKLMNOP 2 bright A_FadeOut(0.05)
    stop
  }
}

actor WeaponNailgunSmokePuff_Spawned
{
  RenderStyle Add
  alpha 0.275
  -RANDOMIZE
  +NOCLIP
  PROJECTILE
  Speed 0
  Damage 0
  Scale 1.4325
  +CLIENTSIDEONLY
  states
  {
  Spawn:
    TNT1 A 1
    TNT1 AAAAAAAAA 0 A_SpawnItemEx("ImpactSparkNail", 0, 0, 0, random(3,3), random(-3,3), random(-3,3), 0, 128, 128)
    TNT1 A 0 A_Jump(156,"Spawn2","Spawn3","Spawn4")
    SMK1 ABCDEFGHIJKLMNOP 2 bright A_FadeOut(0.05)
    stop
  Spawn2:
    SMK2 ABCDEFGHIJKLMNOP 2 bright A_FadeOut(0.05)
    stop
  Spawn3:
    SMK3 ABCDEFGHIJKLMNOP 2 bright A_FadeOut(0.05)
    stop
  Spawn4:
    SMK4 ABCDEFGHIJKLMNOP 2 bright A_FadeOut(0.05)
    stop
  }
}




//That's DBThanatos Muzzleflash
//Majorcooke Modified the Sprites
actor MuzzleFlash
{
  RenderStyle Add
  //alpha 0.5
  -RANDOMIZE
  +NOCLIP
  PROJECTILE
  Speed 2
  Damage 0
  Scale 0.25 //15
  +CLIENTSIDEONLY
  +NOINTERACTION
  states
  {
  Spawn:
    MUZZ A 0 
    MUZZ M 0 bright A_Jump(256,"Spawn1","Spawn2","Spawn3","Spawn4","Spawn5","Spawn6")
  Spawn1:
    MUZZ A 2 bright //A_Warp(AAPTR_TRACER, user_offsetx, user_offsety, user_offsetz - user_gravity, 0, WARPF_ABSOLUTEOFFSET | WARPF_NOCHECKPOSITION | WARPF_INTERPOLATE)
    stop
  Spawn2:
    MUZZ B 2 bright //A_Warp(AAPTR_TRACER, user_offsetx, user_offsety, user_offsetz - user_gravity, 0, WARPF_ABSOLUTEOFFSET | WARPF_NOCHECKPOSITION | WARPF_INTERPOLATE)
    stop
  Spawn3:
    MUZZ C 2 bright //A_Warp(AAPTR_TRACER, user_offsetx, user_offsety, user_offsetz - user_gravity, 0, WARPF_ABSOLUTEOFFSET | WARPF_NOCHECKPOSITION | WARPF_INTERPOLATE)
    stop
  Spawn4:
    MUZZ D 2 bright //A_Warp(AAPTR_TRACER, user_offsetx, user_offsety, user_offsetz - user_gravity, 0, WARPF_ABSOLUTEOFFSET | WARPF_NOCHECKPOSITION | WARPF_INTERPOLATE)
    stop
  Spawn5:
    MUZZ E 2 bright //A_Warp(AAPTR_TRACER, user_offsetx, user_offsety, user_offsetz - user_gravity, 0, WARPF_ABSOLUTEOFFSET | WARPF_NOCHECKPOSITION | WARPF_INTERPOLATE)
    stop
  Spawn6:
    MUZZ F 2 bright //A_Warp(AAPTR_TRACER, user_offsetx, user_offsety, user_offsetz - user_gravity, 0, WARPF_ABSOLUTEOFFSET | WARPF_NOCHECKPOSITION | WARPF_INTERPOLATE)
    stop
  }
}

actor MuzzleFlash2 : MuzzleFlash
{
  Scale 0.35  //25
}

actor MuzzleFlashPost3 : MuzzleFlash
{
  Scale 0.375 //275
}



/*

That's my Original Muzzleflash
actor MuzzleFlash
{
  RenderStyle Add
  alpha 0.5
  -RANDOMIZE
  +NOCLIP
  PROJECTILE
  Speed 2
  Damage 0
  Scale 0.15
  +CLIENTSIDEONLY
  +NOINTERACTION
  states
  {
  Spawn:
    MUZZ A 0 
    MUZZ A 2 bright A_Jump(128,"Spawn2","Spawn3","Spawn4","Spawn5","Spawn6")
    stop
  Spawn2:
    MUZZ B 2 bright 
    stop
  Spawn3:
    MUZZ C 2 bright 
    stop
  Spawn4:
    MUZZ D 2 bright 
    stop
  Spawn5:
    MUZZ E 2 bright 
    stop
  Spawn6:
    MUZZ F 2 bright 
    stop
  }
}

actor MuzzleFlash2 : MuzzleFlash
{
  Scale 0.25
}

actor MuzzleFlashPost3 : MuzzleFlash
{
  Scale 0.275
}
*/
