local Players = game:GetService("Players") local UserInputService = game:GetService("UserInputService") local RunService = game:GetService("RunService") local Camera = workspace.CurrentCamera local player = Players.LocalPlayer -- === CONFIG === local LineCount = 4 local Radius = 7 local LineLength = 15 local LineColor = Color3.fromRGB(0, 0, 0) -- Black local LabelText = "NIGHTMARE" -- === CROSSHAIR OBJECTS === local CrosshairLines = {} for i = 1, LineCount do local line = Drawing.new("Line") line.Color = LineColor line.Thickness = 2 line.Visible = true table.insert(CrosshairLines, line) end local Dot = Drawing.new("Circle") Dot.Radius = 2 Dot.Filled = true Dot.Color = LineColor Dot.Visible = true local Label = Drawing.new("Text") Label.Text = LabelText Label.Size = 16 Label.Center = true Label.Outline = true Label.Color = LineColor -- black Label.Visible = true Label.Font = 2 -- === MOUSE HIDING === local function hideMouse() UserInputService.MouseIconEnabled = false end -- === Hide mouse on respawn too === player.CharacterAdded:Connect(function() task.wait(0.5) hideMouse() end) -- Initial hide hideMouse() -- === MAIN ANIMATION LOOP === local angle = 0 RunService.RenderStepped:Connect(function() local mousePos = UserInputService:GetMouseLocation() local center = Vector2.new(mousePos.X, mousePos.Y) for i, line in ipairs(CrosshairLines) do local a = angle + (math.pi * 2 / LineCount) * (i - 1) local from = Vector2.new(center.X + math.cos(a) * Radius, center.Y + math.sin(a) * Radius) local to = Vector2.new(center.X + math.cos(a) * (Radius + LineLength), center.Y + math.sin(a) * (Radius + LineLength)) line.From = from line.To = to end Dot.Position = center Label.Position = Vector2.new(center.X, center.Y + 25) angle += 0.05 end)