Run it
Copy the script and paste it into your executor.
-- Wall Glide (pushes the whole avatar's parts inside the wall slightly)
Players = :()
RunService = :()
UIS = :()
player = Players.LocalPlayer
()
char = player.Character player.CharacterAdded:()
hum = char:()
hrp = char:()
char, hum, hrp
char, humanoid, hrp = ()
gui = .()
gui.Name =
gui.ResetOnSpawn =
gui.IgnoreGuiInset =
gui.Parent = player:()
button = .()
button.Name =
button.Size = .(, )
button.Position = .(, , , -)
button.AnchorPoint = .(, )
button.TextScaled =
button.Text =
button.BackgroundColor3 = .(, , )
button.TextColor3 = .(, , )
button.Parent = gui
glideEnabled =
cachedWallNormal =
button.MouseButton1Click:(()
glideEnabled = glideEnabled
button.Text = glideEnabled
)
rayParams = RaycastParams.()
rayParams.FilterType = .RaycastFilterType.Blacklist
rayParams.FilterDescendantsInstances = {char}
RAY_LEN =
DEPTH_INTO_WALL =
MAX_FALL = -
(normal)
_, part (char:())
part:() part.CanCollide
part.CFrame = part.CFrame * .(normal * -DEPTH_INTO_WALL)
RunService.Heartbeat:(()
char char.Parent hrp hrp.Parent
char, humanoid, hrp = ()
rayParams.FilterDescendantsInstances = {char}
glideEnabled
cachedWallNormal =
humanoid:() ~= .HumanoidStateType.Freefall
cachedWallNormal =
result = :(hrp.Position, hrp.CFrame.LookVector * RAY_LEN, rayParams)
result result.Instance result.Instance.CanCollide
cachedWallNormal = result.Normal
(result.Normal)
v = hrp.Velocity
y = (v.Y < MAX_FALL) MAX_FALL v.Y
hrp.Velocity = .(v.X, y, v.Z)
cachedWallNormal =
)
UIS.JumpRequest:(()
glideEnabled cachedWallNormal
away = cachedWallNormal *
hrp.Velocity = hrp.Velocity + away + .(, , )
)
player.CharacterAdded:((newChar)
char = newChar
humanoid = char:()
hrp = char:()
rayParams.FilterDescendantsInstances = {char}
)Lets u glide on walls

Universal