local Players = game:GetService("Players") local RunService = game:GetService("RunService") local UserInputService = game:GetService("UserInputService") local TweenService = game:GetService("TweenService") local Workspace = game:GetService("Workspace") local Camera = workspace.CurrentCamera local LocalPlayer = Players.LocalPlayer -- ═══════════════════════════════════════════════════════════════════════════════ -- CONFIGURATION -- ═══════════════════════════════════════════════════════════════════════════════ local Config = { -- ESP ESP_Enabled = true, Boxes = true, BoxType = "Glow", Tracers = true, Names = true, HealthBar = true, HealthBarType = "Vertical", Distance = true, HeadDot = true, Snaplines = false, TeamCheck = true, MaxDistance = 1000, -- Colors BoxColor = Color3.fromRGB(0, 180, 255), BoxGlowColor = Color3.fromRGB(0, 100, 255), TracerColor = Color3.fromRGB(255, 50, 150), NameColor = Color3.fromRGB(255, 255, 255), HealthColorLow = Color3.fromRGB(255, 30, 30), HealthColorMid = Color3.fromRGB(255, 200, 50), HealthColorHigh = Color3.fromRGB(30, 255, 150), TeamColor = Color3.fromRGB(0, 255, 100), EnemyColor = Color3.fromRGB(255, 30, 80), HeadDotColor = Color3.fromRGB(255, 50, 50), SnaplineColor = Color3.fromRGB(255, 255, 255), -- Aimbot Aimbot_Enabled = false, Aimbot_Key = Enum.UserInputType.MouseButton2, Aimbot_Smoothness = 0.08, Aimbot_FOV = 150, Aimbot_FOV_Color = Color3.fromRGB(255, 80, 120), Show_FOV = true, TargetPart = "Head", TeamCheck_Aimbot = true, Aimbot_VisibleCheck = true, Aimbot_Prediction = 0.35, Aimbot_HitChance = 95, Aimbot_RecoilComp = 0.6, Aimbot_MinDistance = 0, Aimbot_MaxDistance = 1000, Aimbot_IgnoreCloaked = true, -- Visuals Crosshair = false, CrosshairColor = Color3.fromRGB(255, 255, 255), CrosshairSize = 20, CrosshairThickness = 2, Watermark = true, ShowFPS = true, ShowTime = false, -- Misc MenuKey = Enum.KeyCode.RightShift, Theme = "Dark", } -- ═══════════════════════════════════════════════════════════════════════════════ -- THEMES -- ═══════════════════════════════════════════════════════════════════════════════ local Themes = { Dark = { bg = Color3.fromRGB(10, 10, 16), sidebar = Color3.fromRGB(14, 14, 22), panel = Color3.fromRGB(18, 18, 28), accent = Color3.fromRGB(0, 180, 255), accent2 = Color3.fromRGB(0, 220, 180), text = Color3.fromRGB(240, 240, 250), textDim = Color3.fromRGB(160, 160, 185), textDark = Color3.fromRGB(100, 100, 120), border = Color3.fromRGB(40, 40, 60), toggleOn = Color3.fromRGB(0, 200, 150), toggleOff = Color3.fromRGB(50, 50, 70), glow = Color3.fromRGB(0, 100, 200), hover = Color3.fromRGB(30, 30, 50), }, Light = { bg = Color3.fromRGB(240, 240, 248), sidebar = Color3.fromRGB(225, 225, 235), panel = Color3.fromRGB(255, 255, 255), accent = Color3.fromRGB(0, 110, 230), accent2 = Color3.fromRGB(0, 200, 150), text = Color3.fromRGB(30, 30, 45), textDim = Color3.fromRGB(120, 120, 140), textDark = Color3.fromRGB(80, 80, 100), border = Color3.fromRGB(200, 200, 215), toggleOn = Color3.fromRGB(0, 180, 130), toggleOff = Color3.fromRGB(180, 180, 195), glow = Color3.fromRGB(0, 80, 160), hover = Color3.fromRGB(220, 220, 235), }, Neon = { bg = Color3.fromRGB(6, 0, 16), sidebar = Color3.fromRGB(10, 2, 22), panel = Color3.fromRGB(16, 4, 30), accent = Color3.fromRGB(255, 0, 200), accent2 = Color3.fromRGB(0, 255, 200), text = Color3.fromRGB(235, 210, 255), textDim = Color3.fromRGB(160, 110, 190), textDark = Color3.fromRGB(80, 40, 100), border = Color3.fromRGB(60, 20, 80), toggleOn = Color3.fromRGB(0, 255, 200), toggleOff = Color3.fromRGB(75, 35, 95), glow = Color3.fromRGB(200, 0, 150), hover = Color3.fromRGB(35, 10, 55), } } local Theme = Themes[Config.Theme] or Themes.Dark -- ═══════════════════════════════════════════════════════════════════════════════ -- STATE & DRAWING OBJECTS -- ═══════════════════════════════════════════════════════════════════════════════ local ESP_Cache = {} local Cleanups = {} local CurrentPanel = "ESP" local Panels = {} -- <-- EZT KELL INICIALIZÁLNI! -- Drawing objects local FOVCircle = Drawing.new("Circle") FOVCircle.Thickness = 2 FOVCircle.Color = Config.Aimbot_FOV_Color FOVCircle.Filled = false FOVCircle.Transparency = 0.25 FOVCircle.Visible = false FOVCircle.NumSides = 64 local AimbotDot = Drawing.new("Circle") AimbotDot.Thickness = 0 AimbotDot.Filled = true AimbotDot.Radius = 5 AimbotDot.Color = Color3.fromRGB(255, 0, 0) AimbotDot.Transparency = 0.4 AimbotDot.Visible = false local CrosshairH = Drawing.new("Line") CrosshairH.Thickness = Config.CrosshairThickness CrosshairH.Color = Config.CrosshairColor CrosshairH.Transparency = 1 CrosshairH.Visible = false local CrosshairV = Drawing.new("Line") CrosshairV.Thickness = Config.CrosshairThickness CrosshairV.Color = Config.CrosshairColor CrosshairV.Transparency = 1 CrosshairV.Visible = false local WatermarkText = Drawing.new("Text") WatermarkText.Size = 14 WatermarkText.Center = false WatermarkText.Outline = true WatermarkText.OutlineColor = Color3.fromRGB(0, 0, 0) WatermarkText.Color = Theme.accent WatermarkText.Transparency = 1 WatermarkText.Visible = true WatermarkText.Position = Vector2.new(10, 10) -- ═══════════════════════════════════════════════════════════════════════════════ -- UTILITY FUNCTIONS -- ═══════════════════════════════════════════════════════════════════════════════ local function getColorForHealth(health, maxHealth) local ratio = math.clamp(health / maxHealth, 0, 1) if ratio > 0.5 then return Config.HealthColorHigh:lerp(Config.HealthColorMid, (ratio - 0.5) * 2) else return Config.HealthColorMid:lerp(Config.HealthColorLow, ratio * 2) end end local function isVisible(part) if not Config.Aimbot_VisibleCheck then return true end local origin = Camera.CFrame.Position local direction = (part.Position - origin).Unit local distance = (part.Position - origin).Magnitude local ray = Ray.new(origin, direction * distance) local hit = Workspace:FindPartOnRayWithIgnoreList(ray, {LocalPlayer.Character}) return hit == part or (hit and hit:IsDescendantOf(part.Parent)) end -- ═══════════════════════════════════════════════════════════════════════════════ -- AIMBOT CORE -- ═══════════════════════════════════════════════════════════════════════════════ local function getClosestPlayer() local target = nil local shortest = math.huge local mousePos = UserInputService:GetMouseLocation() for _, player in ipairs(Players:GetPlayers()) do if player == LocalPlayer then continue end if Config.TeamCheck_Aimbot and player.Team == LocalPlayer.Team then continue end local char = player.Character if not char then continue end local part = char:FindFirstChild(Config.TargetPart) if not part then part = char:FindFirstChild("HumanoidRootPart") end if not part then continue end local hum = char:FindFirstChild("Humanoid") if not hum or hum.Health <= 0 then continue end local dist = (Camera.CFrame.Position - part.Position).Magnitude if dist < Config.Aimbot_MinDistance or dist > Config.Aimbot_MaxDistance then continue end if Config.Aimbot_IgnoreCloaked and char:FindFirstChild("Cloak") then continue end if not isVisible(part) then continue end local screenPos, onScreen = Camera:WorldToViewportPoint(part.Position) if not onScreen then continue end local screenDist = (Vector2.new(screenPos.X, screenPos.Y) - mousePos).Magnitude if screenDist <= Config.Aimbot_FOV and screenDist < shortest then local velocity = part.AssemblyLinearVelocity or Vector3.new() local predictedPos = part.Position + velocity * Config.Aimbot_Prediction local predScreen = Camera:WorldToViewportPoint(predictedPos) local predDist = (Vector2.new(predScreen.X, predScreen.Y) - mousePos).Magnitude if predDist < shortest then shortest = predDist target = {part = part, predicted = predScreen} else shortest = screenDist target = {part = part, predicted = screenPos} end end end return target end -- ═══════════════════════════════════════════════════════════════════════════════ -- ESP FUNCTIONS -- ═══════════════════════════════════════════════════════════════════════════════ local function cleanupESP(player) if ESP_Cache[player] then for _, obj in pairs(ESP_Cache[player]) do pcall(function() obj:Remove() end) end ESP_Cache[player] = nil end end local function cleanupAllESP() for player, _ in pairs(ESP_Cache) do cleanupESP(player) end pcall(function() FOVCircle:Remove() AimbotDot:Remove() CrosshairH:Remove() CrosshairV:Remove() WatermarkText:Remove() end) end local function createESP(player) cleanupESP(player) local drawings = {} if Config.BoxType == "Corner" then for i = 1, 4 do drawings["Corner"..i] = Drawing.new("Line") drawings["Corner"..i].Thickness = 3 drawings["Corner"..i].Color = Config.BoxColor drawings["Corner"..i].Transparency = 1 drawings["Corner"..i].Visible = false end elseif Config.BoxType == "Filled" then drawings.Box = Drawing.new("Square") drawings.Box.Thickness = 1 drawings.Box.Filled = true drawings.Box.FillColor = Config.BoxColor drawings.Box.FillTransparency = 0.2 drawings.Box.Color = Config.BoxColor drawings.Box.Transparency = 1 drawings.Box.Visible = false else drawings.Box = Drawing.new("Square") drawings.Box.Thickness = 2 drawings.Box.Filled = false drawings.Box.Color = Config.BoxColor drawings.Box.Transparency = 1 drawings.Box.Visible = false if Config.BoxType == "Glow" then drawings.Glow = Drawing.new("Square") drawings.Glow.Thickness = 8 drawings.Glow.Filled = false drawings.Glow.Color = Config.BoxGlowColor drawings.Glow.Transparency = 0.15 drawings.Glow.Visible = false end end drawings.Tracer = Drawing.new("Line") drawings.Tracer.Thickness = 2 drawings.Tracer.Color = Config.TracerColor drawings.Tracer.Transparency = 1 drawings.Tracer.Visible = false drawings.Snapline = Drawing.new("Line") drawings.Snapline.Thickness = 1 drawings.Snapline.Color = Config.SnaplineColor drawings.Snapline.Transparency = 0.4 drawings.Snapline.Visible = false drawings.Name = Drawing.new("Text") drawings.Name.Size = 14 drawings.Name.Center = true drawings.Name.Outline = true drawings.Name.OutlineColor = Color3.fromRGB(0, 0, 0) drawings.Name.Color = Config.NameColor drawings.Name.Transparency = 1 drawings.Name.Visible = false drawings.HealthBar = Drawing.new("Line") drawings.HealthBar.Thickness = 5 drawings.HealthBar.Color = Config.HealthColorHigh drawings.HealthBar.Transparency = 1 drawings.HealthBar.Visible = false drawings.HealthBarH = Drawing.new("Line") drawings.HealthBarH.Thickness = 4 drawings.HealthBarH.Color = Config.HealthColorHigh drawings.HealthBarH.Transparency = 1 drawings.HealthBarH.Visible = false drawings.Distance = Drawing.new("Text") drawings.Distance.Size = 12 drawings.Distance.Center = true drawings.Distance.Outline = true drawings.Distance.OutlineColor = Color3.fromRGB(0, 0, 0) drawings.Distance.Color = Color3.fromRGB(180, 180, 200) drawings.Distance.Transparency = 1 drawings.Distance.Visible = false drawings.HeadDot = Drawing.new("Circle") drawings.HeadDot.Thickness = 0 drawings.HeadDot.Filled = true drawings.HeadDot.Radius = 4 drawings.HeadDot.Color = Config.HeadDotColor drawings.HeadDot.Transparency = 0.7 drawings.HeadDot.Visible = false ESP_Cache[player] = drawings end local function rebuildAllESP() for player, _ in pairs(ESP_Cache) do cleanupESP(player) end ESP_Cache = {} for _, player in ipairs(Players:GetPlayers()) do if player ~= LocalPlayer then createESP(player) end end end -- ═══════════════════════════════════════════════════════════════════════════════ -- MAIN ESP RENDER LOOP -- ═══════════════════════════════════════════════════════════════════════════════ local renderConnection = RunService.RenderStepped:Connect(function() -- Watermark if Config.Watermark then local fpsText = "" if Config.ShowFPS then local fps = math.floor(1 / RunService.Heartbeat:Wait()) fpsText = " | FPS: " .. fps end local timeText = "" if Config.ShowTime then timeText = " | " .. os.date("%H:%M") end WatermarkText.Text = "✦ M4rkLose" .. fpsText .. timeText WatermarkText.Visible = true else WatermarkText.Visible = false end -- Crosshair if Config.Crosshair then local size = Config.CrosshairSize local mousePos = UserInputService:GetMouseLocation() CrosshairH.From = Vector2.new(mousePos.X - size, mousePos.Y) CrosshairH.To = Vector2.new(mousePos.X + size, mousePos.Y) CrosshairH.Visible = true CrosshairV.From = Vector2.new(mousePos.X, mousePos.Y - size) CrosshairV.To = Vector2.new(mousePos.X, mousePos.Y + size) CrosshairV.Visible = true else CrosshairH.Visible = false CrosshairV.Visible = false end if not Config.ESP_Enabled then for _, d in pairs(ESP_Cache) do for _, obj in pairs(d) do if obj.Visible ~= nil then obj.Visible = false end end end return end local viewport = Camera.ViewportSize local centerX, centerY = viewport.X / 2, viewport.Y for player, drawings in pairs(ESP_Cache) do local char = player.Character local hrp = char and char:FindFirstChild("HumanoidRootPart") local hum = char and char:FindFirstChild("Humanoid") if hrp and hum and hum.Health > 0 then local pos, onScreen = Camera:WorldToViewportPoint(hrp.Position) local dist = (Camera.CFrame.Position - hrp.Position).Magnitude if onScreen and dist <= Config.MaxDistance then local height = math.abs( Camera:WorldToViewportPoint(hrp.Position + Vector3.new(0, 3, 0)).Y - Camera:WorldToViewportPoint(hrp.Position - Vector3.new(0, 3, 0)).Y ) local width = height * 0.55 local topY = pos.Y - height/2 local leftX = pos.X - width/2 local isTeam = Config.TeamCheck and player.Team == LocalPlayer.Team local boxColor = isTeam and Config.TeamColor or Config.EnemyColor if Config.Boxes then if Config.BoxType == "Corner" then local len = math.min(width * 0.25, 25) drawings.Corner1.From = Vector2.new(leftX, topY + len) drawings.Corner1.To = Vector2.new(leftX, topY) drawings.Corner2.From = Vector2.new(leftX, topY) drawings.Corner2.To = Vector2.new(leftX + len, topY) drawings.Corner3.From = Vector2.new(leftX + width, topY + height - len) drawings.Corner3.To = Vector2.new(leftX + width, topY + height) drawings.Corner4.From = Vector2.new(leftX + width, topY + height) drawings.Corner4.To = Vector2.new(leftX + width - len, topY + height) for i = 1, 4 do drawings["Corner"..i].Color = boxColor drawings["Corner"..i].Visible = true end else drawings.Box.Size = Vector2.new(width, height) drawings.Box.Position = Vector2.new(leftX, topY) drawings.Box.Color = boxColor if Config.BoxType == "Filled" then drawings.Box.FillColor = boxColor end drawings.Box.Visible = true if drawings.Glow then drawings.Glow.Size = Vector2.new(width + 16, height + 16) drawings.Glow.Position = Vector2.new(leftX - 8, topY - 8) drawings.Glow.Color = boxColor drawings.Glow.Visible = true end end else for i = 1, 4 do if drawings["Corner"..i] then drawings["Corner"..i].Visible = false end end if drawings.Box then drawings.Box.Visible = false end if drawings.Glow then drawings.Glow.Visible = false end end if Config.Tracers then drawings.Tracer.From = Vector2.new(centerX, centerY) drawings.Tracer.To = Vector2.new(pos.X, pos.Y + height/2) drawings.Tracer.Color = Config.TracerColor drawings.Tracer.Visible = true else drawings.Tracer.Visible = false end if Config.Snaplines then drawings.Snapline.From = Vector2.new(centerX, 0) drawings.Snapline.To = Vector2.new(pos.X, pos.Y) drawings.Snapline.Visible = true else drawings.Snapline.Visible = false end if Config.Names then drawings.Name.Position = Vector2.new(pos.X, topY - 20) drawings.Name.Text = string.format("%s [%d]", player.DisplayName or player.Name, math.floor(hum.Health)) drawings.Name.Color = isTeam and Config.TeamColor or Config.EnemyColor drawings.Name.Visible = true else drawings.Name.Visible = false end if Config.HealthBar and (Config.HealthBarType == "Vertical" or Config.HealthBarType == "Both") then local healthPercent = math.clamp(hum.Health / hum.MaxHealth, 0, 1) local barHeight = height * healthPercent drawings.HealthBar.From = Vector2.new(leftX - 10, topY + height) drawings.HealthBar.To = Vector2.new(leftX - 10, topY + height - barHeight) drawings.HealthBar.Color = getColorForHealth(hum.Health, hum.MaxHealth) drawings.HealthBar.Visible = true else drawings.HealthBar.Visible = false end if Config.HealthBar and (Config.HealthBarType == "Horizontal" or Config.HealthBarType == "Both") then local healthPercent = math.clamp(hum.Health / hum.MaxHealth, 0, 1) local barWidth = width * healthPercent drawings.HealthBarH.From = Vector2.new(leftX, topY + height + 3) drawings.HealthBarH.To = Vector2.new(leftX + barWidth, topY + height + 3) drawings.HealthBarH.Color = getColorForHealth(hum.Health, hum.MaxHealth) drawings.HealthBarH.Visible = true else drawings.HealthBarH.Visible = false end if Config.Distance then drawings.Distance.Position = Vector2.new(pos.X, topY + height + 22) drawings.Distance.Text = string.format("%.0fm", dist) drawings.Distance.Visible = true else drawings.Distance.Visible = false end if Config.HeadDot then local head = char:FindFirstChild("Head") if head then local headPos = Camera:WorldToViewportPoint(head.Position) drawings.HeadDot.Position = Vector2.new(headPos.X, headPos.Y) drawings.HeadDot.Color = isTeam and Config.TeamColor or Config.EnemyColor drawings.HeadDot.Visible = true end else drawings.HeadDot.Visible = false end else for _, obj in pairs(drawings) do if obj.Visible ~= nil then obj.Visible = false end end end else for _, obj in pairs(drawings) do if obj.Visible ~= nil then obj.Visible = false end end end end end) table.insert(Cleanups, renderConnection) -- ═══════════════════════════════════════════════════════════════════════════════ -- AIMBOT LOOP -- ═══════════════════════════════════════════════════════════════════════════════ local aimConnection = RunService.RenderStepped:Connect(function() local mousePos = UserInputService:GetMouseLocation() if Config.Show_FOV and Config.Aimbot_Enabled then FOVCircle.Position = mousePos FOVCircle.Radius = Config.Aimbot_FOV FOVCircle.Color = Config.Aimbot_FOV_Color FOVCircle.Visible = true else FOVCircle.Visible = false end if Config.Aimbot_Enabled then local keyDown = false local key = Config.Aimbot_Key if key == Enum.UserInputType.MouseButton1 or key == Enum.UserInputType.MouseButton2 or key == Enum.UserInputType.MouseButton3 then keyDown = UserInputService:IsMouseButtonPressed(key) else keyDown = UserInputService:IsKeyDown(key) end if keyDown then local targetData = getClosestPlayer() if targetData then local screenPos = targetData.predicted if math.random(1, 100) <= Config.Aimbot_HitChance then local dx = screenPos.X - mousePos.X local dy = screenPos.Y - mousePos.Y if Config.Aimbot_RecoilComp > 0 then dy = dy - (dy * Config.Aimbot_RecoilComp * 0.25) end local smoothX = dx * Config.Aimbot_Smoothness local smoothY = dy * Config.Aimbot_Smoothness mousemoverel(smoothX, smoothY) AimbotDot.Position = Vector2.new(screenPos.X, screenPos.Y) AimbotDot.Color = Color3.fromRGB(0, 255, 100) AimbotDot.Visible = true else AimbotDot.Position = Vector2.new(screenPos.X, screenPos.Y) AimbotDot.Color = Color3.fromRGB(255, 200, 0) AimbotDot.Visible = true end else AimbotDot.Visible = false end else AimbotDot.Visible = false end else AimbotDot.Visible = false end end) table.insert(Cleanups, aimConnection) -- ═══════════════════════════════════════════════════════════════════════════════ -- UI - NEVERLOSE STYLE (Left Sidebar Navigation) -- ═══════════════════════════════════════════════════════════════════════════════ local ScreenGui = Instance.new("ScreenGui") ScreenGui.Name = "M4rkLose" ScreenGui.ResetOnSpawn = false ScreenGui.Parent = (gethui and gethui()) or LocalPlayer:WaitForChild("PlayerGui") -- Main Window local MainFrame = Instance.new("Frame") MainFrame.Size = UDim2.new(0, 700, 0, 520) MainFrame.Position = UDim2.new(0.5, -350, 0.5, -260) MainFrame.BackgroundColor3 = Theme.bg MainFrame.BackgroundTransparency = 0.05 MainFrame.BorderSizePixel = 1 MainFrame.BorderColor3 = Theme.border MainFrame.Active = true MainFrame.Draggable = true MainFrame.Visible = false MainFrame.Parent = ScreenGui local UICorner = Instance.new("UICorner") UICorner.CornerRadius = UDim.new(0, 12) UICorner.Parent = MainFrame -- Glow border local GlowBorder = Instance.new("Frame") GlowBorder.Size = UDim2.new(1, 8, 1, 8) GlowBorder.Position = UDim2.new(0, -4, 0, -4) GlowBorder.BackgroundColor3 = Theme.glow GlowBorder.BackgroundTransparency = 0.5 GlowBorder.BorderSizePixel = 0 GlowBorder.ZIndex = 0 GlowBorder.Parent = MainFrame local GlowCorner = Instance.new("UICorner") GlowCorner.CornerRadius = UDim.new(0, 14) GlowCorner.Parent = GlowBorder local glowTween = TweenService:Create(GlowBorder, TweenInfo.new(3, Enum.EasingStyle.Sine, Enum.EasingDirection.InOut, -1), { BackgroundTransparency = 0.2 }) glowTween:Play() -- ===== SIDEBAR ===== local Sidebar = Instance.new("Frame") Sidebar.Size = UDim2.new(0, 180, 1, 0) Sidebar.BackgroundColor3 = Theme.sidebar Sidebar.BackgroundTransparency = 0.2 Sidebar.BorderSizePixel = 0 Sidebar.ZIndex = 2 Sidebar.Parent = MainFrame local SidebarCorner = Instance.new("UICorner") SidebarCorner.CornerRadius = UDim.new(0, 12) SidebarCorner.Parent = Sidebar -- Sidebar title local SidebarTitle = Instance.new("TextLabel") SidebarTitle.Size = UDim2.new(1, 0, 0, 50) SidebarTitle.BackgroundTransparency = 1 SidebarTitle.Text = "✦ M4rkLose" SidebarTitle.TextColor3 = Theme.accent SidebarTitle.TextSize = 18 SidebarTitle.Font = Enum.Font.SourceSansBold SidebarTitle.TextXAlignment = Enum.TextXAlignment.Center SidebarTitle.ZIndex = 3 SidebarTitle.Parent = Sidebar -- Sidebar buttons (tábla) local SidebarButtons = {} local ButtonNames = {"ESP", "Aimbot", "Visuals", "Misc"} -- ===== CONTENT PANELS ===== local ContentContainer = Instance.new("Frame") ContentContainer.Size = UDim2.new(1, -190, 1, 0) ContentContainer.Position = UDim2.new(0, 185, 0, 0) ContentContainer.BackgroundTransparency = 1 ContentContainer.ZIndex = 2 ContentContainer.Parent = MainFrame -- ===== PANEL LÉTREHOZÁS ===== local function createPanel(name) local Panel = Instance.new("ScrollingFrame") Panel.Size = UDim2.new(1, -20, 1, -10) Panel.Position = UDim2.new(0, 10, 0, 5) Panel.BackgroundTransparency = 1 Panel.ScrollBarThickness = 4 Panel.ScrollBarImageColor3 = Theme.accent Panel.ScrollBarImageTransparency = 0.6 Panel.CanvasSize = UDim2.new(0, 0, 0, 800) Panel.ZIndex = 3 Panel.Visible = false Panel.Parent = ContentContainer local UIList = Instance.new("UIListLayout") UIList.SortOrder = Enum.SortOrder.LayoutOrder UIList.Padding = UDim.new(0, 6) UIList.Parent = Panel Panels[name] = Panel return Panel end -- Panel content helpers local function createPanelSection(panel, title) local Section = Instance.new("TextLabel") Section.Size = UDim2.new(1, 0, 0, 32) Section.BackgroundTransparency = 1 Section.Text = "▸ " .. title Section.TextColor3 = Theme.accent Section.TextSize = 15 Section.Font = Enum.Font.SourceSansSemibold Section.TextXAlignment = Enum.TextXAlignment.Left Section.ZIndex = 3 Section.Parent = panel return Section end local function createPanelToggle(panel, name, defaultVal, callback) local Row = Instance.new("Frame") Row.Size = UDim2.new(1, -4, 0, 38) Row.BackgroundColor3 = Theme.panel Row.BackgroundTransparency = 0.3 Row.BorderSizePixel = 1 Row.BorderColor3 = Theme.border Row.ZIndex = 2 Row.Parent = panel local RowCorner = Instance.new("UICorner") RowCorner.CornerRadius = UDim.new(0, 8) RowCorner.Parent = Row local Label = Instance.new("TextLabel") Label.Size = UDim2.new(0.65, 0, 1, 0) Label.Position = UDim2.new(0, 14, 0, 0) Label.BackgroundTransparency = 1 Label.Text = name Label.TextColor3 = Theme.text Label.TextSize = 12 Label.Font = Enum.Font.SourceSansSemibold Label.TextXAlignment = Enum.TextXAlignment.Left Label.ZIndex = 3 Label.Parent = Row local Toggle = Instance.new("TextButton") Toggle.Size = UDim2.new(0, 50, 0, 24) Toggle.Position = UDim2.new(1, -58, 0.5, -12) Toggle.BackgroundColor3 = defaultVal and Theme.toggleOn or Theme.toggleOff Toggle.BackgroundTransparency = 0.2 Toggle.Text = defaultVal and "ON" or "OFF" Toggle.TextColor3 = Color3.fromRGB(255, 255, 255) Toggle.TextSize = 10 Toggle.Font = Enum.Font.SourceSansBold Toggle.ZIndex = 3 Toggle.Parent = Row local ToggleCorner = Instance.new("UICorner") ToggleCorner.CornerRadius = UDim.new(0, 4) ToggleCorner.Parent = Toggle local state = defaultVal Toggle.MouseButton1Click:Connect(function() state = not state Toggle.BackgroundColor3 = state and Theme.toggleOn or Theme.toggleOff Toggle.Text = state and "ON" or "OFF" callback(state) end) end local function createPanelSlider(panel, name, min, max, default, callback) local Row = Instance.new("Frame") Row.Size = UDim2.new(1, -4, 0, 50) Row.BackgroundColor3 = Theme.panel Row.BackgroundTransparency = 0.3 Row.BorderSizePixel = 1 Row.BorderColor3 = Theme.border Row.ZIndex = 2 Row.Parent = panel local RowCorner = Instance.new("UICorner") RowCorner.CornerRadius = UDim.new(0, 8) RowCorner.Parent = Row local Label = Instance.new("TextLabel") Label.Size = UDim2.new(0.5, 0, 0.5, 0) Label.Position = UDim2.new(0, 14, 0, 2) Label.BackgroundTransparency = 1 Label.Text = name Label.TextColor3 = Theme.text Label.TextSize = 12 Label.Font = Enum.Font.SourceSansSemibold Label.TextXAlignment = Enum.TextXAlignment.Left Label.ZIndex = 3 Label.Parent = Row local ValueLabel = Instance.new("TextLabel") ValueLabel.Size = UDim2.new(0.35, 0, 0.5, 0) ValueLabel.Position = UDim2.new(0.65, 0, 0, 2) ValueLabel.BackgroundTransparency = 1 ValueLabel.Text = tostring(default) ValueLabel.TextColor3 = Theme.accent2 ValueLabel.TextSize = 13 ValueLabel.Font = Enum.Font.SourceSansBold ValueLabel.TextXAlignment = Enum.TextXAlignment.Right ValueLabel.ZIndex = 3 ValueLabel.Parent = Row local Slider = Instance.new("Frame") Slider.Size = UDim2.new(0.88, 0, 0.22, 0) Slider.Position = UDim2.new(0.06, 0, 0.6, 0) Slider.BackgroundColor3 = Theme.toggleOff Slider.BackgroundTransparency = 0.3 Slider.BorderSizePixel = 0 Slider.ZIndex = 2 Slider.Parent = Row local SliderCorner = Instance.new("UICorner") SliderCorner.CornerRadius = UDim.new(0, 4) SliderCorner.Parent = Slider local Fill = Instance.new("Frame") Fill.Size = UDim2.new((default - min) / (max - min), 0, 1, 0) Fill.BackgroundColor3 = Theme.accent Fill.BorderSizePixel = 0 Fill.ZIndex = 3 Fill.Parent = Slider local FillCorner = Instance.new("UICorner") FillCorner.CornerRadius = UDim.new(0, 4) FillCorner.Parent = Fill local val = default Slider.InputBegan:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseButton1 then local x = (input.Position.X - Slider.AbsolutePosition.X) / Slider.AbsoluteSize.X val = math.floor((min + (max - min) * math.clamp(x, 0, 1)) * 10) / 10 Fill.Size = UDim2.new(math.clamp(x, 0, 1), 0, 1, 0) ValueLabel.Text = tostring(val) callback(val) end end) end local function createPanelDropdown(panel, name, options, default, callback) local Row = Instance.new("Frame") Row.Size = UDim2.new(1, -4, 0, 38) Row.BackgroundColor3 = Theme.panel Row.BackgroundTransparency = 0.3 Row.BorderSizePixel = 1 Row.BorderColor3 = Theme.border Row.ZIndex = 2 Row.Parent = panel local RowCorner = Instance.new("UICorner") RowCorner.CornerRadius = UDim.new(0, 8) RowCorner.Parent = Row local Label = Instance.new("TextLabel") Label.Size = UDim2.new(0.45, 0, 1, 0) Label.Position = UDim2.new(0, 14, 0, 0) Label.BackgroundTransparency = 1 Label.Text = name Label.TextColor3 = Theme.text Label.TextSize = 12 Label.Font = Enum.Font.SourceSansSemibold Label.TextXAlignment = Enum.TextXAlignment.Left Label.ZIndex = 3 Label.Parent = Row local Dropdown = Instance.new("TextButton") Dropdown.Size = UDim2.new(0.4, 0, 0.7, 0) Dropdown.Position = UDim2.new(0.5, 0, 0.15, 0) Dropdown.BackgroundColor3 = Theme.panel Dropdown.BackgroundTransparency = 0.4 Dropdown.BorderSizePixel = 1 Dropdown.BorderColor3 = Theme.border Dropdown.Text = default Dropdown.TextColor3 = Theme.text Dropdown.TextSize = 11 Dropdown.Font = Enum.Font.SourceSansBold Dropdown.ZIndex = 3 Dropdown.Parent = Row local DropCorner = Instance.new("UICorner") DropCorner.CornerRadius = UDim.new(0, 4) DropCorner.Parent = Dropdown local index = 1 for i, opt in ipairs(options) do if opt == default then index = i end end Dropdown.MouseButton1Click:Connect(function() index = index % #options + 1 local val = options[index] Dropdown.Text = val callback(val) end) end -- ===== BUILD PANELS ===== -- ESP Panel local ESPPanel = createPanel("ESP") createPanelSection(ESPPanel, "ESP Settings") createPanelToggle(ESPPanel, "Enable ESP", Config.ESP_Enabled, function(v) Config.ESP_Enabled = v end) createPanelToggle(ESPPanel, "Boxes", Config.Boxes, function(v) Config.Boxes = v end) createPanelDropdown(ESPPanel, "Box Type", {"Corner", "Full", "Glow", "Filled"}, Config.BoxType, function(v) Config.BoxType = v rebuildAllESP() end) createPanelToggle(ESPPanel, "Tracers", Config.Tracers, function(v) Config.Tracers = v end) createPanelToggle(ESPPanel, "Snaplines", Config.Snaplines, function(v) Config.Snaplines = v end) createPanelToggle(ESPPanel, "Names", Config.Names, function(v) Config.Names = v end) createPanelToggle(ESPPanel, "Health Bar", Config.HealthBar, function(v) Config.HealthBar = v end) createPanelDropdown(ESPPanel, "Health Type", {"Vertical", "Horizontal", "Both"}, Config.HealthBarType, function(v) Config.HealthBarType = v end) createPanelToggle(ESPPanel, "Distance", Config.Distance, function(v) Config.Distance = v end) createPanelToggle(ESPPanel, "Head Dot", Config.HeadDot, function(v) Config.HeadDot = v end) createPanelToggle(ESPPanel, "Team Check", Config.TeamCheck, function(v) Config.TeamCheck = v end) -- Aimbot Panel local AimbotPanel = createPanel("Aimbot") createPanelSection(AimbotPanel, "Aimbot Settings") createPanelToggle(AimbotPanel, "Enable Aimbot", Config.Aimbot_Enabled, function(v) Config.Aimbot_Enabled = v end) createPanelToggle(AimbotPanel, "Show FOV", Config.Show_FOV, function(v) Config.Show_FOV = v end) createPanelToggle(AimbotPanel, "Team Check", Config.TeamCheck_Aimbot, function(v) Config.TeamCheck_Aimbot = v end) createPanelToggle(AimbotPanel, "Visible Check", Config.Aimbot_VisibleCheck, function(v) Config.Aimbot_VisibleCheck = v end) createPanelToggle(AimbotPanel, "Ignore Cloaked", Config.Aimbot_IgnoreCloaked, function(v) Config.Aimbot_IgnoreCloaked = v end) createPanelSlider(AimbotPanel, "FOV Radius", 30, 400, Config.Aimbot_FOV, function(v) Config.Aimbot_FOV = v end) createPanelSlider(AimbotPanel, "Smoothness", 0.02, 0.5, Config.Aimbot_Smoothness, function(v) Config.Aimbot_Smoothness = v end) createPanelSlider(AimbotPanel, "Prediction", 0, 0.8, Config.Aimbot_Prediction, function(v) Config.Aimbot_Prediction = v end) createPanelSlider(AimbotPanel, "Hit Chance", 0, 100, Config.Aimbot_HitChance, function(v) Config.Aimbot_HitChance = v end) createPanelSlider(AimbotPanel, "Recoil Comp", 0, 1, Config.Aimbot_RecoilComp, function(v) Config.Aimbot_RecoilComp = v end) -- Visuals Panel local VisualsPanel = createPanel("Visuals") createPanelSection(VisualsPanel, "Visual Settings") createPanelToggle(VisualsPanel, "Crosshair", Config.Crosshair, function(v) Config.Crosshair = v end) createPanelSlider(VisualsPanel, "Crosshair Size", 5, 50, Config.CrosshairSize, function(v) Config.CrosshairSize = v end) createPanelSlider(VisualsPanel, "Crosshair Thickness", 1, 5, Config.CrosshairThickness, function(v) Config.CrosshairThickness = v CrosshairH.Thickness = v CrosshairV.Thickness = v end) createPanelToggle(VisualsPanel, "Watermark", Config.Watermark, function(v) Config.Watermark = v end) createPanelToggle(VisualsPanel, "Show FPS", Config.ShowFPS, function(v) Config.ShowFPS = v end) createPanelToggle(VisualsPanel, "Show Time", Config.ShowTime, function(v) Config.ShowTime = v end) -- Misc Panel local MiscPanel = createPanel("Misc") createPanelSection(MiscPanel, "Misc Settings") createPanelDropdown(MiscPanel, "Theme", {"Dark", "Light", "Neon"}, Config.Theme, function(v) Config.Theme = v Theme = Themes[v] or Themes.Dark -- Update all UI elements MainFrame.BackgroundColor3 = Theme.bg MainFrame.BorderColor3 = Theme.border Sidebar.BackgroundColor3 = Theme.sidebar GlowBorder.BackgroundColor3 = Theme.glow SidebarTitle.TextColor3 = Theme.accent for name, data in pairs(SidebarButtons) do data.Button.BackgroundColor3 = Theme.sidebar data.Button.TextColor3 = data.Active and Theme.accent or Theme.textDim end for _, panel in pairs(Panels) do for _, child in ipairs(panel:GetChildren()) do if child:IsA("Frame") then child.BackgroundColor3 = Theme.panel child.BorderColor3 = Theme.border end if child:IsA("TextLabel") then child.TextColor3 = Theme.text end end end WatermarkText.Color = Theme.accent end) -- ===== UPDATE PANEL FUNCTION (IDE KELL!) ===== local function UpdatePanel(name) for panelName, panel in pairs(Panels) do panel.Visible = (panelName == name) end end -- ===== SIDEBAR GOMBOK LÉTREHOZÁSA ===== local function createSidebarButton(name, yPos) local Btn = Instance.new("TextButton") Btn.Size = UDim2.new(0.9, 0, 0, 40) Btn.Position = UDim2.new(0.05, 0, 0, yPos) Btn.BackgroundColor3 = Theme.sidebar Btn.BackgroundTransparency = 0.5 Btn.Text = name Btn.TextColor3 = Theme.textDim Btn.TextSize = 14 Btn.Font = Enum.Font.SourceSansSemibold Btn.TextXAlignment = Enum.TextXAlignment.Left Btn.ZIndex = 3 Btn.Parent = Sidebar -- Padding local padding = Instance.new("UIPadding") padding.PaddingLeft = UDim.new(0, 15) padding.Parent = Btn local BtnCorner = Instance.new("UICorner") BtnCorner.CornerRadius = UDim.new(0, 6) BtnCorner.Parent = Btn -- Active indicator local Indicator = Instance.new("Frame") Indicator.Size = UDim2.new(0, 3, 1, 0) Indicator.BackgroundColor3 = Theme.accent Indicator.BorderSizePixel = 0 Indicator.ZIndex = 4 Indicator.Visible = false Indicator.Parent = Btn local data = { Button = Btn, Indicator = Indicator, Active = false, } Btn.MouseEnter:Connect(function() if not data.Active then Btn.BackgroundTransparency = 0.3 Btn.TextColor3 = Theme.text end end) Btn.MouseLeave:Connect(function() if not data.Active then Btn.BackgroundTransparency = 0.5 Btn.TextColor3 = Theme.textDim end end) Btn.MouseButton1Click:Connect(function() for _, d in pairs(SidebarButtons) do d.Active = false d.Button.BackgroundTransparency = 0.5 d.Button.TextColor3 = Theme.textDim d.Indicator.Visible = false end data.Active = true data.Button.BackgroundTransparency = 0.15 data.Button.TextColor3 = Theme.accent data.Indicator.Visible = true CurrentPanel = name UpdatePanel(name) end) SidebarButtons[name] = data return data end -- Gombok létrehozása local yOffset = 60 for _, name in ipairs(ButtonNames) do createSidebarButton(name, yOffset) yOffset = yOffset + 46 end -- Alapértelmezett panel aktiválása local espData = SidebarButtons["ESP"] if espData then espData.Active = true espData.Button.BackgroundTransparency = 0.15 espData.Button.TextColor3 = Theme.accent espData.Indicator.Visible = true end UpdatePanel("ESP") -- ===== KEYBIND ===== local keyConn = UserInputService.InputBegan:Connect(function(input, processed) if not processed and input.KeyCode == Config.MenuKey then MainFrame.Visible = not MainFrame.Visible end end) table.insert(Cleanups, keyConn) -- Player tracking local function onPlayerAdded(player) if player ~= LocalPlayer then createESP(player) end end local function onPlayerRemoving(player) cleanupESP(player) end for _, p in ipairs(Players:GetPlayers()) do if p ~= LocalPlayer then createESP(p) end end Players.PlayerAdded:Connect(onPlayerAdded) Players.PlayerRemoving:Connect(onPlayerRemoving) -- Cleanup if STATE then STATE.onCleanup(function() for _, c in ipairs(Cleanups) do if c and c.Disconnect then c:Disconnect() end end cleanupAllESP() ScreenGui:Destroy() end) end print("═══════════════════════════════════════════════════════════════") print("✦ M4RKLOSE v1.0 - Neverlose-Style Premium Cheat Menu") print("📌 Left sidebar navigation | Dynamic content panels") print("🎯 ESP + Aimbot with premium visuals") print("📌 Right Shift to toggle menu • Right Click for aimbot") print("═══════════════════════════════════════════════════════════════")