local Players = game:GetService("Players") local UserInputService = game:GetService("UserInputService") local TweenService = game:GetService("TweenService") local RunService = game:GetService("RunService") local CoreGui = game:GetService("CoreGui") local Workspace = game:GetService("Workspace") local ReplicatedStorage = game:GetService("ReplicatedStorage") local LocalPlayer = Players.LocalPlayer local CONFIG = { Accent = Color3.fromRGB(248, 248, 250), AccentDim = Color3.fromRGB(165, 165, 175), BgTop = Color3.fromRGB(26, 26, 31), BgBottom = Color3.fromRGB(15, 15, 18), Card = Color3.fromRGB(33, 33, 39), CardHover = Color3.fromRGB(44, 44, 52), Stroke = Color3.fromRGB(70, 70, 82), Text = Color3.fromRGB(244, 244, 248), SubText = Color3.fromRGB(135, 135, 148), SummonCooldown = 6, AutoInterval = 1, SpawnPos = Vector3.new(46, 4, 15), EndPos = Vector3.new(46, 6, -1835), } local ICONS = { summon = "", collect = "", rebirth = "", speed = "", base = "", carry = "", luck = "", spawn = "", finish = "", reset = "", prompt = "", home = "", tp = "", gear = "", } local KEYBINDS = { Menu = Enum.KeyCode.K, Summon = Enum.KeyCode.N, Spawn = Enum.KeyCode.B, End = Enum.KeyCode.V, } local rebinding = nil if CoreGui:FindFirstChild("BrainrotHub") then CoreGui.BrainrotHub:Destroy() end local ScreenGui = Instance.new("ScreenGui") ScreenGui.Name = "BrainrotHub" ScreenGui.ResetOnSpawn = false ScreenGui.ZIndexBehavior = Enum.ZIndexBehavior.Sibling ScreenGui.IgnoreGuiInset = true ScreenGui.Parent = CoreGui local function corner(p, r) local c = Instance.new("UICorner") c.CornerRadius = UDim.new(0, r or 12) c.Parent = p return c end local function stroke(p, col, th, tr) local s = Instance.new("UIStroke") s.Color = col or CONFIG.Stroke s.Thickness = th or 1 s.Transparency = tr or 0.5 s.ApplyStrokeMode = Enum.ApplyStrokeMode.Border s.Parent = p return s end local function padding(p, t, b, l, r) local u = Instance.new("UIPadding") u.PaddingTop = UDim.new(0, t or 0) u.PaddingBottom = UDim.new(0, b or 0) u.PaddingLeft = UDim.new(0, l or 0) u.PaddingRight = UDim.new(0, r or 0) u.Parent = p return u end local function gradient(p, c1, c2, rot) local g = Instance.new("UIGradient") g.Color = ColorSequence.new(c1, c2) g.Rotation = rot or 0 g.Parent = p return g end local function animatedGradient(p) local g = Instance.new("UIGradient") g.Color = ColorSequence.new({ ColorSequenceKeypoint.new(0, CONFIG.Accent), ColorSequenceKeypoint.new(0.5, Color3.fromRGB(95, 95, 110)), ColorSequenceKeypoint.new(1, CONFIG.Accent), }) g.Parent = p task.spawn(function() while g.Parent do TweenService:Create(g, TweenInfo.new(4, Enum.EasingStyle.Linear), {Offset = Vector2.new(1, 0)}):Play() task.wait(4) g.Offset = Vector2.new(-1, 0) end end) return g end local function makeIcon(parent, icon, color) if typeof(icon) == "string" and icon:match("^rbxassetid://") then local img = Instance.new("ImageLabel") img.BackgroundTransparency = 1 img.Image = icon img.ImageColor3 = color img.Size = UDim2.new(0, 18, 0, 18) img.Position = UDim2.new(0, 16, 0.5, -9) img.Parent = parent return img else local t = Instance.new("TextLabel") t.BackgroundTransparency = 1 t.Font = Enum.Font.GothamBold t.Text = icon or "" t.TextSize = 16 t.TextColor3 = color t.Size = UDim2.new(0, 24, 1, 0) t.Position = UDim2.new(0, 16, 0, 0) t.TextXAlignment = Enum.TextXAlignment.Left t.Parent = parent return t end end local function attachRipple(btn) btn.ClipsDescendants = true btn.MouseButton1Down:Connect(function(x, y) local r = Instance.new("Frame") r.AnchorPoint = Vector2.new(0.5, 0.5) r.BackgroundColor3 = Color3.new(1, 1, 1) r.BackgroundTransparency = 0.8 r.BorderSizePixel = 0 r.Position = UDim2.new(0, x - btn.AbsolutePosition.X, 0, y - btn.AbsolutePosition.Y) r.Size = UDim2.new(0, 0, 0, 0) r.ZIndex = btn.ZIndex + 6 r.Parent = btn corner(r, 100) local goal = math.max(btn.AbsoluteSize.X, btn.AbsoluteSize.Y) * 2.2 TweenService:Create(r, TweenInfo.new(0.55, Enum.EasingStyle.Quad, Enum.EasingDirection.Out), { Size = UDim2.new(0, goal, 0, goal), BackgroundTransparency = 1, }):Play() task.delay(0.55, function() r:Destroy() end) end) end local Main = Instance.new("Frame") Main.Name = "Main" Main.Size = UDim2.new(0, 560, 0, 400) Main.Position = UDim2.new(0.5, -280, 0.5, -200) Main.BackgroundColor3 = CONFIG.BgTop Main.BorderSizePixel = 0 Main.ClipsDescendants = true Main.Visible = false Main.Parent = ScreenGui corner(Main, 20) gradient(Main, CONFIG.BgTop, CONFIG.BgBottom, 90) local mainStroke = stroke(Main, CONFIG.Accent, 1.4, 0.45) animatedGradient(mainStroke) local shadow = Instance.new("ImageLabel") shadow.AnchorPoint = Vector2.new(0.5, 0.5) shadow.Position = UDim2.new(0.5, 0, 0.5, 0) shadow.Size = UDim2.new(1, 90, 1, 90) shadow.BackgroundTransparency = 1 shadow.Image = "rbxassetid://6014261993" shadow.ImageColor3 = Color3.fromRGB(255, 255, 255) shadow.ImageTransparency = 0.82 shadow.ScaleType = Enum.ScaleType.Slice shadow.SliceCenter = Rect.new(49, 49, 450, 450) shadow.ZIndex = 0 shadow.Parent = Main task.spawn(function() while shadow.Parent do TweenService:Create(shadow, TweenInfo.new(2, Enum.EasingStyle.Sine, Enum.EasingDirection.InOut), {ImageTransparency = 0.92}):Play() task.wait(2) TweenService:Create(shadow, TweenInfo.new(2, Enum.EasingStyle.Sine, Enum.EasingDirection.InOut), {ImageTransparency = 0.78}):Play() task.wait(2) end end) local Side = Instance.new("Frame") Side.Name = "Side" Side.Size = UDim2.new(0, 158, 1, 0) Side.BackgroundColor3 = Color3.fromRGB(22, 22, 27) Side.BackgroundTransparency = 0.25 Side.BorderSizePixel = 0 Side.Parent = Main corner(Side, 20) local sideFix = Instance.new("Frame") sideFix.Size = UDim2.new(0, 20, 1, 0) sideFix.Position = UDim2.new(1, -20, 0, 0) sideFix.BackgroundColor3 = Color3.fromRGB(22, 22, 27) sideFix.BackgroundTransparency = 0.25 sideFix.BorderSizePixel = 0 sideFix.Parent = Side local divider = Instance.new("Frame") divider.Size = UDim2.new(0, 1, 1, -32) divider.Position = UDim2.new(1, -1, 0, 16) divider.BackgroundColor3 = CONFIG.Stroke divider.BackgroundTransparency = 0.5 divider.BorderSizePixel = 0 divider.Parent = Side local Logo = Instance.new("TextLabel") Logo.Size = UDim2.new(1, -28, 0, 26) Logo.Position = UDim2.new(0, 18, 0, 20) Logo.BackgroundTransparency = 1 Logo.Font = Enum.Font.GothamBlack Logo.Text = "BRAINROT" Logo.TextSize = 19 Logo.TextXAlignment = Enum.TextXAlignment.Left Logo.TextColor3 = CONFIG.Text Logo.Parent = Side animatedGradient(Logo) local LogoSub = Instance.new("TextLabel") LogoSub.Size = UDim2.new(1, -28, 0, 14) LogoSub.Position = UDim2.new(0, 18, 0, 46) LogoSub.BackgroundTransparency = 1 LogoSub.Font = Enum.Font.GothamMedium LogoSub.Text = "by akifrzayev" LogoSub.TextSize = 11 LogoSub.TextXAlignment = Enum.TextXAlignment.Left LogoSub.TextColor3 = CONFIG.SubText LogoSub.Parent = Side local TabHolder = Instance.new("Frame") TabHolder.Size = UDim2.new(1, -24, 0, 140) TabHolder.Position = UDim2.new(0, 12, 0, 76) TabHolder.BackgroundTransparency = 1 TabHolder.Parent = Side local tabLayout = Instance.new("UIListLayout") tabLayout.Padding = UDim.new(0, 8) tabLayout.SortOrder = Enum.SortOrder.LayoutOrder tabLayout.Parent = TabHolder local Footer = Instance.new("Frame") Footer.Size = UDim2.new(1, -24, 0, 40) Footer.Position = UDim2.new(0, 12, 1, -54) Footer.BackgroundColor3 = CONFIG.Card Footer.BorderSizePixel = 0 Footer.Parent = Side corner(Footer, 12) stroke(Footer, CONFIG.Stroke, 1, 0.6) local FooterTxt = Instance.new("TextLabel") FooterTxt.Size = UDim2.new(1, -20, 1, 0) FooterTxt.Position = UDim2.new(0, 12, 0, 0) FooterTxt.BackgroundTransparency = 1 FooterTxt.Font = Enum.Font.GothamSemibold FooterTxt.Text = "v1 • akifrzayev" FooterTxt.TextSize = 12 FooterTxt.TextXAlignment = Enum.TextXAlignment.Left FooterTxt.TextColor3 = CONFIG.SubText FooterTxt.Parent = Footer animatedGradient(FooterTxt) local Header = Instance.new("Frame") Header.Size = UDim2.new(1, -158, 0, 62) Header.Position = UDim2.new(0, 158, 0, 0) Header.BackgroundTransparency = 1 Header.Parent = Main local PageTitle = Instance.new("TextLabel") PageTitle.Size = UDim2.new(1, -70, 0, 24) PageTitle.Position = UDim2.new(0, 20, 0, 14) PageTitle.BackgroundTransparency = 1 PageTitle.Font = Enum.Font.GothamBold PageTitle.Text = "Main" PageTitle.TextSize = 19 PageTitle.TextXAlignment = Enum.TextXAlignment.Left PageTitle.TextColor3 = CONFIG.Text PageTitle.Parent = Header local PageDesc = Instance.new("TextLabel") PageDesc.Size = UDim2.new(1, -70, 0, 14) PageDesc.Position = UDim2.new(0, 20, 0, 38) PageDesc.BackgroundTransparency = 1 PageDesc.Font = Enum.Font.Gotham PageDesc.Text = "Main controls" PageDesc.TextSize = 12 PageDesc.TextXAlignment = Enum.TextXAlignment.Left PageDesc.TextColor3 = CONFIG.SubText PageDesc.Parent = Header local CloseBtn = Instance.new("TextButton") CloseBtn.Size = UDim2.new(0, 30, 0, 30) CloseBtn.Position = UDim2.new(1, -42, 0, 14) CloseBtn.BackgroundColor3 = CONFIG.Card CloseBtn.Text = "" CloseBtn.AutoButtonColor = false CloseBtn.Parent = Header corner(CloseBtn, 9) stroke(CloseBtn, CONFIG.Stroke, 1, 0.5) for _, rot in ipairs({45, -45}) do local bar = Instance.new("Frame") bar.AnchorPoint = Vector2.new(0.5, 0.5) bar.Position = UDim2.new(0.5, 0, 0.5, 0) bar.Size = UDim2.new(0, 13, 0, 2) bar.BackgroundColor3 = CONFIG.Text bar.BorderSizePixel = 0 bar.Rotation = rot bar.Parent = CloseBtn corner(bar, 2) end local PageHolder = Instance.new("Frame") PageHolder.Size = UDim2.new(1, -170, 1, -74) PageHolder.Position = UDim2.new(0, 164, 0, 66) PageHolder.BackgroundTransparency = 1 PageHolder.ClipsDescendants = true PageHolder.Parent = Main local pages = {} local tabButtons = {} local pageDescs = {} local currentPage = nil local function makePage(name) local page = Instance.new("ScrollingFrame") page.Name = name page.Size = UDim2.new(1, 0, 1, 0) page.BackgroundTransparency = 1 page.BorderSizePixel = 0 page.ScrollBarThickness = 3 page.ScrollBarImageColor3 = CONFIG.AccentDim page.ScrollBarImageTransparency = 0.3 page.CanvasSize = UDim2.new(0, 0, 0, 0) page.AutomaticCanvasSize = Enum.AutomaticSize.Y page.Visible = false page.Parent = PageHolder local l = Instance.new("UIListLayout") l.Padding = UDim.new(0, 9) l.SortOrder = Enum.SortOrder.LayoutOrder l.Parent = page padding(page, 2, 8, 0, 6) pages[name] = page return page end local function switchPage(name) if currentPage == name then return end for n, pg in pairs(pages) do if n == name then pg.Visible = true pg.Position = UDim2.new(0.04, 0, 0, 0) TweenService:Create(pg, TweenInfo.new(0.32, Enum.EasingStyle.Quint, Enum.EasingDirection.Out), {Position = UDim2.new(0,0,0,0)}):Play() else pg.Visible = false end end for n, b in pairs(tabButtons) do local active = (n == name) TweenService:Create(b, TweenInfo.new(0.2), {BackgroundTransparency = active and 0 or 1}):Play() local lbl = b:FindFirstChild("Label") local acc = b:FindFirstChild("AccentBar") if lbl then TweenService:Create(lbl, TweenInfo.new(0.2), {TextColor3 = active and CONFIG.BgBottom or CONFIG.SubText}):Play() end if acc then TweenService:Create(acc, TweenInfo.new(0.2), {BackgroundTransparency = active and 1 or 1}):Play() end end currentPage = name PageTitle.Text = name PageDesc.Text = pageDescs[name] or "" end local function makeTab(name, icon, desc) pageDescs[name] = desc local btn = Instance.new("TextButton") btn.Size = UDim2.new(1, 0, 0, 40) btn.BackgroundColor3 = CONFIG.Accent btn.BackgroundTransparency = 1 btn.Text = "" btn.AutoButtonColor = false btn.Parent = TabHolder corner(btn, 11) local useIcon = icon ~= nil and icon ~= "" and not (typeof(icon) == "string" and icon:match("^rbxassetid://")) local imgIcon = typeof(icon) == "string" and icon:match("^rbxassetid://") if imgIcon then makeIcon(btn, icon, CONFIG.SubText) end local lbl = Instance.new("TextLabel") lbl.Name = "Label" lbl.Size = UDim2.new(1, imgIcon and -48 or -18, 1, 0) lbl.Position = UDim2.new(0, imgIcon and 44 or 14, 0, 0) lbl.BackgroundTransparency = 1 lbl.Font = Enum.Font.GothamSemibold lbl.Text = useIcon and (icon .. " " .. name) or name lbl.TextSize = 13 lbl.TextXAlignment = Enum.TextXAlignment.Left lbl.TextColor3 = CONFIG.SubText lbl.Parent = btn btn.MouseEnter:Connect(function() if currentPage ~= name then TweenService:Create(btn, TweenInfo.new(0.18), {BackgroundTransparency = 0.92}):Play() end end) btn.MouseLeave:Connect(function() if currentPage ~= name then TweenService:Create(btn, TweenInfo.new(0.18), {BackgroundTransparency = 1}):Play() end end) btn.MouseButton1Click:Connect(function() switchPage(name) end) tabButtons[name] = btn makePage(name) return btn end local NotifHolder = Instance.new("Frame") NotifHolder.AnchorPoint = Vector2.new(1, 1) NotifHolder.Position = UDim2.new(1, -16, 1, -16) NotifHolder.Size = UDim2.new(0, 312, 1, -32) NotifHolder.BackgroundTransparency = 1 NotifHolder.Parent = ScreenGui local nLay = Instance.new("UIListLayout") nLay.Padding = UDim.new(0, 10) nLay.VerticalAlignment = Enum.VerticalAlignment.Bottom nLay.HorizontalAlignment = Enum.HorizontalAlignment.Right nLay.SortOrder = Enum.SortOrder.LayoutOrder nLay.Parent = NotifHolder local function Notify(title, text, kind, duration) kind = kind or "info" duration = duration or 4 local palette = { success = Color3.fromRGB(125, 225, 155), error = Color3.fromRGB(255, 105, 105), info = Color3.fromRGB(242, 242, 245), warn = Color3.fromRGB(242, 200, 120), } local col = palette[kind] or palette.info local card = Instance.new("Frame") card.Size = UDim2.new(1, 0, 0, 64) card.BackgroundColor3 = CONFIG.Card card.BackgroundTransparency = 1 card.BorderSizePixel = 0 card.Position = UDim2.new(1, 24, 0, 0) card.Parent = NotifHolder corner(card, 13) stroke(card, col, 1, 0.6) gradient(card, CONFIG.CardHover, CONFIG.Card, 90) local bar = Instance.new("Frame") bar.Size = UDim2.new(0, 4, 1, -16) bar.Position = UDim2.new(0, 9, 0, 8) bar.BackgroundColor3 = col bar.BackgroundTransparency = 1 bar.BorderSizePixel = 0 bar.Parent = card corner(bar, 4) local nT = Instance.new("TextLabel") nT.Size = UDim2.new(1, -30, 0, 18); nT.Position = UDim2.new(0, 22, 0, 11) nT.BackgroundTransparency = 1; nT.Font = Enum.Font.GothamBold nT.Text = title; nT.TextSize = 14; nT.TextColor3 = CONFIG.Text nT.TextXAlignment = Enum.TextXAlignment.Left; nT.TextTransparency = 1; nT.Parent = card local nB = Instance.new("TextLabel") nB.Size = UDim2.new(1, -30, 0, 24); nB.Position = UDim2.new(0, 22, 0, 30) nB.BackgroundTransparency = 1; nB.Font = Enum.Font.Gotham nB.Text = text; nB.TextSize = 12; nB.TextColor3 = CONFIG.SubText nB.TextXAlignment = Enum.TextXAlignment.Left; nB.TextYAlignment = Enum.TextYAlignment.Top nB.TextWrapped = true; nB.TextTransparency = 1; nB.Parent = card local prog = Instance.new("Frame") prog.Size = UDim2.new(1, -18, 0, 3); prog.Position = UDim2.new(0, 9, 1, -7) prog.BackgroundColor3 = col; prog.BackgroundTransparency = 1; prog.BorderSizePixel = 0; prog.Parent = card corner(prog, 3) local tIn = TweenInfo.new(0.4, Enum.EasingStyle.Quint, Enum.EasingDirection.Out) TweenService:Create(card, tIn, {BackgroundTransparency = 0.02, Position = UDim2.new(0, 0, 0, 0)}):Play() TweenService:Create(bar, tIn, {BackgroundTransparency = 0}):Play() TweenService:Create(nT, tIn, {TextTransparency = 0}):Play() TweenService:Create(nB, tIn, {TextTransparency = 0}):Play() TweenService:Create(prog, tIn, {BackgroundTransparency = 0.3}):Play() TweenService:Create(prog, TweenInfo.new(duration, Enum.EasingStyle.Linear), {Size = UDim2.new(0, 0, 0, 3)}):Play() task.delay(duration, function() local tOut = TweenInfo.new(0.35, Enum.EasingStyle.Quint, Enum.EasingDirection.In) TweenService:Create(card, tOut, {BackgroundTransparency = 1, Position = UDim2.new(1, 24, 0, 0)}):Play() TweenService:Create(bar, tOut, {BackgroundTransparency = 1}):Play() TweenService:Create(nT, tOut, {TextTransparency = 1}):Play() TweenService:Create(nB, tOut, {TextTransparency = 1}):Play() TweenService:Create(prog, tOut, {BackgroundTransparency = 1}):Play() task.wait(0.4); card:Destroy() end) end local function newButton(page, icon, text, callback, primary) local btn = Instance.new("TextButton") btn.Size = UDim2.new(1, 0, 0, 46) btn.BackgroundColor3 = primary and CONFIG.Accent or CONFIG.Card btn.Text = "" btn.AutoButtonColor = false btn.Parent = page corner(btn, 12) local st = stroke(btn, primary and CONFIG.Accent or CONFIG.Stroke, 1, primary and 1 or 0.45) if not primary then gradient(btn, CONFIG.CardHover, CONFIG.Card, 90) end attachRipple(btn) local strip = Instance.new("Frame") strip.Size = UDim2.new(0, 3, 0.55, 0) strip.Position = UDim2.new(0, 0, 0.225, 0) strip.BackgroundColor3 = CONFIG.Accent strip.BackgroundTransparency = primary and 1 or 1 strip.BorderSizePixel = 0 strip.Parent = btn corner(strip, 3) local useIcon = icon ~= nil and icon ~= "" local ic if useIcon then ic = makeIcon(btn, icon, primary and CONFIG.BgBottom or CONFIG.Text) end local lbl = Instance.new("TextLabel") lbl.Name = "Label" lbl.Size = UDim2.new(1, useIcon and -52 or -34, 1, 0) lbl.Position = UDim2.new(0, useIcon and 44 or 18, 0, 0) lbl.BackgroundTransparency = 1; lbl.Font = primary and Enum.Font.GothamBold or Enum.Font.GothamSemibold lbl.Text = text; lbl.TextSize = 14 lbl.TextColor3 = primary and CONFIG.BgBottom or CONFIG.Text lbl.TextXAlignment = Enum.TextXAlignment.Left; lbl.Parent = btn if not primary then btn.MouseEnter:Connect(function() TweenService:Create(btn, TweenInfo.new(0.18), {BackgroundColor3 = CONFIG.CardHover}):Play() TweenService:Create(st, TweenInfo.new(0.18), {Transparency = 0, Color = CONFIG.Accent}):Play() TweenService:Create(strip, TweenInfo.new(0.18), {BackgroundTransparency = 0}):Play() end) btn.MouseLeave:Connect(function() TweenService:Create(btn, TweenInfo.new(0.18), {BackgroundColor3 = CONFIG.Card}):Play() TweenService:Create(st, TweenInfo.new(0.18), {Transparency = 0.45, Color = CONFIG.Stroke}):Play() TweenService:Create(strip, TweenInfo.new(0.18), {BackgroundTransparency = 1}):Play() end) else btn.MouseEnter:Connect(function() TweenService:Create(btn, TweenInfo.new(0.18), {BackgroundColor3 = Color3.fromRGB(225,225,232)}):Play() end) btn.MouseLeave:Connect(function() TweenService:Create(btn, TweenInfo.new(0.18), {BackgroundColor3 = CONFIG.Accent}):Play() end) end btn.MouseButton1Click:Connect(function() if callback then callback() end end) return btn, lbl, ic end local function newToggle(page, icon, text, default, callback) local state = default or false local holder = Instance.new("TextButton") holder.Size = UDim2.new(1, 0, 0, 46) holder.BackgroundColor3 = CONFIG.Card holder.Text = "" holder.AutoButtonColor = false holder.Parent = page corner(holder, 12) local st = stroke(holder, CONFIG.Stroke, 1, 0.45) gradient(holder, CONFIG.CardHover, CONFIG.Card, 90) local useIcon = icon ~= nil and icon ~= "" if useIcon then makeIcon(holder, icon, CONFIG.Text) end local lbl = Instance.new("TextLabel") lbl.Size = UDim2.new(1, useIcon and -110 or -84, 1, 0) lbl.Position = UDim2.new(0, useIcon and 44 or 18, 0, 0) lbl.BackgroundTransparency = 1; lbl.Font = Enum.Font.GothamSemibold lbl.Text = text; lbl.TextSize = 14; lbl.TextColor3 = CONFIG.Text lbl.TextXAlignment = Enum.TextXAlignment.Left; lbl.Parent = holder local track = Instance.new("Frame") track.Size = UDim2.new(0, 46, 0, 24); track.Position = UDim2.new(1, -58, 0.5, -12) track.BackgroundColor3 = Color3.fromRGB(52, 52, 60); track.BorderSizePixel = 0; track.Parent = holder corner(track, 12) local knob = Instance.new("Frame") knob.Size = UDim2.new(0, 18, 0, 18); knob.Position = UDim2.new(0, 3, 0.5, -9) knob.BackgroundColor3 = Color3.fromRGB(195, 195, 202); knob.BorderSizePixel = 0; knob.Parent = track corner(knob, 9) local function refresh(anim) local ti = TweenInfo.new(anim and 0.22 or 0, Enum.EasingStyle.Back, Enum.EasingDirection.Out) if state then TweenService:Create(track, ti, {BackgroundColor3 = CONFIG.Accent}):Play() TweenService:Create(knob, ti, {Position = UDim2.new(1, -21, 0.5, -9), BackgroundColor3 = CONFIG.BgBottom}):Play() else TweenService:Create(track, ti, {BackgroundColor3 = Color3.fromRGB(52, 52, 60)}):Play() TweenService:Create(knob, ti, {Position = UDim2.new(0, 3, 0.5, -9), BackgroundColor3 = Color3.fromRGB(195,195,202)}):Play() end end holder.MouseEnter:Connect(function() TweenService:Create(st, TweenInfo.new(0.18), {Transparency = 0.1}):Play() end) holder.MouseLeave:Connect(function() TweenService:Create(st, TweenInfo.new(0.18), {Transparency = 0.45}):Play() end) holder.MouseButton1Click:Connect(function() state = not state; refresh(true) if callback then callback(state) end end) refresh(false) return holder end local function newAutoToggle(page, icon, text, action, interval) local running = false newToggle(page, icon, text, false, function(on) running = on Notify(text, on and "Enabled" or "Disabled", on and "success" or "info", 2) if on then task.spawn(function() while running do pcall(action); task.wait(interval or CONFIG.AutoInterval) end end) end end) end local function newKeybind(page, label, field) local holder = Instance.new("Frame") holder.Size = UDim2.new(1, 0, 0, 46); holder.BackgroundColor3 = CONFIG.Card holder.BorderSizePixel = 0; holder.Parent = page corner(holder, 12); stroke(holder, CONFIG.Stroke, 1, 0.45) gradient(holder, CONFIG.CardHover, CONFIG.Card, 90) local lbl = Instance.new("TextLabel") lbl.Size = UDim2.new(1, -100, 1, 0); lbl.Position = UDim2.new(0, 18, 0, 0) lbl.BackgroundTransparency = 1; lbl.Font = Enum.Font.GothamSemibold lbl.Text = label; lbl.TextSize = 14; lbl.TextColor3 = CONFIG.Text lbl.TextXAlignment = Enum.TextXAlignment.Left; lbl.Parent = holder local box = Instance.new("TextButton") box.Size = UDim2.new(0, 64, 0, 28); box.Position = UDim2.new(1, -76, 0.5, -14) box.BackgroundColor3 = Color3.fromRGB(52, 52, 60); box.AutoButtonColor = false box.Font = Enum.Font.GothamBold; box.TextSize = 13; box.TextColor3 = CONFIG.Text box.Text = KEYBINDS[field].Name; box.Parent = holder corner(box, 8); stroke(box, CONFIG.Stroke, 1, 0.4) box.MouseButton1Click:Connect(function() box.Text = "..." box.TextColor3 = CONFIG.BgBottom TweenService:Create(box, TweenInfo.new(0.15), {BackgroundColor3 = CONFIG.Accent}):Play() rebinding = { field = field, box = box } end) return holder end local function newSlider(page, label, minV, maxV, default, onChange) local value = default local holder = Instance.new("Frame") holder.Size = UDim2.new(1, 0, 0, 58); holder.BackgroundColor3 = CONFIG.Card holder.BorderSizePixel = 0; holder.Parent = page corner(holder, 12); stroke(holder, CONFIG.Stroke, 1, 0.45) gradient(holder, CONFIG.CardHover, CONFIG.Card, 90) local lbl = Instance.new("TextLabel") lbl.Size = UDim2.new(1, -80, 0, 20); lbl.Position = UDim2.new(0, 18, 0, 9) lbl.BackgroundTransparency = 1; lbl.Font = Enum.Font.GothamSemibold lbl.Text = label; lbl.TextSize = 14; lbl.TextColor3 = CONFIG.Text lbl.TextXAlignment = Enum.TextXAlignment.Left; lbl.Parent = holder local valLbl = Instance.new("TextLabel") valLbl.Size = UDim2.new(0, 60, 0, 20); valLbl.Position = UDim2.new(1, -74, 0, 9) valLbl.BackgroundTransparency = 1; valLbl.Font = Enum.Font.GothamBold valLbl.Text = tostring(value); valLbl.TextSize = 14; valLbl.TextColor3 = CONFIG.Accent valLbl.TextXAlignment = Enum.TextXAlignment.Right; valLbl.Parent = holder local track = Instance.new("Frame") track.Size = UDim2.new(1, -36, 0, 6); track.Position = UDim2.new(0, 18, 1, -18) track.BackgroundColor3 = Color3.fromRGB(52, 52, 60); track.BorderSizePixel = 0; track.Parent = holder corner(track, 3) local fill = Instance.new("Frame") fill.Size = UDim2.new((value - minV) / (maxV - minV), 0, 1, 0) fill.BackgroundColor3 = CONFIG.Accent; fill.BorderSizePixel = 0; fill.Parent = track corner(fill, 3) local knob = Instance.new("Frame") knob.AnchorPoint = Vector2.new(0.5, 0.5); knob.Size = UDim2.new(0, 14, 0, 14) knob.Position = UDim2.new((value - minV) / (maxV - minV), 0, 0.5, 0) knob.BackgroundColor3 = CONFIG.Accent; knob.BorderSizePixel = 0; knob.Parent = track corner(knob, 7) local dragging = false local function update(px) local rel = math.clamp((px - track.AbsolutePosition.X) / track.AbsoluteSize.X, 0, 1) value = math.floor(minV + (maxV - minV) * rel + 0.5) fill.Size = UDim2.new(rel, 0, 1, 0) knob.Position = UDim2.new(rel, 0, 0.5, 0) valLbl.Text = tostring(value) if onChange then onChange(value) end end track.InputBegan:Connect(function(i) if i.UserInputType == Enum.UserInputType.MouseButton1 or i.UserInputType == Enum.UserInputType.Touch then dragging = true; update(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 update(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) return holder end local function sectionLabel(page, text) local h = Instance.new("Frame") h.Size = UDim2.new(1, 0, 0, 20); h.BackgroundTransparency = 1; h.Parent = page local dot = Instance.new("Frame") dot.Size = UDim2.new(0, 3, 0, 12); dot.Position = UDim2.new(0, 2, 0.5, -6) dot.BackgroundColor3 = CONFIG.AccentDim; dot.BorderSizePixel = 0; dot.Parent = h corner(dot, 2) local l = Instance.new("TextLabel") l.Size = UDim2.new(1, -14, 1, 0); l.Position = UDim2.new(0, 12, 0, 0) l.BackgroundTransparency = 1; l.Font = Enum.Font.GothamBold; l.Text = text l.TextSize = 11; l.TextColor3 = CONFIG.SubText; l.TextXAlignment = Enum.TextXAlignment.Left; l.Parent = h return h end local dragging, dragStart, startPos = false, nil, nil local function beginDrag(input) dragging = true; dragStart = input.Position; startPos = Main.Position input.Changed:Connect(function() if input.UserInputState == Enum.UserInputState.End then dragging = false end end) end Header.InputBegan:Connect(function(i) if i.UserInputType == Enum.UserInputType.MouseButton1 or i.UserInputType == Enum.UserInputType.Touch then beginDrag(i) end end) Logo.InputBegan:Connect(function(i) if i.UserInputType == Enum.UserInputType.MouseButton1 or i.UserInputType == Enum.UserInputType.Touch then beginDrag(i) end end) UserInputService.InputChanged:Connect(function(i) if dragging and (i.UserInputType == Enum.UserInputType.MouseMovement or i.UserInputType == Enum.UserInputType.Touch) then local d = i.Position - dragStart Main.Position = UDim2.new(startPos.X.Scale, startPos.X.Offset + d.X, startPos.Y.Scale, startPos.Y.Offset + d.Y) end end) local isOpen = false local function setOpen(open) isOpen = open if open then Main.Visible = true Main.Size = UDim2.new(0, 560, 0, 0); Main.BackgroundTransparency = 1 TweenService:Create(Main, TweenInfo.new(0.45, Enum.EasingStyle.Back, Enum.EasingDirection.Out), { Size = UDim2.new(0, 560, 0, 400), BackgroundTransparency = 0, }):Play() else TweenService:Create(Main, TweenInfo.new(0.3, Enum.EasingStyle.Quint, Enum.EasingDirection.In), { Size = UDim2.new(0, 560, 0, 0), BackgroundTransparency = 1, }):Play() task.wait(0.3); if not isOpen then Main.Visible = false end end end CloseBtn.MouseEnter:Connect(function() TweenService:Create(CloseBtn, TweenInfo.new(0.18), {BackgroundColor3 = Color3.fromRGB(220, 70, 70)}):Play() end) CloseBtn.MouseLeave:Connect(function() TweenService:Create(CloseBtn, TweenInfo.new(0.18), {BackgroundColor3 = CONFIG.Card}):Play() end) CloseBtn.MouseButton1Click:Connect(function() setOpen(false) end) UserInputService.InputBegan:Connect(function(i, gpe) if gpe or rebinding then return end if i.KeyCode == KEYBINDS.Menu then setOpen(not isOpen) end end) local instantPromptEnabled = true local promptConn = nil local function applyInstant(p) if instantPromptEnabled and p:IsA("ProximityPrompt") then p.HoldDuration = 0 end end local function enableInstantPrompts(on) instantPromptEnabled = on if on then for _, v in ipairs(Workspace:GetDescendants()) do applyInstant(v) end if not promptConn then promptConn = Workspace.DescendantAdded:Connect(applyInstant) end else if promptConn then promptConn:Disconnect(); promptConn = nil end end end enableInstantPrompts(true) local function teleportTo(pos, label) local char = LocalPlayer.Character local hrp = char and char:FindFirstChild("HumanoidRootPart") if hrp then hrp.CFrame = CFrame.new(pos) Notify("Teleport", label, "success", 3) else Notify("Error", "Character not found", "error", 3) end end makeTab("Main", ICONS.home, "Main controls") makeTab("Teleport", ICONS.tp, "Teleport & character") makeTab("Settings", ICONS.gear, "Hub settings") local mp = pages["Main"] sectionLabel(mp, "SUMMON") local summonBtn, summonLbl = newButton(mp, ICONS.summon, "Summon Brainrots", function() end) local summonCD = false local function doSummon() if summonCD then Notify("Cooldown", "Please wait...", "warn", 2) return end summonCD = true local ok = pcall(function() local args = { [1] = Workspace.Locations:FindFirstChild("End"), n = 1 } ReplicatedStorage.Events.SummonBrainrots:FireServer(unpack(args, 1, args.n or #args)) end) Notify("Summon", ok and "Brainrots summoned!" or "Summon failed", ok and "success" or "error", 3) TweenService:Create(summonBtn, TweenInfo.new(0.2), {BackgroundColor3 = Color3.fromRGB(46, 38, 38)}):Play() for i = CONFIG.SummonCooldown, 1, -1 do summonLbl.Text = "Cooldown... " .. i .. "s"; task.wait(1) end summonLbl.Text = "Summon Brainrots" TweenService:Create(summonBtn, TweenInfo.new(0.2), {BackgroundColor3 = CONFIG.Card}):Play() summonCD = false end summonBtn.MouseButton1Click:Connect(doSummon) sectionLabel(mp, "SPEED") local desiredSpeed = 16 local speedActive = false newSlider(mp, "Walk Speed", 16, 500, 16, function(v) desiredSpeed = v speedActive = v > 16 end) RunService.Heartbeat:Connect(function() if not speedActive then return end local char = LocalPlayer.Character local hum = char and char:FindFirstChildOfClass("Humanoid") if hum then hum.WalkSpeed = desiredSpeed end end) sectionLabel(mp, "AUTO FEATURES") newAutoToggle(mp, ICONS.collect, "Auto Collect", function() local stands = LocalPlayer:FindFirstChild("AnimalStands") if not stands then return end for i = 1, 35 do local stand = stands:FindFirstChild(tostring(i)) if stand then ReplicatedStorage.Events.CollectCash:FireServer(stand) end end end) newAutoToggle(mp, ICONS.rebirth, "Auto Rebirth", function() ReplicatedStorage.Events.Rebirth:FireServer() end) newAutoToggle(mp, ICONS.speed, "Auto Buy Speed", function() local args = { [1] = 5, n = 1 } ReplicatedStorage.Events.BuySpeed:FireServer(unpack(args, 1, args.n or #args)) end) newAutoToggle(mp, ICONS.base, "Auto Upgrade Base", function() ReplicatedStorage.Events.UpgradeBase:FireServer() end) newAutoToggle(mp, ICONS.carry, "Auto Buy Carry", function() ReplicatedStorage.Events.BuyCarry:FireServer() end) newAutoToggle(mp, ICONS.luck, "Auto Buy Luck", function() ReplicatedStorage.Events.PurchaseMorph:FireServer() end) local tp = pages["Teleport"] sectionLabel(tp, "TELEPORT LOCATIONS") newButton(tp, ICONS.spawn, "Teleport To Spawn", function() teleportTo(CONFIG.SpawnPos, "Teleported to Spawn") end) newButton(tp, ICONS.finish, "Teleport To End", function() teleportTo(CONFIG.EndPos, "Teleported to End") end) local sp = pages["Settings"] local infiniteJump = true UserInputService.JumpRequest:Connect(function() if not infiniteJump then return end local char = LocalPlayer.Character local hum = char and char:FindFirstChildOfClass("Humanoid") if hum then hum:ChangeState(Enum.HumanoidStateType.Jumping) end end) sectionLabel(sp, "EXPLOITS") newToggle(sp, ICONS.prompt, "Instant ProximityPrompt", true, function(on) enableInstantPrompts(on) Notify("Instant Prompt", on and "Enabled (HoldDuration = 0)" or "Disabled", on and "success" or "info", 3) end) newToggle(sp, "", "Infinite Jump", true, function(on) infiniteJump = on Notify("Infinite Jump", on and "Enabled" or "Disabled", on and "success" or "info", 3) end) sectionLabel(sp, "KEYBINDS") newKeybind(sp, "Open / Close Menu", "Menu") newKeybind(sp, "Summon Brainrots", "Summon") newKeybind(sp, "Teleport To Spawn", "Spawn") newKeybind(sp, "Teleport To End", "End") switchPage("Main") setOpen(true) UserInputService.InputBegan:Connect(function(i, gpe) if rebinding and i.UserInputType == Enum.UserInputType.Keyboard then KEYBINDS[rebinding.field] = i.KeyCode rebinding.box.Text = i.KeyCode.Name rebinding.box.TextColor3 = CONFIG.Text TweenService:Create(rebinding.box, TweenInfo.new(0.15), {BackgroundColor3 = Color3.fromRGB(52, 52, 60)}):Play() rebinding = nil return end if gpe then return end if i.KeyCode == KEYBINDS.Summon then doSummon() elseif i.KeyCode == KEYBINDS.Spawn then teleportTo(CONFIG.SpawnPos, "Teleported to Spawn") elseif i.KeyCode == KEYBINDS.End then teleportTo(CONFIG.EndPos, "Teleported to End") end end) task.delay(0.4, function() Notify("BE A BRAINROT", "Hub loaded! Toggle key: K (rebind in Settings).", "success", 5) Notify("Auto-enabled", "Instant Prompt + Infinite Jump ⚡", "success", 5) Notify("by akifrzayev", "Made by akifrzayev 💜", "info", 6) end) print("[BrainrotHub v1] Loaded — by akifrzayev | Press 'K' to toggle")