ACTOR Rifle : Pistol
{
inventory.pickupmessage "You got the Rifle!"
decal "bulletchip"
+CHEATNOTWEAPON
	states
	{
	Spawn:
		Rifl a -1
		stop
	Ready:
		TNT1 A 0 A_JumpIf(CallACS("SkinToggler")==1, "64ready")
		TNT1 A 0 A_JumpIf(CallACS("SkinToggler")==2, "BLready")
		RIF2 A 1 A_WeaponReady
		Loop
	Deselect:
		TNT1 A 0 A_JumpIf(CallACS("SkinToggler")==1, "64deselect")
		TNT1 A 0 A_JumpIf(CallACS("SkinToggler")==2, "BLdeselect")
		RIF2 A 1 A_Lower
		Loop
	Select:
		TNT1 A 0 A_JumpIf(CallACS("SkinToggler")==1, "64select")
		TNT1 A 0 A_JumpIf(CallACS("SkinToggler")==2, "BLselect")
		RIF2 A 1 A_Raise
		Loop
		
	Fire:
		TNT1 A 0 a_jumpif(callacs("BobToggle")==1, "BobFire")
		TNT1 A 0 A_JumpIf(CallACS("SkinToggler")==1, "64fire")
		TNT1 A 0 A_JumpIf(CallACS("SkinToggler")==2, "BLFire")
		
		RIF2 A 1
		RIF2 B 1
		RIF2 C 2 bright A_FirePistol 
			//casing check
			tnt1 a 0 A_JumpIf(CallACS("CasingToggle")==0, +2)
			TNT1 A 0 A_spawnitemex ("bulletcasing", 40, 0, 25, random(0,2), random(4,6), random(3,5), 0)

		RIF2 D 2 bright
		RIF2 E 2		
		RIF2 F 2
		RIF2 G 2  A_ReFire
		RIF2 H 1
		RIF2 A 2
		Goto Ready
		
	BobFire:
		TNT1 A 0 A_JumpIf(CallACS("SkinToggler")==1, "64Fire")
		TNT1 A 0 A_JumpIf(CallACS("SkinToggler")==2, "BLFire")
		
		RIF2 AB 1 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		TNT1 A 0 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		RIF2 C 2 bright A_FirePistol 
		TNT1 A 0 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
			//casing check
			tnt1 a 0 A_JumpIf(CallACS("CasingToggle")==0, +2)
			TNT1 A 0 A_spawnitemex ("bulletcasing", 40, 0, 25, random(0,2), random(4,6), random(3,5), 0)

		RIF2 D 2 bright
		RIF2 EF 2 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)		
		TNT1 A 0 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		RIF2 G 2  A_ReFire 
		RIF2 H 1 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		RIF2 A 2 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		Goto Ready
		
	Flash:
		TNT1 A 0 a_jumpif(callacs("skintoggler")==1, "64flash")
		TNT1 A 0 A_JumpIf(CallACS("RecoilToggle")==1, "Kickflash")
		TNT1 B 2 Bright A_Light2
		TNT1 A 1 Bright A_Light1
		Goto LightDone
		
	KickFlash:
		TNT1 B 2 Bright A_Light2
		TNT1 A 1 Bright A_Light1
		TNT1 a 1 a_setpitch(pitch+0.3)
		TNT1 a 1 a_setpitch(pitch-0.1)
		TNT1 a 2 a_setpitch(pitch-0.1)
		TNT1 a 2 a_setpitch(pitch-0.05)
		TNT1 a 2 a_setpitch(pitch-0.05)
		Goto LightDone
		
		
	/////////////////////
	//BLACK GLOVE RIFLE//
	/////////////////////
	
	blReady:
		RIFB A 1 A_WeaponReady
		Loop
	blDeselect:
		RIFB A 1 A_Lower
		Loop
	blSelect:
		RIFB A 1 A_Raise
		Loop
	blFire:
		TNT1 A 0 a_jumpif(callacs("BobToggle")==1, "BobblFire")

		RIFB A 1
		RIFB B 1
		RIFB C 2 bright A_FirePistol 
		
			//casing check		
			tnt1 a 0 A_JumpIf(CallACS("CasingToggle")==0, +2)
			TNT1 A 0 A_spawnitemex ("bulletcasing", 40, 0, 25, random(0,2), random(4,6), random(3,5), 0)

		RIFB D 2 bright
		RIFB E 2		
		RIFB F 2
		RIFB G 2  A_ReFire
		RIFB H 1
		RIFB A 2
		Goto Ready
		
	BobblFire:
		TNT1 A 0 A_JumpIf(CallACS("RecoilToggle")==1, "BobBlRecoilFire")
		
		RIFB AB 1 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		TNT1 A 0 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		RIFB C 2 bright A_FirePistol 
		TNT1 A 0 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
			//casing check
			tnt1 a 0 A_JumpIf(CallACS("CasingToggle")==0, +2)
			TNT1 A 0 A_spawnitemex ("bulletcasing", 40, 0, 25, random(0,2), random(4,6), random(3,5), 0)

		RIFB D 2 bright
		RIFB EF 2 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)		
		TNT1 A 0 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		RIFB G 2  A_ReFire 
		RIFB H 1 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		RIFB A 2 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		Goto Ready
		
		
