//$GZDB_SKIP


//------------------------------------------------------------------------
//------------------------------------------------------------------------
//	For deathmatch
//------------------------------------------------------------------------
//------------------------------------------------------------------------
ACTOR DamageDealtSoundItemHack : CustomInventory
{
	+INVENTORY.ALWAYSPICKUP 
	RenderStyle None
	States
	{
	Spawn:
		TNT1 A 3
		Loop
	Pickup:	//Default, no sound
		TNT1 A 0 
    TNT1 A 0 A_JumpIf(CallACS("hitsound")==3, "Pickup3")//A_GiveToTarget("HitIndicator",1)
    TNT1 A 0 A_JumpIf(CallACS("hitsound")==2, "Pickup2")//A_GiveToTarget("HitIndicator",1)
    TNT1 A 0 A_JumpIf(CallACS("hitsound")==1, "Pickup1")//A_GiveToTarget("HitIndicator",1)
//      		TNT1 A 0 A_JumpIfInventory("DeathMatchToken",1, "PickupDM")
		TNT1 A 0 
		Stop
	//      		TNT1 A 0 A_JumpIfInventory("DeathMatchToken",1, "PickupDM")
	
	Pickup1://Singleplayer sound style
		TNT1 A 0 A_PlaySound("Hit/Flesh",CHAN_7|CHAN_UI,1,0,255)
		Stop
		
	Pickup2://Multiplayer sound style
		TNT1 A 0 A_PlaySound("Hit/MP",CHAN_7|CHAN_UI,1,0,255)
//		TNT1 A 0 a_print("Debug additional hitsound state")//A_PlaySound("Misc/HitSound",CHAN_7|CHAN_UI,1,0,255)
		Stop

	Pickup3://Auto toggle sound
	    TNT1 A 0 A_JumpIfInventory("DeathMatchToken",1, "Pickup2")
		Goto Pickup1

	}
}








//Generic Dooskpuff code to be shared with other puffs.
//Most likely unused directly.
actor DooskPuff : BulletPuff
{
  SeeSound "Weapon/Hit" //  SeeSound "Sickles/Flesh" 
  AttackSound "Sickles/Wall"
  ActiveSound "Sil/Encio"
	+CLIENTSIDEONLY
	+NOINTERACTION
	+NOGRAVITY
	+NOEXTREMEDEATH
	+PUFFGETSOWNER
	+PUFFONACTORS
	RenderStyle Add
	Scale 0.4125
VSpeed 0
	States
	{
	Spawn:
		TNT1 AA 0
		Goto Choose


		XDeath:
	TNT1 A 1 A_GiveToTarget("DamageDealtSoundItemHack",1)
	Stop
		Melee:
		TNT1 AA 0
		Goto Choose

	Choose:	
		TNT1 A 0 A_Jump(255,"Puff01","Puff02","Puff03","Puff04")
		Puff01:
PF01 ABC 1 BRIGHT light ("WhiteSmallPoint3")
PF01 DEF 1 BRIGHT //light ("BPUFF2")
		PF01 GHIJKLMNOPQRSTUVWXYZ 1 bright
		PF11 ABCDEFGHIJKLMNOPQRSTUVWXYZ 1 bright
		Stop
		Puff02:
PF02 ABC 1 BRIGHT light ("WhiteSmallPoint3")
PF02 DEF 1 BRIGHT //light ("BPUFF2")
		PF02 GHIJKLMNOPQRSTUVWXYZ 1 bright
		PF12 ABCDEFGHIJKLMNOPQRSTUVWXYZ 1 bright
		Stop
		Puff03:
PF03 ABC 1 BRIGHT light ("WhiteSmallPoint3")
PF03 DEF 1 BRIGHT //light ("BPUFF2")
		PF03 GHIJKLMNOPQRSTUVWXYZ 1 bright
		PF13 ABCDEFGHIJKLMNOPQRSTUVWXYZ 1 bright
		Stop
		Puff04:
PF04 ABC 1 BRIGHT light ("WhiteSmallPoint3")
PF04 DEF 1 BRIGHT //light ("BPUFF2")
		PF04 GHIJKLMNOPQRSTUVWXYZ 1 bright
		PF14 ABCDEFGHIJKLMNOPQRSTUVWXYZ 1 bright
		Stop
	}
}





//Puff sounds used by sickles.
actor Sicklespuff : DooskPuff
{
  SeeSound "Weapon/Hit" //  SeeSound "Sickles/Flesh" 
  AttackSound "Sickles/Wall"
}

//Used by Sword. Alternate fire uses a custom puff.
actor Swordpuff : DooskPuff
{
  SeeSound "Sword/Flesh" 
  AttackSound "Sword/Wall"
} 

//Alternate puff for sword.
actor AltSwordpuff : BulletPuff
{
  SeeSound "Sword/altfire" 
  AttackSound "Sword/altfire"
  ActiveSound "Sil/Encio"
	+CLIENTSIDEONLY
	+NOINTERACTION
	+NOGRAVITY
	-NOEXTREMEDEATH
	+PUFFGETSOWNER
//	+NOEXTREMEDEATH
	+PUFFONACTORS
	RenderStyle Normal
Scale 0.525//35
VSpeed 0
	States
	{
	Spawn:
PF05 ABC 1 BRIGHT light ("BlueMediumPoint2")
PF05 DEF 1 BRIGHT light ("BlueSmallPoint2")
		PF05 GHIJKLMNOPQRSTUVWXYZ 1 bright
		PF15 ABCDEFGHIJKLMNOPQRSTUVWXYZ 1 bright
//		PUF4 ABCDEF 3 bright
		Stop

		XDeath: TNT1 A 1 A_GiveToTarget("DamageDealtSoundItemHack",1)
		Melee:
PF05 ABC 1 BRIGHT light ("BlueMediumPoint2")
PF05 DEF 1 BRIGHT light ("BlueSmallPoint2")
		PF05 GHIJKLMNOPQRSTUVWXYZ 1 bright
		PF15 ABCDEFGHIJKLMNOPQRSTUVWXYZ 1 bright
//		PUF4 ABCDEF 3 bright
		Stop
	}
} 






//Weapon melee sound, aka spin weapons.
actor Meleepuff : DooskPuff
{
  SeeSound "Weapon/Hit" 
  AttackSound "Sickles/Wall"
}

//Generic weapon Bulletpuffs. Used on most weapons.
actor WeaponPuff : DooskPuff
{
  SeeSound "Sil/Encio"//"Weapon/Hit" 
  AttackSound "Sil/Encio"
}

actor WeaponPuff_Pistol : DooskPuff
{
  SeeSound "Sil/Encio"//"Weapon/Hit" 
  AttackSound "Sil/Encio"
	DamageType "PistolShot"
//DamageType "MP_Pistol_Drop", 1.0
}



//Used on sniper rifle.
actor WeaponPuff_AllowGib : DooskPuff
{
	-NOEXTREMEDEATH

  SeeSound "Sil/Encio"//"Weapon/Hit" 
  AttackSound "Sil/Encio"
}


//Additional bullet wallhit sound from monsters.
actor MonsterPuff : DooskPuff
{
  SeeSound "Weapon/Hit" 
  AttackSound "Bullet/Wall"
}


actor Buzzsawpuff : DooskPuff
{
  SeeSound "Sil/Encio"//"Weapon/Hit" 
  AttackSound "Sickles/Wall"

	RenderStyle Stencil
	StencilColor Yellow
}


