-- [[ Rscripts Risk Notice ]] -- This script is not verified by rscripts.net. Deal with caution. -- -- Stay safe: -- • Never log in on unofficial Roblox sites or lookalike domains. -- • Real Roblox links use roblox.com (check the .com ending). -- • Treat fake Roblox login / "claim reward" pages as phishing. -- [[ End Rscripts Risk Notice ]] local Players = game:GetService("Players") local RunService = game:GetService("RunService") local UserInputService = game:GetService("UserInputService") local ContextActionService = game:GetService("ContextActionService") local Workspace = game:GetService("Workspace") local LocalPlayer = Players.LocalPlayer local PlayerGui = LocalPlayer:WaitForChild("PlayerGui") local Camera = Workspace.CurrentCamera -------------------------------------------------------------------------------- -- CONFIGURATION & STATE -------------------------------------------------------------------------------- local ACTION_LOCK_TARGET = "LockTargetAction" local LOCK_ON_KEY = Enum.KeyCode.E local LOCK_ON_GAMEPAD = Enum.KeyCode.ButtonL2 local MAX_DISTANCE = 150 local MAX_ANGLE = 60 -- System Toggles local lockSystemEnabled = true local wallPenetrationEnabled = false local isLockedOn = false local currentTarget = nil local currentHighlight = nil local draggingSlider = nil -- Performance & Speed Controls local trackingSpeed = 0.35 -- Lerp speed (higher = faster camera snap) local walkSpeedMultiplier = 16 -- Default Roblox WalkSpeed is 16 -- Crosshair State local crosshairEnabled = false local currentShape = "Circle" local currentColor = Color3.fromRGB(255, 50, 50) -------------------------------------------------------------------------------- -- GUI CONSTRUCTION (Dragon Theme) -------------------------------------------------------------------------------- local screenGui = Instance.new("ScreenGui") screenGui.Name = "DragonLockGui" screenGui.ResetOnSpawn = false screenGui.Parent = PlayerGui -- Open/Close Floating Dragon Button local toggleMenuBtn = Instance.new("TextButton") toggleMenuBtn.Name = "ToggleMenuBtn" toggleMenuBtn.Size = UDim2.new(0, 45, 0, 45) toggleMenuBtn.Position = UDim2.new(0.02, 0, 0.15, 0) toggleMenuBtn.BackgroundColor3 = Color3.fromRGB(25, 15, 20) toggleMenuBtn.Text = "🐉" toggleMenuBtn.TextSize = 24 toggleMenuBtn.Parent = screenGui local toggleCorner = Instance.new("UICorner") toggleCorner.CornerRadius = UDim.new(0, 10) toggleCorner.Parent = toggleMenuBtn local toggleStroke = Instance.new("UIStroke") toggleStroke.Color = Color3.fromRGB(220, 50, 50) toggleStroke.Thickness = 2 toggleStroke.Parent = toggleMenuBtn -- Main GUI Frame local mainFrame = Instance.new("Frame") mainFrame.Name = "MainFrame" mainFrame.Size = UDim2.new(0, 270, 0, 420) mainFrame.Position = UDim2.new(0.02, 0, 0.22, 0) mainFrame.BackgroundColor3 = Color3.fromRGB(18, 14, 20) mainFrame.BorderSizePixel = 0 mainFrame.Parent = screenGui local mainCorner = Instance.new("UICorner") mainCorner.CornerRadius = UDim.new(0, 10) mainCorner.Parent = mainFrame local mainStroke = Instance.new("UIStroke") mainStroke.Color = Color3.fromRGB(200, 40, 40) mainStroke.Thickness = 2 mainStroke.Parent = mainFrame -- Header Bar local header = Instance.new("Frame") header.Size = UDim2.new(1, 0, 0, 35) header.BackgroundColor3 = Color3.fromRGB(35, 15, 20) header.BorderSizePixel = 0 header.Parent = mainFrame local headerCorner = Instance.new("UICorner") headerCorner.CornerRadius = UDim.new(0, 10) headerCorner.Parent = header local titleLabel = Instance.new("TextLabel") titleLabel.Size = UDim2.new(0.8, 0, 1, 0) titleLabel.Position = UDim2.new(0.05, 0, 0, 0) titleLabel.Text = "🐉 ULTIMATE DRAGON LOCK" titleLabel.TextColor3 = Color3.fromRGB(255, 180, 50) titleLabel.TextSize = 12 titleLabel.Font = Enum.Font.GothamBold titleLabel.BackgroundTransparency = 1 titleLabel.TextXAlignment = Enum.TextXAlignment.Left titleLabel.Parent = header local closeBtn = Instance.new("TextButton") closeBtn.Size = UDim2.new(0, 25, 0, 25) closeBtn.Position = UDim2.new(0.88, 0, 0.14, 0) closeBtn.BackgroundColor3 = Color3.fromRGB(150, 30, 30) closeBtn.Text = "✕" closeBtn.TextColor3 = Color3.fromRGB(255, 255, 255) closeBtn.Font = Enum.Font.GothamBold closeBtn.TextSize = 12 closeBtn.Parent = header local closeCorner = Instance.new("UICorner") closeCorner.CornerRadius = UDim.new(0, 6) closeCorner.Parent = closeBtn -- Scroll Container local scroll = Instance.new("ScrollingFrame") scroll.Size = UDim2.new(1, -10, 1, -45) scroll.Position = UDim2.new(0, 5, 0, 40) scroll.BackgroundTransparency = 1 scroll.BorderSizePixel = 0 scroll.ScrollBarThickness = 4 scroll.ScrollBarImageColor3 = Color3.fromRGB(200, 40, 40) scroll.CanvasSize = UDim2.new(0, 0, 0, 560) scroll.Parent = mainFrame local listLayout = Instance.new("UIListLayout") listLayout.Padding = UDim.new(0, 8) listLayout.HorizontalAlignment = Enum.HorizontalAlignment.Center listLayout.Parent = scroll -- Helper for Styled Buttons local function createStyledButton(text, bgColor) local btn = Instance.new("TextButton") btn.Size = UDim2.new(0, 240, 0, 32) btn.BackgroundColor3 = bgColor or Color3.fromRGB(40, 25, 30) btn.Text = text btn.TextColor3 = Color3.fromRGB(255, 255, 255) btn.Font = Enum.Font.GothamSemibold btn.TextSize = 11 btn.Parent = scroll local corner = Instance.new("UICorner") corner.CornerRadius = UDim.new(0, 6) corner.Parent = btn local stroke = Instance.new("UIStroke") stroke.Color = Color3.fromRGB(100, 30, 30) stroke.Thickness = 1 stroke.Parent = btn return btn end -- 1. Lock System Toggle local lockToggleBtn = createStyledButton("Target Lock: ENABLED", Color3.fromRGB(40, 110, 60)) -- 2. Wall Penetration Toggle local wallToggleBtn = createStyledButton("Shoot Through Walls: DISABLED", Color3.fromRGB(100, 30, 30)) -- 3. WalkSpeed Booster Panel local speedFrame = Instance.new("Frame") speedFrame.Size = UDim2.new(0, 240, 0, 50) speedFrame.BackgroundColor3 = Color3.fromRGB(28, 20, 25) speedFrame.Parent = scroll local speedCorner = Instance.new("UICorner") speedCorner.CornerRadius = UDim.new(0, 6) speedCorner.Parent = speedFrame local speedLabel = Instance.new("TextLabel") speedLabel.Size = UDim2.new(1, 0, 0.4, 0) speedLabel.Text = "Player Speed: 16 (Normal)" speedLabel.TextColor3 = Color3.fromRGB(255, 220, 150) speedLabel.BackgroundTransparency = 1 speedLabel.Font = Enum.Font.GothamSemibold speedLabel.TextSize = 11 speedLabel.Parent = speedFrame local speedTrack = Instance.new("Frame") speedTrack.Size = UDim2.new(0.85, 0, 0, 6) speedTrack.Position = UDim2.new(0.075, 0, 0.68, 0) speedTrack.BackgroundColor3 = Color3.fromRGB(60, 40, 45) speedTrack.Parent = speedFrame local speedBtn = Instance.new("TextButton") speedBtn.Size = UDim2.new(0, 18, 0, 20) speedBtn.Position = UDim2.new(0, 0, 0.5, -10) speedBtn.BackgroundColor3 = Color3.fromRGB(255, 120, 0) speedBtn.Text = "" speedBtn.Parent = speedTrack local speedBtnCorner = Instance.new("UICorner") speedBtnCorner.CornerRadius = UDim.new(0, 4) speedBtnCorner.Parent = speedBtn -- 4. Tracking Speed / Snap Power Panel local trackFrame = Instance.new("Frame") trackFrame.Size = UDim2.new(0, 240, 0, 50) trackFrame.BackgroundColor3 = Color3.fromRGB(28, 20, 25) trackFrame.Parent = scroll local trackCorner = Instance.new("UICorner") trackCorner.CornerRadius = UDim.new(0, 6) trackCorner.Parent = trackFrame local trackLabel = Instance.new("TextLabel") trackLabel.Size = UDim2.new(1, 0, 0.4, 0) trackLabel.Text = "Lock Speed: Fast (35%)" trackLabel.TextColor3 = Color3.fromRGB(255, 220, 150) trackLabel.BackgroundTransparency = 1 trackLabel.Font = Enum.Font.GothamSemibold trackLabel.TextSize = 11 trackLabel.Parent = trackFrame local trackTrack = Instance.new("Frame") trackTrack.Size = UDim2.new(0.85, 0, 0, 6) trackTrack.Position = UDim2.new(0.075, 0, 0.68, 0) trackTrack.BackgroundColor3 = Color3.fromRGB(60, 40, 45) trackTrack.Parent = trackFrame local trackBtn = Instance.new("TextButton") trackBtn.Size = UDim2.new(0, 18, 0, 20) trackBtn.Position = UDim2.new(0.35, -9, 0.5, -10) trackBtn.BackgroundColor3 = Color3.fromRGB(220, 50, 50) trackBtn.Text = "" trackBtn.Parent = trackTrack local trackBtnCorner = Instance.new("UICorner") trackBtnCorner.CornerRadius = UDim.new(0, 4) trackBtnCorner.Parent = trackBtn -- 5. FOV Panel local fovFrame = Instance.new("Frame") fovFrame.Size = UDim2.new(0, 240, 0, 50) fovFrame.BackgroundColor3 = Color3.fromRGB(28, 20, 25) fovFrame.Parent = scroll local fovCorner = Instance.new("UICorner") fovCorner.CornerRadius = UDim.new(0, 6) fovCorner.Parent = fovFrame local fovLabel = Instance.new("TextLabel") fovLabel.Size = UDim2.new(1, 0, 0.4, 0) fovLabel.Text = "Field of View: 70" fovLabel.TextColor3 = Color3.fromRGB(255, 220, 150) fovLabel.BackgroundTransparency = 1 fovLabel.Font = Enum.Font.GothamSemibold fovLabel.TextSize = 11 fovLabel.Parent = fovFrame local fovTrack = Instance.new("Frame") fovTrack.Size = UDim2.new(0.85, 0, 0, 6) fovTrack.Position = UDim2.new(0.075, 0, 0.68, 0) fovTrack.BackgroundColor3 = Color3.fromRGB(60, 40, 45) fovTrack.Parent = fovFrame local fovBtn = Instance.new("TextButton") fovBtn.Size = UDim2.new(0, 18, 0, 20) fovBtn.Position = UDim2.new(0.444, -9, 0.5, -10) fovBtn.BackgroundColor3 = Color3.fromRGB(220, 50, 50) fovBtn.Text = "" fovBtn.Parent = fovTrack local fovBtnCorner = Instance.new("UICorner") fovBtnCorner.CornerRadius = UDim.new(0, 4) fovBtnCorner.Parent = fovBtn -- 6. Crosshair Section local crosshairTitle = Instance.new("TextLabel") crosshairTitle.Size = UDim2.new(0, 240, 0, 20) crosshairTitle.Text = "─── CROSSHAIR CUSTOMIZER ───" crosshairTitle.TextColor3 = Color3.fromRGB(255, 180, 50) crosshairTitle.Font = Enum.Font.GothamBold crosshairTitle.TextSize = 10 crosshairTitle.BackgroundTransparency = 1 crosshairTitle.Parent = scroll local crosshairToggleBtn = createStyledButton("Crosshair: OFF", Color3.fromRGB(100, 30, 30)) -- Shape Select local shapeFrame = Instance.new("Frame") shapeFrame.Size = UDim2.new(0, 240, 0, 36) shapeFrame.BackgroundColor3 = Color3.fromRGB(28, 20, 25) shapeFrame.Parent = scroll local shapeCorner = Instance.new("UICorner") shapeCorner.CornerRadius = UDim.new(0, 6) shapeCorner.Parent = shapeFrame local shapeLayout = Instance.new("UIListLayout") shapeLayout.FillDirection = Enum.FillDirection.Horizontal shapeLayout.HorizontalAlignment = Enum.HorizontalAlignment.Center shapeLayout.VerticalAlignment = Enum.VerticalAlignment.Center shapeLayout.Padding = UDim.new(0, 10) shapeLayout.Parent = shapeFrame local shapes = { {Name = "Circle", Symbol = "●"}, {Name = "Heart", Symbol = "♥"}, {Name = "Star", Symbol = "★"} } local shapeButtons = {} for _, s in ipairs(shapes) do local btn = Instance.new("TextButton") btn.Size = UDim2.new(0, 65, 0, 26) btn.BackgroundColor3 = (s.Name == currentShape) and Color3.fromRGB(180, 40, 40) or Color3.fromRGB(45, 30, 35) btn.Text = s.Symbol .. " " .. s.Name btn.TextColor3 = Color3.fromRGB(255, 255, 255) btn.Font = Enum.Font.GothamSemibold btn.TextSize = 11 btn.Parent = shapeFrame local corner = Instance.new("UICorner") corner.CornerRadius = UDim.new(0, 4) corner.Parent = btn shapeButtons[s.Name] = btn end -- Color Select local colorFrame = Instance.new("Frame") colorFrame.Size = UDim2.new(0, 240, 0, 36) colorFrame.BackgroundColor3 = Color3.fromRGB(28, 20, 25) colorFrame.Parent = scroll local colorCorner = Instance.new("UICorner") colorCorner.CornerRadius = UDim.new(0, 6) colorCorner.Parent = colorFrame local colorLayout = Instance.new("UIListLayout") colorLayout.FillDirection = Enum.FillDirection.Horizontal colorLayout.HorizontalAlignment = Enum.HorizontalAlignment.Center colorLayout.VerticalAlignment = Enum.VerticalAlignment.Center colorLayout.Padding = UDim.new(0, 6) colorLayout.Parent = colorFrame local colors = { {Name = "Red", Color = Color3.fromRGB(255, 50, 50)}, {Name = "Gold", Color = Color3.fromRGB(255, 200, 0)}, {Name = "Green", Color = Color3.fromRGB(50, 255, 100)}, {Name = "Cyan", Color = Color3.fromRGB(0, 220, 255)}, {Name = "Purple", Color = Color3.fromRGB(180, 70, 255)}, {Name = "White", Color = Color3.fromRGB(255, 255, 255)}, } for _, c in ipairs(colors) do local btn = Instance.new("TextButton") btn.Size = UDim2.new(0, 28, 0, 24) btn.BackgroundColor3 = c.Color btn.Text = "" btn.Parent = colorFrame local corner = Instance.new("UICorner") corner.CornerRadius = UDim.new(0, 4) corner.Parent = btn btn.MouseButton1Click:Connect(function() currentColor = c.Color end) end -------------------------------------------------------------------------------- -- CROSSHAIR UI -------------------------------------------------------------------------------- local crosshairLabel = Instance.new("TextLabel") crosshairLabel.Name = "CustomCrosshair" crosshairLabel.Size = UDim2.new(0, 30, 0, 30) crosshairLabel.AnchorPoint = Vector2.new(0.5, 0.5) crosshairLabel.Position = UDim2.new(0.5, 0, 0.5, 0) crosshairLabel.BackgroundTransparency = 1 crosshairLabel.Text = "●" crosshairLabel.TextColor3 = currentColor crosshairLabel.TextSize = 18 crosshairLabel.Font = Enum.Font.GothamBold crosshairLabel.Visible = crosshairEnabled crosshairLabel.Parent = screenGui local function updateCrosshairDisplay() crosshairLabel.Visible = crosshairEnabled crosshairLabel.TextColor3 = currentColor if currentShape == "Circle" then crosshairLabel.Text = "●" crosshairLabel.TextSize = 18 elseif currentShape == "Heart" then crosshairLabel.Text = "♥" crosshairLabel.TextSize = 22 elseif currentShape == "Star" then crosshairLabel.Text = "★" crosshairLabel.TextSize = 22 end end -------------------------------------------------------------------------------- -- SLIDER LOGIC FOR SPEED, FOV & LOCK TRACKING -------------------------------------------------------------------------------- local function updateSliderPosition(track, btn, inputX) local trackPos = track.AbsolutePosition.X local trackSize = track.AbsoluteSize.X return math.clamp((inputX - trackPos) / trackSize, 0, 1) end fovBtn.InputBegan:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseButton1 or input.UserInputType == Enum.UserInputType.Touch then draggingSlider = "FOV" end end) speedBtn.InputBegan:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseButton1 or input.UserInputType == Enum.UserInputType.Touch then draggingSlider = "Speed" end end) trackBtn.InputBegan:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseButton1 or input.UserInputType == Enum.UserInputType.Touch then draggingSlider = "Track" end end) UserInputService.InputEnded:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseButton1 or input.UserInputType == Enum.UserInputType.Touch then draggingSlider = nil end end) UserInputService.InputChanged:Connect(function(input) if not draggingSlider then return end if input.UserInputType == Enum.UserInputType.MouseMovement or input.UserInputType == Enum.UserInputType.Touch then if draggingSlider == "FOV" then local scale = updateSliderPosition(fovTrack, fovBtn, input.Position.X) fovBtn.Position = UDim2.new(scale, -9, 0.5, -10) local newFov = math.floor(30 + (120 - 30) * scale) fovLabel.Text = "Field of View: " .. tostring(newFov) Camera.FieldOfView = newFov elseif draggingSlider == "Speed" then local scale = updateSliderPosition(speedTrack, speedBtn, input.Position.X) speedBtn.Position = UDim2.new(scale, -9, 0.5, -10) walkSpeedMultiplier = math.floor(16 + (100 - 16) * scale) speedLabel.Text = "Player Speed: " .. tostring(walkSpeedMultiplier) .. (walkSpeedMultiplier == 16 and " (Normal)" or " (Fast)") elseif draggingSlider == "Track" then local scale = updateSliderPosition(trackTrack, trackBtn, input.Position.X) trackBtn.Position = UDim2.new(scale, -9, 0.5, -10) trackingSpeed = math.clamp(0.1 + scale * 0.9, 0.1, 1.0) local percent = math.floor(trackingSpeed * 100) trackLabel.Text = "Lock Speed: " .. (percent >= 90 and "Instant Snap!" or tostring(percent) .. "%") end end end) -------------------------------------------------------------------------------- -- OPEN / CLOSE TOGGLE HANDLERS -------------------------------------------------------------------------------- closeBtn.MouseButton1Click:Connect(function() mainFrame.Visible = false end) toggleMenuBtn.MouseButton1Click:Connect(function() mainFrame.Visible = not mainFrame.Visible end) crosshairToggleBtn.MouseButton1Click:Connect(function() crosshairEnabled = not crosshairEnabled crosshairToggleBtn.Text = crosshairEnabled and "Crosshair: ON" or "Crosshair: OFF" crosshairToggleBtn.BackgroundColor3 = crosshairEnabled and Color3.fromRGB(40, 110, 60) or Color3.fromRGB(100, 30, 30) updateCrosshairDisplay() end) for shapeName, btn in pairs(shapeButtons) do btn.MouseButton1Click:Connect(function() currentShape = shapeName for name, b in pairs(shapeButtons) do b.BackgroundColor3 = (name == currentShape) and Color3.fromRGB(180, 40, 40) or Color3.fromRGB(45, 30, 35) end updateCrosshairDisplay() end) end -------------------------------------------------------------------------------- -- VISUAL HIGHLIGHT LOGIC -------------------------------------------------------------------------------- local function clearHighlight() if currentHighlight then currentHighlight:Destroy() currentHighlight = nil end end local function setHighlight(model) clearHighlight() if not model or not model:IsA("Model") then return end local highlight = Instance.new("Highlight") highlight.Name = "TargetLockHighlight" highlight.FillColor = Color3.fromRGB(255, 60, 60) highlight.OutlineColor = Color3.fromRGB(255, 220, 100) highlight.FillTransparency = 0.4 highlight.OutlineTransparency = 0 highlight.DepthMode = Enum.HighlightDepthMode.AlwaysOnTop highlight.Parent = model currentHighlight = highlight end -------------------------------------------------------------------------------- -- RAYCAST & TARGET SEARCH -------------------------------------------------------------------------------- local function hasLineOfSight(targetHRP) if wallPenetrationEnabled then return true end local character = LocalPlayer.Character if not character then return false end local raycastParams = RaycastParams.new() raycastParams.FilterType = Enum.RaycastFilterType.Exclude raycastParams.FilterDescendantsInstances = {character, targetHRP.Parent} raycastParams.IgnoreWater = true local origin = Camera.CFrame.Position local direction = targetHRP.Position - origin local result = Workspace:Raycast(origin, direction, raycastParams) return result == nil end local function getClosestTarget() local character = LocalPlayer.Character if not character or not character:FindFirstChild("HumanoidRootPart") then return nil end local playerPos = character.HumanoidRootPart.Position local closestTarget = nil local shortestAngle = MAX_ANGLE for _, descendant in ipairs(Workspace:GetDescendants()) do if descendant:IsA("Humanoid") and descendant.Health > 0 then local model = descendant.Parent if model and model:IsA("Model") and model ~= character then local targetHRP = model:FindFirstChild("HumanoidRootPart") if targetHRP then local distance = (targetHRP.Position - playerPos).Magnitude if distance <= MAX_DISTANCE then local camLook = Camera.CFrame.LookVector local dirToTarget = (targetHRP.Position - Camera.CFrame.Position).Unit local dotProduct = math.clamp(camLook:Dot(dirToTarget), -1, 1) local angle = math.deg(math.acos(dotProduct)) if angle < shortestAngle and hasLineOfSight(targetHRP) then shortestAngle = angle closestTarget = targetHRP end end end end end end return closestTarget end -------------------------------------------------------------------------------- -- LOCK-ON TOGGLE & SYSTEM HANDLERS -------------------------------------------------------------------------------- local function toggleLockState() if isLockedOn then isLockedOn = false currentTarget = nil clearHighlight() else local target = getClosestTarget() if target then currentTarget = target isLockedOn = true setHighlight(target.Parent) end end end local function handleLockAction(actionName, inputState, inputObject) if inputState == Enum.UserInputState.Begin and lockSystemEnabled then toggleLockState() end return Enum.ContextActionResult.Pass end ContextActionService:BindAction(ACTION_LOCK_TARGET, handleLockAction, true, LOCK_ON_KEY, LOCK_ON_GAMEPAD) ContextActionService:SetPosition(ACTION_LOCK_TARGET, UDim2.new(0.8, -25, 0.5, -25)) ContextActionService:SetTitle(ACTION_LOCK_TARGET, "Lock On") -- Lock Toggle Button lockToggleBtn.MouseButton1Click:Connect(function() lockSystemEnabled = not lockSystemEnabled if lockSystemEnabled then lockToggleBtn.Text = "Target Lock: ENABLED" lockToggleBtn.BackgroundColor3 = Color3.fromRGB(40, 110, 60) ContextActionService:BindAction(ACTION_LOCK_TARGET, handleLockAction, true, LOCK_ON_KEY, LOCK_ON_GAMEPAD) ContextActionService:SetTitle(ACTION_LOCK_TARGET, "Lock On") else isLockedOn = false currentTarget = nil clearHighlight() lockToggleBtn.Text = "Target Lock: DISABLED" lockToggleBtn.BackgroundColor3 = Color3.fromRGB(100, 30, 30) ContextActionService:UnbindAction(ACTION_LOCK_TARGET) end end) -- Shoot Through Walls Toggle Button wallToggleBtn.MouseButton1Click:Connect(function() wallPenetrationEnabled = not wallPenetrationEnabled wallToggleBtn.Text = wallPenetrationEnabled and "Shoot Through Walls: ENABLED" or "Shoot Through Walls: DISABLED" wallToggleBtn.BackgroundColor3 = wallPenetrationEnabled and Color3.fromRGB(40, 110, 60) or Color3.fromRGB(100, 30, 30) end) -------------------------------------------------------------------------------- -- RENDER & CHARACTER SPEED LOOP -------------------------------------------------------------------------------- RunService.RenderStepped:Connect(function() -- Maintain custom Player WalkSpeed local char = LocalPlayer.Character if char then local hum = char:FindFirstChildOfClass("Humanoid") if hum and hum.WalkSpeed ~= walkSpeedMultiplier then hum.WalkSpeed = walkSpeedMultiplier end end -- Maintain Crosshair state if crosshairEnabled then crosshairLabel.TextColor3 = currentColor end -- Camera Lock-On Tracking if not lockSystemEnabled or not isLockedOn or not currentTarget or not currentTarget.Parent then if isLockedOn then isLockedOn = false currentTarget = nil clearHighlight() end return end local humanoid = currentTarget.Parent:FindFirstChildOfClass("Humanoid") if not humanoid or humanoid.Health <= 0 then isLockedOn = false currentTarget = nil clearHighlight() return end if not hasLineOfSight(currentTarget) then isLockedOn = false currentTarget = nil clearHighlight() return end local cameraPos = Camera.CFrame.Position local targetPos = currentTarget.Position local desiredCFrame = CFrame.lookAt(cameraPos, targetPos) -- Apply tracking speed slider (Higher lerp speed = faster camera tracking/snap) Camera.CFrame = Camera.CFrame:Lerp(desiredCFrame, trackingSpeed) end)