local m=game:GetService("\085\115\101\114\073\110\112\117\116\083\101\114\118\105\099\101")local U=game.Players.LocalPlayer local q local n local s=false local Q=false local J TIME_BETWEEN_JUMPS=.1 local h=1.5 function onJumpRequest()if not q or not n or not q:IsDescendantOf(workspace)or n:GetState()==Enum.HumanoidStateType.Dead then return end if s and not Q then Q=true n.JumpPower=oldPower*h n:ChangeState(Enum.HumanoidStateType.Jumping)end end local function K(m)q=m n=m:WaitForChild("\072\117\109\097\110\111\105\100")Q=false s=false oldPower=n.JumpPower n.StateChanged:connect(function(m,U)if U==Enum.HumanoidStateType.Landed then s=false Q=false n.JumpPower=oldPower elseif U==Enum.HumanoidStateType.Freefall then wait(TIME_BETWEEN_JUMPS)s=true end end)end if U.Character then K(U.Character)end U.CharacterAdded:connect(K)m.JumpRequest:connect(onJumpRequest)
-- DOUBLE JUMPING SCRIPT --

local UserInputService = game:GetService("UserInputService")
local localPlayer = game.Players.LocalPlayer
local character
local humanoid

local canDoubleJump = false
local hasDoubleJumped = false
local oldPowerlocal
TIME_BETWEEN_JUMPS = 0.1
local DOUBLE_JUMP_POWER_MULTIPLIER = 1.5

function onJumpRequest()
	if
		not character
		or not humanoid
		or not character:IsDescendantOf(workspace)
		or humanoid:GetState() == Enum.HumanoidStateType.Dead
	then
		return
	end

	if canDoubleJump and not hasDoubleJumped then
		hasDoubleJumped = true
		humanoid.JumpPower = oldPower * DOUBLE_JUMP_POWER_MULTIPLIER
		humanoid:ChangeState(Enum.HumanoidStateType.Jumping)
	end
end

local function characterAdded(newCharacter)
	character = newCharacter
	humanoid = newCharacter:WaitForChild("Humanoid")
	hasDoubleJumped = false
	canDoubleJump = false
	oldPower = humanoid.JumpPower
	humanoid.StateChanged:connect(function(old, new)
		if new == Enum.HumanoidStateType.Landed then
			canDoubleJump = false
			hasDoubleJumped = false
			humanoid.JumpPower = oldPower
		elseif new == Enum.HumanoidStateType.Freefall then
			wait(TIME_BETWEEN_JUMPS)
			canDoubleJump = true
		end
	end)
end

if localPlayer.Character then
	characterAdded(localPlayer.Character)
end

localPlayer.CharacterAdded:connect(characterAdded)
UserInputService.JumpRequest:connect(onJumpRequest)