/////////////////////
//NINTENDO 64 RIFLE//
/////////////////////
	64Ready:
		TNT1 A 0 A_JumpIf(CallACS("SkinToggler")==2, "BLready")
		RI64 A 1 A_WeaponReady
		Loop
	64Deselect:
		TNT1 A 0 A_JumpIf(CallACS("SkinToggler")==2, "BLdeselect")
		RI64 A 1 A_Lower
		Loop
	64Select:
		TNT1 A 0 A_JumpIf(CallACS("SkinToggler")==2, "BLselect")
		RI64 A 1 A_Raise
		Loop
	64Fire:
		TNT1 A 0 a_jumpif(callacs("BobToggle")==1, "64BobFire")
		RI64 A 2
		RI64 B 1 bright A_FirePistol 
		RI64 C 1 bright 
		
			//casing check
			tnt1 a 0 A_JumpIf(CallACS("CasingToggle")==0, +2)
			TNT1 A 0 A_spawnitemex ("bulletcasing", 40, 0, 25, random(0,2), random(4,6), random(3,5), 0)

		RI64 D 2 bright
		RI64 E 2		
		RI64 F 2
		RI64 G 2  A_ReFire
		RI64 H 1
		RI64 A 2
		Goto Ready
	
		
	64BobFire:	
		TNT1 A 0 A_JumpIf(CallACS("RecoilToggle")==1, "64bobRecoilFire")
		RI64 A 2 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		TNT1 A 0 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		RI64 B 1 bright A_FirePistol 
		TNT1 A 0 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		RI64 C 1 bright
		TNT1 A 0 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)

			//casing check
			tnt1 a 0 A_JumpIf(CallACS("CasingToggle")==0, +2)
			TNT1 A 0 A_spawnitemex ("bulletcasing", 40, 0, 25, random(0,2), random(4,6), random(3,5), 0)

		RI64 D 2 bright
		RI64 EF 2 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)		
		TNT1 A 0 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		RI64 G 2  A_ReFire 
		RI64 H 1 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		RI64 A 2 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		Goto Ready

	
	64Flash:
		TNT1 a 2 Bright A_Light2
		TNT1 a 1 Bright A_Light1
		Goto LightDone
		
	64Flash:
		TNT1 A 0 A_JumpIf(CallACS("RecoilToggle")==1, "64Kickflash")
		TNT1 B 2 Bright A_Light2
		TNT1 A 1 Bright A_Light1
		Goto LightDone
		
	64KickFlash:
		TNT1 B 2 Bright A_Light2
		TNT1 A 1 Bright A_Light1
		TNT1 a 1 a_setpitch(pitch+0.3)
		TNT1 a 1 a_setpitch(pitch-0.1)
		TNT1 a 2 a_setpitch(pitch-0.1)
		TNT1 a 2 a_setpitch(pitch-0.05)
		TNT1 a 2 a_setpitch(pitch-0.05)
		Goto LightDone
		}
}