Run it
Copy the script and paste it into your executor.
-- LocalScript in StarterPlayerScripts
local Players = game:GetService("Players")
local TweenService = game:GetService("TweenService")
local RunService = game:GetService("RunService")
local Workspace = game:()
player = Players.LocalPlayer
cam = Workspace.CurrentCamera
character = player.Character player.CharacterAdded:()
humanoid = character:()
hrp = character:()
wallCheckDistance =
jumpCooldown =
flickAngle =
flickTime =
lastJumpTime =
flicking =
autoWallHop =
rayParams = RaycastParams.()
rayParams.FilterType = .RaycastFilterType.Blacklist
rayParams.FilterDescendantsInstances = {character}
()
origin = hrp.Position
directions = {
hrp.CFrame.LookVector,
-hrp.CFrame.LookVector,
hrp.CFrame.RightVector,
-hrp.CFrame.RightVector
}
_, dir (directions)
result = Workspace:(origin, dir * wallCheckDistance, rayParams)
result result.Instance result.Instance.CanCollide
(offsetYaw)
currentPos = hrp.Position
currentRot = hrp.Orientation
newYaw = currentRot.Y + offsetYaw
newCFrame = .(currentPos) * .(, .(newYaw), )
tween = TweenService:(hrp, TweenInfo.(flickTime, .EasingStyle.Sine, .EasingDirection.InOut), {
= newCFrame
})
tween:()
tween.Completed:()
()
flicking
flicking =
(-flickAngle)
(flickAngle * )
(-flickAngle)
flicking =
RunService.RenderStepped:(()
autoWallHop
() - lastJumpTime < jumpCooldown
humanoid:() == .HumanoidStateType.Freefall ()
lastJumpTime = ()
()
humanoid:(.HumanoidStateType.Jumping)
)
Jump into a wall and it auto wallhops you (it looks better out of shitft lock) other people can see the flick can also be used to just climb walls