
Key RequiredUniversal

-- =====================================================
-- SECURITY HUB PREMIUM v3.5 - NIGHT VISION REAL + LUCES TOGGLE
-- NV Verde Real | Luces Casa Encender/Apagar | Drag Total
-- =====================================================
local Players = game:GetService("Players")
local RunService = game:GetService("RunService")
local UserInputService = game:GetService("UserInputService")
local TweenService = game:GetService("TweenService")
local player = Players.LocalPlayer
local playerGui = player:WaitForChild("PlayerGui")
local CurrentCamera = workspace.CurrentCamera
local SecurityHub = Instance.new("ScreenGui")
SecurityHub.Name = "NightCamHub_v35"
SecurityHub.ResetOnSpawn = false
SecurityHub.Parent = playerGui
-- ==================== GUI ====================
local MainFrame = Instance.new("Frame")
MainFrame.Size = UDim2.new(0, 460, 0, 380)
MainFrame.Position = UDim2.new(0.5, -230, 0.5, -190)
MainFrame.BackgroundColor3 = Color3.fromRGB(6, 6, 6)
MainFrame.BorderSizePixel = 0
MainFrame.Visible = false
MainFrame.Active = true
MainFrame.Parent = SecurityHub
local UICornerMain = Instance.new("UICorner")
UICornerMain.CornerRadius = UDim.new(0, 24)
UICornerMain.Parent = MainFrame
local GreenBorder = Instance.new("UIStroke")
GreenBorder.Color = Color3.fromRGB(0, 255, 120)
GreenBorder.Thickness = 3.5
GreenBorder.Parent = MainFrame
local InnerFrame = Instance.new("Frame")
InnerFrame.Size = UDim2.new(1, -14, 1, -14)
InnerFrame.Position = UDim2.new(0, 7, 0, 7)
InnerFrame.BackgroundColor3 = Color3.fromRGB(10, 10, 10)
InnerFrame.BorderSizePixel = 0
InnerFrame.Parent = MainFrame
local UICornerInner = Instance.new("UICorner")
UICornerInner.CornerRadius = UDim.new(0, 20)
UICornerInner.Parent = InnerFrame
-- Título + Crédito
local TitleBar = Instance.new("Frame")
TitleBar.Size = UDim2.new(1, 0, 0, 50)
TitleBar.BackgroundTransparency = 1
TitleBar.Parent = InnerFrame
local Title = Instance.new("TextLabel")
Title.Size = UDim2.new(1, -140, 0.5, 0)
Title.BackgroundTransparency = 1
Title.Text = "🔒 NIGHT CAM v3.5"
Title.TextColor3 = Color3.fromRGB(0, 255, 140)
Title.TextScaled = true
Title.Font = Enum.Font.GothamBold
Title.Parent = TitleBar
local CreditTop = Instance.new("TextLabel")
CreditTop.Size = UDim2.new(1, -140, 0.5, 0)
CreditTop.Position = UDim2.new(0, 0, 0.5, 0)
CreditTop.BackgroundTransparency = 1
CreditTop.Text = "Developer/Creador: ueu9195"
CreditTop.TextColor3 = Color3.fromRGB(0, 200, 100)
CreditTop.TextScaled = true
CreditTop.Font = Enum.Font.Gotham
CreditTop.Parent = TitleBar
-- DRAG EN TODO EL GUI
local dragging, dragStart, startPos
MainFrame.InputBegan:Connect(function(input)
if input.UserInputType == Enum.UserInputType.MouseButton1 or input.UserInputType == Enum.UserInputType.Touch then
dragging = true
dragStart = input.Position
startPos = MainFrame.Position
end
end)
UserInputService.InputChanged:Connect(function(input)
if dragging and (input.UserInputType == Enum.UserInputType.MouseMovement or input.UserInputType == Enum.UserInputType.Touch) then
local delta = input.Position - dragStart
MainFrame.Position = UDim2.new(startPos.X.Scale, startPos.X.Offset + delta.X, startPos.Y.Scale, startPos.Y.Offset + delta.Y)
end
end)
UserInputService.InputEnded:Connect(function(input)
if input.UserInputType == Enum.UserInputType.MouseButton1 or input.UserInputType == Enum.UserInputType.Touch then dragging = false end
end)
-- Cerrar con mensaje
local function CloseWithThanks()
if isInViewMode then ToggleViewMode() end
local ThanksFrame = Instance.new("Frame")
ThanksFrame.Size = UDim2.new(0, 380, 0, 140)
ThanksFrame.Position = UDim2.new(0.5, -190, 0.5, -70)
ThanksFrame.BackgroundColor3 = Color3.fromRGB(10, 25, 15)
ThanksFrame.ZIndex = 100
ThanksFrame.Parent = playerGui
Instance.new("UICorner", ThanksFrame).CornerRadius = UDim.new(0, 20)
local ThanksText = Instance.new("TextLabel")
ThanksText.Size = UDim2.new(1, -40, 1, -40)
ThanksText.Position = UDim2.new(0, 20, 0, 20)
ThanksText.BackgroundTransparency = 1
ThanksText.Text = "Gracias por Usar el Script de ueu9195\n¡Hasta la próxima!"
ThanksText.TextColor3 = Color3.fromRGB(0, 255, 160)
ThanksText.TextScaled = true
ThanksText.Font = Enum.Font.GothamBold
ThanksText.Parent = ThanksFrame
task.wait(2.8)
TweenService:Create(ThanksFrame, TweenInfo.new(0.8), {Position = UDim2.new(0.5, -190, 0.5, -200), BackgroundTransparency = 1}):Play()
task.wait(1)
ThanksFrame:Destroy()
MainFrame.Visible = false
end
local CloseBtn = Instance.new("TextButton")
CloseBtn.Size = UDim2.new(0, 38, 0, 38)
CloseBtn.Position = UDim2.new(1, -46, 0, 6)
CloseBtn.BackgroundColor3 = Color3.fromRGB(170, 20, 20)
CloseBtn.Text = "✕"
CloseBtn.TextColor3 = Color3.new(1,1,1)
CloseBtn.TextScaled = true
CloseBtn.Parent = InnerFrame
Instance.new("UICorner", CloseBtn).CornerRadius = UDim.new(1,0)
CloseBtn.MouseButton1Click:Connect(CloseWithThanks)
-- Botones
local PlaceCamBtn = Instance.new("TextButton")
PlaceCamBtn.Size = UDim2.new(0.28, 0, 0, 48)
PlaceCamBtn.Position = UDim2.new(0.04, 0, 0.22, 0)
PlaceCamBtn.BackgroundColor3 = Color3.fromRGB(0, 130, 75)
PlaceCamBtn.Text = "📍 COLOCAR"
PlaceCamBtn.TextColor3 = Color3.new(1,1,1)
PlaceCamBtn.TextScaled = true
PlaceCamBtn.Font = Enum.Font.GothamBold
PlaceCamBtn.Parent = InnerFrame
Instance.new("UICorner", PlaceCamBtn).CornerRadius = UDim.new(0, 14)
local ViewCamBtn = Instance.new("TextButton")
ViewCamBtn.Size = UDim2.new(0.28, 0, 0, 48)
ViewCamBtn.Position = UDim2.new(0.34, 0, 0.22, 0)
ViewCamBtn.BackgroundColor3 = Color3.fromRGB(0, 210, 100)
ViewCamBtn.Text = "👁 VIEW\nTOGGLE"
ViewCamBtn.TextColor3 = Color3.new(1,1,1)
ViewCamBtn.TextScaled = true
ViewCamBtn.Font = Enum.Font.GothamBold
ViewCamBtn.Parent = InnerFrame
Instance.new("UICorner", ViewCamBtn).CornerRadius = UDim.new(0, 14)
local NVBtn = Instance.new("TextButton")
NVBtn.Size = UDim2.new(0.28, 0, 0, 48)
NVBtn.Position = UDim2.new(0.64, 0, 0.22, 0)
NVBtn.BackgroundColor3 = Color3.fromRGB(0, 100, 200)
NVBtn.Text = "🌙 NIGHT VISION"
NVBtn.TextColor3 = Color3.new(1,1,1)
NVBtn.TextScaled = true
NVBtn.Font = Enum.Font.GothamBold
NVBtn.Parent = InnerFrame
Instance.new("UICorner", NVBtn).CornerRadius = UDim.new(0, 14)
local LightsBtn = Instance.new("TextButton")
LightsBtn.Size = UDim2.new(0.28, 0, 0, 48)
LightsBtn.Position = UDim2.new(0.04, 0, 0.38, 0)
LightsBtn.BackgroundColor3 = Color3.fromRGB(180, 60, 0)
LightsBtn.Text = "💡 LUCES CASA"
LightsBtn.TextColor3 = Color3.new(1,1,1)
LightsBtn.TextScaled = true
LightsBtn.Font = Enum.Font.GothamBold
LightsBtn.Parent = InnerFrame
Instance.new("UICorner", LightsBtn).CornerRadius = UDim.new(0, 14)
local ZoomInBtn = Instance.new("TextButton")
ZoomInBtn.Size = UDim2.new(0.22, 0, 0, 42)
ZoomInBtn.Position = UDim2.new(0.04, 0, 0.55, 0)
ZoomInBtn.BackgroundColor3 = Color3.fromRGB(0, 180, 100)
ZoomInBtn.Text = "ZOOM +"
ZoomInBtn.TextColor3 = Color3.new(1,1,1)
ZoomInBtn.TextScaled = true
ZoomInBtn.Font = Enum.Font.GothamBold
ZoomInBtn.Parent = InnerFrame
Instance.new("UICorner", ZoomInBtn).CornerRadius = UDim.new(0, 12)
local ZoomOutBtn = Instance.new("TextButton")
ZoomOutBtn.Size = UDim2.new(0.22, 0, 0, 42)
ZoomOutBtn.Position = UDim2.new(0.28, 0, 0.55, 0)
ZoomOutBtn.BackgroundColor3 = Color3.fromRGB(0, 140, 80)
ZoomOutBtn.Text = "ZOOM -"
ZoomOutBtn.TextColor3 = Color3.new(1,1,1)
ZoomOutBtn.TextScaled = true
ZoomOutBtn.Font = Enum.Font.GothamBold
ZoomOutBtn.Parent = InnerFrame
Instance.new("UICorner", ZoomOutBtn).CornerRadius = UDim.new(0, 12)
-- VIEWPORT
local Viewport = Instance.new("ViewportFrame")
Viewport.Size = UDim2.new(0.58, 0, 0.48, 0)
Viewport.Position = UDim2.new(0.4, 0, 0.42, 0)
Viewport.BackgroundColor3 = Color3.fromRGB(2, 2, 2)
Viewport.Parent = InnerFrame
Instance.new("UICorner", Viewport).CornerRadius = UDim.new(0, 16)
local ViewportCam = Instance.new("Camera")
ViewportCam.Parent = Viewport
Viewport.CurrentCamera = ViewportCam
local Crosshair = Instance.new("ImageLabel")
Crosshair.Size = UDim2.new(0, 36, 0, 36)
Crosshair.Position = UDim2.new(0.5, -18, 0.5, -18)
Crosshair.BackgroundTransparency = 1
Crosshair.Image = "rbxassetid://318389432"
Crosshair.ImageColor3 = Color3.fromRGB(0, 255, 100)
Crosshair.Parent = Viewport
local NightOverlay = Instance.new("ImageLabel")
NightOverlay.Size = UDim2.new(1,0,1,0)
NightOverlay.BackgroundTransparency = 1
NightOverlay.Image = "rbxassetid://188145721"
NightOverlay.ImageTransparency = 0.55
NightOverlay.ImageColor3 = Color3.fromRGB(0, 255, 110)
NightOverlay.Visible = true
NightOverlay.Parent = Viewport
Instance.new("UICorner", NightOverlay).CornerRadius = UDim.new(0, 16)
local CreditBottom = Instance.new("TextLabel")
CreditBottom.Size = UDim2.new(1, 0, 0, 20)
CreditBottom.Position = UDim2.new(0, 0, 1, -25)
CreditBottom.BackgroundTransparency = 1
CreditBottom.Text = "Developer/Creador: ueu9195"
CreditBottom.TextColor3 = Color3.fromRGB(0, 200, 100)
CreditBottom.TextScaled = true
CreditBottom.Font = Enum.Font.Gotham
CreditBottom.Parent = InnerFrame
-- Variables
local currentCamPart = nil
local viewConnection = nil
local previewConnection = nil
local camRotY = 0
local camRotX = 0
local currentFOV = 65
local defaultFOV = 65
local isInViewMode = false
local nightVisionOn = true
local originalCameraType = nil
local lightsSaved = {} -- Guardar brillo original
local blinkConnection = nil
local function CreateCameraModel(position, lookAt)
local model = Instance.new("Model")
model.Name = "SecurityCam_Model"
local mainBody = Instance.new("Part")
mainBody.Size = Vector3.new(1.6, 1.6, 2.6)
mainBody.Position = position
mainBody.CFrame = CFrame.lookAt(position, lookAt)
mainBody.Anchored = true
mainBody.CanCollide = true
mainBody.Material = Enum.Material.Metal
mainBody.Color = Color3.fromRGB(35, 35, 40)
mainBody.Transparency = 0.05
mainBody.Parent = model
local lens = Instance.new("Part")
lens.Shape = Enum.PartType.Cylinder
lens.Size = Vector3.new(1.35, 0.8, 1.35)
lens.Position = mainBody.Position + mainBody.CFrame.LookVector * 1.4
lens.CFrame = mainBody.CFrame * CFrame.Angles(0, 0, math.rad(90))
lens.Anchored = true
lens.CanCollide = false
lens.Material = Enum.Material.Glass
lens.Color = Color3.fromRGB(5, 5, 10)
lens.Transparency = 0.15
lens.Reflectance = 0.45
lens.Parent = model
local redLight = Instance.new("PointLight", mainBody)
redLight.Color = Color3.fromRGB(255, 30, 30)
redLight.Brightness = 1.8
redLight.Range = 3
model.PrimaryPart = mainBody
model.Parent = workspace
if blinkConnection then blinkConnection:Disconnect() end
blinkConnection = RunService.Heartbeat:Connect(function()
if redLight and redLight.Parent then
redLight.Brightness = 1.6 + math.sin(tick() * 9) * 1.4
end
end)
return model
end
local function PlaceSecurityCamera()
if currentCamPart then currentCamPart:Destroy() end
local character = player.Character
if not character or not character:FindFirstChild("HumanoidRootPart") then return end
local root = character.HumanoidRootPart
local look = root.CFrame.LookVector
local pos = root.Position + Vector3.new(0, 5.5, 0) + look * 5.5
currentCamPart = CreateCameraModel(pos, root.Position + look * 12)
camRotY = 0
camRotX = 0
currentFOV = defaultFOV
end
local function ToggleViewMode()
if not currentCamPart then return end
if isInViewMode then
if viewConnection then viewConnection:Disconnect() end
if previewConnection then previewConnection:Disconnect() end
isInViewMode = false
if originalCameraType then CurrentCamera.CameraType = originalCameraType end
CurrentCamera.FieldOfView = defaultFOV
ViewCamBtn.BackgroundColor3 = Color3.fromRGB(0, 210, 100)
else
isInViewMode = true
originalCameraType = CurrentCamera.CameraType
CurrentCamera.CameraType = Enum.CameraType.Scriptable
currentFOV = defaultFOV
viewConnection = RunService.RenderStepped:Connect(function()
if currentCamPart and currentCamPart.PrimaryPart then
local base = currentCamPart.PrimaryPart.CFrame
local final = base * CFrame.Angles(math.rad(camRotX), math.rad(camRotY), 0)
CurrentCamera.CFrame = final
CurrentCamera.FieldOfView = currentFOV
end
end)
previewConnection = RunService.RenderStepped:Connect(function()
if currentCamPart and currentCamPart.PrimaryPart then
local base = currentCamPart.PrimaryPart.CFrame
ViewportCam.CFrame = base * CFrame.Angles(math.rad(camRotX), math.rad(camRotY), 0)
ViewportCam.FieldOfView = currentFOV
end
end)
ViewCamBtn.BackgroundColor3 = Color3.fromRGB(0, 140, 70)
end
end
local function ToggleNightVision()
nightVisionOn = not nightVisionOn
NightOverlay.Visible = nightVisionOn
NVBtn.Text = nightVisionOn and "🌙 NIGHT VISION ON" or "☀ NIGHT VISION OFF"
NVBtn.BackgroundColor3 = nightVisionOn and Color3.fromRGB(0, 100, 200) or Color3.fromRGB(180, 140, 0)
end
local function ToggleHouseLights()
local root = player.Character and player.Character:FindFirstChild("HumanoidRootPart")
if not root then return end
local lightsFound = 0
local turnedOn = false
for _, obj in ipairs(workspace:GetDescendants()) do
if obj:IsA("PointLight") or obj:IsA("SurfaceLight") or obj:IsA("SpotLight") then
local dist = (obj.Parent.Position - root.Position).Magnitude
if dist < 70 then
lightsFound += 1
if obj.Brightness == 0 then
-- Encender (restaurar brillo aproximado)
obj.Brightness = 2.5
turnedOn = true
else
-- Apagar
obj.Brightness = 0
end
end
end
end
if turnedOn then
LightsBtn.Text = "💡 APAGAR LUCES"
LightsBtn.BackgroundColor3 = Color3.fromRGB(180, 60, 0)
else
LightsBtn.Text = "💡 ENCENDER LUCES"
LightsBtn.BackgroundColor3 = Color3.fromRGB(0, 140, 80)
end
print("Luces toggled - Encontradas cerca: " .. lightsFound)
end
local function ChangeZoom(amount)
currentFOV = math.clamp(currentFOV + amount, 18, 110)
end
-- Rotación
local Controls = Instance.new("Frame")
Controls.Size = UDim2.new(0.35, 0, 0, 65)
Controls.Position = UDim2.new(0.03, 0, 0.78, 0)
Controls.BackgroundTransparency = 1
Controls.Parent = InnerFrame
local function RotBtn(text, pos, func)
local btn = Instance.new("TextButton")
btn.Size = UDim2.new(0.48,0,1,0)
btn.Position = UDim2.new(pos,0,0,0)
btn.BackgroundColor3 = Color3.fromRGB(0, 100, 60)
btn.Text = text
btn.TextColor3 = Color3.new(1,1,1)
btn.TextScaled = true
btn.Font = Enum.Font.GothamBold
btn.Parent = Controls
Instance.new("UICorner", btn).CornerRadius = UDim.new(0,14)
btn.MouseButton1Click:Connect(func)
end
RotBtn("◀ IZQ", 0, function() camRotY += 40 end)
RotBtn("DER ▶", 0.52, function() camRotY -= 40 end)
-- Eventos
PlaceCamBtn.MouseButton1Click:Connect(PlaceSecurityCamera)
ViewCamBtn.MouseButton1Click:Connect(ToggleViewMode)
NVBtn.MouseButton1Click:Connect(ToggleNightVision)
LightsBtn.MouseButton1Click:Connect(ToggleHouseLights)
ZoomInBtn.MouseButton1Click:Connect(function() ChangeZoom(-9) end)
ZoomOutBtn.MouseButton1Click:Connect(function() ChangeZoom(9) end)
UserInputService.InputBegan:Connect(function(i, gp)
if gp then return end
if i.KeyCode == Enum.KeyCode.F4 then
MainFrame.Visible = not MainFrame.Visible
end
end)
-- Drag giro Viewport
local isDragging = false
Viewport.InputBegan:Connect(function(i)
if i.UserInputType == Enum.UserInputType.MouseButton1 or i.UserInputType == Enum.UserInputType.Touch then isDragging = true end
end)
Viewport.InputEnded:Connect(function(i)
if i.UserInputType == Enum.UserInputType.MouseButton1 or i.UserInputType == Enum.UserInputType.Touch then isDragging = false end
end)
UserInputService.InputChanged:Connect(function(i)
if isDragging and (i.UserInputType == Enum.UserInputType.MouseMovement or i.UserInputType == Enum.UserInputType.Touch) then
camRotY -= i.Delta.X * 0.65
camRotX = math.clamp(camRotX - i.Delta.Y * 0.55, -80, 80)
end
end)
task.wait(0.7)
MainFrame.Visible = true
print("✅ v3.5 Cargado - NIGHT VISION Mejorado + Luces Toggle Real")
print("• Night Vision ahora es más visible y verde")
print("• Botón de luces ahora Enciende y Apaga (toggle)")
print("• Funciona en Brookhaven (luces cercanas)")
print("Arrastra cualquier parte del GUI")


![Item Spawner - Bypass Gamepass [OPEN-SOURCE]](https://scriptblox.com/images/sb/rbx-2736e5de37c3d8bc17e5e9bd07d73e38-cc0a9732451c.png)
Disfruteeeen!!!