Run it
Copy the script and paste it into your executor.
UserInputService = :()
Players = :()
RunService = :()
LocalPlayer = Players.LocalPlayer
Camera = .CurrentCamera
()
UserInputService.TouchEnabled
()
ScreenGui = .()
ScreenGui.Name =
ScreenGui.ResetOnSpawn =
ScreenGui.Parent = LocalPlayer:()
()
Frame = .()
Frame.Size = .(, , , )
Frame.Position = .(, , , )
Frame.BackgroundColor3 = .(, , )
Frame.BackgroundTransparency =
Frame.BorderSizePixel =
Frame.Parent = ScreenGui
()
UIGradient = .()
UIGradient.Color = ColorSequence.{
ColorSequenceKeypoint.(, .(, , )),
ColorSequenceKeypoint.(, .(, , )),
ColorSequenceKeypoint.(, .(, , ))
}
UIGradient.Rotation =
UIGradient.Parent = Frame
Button = .()
Button.Size = .(, , , )
Button.BackgroundTransparency =
Button.Text =
Button.TextSize =
Button.TextColor3 = .(, , )
Button.Font = .Font.Code
Button.Parent = Frame
()
(()
hue = , ,
Button.TextColor3 = .(hue, , )
()
)
selectedTarget =
locked =
highlight = .()
highlight.FillColor = .(, , )
highlight.FillTransparency =
highlight.OutlineColor = .(, , )
highlight.OutlineTransparency =
cameraDistance =
cameraUpOffset =
cameraRightOffset =
dragging =
dragStart =
startPos =
UserInputService.InputBegan:((input, processed)
processed
input.UserInputType == .UserInputType.Touch
pos = input.Position
guiPos = Frame.AbsolutePosition
guiSize = Frame.AbsoluteSize
pos.X >= guiPos.X pos.X <= guiPos.X + guiSize.X pos.Y >= guiPos.Y pos.Y <= guiPos.Y + guiSize.Y
dragging =
dragStart = pos
startPos = Frame.Position
()
ray = Camera:(pos.X, pos.Y)
params = RaycastParams.()
params.FilterDescendantsInstances = {LocalPlayer.Character LocalPlayer.CharacterAdded:()}
params.FilterType = .RaycastFilterType.Exclude
result = :(ray.Origin, ray.Direction * , params)
result result.Instance
char = result.Instance:()
char char:() char:()
selectedTarget = char
targetName = Players:(char) Players:(char).Name char.Name
Button.Text = .. targetName
( .. targetName)
()
Button.Text =
)
UserInputService.InputChanged:((input, processed)
processed
input.UserInputType == .UserInputType.Touch dragging
delta = input.Position - dragStart
newPos = .(
startPos.X.Scale,
startPos.X.Offset + delta.X,
startPos.Y.Scale,
startPos.Y.Offset + delta.Y
)
Frame.Position = newPos
)
UserInputService.InputEnded:((input, processed)
input.UserInputType == .UserInputType.Touch dragging
dragging =
()
)
Button.Activated:(()
selectedTarget selectedTarget:()
locked = locked
( .. (locked))
locked
highlight.Parent = selectedTarget
Camera.CameraType = .CameraType.Scriptable
()
highlight.Parent =
Camera.CameraType = .CameraType.Custom
Camera.CameraSubject = LocalPlayer.Character LocalPlayer.Character:()
()
()
)
RunService.RenderStepped:(()
locked selectedTarget selectedTarget:() LocalPlayer.Character LocalPlayer.Character:()
playerPos = LocalPlayer.Character.HumanoidRootPart.Position
targetPos = selectedTarget.HumanoidRootPart.Position
direction = (targetPos - playerPos).Unit
rightVector = direction:(.(, , )).Unit
cameraPos = playerPos - (direction * cameraDistance) + .(, cameraUpOffset, ) + (rightVector * cameraRightOffset)
Camera.CFrame = .(cameraPos, targetPos)
)
LocalPlayer.CharacterAdded:(()
locked
locked =
highlight.Parent =
Camera.CameraType = .CameraType.Custom
Camera.CameraSubject = LocalPlayer.Character LocalPlayer.Character:()
()
)
RunService.Heartbeat:(()
locked selectedTarget selectedTarget:()
locked =
highlight.Parent =
Camera.CameraType = .CameraType.Custom
Camera.CameraSubject = LocalPlayer.Character LocalPlayer.Character:()
()
)Click on someone first and then click the WAWALOCK button (made by wawa)

Universal