ACTOR PerkFist : Fist replaces Fist
{
	States
	{
	Ready:
		TNT1 A 0 A_JumpIf(CallACS("GloveToggle")==1, "BLready")
		pkfs A 1 A_WeaponReady
		Loop
    Deselect:
		TNT1 A 0 A_JumpIf(CallACS("GloveToggle")==1, "BLdeselect")
		pkfs A 1 A_Lower
		Loop
    Select:
		TNT1 A 0 A_JumpIf(CallACS("GloveToggle")==1, "BLselect")
		pkfs A 1 A_Raise
		Loop
	Fire:
		TNT1 A 0 a_jumpif(callacs("BobToggle")==1, "bobfire")
		TNT1 A 0 A_JumpIf(CallACS("GloveToggle")==1, "BLfire")
		PKFS LBCD 1
		PKFS E 2 A_Punch
		PKFS FGHI 2
		PKFS JKL 1
		PUNG A 5 A_ReFire
		Goto Ready
	blFire:
		TNT1 A 0 a_jumpif(callacs("BobToggle")==1, "bobblfire")
		TNT1 A 0 A_JumpIf(CallACS("GloveToggle")==0, "fire")
		bKFS LBCD 1
		bKFS E 2 A_Punch
		bKFS FGHI 2
		bKFS JKL 1
		bkfs A 5 A_ReFire
		Goto Ready
	blReady:
		TNT1 A 0 A_JumpIf(CallACS("GloveToggle")==0, "ready")
		bkfs A 1 A_WeaponReady
		Loop
    blDeselect:
		TNT1 A 0 A_JumpIf(CallACS("GloveToggle")==0, "deselect")
		bkfs A 1 A_Lower
		Loop
    blSelect:
		TNT1 A 0 A_JumpIf(CallACS("GloveToggle")==0, "select")
		bkfs A 1 A_Raise
		Loop
		
	bobFire:
		TNT1 A 0 A_JumpIf(CallACS("GloveToggle")==1, "BLfire")
		TNT1 A 0 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		PKFS L 1
		TNT1 A 0 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		PKFS B 1
		TNT1 A 0 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		PKFS C 1
		TNT1 A 0 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		PKFS D 1
		TNT1 A 0 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		PKFS E 2 A_Punch
		TNT1 A 0 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		PKFS F 2
		TNT1 A 0 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		PKFS G 2
		TNT1 A 0 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		PKFS H 2
		TNT1 A 0 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		PKFS I 2
		TNT1 A 0 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		PKFS J 1
		TNT1 A 0 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		PKFS K 1
		TNT1 A 0 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		PKFS L 1
		TNT1 A 0 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		PUNG A 5 A_ReFire
		Goto Ready
	bobblFire:
		TNT1 A 0 A_JumpIf(CallACS("GloveToggle")==0, "fire")
		TNT1 A 0 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		bKFS L 1
		TNT1 A 0 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		bkfs B 1
		TNT1 A 0 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		bkfs C 1
		TNT1 A 0 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		bkfs D 1
		TNT1 A 0 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		bKFS E 2 A_Punch
		TNT1 A 0 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		bKFS F 2
		TNT1 A 0 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		bkfs G 2
		TNT1 A 0 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		bkfs H 2
		TNT1 A 0 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		bkfs I 2
		TNT1 A 0 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		bKFS J 2
		TNT1 A 0 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		bkfs K 2
		TNT1 A 0 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		bkfs L 1
		TNT1 A 0 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		bkfs A 5 A_ReFire
		Goto Ready
	}
}


