ACTOR SD64_SuperShotgun : SuperShotgun replaces SuperShotgun
{
	Yscale 0.70
	XScale 0.75
	States
	{
	Hold:
		TNT1 A 0
		goto Fire
	Fire:
		SHT2 A 3
		SHT2 A 0 Radius_Quake(6, 3, 0, 1, 0)
		SHT2 A 0 A_FireBullets(11.2, 7.1, 20, 5, "SSGBulletPuff")
		SHT2 A 0 A_GunFlash
		SHT2 A 0 A_Recoil(2)
		SHT2 A 3 A_SetPitch(pitch-2)
		SHT2 A 1 A_SetPitch (pitch+0.8)
		SHT2 B 2 A_SetPitch (pitch+0.6)
		SHT2 B 1 A_SetPitch (pitch+0.4)
		SHT2 C 2
		SHT2 C 1 A_SetPitch (pitch+0.2)
		SHT2 A 4

		SHT2 E 3 A_CheckReload
		SHT2 F 4
		
		SHT2 G 5 A_PlaySoundEx("weapons/sshoto", "Auto")
		SHT2 F 2
		
		SHT2 H 4
		SHT2 I 3
		
		SHT2 J 4 A_PlaySoundEx("weapons/sshotl", "Auto")
		SHT2 K 3
		
		SHT2 L 3
		SHT2 M 2
		SHT2 N 1
		
		SHT2 O 0 A_PlaySoundEx("weapons/sshotc", "Auto")
		SHT2 O 3 A_ReFire
		SHT2 P 3 A_ReFire
		
		SHT2 A 5 A_ReFire
		Goto Ready
	Flash:
		SHT2 D 3 Bright A_Light1
		TNT1 A 1 Bright A_Light2
		Goto LightDone
	}
}

ACTOR SD64_Chaingun : Chaingun replaces Chaingun
{
	Yscale 0.70
	XScale 0.75
	AttackSound ""
	States
	{
	Hold:
		CHGG E 0 A_Jump(232, "Hold2", "Hold3")
		goto Fire
	Hold2:
		CHGG E 0 A_GunFlash
		CHGG E 0 A_PlaySound("weapons/chngun", CHAN_AUTO)
		CHGG E 0 A_FireBullets (5.6, 0, 1, 6, "SD64BulletPuff")
		CHGG E 1 A_SetPitch (pitch-1)
		CHGG F 0 A_SetPitch (pitch+1)
		CHGG FGH 1
		CHGG E 0 A_GunFlash
		CHGG E 0 A_PlaySound("weapons/chngun", CHAN_AUTO)
		CHGG E 0 A_FireBullets (5.6, 0, 1, 6, "SD64BulletPuff")
		CHGG E 1 Offset(2, 34) A_SetPitch (pitch-1)
		CHGG F 0 Offset(2, 34) A_SetPitch (pitch+1)
		CHGG FGH 1 Offset(2, 34)
		CHGG H 0 A_WeaponReady(WRF_NOFIRE)
		CHGG A 1 A_ReFire
		CHGG B 2 A_Weaponready
		CHGG C 3 A_Weaponready
		CHGG D 3 A_Weaponready
		Goto Ready
	Hold3:
		CHGG E 0 A_GunFlash
		CHGG E 0 A_PlaySound("weapons/chngun", CHAN_AUTO)
		CHGG E 0 A_FireBullets (5.6, 0, 1, 6, "SD64BulletPuff")
		CHGG E 1 A_SetPitch (pitch-1)
		CHGG F 0 A_SetPitch (pitch+1)
		CHGG FGH 1
		CHGG E 0 A_GunFlash
		CHGG E 0 A_PlaySound("weapons/chngun", CHAN_AUTO)
		CHGG E 0 A_FireBullets (5.6, 0, 1, 6, "SD64BulletPuff")
		CHGG E 1 Offset(-2, 34) A_SetPitch (pitch-1)
		CHGG F 0 Offset(-2, 34) A_SetPitch (pitch+1)
		CHGG FGH 1 Offset(-2, 34)
		CHGG H 0 A_WeaponReady(WRF_NOFIRE)
		CHGG A 1 A_ReFire
		CHGG B 2 A_Weaponready
		CHGG C 3 A_Weaponready
		CHGG D 3 A_Weaponready
		Goto Ready
	
	Fire:
		CHGG E 0 A_GunFlash
		CHGG E 0 A_PlaySound("weapons/chngun", CHAN_AUTO)
		CHGG E 0 A_FireBullets (5.6, 0, 1, 6, "SD64BulletPuff")
		CHGG E 1 A_SetPitch (pitch-1)
		CHGG F 0 A_SetPitch (pitch+1)
		CHGG FGH 1
		CHGG E 0 A_GunFlash
		CHGG E 0 A_PlaySound("weapons/chngun", CHAN_AUTO)
		CHGG E 0 A_FireBullets (5.6, 0, 1, 6, "SD64BulletPuff")
		CHGG E 1 A_SetPitch (pitch-1)
		CHGG F 0 A_SetPitch (pitch+1)
		CHGG FGH 1
		CHGG A 1 A_ReFire
		CHGG B 2 A_Weaponready
		CHGG C 3 A_Weaponready
		CHGG D 3 A_Weaponready
		Goto Ready
	Flash:
		CHGF A 2 Bright A_Light2
		CHGF B 1 Bright A_Light1
		Goto LightDone
	}
}

