ACTOR BloxPlasmaRifle : PlasmaRifle replaces PlasmaRifle
{
   	States
   	{
	Fire:
		TNT1 A 0 a_jumpif(callacs("BobToggle")==1, "bobfire")
		TNT1 A 0 A_JumpIf(CallACS("GloveToggle")==1, "BLfire")
		TNT1 A 0 A_JumpIf(CallACS("recoiltoggle")==1, "recoilfire")
		PLSF F 1 Bright A_FirePlasma
		PLSF E 2 Bright
		TNT1 A 0 A_ReFire("fire2")
		PKPL a 1 Bright
		PKPL bbc 1
		PKPL cde 1
		PKPL e 6
		PKPL EEDC 2
		PKPL BA 1
		Goto Ready
	Fire2:
		PLSF C 1 Bright A_FirePlasma
		PLSF CD 1 Bright 
		PLSF a 0 a_refire("fire3")
		goto fire+4
	Fire3:
		PLSF D 1 Bright A_FirePlasma
		PLSF EF 1 Bright 
		PLSF a 0 a_refire("fire")
		goto fire+4
	Flash:
      	TNT1 A 1 A_Light1
      	Goto LightDone
	
		Bumper:
		TNT1 A 0
		stop

	RecoilFire:
		TNT1 A 0 A_JumpIf(CallACS("GloveToggle")==1, "BLrecoilfire")
		TNT1 A 0 a_jumpif(callacs("BobToggle")==1, "bobfire")
		TNT1 A 0 A_JumpIf(CallACS("GloveToggle")==1, "BLfire")
		PLSF F 1 Bright A_FirePlasma
		PLSF F 0 bright a_setpitch(pitch-0.6)
		PLSF E 1 Bright a_setpitch(pitch+0.3)
		PLSF E 1 Bright a_setpitch(pitch+0.3)
		TNT1 A 0 A_ReFire("recoilfire2")
		PKPL a 1 Bright
		PKPL bc 2
		PKPL d 1
		PKPL e 7
		PKPL E 4
		PKPL DC 2
		PKPL BA 1
		Goto Ready
	RecoilFire2:
		PLSF C 1 Bright A_FirePlasma
		PLSF F 0 bright a_setpitch(pitch-0.6)
		PLSF E 0 Bright a_setpitch(pitch+0.3)
		PLSF E 0 Bright a_setpitch(pitch+0.3)
		PLSF DC 1 bright 
		PLSF a 0 a_refire("recoilfire3")
		goto fire+4
	RecoilFire3:
		PLSF D 1 Bright A_FirePlasma
		PLSF F 0 bright a_setpitch(pitch-0.6)
		PLSF E 0 Bright a_setpitch(pitch+0.3)
		PLSF E 0 Bright a_setpitch(pitch+0.3)
		PLSF EF 1 bright
		PLSF a 0 a_refire("recoilfire")
		goto fire+4	
		
		Bumper:
		TNT1 A 0
		stop
		
	blFire:
		TNT1 A 0 a_jumpif(callacs("BobToggle")==1, "bobblfire")
		TNT1 A 0 A_JumpIf(CallACS("GloveToggle")==0, "fire")
		TNT1 A 0 A_JumpIf(CallACS("recoiltoggle")==1, "blrecoilfire")
		PLSF F 1 Bright A_FirePlasma
		PLSF E 2 Bright
		TNT1 A 0 A_ReFire("blfire2")
		PKPL a 1 Bright
		BKPL bbccde 1
		BKPL e 6
		BKPL EEDC 2
		BKPL B 1
		PKPL A 1
		Goto Ready
	blFire2:
		PLSF C 1 Bright A_FirePlasma
		PLSF CD 1 Bright 
		PLSF a 0 a_refire("blfire3")
		goto blfire+4
	blFire3:
		PLSF D 1 Bright A_FirePlasma
		PLSF EF 1 Bright 
		PLSF a 0 a_refire("blfire")
		goto blfire+4
		
		Bumper:
		TNT1 A 0
		stop
		
	blrecoilFire:
		TNT1 A 0 a_jumpif(callacs("BobToggle")==1, "bobblfire")
		TNT1 A 0 A_JumpIf(CallACS("GloveToggle")==0, "fire")
		TNT1 A 0 A_JumpIf(CallACS("recoiltoggle")==0, "blfire")
		PLSF F 1 Bright A_FirePlasma
		PLSF F 1 Bright a_setpitch(pitch-0.6)
		PLSF E 1 Bright a_setpitch(pitch+0.3)
		PLSF E 1 Bright a_setpitch(pitch+0.3)
		TNT1 A 0 A_ReFire("blfire2")
		PKPL a 1 Bright
		BKPL bbccde 1
		BKPL e 6
		BKPL EEDC 2
		BKPL B 1
		PKPL A 1
		Goto Ready
	blrecoilFire2:
		PLSF C 1 Bright A_FirePlasma
		PLSF F 0 bright a_setpitch(pitch-0.6)
		PLSF E 0 Bright a_setpitch(pitch+0.3)
		PLSF E 0 Bright a_setpitch(pitch+0.3)
		PLSF CD 1 Bright 
		PLSF a 0 a_refire("blrecoilfire3")
		goto blfire+4
	blrecoilFire3:
		PLSF D 1 Bright A_FirePlasma
		PLSF F 0 bright a_setpitch(pitch-0.6)
		PLSF E 0 Bright a_setpitch(pitch+0.3)
		PLSF E 0 Bright a_setpitch(pitch+0.3)
		PLSF EF 1 Bright 
		PLSF a 0 a_refire("blrecoilfire")
		goto blfire+4
		
		Bumper:
		TNT1 A 0
		stop
		


//////////////////
////BOB STATES////
//////////////////	

	bobFire:
		TNT1 A 0 a_jumpif(callacs("BobToggle")==0, "fire")
		TNT1 A 0 A_JumpIf(CallACS("GloveToggle")==1, "bobBLfire")
		TNT1 A 0 A_JumpIf(CallACS("recoiltoggle")==1, "bobrecoilfire")
		TNT1 A 0 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		PLSF F 1 Bright A_FirePlasma
		TNT1 A 0 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		PLSF E 2 Bright
		TNT1 A 0 A_ReFire("bobfire2")
		TNT1 A 0 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		PKPL a 1 Bright
		TNT1 A 0 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		PKPL b 2
		TNT1 A 0 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		PKPL c 2
		TNT1 A 0 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		PKPL d 1
		TNT1 A 0 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		PKPL e 7
		TNT1 A 0 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		PKPL E 4
		TNT1 A 0 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		PKPL D 2
		TNT1 A 0 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		PKPL C 2
		TNT1 A 0 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		PKPL B 1
		TNT1 A 0 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		PKPL A 1
		Goto Ready
	bobFire2:
		PLSF C 1 Bright A_FirePlasma
		TNT1 A 0 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		PLSF C 1 bright
		TNT1 A 0 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		PLSF D 1 Bright 
		PLSF a 0 a_refire("bobfire3")
		goto bobfire+5
	bobFire3:
		PLSF D 1 Bright A_FirePlasma
		TNT1 A 0 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		PLSF E 1 bright
		TNT1 A 0 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		PLSF F 1 Bright 
		PLSF a 0 a_refire("bobfire")
		goto bobfire+5
		
		Bumper:
		TNT1 A 0
		stop

	bobRecoilFire:
		TNT1 A 0 A_JumpIf(CallACS("GloveToggle")==1, "bobrecoilblfire")
		TNT1 A 0 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		PLSF F 1 Bright A_FirePlasma
		PLSF F 0 bright a_setpitch(pitch-0.6)
		TNT1 A 0 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		PLSF E 1 Bright a_setpitch(pitch+0.3)
		TNT1 A 0 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		PLSF E 1 Bright a_setpitch(pitch+0.3)
		TNT1 A 0 A_ReFire("bobrecoilfire2")
		TNT1 A 0 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		PKPL a 1 Bright
		TNT1 A 0 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		PKPL b 2
		TNT1 A 0 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		PKPL c 2
		TNT1 A 0 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		PKPL d 1
		TNT1 A 0 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		PKPL e 7
		TNT1 A 0 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		PKPL E 4
		TNT1 A 0 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		PKPL D 2
		TNT1 A 0 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		PKPL C 2
		TNT1 A 0 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		PKPL B 1
		TNT1 A 0 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		PKPL A 1
		Goto Ready
	bobRecoilFire2:
		PLSF C 1 Bright A_FirePlasma
		PLSF F 0 bright a_setpitch(pitch-0.6)
		TNT1 A 0 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		PLSF C 1 bright a_setpitch(pitch+0.3)
		TNT1 A 0 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		PLSF D 1 Bright  a_setpitch(pitch+0.3)
		PLSF a 0 a_refire("bobrecoilfire3")
		goto bobfire+5
	bobRecoilFire3:
		PLSF D 1 Bright A_FirePlasma
		PLSF F 0 bright a_setpitch(pitch-0.6)
		TNT1 A 0 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		PLSF E 1 bright a_setpitch(pitch+0.3)
		TNT1 A 0 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		PLSF F 1 Bright  a_setpitch(pitch+0.3)
		PLSF a 0 a_refire("bobrecoilfire")
		goto bobfire+5
		
		Bumper:
		TNT1 A 0
		stop
		
	bobblFire:
		TNT1 A 0 a_jumpif(callacs("BobToggle")==0, "blfire")
		TNT1 A 0 A_JumpIf(CallACS("GloveToggle")==0, "bobfire")
		TNT1 A 0 A_JumpIf(CallACS("recoiltoggle")==1, "bobrecoilblfire")
		TNT1 A 0 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		PLSF F 1 Bright A_FirePlasma
		TNT1 A 0 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		PLSF E 2 Bright
		TNT1 A 0 A_ReFire("bobblfire2")
		TNT1 A 0 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		PKPL a 1 Bright
		TNT1 A 0 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		BKPL b 2
		TNT1 A 0 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		BKPL c 2
		TNT1 A 0 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		BKPL d 1
		TNT1 A 0 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		BKPL e 7
		TNT1 A 0 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		BKPL E 4
		TNT1 A 0 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		BKPL D 2
		TNT1 A 0 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		BKPL C 2
		TNT1 A 0 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		BKPL B 1
		TNT1 A 0 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		PKPL A 1
		Goto Ready
	bobblFire2:
		PLSF C 1 Bright A_FirePlasma
		TNT1 A 0 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		PLSF C 1 bright
		TNT1 A 0 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		PLSF D 1 Bright 
		PLSF a 0 a_refire("bobblfire3")
		goto bobblfire+5
	bobblFire3:
		PLSF D 1 Bright A_FirePlasma
		TNT1 A 0 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		PLSF E 1 bright
		TNT1 A 0 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		PLSF F 1 Bright 
		PLSF a 0 a_refire("bobblfire")
		goto bobblfire+5
		
		Bumper:
		TNT1 A 0
		stop
		
	bobRecoilblFire:
		TNT1 A 0 A_JumpIf(CallACS("GloveToggle")==0, "bobrecoilfire")
		TNT1 A 0 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		PLSF F 1 Bright A_FirePlasma
		PLSF F 0 bright a_setpitch(pitch-0.6)
		TNT1 A 0 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		PLSF E 1 Bright a_setpitch(pitch+0.3)
		TNT1 A 0 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		PLSF E 1 Bright a_setpitch(pitch+0.3)
		TNT1 A 0 A_ReFire("bobrecoilblfire2")
		TNT1 A 0 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		PKPL a 1 Bright
		TNT1 A 0 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		BKPL b 2
		TNT1 A 0 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		BKPL c 2
		TNT1 A 0 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		BKPL d 1
		TNT1 A 0 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		BKPL e 7
		TNT1 A 0 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		BKPL E 4
		TNT1 A 0 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		BKPL D 2
		TNT1 A 0 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		BKPL C 2
		TNT1 A 0 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		BKPL B 1
		TNT1 A 0 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		PKPL A 1
		Goto Ready
	bobRecoilblFire2:
		TNT1 A 0 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		PLSF C 1 Bright A_FirePlasma
		TNT1 A 0 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		PLSF F 0 bright a_setpitch(pitch-0.6)
		TNT1 A 0 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		PLSF C 1 bright a_setpitch(pitch+0.3)
		TNT1 A 0 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		PLSF D 1 Bright  a_setpitch(pitch+0.3)
		PLSF a 0 a_refire("bobrecoilblfire3")
		goto bobRecoilblfire+3
	bobRecoilblFire3:
		TNT1 A 0 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		PLSF D 1 Bright A_FirePlasma
		TNT1 A 0 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		PLSF F 0 bright a_setpitch(pitch-0.6)
		TNT1 A 0 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		PLSF E 1 bright a_setpitch(pitch+0.3)
		TNT1 A 0 A_WeaponReady(WRF_NoFire|WRF_NoSwitch)
		PLSF F 1 Bright  a_setpitch(pitch+0.3)
		PLSF a 0 a_refire("bobrecoilblfire")
		goto bobRecoilblfire+3
   	}
}