BHop Script Detector

I’m working on a BHop script detector for my Deathrun server but I’m having problems with NWBool. As far as I know, NW functions can be access on both client and server side. However I can’t access the client side values I’ve set with NWBool from the server-side.



if SERVER then

	function checkExcessJump()
	
		for _,v in ipairs(player.GetAll()) do
			if v:GetNWInt("jumpCount") > 100 then
				v:SetNWBool("excessJump", true)
			//else
			//	v:SetNWBool("excessJump", false)
			end
		end
		
	
	end
	//timer.Create("checkExcessJump", 0.1, 0, checkExcessJump)




	function printExcessJump()
	
		for _,v in ipairs(player.GetAll()) do
			if v:GetNWBool("excessJump") == true then
				v:ChatPrint("Excess jump.")
			end
		end
			
						
	
	end
	timer.Create("printExcessJump", 0.5, 0, printExcessJump)
	




end



if CLIENT then

	function checkJumpBind(ply, bind, pressed)
	
		if bind == "+jump" then
			if ply:GetNWBool("resetJumpTimerActive") == false then
				ply:SetNWInt("jumpCount", ply:GetNWInt("jumpCount",0)+1)
			//	ply:ChatPrint("Jumped " .. ply:GetNWInt("jumpCount") .. " times.")
			end
		end
		
	end
	hook.Add("PlayerBindPress", "checkBindPress", checkJumpBind)
		

	function resetJumpCount_Cl()
	
		local ply = LocalPlayer()
		
		ply:SetNWBool("resetJumpTimerActive", true)
		ply:SetNWInt("jumpCount", 0)
		//ply:ChatPrint("Jump counter reset.")
		//timer.Simple(0.1, function()
			ply:SetNWBool("resetJumpTimerActive", false)
			//end)
			
		if ply:GetNWBool("excessJump") == true then
			ply:SetNWBool("excessJump", false)
		end
		
	end
	timer.Create("resetJumpCount_Cl", 5, 0, resetJumpCount_Cl)
	
	
	function checkExcessJump_Cl()
	
		local ply = LocalPlayer()
	
			if ply:GetNWInt("jumpCount") > 100 then
				ply:SetNWBool("excessJump", true)
			//else
			//	v:SetNWBool("excessJump", false)
			end
		
		
	
	end
	timer.Create("checkExcessJump_Cl", 0.1, 0, checkExcessJump_Cl)
	
	
	function drawValues()
	
		local ply = LocalPlayer()
		local exc = tostring(ply:GetNWBool("excessJump"))
		local jump = tostring(ply:GetNWInt("jumpCount"))
		local reset = tostring(ply:GetNWBool("resetJumpTimerActive"))
		
		local WHITE = Color(255,255,255,255)
		
		draw.SimpleText( "Excess = "..exc, "Deathrun_Smooth", ScrW() - 15, ScrH() - 10, WHITE, TEXT_ALIGN_RIGHT, TEXT_ALIGN_TOP )
		draw.SimpleText( "JumpCount = "..jump, "Deathrun_Smooth", ScrW() - 15, ScrH() - 30, WHITE, TEXT_ALIGN_RIGHT, TEXT_ALIGN_TOP )
		//draw.SimpleText( "Reset = "..reset, "Deathrun_Smooth", ScrW() - 15, ScrH() - 30, WHITE, TEXT_ALIGN_RIGHT, TEXT_ALIGN_TOP )

	end
	hook.Add("HUDPaint", "drawValues", drawValues)





end


Any help would be appreciated.