Run it
Copy the script and paste it into your executor.
oldGui = :():() :().LocalPlayer.PlayerGui:()
oldGui oldGui:()
UserInputService = :()
RunService = :()
camera = .CurrentCamera
player = .Players.LocalPlayer
targetParent = :() player:()
ScreenGui = .()
ScreenGui.Name =
ScreenGui.ResetOnSpawn =
ScreenGui.Parent = targetParent
button = .()
button.Name =
button.Size = .(, , , )
button.Position = .(, -, , )
button.BackgroundColor3 = .(, , )
button.Text =
button.TextColor3 = .(, , )
button.Font = .Font.SourceSansBold
button.TextSize =
button.BorderSizePixel =
button.ZIndex =
button.Parent = ScreenGui
UICorner = .()
UICorner.CornerRadius = .(, )
UICorner.Parent = button
UIStroke = .()
UIStroke.Color = .(, , )
UIStroke.Thickness =
UIStroke.Parent = button
isFrozen =
frozenCFrame =
cameraLoop =
()
isFrozen =
cameraLoop
cameraLoop:()
cameraLoop =
camera.CameraType = .CameraType.Custom
button.Text =
UIStroke.Color = .(, , )
()
isFrozen =
frozenCFrame = camera.CFrame
button.Text =
UIStroke.Color = .(, , )
cameraLoop = RunService.RenderStepped:(()
isFrozen
camera.CameraType = .CameraType.Scriptable
camera.CFrame = frozenCFrame
)
button.MouseButton1Click:(()
isFrozen
()
()
)
dragging =
dragInput, dragStart, startPos
button.InputBegan:((input)
input.UserInputType == .UserInputType.MouseButton1 input.UserInputType == .UserInputType.Touch
dragging =
dragStart = input.Position
startPos = button.Position
input.Changed:(()
input.UserInputState == .UserInputState.End
dragging =
)
)
button.InputChanged:((input)
input.UserInputType == .UserInputType.MouseMovement input.UserInputType == .UserInputType.Touch
dragInput = input
)
UserInputService.InputChanged:((input)
input == dragInput dragging
delta = input.Position - dragStart
button.Position = .(
startPos.X.Scale,
startPos.X.Offset + delta.X,
startPos.Y.Scale,
startPos.Y.Offset + delta.Y
)
)
Idk freezecamera

Universal