ACTOR TK3Pistol : Weapon
{
  Weapon.Kickback 100
  scale 0.2
     	Weapon.AmmoUse 1
	Weapon.AmmoGive 20
	Weapon.AmmoType "TK3SmallPistolAmmo"
	Weapon.SelectionOrder 1800
  Inventory.PickupMessage "Pistol"
  	inventory.Icon "TKA5L0"
  Obituary  "%k shot %o down with his Pistol."
  	Inventory.PickupSound "Turok3/Items/PickupWeapon"
	Tag "Pistol"
  States
  {
  Spawn:
    TKA3 B -1
    Loop
  Ready:
	TNT1 A 0 A_PlaySound ("Turok3/Weapons/PistolUp","Weapon")
    TK08 A 2 
    TK08 B 2
    TK08 C 2
    TK08 D 2
    TK08 E 2
    TK08 F 2
    TK08 G 2
    TK08 H 200 A_WeaponReady
	TW08 ABCDEFGHIJKLMNOPQRSTUVXYZ 2 A_WeaponReady
	TW09 ABCDEFGHIJKLMNOPQRSTUVXYZ 2 A_WeaponReady
	TW10 ABCDEFGH 2 A_WeaponReady
	TK08 H 200 A_Weaponready
	MK15 ABCDEFGHIJKLMNOPQRSTUVXYZ 2 A_WeaponReady
	MK16 ABCDEFGHIJKLMNOPQRSTUV 2 A_WeaponReady
    Goto Ready+8
  Deselect:
    TK08 R 2
    TK08 STUVXYZ 2
	TK09 AB 2
    TK09 B 0 A_Lower
    wait
  Select: 
    TK08 A 0 A_Raise 
    Loop  
  Fire: 
 	TNT1 A 0 A_PlaySound ("Turok3/Weapons/PistolAttack","Weapon")
    TK08 I 2 BRIGHT A_FireBullets(0, 0, 1, 10, "BulletPuff")
	TK11 C 0 BRIGHT A_FireCustomMissile("WeaponSmokeSpawn",0,0,22,-2,0)
	TNT1 A 0 A_SpawnItemEx("TK3PistolCasing", 20,cos(pitch)*12,sin(-pitch)*10+30, frandom(0.5,1.2),frandom(0.5,1.2),frandom(1.5,2.5))
    TK08 J 2 
    TK08 K 2 
    TK08 L 2
    TK08 M 2  
    TK08 N 2 A_Refire
    TK08 O 2 
    TK08 P 2
	TK08 Q 2
    Goto Ready+8
  }
}

Actor TK3PistolCasing
{
scale 0.1
radius 3
projectile
gravity 0.3
bouncefactor 0.5
wallbouncefactor 0.4
bouncecount 5
bouncetype "Doom"
  BounceSound "Turok3/Weapons/ShellHit"
-NOGRAVITY
-NOBLOCKMAP
+BOUNCEONCEILINGS
+NOTELEPORT
+DROPOFF
+FLOORCLIP
+THRUACTORS
	states
	{
	Spawn:
		TNT1 A 0 NoDelay A_Jump(255, "Spawn1", "Spawn2", "Spawn3", "Spawn4", "Spawn5")
		goto Spawn1
	Spawn1:
		TF51 ABCDEFGH 2
		loop
	Spawn2:
		TF51 ABCDEFGH 2
		loop
	Spawn3:
		TF51 ABCDEFGH 2
		loop
	Spawn4:
		TF51 ABCDEFGH 2
		loop
	Spawn5:
		TF51 ABCDEFGH 2
		loop
	Death:
		TNT1 A 0 A_Jump(255, "Death1", "Death2")
		goto Death1
	Death1:
		TF51 C 175
		stop
	Death2:
		TF51 C 175
		stop
	}
}

ACTOR WeaponSmokeSpawn
{
	Speed 18
	PROJECTILE
	+NOCLIP
	States
	{
	Spawn:
		TNT1 AA 2 A_CustomMissile("WeaponSmoke",RANDOM(-2,2),RANDOM(-2,2),0,0,0)
		Stop
	}
}

ACTOR WeaponSmoke
{
	Radius 1
	Height 1
	Speed 1
	PROJECTILE
	RENDERSTYLE Translucent
	ALPHA 0.4
	Scale 0.18
	+NOBLOCKMAP
	 +FORCEXYBILLBOARD
	+NOGRAVITY
	States
	{

		Spawn:
		SMK2 ABCD 2
		SMK2 EFGHIJKLM 1
		Stop
	}
}
