Run it
Copy the script and paste it into your executor.
Players = :()
RunService = :()
UserInputService = :()
camera = .CurrentCamera
player = Players.LocalPlayer
_, v (player.PlayerGui:()) v.Name == v:()
camera:() camera.DroneBlur:()
camera:() camera.FlashlightModel:()
active =
flashlightActive =
speed, fov, vigIntensity = , ,
currentVelocity = .(,,)
dronePos = camera.CFrame.Position
camRot = .(, )
moveVec = .(, , )
isInteractingUI =
tiltAngle =
lastRot = .(,)
Gui = .(, player.PlayerGui)
Gui.Name = ; Gui.IgnoreGuiInset = ; Gui.ResetOnSpawn =
Blur = .(, camera)
Blur.Name = ; Blur.Size =
Overlay = .(, Gui)
Overlay.Size = .(, , , ); Overlay.BackgroundTransparency = ; Overlay.Visible =
(pos, size, parent)
l = .(, parent); l.Position = pos; l.Size = size; l.BackgroundColor3 = .(, , ); l.BorderSizePixel = ; l.ZIndex =
bS, bT = ,
(.(, , , ), .(, bS, , bT), Overlay)
(.(, , , ), .(, bT, , bS), Overlay)
(.(, --bS, , ), .(, bS, , bT), Overlay)
(.(, -, , ), .(, bT, , bS), Overlay)
(.(, , , -), .(, bS, , bT), Overlay)
(.(, , , --bS), .(, bT, , bS), Overlay)
(.(, --bS, , -), .(, bS, , bT), Overlay)
(.(, -, , --bS), .(, bT, , bS), Overlay)
Crosshair = .(, Overlay)
Crosshair.Size = .(, , , ); Crosshair.Position = .(, -, , -); Crosshair.BackgroundTransparency =
cS, cT = ,
(.(,,,), .(,cS,,cT), Crosshair); (.(,,,), .(,cT,,cS), Crosshair)
(.(,-cS,,), .(,cS,,cT), Crosshair); (.(,-cT,,), .(,cT,,cS), Crosshair)
(.(,,,-cT), .(,cS,,cT), Crosshair); (.(,,,-cS), .(,cT,,cS), Crosshair)
(.(,-cS,,-cT), .(,cS,,cT), Crosshair); (.(,-cT,,-cS), .(,cT,,cS), Crosshair)
(txt, pos, align, size)
l = .(, Overlay); l.Size = .(, , , ); l.Position = pos; l.BackgroundTransparency = ; l.TextColor3 = .(, , ); l.Text = txt; l.Font = .Font.Code; l.TextSize = size ; l.TextXAlignment = align; l.ZIndex = ; l
(, .(, , , ), , )
timeStatus = (, .(, -, , ), )
dateStamp = (, .(, , , -), , )
fCounter = (, .(, -, , -), )
vigGradients = {}
(size, pos, rot)
f = .(, Overlay); f.Size = size; f.Position = pos; f.BorderSizePixel = ; f.BackgroundColor3 = .(,,)
g = .(, f); g.Rotation = rot; .(vigGradients, g)
(.(,,,), .(,,,), ); (.(,,,), .(,,,-), -)
(.(,,,), .(,,,), ); (.(,,,), .(,-,,), )
(p)
vigIntensity = p
_, g (vigGradients) g.Transparency = NumberSequence.({NumberSequenceKeypoint.(, - vigIntensity), NumberSequenceKeypoint.(, )})
Controls = .(, Gui); Controls.Size = .(, , , ); Controls.BackgroundTransparency = ; Controls.Visible =
Menu = .(, Gui); Menu.Size = .(, , , ); Menu.Position = .(, -, , ); Menu.BackgroundColor3 = .(,,); Menu.BackgroundTransparency = ; Menu.Visible = ; Menu.ZIndex = ; .(, Menu)
(y, label, start, cb)
l = .(, Menu); l.Size = .(,,,); l.Position = .(,,,y); l.Text = label; l.TextColor3 = .(,,); l.BackgroundTransparency = ; l.TextSize = ; l.Font = .Font.Code; l.ZIndex =
bar = .(, Menu); bar.Size = .(, , , ); bar.Position = .(, , , y+); bar.BackgroundColor3 = .(,,); bar.ZIndex =
k = .(, bar); k.Size = .(, , , ); k.Position = .(start, -, , -); k.Text = ; k.ZIndex = ; .(, k).CornerRadius = .(,)
drag =
k.InputBegan:((i) i.UserInputType == .UserInputType.Touch i.UserInputType == .UserInputType.MouseButton1 drag = ; isInteractingUI = )
UserInputService.InputEnded:((i) i.UserInputType == .UserInputType.Touch i.UserInputType == .UserInputType.MouseButton1 drag = ; isInteractingUI = )
RunService.RenderStepped:(() drag p = .((UserInputService:().X - bar.AbsolutePosition.X) / bar.AbsoluteSize.X, , ) k.Position = .(p, -, , -); (p) )
(, , , (p) speed = + ( * p) )
(, , , (p) fov = + ( * p) )
(, , , updateVig); ()
LightModel = .(); LightModel.Transparency = ; LightModel.Anchored = ; LightModel.CanCollide = ; LightModel.Parent = camera
Core = .(, LightModel); Core.Brightness = ; Core.Range = ; Core.Angle = ; Core.Enabled =
Ring = .(, LightModel); Ring.Brightness = ; Ring.Range = ; Ring.Angle = ; Ring.Enabled =
LightBtn = .(, Menu); LightBtn.Size = .(, , , ); LightBtn.Position = .(, , , ); LightBtn.Text = ; LightBtn.Font = .Font.Code; LightBtn.ZIndex = ; .(, LightBtn)
LightBtn.Activated:(()
flashlightActive = flashlightActive
Core.Enabled, Ring.Enabled = flashlightActive, flashlightActive
LightBtn.Text = flashlightActive
)
Trigger = .(, Gui); Trigger.Size = .(, , , ); Trigger.Position = .(, -, , ); Trigger.BackgroundColor3 = .(,,); Trigger.Image = ; Trigger.ZIndex = ; .(, Trigger).CornerRadius = .(, )
Trigger.Activated:(()
active = active
Overlay.Visible, Controls.Visible, Menu.Visible = active, active, active
active dronePos = camera.CFrame.Position; camera.CameraType = .CameraType.Scriptable
camera.CameraType = .CameraType.Custom; moveVec = .(,,); Blur.Size =
)
startTime = ()
RunService.RenderStepped:((dt)
active
now = .()
timeStatus.Text = .(, now.hour, now.min)
dateStamp.Text = .(, now.hour > now.hour- now.hour, now.min, .(), now.day, now.year)
elapsed = () - startTime
mins = .(elapsed / )
secs = .(elapsed % )
mills = .((elapsed * ) % )
fCounter.Text = .(, mins, secs, mills)
rot = .(, .(camRot.X), ) * .(.(camRot.Y), , )
targetDir = (rot.LookVector * -moveVec.Z) + (rot.RightVector * moveVec.X)
lerpFactor = (targetDir.Magnitude > )
currentVelocity = currentVelocity:(targetDir * speed, lerpFactor)
rotDelta = (camRot - lastRot).Magnitude
Blur.Size = .((currentVelocity.Magnitude/) + (rotDelta*), , )
lastRot = camRot
tiltAngle = .(tiltAngle, -moveVec.X * , )
dronePos = dronePos + (currentVelocity * dt)
camera.FieldOfView = fov
camera.CFrame = .(dronePos) * rot * .(, , .(tiltAngle))
LightModel.CFrame = camera.CFrame
)
activeButtons = {}
(pos, txt, vec)
b = .(, Controls); b.Size = .(, , , ); b.Position = pos; b.BackgroundColor3 = .(,,); b.BackgroundTransparency = ; b.TextColor3 = .(,,); b.Text = txt; b.Font = .Font.GothamBold; b.TextScaled = ; .(, b).CornerRadius = .(, )
b.InputBegan:((io) io.UserInputType == .UserInputType.Touch io.UserInputType == .UserInputType.MouseButton1 activeButtons[txt] activeButtons[txt] = ; moveVec = moveVec + vec )
b.InputEnded:(() activeButtons[txt] activeButtons[txt] = ; moveVec = moveVec - vec )
(.(, , , -), , .(,,-))
(.(, , , -), , .(,,))
(.(, , , -), , .(-,,))
(.(, , , -), , .(,,))
UserInputService.InputChanged:((i)
active i.UserInputType == .UserInputType.Touch isInteractingUI
camRot = camRot - .(i.Delta.X * , i.Delta.Y * )
)

Universal