Add Humanoid:Jump() Action and Remove the Automatic Jumping Function from Humanoid.Jump

As a Roblox developer it is very hard to get more control over the humanoid Jumping mechanic.
Humanoid.Jump should not execute the jump command instead it Should be set when the humanoid prepares to jump and Humanoid:Jump() Is to execute the jump action itself

Here is a use case for my development: I have an animation that plays right before the humanoid is about to jump, which works as

Humanoid.Jumping:Connect(function()
	PrepareJumpAnimation:Play()
	task.wait(1)
	Humanoid:Jump()
	
end)

That way the humanoid will always wait 1 second before it jumps

5 Likes

The code you are providing wouldn’t work regardless unless jumping didn’t make you jump by default.

Does disabling the Jumping state not work for your use case?

I don’t think a property really fits this action, but isn’t it the same thing regardless?

You can use ControllerManagers to have more precise control over character states and how jumping works

Your suggestion would not be backwards-compatible

If you really want to use a Humanoid for this, why don’t you disable the Jumping state and manually apply a jump velocity yourself based on user input?

1 Like

I think he alraedy said that it does not work. like if you remove the jumping state the it wont fire at all so he wont know when the humanoid is ready to jump