ACTOR Beretta : ModWeapon replaces Pistol
{
	Weapon.SelectionOrder 1900
	Weapon.SlotNumber 2
	Weapon.AmmoType "PistolMag"
	Weapon.AmmoUse 1
	Weapon.AmmoGive 0
	Weapon.AmmoType2 "PistolAmmo"
	Weapon.AmmoGive2 10
	Weapon.AmmoUse2 0
	Inventory.PickupMessage "You got the Pistol!"
	Inventory.PickupSound "weapons/pistol/slide"
	Weapon.UpSound "weapons/pistol/equip"
	Tag "Beretta"
	States
	{
	Select:
		BRLD R 1 A_Raise
		TNT1 A 0 A_ZoomFactor(1.00)
		TNT1 A 0 A_PlaySound("weapons/pistol/slide", CHAN_AUTO)
		TNT1 A 1 A_WeaponOffset(-75,69, WOF_INTERPOLATE)
		BRLD R 1 A_WeaponOffset(-60,60, WOF_INTERPOLATE)
		BRLD R 1 A_WeaponOffset(-45,52, WOF_INTERPOLATE)
		BRTT A 1 A_WeaponOffset(-30,45, WOF_INTERPOLATE)
		BRTT A 1 A_WeaponOffset(-15,39, WOF_INTERPOLATE)
		BRTT A 1 A_WeaponOffset(-1, 35, WOF_INTERPOLATE)
		Goto Ready
	Deselect:
		TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("led_AnimToggle")==1, "DeadSelect")
		TNT1 A 0 A_PlaySound("weapons/deselect", CHAN_AUTO)
		TNT1 A 0 A_PlaySound("weapons/pistol/holster", CHAN_AUTO)
		BRTT A 1 A_WeaponOffset(-15,39, WOF_INTERPOLATE)
		BRTT A 1 A_WeaponOffset(-30,45, WOF_INTERPOLATE)
		BRTT A 1 A_WeaponOffset(-40,52, WOF_INTERPOLATE)
		BRLD R 1 A_WeaponOffset(-45,60, WOF_INTERPOLATE)
		BRLD R 1 A_WeaponOffset(-49,75, WOF_INTERPOLATE)
		BRLD R 1 A_WeaponOffset(-51,100, WOF_INTERPOLATE)
		BRLD R 1 A_Lower
		Wait
	DeadSelect:
		TNT1 A 0 A_JumpIfHealthLower(1, "Dead")
		Goto Deselect+1
	Dead:
		TNT1 A 0 
	Animation:
		TNT1 A 1 A_WeaponOffset(0, 32)
		GRAB ABCD 2
		TNT1 A 0 A_FireProjectile("DitchedPistol", 0, 0, 0, 13)
		GRAB EF 2
		GRAB GHI 3
	Stopped:
		TNT1 A 1
		Loop
	Ready:
		TNT1 A 0 A_JumpIfInventory("Punching", 1, "DoPunch")
		BRTT A 1 A_WeaponReady(WRF_ALLOWRELOAD)
		Loop
	Fire:
		TNT1 A 0 A_JumpIfNoAmmo("Reload")
		TNT1 A 0 A_FireLedPistol
		TNT1 A 0 A_JumpIf(GetCvar("led_ZoomEffects")==0, 2)
		TNT1 A 0 A_ZoomFactor(0.998, ZOOM_INSTANT)
		BRTT B 1 A_WeaponOffset(0, 33, WOF_INTERPOLATE)
		TNT1 A 0 A_JumpIf(GetCvar("led_ZoomEffects")==0, 2)
		TNT1 A 0 A_ZoomFactor(0.999)
		TNT1 A 0 A_SetPitch(pitch-0.5)
		BRTT B 1 A_WeaponOffset(0, 37, WOF_INTERPOLATE)
		TNT1 AA 0 A_FireProjectile("PistolSmokeSpawner", 0, 0, 0, 0)
		TNT1 A 0 A_JumpIf(GetCvar("led_ZoomEffects")==0, 2)
		TNT1 A 0 A_ZoomFactor(1.00)
		TNT1 A 0 A_SetPitch(pitch+0.25)
		TNT1 A 0 A_FireProjectile("9mmCasingSpawner", 0, 0, 0, 0.5)
		BRTT C 1 A_WeaponOffset(0, 40, WOF_INTERPOLATE)
		TNT1 A 0 A_SetPitch(pitch+0.1)
		BRTT C 1 A_WeaponOffset(0, 41, WOF_INTERPOLATE)
		TNT1 A 0 A_SetPitch(pitch+0.05)
		BRTT D 1 A_WeaponOffset(0, 39, WOF_INTERPOLATE)
		TNT1 A 0 A_SetPitch(pitch+0.05)
		BRTT E 1 A_WeaponOffset(0, 37, WOF_INTERPOLATE)
		TNT1 A 0 A_SetPitch(pitch+0.025)
		BRTT D 1 A_WeaponOffset(0, 35, WOF_INTERPOLATE)
		TNT1 A 0 A_SetPitch(pitch+0.025)
		BRTT B 1 A_WeaponOffset(0, 34, WOF_INTERPOLATE)
		TNT1 A 0 A_ReFire
		BRTT A 1 A_WeaponOffset(0, 33, WOF_INTERPOLATE)
		Goto Ready
	AltFire:
		TNT1 A 0 A_JumpIfInventory("PistolMag", 1, 1)
		Goto Reload
	Burst1:
		TNT1 A 0 A_JumpIf(CountInv("PistolMag") == 1, "Fire")
		TNT1 A 0 A_JumpIf(CountInv("PistolMag") == 2, "Burst2")
		TNT1 A 0 A_BurstLedPistol
		TNT1 A 0 A_JumpIf(GetCvar("led_ZoomEffects")==0, 2)
		TNT1 A 0 A_ZoomFactor(0.998, ZOOM_INSTANT)
		BRTT B 1 A_WeaponOffset(0, 33, WOF_INTERPOLATE)
		TNT1 A 0 A_SetPitch(pitch-0.5)
		TNT1 A 0 A_JumpIf(GetCvar("led_ZoomEffects")==0, 2)
		TNT1 A 0 A_ZoomFactor(0.999)
		BRTT C 1 A_WeaponOffset(0, 37, WOF_INTERPOLATE)
		TNT1 A 0 A_SetPitch(pitch+0.25)
		TNT1 A 0 A_JumpIf(GetCvar("led_ZoomEffects")==0, 2)
		TNT1 A 0 A_ZoomFactor(1.00)
		TNT1 AA 0 A_FireProjectile("PistolSmokeSpawner", 0, 0, 0, 0)
		BRTT C 1 A_WeaponOffset(0, 40, WOF_INTERPOLATE)
		TNT1 A 0 A_SetPitch(pitch+0.25)
		TNT1 A 0 A_FireProjectile("9mmCasingSpawner", 0, 0, 0, 0.5)
	Burst2:
		TNT1 A 0 A_BurstLedPistol
		TNT1 A 0 A_JumpIf(GetCvar("led_ZoomEffects")==0, 2)
		TNT1 A 0 A_ZoomFactor(0.998, ZOOM_INSTANT)
		BRTT B 1 A_WeaponOffset(0, 33, WOF_INTERPOLATE)
		TNT1 A 0 A_SetPitch(pitch-0.5)
		TNT1 A 0 A_JumpIf(GetCvar("led_ZoomEffects")==0, 2)
		TNT1 A 0 A_ZoomFactor(0.999)
		BRTT C 1 A_WeaponOffset(0, 37, WOF_INTERPOLATE)
		TNT1 A 0 A_SetPitch(pitch+0.25)
		TNT1 A 0 A_JumpIf(GetCvar("led_ZoomEffects")==0, 2)
		TNT1 A 0 A_ZoomFactor(1.00)
		TNT1 AA 0 A_FireProjectile("PistolSmokeSpawner", 0, 0, 0, 0)
		BRTT C 1 A_WeaponOffset(0, 40, WOF_INTERPOLATE)
		TNT1 A 0 A_SetPitch(pitch+0.25)
		TNT1 A 0 A_FireProjectile("9mmCasingSpawner", 0, 0, 0, 0.5)
	Burst3:
		TNT1 A 0 A_BurstLedPistol
		BRTT B 1 A_WeaponOffset(0, 33, WOF_INTERPOLATE)
		TNT1 A 0 A_SetPitch(pitch-0.5)
		TNT1 A 0 A_JumpIf(GetCvar("led_ZoomEffects")==0, 2)
		TNT1 A 0 A_ZoomFactor(0.998, ZOOM_INSTANT)
		BRTT C 1 A_WeaponOffset(0, 37, WOF_INTERPOLATE)
		TNT1 A 0 A_SetPitch(pitch+0.25)
		TNT1 A 0 A_JumpIf(GetCvar("led_ZoomEffects")==0, 2)
		TNT1 A 0 A_ZoomFactor(0.999)
		TNT1 AA 0 A_FireProjectile("PistolSmokeSpawner", 0, 0, 0, 0)
		BRTT C 1 A_WeaponOffset(0, 40, WOF_INTERPOLATE)
		TNT1 A 0 A_SetPitch(pitch+0.1)
		TNT1 A 0 A_JumpIf(GetCvar("led_ZoomEffects")==0, 2)
		TNT1 A 0 A_ZoomFactor(1.00)
		TNT1 A 0 A_FireProjectile("9mmCasingSpawner", 0, 0, 0, 0.5)
		BRTT D 1 A_WeaponOffset(0, 39, WOF_INTERPOLATE)
		TNT1 A 0 A_SetPitch(pitch+0.05)
		BRTT E 1 A_WeaponOffset(0, 37, WOF_INTERPOLATE)
		TNT1 A 0 A_SetPitch(pitch+0.05)
		BRTT D 1 A_WeaponOffset(0, 35, WOF_INTERPOLATE)
		TNT1 A 0 A_SetPitch(pitch+0.025)
		BRTT B 1 A_WeaponOffset(0, 34, WOF_INTERPOLATE)
		TNT1 A 0 A_SetPitch(pitch+0.025)
		TNT1 A 0 A_ReFire
		BRTT A 1 A_WeaponOffset(0, 33, WOF_INTERPOLATE)
		Goto Ready
	Reload:
		TNT1 A 0 A_JumpIfInventory("PistolMag", 11, 2)
		TNT1 A 0 A_JumpIfInventory("PistolAmmo", 1, "ReloadWork")
		BRTT A 1 A_WeaponReady
		Goto Ready
	ReloadWork:
		TNT1 A 0 A_JumpIf(ACS_NamedExecuteWithResult("led_TogglePistol")==0, "NoReloadChamberCheck")
		TNT1 A 0 A_JumpIfInventory("PistolMag", 1, "ReloadWork2")
		TNT1 A 0 A_PlaySound("weapons/foley", CHAN_AUTO)
		BRLD S 2
		BRLD AB 1
		TNT1 A 0 A_PlaySound("weapons/pistol/cout", CHAN_AUTO)
		BRLD CDE 1
		TNT1 A 0 A_FireProjectile("SpentClip1", 0 ,0, 0, 0)
		BRLD E 1
		BRLD F 3
		TNT1 A 0 A_PlaySound("weapons/foley", CHAN_AUTO)
		BRLD G 1
		Goto ChamberCheck
	ReloadWork2:
		TNT1 A 0 A_PlaySound("weapons/foley", CHAN_AUTO)
		BRLD R 2
		CHLD AB 1
		TNT1 A 0 A_PlaySound("weapons/pistol/cout", CHAN_AUTO)
		CHLD CMG 1
		CHLD G 1
		CHLD F 3
		TNT1 A 0 A_PlaySound("weapons/foley", CHAN_AUTO)
		CHLD G 1
		Goto ChamberCheck
	ChamberCheck:
		TNT1 A 0 A_JumpIfInventory("PistolMag", 1, "ReloadLoop2")
		Goto ReloadLoop
	NoReloadChamberCheck:
		TNT1 A 0 A_JumpIfInventory("PistolMag", 1, "NoReloadLoop2")
		Goto NoReloadLoop
	ReloadLoop:
		TNT1 A 0 A_TakeInventory("PistolAmmo", 1)
		TNT1 A 0 A_GiveInventory("PistolMag", 1)
		TNT1 A 0 A_JumpIfInventory("PistolMag", 10, "ReloadFinish")
		TNT1 A 0 A_JumpIfInventory("PistolAmmo", 1, "ReloadLoop")
		Goto ReloadFinish
	NoReloadLoop:
		TNT1 A 0 A_TakeInventory("PistolAmmo", 1)
		TNT1 A 0 A_GiveInventory("PistolMag", 1)
		TNT1 A 0 A_JumpIfInventory("PistolMag", 10, "NoReloadFinish")
		TNT1 A 0 A_JumpIfInventory("PistolAmmo", 1, "NoReloadLoop")
		Goto NoReloadFinish
	ReloadLoop2:
		TNT1 A 0 A_TakeInventory("PistolAmmo", 1)
		TNT1 A 0 A_GiveInventory("PistolMag", 1)
		TNT1 A 0 A_JumpIfInventory("PistolMag", 11, "ReloadFinish2")
		TNT1 A 0 A_JumpIfInventory("PistolAmmo", 1, "ReloadLoop2")
		Goto ReloadFinish2
	NoReloadLoop2:
		TNT1 A 0 A_TakeInventory("PistolAmmo", 1)
		TNT1 A 0 A_GiveInventory("PistolMag", 1)
		TNT1 A 0 A_JumpIfInventory("PistolMag", 11, "NoReloadFinish2")
		TNT1 A 0 A_JumpIfInventory("PistolAmmo", 1, "NoReloadLoop2")
		Goto NoReloadFinish2
	ReloadFinish:
		TNT1 A 0 A_PlaySound("weapons/pistol/cin", 6)
		BRLD HHHII 1 
		BRLD JJKKKLL 1 
		TNT1 A 0 A_PlaySound("weapons/pistol/snap", 6)
		BRLD M 2
		TNT1 A 0 A_PlaySound("weapons/foley", CHAN_AUTO)
		BRLD NNOOPQR 1 
		Goto Ready
	ReloadFinish2:
		TNT1 A 0 A_PlaySound("weapons/pistol/cin", 6)
		CHLD HHHII 1 
		CHLD JJKKKLL 1 
		BRLD M 2
		TNT1 A 0 A_PlaySound("weapons/foley", CHAN_AUTO)
		BRLD NNOOPQR 1 
		Goto Ready
	NoReloadFinish:
		TNT1 A 0 A_ReFire
		Goto Ready
	NoReloadFinish2:
		TNT1 A 0 A_ReFire
		Goto Ready
	DoPunch:
		TNT1 A 0 A_TakeInventory("Punching",1)
		TNT1 A 0 A_PlaySound("weapons/deselect", CHAN_AUTO)
		//BRTT A 1 A_WeaponOffset(-5,35, WOF_INTERPOLATE)
		BRTT A 1 A_WeaponOffset(-30,45, WOF_INTERPOLATE)
		BRTT A 1 A_WeaponOffset(-40,52, WOF_INTERPOLATE)
		BRTT A 1 A_WeaponOffset(-49,75, WOF_INTERPOLATE)
		BRTT A 1 A_WeaponOffset(-51,90, WOF_INTERPOLATE)
		TNT1 A 1 A_WeaponOffset(0,32, WOF_INTERPOLATE)
		TNT1 A 0 A_PlaySound("swing")
		Goto ActualPunch
	PunchDone:
		TNT1 A 1 A_WeaponOffset(-90,79, WOF_INTERPOLATE)
		BRLD R 1 A_WeaponOffset(-90,79, WOF_INTERPOLATE)
		BRLD R 1 A_WeaponOffset(-75,69, WOF_INTERPOLATE)
		BRLD R 1 A_WeaponOffset(-60,60, WOF_INTERPOLATE)
		BRTT A 1 A_WeaponOffset(-45,52, WOF_INTERPOLATE)
		BRTT A 1 A_WeaponOffset(-30,45, WOF_INTERPOLATE)
		BRTT A 1 A_WeaponOffset(-15,39, WOF_INTERPOLATE)
		BRTT A 1 A_WeaponOffset(0,32, WOF_INTERPOLATE)
		Goto Ready
	Flash:
		BRTF B 1 Bright A_Light2
		BRTF A 1 Bright A_Light1
		Goto LightDone
	Spawn:
		PIST A -1
		Stop
	}
}