actor SD64_ROTTMP40 : Chaingun 17531
{
	Scale 0.5
	Inventory.PickupMessage "You got the hidden Rise of the Triad MP-40!"
	Obituary "%o was perforated by %k's MP-40."
	AttackSound "MP40Fire"
	+WEAPON.CHEATNOTWEAPON
	States
	{
	Spawn:
		MP4P A -1
		loop
	Select:
		MP40 A 1 A_Raise
		loop
	Deselect:
		MP40 A 1 A_Lower
		loop
	Ready:
		MP40 A 1 A_WeaponReady
		loop
	Hold:
	Fire:
		MP40 B 0 Radius_Quake(2, 2, 0, 1, 0)
		MP40 B 0 BRIGHT A_GunFlash
		MP40 B 1 BRIGHT A_FireBullets (5.6, 0, 1, 6, "SD64BulletPuff")
		MP40 C 2
		MP40 A 1
		MP40 B 0 Radius_Quake(2, 2, 0, 1, 0)
		MP40 B 0 BRIGHT A_GunFlash
		MP40 B 1 BRIGHT A_FireBullets (5.6, 0, 1, 6, "SD64BulletPuff")
		MP40 C 2
		MP40 A 1
		MP40 A 0 A_Refire
		goto Ready
	Flash:
		TNT1 A 2 Bright A_Light2
		TNT1 A 1 Bright A_Light1
		Goto LightDone
	}
}

actor SD64_Chainsaw : Chainsaw replaces Chainsaw
{
  Yscale 0.70
  XScale 0.75
  Weapon.UpSound ""
  +WEAPON.MELEEWEAPON
  States
  {
  Ready:
    SAWG AB 4 A_WeaponReady
    loop
  Deselect:
    SAWG A 1 A_Lower
    loop
  Select:
	SAWG A 0 A_PlaySoundEx("weapons/sawup", "Auto", 0)
    SAWG A 1 A_Raise
    goto Select+1
  Hold:
	TNT1 A 0
	goto Fire
  Fire:
    SAWG CD 2 A_Saw("weapons/sawfull", "weapons/sawhit", 2, "ChainsawPuff")
    SAWG D 0 A_ReFire
    goto Ready
  }
}

ACTOR SD64_Pistol : Pistol replaces Pistol
{
	-WEAPON.ALLOW_WITH_RESPAWN_INVUL
	+WEAPON.NOAUTOFIRE
	States
	{
	Deselect:
		PISG A 1 A_Lower
		PISG AA 0 A_Lower
		Loop
	Select:
		PISG A 1 A_Raise
		PISG AA 0 A_Raise
		Loop
	Fire:
		PISG A 0 A_GunFlash
		PISG B 2 BRIGHT A_FireBullets(2, 2, -1, 5, "SD64BulletPuff")
		PISG C 3
		PISG B 1 A_WeaponReady(WRF_NOBOB)
		PISG B 5 A_WeaponReady(WRF_NOBOB)
		PISG A 1 A_Refire
		Goto Ready
	Flash:
		TNT1 A 0
		PISG D 2 Bright A_Light1
		Goto LightDone
 	Spawn:
		PIST A -1
		Stop
	}
}

ACTOR SD64_Shotgun : Shotgun replaces Shotgun
{
	Yscale 0.70
	XScale 0.75
	States
	{
	Ready:
		SHT1 A 1 A_WeaponReady
		Loop
	Deselect:
		SHT1 A 1 A_Lower
		SHT1 A 0 A_Lower
		Loop
	Select:
		SHT1 A 1 A_Raise
		SHT1 A 0 A_Raise
		Loop
	Fire:
		SHT1 A 3
		SHT1 A 0 A_GunFlash
		SHT1 A 0 A_FireBullets(5.6, 2, 10, 5, "SD64BulletPuff")
		SHT1 A 2 A_SetPitch (pitch-2)
		SHT1 B 1 A_SetPitch (pitch+0.8)
		SHT1 B 1 A_SetPitch (pitch+0.6)
		SHT1 C 2 A_SetPitch (pitch+0.4)
		SHT1 A 1 A_SetPitch (pitch+0.2)
		SHT1 DE 4
		SHT1 F 2
		SHT1 G 4
		SHT1 F 2
		SHT1 ED 4
		SHT1 A 3
		SHT1 A 7 A_ReFire
		Goto Ready
	Flash:
		SHT1 H 2 Bright A_Light2
		TNT1 A 1 Bright A_Light1
		Goto LightDone
	}
}