Run it
Copy the script and paste it into your executor.
Players = :()
UserInputService = :()
player = Players.LocalPlayer
character = player.Character player.CharacterAdded:()
humanoid = character:()
animator = humanoid:()
speed =
runSpeed =
jumpPower =
canDoubleJump =
doubleJumping =
idleAnimId =
walkAnimId =
runAnimId =
jumpAnimId =
footstepSoundId =
jumpSoundId =
animateScript = player.Character:()
animateScript.idle.Animation1.AnimationId = idleAnimId
animateScript.idle.Animation2.AnimationId = idleAnimId
animateScript.walk.WalkAnim.AnimationId = walkAnimId
animateScript.run.RunAnim.AnimationId = runAnimId
animateScript.jump.JumpAnim.AnimationId = jumpAnimId
humanoid.WalkSpeed = speed
humanoid.JumpPower = jumpPower
footstepSound = .()
footstepSound.SoundId = footstepSoundId
footstepSound.Looped =
footstepSound.Parent = character:()
jumpSound = .()
jumpSound.SoundId = jumpSoundId
jumpSound.Parent = character:()
(newSpeed)
speedFactor = newSpeed / runSpeed
animator:(speedFactor)
(speed)
footstepSound.IsPlaying
footstepSound:()
footstepSound.PlaybackSpeed = speed
()
footstepSound:()
(input, gameProcessed)
input.UserInputType == .UserInputType.Keyboard
input.KeyCode == .KeyCode.LeftShift
humanoid.WalkSpeed = runSpeed
(runSpeed)
()
(input, gameProcessed)
input.UserInputType == .UserInputType.Keyboard
input.KeyCode == .KeyCode.LeftShift
humanoid.WalkSpeed = speed
(speed)
()
UserInputService.InputBegan:(onInputBegan)
UserInputService.InputEnded:(onInputEnded)
()
canDoubleJump doubleJumping
doubleJumping =
humanoid:(.HumanoidStateType.Jumping)
jumpSound:()
humanoid.StateChanged:((_, state)
state == .HumanoidStateType.Landed
canDoubleJump =
doubleJumping =
state == .HumanoidStateType.Freefall
canDoubleJump =
)
UserInputService.JumpRequest:(onJumpRequest)
humanoid.Running:((speed)
speed >
()
()
)
inspiration https://www.youtube.com/watch?v=_8u6riaMgss&list=PL9nSewb0Yf0cfdZWhiSd6wTk6XSKTnZUP&index=30 (DISABLE SHIFTLOCK TO USE) shift - run double jump