ACTOR Z86Chainsaw : Chainsaw replaces Chainsaw
{
	States
	{
	Ready:
		TNT1 A 0 A_JumpIf(CallACS("64SawToggle")==1, "64ready")
		TNT1 A 0 A_JumpIf(CallACS("GloveToggle")==1, "BLready")
		TNT1 A 0 A_StopSound(1)
		TNT1 A 0 A_playsound("weapons/sawidle", 2, TRUE)
		saws CCDDEEFF 1 A_WeaponReady 
		Loop
	Deselect:
		TNT1 A 0 A_JumpIf(CallACS("64SawToggle")==1, "64deselect")
		TNT1 A 0 A_JumpIf(CallACS("GloveToggle")==1, "BLdeselect")
		saws C 1 A_Lower
		Loop
	Select:
		TNT1 A 0 A_JumpIf(CallACS("64SawToggle")==1, "64select")
		TNT1 A 0 A_JumpIf(CallACS("GloveToggle")==1, "BLselect")
		saws C 1 A_Raise
		Loop
	Fire:
		TNT1 A 0 a_jumpif(callacs("BobToggle")==1, "bobfire")
		TNT1 A 0 A_JumpIf(CallACS("recoiltoggle")==1, "recoilfire")
		TNT1 A 0 A_JumpIf(CallACS("GloveToggle")==1, "BLfire")
		TNT1 A 0 A_playsound("weapons/sawfull", 1, TRUE)
		TNT1 A 0 A_StopSound(2)
		TNT1 A 0 A_JumpIf(CallACS("64SawToggle")==1, "64fire")
		saws A 2 A_Saw
		saws B 2
		saws A 2 A_Saw
		saws B 2
    	saws B 0 A_ReFire
    	Goto Ready
	RecoilFire:
		TNT1 A 0 a_jumpif(callacs("BobToggle")==1, "bobrecoilfire")
		TNT1 A 0 A_JumpIf(CallACS("64SawToggle")==1, "64recoilfire")
		TNT1 A 0 A_JumpIf(CallACS("GloveToggle")==1, "BLrecoilfire")
		TNT1 A 0 A_playsound("weapons/sawfull", 1, TRUE)
		TNT1 A 0 A_StopSound(2)
		saws A 2 A_Saw
		saws A 0 a_setpitch(pitch-0.4)
		saws B 1 a_setpitch(pitch+0.2)
		saws B 1 a_setpitch(pitch+0.2)
		saws A 2 A_Saw
		saws A 0 a_setpitch(pitch-0.4)
		saws B 1 a_setpitch(pitch+0.2)
		saws B 1 a_setpitch(pitch+0.2)
    	saws B 0 A_ReFire
    	Goto Ready
	Spawn:
		TNT1 A 0 A_JumpIf(CallACS("64SawToggle")==1, "64Spawn")
		CSAW A 2
		loop
	64Spawn:
		TNT1 A 0 A_JumpIf(CallACS("64SawToggle")==0, "Spawn")
		SW64 g 2
		loop
	64Ready:
		TNT1 A 0 A_JumpIf(CallACS("64SawToggle")==0, "ready")
		TNT1 A 0 A_StopSound(1)
		TNT1 A 0 A_playsound("weapons/sawidle", 2, TRUE)
		SW64 aabbccdd 1 a_weaponready
		loop
	64Fire:
		TNT1 A 0 a_jumpif(callacs("BobToggle")==1, "bob64fire")
		TNT1 A 0 A_JumpIf(CallACS("recoiltoggle")==1, "64recoilfire")
		TNT1 A 0 A_JumpIf(CallACS("64SawToggle")==0, "fire")
		TNT1 A 0 A_StopSound(2)
		SW64 e 2 A_Saw
		SW64 f 2
		SW64 e 2 A_Saw
		SW64 f 2
    	SW64 f 0 A_ReFire
    	Goto Ready
	64RecoilFire:
		TNT1 A 0 a_jumpif(callacs("BobToggle")==1, "bob64recoilfire")
		TNT1 A 0 A_JumpIf(CallACS("64SawToggle")==0, "fire")
		TNT1 A 0 A_StopSound(2)
		SW64 E 2 A_Saw
		SW64 F 0 a_setpitch(pitch-0.4)
		SW64 F 1 a_setpitch(pitch+0.2)
		SW64 F 1 a_setpitch(pitch+0.2)
		SW64 E 2 A_Saw
		SW64 F 0 a_setpitch(pitch-0.4)
		SW64 F 1 a_setpitch(pitch+0.2)
		SW64 F 1 a_setpitch(pitch+0.2)
    	SW64 f 0 A_ReFire
    	Goto Ready
	64Deselect:
		TNT1 A 0 A_JumpIf(CallACS("64SawToggle")==0, "deselect")
		SW64 a 1 A_Lower
		Loop
    64Select:
		TNT1 A 0 A_JumpIf(CallACS("64SawToggle")==0, "select")
		SW64 a 1 A_Raise
		Loop
		
	////////////////
	//BLACK GLOVES//
	////////////////
	BLReady:
		TNT1 A 0 A_JumpIf(CallACS("64SawToggle")==1, "64ready")
		TNT1 A 0 A_JumpIf(CallACS("GloveToggle")==0, "ready")
		TNT1 A 0 A_StopSound(1)
		TNT1 A 0 A_playsound("weapons/sawidle", 2, TRUE)
		BAWG CCDDEEFF 1 A_WeaponReady 
		Loop
	BLDeselect:
		TNT1 A 0 A_JumpIf(CallACS("64SawToggle")==1, "64deselect")
		TNT1 A 0 A_JumpIf(CallACS("GloveToggle")==0, "deselect")
		BAWG C 1 A_Lower
		Loop
	BLSelect:
		TNT1 A 0 A_JumpIf(CallACS("64SawToggle")==1, "64select")
		TNT1 A 0 A_JumpIf(CallACS("GloveToggle")==0, "select")
		BAWG C 1 A_Raise
		Loop
	BLFire:
		TNT1 A 0 a_jumpif(callacs("BobToggle")==1, "bobblfire")
		TNT1 A 0 A_JumpIf(CallACS("recoiltoggle")==1, "recoilfire")
		TNT1 A 0 A_JumpIf(CallACS("GloveToggle")==0, "fire")
		TNT1 A 0 A_playsound("weapons/sawfull", 1, TRUE)
		TNT1 A 0 A_StopSound(2)
		TNT1 A 0 A_JumpIf(CallACS("64SawToggle")==1, "64fire")
		BAWG A 2 A_Saw
		BAWG B 2
		BAWG A 2 A_Saw
		BAWG B 2
    	BAWG B 0 A_ReFire
    	Goto Ready
	BLRecoilFire:
		TNT1 A 0 a_jumpif(callacs("BobToggle")==1, "bobblrecoilfire")
		TNT1 A 0 A_JumpIf(CallACS("64SawToggle")==1, "64recoilfire")
		TNT1 A 0 A_JumpIf(CallACS("GloveToggle")==0, "recoilfire")
		TNT1 A 0 A_playsound("weapons/sawfull", 1, TRUE)
		TNT1 A 0 A_StopSound(2)
		BAWG A 2 A_Saw
		BAWG A 0 a_setpitch(pitch-0.4)
		BAWG B 1 a_setpitch(pitch+0.2)
		BAWG B 1 a_setpitch(pitch+0.2)
		BAWG A 2 A_Saw
		BAWG A 0 a_setpitch(pitch-0.4)
		BAWG B 1 a_setpitch(pitch+0.2)
		BAWG B 1 a_setpitch(pitch+0.2)
    	BAWG B 0 A_ReFire
    	Goto Ready

////////////////
//BOB STATES////
////////////////
		
	bobFire:
	    TNT1 A 0 A_JumpIf(CallACS("64SawToggle")==1, "bob64fire")
		TNT1 A 0 A_JumpIf(CallACS("GloveToggle")==1, "bobblfire")
		TNT1 A 0 A_JumpIf(CallACS("recoiltoggle")==1, "bobrecoilfire")
		TNT1 A 0 A_playsound("weapons/sawfull", 1, TRUE)
		TNT1 A 0 A_StopSound(2)
		TNT1 A 0 A_JumpIf(CallACS("64SawToggle")==1, "64fire")
		TNT1 A 0 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		saws A 2 A_Saw
		TNT1 A 0 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		saws B 2
		TNT1 A 0 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		saws A 2 A_Saw
		TNT1 A 0 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		saws B 2
    	saws B 0 A_ReFire
    	Goto Ready
	bobRecoilFire:
		TNT1 A 0 A_JumpIf(CallACS("GloveToggle")==1, "bobBLrecoilfire")
		TNT1 A 0 A_JumpIf(CallACS("64SawToggle")==1, "bob64recoilfire")
		TNT1 A 0 A_playsound("weapons/sawfull", 1, TRUE)
		TNT1 A 0 A_StopSound(2)
		TNT1 A 0 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		saws A 2 A_Saw
		saws A 0 a_setpitch(pitch-0.4)
		TNT1 A 0 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		saws B 1 a_setpitch(pitch+0.2)
		TNT1 A 0 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		saws B 1 a_setpitch(pitch+0.2)
		TNT1 A 0 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		saws A 2 A_Saw
		saws A 0 a_setpitch(pitch-0.4)
		TNT1 A 0 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		saws B 1 a_setpitch(pitch+0.2)
		TNT1 A 0 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		saws B 1 a_setpitch(pitch+0.2)
    	saws B 0 A_ReFire
    	Goto Ready
	bob64Fire:
		TNT1 A 0 A_JumpIf(CallACS("recoiltoggle")==1, "bob64recoilfire")
		TNT1 A 0 A_StopSound(2)
		TNT1 A 0 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		SW64 e 2 A_Saw
		TNT1 A 0 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		SW64 f 2
		TNT1 A 0 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		SW64 e 2 A_Saw
		TNT1 A 0 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		SW64 f 2
    	SW64 f 0 A_ReFire
    	Goto Ready
	bob64RecoilFire:
		TNT1 A 0 A_StopSound(2)
		TNT1 A 0 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		SW64 E 2 A_Saw
		SW64 F 0 a_setpitch(pitch-0.4)
		TNT1 A 0 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		SW64 F 1 a_setpitch(pitch+0.2)
		TNT1 A 0 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		SW64 F 1 a_setpitch(pitch+0.2)
		TNT1 A 0 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		SW64 E 2 A_Saw
		SW64 F 0 a_setpitch(pitch-0.4)
		TNT1 A 0 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		SW64 F 1 a_setpitch(pitch+0.2)
		TNT1 A 0 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		SW64 F 1 a_setpitch(pitch+0.2)
    	SW64 f 0 A_ReFire
    	Goto Ready
		
	bobBLFire:
		TNT1 A 0 A_JumpIf(CallACS("recoiltoggle")==1, "bobblrecoilfire")
		TNT1 A 0 A_playsound("weapons/sawfull", 1, TRUE)
		TNT1 A 0 A_StopSound(2)
		TNT1 A 0 A_JumpIf(CallACS("64SawToggle")==1, "64fire")
		TNT1 A 0 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		BAWG A 2 A_Saw
		TNT1 A 0 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		BAWG B 2
		TNT1 A 0 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		BAWG A 2 A_Saw
		TNT1 A 0 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		BAWG B 2
    	BAWG B 0 A_ReFire
    	Goto Ready
	bobBLRecoilFire:
		TNT1 A 0 A_playsound("weapons/sawfull", 1, TRUE)
		TNT1 A 0 A_StopSound(2)
		TNT1 A 0 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		BAWG A 2 A_Saw
		BAWG A 0 a_setpitch(pitch-0.4)
		TNT1 A 0 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		BAWG B 1 a_setpitch(pitch+0.2)
		TNT1 A 0 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		BAWG B 1 a_setpitch(pitch+0.2)
		TNT1 A 0 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		BAWG A 2 A_Saw
		BAWG A 0 a_setpitch(pitch-0.4)
		TNT1 A 0 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		BAWG B 1 a_setpitch(pitch+0.2)
		TNT1 A 0 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		BAWG B 1 a_setpitch(pitch+0.2)
    	BAWG B 0 A_ReFire
    	Goto Ready
	}
}