Disabling Jump without setting JumpPower to 0?

Hey is there a reliable way to prevent someone from jumping without setting JumpPower to 0? I tried humanoid state types, but it doesn’t work that well. Using .Anchored works, but the problem is that it makes the human looks like its floating if they jump prior to the no jump script. Lastly, Humanoid.Jump is just completely unreliable. Any help would be appreciated thanks. Btw I do know that I can share the JumpPower, but it’s the longer way for me :stuck_out_tongue:

Hello I can help you.

Make sure these properties are set to this in StarterPlayer. It will completely disable jumping.

5 Likes

I believe you can unbind the "jumpAction" using ContextActionService.

local ContextActionService = game:GetService("ContextActionService")

ContextActionService:UnbindAction("jumpAction")
1 Like

Looks interesting, but on my screen it’s JumpPower lol. I don’t see a jump height option.

It will only show once you turn off “CharacterUseJumpPower”

That kind of replaces JumpPower lol(another measurement of the the same thing)I kinda am looking for a way to use two ways to disable at once. Thanks for the help though!

1 Like

Works great! Is there a way to “re-bind” it somehow? I am aiming to turn it on and off in game. I never used Bind Actions before. I tried ContextAction:BindAction(“jumpAction”), but it does not work lol.

I would personally use UserInputService.JumpRequest

Just set the Humanoid’s State to Jumping true/false

UserInputService.JumpRequest:Connect(function()
	if not CanJump then -- just random a variable I picked out
		if character.Humanoid.FloorMaterial == Enum.Material.Air then return end -- Prevent mid air jumps
		character.Humanoid:ChangeState(Enum.HumanoidStateType.Jumping) --Making the character jump
	else
		character.Humanoid:SetStateEnabled(Enum.HumanoidStateType.Jumping, false)
	end
end)
17 Likes

Works really well thanks dude!

1 Like

We all appreciate your help but it would help more if you read the title of this post more carefully!