-- [[ 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 ]] --[[ Shevon UI v9 — Enhanced Animations Открытие: RCTRL Бинды: Q / P / TAB / F / V / RCTRL ]] local UserInputService = game:GetService("UserInputService") local Players = game:GetService("Players") local RunService = game:GetService("RunService") local Stats = game:GetService("Stats") local VirtualInputManager = game:GetService("VirtualInputManager") local ReplicatedStorage = game:GetService("ReplicatedStorage") local TweenService = game:GetService("TweenService") local Lighting = game:GetService("Lighting") local Workspace = game:GetService("Workspace") local LP = Players.LocalPlayer local Camera = workspace.CurrentCamera local function K(c) return {type = "key", value = Enum.KeyCode[c]} end local Binds = { Aim = K("Q"), Lock = K("P"), Freeze = K("Tab"), Hide = K("RightControl"), Pallet = K("F"), FOVToggle = K("V"), } local Settings = { MaxAngle = 90, MaxDistance = 31, ClickDelay = 0.08, ManualLock = true, VisibleCheck = true, RadiusMin = 0, RadiusMax = 100, PalletName = "PalletLightBrown", Opacity = 100, Scale = 100, ThemeName = "classic", CustomCursor = true, Particles = true, TargetParts = { Head = true, Torso = false, Arms = false }, FOVEnabled = false, FOVValue = 90, FOVMin = 40, FOVMax = 140, FOVDefault = 70, } local isLocked, isGuiVisible, isFrozen = false, false, false local lastClick = 0 local awaitingBind, justBound, justOpenedBind, isAimingSelf = nil, false, false, false local selectedList = {} local listMode = "ignore" local listOpen = false local sessionStart = tick() local lastTimerTick = 0 local lastPlayerRefresh = 0 local currentTab = "main" -- ============================================================ -- THEMES -- ============================================================ local Themes = { classic = { Bg = Color3.fromRGB(13, 13, 18), BgPanel = Color3.fromRGB(19, 19, 25), BgCard = Color3.fromRGB(24, 24, 32), BgCardHi = Color3.fromRGB(36, 36, 48), BgSegment = Color3.fromRGB(19, 19, 25), Divider = Color3.fromRGB(42, 42, 54), Accent = Color3.fromRGB(122, 92, 255), AccentHi = Color3.fromRGB(170, 140, 255), Success = Color3.fromRGB(80, 220, 140), Danger = Color3.fromRGB(255, 90, 110), Warn = Color3.fromRGB(255, 190, 90), Text = Color3.fromRGB(245, 245, 250), TextDim = Color3.fromRGB(155, 155, 175), TextMuted = Color3.fromRGB(105, 105, 125), }, black = { Bg = Color3.fromRGB(0, 0, 0), BgPanel = Color3.fromRGB(6, 6, 6), BgCard = Color3.fromRGB(13, 13, 13), BgCardHi = Color3.fromRGB(24, 24, 24), BgSegment = Color3.fromRGB(6, 6, 6), Divider = Color3.fromRGB(32, 32, 32), Accent = Color3.fromRGB(122, 92, 255), AccentHi = Color3.fromRGB(170, 140, 255), Success = Color3.fromRGB(80, 220, 140), Danger = Color3.fromRGB(255, 90, 110), Warn = Color3.fromRGB(255, 190, 90), Text = Color3.fromRGB(245, 245, 250), TextDim = Color3.fromRGB(140, 140, 150), TextMuted = Color3.fromRGB(90, 90, 100), }, gray = { Bg = Color3.fromRGB(28, 28, 34), BgPanel = Color3.fromRGB(38, 38, 45), BgCard = Color3.fromRGB(46, 46, 54), BgCardHi = Color3.fromRGB(60, 60, 70), BgSegment = Color3.fromRGB(38, 38, 45), Divider = Color3.fromRGB(70, 70, 82), Accent = Color3.fromRGB(122, 92, 255), AccentHi = Color3.fromRGB(170, 140, 255), Success = Color3.fromRGB(80, 220, 140), Danger = Color3.fromRGB(255, 90, 110), Warn = Color3.fromRGB(255, 190, 90), Text = Color3.fromRGB(248, 248, 252), TextDim = Color3.fromRGB(190, 190, 200), TextMuted = Color3.fromRGB(150, 150, 160), }, ["light-gray"] = { Bg = Color3.fromRGB(58, 58, 66), BgPanel = Color3.fromRGB(74, 74, 84), BgCard = Color3.fromRGB(88, 88, 100), BgCardHi = Color3.fromRGB(104, 104, 118), BgSegment = Color3.fromRGB(74, 74, 84), Divider = Color3.fromRGB(116, 116, 130), Accent = Color3.fromRGB(140, 110, 255), AccentHi = Color3.fromRGB(185, 160, 255), Success = Color3.fromRGB(90, 230, 150), Danger = Color3.fromRGB(255, 110, 130), Warn = Color3.fromRGB(255, 200, 110), Text = Color3.fromRGB(252, 252, 255), TextDim = Color3.fromRGB(215, 215, 225), TextMuted = Color3.fromRGB(175, 175, 185), }, halloween = { Bg = Color3.fromRGB(14, 8, 18), BgPanel = Color3.fromRGB(22, 12, 28), BgCard = Color3.fromRGB(32, 16, 40), BgCardHi = Color3.fromRGB(48, 22, 58), BgSegment = Color3.fromRGB(22, 12, 28), Divider = Color3.fromRGB(60, 30, 70), Accent = Color3.fromRGB(255, 120, 30), AccentHi = Color3.fromRGB(255, 180, 80), Success = Color3.fromRGB(140, 220, 100), Danger = Color3.fromRGB(255, 60, 60), Warn = Color3.fromRGB(255, 180, 60), Text = Color3.fromRGB(255, 240, 250), TextDim = Color3.fromRGB(200, 160, 220), TextMuted = Color3.fromRGB(160, 110, 180), }, } local Theme = Themes.classic local colorTargets = {} local alphaTargets = {} local function regColor(o, p, r) table.insert(colorTargets, {obj=o, prop=p, role=r}) end local function regAlpha(o, p, r) table.insert(alphaTargets, {obj=o, prop=p, role=r}) end local function applyTheme(name) local t = Themes[name] if not t then return end Theme = t for _, item in ipairs(colorTargets) do if t[item.role] then pcall(function() item.obj[item.prop] = t[item.role] end) end end end local function applyOpacity() local alpha = 1 - (Settings.Opacity / 100) local base = { Bg=0, BgPanel=0.05, BgCard=0.1, BgCardHi=0.15, BgSegment=0.05, Divider=0.4, Accent=0, AccentHi=0, Success=0, Danger=0, Warn=0 } for _, t in ipairs(alphaTargets) do local b = base[t.role] or 0 pcall(function() t.obj[t.prop] = math.clamp(b + alpha * 0.92, 0, 1) end) end end local function matchBind(input, bind) if not bind then return false end if bind.type == "key" then return input.KeyCode == bind.value end if bind.type == "mouse" then return input.UserInputType == bind.value end return false end local function bindName(bind) if not bind then return "?" end if bind.type == "key" then return bind.value.Name end if bind.type == "mouse" then local n = bind.value.Name if n == "MouseButton1" then return "LMB" end if n == "MouseButton2" then return "RMB" end if n == "MouseButton3" then return "MMB" end return n end return "?" end local function formatTime(sec) sec = math.floor(sec) local h = math.floor(sec / 3600) local m = math.floor((sec % 3600) / 60) local s = sec % 60 if h > 0 then return string.format("%02d:%02d:%02d", h, m, s) end return string.format("%02d:%02d", m, s) end -- ============================================================ -- PALLET -- ============================================================ local PalletEvent do local mt = ReplicatedStorage:FindFirstChild("MenuToys") if mt then PalletEvent = mt:FindFirstChild("SpawnToyRemoteFunction") end end local targetPart = Instance.new("Part") targetPart.Name = "NeonTargetIndicator" targetPart.Shape = Enum.PartType.Ball targetPart.Size = Vector3.new(1.5,1.5,1.5) targetPart.Material = Enum.Material.Neon targetPart.Color = Color3.fromRGB(255,0,0) targetPart.CanCollide = false targetPart.Anchored = true targetPart.Transparency = 1 targetPart.Parent = Workspace RunService.RenderStepped:Connect(function() local c = LP.Character if not c or not c:FindFirstChild("HumanoidRootPart") then return end local cam = Camera.CFrame local lv = cam.LookVector local pitch = math.asin(lv.Y) local a = math.clamp((-pitch) / (math.pi/2), 0, 1) targetPart.Position = cam.Position + (lv * (-0.66 + a * (-14.9 - (-0.66)))) end) local function spawnPallet() if not PalletEvent or not LP.Character then return end task.spawn(function() RunService.Heartbeat:Wait() local sp = targetPart.Position local cam = Camera.CFrame local _, yaw, _ = cam:ToOrientation() pcall(function() PalletEvent:InvokeServer(Settings.PalletName, cam.Rotation + sp, Vector3.new(0, math.deg(yaw), 0)) end) end) end -- ============================================================ -- FOV -- ============================================================ local fovConn local function applyFOV() if fovConn then fovConn:Disconnect() fovConn = nil end if Settings.FOVEnabled then fovConn = RunService.RenderStepped:Connect(function() Camera.FieldOfView = Settings.FOVValue end) else Camera.FieldOfView = Settings.FOVDefault end end applyFOV() -- ============================================================ -- SHADERS -- ============================================================ local effectRegistry = { Snow = {instance=nil}, Rain = {instance=nil}, Fire = {instance=nil}, Stars = {instance=nil}, Fog = {instance=nil}, Sunset = {instance=nil}, Night = {instance=nil}, Rainbow = {instance=nil}, Bloom = {instance=nil}, ColorCor = {instance=nil}, Chroma = {instance=nil}, DOF = {instance=nil}, } local originalState = { ClockTime = Lighting.ClockTime, Brightness = Lighting.Brightness, Ambient = Lighting.Ambient, OutdoorAmbient = Lighting.OutdoorAmbient, ColorShift_Top = Lighting.ColorShift_Top, ColorShift_Bottom = Lighting.ColorShift_Bottom, } local function makeParticleAttachment() local att = Instance.new("Attachment") att.Name = "ShevonShaderAttachment" att.Parent = Camera return att end local function toggleSnow(on) if effectRegistry.Snow.instance then effectRegistry.Snow.instance:Destroy() effectRegistry.Snow.instance = nil end if not on then return end local att = makeParticleAttachment() local p = Instance.new("ParticleEmitter", att) p.Texture = "rbxasset://textures/particles/snowflake.png" p.Rate = 60; p.Lifetime = NumberRange.new(4,8); p.Speed = NumberRange.new(8,14) p.SpreadAngle = Vector2.new(0,30); p.Rotation = NumberRange.new(0,360) p.RotSpeed = NumberRange.new(-30,30) p.Size = NumberSequence.new({NumberSequenceKeypoint.new(0,0.2),NumberSequenceKeypoint.new(1,0.4)}) p.Transparency = NumberSequence.new({NumberSequenceKeypoint.new(0,0.2),NumberSequenceKeypoint.new(1,1)}) p.Color = ColorSequence.new(Color3.fromRGB(255,255,255)) p.EmissionDirection = Enum.NormalId.Bottom p.Parent = att att.Position = Vector3.new(0, 20, 0) effectRegistry.Snow.instance = att end local function toggleRain(on) if effectRegistry.Rain.instance then effectRegistry.Rain.instance:Destroy() effectRegistry.Rain.instance = nil end if not on then return end local att = makeParticleAttachment() local p = Instance.new("ParticleEmitter", att) p.Texture = "rbxasset://textures/particles/water.png" p.Rate = 200; p.Lifetime = NumberRange.new(0.5,1); p.Speed = NumberRange.new(50,80) p.SpreadAngle = Vector2.new(0,5); p.Squash = NumberSequence.new(-1) p.Transparency = NumberSequence.new({NumberSequenceKeypoint.new(0,0.4),NumberSequenceKeypoint.new(1,0.8)}) p.Color = ColorSequence.new(Color3.fromRGB(180,210,255)) p.EmissionDirection = Enum.NormalId.Bottom p.Parent = att att.Position = Vector3.new(0, 25, 0) effectRegistry.Rain.instance = att end local function toggleFire(on) if effectRegistry.Fire.instance then effectRegistry.Fire.instance:Destroy() effectRegistry.Fire.instance = nil end if not on then return end local att = makeParticleAttachment() local p = Instance.new("ParticleEmitter", att) p.Texture = "rbxasset://textures/particles/fire_main.dds" p.Rate = 40; p.Lifetime = NumberRange.new(1,2); p.Speed = NumberRange.new(3,6) p.SpreadAngle = Vector2.new(20,20) p.Size = NumberSequence.new({NumberSequenceKeypoint.new(0,1),NumberSequenceKeypoint.new(0.5,1.5),NumberSequenceKeypoint.new(1,0)}) p.Color = ColorSequence.new({ ColorSequenceKeypoint.new(0, Color3.fromRGB(255,200,100)), ColorSequenceKeypoint.new(0.5, Color3.fromRGB(255,120,40)), ColorSequenceKeypoint.new(1, Color3.fromRGB(180,30,10)), }) p.LightEmission = 1 p.EmissionDirection = Enum.NormalId.Bottom p.Parent = att att.Position = Vector3.new(0, -5, 0) effectRegistry.Fire.instance = att end local function toggleStars(on) if effectRegistry.Stars.instance then effectRegistry.Stars.instance:Destroy() effectRegistry.Stars.instance = nil end if not on then return end local att = makeParticleAttachment() local p = Instance.new("ParticleEmitter", att) p.Texture = "rbxasset://textures/particles/sparkles_main.dds" p.Rate = 15; p.Lifetime = NumberRange.new(3,6); p.Speed = NumberRange.new(0.1,0.5) p.SpreadAngle = Vector2.new(180,180) p.Color = ColorSequence.new(Color3.fromRGB(255,255,220)) p.LightEmission = 1 p.Parent = att att.Position = Vector3.new(0, 15, 0) effectRegistry.Stars.instance = att end local function toggleFog(on) if effectRegistry.Fog.instance then effectRegistry.Fog.instance:Destroy() effectRegistry.Fog.instance = nil end if not on then return end local atm = Instance.new("Atmosphere") atm.Density = 0.5; atm.Offset = 0.25 atm.Color = Color3.fromRGB(200,200,220) atm.Parent = Lighting effectRegistry.Fog.instance = atm end local function toggleSunset(on) if effectRegistry.Sunset.instance then effectRegistry.Sunset.instance:Destroy() effectRegistry.Sunset.instance = nil end if not on then return end local sky = Instance.new("Sky") sky.SkyboxBk = "rbxasset://textures/sky/sky512_bk.tex" sky.SkyboxDn = "rbxasset://textures/sky/sky512_dn.tex" sky.SkyboxFt = "rbxasset://textures/sky/sky512_ft.tex" sky.SkyboxLf = "rbxasset://textures/sky/sky512_lf.tex" sky.SkyboxRt = "rbxasset://textures/sky/sky512_rt.tex" sky.SkyboxUp = "rbxasset://textures/sky/sky512_up.tex" sky.Parent = Lighting effectRegistry.Sunset.instance = sky Lighting.ClockTime = 17.5; Lighting.Brightness = 3 Lighting.Ambient = Color3.fromRGB(80,60,80) Lighting.OutdoorAmbient = Color3.fromRGB(140,100,120) end local function toggleNight(on) if on then Lighting.ClockTime = 0; Lighting.Brightness = 1 Lighting.Ambient = Color3.fromRGB(10,10,30) Lighting.OutdoorAmbient = Color3.fromRGB(20,20,50) else Lighting.ClockTime = originalState.ClockTime Lighting.Brightness = originalState.Brightness Lighting.Ambient = originalState.Ambient Lighting.OutdoorAmbient = originalState.OutdoorAmbient end end local function toggleRainbow(on) if effectRegistry.Rainbow.instance then effectRegistry.Rainbow.instance:Destroy() effectRegistry.Rainbow.instance = nil end if not on then return end local cc = Instance.new("ColorCorrectionEffect") cc.Saturation = 0.3 cc.Parent = Lighting effectRegistry.Rainbow.instance = cc task.spawn(function() local hue = 0 while cc.Parent do hue = (hue + 0.005) % 1 cc.TintColor = Color3.fromHSV(hue, 0.4, 1) task.wait(0.03) end end) end local function toggleBloom(on) if effectRegistry.Bloom.instance then effectRegistry.Bloom.instance:Destroy() effectRegistry.Bloom.instance = nil end if not on then return end local b = Instance.new("BloomEffect") b.Intensity = 1.2; b.Size = 30; b.Threshold = 0.8 b.Parent = Lighting effectRegistry.Bloom.instance = b end local function toggleColorCor(on) if effectRegistry.ColorCor.instance then effectRegistry.ColorCor.instance:Destroy() effectRegistry.ColorCor.instance = nil end if not on then return end local cc = Instance.new("ColorCorrectionEffect") cc.Brightness = 0.1; cc.Contrast = 0.15; cc.Saturation = 0.4 cc.TintColor = Color3.fromRGB(255,245,235) cc.Parent = Lighting effectRegistry.ColorCor.instance = cc end local function toggleChroma(on) if effectRegistry.Chroma.instance then effectRegistry.Chroma.instance:Destroy() effectRegistry.Chroma.instance = nil end if not on then return end local cc = Instance.new("ColorCorrectionEffect") cc.Contrast = 0.2; cc.TintColor = Color3.fromRGB(255,200,255) cc.Parent = Lighting effectRegistry.Chroma.instance = cc end local function toggleDOF(on) if effectRegistry.DOF.instance then effectRegistry.DOF.instance:Destroy() effectRegistry.DOF.instance = nil end if not on then return end local d = Instance.new("DepthOfFieldEffect") d.FarIntensity = 0.5; d.FocusDistance = 20; d.InFocusRadius = 15 d.Parent = Lighting effectRegistry.DOF.instance = d end local function updateShaders() toggleSnow(Settings.ShaderSnow); toggleRain(Settings.ShaderRain) toggleFire(Settings.ShaderFire); toggleStars(Settings.ShaderStars) toggleFog(Settings.ShaderFog); toggleSunset(Settings.ShaderSunset) toggleNight(Settings.ShaderNight); toggleRainbow(Settings.ShaderRainbow) toggleBloom(Settings.ShaderBloom); toggleColorCor(Settings.ShaderColorCor) toggleChroma(Settings.ShaderChroma); toggleDOF(Settings.ShaderDOF) end -- ============================================================ -- CUSTOM CURSOR (enhanced with trail) -- ============================================================ local cursorGui = Instance.new("ScreenGui") cursorGui.Name = "ShevonCursor" cursorGui.ResetOnSpawn = false cursorGui.IgnoreGuiInset = true cursorGui.DisplayOrder = 999 pcall(function() cursorGui.Parent = game:GetService("CoreGui") end) if not cursorGui.Parent then cursorGui.Parent = LP:WaitForChild("PlayerGui") end local cursorTrail = {} for i = 1, 5 do local dot = Instance.new("Frame", cursorGui) dot.Size = UDim2.new(0, 4 - i*0.4, 0, 4 - i*0.4) dot.AnchorPoint = Vector2.new(0.5, 0.5) dot.BackgroundColor3 = Color3.fromRGB(160, 130, 255) dot.BackgroundTransparency = 0.4 + i * 0.1 dot.BorderSizePixel = 0 dot.ZIndex = 990 + i Instance.new("UICorner", dot).CornerRadius = UDim.new(1, 0) cursorTrail[i] = {frame = dot, x = 0, y = 0} end local cursorDot = Instance.new("Frame", cursorGui) cursorDot.Size = UDim2.new(0, 5, 0, 5) cursorDot.AnchorPoint = Vector2.new(0.5, 0.5) cursorDot.BackgroundColor3 = Color3.fromRGB(255,255,255) cursorDot.BorderSizePixel = 0 cursorDot.ZIndex = 999 Instance.new("UICorner", cursorDot).CornerRadius = UDim.new(1, 0) local cursorRing = Instance.new("Frame", cursorGui) cursorRing.Size = UDim2.new(0, 24, 0, 24) cursorRing.AnchorPoint = Vector2.new(0.5, 0.5) cursorRing.BackgroundTransparency = 1 cursorRing.ZIndex = 998 Instance.new("UICorner", cursorRing).CornerRadius = UDim.new(1, 0) local cursorRingStroke = Instance.new("UIStroke", cursorRing) cursorRingStroke.Color = Color3.fromRGB(160, 130, 255) cursorRingStroke.Thickness = 1.5 cursorRingStroke.Transparency = 0.3 local cursorGlow = Instance.new("Frame", cursorGui) cursorGlow.Size = UDim2.new(0, 44, 0, 44) cursorGlow.AnchorPoint = Vector2.new(0.5, 0.5) cursorGlow.BackgroundColor3 = Color3.fromRGB(160, 130, 255) cursorGlow.BackgroundTransparency = 0.92 cursorGlow.BorderSizePixel = 0 cursorGlow.ZIndex = 996 Instance.new("UICorner", cursorGlow).CornerRadius = UDim.new(1, 0) local mouseX, mouseY = 0, 0 UserInputService.InputChanged:Connect(function(i) if i.UserInputType == Enum.UserInputType.MouseMovement then local m = UserInputService:GetMouseLocation() mouseX, mouseY = m.X, m.Y cursorDot.Position = UDim2.new(0, mouseX, 0, mouseY) cursorRing.Position = UDim2.new(0, mouseX, 0, mouseY) cursorGlow.Position = UDim2.new(0, mouseX, 0, mouseY) end end) task.spawn(function() local growing = true while task.wait(0.03) do if not Settings.CustomCursor then cursorDot.Visible = false cursorRing.Visible = false cursorGlow.Visible = false for _, t in ipairs(cursorTrail) do t.frame.Visible = false end else cursorDot.Visible = true cursorRing.Visible = true cursorGlow.Visible = true for _, t in ipairs(cursorTrail) do t.frame.Visible = true end local sz = cursorRing.Size.X.Offset if growing then sz = sz + 0.5; if sz >= 32 then growing = false end else sz = sz - 0.5; if sz <= 22 then growing = true end end cursorRing.Size = UDim2.new(0, sz, 0, sz) cursorRingStroke.Transparency = 0.3 + (1 - math.abs(sz - 27) / 5) * 0.3 local prevX, prevY = mouseX, mouseY for i, t in ipairs(cursorTrail) do t.x = t.x + (prevX - t.x) * 0.35 t.y = t.y + (prevY - t.y) * 0.35 t.frame.Position = UDim2.new(0, t.x, 0, t.y) prevX, prevY = t.x, t.y end end end end) -- ============================================================ -- GUI ROOT -- ============================================================ local gui = Instance.new("ScreenGui") gui.Name = "ShevonUIv9" gui.ResetOnSpawn = false gui.IgnoreGuiInset = true gui.ZIndexBehavior = Enum.ZIndexBehavior.Sibling pcall(function() gui.Parent = game:GetService("CoreGui") end) if not gui.Parent then gui.Parent = LP:WaitForChild("PlayerGui") end local frame = Instance.new("Frame") frame.Size = UDim2.new(0, 340, 0, 640) frame.Position = UDim2.new(0, 15, 0, 15) frame.BackgroundColor3 = Theme.Bg frame.BorderSizePixel = 0 frame.Active = true frame.Visible = false frame.ClipsDescendants = true frame.Parent = gui regColor(frame, "BackgroundColor3", "Bg") regAlpha(frame, "BackgroundTransparency", "Bg") Instance.new("UICorner", frame).CornerRadius = UDim.new(0, 16) local frameStroke = Instance.new("UIStroke", frame) frameStroke.Color = Theme.Divider frameStroke.Thickness = 1 frameStroke.Transparency = 0.25 regColor(frameStroke, "Color", "Divider") -- Пульсирующее свечение вокруг local outerGlow = Instance.new("Frame", frame) outerGlow.Size = UDim2.new(1, 14, 1, 14) outerGlow.Position = UDim2.new(0, -7, 0, -7) outerGlow.BackgroundColor3 = Theme.Accent outerGlow.BackgroundTransparency = 0.94 outerGlow.BorderSizePixel = 0 outerGlow.ZIndex = 0 Instance.new("UICorner", outerGlow).CornerRadius = UDim.new(0, 22) regColor(outerGlow, "BackgroundColor3", "Accent") task.spawn(function() local growing = true while outerGlow.Parent do local sz = outerGlow.Size.X.Offset local tr = outerGlow.BackgroundTransparency if growing then sz = sz + 0.15; tr = tr - 0.001 if sz >= 22 then growing = false end else sz = sz - 0.15; tr = tr + 0.001 if sz <= 10 then growing = true end end outerGlow.Size = UDim2.new(1, sz, 1, sz) outerGlow.Position = UDim2.new(0, -sz/2, 0, -sz/2) outerGlow.BackgroundTransparency = math.clamp(tr, 0.88, 0.96) task.wait(0.05) end end) local uiScale = Instance.new("UIScale", frame) uiScale.Scale = Settings.Scale / 100 -- Партиклы local particleHolder = Instance.new("Frame", frame) particleHolder.Size = UDim2.new(1, 0, 1, 0) particleHolder.BackgroundTransparency = 1 particleHolder.ClipsDescendants = true particleHolder.ZIndex = 1 Instance.new("UICorner", particleHolder).CornerRadius = UDim.new(0, 16) local function spawnParticle() if not Settings.Particles then return end local p = Instance.new("Frame", particleHolder) local sz = math.random(2, 6) p.Size = UDim2.new(0, sz, 0, sz) p.BackgroundColor3 = math.random() > 0.5 and Theme.Accent or Theme.AccentHi p.BackgroundTransparency = math.random(50, 88) / 100 p.BorderSizePixel = 0 p.ZIndex = 1 p.Position = UDim2.new(math.random(), 0, 1.05, 0) Instance.new("UICorner", p).CornerRadius = UDim.new(1, 0) regColor(p, "BackgroundColor3", "Accent") local targetY = -0.1 - math.random() * 0.4 local dur = math.random(3, 8) local drift = math.random(-30, 30) / 1000 TweenService:Create(p, TweenInfo.new(dur, Enum.EasingStyle.Linear), { Position = UDim2.new(p.Position.X.Scale + drift, 0, targetY, 0), BackgroundTransparency = 1, Size = UDim2.new(0, sz + 2, 0, sz + 2), }):Play() task.delay(dur, function() p:Destroy() end) end task.spawn(function() while task.wait(0.35) do if Settings.Particles and isGuiVisible then spawnParticle() end end end) -- Верхний градиент с анимацией local bgTint = Instance.new("Frame", frame) bgTint.Size = UDim2.new(1, -2, 0, 180) bgTint.Position = UDim2.new(0, 1, 0, 1) bgTint.BackgroundColor3 = Theme.Accent bgTint.BackgroundTransparency = 1 bgTint.BorderSizePixel = 0 bgTint.ZIndex = 1 Instance.new("UICorner", bgTint).CornerRadius = UDim.new(0, 16) regColor(bgTint, "BackgroundColor3", "Accent") local bgTintGrad = Instance.new("UIGradient", bgTint) bgTintGrad.Rotation = 90 bgTintGrad.Transparency = NumberSequence.new({ NumberSequenceKeypoint.new(0, 0.82), NumberSequenceKeypoint.new(1, 1), }) task.spawn(function() local rot = 0 while bgTint.Parent do rot = (rot + 1) % 360 bgTintGrad.Rotation = 90 + math.sin(rot * math.pi / 180) * 15 task.wait(0.05) end end) -- ============================================================ -- RIPPLE -- ============================================================ local function addRipple(btn) btn.MouseButton1Down:Connect(function() local m = UserInputService:GetMouseLocation() local ap = btn.AbsolutePosition local relX = m.X - ap.X local relY = m.Y - ap.Y for i = 1, 2 do local r = Instance.new("Frame", btn) r.BackgroundColor3 = Color3.fromRGB(255,255,255) r.BackgroundTransparency = 0.6 r.BorderSizePixel = 0 r.Position = UDim2.new(0, relX - 5, 0, relY - 5) r.Size = UDim2.new(0, 10, 0, 10) r.ZIndex = 10 + i Instance.new("UICorner", r).CornerRadius = UDim.new(1, 0) local delay = (i - 1) * 0.08 task.delay(delay, function() TweenService:Create(r, TweenInfo.new(0.55, Enum.EasingStyle.Quad), { Size = UDim2.new(0, 90, 0, 90), Position = UDim2.new(0, relX - 45, 0, relY - 45), BackgroundTransparency = 1, }):Play() end) task.delay(0.7 + delay, function() r:Destroy() end) end end) end -- ============================================================ -- HEADER -- ============================================================ local header = Instance.new("Frame", frame) header.Size = UDim2.new(1, 0, 0, 56) header.BackgroundTransparency = 1 header.ZIndex = 3 local logo = Instance.new("Frame", header) logo.Size = UDim2.new(0, 28, 0, 28) logo.Position = UDim2.new(0, 16, 0, 14) logo.BackgroundColor3 = Theme.Accent logo.BorderSizePixel = 0 logo.ZIndex = 3 Instance.new("UICorner", logo).CornerRadius = UDim.new(0, 9) regColor(logo, "BackgroundColor3", "Accent") local logoGrad = Instance.new("UIGradient", logo) logoGrad.Rotation = 0 logoGrad.Color = ColorSequence.new({ ColorSequenceKeypoint.new(0, Color3.fromRGB(255,255,255)), ColorSequenceKeypoint.new(0.5, Theme.AccentHi), ColorSequenceKeypoint.new(1, Theme.Accent), }) task.spawn(function() while logo.Parent do for i = 0, 360, 4 do logoGrad.Rotation = i task.wait(0.025) end end end) local logoInner = Instance.new("Frame", logo) logoInner.Size = UDim2.new(0, 12, 0, 12) logoInner.Position = UDim2.new(0.5, -6, 0.5, -6) logoInner.BackgroundColor3 = Color3.fromRGB(255,255,255) logoInner.BorderSizePixel = 0 logoInner.ZIndex = 4 Instance.new("UICorner", logoInner).CornerRadius = UDim.new(1, 0) task.spawn(function() while logo.Parent do local ring = Instance.new("Frame", logo) ring.Size = UDim2.new(1, 0, 1, 0) ring.Position = UDim2.new(0.5, 0, 0.5, 0) ring.AnchorPoint = Vector2.new(0.5, 0.5) ring.BackgroundTransparency = 1 ring.ZIndex = 2 Instance.new("UICorner", ring).CornerRadius = UDim.new(0, 9) local rs = Instance.new("UIStroke", ring) rs.Color = Color3.fromRGB(255,255,255) rs.Thickness = 1; rs.Transparency = 0.3 TweenService:Create(ring, TweenInfo.new(1.8, Enum.EasingStyle.Quad), { Size = UDim2.new(1, 18, 1, 18), }):Play() TweenService:Create(rs, TweenInfo.new(1.8, Enum.EasingStyle.Quad), { Transparency = 1, }):Play() task.delay(1.8, function() ring:Destroy() end) task.wait(1.8) end end) local brand = Instance.new("TextLabel", header) brand.Size = UDim2.new(1, -140, 0, 20) brand.Position = UDim2.new(0, 54, 0, 14) brand.BackgroundTransparency = 1 brand.Font = Enum.Font.GothamBold brand.TextSize = 15 brand.TextColor3 = Theme.Text brand.TextXAlignment = Enum.TextXAlignment.Left brand.Text = "Shevon" brand.ZIndex = 3 regColor(brand, "TextColor3", "Text") local brandVer = Instance.new("TextLabel", header) brandVer.Size = UDim2.new(0, 44, 0, 16) brandVer.Position = UDim2.new(0, 116, 0, 17) brandVer.BackgroundColor3 = Theme.Accent brandVer.BackgroundTransparency = 0.85 brandVer.Font = Enum.Font.GothamBold brandVer.TextSize = 8 brandVer.TextColor3 = Theme.AccentHi brandVer.Text = "v9" brandVer.ZIndex = 4 Instance.new("UICorner", brandVer).CornerRadius = UDim.new(0, 4) regColor(brandVer, "TextColor3", "AccentHi") regColor(brandVer, "BackgroundColor3", "Accent") task.spawn(function() while brandVer.Parent do TweenService:Create(brandVer, TweenInfo.new(0.8, Enum.EasingStyle.Sine), { BackgroundTransparency = 0.95, }):Play() task.wait(0.8) TweenService:Create(brandVer, TweenInfo.new(0.8, Enum.EasingStyle.Sine), { BackgroundTransparency = 0.75, }):Play() task.wait(0.8) end end) local brandSub = Instance.new("TextLabel", header) brandSub.Size = UDim2.new(1, -140, 0, 12) brandSub.Position = UDim2.new(0, 54, 0, 34) brandSub.BackgroundTransparency = 1 brandSub.Font = Enum.Font.Gotham brandSub.TextSize = 9 brandSub.TextColor3 = Theme.TextMuted brandSub.TextXAlignment = Enum.TextXAlignment.Left brandSub.Text = "animated · v9" brandSub.ZIndex = 3 regColor(brandSub, "TextColor3", "TextMuted") local statusPill = Instance.new("Frame", header) statusPill.Size = UDim2.new(0, 66, 0, 22) statusPill.Position = UDim2.new(1, -80, 0, 17) statusPill.BackgroundColor3 = Theme.BgCard statusPill.BackgroundTransparency = 0.2 statusPill.BorderSizePixel = 0 statusPill.ZIndex = 3 Instance.new("UICorner", statusPill).CornerRadius = UDim.new(1, 0) regColor(statusPill, "BackgroundColor3", "BgCard") local statusStroke = Instance.new("UIStroke", statusPill) statusStroke.Color = Theme.Success statusStroke.Thickness = 1 statusStroke.Transparency = 0.3 regColor(statusStroke, "Color", "Success") local statusDot = Instance.new("Frame", statusPill) statusDot.Size = UDim2.new(0, 6, 0, 6) statusDot.Position = UDim2.new(0, 10, 0.5, -3) statusDot.BackgroundColor3 = Theme.Success statusDot.BorderSizePixel = 0 statusDot.ZIndex = 4 Instance.new("UICorner", statusDot).CornerRadius = UDim.new(1, 0) regColor(statusDot, "BackgroundColor3", "Success") task.spawn(function() while statusDot.Parent do local ring = Instance.new("Frame", statusPill) ring.Size = UDim2.new(0, 6, 0, 6) ring.Position = UDim2.new(0, 10, 0.5, -3) ring.BackgroundTransparency = 1 ring.ZIndex = 3 Instance.new("UICorner", ring).CornerRadius = UDim.new(1, 0) local rs = Instance.new("UIStroke", ring) rs.Color = Theme.Success rs.Thickness = 1; rs.Transparency = 0.3 regColor(rs, "Color", "Success") TweenService:Create(ring, TweenInfo.new(1.6, Enum.EasingStyle.Quad), { Size = UDim2.new(0, 24, 0, 24), Position = UDim2.new(0, 1, 0.5, -12), }):Play() TweenService:Create(rs, TweenInfo.new(1.6, Enum.EasingStyle.Quad), {Transparency = 1}):Play() task.delay(1.6, function() ring:Destroy() end) task.wait(1.6) end end) local statusText = Instance.new("TextLabel", statusPill) statusText.Size = UDim2.new(1, -18, 1, 0) statusText.Position = UDim2.new(0, 20, 0, 0) statusText.BackgroundTransparency = 1 statusText.Font = Enum.Font.GothamBold statusText.TextSize = 9 statusText.TextColor3 = Theme.Success statusText.TextXAlignment = Enum.TextXAlignment.Left statusText.Text = "ACTIVE" statusText.ZIndex = 4 regColor(statusText, "TextColor3", "Success") -- ============================================================ -- TAB BAR (with shimmer) -- ============================================================ local tabBar = Instance.new("Frame", frame) tabBar.Size = UDim2.new(1, -28, 0, 32) tabBar.Position = UDim2.new(0, 14, 0, 60) tabBar.BackgroundColor3 = Theme.BgSegment tabBar.BackgroundTransparency = 0.15 tabBar.BorderSizePixel = 0 tabBar.ZIndex = 3 tabBar.ClipsDescendants = true Instance.new("UICorner", tabBar).CornerRadius = UDim.new(0, 9) regColor(tabBar, "BackgroundColor3", "BgSegment") local tabBarStroke = Instance.new("UIStroke", tabBar) tabBarStroke.Color = Theme.Divider tabBarStroke.Thickness = 1 tabBarStroke.Transparency = 0.6 regColor(tabBarStroke, "Color", "Divider") local shimmer = Instance.new("Frame", tabBar) shimmer.Size = UDim2.new(0, 40, 1, 0) shimmer.Position = UDim2.new(-0.2, 0, 0, 0) shimmer.BackgroundColor3 = Color3.fromRGB(255,255,255) shimmer.BackgroundTransparency = 0.85 shimmer.BorderSizePixel = 0 shimmer.ZIndex = 3 Instance.new("UICorner", shimmer).CornerRadius = UDim.new(0, 9) local shimmerGrad = Instance.new("UIGradient", shimmer) shimmerGrad.Transparency = NumberSequence.new({ NumberSequenceKeypoint.new(0, 1), NumberSequenceKeypoint.new(0.5, 0), NumberSequenceKeypoint.new(1, 1), }) task.spawn(function() while tabBar.Parent do task.wait(math.random(3, 6)) shimmer.Position = UDim2.new(-0.2, 0, 0, 0) TweenService:Create(shimmer, TweenInfo.new(1.2, Enum.EasingStyle.Linear), { Position = UDim2.new(1.2, 0, 0, 0), }):Play() end end) local tabIndicator = Instance.new("Frame", tabBar) tabIndicator.Size = UDim2.new(0.5, -4, 1, -6) tabIndicator.Position = UDim2.new(0, 3, 0, 3) tabIndicator.BackgroundColor3 = Theme.Accent tabIndicator.BorderSizePixel = 0 tabIndicator.ZIndex = 4 Instance.new("UICorner", tabIndicator).CornerRadius = UDim.new(0, 7) regColor(tabIndicator, "BackgroundColor3", "Accent") local tabIndicatorGrad = Instance.new("UIGradient", tabIndicator) tabIndicatorGrad.Color = ColorSequence.new({ ColorSequenceKeypoint.new(0, Theme.Accent), ColorSequenceKeypoint.new(0.5, Theme.AccentHi), ColorSequenceKeypoint.new(1, Theme.Accent), }) task.spawn(function() local rot = 0 while tabIndicator.Parent do rot = (rot + 2) % 360 tabIndicatorGrad.Rotation = rot task.wait(0.03) end end) local tabMain = Instance.new("TextButton", tabBar) tabMain.Size = UDim2.new(0.5, 0, 1, 0) tabMain.BackgroundTransparency = 1 tabMain.Font = Enum.Font.GothamBold tabMain.TextSize = 11 tabMain.TextColor3 = Color3.new(1,1,1) tabMain.Text = "MAIN" tabMain.ZIndex = 5 local tabShaders = Instance.new("TextButton", tabBar) tabShaders.Size = UDim2.new(0.5, 0, 1, 0) tabShaders.Position = UDim2.new(0.5, 0, 0, 0) tabShaders.BackgroundTransparency = 1 tabShaders.Font = Enum.Font.GothamBold tabShaders.TextSize = 11 tabShaders.TextColor3 = Theme.TextDim tabShaders.Text = "SHADERS" tabShaders.ZIndex = 5 regColor(tabShaders, "TextColor3", "TextDim") -- ============================================================ -- PAGES -- ============================================================ local pageMain = Instance.new("Frame", frame) pageMain.Size = UDim2.new(1, 0, 1, -108) pageMain.Position = UDim2.new(0, 0, 0, 100) pageMain.BackgroundTransparency = 1 pageMain.ClipsDescendants = true pageMain.ZIndex = 2 local pageShaders = Instance.new("Frame", frame) pageShaders.Size = UDim2.new(1, 0, 1, -108) pageShaders.Position = UDim2.new(0, 0, 0, 100) pageShaders.BackgroundTransparency = 1 pageShaders.ClipsDescendants = true pageShaders.Visible = false pageShaders.ZIndex = 2 local function switchTab(name) if name == currentTab then return end local indicatorX = (name == "main") and UDim2.new(0, 3, 0, 3) or UDim2.new(0.5, 1, 0, 3) TweenService:Create(tabIndicator, TweenInfo.new(0.3, Enum.EasingStyle.Back, Enum.EasingDirection.Out), { Position = indicatorX, }):Play() if name == "main" then pageMain.Visible = true pageShaders.Visible = false tabMain.TextColor3 = Color3.new(1,1,1) tabShaders.TextColor3 = Theme.TextDim else pageMain.Visible = false pageShaders.Visible = true tabMain.TextColor3 = Theme.TextDim tabShaders.TextColor3 = Color3.new(1,1,1) end currentTab = name end tabMain.MouseButton1Click:Connect(function() switchTab("main") end) tabShaders.MouseButton1Click:Connect(function() switchTab("shaders") end) -- ============================================================ -- BUILDERS -- ============================================================ local function section(parent, text, y) local bullet = Instance.new("Frame", parent) bullet.Size = UDim2.new(0, 4, 0, 4) bullet.Position = UDim2.new(0, 22, 0, y + 4) bullet.BackgroundColor3 = Theme.Accent bullet.BorderSizePixel = 0 bullet.ZIndex = 3 Instance.new("UICorner", bullet).CornerRadius = UDim.new(1, 0) regColor(bullet, "BackgroundColor3", "Accent") local lbl = Instance.new("TextLabel", parent) lbl.Size = UDim2.new(1, -40, 0, 12) lbl.Position = UDim2.new(0, 32, 0, y) lbl.BackgroundTransparency = 1 lbl.Font = Enum.Font.GothamBold lbl.TextSize = 9 lbl.TextColor3 = Theme.TextMuted lbl.TextXAlignment = Enum.TextXAlignment.Left lbl.Text = string.upper(text) lbl.ZIndex = 3 regColor(lbl, "TextColor3", "TextMuted") end local function dividerP(parent, y) local d = Instance.new("Frame", parent) d.Size = UDim2.new(1, -28, 0, 1) d.Position = UDim2.new(0, 14, 0, y) d.BackgroundColor3 = Theme.Divider d.BackgroundTransparency = 0.5 d.BorderSizePixel = 0 d.ZIndex = 2 regColor(d, "BackgroundColor3", "Divider") end local rowData = {} local function bindRow(parent, y, key, display) local card = Instance.new("Frame", parent) card.Size = UDim2.new(1, -28, 0, 26) card.Position = UDim2.new(0, 14, 0, y) card.BackgroundColor3 = Theme.BgCard card.BackgroundTransparency = 0.1 card.BorderSizePixel = 0 card.ZIndex = 2 card.ClipsDescendants = true Instance.new("UICorner", card).CornerRadius = UDim.new(0, 9) regColor(card, "BackgroundColor3", "BgCard") local cardStroke = Instance.new("UIStroke", card) cardStroke.Color = Theme.Divider cardStroke.Thickness = 1 cardStroke.Transparency = 0.6 regColor(cardStroke, "Color", "Divider") local accentLine = Instance.new("Frame", card) accentLine.Size = UDim2.new(0, 2, 1, -12) accentLine.Position = UDim2.new(0, 0, 0, 6) accentLine.BackgroundColor3 = Theme.Accent accentLine.BackgroundTransparency = 0.3 accentLine.BorderSizePixel = 0 accentLine.ZIndex = 3 Instance.new("UICorner", accentLine).CornerRadius = UDim.new(1, 0) regColor(accentLine, "BackgroundColor3", "Accent") local name = Instance.new("TextLabel", card) name.Size = UDim2.new(1, -90, 1, 0) name.Position = UDim2.new(0, 16, 0, 0) name.BackgroundTransparency = 1 name.Font = Enum.Font.GothamMedium name.TextSize = 11 name.TextColor3 = Theme.Text name.TextXAlignment = Enum.TextXAlignment.Left name.Text = display name.ZIndex = 3 regColor(name, "TextColor3", "Text") local keyPill = Instance.new("Frame", card) keyPill.Size = UDim2.new(0, 66, 0, 20) keyPill.Position = UDim2.new(1, -76, 0.5, -10) keyPill.BackgroundColor3 = Theme.BgCardHi keyPill.BackgroundTransparency = 0.2 keyPill.BorderSizePixel = 0 keyPill.ZIndex = 3 Instance.new("UICorner", keyPill).CornerRadius = UDim.new(0, 6) regColor(keyPill, "BackgroundColor3", "BgCardHi") local keyLbl = Instance.new("TextLabel", keyPill) keyLbl.Size = UDim2.new(1, 0, 1, 0) keyLbl.BackgroundTransparency = 1 keyLbl.Font = Enum.Font.GothamBold keyLbl.TextSize = 10 keyLbl.TextColor3 = Theme.AccentHi keyLbl.Text = bindName(Binds[key]) keyLbl.ZIndex = 4 regColor(keyLbl, "TextColor3", "AccentHi") local btn = Instance.new("TextButton", card) btn.Size = UDim2.new(1, 0, 1, 0) btn.BackgroundTransparency = 1 btn.Text = "" btn.ZIndex = 5 btn.MouseEnter:Connect(function() TweenService:Create(card, TweenInfo.new(0.2), {BackgroundColor3 = Theme.BgCardHi}):Play() TweenService:Create(cardStroke, TweenInfo.new(0.2), {Transparency = 0.1}):Play() TweenService:Create(accentLine, TweenInfo.new(0.2), {BackgroundTransparency = 0, Size = UDim2.new(0, 3, 1, -12)}):Play() TweenService:Create(name, TweenInfo.new(0.2), {Position = UDim2.new(0, 20, 0, 0)}):Play() end) btn.MouseLeave:Connect(function() TweenService:Create(card, TweenInfo.new(0.2), {BackgroundColor3 = Theme.BgCard}):Play() TweenService:Create(cardStroke, TweenInfo.new(0.2), {Transparency = 0.6}):Play() TweenService:Create(accentLine, TweenInfo.new(0.2), {BackgroundTransparency = 0.3, Size = UDim2.new(0, 2, 1, -12)}):Play() TweenService:Create(name, TweenInfo.new(0.2), {Position = UDim2.new(0, 16, 0, 0)}):Play() end) addRipple(btn) rowData[key] = { card = card, name = name, keyLbl = keyLbl, display = display } return card, btn end local function makeSlider(parent, y, labelText, min, max, getter, setter, suffix) local lbl = Instance.new("TextLabel", parent) lbl.Size = UDim2.new(1, -110, 0, 12) lbl.Position = UDim2.new(0, 18, 0, y) lbl.BackgroundTransparency = 1 lbl.Font = Enum.Font.GothamMedium lbl.TextSize = 10 lbl.TextColor3 = Theme.TextDim lbl.TextXAlignment = Enum.TextXAlignment.Left lbl.Text = labelText lbl.ZIndex = 3 regColor(lbl, "TextColor3", "TextDim") local valLbl = Instance.new("TextLabel", parent) valLbl.Size = UDim2.new(0, 70, 0, 12) valLbl.Position = UDim2.new(1, -86, 0, y) valLbl.BackgroundTransparency = 1 valLbl.Font = Enum.Font.GothamBold valLbl.TextSize = 10 valLbl.TextColor3 = Theme.AccentHi valLbl.TextXAlignment = Enum.TextXAlignment.Right valLbl.Text = tostring(getter()) .. (suffix or "") valLbl.ZIndex = 3 regColor(valLbl, "TextColor3", "AccentHi") local track = Instance.new("Frame", parent) track.Size = UDim2.new(1, -36, 0, 6) track.Position = UDim2.new(0, 18, 0, y + 16) track.BackgroundColor3 = Theme.BgCardHi track.BackgroundTransparency = 0.2 track.BorderSizePixel = 0 track.ZIndex = 3 Instance.new("UICorner", track).CornerRadius = UDim.new(1, 0) regColor(track, "BackgroundColor3", "BgCardHi") local rel0 = (getter() - min) / (max - min) local fill = Instance.new("Frame", track) fill.Size = UDim2.new(rel0, 0, 1, 0) fill.BackgroundColor3 = Theme.Accent fill.BorderSizePixel = 0 fill.ZIndex = 4 Instance.new("UICorner", fill).CornerRadius = UDim.new(1, 0) regColor(fill, "BackgroundColor3", "Accent") local knob = Instance.new("Frame", track) knob.Size = UDim2.new(0, 14, 0, 14) knob.AnchorPoint = Vector2.new(0.5, 0.5) knob.Position = UDim2.new(rel0, 0, 0.5, 0) knob.BackgroundColor3 = Color3.fromRGB(255,255,255) knob.BorderSizePixel = 0 knob.ZIndex = 5 Instance.new("UICorner", knob).CornerRadius = UDim.new(1, 0) local kStroke = Instance.new("UIStroke", knob) kStroke.Color = Theme.Accent kStroke.Thickness = 2 regColor(kStroke, "Color", "Accent") local kGlow = Instance.new("Frame", track) kGlow.Size = UDim2.new(0, 26, 0, 26) kGlow.AnchorPoint = Vector2.new(0.5, 0.5) kGlow.Position = UDim2.new(rel0, 0, 0.5, 0) kGlow.BackgroundColor3 = Theme.Accent kGlow.BackgroundTransparency = 0.85 kGlow.BorderSizePixel = 0 kGlow.ZIndex = 4 Instance.new("UICorner", kGlow).CornerRadius = UDim.new(1, 0) regColor(kGlow, "BackgroundColor3", "Accent") local hit = Instance.new("TextButton", track) hit.Size = UDim2.new(1, 0, 0, 24) hit.Position = UDim2.new(0, 0, 0.5, 0) hit.AnchorPoint = Vector2.new(0, 0.5) hit.BackgroundTransparency = 1 hit.Text = "" hit.ZIndex = 6 local dragging = false local function setFromX(x) local ap = track.AbsolutePosition local as = track.AbsoluteSize local rel = math.clamp((x - ap.X) / as.X, 0, 1) local v = math.floor(min + rel * (max - min) + 0.5) setter(v) valLbl.Text = tostring(v) .. (suffix or "") fill.Size = UDim2.new(rel, 0, 1, 0) knob.Position = UDim2.new(rel, 0, 0.5, 0) kGlow.Position = UDim2.new(rel, 0, 0.5, 0) end hit.InputBegan:Connect(function(i) if i.UserInputType == Enum.UserInputType.MouseButton1 or i.UserInputType == Enum.UserInputType.Touch then dragging = true setFromX(i.Position.X) end end) UserInputService.InputChanged:Connect(function(i) if dragging and (i.UserInputType == Enum.UserInputType.MouseMovement or i.UserInputType == Enum.UserInputType.Touch) then setFromX(i.Position.X) end end) UserInputService.InputEnded:Connect(function(i) if i.UserInputType == Enum.UserInputType.MouseButton1 or i.UserInputType == Enum.UserInputType.Touch then dragging = false end end) end local shaderData = {} local function makeShaderToggle(parent, y, key, display, onChanged) local card = Instance.new("Frame", parent) card.Size = UDim2.new(1, -28, 0, 26) card.Position = UDim2.new(0, 14, 0, y) card.BackgroundColor3 = Theme.BgCard card.BackgroundTransparency = 0.1 card.BorderSizePixel = 0 card.ZIndex = 2 card.ClipsDescendants = true Instance.new("UICorner", card).CornerRadius = UDim.new(0, 9) regColor(card, "BackgroundColor3", "BgCard") local cardStroke = Instance.new("UIStroke", card) cardStroke.Color = Theme.Divider cardStroke.Thickness = 1 cardStroke.Transparency = 0.6 regColor(cardStroke, "Color", "Divider") local name = Instance.new("TextLabel", card) name.Size = UDim2.new(1, -70, 1, 0) name.Position = UDim2.new(0, 16, 0, 0) name.BackgroundTransparency = 1 name.Font = Enum.Font.GothamMedium name.TextSize = 11 name.TextColor3 = Theme.Text name.TextXAlignment = Enum.TextXAlignment.Left name.Text = display name.ZIndex = 3 regColor(name, "TextColor3", "Text") local swBg = Instance.new("Frame", card) swBg.Size = UDim2.new(0, 36, 0, 18) swBg.Position = UDim2.new(1, -50, 0.5, -9) swBg.BackgroundColor3 = Settings[key] and Theme.Success or Theme.BgCardHi swBg.BorderSizePixel = 0 swBg.ZIndex = 3 Instance.new("UICorner", swBg).CornerRadius = UDim.new(1, 0) regColor(swBg, "BackgroundColor3", "Success") local swKnob = Instance.new("Frame", swBg) swKnob.Size = UDim2.new(0, 14, 0, 14) swKnob.Position = Settings[key] and UDim2.new(1, -16, 0.5, -7) or UDim2.new(0, 2, 0.5, -7) swKnob.BackgroundColor3 = Color3.fromRGB(255,255,255) swKnob.BorderSizePixel = 0 swKnob.ZIndex = 4 Instance.new("UICorner", swKnob).CornerRadius = UDim.new(1, 0) local btn = Instance.new("TextButton", card) btn.Size = UDim2.new(1, 0, 1, 0) btn.BackgroundTransparency = 1 btn.Text = "" btn.ZIndex = 5 addRipple(btn) btn.MouseEnter:Connect(function() TweenService:Create(card, TweenInfo.new(0.2), {BackgroundColor3 = Theme.BgCardHi}):Play() end) btn.MouseLeave:Connect(function() TweenService:Create(card, TweenInfo.new(0.2), {BackgroundColor3 = Theme.BgCard}):Play() end) btn.MouseButton1Click:Connect(function() Settings[key] = not Settings[key] local on = Settings[key] TweenService:Create(swBg, TweenInfo.new(0.25, Enum.EasingStyle.Back, Enum.EasingDirection.Out), { BackgroundColor3 = on and Theme.Success or Theme.BgCardHi, }):Play() TweenService:Create(swKnob, TweenInfo.new(0.25, Enum.EasingStyle.Back, Enum.EasingDirection.Out), { Position = on and UDim2.new(1, -16, 0.5, -7) or UDim2.new(0, 2, 0.5, -7), }):Play() if onChanged then onChanged(on) end end) shaderData[key] = { card = card, swBg = swBg, swKnob = swKnob } return card, btn end -- ============================================================ -- MAIN PAGE -- ============================================================ section(pageMain, "binds", 10) bindRow(pageMain, 26, "Aim", "Aim Assist") bindRow(pageMain, 56, "Lock", "Target Lock") bindRow(pageMain, 86, "Freeze", "Freeze Self") bindRow(pageMain, 116, "Pallet", "Spawn Pallet") bindRow(pageMain, 146, "FOVToggle", "FOV Toggle") bindRow(pageMain, 176, "Hide", "Hide Menu") dividerP(pageMain, 212) section(pageMain, "target parts", 222) local partRow = Instance.new("Frame", pageMain) partRow.Size = UDim2.new(1, -28, 0, 26) partRow.Position = UDim2.new(0, 14, 0, 238) partRow.BackgroundColor3 = Theme.BgSegment partRow.BackgroundTransparency = 0.15 partRow.BorderSizePixel = 0 partRow.ZIndex = 2 Instance.new("UICorner", partRow).CornerRadius = UDim.new(0, 9) regColor(partRow, "BackgroundColor3", "BgSegment") local partRowStroke = Instance.new("UIStroke", partRow) partRowStroke.Color = Theme.Divider partRowStroke.Thickness = 1 partRowStroke.Transparency = 0.6 regColor(partRowStroke, "Color", "Divider") local partNames = { "Head", "Torso", "Arms" } local partButtons = {} local pw = (340 - 28 - 12) / 3 for i, pn in ipairs(partNames) do local b = Instance.new("TextButton", partRow) b.Size = UDim2.new(0, pw, 0, 20) b.Position = UDim2.new(0, 6 + (i-1)*(pw+2), 0.5, -10) b.BackgroundColor3 = Settings.TargetParts[pn] and Theme.Accent or Theme.BgCard b.BorderSizePixel = 0 b.Font = Enum.Font.GothamBold b.TextSize = 10 b.TextColor3 = Settings.TargetParts[pn] and Color3.new(1,1,1) or Theme.TextDim b.Text = pn b.AutoButtonColor = false b.ZIndex = 4 Instance.new("UICorner", b).CornerRadius = UDim.new(0, 6) addRipple(b) local cap = pn b.MouseButton1Click:Connect(function() local count = 0 for _, v in pairs(Settings.TargetParts) do if v then count = count + 1 end end if Settings.TargetParts[cap] and count <= 1 then return end Settings.TargetParts[cap] = not Settings.TargetParts[cap] for nm, bb in pairs(partButtons) do TweenService:Create(bb, TweenInfo.new(0.2, Enum.EasingStyle.Back), { BackgroundColor3 = Settings.TargetParts[nm] and Theme.Accent or Theme.BgCard, }):Play() bb.TextColor3 = Settings.TargetParts[nm] and Color3.new(1,1,1) or Theme.TextDim end end) partButtons[pn] = b end dividerP(pageMain, 274) section(pageMain, "options", 284) local visCard = Instance.new("Frame", pageMain) visCard.Size = UDim2.new(1, -28, 0, 26) visCard.Position = UDim2.new(0, 14, 0, 300) visCard.BackgroundColor3 = Theme.BgCard visCard.BackgroundTransparency = 0.1 visCard.BorderSizePixel = 0 visCard.ZIndex = 2 Instance.new("UICorner", visCard).CornerRadius = UDim.new(0, 9) regColor(visCard, "BackgroundColor3", "BgCard") local visStroke = Instance.new("UIStroke", visCard) visStroke.Color = Theme.Divider visStroke.Thickness = 1 visStroke.Transparency = 0.6 regColor(visStroke, "Color", "Divider") local visLbl = Instance.new("TextLabel", visCard) visLbl.Size = UDim2.new(1, -70, 1, 0) visLbl.Position = UDim2.new(0, 16, 0, 0) visLbl.BackgroundTransparency = 1 visLbl.Font = Enum.Font.GothamMedium visLbl.TextSize = 11 visLbl.TextColor3 = Theme.Text visLbl.TextXAlignment = Enum.TextXAlignment.Left visLbl.Text = "Visible Check" visLbl.ZIndex = 3 regColor(visLbl, "TextColor3", "Text") local visSwBg = Instance.new("Frame", visCard) visSwBg.Size = UDim2.new(0, 36, 0, 18) visSwBg.Position = UDim2.new(1, -50, 0.5, -9) visSwBg.BackgroundColor3 = Theme.Success visSwBg.BorderSizePixel = 0 visSwBg.ZIndex = 3 Instance.new("UICorner", visSwBg).CornerRadius = UDim.new(1, 0) regColor(visSwBg, "BackgroundColor3", "Success") local visSwKnob = Instance.new("Frame", visSwBg) visSwKnob.Size = UDim2.new(0, 14, 0, 14) visSwKnob.Position = UDim2.new(1, -16, 0.5, -7) visSwKnob.BackgroundColor3 = Color3.fromRGB(255,255,255) visSwKnob.BorderSizePixel = 0 visSwKnob.ZIndex = 4 Instance.new("UICorner", visSwKnob).CornerRadius = UDim.new(1, 0) local visBtn = Instance.new("TextButton", visCard) visBtn.Size = UDim2.new(1, 0, 1, 0) visBtn.BackgroundTransparency = 1 visBtn.Text = "" visBtn.ZIndex = 5 addRipple(visBtn) visBtn.MouseButton1Click:Connect(function() Settings.VisibleCheck = not Settings.VisibleCheck local on = Settings.VisibleCheck TweenService:Create(visSwBg, TweenInfo.new(0.25, Enum.EasingStyle.Back), { BackgroundColor3 = on and Theme.Success or Theme.BgCardHi, }):Play() TweenService:Create(visSwKnob, TweenInfo.new(0.25, Enum.EasingStyle.Back), { Position = on and UDim2.new(1, -16, 0.5, -7) or UDim2.new(0, 2, 0.5, -7), }):Play() end) section(pageMain, "aim", 336) makeSlider(pageMain, 352, "Aim Radius", 0, 100, function() return Settings.MaxDistance end, function(v) Settings.MaxDistance = v end) section(pageMain, "camera", 396) local fovToggle = Instance.new("TextButton", pageMain) fovToggle.Size = UDim2.new(0, 58, 0, 22) fovToggle.Position = UDim2.new(1, -72, 0, 394) fovToggle.BackgroundColor3 = Theme.BgCard fovToggle.BackgroundTransparency = 0.1 fovToggle.BorderSizePixel = 0 fovToggle.Font = Enum.Font.GothamBold fovToggle.TextSize = 10 fovToggle.TextColor3 = Theme.Text fovToggle.Text = "OFF" fovToggle.AutoButtonColor = false fovToggle.ZIndex = 3 Instance.new("UICorner", fovToggle).CornerRadius = UDim.new(0, 6) regColor(fovToggle, "BackgroundColor3", "BgCard") addRipple(fovToggle) local fovToggleStroke = Instance.new("UIStroke", fovToggle) fovToggleStroke.Color = Theme.Danger fovToggleStroke.Thickness = 1 fovToggleStroke.Transparency = 0.3 regColor(fovToggleStroke, "Color", "Danger") makeSlider(pageMain, 416, "Camera FOV", 40, 140, function() return Settings.FOVValue end, function(v) Settings.FOVValue = v if Settings.FOVEnabled then Camera.FieldOfView = v end end) local function refreshFovToggle() if Settings.FOVEnabled then fovToggle.Text = "ON" fovToggleStroke.Color = Theme.Success fovToggle.TextColor3 = Theme.Success else fovToggle.Text = "OFF" fovToggleStroke.Color = Theme.Danger fovToggle.TextColor3 = Theme.Text end end fovToggle.MouseButton1Click:Connect(function() Settings.FOVEnabled = not Settings.FOVEnabled applyFOV() refreshFovToggle() end) refreshFovToggle() section(pageMain, "appearance", 460) local themeRow = Instance.new("Frame", pageMain) themeRow.Size = UDim2.new(1, -28, 0, 26) themeRow.Position = UDim2.new(0, 14, 0, 476) themeRow.BackgroundColor3 = Theme.BgSegment themeRow.BackgroundTransparency = 0.15 themeRow.BorderSizePixel = 0 themeRow.ZIndex = 2 Instance.new("UICorner", themeRow).CornerRadius = UDim.new(0, 9) regColor(themeRow, "BackgroundColor3", "BgSegment") local themeRowStroke = Instance.new("UIStroke", themeRow) themeRowStroke.Color = Theme.Divider themeRowStroke.Thickness = 1 themeRowStroke.Transparency = 0.6 regColor(themeRowStroke, "Color", "Divider") local themeNames = { "classic", "black", "gray", "light-gray", "halloween" } local themeLabels = { "Classic", "Black", "Gray", "Light", "🎃" } local themeButtons = {} local tw = (340 - 28 - 12) / 5 for i, tn in ipairs(themeNames) do local b = Instance.new("TextButton", themeRow) b.Size = UDim2.new(0, tw, 0, 20) b.Position = UDim2.new(0, 6 + (i-1)*(tw+1), 0.5, -10) b.BackgroundColor3 = Settings.ThemeName == tn and Theme.Accent or Theme.BgCard b.BorderSizePixel = 0 b.Font = Enum.Font.GothamBold b.TextSize = 9 b.TextColor3 = Settings.ThemeName == tn and Color3.new(1,1,1) or Theme.TextDim b.Text = themeLabels[i] b.AutoButtonColor = false b.ZIndex = 4 Instance.new("UICorner", b).CornerRadius = UDim.new(0, 6) addRipple(b) local cap = tn b.MouseButton1Click:Connect(function() Settings.ThemeName = cap applyTheme(cap) for nm, bb in pairs(themeButtons) do TweenService:Create(bb, TweenInfo.new(0.2, Enum.EasingStyle.Back), { BackgroundColor3 = (Settings.ThemeName == nm) and Theme.Accent or Theme.BgCard, }):Play() bb.TextColor3 = (Settings.ThemeName == nm) and Color3.new(1,1,1) or Theme.TextDim end end) themeButtons[tn] = b end makeSlider(pageMain, 512, "Opacity", 0, 100, function() return Settings.Opacity end, function(v) Settings.Opacity = v; applyOpacity() end, "%") makeSlider(pageMain, 548, "Scale", 70, 130, function() return Settings.Scale end, function(v) Settings.Scale = v TweenService:Create(uiScale, TweenInfo.new(0.15), {Scale = v / 100}):Play() end, "%") -- ============================================================ -- SHADERS PAGE -- ============================================================ section(pageShaders, "weather", 10) makeShaderToggle(pageShaders, 26, "ShaderSnow", "❄ Snow", function(o) toggleSnow(o) end) makeShaderToggle(pageShaders, 56, "ShaderRain", "🌧 Rain", function(o) toggleRain(o) end) makeShaderToggle(pageShaders, 86, "ShaderFire", "🔥 Fire", function(o) toggleFire(o) end) makeShaderToggle(pageShaders, 116, "ShaderStars","✨ Stars", function(o) toggleStars(o) end) local function dividerS(y) local d = Instance.new("Frame", pageShaders) d.Size = UDim2.new(1, -28, 0, 1) d.Position = UDim2.new(0, 14, 0, y) d.BackgroundColor3 = Theme.Divider d.BackgroundTransparency = 0.5 d.BorderSizePixel = 0 d.ZIndex = 2 regColor(d, "BackgroundColor3", "Divider") end dividerS(152) section(pageShaders, "atmosphere", 162) makeShaderToggle(pageShaders, 178, "ShaderFog", "🌫 Fog", function(o) toggleFog(o) end) makeShaderToggle(pageShaders, 208, "ShaderSunset","🌅 Sunset Sky", function(o) toggleSunset(o) end) makeShaderToggle(pageShaders, 238, "ShaderNight", "🌙 Night Time", function(o) toggleNight(o) end) dividerS(274) section(pageShaders, "post processing", 284) makeShaderToggle(pageShaders, 300, "ShaderBloom", "💎 Bloom", function(o) toggleBloom(o) end) makeShaderToggle(pageShaders, 330, "ShaderColorCor","🎨 Color Correction", function(o) toggleColorCor(o) end) makeShaderToggle(pageShaders, 360, "ShaderRainbow", "🌈 Rainbow Cycle", function(o) toggleRainbow(o) end) makeShaderToggle(pageShaders, 390, "ShaderChroma", "🔴 Chromatic", function(o) toggleChroma(o) end) makeShaderToggle(pageShaders, 420, "ShaderDOF", "🔍 Depth of Field", function(o) toggleDOF(o) end) -- ============================================================ -- FOOTER -- ============================================================ local footer = Instance.new("Frame", frame) footer.Size = UDim2.new(1, 0, 0, 40) footer.Position = UDim2.new(0, 0, 1, -40) footer.BackgroundColor3 = Theme.BgPanel footer.BackgroundTransparency = 0.1 footer.BorderSizePixel = 0 footer.ZIndex = 4 regColor(footer, "BackgroundColor3", "BgPanel") regAlpha(footer, "BackgroundTransparency", "BgPanel") local footerTopLine = Instance.new("Frame", footer) footerTopLine.Size = UDim2.new(1, 0, 0, 1) footerTopLine.Position = UDim2.new(0, 0, 0, 0) footerTopLine.BackgroundColor3 = Theme.Divider footerTopLine.BackgroundTransparency = 0.5 footerTopLine.BorderSizePixel = 0 footerTopLine.ZIndex = 5 regColor(footerTopLine, "BackgroundColor3", "Divider") local sessionLbl = Instance.new("TextLabel", footer) sessionLbl.Size = UDim2.new(0, 120, 0, 12) sessionLbl.Position = UDim2.new(0, 18, 0, 14) sessionLbl.BackgroundTransparency = 1 sessionLbl.Font = Enum.Font.Gotham sessionLbl.TextSize = 9 sessionLbl.TextColor3 = Theme.TextMuted sessionLbl.TextXAlignment = Enum.TextXAlignment.Left sessionLbl.Text = "SESSION 00:00" sessionLbl.ZIndex = 3 regColor(sessionLbl, "TextColor3", "TextMuted") local statsLbl = Instance.new("TextLabel", footer) statsLbl.Size = UDim2.new(0, 180, 0, 12) statsLbl.Position = UDim2.new(1, -198, 0, 14) statsLbl.BackgroundTransparency = 1 statsLbl.Font = Enum.Font.Gotham statsLbl.TextSize = 9 statsLbl.TextColor3 = Theme.TextMuted statsLbl.TextXAlignment = Enum.TextXAlignment.Right statsLbl.Text = "FPS — PING —" statsLbl.ZIndex = 3 regColor(statsLbl, "TextColor3", "TextMuted") -- ============================================================ -- RESIZE -- ============================================================ local resizeHandle = Instance.new("TextButton", frame) resizeHandle.Size = UDim2.new(0, 20, 0, 20) resizeHandle.Position = UDim2.new(1, -22, 1, -22) resizeHandle.BackgroundTransparency = 1 resizeHandle.Text = "" resizeHandle.ZIndex = 10 for i = 0, 2 do local dot = Instance.new("Frame", resizeHandle) dot.Size = UDim2.new(0, 3, 0, 3) dot.Position = UDim2.new(1, -5 - i*4, 1, -5 - i*4) dot.BackgroundColor3 = Theme.TextMuted dot.BackgroundTransparency = 0.4 dot.BorderSizePixel = 0 dot.ZIndex = 11 Instance.new("UICorner", dot).CornerRadius = UDim.new(1, 0) regColor(dot, "BackgroundColor3", "TextMuted") end local resizing, rStart, rSize = false, nil, nil resizeHandle.InputBegan:Connect(function(i) if i.UserInputType == Enum.UserInputType.MouseButton1 then resizing = true; rStart = i.Position; rSize = frame.Size end end) UserInputService.InputChanged:Connect(function(i) if resizing and i.UserInputType == Enum.UserInputType.MouseMovement then local d = i.Position - rStart frame.Size = UDim2.new(0, math.clamp(rSize.X.Offset + d.X, 300, 600), 0, math.clamp(rSize.Y.Offset + d.Y, 500, 1000)) end end) UserInputService.InputEnded:Connect(function(i) if i.UserInputType == Enum.UserInputType.MouseButton1 then resizing = false end end) -- ============================================================ -- BIND CHANGE -- ============================================================ local function refreshRow(key) local d = rowData[key] if not d then return end if awaitingBind == key then d.keyLbl.Text = "..." d.keyLbl.TextColor3 = Theme.Warn else d.keyLbl.Text = bindName(Binds[key]) d.keyLbl.TextColor3 = Theme.AccentHi end end local function refreshAllRows() for k in pairs(rowData) do refreshRow(k) end end local function bindClick(key) return function(input) if input.UserInputType == Enum.UserInputType.MouseButton3 then awaitingBind = key justOpenedBind = true refreshAllRows() task.spawn(function() task.wait(0.05); justOpenedBind = false end) end end end for k, d in pairs(rowData) do local b = d.card:FindFirstChildOfClass("TextButton") if b then b.InputBegan:Connect(bindClick(k)) end end refreshAllRows() applyTheme("classic") applyOpacity() -- ============================================================ -- DRAG -- ============================================================ local dragging, dragStart, startPos header.InputBegan:Connect(function(i) if i.UserInputType == Enum.UserInputType.MouseButton1 then dragging = true; dragStart = i.Position; startPos = frame.Position i.Changed:Connect(function() if i.UserInputState == Enum.UserInputState.End then dragging = false end end) end end) UserInputService.InputChanged:Connect(function(i) if dragging and i.UserInputType == Enum.UserInputType.MouseMovement then local d = i.Position - dragStart frame.Position = UDim2.new(startPos.X.Scale, startPos.X.Offset + d.X, startPos.Y.Scale, startPos.Y.Offset + d.Y) end end) UserInputService.InputEnded:Connect(function(i) if i.UserInputType == Enum.UserInputType.MouseButton1 then dragging = false end end) -- ============================================================ -- FREEZE / AIM -- ============================================================ local savedWalk, savedJump local function freezeCharacter() local c = LP.Character; if not c then return end local h = c:FindFirstChildOfClass("Humanoid") local r = c:FindFirstChild("HumanoidRootPart") if not h or not r then return end isFrozen = true savedWalk, savedJump = h.WalkSpeed, h.JumpPower h.WalkSpeed, h.JumpPower = 0, 0 pcall(function() h.JumpHeight = 0 end) r.Anchored = true end local function unfreezeCharacter() local c = LP.Character; if not c then return end local h = c:FindFirstChildOfClass("Humanoid") local r = c:FindFirstChild("HumanoidRootPart") if h then h.WalkSpeed, h.JumpPower = savedWalk or 16, savedJump or 50 end if r then r.Anchored = false end isFrozen = false end local function isVisible(tp) if not Settings.VisibleCheck then return true end local o = Camera.CFrame.Position local d = tp.Position - o local dist = d.Magnitude if dist < 0.01 then return true end local p = RaycastParams.new() p.FilterType = Enum.RaycastFilterType.Exclude p.FilterDescendantsInstances = {LP.Character, tp.Parent} p.IgnoreWater = true return workspace:Raycast(o, d.Unit * dist, p) == nil end local function isInFront(tp) local cp = Camera.CFrame.Position local lv = Camera.CFrame.LookVector local t = tp.Position - cp if t.Magnitude < 0.001 then return true end return math.deg(math.acos(math.clamp(lv:Dot(t.Unit), -1, 1))) <= Settings.MaxAngle end local function isAllowed(name) if listMode == "ignore" then return not selectedList[name] else return selectedList[name] == true end end local function getParts(char) local out = {} if Settings.TargetParts.Head then local h = char:FindFirstChild("Head") or char:FindFirstChild("HumanoidRootPart") if h then table.insert(out, h) end end if Settings.TargetParts.Torso then local t = char:FindFirstChild("Torso") or char:FindFirstChild("UpperTorso") or char:FindFirstChild("HumanoidRootPart") if t then table.insert(out, t) end end if Settings.TargetParts.Arms then local l = char:FindFirstChild("Left Arm") or char:FindFirstChild("LeftUpperArm") local r = char:FindFirstChild("Right Arm") or char:FindFirstChild("RightUpperArm") if l then table.insert(out, l) end if r then table.insert(out, r) end end if #out == 0 then local hrp = char:FindFirstChild("HumanoidRootPart") if hrp then table.insert(out, hrp) end end return out end local function getTarget() if not LP.Character or not LP.Character:FindFirstChild("HumanoidRootPart") then return nil, nil end local best, bd, bp = nil, math.huge, nil local myPos = LP.Character.HumanoidRootPart.Position for _, plr in ipairs(Players:GetPlayers()) do if plr ~= LP and isAllowed(plr.Name) and plr.Character then local hum = plr.Character:FindFirstChildOfClass("Humanoid") if hum and hum.Health > 0 then for _, tp in ipairs(getParts(plr.Character)) do local dist = (tp.Position - myPos).Magnitude if dist <= Settings.MaxDistance and isInFront(tp) and isVisible(tp) and dist < bd then best, bd, bp = plr, dist, tp end end end end end return best, bp end local function leftClick() pcall(function() VirtualInputManager:SendMouseButtonEvent(0,0,0,true,game,1) VirtualInputManager:SendMouseButtonEvent(0,0,0,false,game,1) end) pcall(function() mouse1click() end) end local function aimAt(target, part) if not target or not part then return end Camera.CFrame = CFrame.new(Camera.CFrame.Position, part.Position) pcall(function() if mouse then mouse.Hit = CFrame.new(Camera.CFrame.Position, part.Position) end end) local now = tick() if now - lastClick >= Settings.ClickDelay then lastClick = now isAimingSelf = true task.spawn(function() RunService.RenderStepped:Wait() leftClick() task.wait(0.05) isAimingSelf = false end) end end local fps, fc, lfu = 0, 0, tick() local function getPing() local ok, r = pcall(function() return LP:GetNetworkPing() end) if ok and type(r) == "number" and r > 0 then return math.floor(r * 1000) end return nil end -- ============================================================ -- INPUT -- ============================================================ UserInputService.InputBegan:Connect(function(input, gp) if awaitingBind then if justOpenedBind then return end if input.KeyCode == Enum.KeyCode.Escape then local p = awaitingBind; awaitingBind = nil; refreshRow(p); return end if input.KeyCode ~= Enum.KeyCode.Unknown then Binds[awaitingBind] = {type="key", value=input.KeyCode} elseif input.UserInputType == Enum.UserInputType.MouseButton1 or input.UserInputType == Enum.UserInputType.MouseButton2 or input.UserInputType == Enum.UserInputType.MouseButton3 then Binds[awaitingBind] = {type="mouse", value=input.UserInputType} else return end local p = awaitingBind; awaitingBind = nil; justBound = true refreshRow(p) task.delay(0.25, function() justBound = false end) return end if isAimingSelf or justBound then return end if matchBind(input, Binds.Hide) then isGuiVisible = not isGuiVisible if isGuiVisible then frame.Visible = true frame.Size = UDim2.new(0, 300, 0, 570) frame.BackgroundTransparency = 1 uiScale.Scale = 0.85 TweenService:Create(frame, TweenInfo.new(0.3, Enum.EasingStyle.Back, Enum.EasingDirection.Out), { Size = UDim2.new(0, 340, 0, 640), BackgroundTransparency = 0, }):Play() TweenService:Create(uiScale, TweenInfo.new(0.35, Enum.EasingStyle.Back, Enum.EasingDirection.Out), { Scale = Settings.Scale / 100, }):Play() task.spawn(function() local items = {} for _, child in ipairs(pageMain:GetDescendants()) do if child:IsA("Frame") or child:IsA("TextLabel") or child:IsA("TextButton") then table.insert(items, child) end end for i, item in ipairs(items) do local targetPos = item.Position item.Position = UDim2.new(targetPos.X.Scale, targetPos.X.Offset, targetPos.Y.Scale, targetPos.Y.Offset + 10) task.spawn(function() task.wait(i * 0.012) TweenService:Create(item, TweenInfo.new(0.28, Enum.EasingStyle.Quart, Enum.EasingDirection.Out), { Position = targetPos, }):Play() end) end end) else TweenService:Create(frame, TweenInfo.new(0.18, Enum.EasingStyle.Quart, Enum.EasingDirection.In), { Size = UDim2.new(0, 300, 0, 570), BackgroundTransparency = 1, }):Play() TweenService:Create(uiScale, TweenInfo.new(0.18, Enum.EasingStyle.Quart, Enum.EasingDirection.In), { Scale = 0.85, }):Play() task.wait(0.2) frame.Visible = false end return end if matchBind(input, Binds.Lock) then if Settings.ManualLock then isLocked = not isLocked end return end if matchBind(input, Binds.Freeze) then freezeCharacter(); return end if matchBind(input, Binds.Aim) then if isLocked then return end local t, p = getTarget() if t and p then aimAt(t, p) end return end if matchBind(input, Binds.Pallet) then spawnPallet(); return end if matchBind(input, Binds.FOVToggle) then Settings.FOVEnabled = not Settings.FOVEnabled applyFOV(); refreshFovToggle() return end end) UserInputService.InputEnded:Connect(function(input) if isAimingSelf then return end if matchBind(input, Binds.Freeze) and isFrozen then unfreezeCharacter() end end) -- ============================================================ -- MAIN LOOP -- ============================================================ RunService.RenderStepped:Connect(function() fc = fc + 1 local now = tick() if now - lfu >= 0.5 then fps = math.floor(fc / (now - lfu) + 0.5) fc = 0; lfu = now if isGuiVisible then local p = getPing() statsLbl.Text = string.format("FPS %d · PING %s", fps, p and (p.." ms") or "—") end end if now - lastTimerTick >= 1 then lastTimerTick = now if isGuiVisible then sessionLbl.Text = "SESSION · " .. formatTime(now - sessionStart) end end end) print("[Shevon UI v9] Загружено. Нажми RCTRL чтобы открыть.")