-- [[ 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 ]] -- LocalScript / Mega Hub (Stable 13-Tab Version) task.wait(1) -- Short buffer to ensure the game environment is loaded local Players = game:GetService("Players") local TweenService = game:GetService("TweenService") local UserInputService = game:GetService("UserInputService") local Lighting = game:GetService("Lighting") local RunService = game:GetService("RunService") local CoreGui = game:GetService("CoreGui") local player = Players.LocalPlayer if not player then player = Players.PlayerAdded:Wait() end print("[Mega Hub] Script starting...") -------------------------------------------------- -- SAFE GUI PARENTING (Executor Compatibility) -------------------------------------------------- local function getSafeParent() local success, parent = pcall(function() if gethui then return gethui() end return CoreGui end) if success and parent then return parent end return player:WaitForChild("PlayerGui") end local targetParent = getSafeParent() -------------------------------------------------- -- SESSION STATS & PLAYTIME -------------------------------------------------- local sessionStartTime = tick() -------------------------------------------------- -- GUI CREATION -------------------------------------------------- local gui = Instance.new("ScreenGui") gui.Name = "MegaHubUI_" .. math.random(1000, 9999) gui.ResetOnSpawn = false gui.Parent = targetParent local main = Instance.new("Frame") main.Size = UDim2.new(0, 620, 0, 700) main.Position = UDim2.new(0.5, -310, 0.5, -350) main.BackgroundColor3 = Color3.fromRGB(12, 15, 13) main.BackgroundTransparency = 0 main.BorderSizePixel = 0 main.ClipsDescendants = false main.Parent = gui -- Opening Animation main.Size = UDim2.new(0, 0, 0, 0) main.Position = UDim2.new(0.5, 0, 0.5, 0) TweenService:Create(main, TweenInfo.new(0.4, Enum.EasingStyle.Quart, Enum.EasingDirection.Out), { Size = UDim2.new(0, 620, 0, 700), Position = UDim2.new(0.5, -310, 0.5, -350) }):Play() local mainCorner = Instance.new("UICorner") mainCorner.CornerRadius = UDim.new(0, 16) mainCorner.Parent = main local mainStroke = Instance.new("UIStroke") mainStroke.Color = Color3.fromRGB(0, 180, 255) mainStroke.Thickness = 1.5 mainStroke.Transparency = 0.2 mainStroke.Parent = main print("[Mega Hub] GUI created successfully!") -------------------------------------------------- -- CROSSHAIR SYSTEM -------------------------------------------------- local crosshairGui = Instance.new("ScreenGui") crosshairGui.Name = "CustomCrosshairUI" crosshairGui.ResetOnSpawn = false crosshairGui.Enabled = false crosshairGui.Parent = targetParent local crossDot = Instance.new("Frame") crossDot.Size = UDim2.new(0, 6, 0, 6) crossDot.Position = UDim2.new(0.5, -3, 0.5, -3) crossDot.BackgroundColor3 = Color3.fromRGB(0, 180, 255) crossDot.BorderSizePixel = 0 crossDot.Parent = crosshairGui local cdCorner = Instance.new("UICorner") cdCorner.CornerRadius = UDim.new(1, 0) cdCorner.Parent = crossDot -------------------------------------------------- -- KEYBIND CHANGER & TOGGLE SYSTEM -------------------------------------------------- local toggleKey = Enum.KeyCode.Insert local menuVisible = true local isAnimating = false local listeningForKey = false local function toggleMenu() if isAnimating or listeningForKey then return end isAnimating = true if menuVisible then local closeTween = TweenService:Create(main, TweenInfo.new(0.3, Enum.EasingStyle.Quart, Enum.EasingDirection.In), { Size = UDim2.new(0, 0, 0, 0), Position = UDim2.new(0.5, 0, 0.5, 0), BackgroundTransparency = 1 }) closeTween:Play() closeTween.Completed:Wait() main.Visible = false menuVisible = false else main.Visible = true main.Size = UDim2.new(0, 0, 0, 0) main.Position = UDim2.new(0.5, 0, 0.5, 0) local openTween = TweenService:Create(main, TweenInfo.new(0.35, Enum.EasingStyle.Quart, Enum.EasingDirection.Out), { Size = UDim2.new(0, 620, 0, 700), Position = UDim2.new(0.5, -310, 0.5, -350), BackgroundTransparency = 0 }) openTween:Play() openTween.Completed:Wait() menuVisible = true end isAnimating = false end UserInputService.InputBegan:Connect(function(input, gameProcessed) if input.KeyCode == toggleKey then toggleMenu() end end) -------------------------------------------------- -- RESIZE HANDLE -------------------------------------------------- local resizeHandle = Instance.new("TextButton") resizeHandle.Size = UDim2.new(0, 20, 0, 20) resizeHandle.Position = UDim2.new(1, -20, 1, -20) resizeHandle.BackgroundTransparency = 1 resizeHandle.Text = "◢" resizeHandle.Font = Enum.Font.GothamBold resizeHandle.TextSize = 14 resizeHandle.TextColor3 = Color3.fromRGB(0, 180, 255) resizeHandle.ZIndex = 50 resizeHandle.Parent = main local resizing = false local resizeStartPos, startSize resizeHandle.InputBegan:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseButton1 then resizing = true resizeStartPos = input.Position startSize = main.AbsoluteSize end end) UserInputService.InputChanged:Connect(function(input) if resizing and input.UserInputType == Enum.UserInputType.MouseMovement then local delta = input.Position - resizeStartPos local newWidth = math.clamp(startSize.X + delta.X, 500, 950) local newHeight = math.clamp(startSize.Y + delta.Y, 550, 900) main.Size = UDim2.new(0, newWidth, 0, newHeight) end end) UserInputService.InputEnded:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseButton1 then resizing = false end end) -------------------------------------------------- -- TOOLTIP SYSTEM -------------------------------------------------- local tooltip = Instance.new("Frame") tooltip.Size = UDim2.new(0, 200, 0, 36) tooltip.Position = UDim2.new(1, 12, 0, 0) tooltip.BackgroundColor3 = Color3.fromRGB(18, 24, 30) tooltip.BorderSizePixel = 0 tooltip.Visible = false tooltip.ZIndex = 20 tooltip.Parent = main local tooltipCorner = Instance.new("UICorner") tooltipCorner.CornerRadius = UDim.new(0, 8) tooltipCorner.Parent = tooltip local tooltipStroke = Instance.new("UIStroke") tooltipStroke.Color = Color3.fromRGB(0, 180, 255) tooltipStroke.Thickness = 1 tooltipStroke.Transparency = 0.4 tooltipStroke.Parent = tooltip local tooltipText = Instance.new("TextLabel") tooltipText.Size = UDim2.new(1, -16, 1, 0) tooltipText.Position = UDim2.new(0, 8, 0, 0) tooltipText.BackgroundTransparency = 1 tooltipText.Font = Enum.Font.GothamMedium tooltipText.TextSize = 10 tooltipText.TextColor3 = Color3.fromRGB(210, 225, 235) tooltipText.TextWrapped = true tooltipText.TextXAlignment = Enum.TextXAlignment.Left tooltipText.ZIndex = 21 tooltipText.Parent = tooltip local function showTooltip(element, description) element.MouseEnter:Connect(function() tooltipText.Text = description tooltip.Position = UDim2.new(1, 12, 0, math.clamp(element.Position.Y.Offset, 0, 600)) tooltip.Visible = true tooltip.Size = UDim2.new(0, 0, 0, 0) tooltip.BackgroundTransparency = 1 tooltipText.TextTransparency = 1 tooltipStroke.Transparency = 1 TweenService:Create(tooltip, TweenInfo.new(0.2, Enum.EasingStyle.Quart, Enum.EasingDirection.Out), { Size = UDim2.new(0, 200, 0, 36), BackgroundTransparency = 0 }):Play() TweenService:Create(tooltipText, TweenInfo.new(0.2, Enum.EasingStyle.Quart, Enum.EasingDirection.Out), { TextTransparency = 0 }):Play() TweenService:Create(tooltipStroke, TweenInfo.new(0.2, Enum.EasingStyle.Quart, Enum.EasingDirection.Out), { Transparency = 0.4 }):Play() end) element.MouseLeave:Connect(function() local outTween = TweenService:Create(tooltip, TweenInfo.new(0.15, Enum.EasingStyle.Quart, Enum.EasingDirection.In), { Size = UDim2.new(0, 0, 0, 0), BackgroundTransparency = 1 }) TweenService:Create(tooltipText, TweenInfo.new(0.15, Enum.EasingStyle.Quart, Enum.EasingDirection.In), { TextTransparency = 1 }):Play() TweenService:Create(tooltipStroke, TweenInfo.new(0.15, Enum.EasingStyle.Quart, Enum.EasingDirection.In), { Transparency = 1 }):Play() outTween:Play() outTween.Completed:Connect(function() if tooltip.Size.X.Offset == 0 then tooltip.Visible = false end end) end) end -------------------------------------------------- -- HEADER & PLAYTIME COUNTER -------------------------------------------------- local header = Instance.new("TextButton") header.Size = UDim2.new(1, 0, 0, 48) header.BackgroundColor3 = Color3.fromRGB(16, 21, 24) header.BorderSizePixel = 0 header.AutoButtonColor = false header.Text = "" header.Parent = main local headerCorner = Instance.new("UICorner") headerCorner.CornerRadius = UDim.new(0, 16) headerCorner.Parent = header local title = Instance.new("TextLabel") title.Size = UDim2.new(1, -160, 1, 0) title.Position = UDim2.new(0, 15, 0, 0) title.BackgroundTransparency = 1 title.Text = "MEGA MINIGAME HUB" title.RichText = true title.Font = Enum.Font.GothamBold title.TextSize = 12 title.TextColor3 = Color3.new(1, 1, 1) title.TextXAlignment = Enum.TextXAlignment.Left title.Parent = header local sessionCounter = Instance.new("TextLabel") sessionCounter.Size = UDim2.new(0, 140, 1, 0) sessionCounter.Position = UDim2.new(1, -150, 0, 0) sessionCounter.BackgroundTransparency = 1 sessionCounter.Text = "TIME: 00m 00s" sessionCounter.Font = Enum.Font.GothamBold sessionCounter.TextSize = 10 sessionCounter.TextColor3 = Color3.fromRGB(0, 180, 255) sessionCounter.TextXAlignment = Enum.TextXAlignment.Right sessionCounter.Parent = header task.spawn(function() while true do local elapsed = math.floor(tick() - sessionStartTime) local mins = math.floor(elapsed / 60) local secs = elapsed % 60 sessionCounter.Text = string.format("TIME: %02dm %02ds", mins, secs) task.wait(1) end end) local credit = Instance.new("TextLabel") credit.Size = UDim2.new(1, -20, 0, 14) credit.Position = UDim2.new(0, 15, 1, -22) credit.BackgroundTransparency = 1 credit.Text = "Made by veryvare" credit.Font = Enum.Font.GothamMedium credit.TextSize = 10 credit.TextColor3 = Color3.fromRGB(90, 120, 135) credit.TextXAlignment = Enum.TextXAlignment.Left credit.Parent = main -- Dragging functionality local dragging, dragStart, startPosition header.InputBegan:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseButton1 and not resizing then dragging = true dragStart = input.Position startPosition = main.Position end end) UserInputService.InputChanged:Connect(function(input) if dragging and input.UserInputType == Enum.UserInputType.MouseMovement then local delta = input.Position - dragStart main.Position = UDim2.new(startPosition.X.Scale, startPosition.X.Offset + delta.X, startPosition.Y.Scale, startPosition.Y.Offset + delta.Y) end end) UserInputService.InputEnded:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseButton1 then dragging = false end end) -------------------------------------------------- -- MODERN SIDEBAR TAB SYSTEM (13 TABS) -------------------------------------------------- local sidebar = Instance.new("ScrollingFrame") sidebar.Size = UDim2.new(0, 150, 1, -112) sidebar.Position = UDim2.new(0, 12, 0, 56) sidebar.BackgroundTransparency = 1 sidebar.CanvasSize = UDim2.new(0, 0, 0, 560) sidebar.ScrollBarThickness = 3 sidebar.Parent = main local contentArea = Instance.new("Frame") contentArea.Size = UDim2.new(1, -180, 1, -112) contentArea.Position = UDim2.new(0, 170, 0, 56) contentArea.BackgroundTransparency = 1 contentArea.Parent = main local pages = {} local dynamicButtons = {} local function setupButtonAnimations(btn) btn.MouseEnter:Connect(function() TweenService:Create(btn, TweenInfo.new(0.2, Enum.EasingStyle.Quart, Enum.EasingDirection.Out), { BackgroundColor3 = Color3.fromRGB(24, 34, 42) }):Play() end) btn.MouseLeave:Connect(function() TweenService:Create(btn, TweenInfo.new(0.2, Enum.EasingStyle.Quart, Enum.EasingDirection.Out), { BackgroundColor3 = Color3.fromRGB(16, 22, 28) }):Play() end) end local function createTab(name, index, posY) local btn = Instance.new("TextButton") btn.Size = UDim2.new(1, -4, 0, 36) btn.Position = UDim2.new(0, 0, 0, posY) btn.BackgroundColor3 = Color3.fromRGB(16, 22, 28) btn.Text = name btn.Font = Enum.Font.GothamBold btn.TextSize = 10 btn.TextColor3 = Color3.fromRGB(0, 180, 255) btn.Parent = sidebar local corner = Instance.new("UICorner") corner.CornerRadius = UDim.new(0, 8) corner.Parent = btn local stroke = Instance.new("UIStroke") stroke.Color = Color3.fromRGB(0, 120, 180) stroke.Thickness = 1 stroke.Transparency = 0.6 stroke.Parent = btn table.insert(dynamicButtons, btn) setupButtonAnimations(btn) local page = Instance.new("Frame") page.Size = UDim2.new(1, 0, 1, 0) page.BackgroundTransparency = 1 page.Visible = (index == 1) page.Parent = contentArea pages[index] = page btn.MouseButton1Click:Connect(function() for idx, p in ipairs(pages) do p.Visible = (idx == index) end end) return btn, page end local tab1Btn, page1 = createTab("REACTION", 1, 0) local tab2Btn, page2 = createTab("AIM TRAINER", 2, 42) local tab3Btn, page3 = createTab("RHYTHM BAR", 3, 84) local tab4Btn, page4 = createTab("FAST TYPING", 4, 126) local tab5Btn, page5 = createTab("TIC-TAC-TOE", 5, 168) local tab6Btn, page6 = createTab("MEMORY", 6, 210) local tab7Btn, page7 = createTab("CLICK SPEED", 7, 252) local tab8Btn, page8 = createTab("GUESS NUMBER", 8, 294) local tab9Btn, page9 = createTab("MATH QUIZ", 9, 336) local tab10Btn, page10 = createTab("WHACK-A-MOLE", 10, 378) local tab11Btn, page11 = createTab("ANTI-AFK", 11, 420) local tab12Btn, page12 = createTab("EXTRAS & SETTINGS", 12, 462) local tab13Btn, page13 = createTab("THEMES & GLASS", 13, 504) showTooltip(tab1Btn, "Test reaction time with randomized neon colors.") showTooltip(tab2Btn, "Aim trainer with difficulty presets.") showTooltip(tab3Btn, "Precision timing bar rhythm minigame.") showTooltip(tab4Btn, "Fast Typing Speed Test - Measure WPM.") showTooltip(tab5Btn, "Tic-Tac-Toe bot match with scoreboard.") showTooltip(tab6Btn, "Memory card matching game.") showTooltip(tab7Btn, "Test click speed in 10 seconds.") showTooltip(tab8Btn, "Guess the secret number between 1 and 100.") showTooltip(tab9Btn, "Solve math questions with custom difficulties.") showTooltip(tab10Btn, "Whack-a-Mole clicking minigame with STOP button.") showTooltip(tab11Btn, "Anti-AFK protector to prevent kicks.") showTooltip(tab12Btn, "Keybind changer, Crosshair Customizer Plus & Notes.") showTooltip(tab13Btn, "Customize menu accent colors and optional glass.") -------------------------------------------------- -- GAME 1: REACTION TEST -------------------------------------------------- local reactBox = Instance.new("TextButton") reactBox.Size = UDim2.new(1, 0, 1, 0) reactBox.BackgroundColor3 = Color3.fromRGB(16, 22, 28) reactBox.Text = "CLICK TO START REACTION TEST" reactBox.Font = Enum.Font.GothamBold reactBox.TextSize, reactBox.TextColor3 = 13, Color3.fromRGB(0, 180, 255) reactBox.Parent = page1 local rbCorner = Instance.new("UICorner") rbCorner.CornerRadius = UDim.new(0, 12) rbCorner.Parent = reactBox local rbStroke = Instance.new("UIStroke") rbStroke.Color = Color3.fromRGB(0, 180, 255) rbStroke.Thickness = 1.5 rbStroke.Transparency = 0.4 rbStroke.Parent = reactBox local reactState = "IDLE" local startTime = 0 local delayTask = nil local randomColors = { Color3.fromRGB(0, 180, 255), Color3.fromRGB(255, 0, 120), Color3.fromRGB(0, 255, 120), Color3.fromRGB(255, 180, 0), Color3.fromRGB(180, 0, 255) } reactBox.MouseButton1Click:Connect(function() if reactState == "IDLE" then reactState = "WAITING" reactBox.BackgroundColor3 = Color3.fromRGB(18, 24, 30) reactBox.Text = "WAIT FOR SIGNAL..." reactBox.TextColor3 = Color3.fromRGB(200, 200, 200) local randomWait = math.random(20, 50) / 10 delayTask = task.delay(randomWait, function() if reactState == "WAITING" then reactState = "READY" startTime = tick() local chosenColor = randomColors[math.random(1, #randomColors)] reactBox.BackgroundColor3 = chosenColor rbStroke.Color = chosenColor reactBox.Text = "CLICK NOW!" reactBox.TextColor3 = Color3.fromRGB(255, 255, 255) end end) elseif reactState == "WAITING" then reactState = "IDLE" if delayTask then task.cancel(delayTask) end reactBox.BackgroundColor3 = Color3.fromRGB(150, 40, 40) reactBox.Text = "TOO EARLY! CLICK TO RETRY" reactBox.TextColor3 = Color3.fromRGB(255, 200, 200) elseif reactState == "READY" then local elapsed = math.floor((tick() - startTime) * 1000) reactState = "IDLE" reactBox.BackgroundColor3 = Color3.fromRGB(16, 22, 28) rbStroke.Color = Color3.fromRGB(0, 180, 255) reactBox.Text = "YOUR TIME: " .. tostring(elapsed) .. " ms\n\nCLICK TO RETRY" reactBox.TextColor3 = Color3.fromRGB(0, 180, 255) end end) -------------------------------------------------- -- GAME 2: AIM PRECISION CLICKER -------------------------------------------------- local aimArea = Instance.new("Frame") aimArea.Size = UDim2.new(1, 0, 1, 0) aimArea.BackgroundColor3 = Color3.fromRGB(16, 20, 24) aimArea.ClipsDescendants = true aimArea.Parent = page2 Instance.new("UICorner", aimArea).CornerRadius = UDim.new(0, 12) local aimStats = Instance.new("TextLabel") aimStats.Size = UDim2.new(1, -20, 0, 26) aimStats.Position = UDim2.new(0, 10, 0, 10) aimStats.BackgroundTransparency = 1 aimStats.Text = "SCORE: 0 | DIFFICULTY: NORMAL\n(Click to Start)" aimStats.Font = Enum.Font.GothamBold aimStats.TextSize = 11 aimStats.TextColor3 = Color3.fromRGB(0, 180, 255) aimStats.Parent = aimArea local aimDiffSetting = "Normal" local function createAimDiffBtn(text, posX, diffName) local b = Instance.new("TextButton") b.Size = UDim2.new(0, 80, 0, 24) b.Position = UDim2.new(0, posX, 0, 42) b.BackgroundColor3 = Color3.fromRGB(16, 22, 28) b.Text = text b.Font = Enum.Font.GothamBold b.TextSize = 9 b.TextColor3 = Color3.fromRGB(0, 180, 255) b.Parent = aimArea Instance.new("UICorner", b).CornerRadius = UDim.new(0, 6) setupButtonAnimations(b) b.MouseButton1Click:Connect(function() aimDiffSetting = diffName aimStats.Text = "MODE: " .. diffName .. " | Click anywhere to start!" end) end createAimDiffBtn("EASY", 10, "Easy") createAimDiffBtn("NORMAL", 95, "Normal") createAimDiffBtn("HARD", 180, "Hard") local targetBtn = Instance.new("TextButton") targetBtn.Size = UDim2.new(0, 32, 0, 32) targetBtn.Position = UDim2.new(0.5, -16, 0.5, -16) targetBtn.BackgroundColor3 = Color3.fromRGB(0, 180, 255) targetBtn.Text = "+" targetBtn.Font = Enum.Font.GothamBold targetBtn.TextSize = 16 targetBtn.TextColor3 = Color3.new(1, 1, 1) targetBtn.Visible = false targetBtn.Parent = aimArea Instance.new("UICorner", targetBtn).CornerRadius = UDim.new(1, 0) local aimScore = 0 local timeLimit = 3.0 local currentTimerThread = nil local aimActive = false local function stopAimGame(reason) aimActive = false if currentTimerThread then task.cancel(currentTimerThread) end targetBtn.Visible = false aimStats.Text = "GAME OVER (" .. reason .. ") | FINAL SCORE: " .. tostring(aimScore) .. "\nCLICK ANYWHERE TO RESTART" end local function moveTarget() local maxX = aimArea.AbsoluteSize.X - 40 local maxY = aimArea.AbsoluteSize.Y - 50 local randX = math.random(10, math.max(10, maxX)) local randY = math.random(70, math.max(70, maxY)) local sizeVal = (aimDiffSetting == "Easy") and 40 or ((aimDiffSetting == "Hard") and 24 or 32) targetBtn.Size = UDim2.new(0, sizeVal, 0, sizeVal) TweenService:Create(targetBtn, TweenInfo.new(0.12, Enum.EasingStyle.Quart, Enum.EasingDirection.Out), { Position = UDim2.new(0, randX, 0, randY) }):Play() end local function startNextTarget() if currentTimerThread then task.cancel(currentTimerThread) end moveTarget() local baseTime = (aimDiffSetting == "Easy") and 4.0 or ((aimDiffSetting == "Hard") and 1.8 or 3.0) timeLimit = math.max(0.3, baseTime * (0.95 ^ aimScore)) local targetDeadline = tick() + timeLimit currentTimerThread = task.spawn(function() while tick() < targetDeadline and aimActive do local remaining = math.max(0, targetDeadline - tick()) aimStats.Text = "SCORE: " .. tostring(aimScore) .. " | TIME: " .. string.format("%.2f", remaining) .. "s (" .. aimDiffSetting .. ")" task.wait(0.03) end if aimActive then stopAimGame("TIME OUT") end end) end targetBtn.MouseButton1Click:Connect(function() if not aimActive then return end aimScore = aimScore + 1 startNextTarget() end) aimArea.InputBegan:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseButton1 then if not aimActive then aimScore = 0 aimActive = true targetBtn.Visible = true startNextTarget() end end end) -------------------------------------------------- -- GAME 3: RHYTHM BAR -------------------------------------------------- local rhythmContainer = Instance.new("Frame") rhythmContainer.Size = UDim2.new(1, 0, 1, 0) rhythmContainer.BackgroundTransparency = 1 rhythmContainer.Parent = page3 local rhythmStats = Instance.new("TextLabel") rhythmStats.Size = UDim2.new(1, 0, 0, 30) rhythmStats.Position = UDim2.new(0, 0, 0, 20) rhythmStats.BackgroundTransparency = 1 rhythmStats.Text = "RHYTHM SCORE: 0 | STREAK: 0" rhythmStats.Font = Enum.Font.GothamBold rhythmStats.TextSize = 12 rhythmStats.TextColor3 = Color3.fromRGB(0, 180, 255) rhythmStats.Parent = rhythmContainer local rhythmTrack = Instance.new("Frame") rhythmTrack.Size = UDim2.new(0.8, 0, 0, 30) rhythmTrack.Position = UDim2.new(0.1, 0, 0, 100) rhythmTrack.BackgroundColor3 = Color3.fromRGB(16, 22, 28) rhythmTrack.BorderSizePixel = 0 rhythmTrack.Parent = rhythmContainer Instance.new("UICorner", rhythmTrack).CornerRadius = UDim.new(0, 8) local targetZone = Instance.new("Frame") targetZone.Size = UDim2.new(0, 50, 1, 0) targetZone.Position = UDim2.new(0.5, -25, 0, 0) targetZone.BackgroundColor3 = Color3.fromRGB(0, 220, 130) targetZone.BackgroundTransparency = 0.4 targetZone.BorderSizePixel = 0 targetZone.Parent = rhythmTrack Instance.new("UICorner", targetZone).CornerRadius = UDim.new(0, 6) local indicator = Instance.new("Frame") indicator.Size = UDim2.new(0, 6, 1, 4) indicator.Position = UDim2.new(0, 0, 0, -2) indicator.BackgroundColor3 = Color3.new(1, 1, 1) indicator.BorderSizePixel = 0 indicator.Parent = rhythmTrack local hitRhythmBtn = Instance.new("TextButton") hitRhythmBtn.Size = UDim2.new(0.8, 0, 0, 45) hitRhythmBtn.Position = UDim2.new(0.1, 0, 0, 160) hitRhythmBtn.BackgroundColor3 = Color3.fromRGB(0, 120, 180) hitRhythmBtn.Text = "HIT TARGET!" hitRhythmBtn.Font = Enum.Font.GothamBold hitRhythmBtn.TextSize = 13 hitRhythmBtn.TextColor3 = Color3.new(1, 1, 1) hitRhythmBtn.Parent = rhythmContainer Instance.new("UICorner", hitRhythmBtn).CornerRadius = UDim.new(0, 10) setupButtonAnimations(hitRhythmBtn) local rhythmScore = 0 local rhythmStreak = 0 local indicatorPos = 0 local indicatorSpeed = 0.012 RunService.RenderStepped:Connect(function() if page3.Visible then indicatorPos = indicatorPos + indicatorSpeed if indicatorPos > 1 or indicatorPos < 0 then indicatorSpeed = -indicatorSpeed end indicator.Position = UDim2.new(indicatorPos, -3, 0, -2) end end) hitRhythmBtn.MouseButton1Click:Connect(function() if indicatorPos >= 0.43 and indicatorPos <= 0.57 then rhythmScore = rhythmScore + 100 rhythmStreak = rhythmStreak + 1 rhythmStats.Text = "HIT! SCORE: " .. rhythmScore .. " | STREAK: " .. rhythmStreak indicatorSpeed = indicatorSpeed * 1.08 else rhythmStreak = 0 rhythmStats.Text = "MISS! SCORE: " .. rhythmScore .. " | STREAK: 0" end end) -------------------------------------------------- -- GAME 4: FAST TYPING TEST -------------------------------------------------- local typeContainer = Instance.new("Frame") typeContainer.Size = UDim2.new(1, 0, 1, 0) typeContainer.BackgroundTransparency = 1 typeContainer.Parent = page4 local wordList = {"TweenService", "UserInputService", "RunService", "Instance", "Vector3", "CFrame", "Color3", "TaskWait", "LocalScript", "PlayerGui", "Workspace", "ReplicatedStorage"} local typeStats = Instance.new("TextLabel") typeStats.Size = UDim2.new(1, 0, 0, 30) typeStats.Position = UDim2.new(0, 0, 0, 10) typeStats.BackgroundTransparency = 1 typeStats.Text = "WPM: 0 | COMPLETED: 0 / 5" typeStats.Font = Enum.Font.GothamBold typeStats.TextSize = 12 typeStats.TextColor3 = Color3.fromRGB(0, 180, 255) typeStats.Parent = typeContainer local wordDisplay = Instance.new("TextLabel") wordDisplay.Size = UDim2.new(1, 0, 0, 50) wordDisplay.Position = UDim2.new(0, 0, 0, 50) wordDisplay.BackgroundTransparency = 1 wordDisplay.Text = "Click 'START TEST' to begin!" wordDisplay.Font = Enum.Font.GothamBold wordDisplay.TextSize = 18 wordDisplay.TextColor3 = Color3.new(1, 1, 1) wordDisplay.Parent = typeContainer local typeInput = Instance.new("TextBox") typeInput.Size = UDim2.new(1, 0, 0, 45) typeInput.Position = UDim2.new(0, 0, 0, 115) typeInput.BackgroundColor3 = Color3.fromRGB(16, 22, 28) typeInput.PlaceholderText = "Type the word here..." typeInput.Text = "" typeInput.Font = Enum.Font.GothamBold typeInput.TextSize = 14 typeInput.TextColor3 = Color3.fromRGB(0, 180, 255) typeInput.Parent = typeContainer Instance.new("UICorner", typeInput).CornerRadius = UDim.new(0, 10) local startTypeBtn = Instance.new("TextButton") startTypeBtn.Size = UDim2.new(1, 0, 0, 40) startTypeBtn.Position = UDim2.new(0, 0, 0, 175) startTypeBtn.BackgroundColor3 = Color3.fromRGB(0, 120, 180) startTypeBtn.Text = "START TEST" startTypeBtn.Font = Enum.Font.GothamBold startTypeBtn.TextSize = 11 startTypeBtn.TextColor3 = Color3.new(1, 1, 1) startTypeBtn.Parent = typeContainer Instance.new("UICorner", startTypeBtn).CornerRadius = UDim.new(0, 8) setupButtonAnimations(startTypeBtn) local typeActive = false local currentWordIndex = 0 local targetWords = {} local typeStartTime = 0 startTypeBtn.MouseButton1Click:Connect(function() if not typeActive then typeActive = true currentWordIndex = 1 targetWords = {} for i = 1, 5 do table.insert(targetWords, wordList[math.random(1, #wordList)]) end wordDisplay.Text = targetWords[1] typeInput.Text = "" typeInput:CaptureFocus() typeStartTime = tick() startTypeBtn.Text = "RESET TEST" typeStats.Text = "WPM: -- | COMPLETED: 0 / 5" else typeActive = false wordDisplay.Text = "Click 'START TEST' to begin!" typeInput.Text = "" startTypeBtn.Text = "START TEST" end end) typeInput:GetPropertyChangedSignal("Text"):Connect(function() if not typeActive or #targetWords == 0 then return end if typeInput.Text == targetWords[currentWordIndex] then currentWordIndex = currentWordIndex + 1 typeInput.Text = "" if currentWordIndex > #targetWords then local elapsedSecs = tick() - typeStartTime local wpm = math.floor((5 / elapsedSecs) * 60) wordDisplay.Text = "TEST FINISHED!" typeStats.Text = "FINAL WPM: " .. wpm .. " | TIME: " .. string.format("%.1f", elapsedSecs) .. "s" typeActive = false startTypeBtn.Text = "START TEST" else wordDisplay.Text = targetWords[currentWordIndex] typeStats.Text = "WPM: -- | COMPLETED: " .. (currentWordIndex - 1) .. " / 5" end end end) -------------------------------------------------- -- GAME 5: TIC-TAC-TOE -------------------------------------------------- local tttContainer = Instance.new("Frame") tttContainer.Size = UDim2.new(1, 0, 1, 0) tttContainer.BackgroundTransparency = 1 tttContainer.Parent = page5 local scoreBoard = Instance.new("TextLabel") scoreBoard.Size = UDim2.new(1, 0, 0, 20) scoreBoard.Position = UDim2.new(0, 0, 0, 5) scoreBoard.BackgroundTransparency = 1 scoreBoard.Text = "YOU: 0 | BOT: 0 | DRAWS: 0" scoreBoard.Font = Enum.Font.GothamBold scoreBoard.TextSize = 11 scoreBoard.TextColor3 = Color3.fromRGB(0, 180, 255) scoreBoard.Parent = tttContainer local tttGrid = Instance.new("Frame") tttGrid.Size = UDim2.new(0, 240, 0, 240) tttGrid.Position = UDim2.new(0.5, -120, 0, 35) tttGrid.BackgroundTransparency = 1 tttGrid.Parent = tttContainer local board = {"", "", "", "", "", "", "", "", ""} local tttButtons = {} local pWins, bWins, draws = 0, 0, 0 local tttGameEnded = false local statusLabel = Instance.new("TextLabel") statusLabel.Size = UDim2.new(1, 0, 0, 25) statusLabel.Position = UDim2.new(0, 0, 0, 285) statusLabel.BackgroundTransparency = 1 statusLabel.Text = "YOUR TURN (X)" statusLabel.Font = Enum.Font.GothamBold statusLabel.TextSize = 11 statusLabel.TextColor3 = Color3.fromRGB(220, 235, 245) statusLabel.Parent = tttContainer local restartBtn = Instance.new("TextButton") restartBtn.Size = UDim2.new(1, -60, 0, 32) restartBtn.Position = UDim2.new(0, 30, 0, 318) restartBtn.BackgroundColor3 = Color3.fromRGB(16, 22, 28) restartBtn.Text = "RESTART GAME" restartBtn.Font = Enum.Font.GothamBold restartBtn.TextSize = 10 restartBtn.TextColor3 = Color3.fromRGB(0, 180, 255) restartBtn.Parent = tttContainer Instance.new("UICorner", restartBtn).CornerRadius = UDim.new(0, 8) setupButtonAnimations(restartBtn) local function checkTttWin() local wins = {{1,2,3},{4,5,6},{7,8,9},{1,4,7},{2,5,8},{3,6,9},{1,5,9},{3,5,7}} for _, w in ipairs(wins) do if board[w[1]] ~= "" and board[w[1]] == board[w[2]] and board[w[2]] == board[w[3]] then return board[w[1]] end end local full = true for i = 1, 9 do if board[i] == "" then full = false break end end if full then return "DRAW" end return nil end restartBtn.MouseButton1Click:Connect(function() board = {"", "", "", "", "", "", "", "", ""} tttGameEnded = false statusLabel.Text = "YOUR TURN (X)" for i = 1, 9 do tttButtons[i].Text = "" end end) local function botTttMove() local empty = {} for i = 1, 9 do if board[i] == "" then table.insert(empty, i) end end if #empty > 0 then local choice = empty[math.random(1, #empty)] board[choice] = "O" tttButtons[choice].Text = "O" tttButtons[choice].TextColor3 = Color3.fromRGB(255, 80, 100) end end for i = 1, 9 do local row = math.floor((i - 1) / 3) local col = (i - 1) % 3 local btn = Instance.new("TextButton") btn.Size = UDim2.new(0, 72, 0, 72) btn.Position = UDim2.new(0, col * 82, 0, row * 82) btn.BackgroundColor3 = Color3.fromRGB(16, 22, 28) btn.Text = "" btn.Font = Enum.Font.GothamBold btn.TextSize = 24 btn.Parent = tttGrid Instance.new("UICorner", btn).CornerRadius = UDim.new(0, 8) tttButtons[i] = btn btn.MouseButton1Click:Connect(function() if board[i] == "" and not tttGameEnded then board[i] = "X" btn.Text = "X" btn.TextColor3 = Color3.fromRGB(0, 180, 255) local res = checkTttWin() if res then tttGameEnded = true if res == "X" then pWins = pWins + 1 statusLabel.Text = "YOU WIN!" elseif res == "DRAW" then draws = draws + 1 statusLabel.Text = "IT'S A DRAW!" end else botTttMove() res = checkTttWin() if res then tttGameEnded = true if res == "O" then bWins = bWins + 1 statusLabel.Text = "BOT WINS!" elseif res == "DRAW" then draws = draws + 1 statusLabel.Text = "IT'S A DRAW!" end end end scoreBoard.Text = "YOU: " .. tostring(pWins) .. " | BOT: " .. tostring(bWins) .. " | DRAWS: " .. tostring(draws) end end) end -------------------------------------------------- -- GAME 6: MEMORY MATCHING GAME -------------------------------------------------- local memGrid = Instance.new("Frame") memGrid.Size = UDim2.new(0, 290, 0, 290) memGrid.Position = UDim2.new(0.5, -145, 0, 15) memGrid.BackgroundTransparency = 1 memGrid.Parent = page6 local symbols = {"⚡", "⚡", "🎯", "🎯", "💎", "💎", "🚀", "🚀", "🔥", "🔥", "⚙️", "⚙️", "🛡️", "🛡️", "🔑", "🔑"} for i = #symbols, 2, -1 do local j = math.random(i) symbols[i], symbols[j] = symbols[j], symbols[i] end local firstSelect, secondSelect = nil, nil local lockGrid = false for i = 1, 16 do local row = math.floor((i - 1) / 4) local col = (i - 1) % 4 local btn = Instance.new("TextButton") btn.Size = UDim2.new(0, 64, 0, 64) btn.Position = UDim2.new(0, col * 74, 0, row * 74) btn.BackgroundColor3 = Color3.fromRGB(16, 22, 28) btn.Text = "?" btn.Font = Enum.Font.GothamBold btn.TextSize = 18 btn.TextColor3 = Color3.fromRGB(0, 180, 255) btn.Parent = memGrid Instance.new("UICorner", btn).CornerRadius = UDim.new(0, 8) btn.MouseButton1Click:Connect(function() if lockGrid or btn.Text ~= "?" then return end btn.Text = symbols[i] if not firstSelect then firstSelect = {btn = btn, sym = symbols[i]} else secondSelect = {btn = btn, sym = symbols[i]} if firstSelect.sym == secondSelect.sym then firstSelect = nil secondSelect = nil else lockGrid = true task.delay(0.8, function() firstSelect.btn.Text = "?" secondSelect.btn.Text = "?" firstSelect = nil secondSelect = nil lockGrid = false end) end end end) end -------------------------------------------------- -- GAME 7: CLICK SPEED TEST -------------------------------------------------- local clickContainer = Instance.new("Frame") clickContainer.Size = UDim2.new(1, 0, 1, 0) clickContainer.BackgroundTransparency = 1 clickContainer.Parent = page7 local clickStats = Instance.new("TextLabel") clickStats.Size = UDim2.new(1, 0, 0, 30) clickStats.Position = UDim2.new(0, 0, 0, 20) clickStats.BackgroundTransparency = 1 clickStats.Text = "CLICKS: 0 | TIME: 10.0s" clickStats.Font = Enum.Font.GothamBold clickStats.TextSize = 13 clickStats.TextColor3 = Color3.fromRGB(0, 180, 255) clickStats.Parent = clickContainer local clickBtn = Instance.new("TextButton") clickBtn.Size = UDim2.new(1, 0, 0, 240) clickBtn.Position = UDim2.new(0, 0, 0, 70) clickBtn.BackgroundColor3 = Color3.fromRGB(16, 22, 28) clickBtn.Text = "CLICK HERE TO START!" clickBtn.Font = Enum.Font.GothamBold clickBtn.TextSize = 14 clickBtn.TextColor3 = Color3.new(1, 1, 1) clickBtn.Parent = clickContainer Instance.new("UICorner", clickBtn).CornerRadius = UDim.new(0, 12) local clickCount = 0 local clickActive = false local clickTimerThread = nil clickBtn.MouseButton1Click:Connect(function() if not clickActive then clickActive = true clickCount = 0 clickBtn.Text = "CLICK FAST!" local deadline = tick() + 10 if clickTimerThread then task.cancel(clickTimerThread) end clickTimerThread = task.spawn(function() while tick() < deadline and clickActive do local rem = math.max(0, deadline - tick()) clickStats.Text = "CLICKS: " .. tostring(clickCount) .. " | TIME: " .. string.format("%.1f", rem) .. "s" task.wait(0.05) end clickActive = false clickBtn.Text = "FINISHED! FINAL CLICKS: " .. tostring(clickCount) .. "\n\nCLICK TO RETRY" clickStats.Text = "TEST COMPLETE - CPS: " .. string.format("%.1f", clickCount / 10) end) else clickCount = clickCount + 1 end end) -------------------------------------------------- -- GAME 8: NUMBER GUESSING -------------------------------------------------- local guessContainer = Instance.new("Frame") guessContainer.Size = UDim2.new(1, 0, 1, 0) guessContainer.BackgroundTransparency = 1 guessContainer.Parent = page8 local guessStatus = Instance.new("TextLabel") guessStatus.Size = UDim2.new(1, 0, 0, 40) guessStatus.Position = UDim2.new(0, 0, 0, 20) guessStatus.BackgroundTransparency = 1 guessStatus.Text = "Guess a number between 1 and 100!" guessStatus.Font = Enum.Font.GothamBold guessStatus.TextSize = 12 guessStatus.TextColor3 = Color3.fromRGB(220, 235, 245) guessStatus.TextWrapped = true guessStatus.Parent = guessContainer local guessInput = Instance.new("TextBox") guessInput.Size = UDim2.new(1, 0, 0, 45) guessInput.Position = UDim2.new(0, 0, 0, 80) guessInput.BackgroundColor3 = Color3.fromRGB(16, 22, 28) guessInput.PlaceholderText = "Enter number here..." guessInput.Text = "" guessInput.Font = Enum.Font.GothamBold guessInput.TextSize = 14 guessInput.TextColor3 = Color3.fromRGB(0, 180, 255) guessInput.Parent = guessContainer Instance.new("UICorner", guessInput).CornerRadius = UDim.new(0, 10) local secretNum = math.random(1, 100) local attempts = 0 local submitGuess = Instance.new("TextButton") submitGuess.Size = UDim2.new(1, 0, 0, 45) submitGuess.Position = UDim2.new(0, 0, 0, 140) submitGuess.BackgroundColor3 = Color3.fromRGB(0, 120, 180) submitGuess.Text = "SUBMIT GUESS" submitGuess.Font = Enum.Font.GothamBold submitGuess.TextSize = 12 submitGuess.TextColor3 = Color3.new(1, 1, 1) submitGuess.Parent = guessContainer Instance.new("UICorner", submitGuess).CornerRadius = UDim.new(0, 10) setupButtonAnimations(submitGuess) submitGuess.MouseButton1Click:Connect(function() local val = tonumber(guessInput.Text) if not val then guessStatus.Text = "Please enter a valid number!" return end attempts = attempts + 1 if val < secretNum then guessStatus.Text = val .. " is too low! Attempts: " .. attempts elseif val > secretNum then guessStatus.Text = val .. " is too high! Attempts: " .. attempts else guessStatus.Text = "CORRECT! The number was " .. secretNum .. " (Attempts: " .. attempts .. ")\nNew number generated!" secretNum = math.random(1, 100) attempts = 0 end guessInput.Text = "" end) -------------------------------------------------- -- GAME 9: MATH QUICK QUIZ -------------------------------------------------- local mathContainer = Instance.new("Frame") mathContainer.Size = UDim2.new(1, 0, 1, 0) mathContainer.BackgroundTransparency = 1 mathContainer.Parent = page9 local mathScoreLbl = Instance.new("TextLabel") mathScoreLbl.Size = UDim2.new(1, 0, 0, 24) mathScoreLbl.Position = UDim2.new(0, 0, 0, 5) mathScoreLbl.BackgroundTransparency = 1 mathScoreLbl.Text = "CORRECT: 0 | MODE: NORMAL" mathScoreLbl.Font = Enum.Font.GothamBold mathScoreLbl.TextSize = 11 mathScoreLbl.TextColor3 = Color3.fromRGB(0, 180, 255) mathScoreLbl.Parent = mathContainer local mathDiff = "Normal" local function createMathDiffBtn(text, posX, mode) local b = Instance.new("TextButton") b.Size = UDim2.new(0, 80, 0, 24) b.Position = UDim2.new(0, posX, 0, 32) b.BackgroundColor3 = Color3.fromRGB(16, 22, 28) b.Text = text b.Font = Enum.Font.GothamBold b.TextSize = 9 b.TextColor3 = Color3.fromRGB(0, 180, 255) b.Parent = mathContainer Instance.new("UICorner", b).CornerRadius = UDim.new(0, 6) setupButtonAnimations(b) b.MouseButton1Click:Connect(function() mathDiff = mode mathScoreLbl.Text = "CORRECT: 0 | MODE: " .. mode end) end createMathDiffBtn("EASY", 10, "Easy") createMathDiffBtn("NORMAL", 95, "Normal") createMathDiffBtn("HARD", 180, "Hard") local mathProblemLbl = Instance.new("TextLabel") mathProblemLbl.Size = UDim2.new(1, 0, 0, 45) mathProblemLbl.Position = UDim2.new(0, 0, 0, 65) mathProblemLbl.BackgroundTransparency = 1 mathProblemLbl.Text = "12 + 15 = ?" mathProblemLbl.Font = Enum.Font.GothamBold mathProblemLbl.TextSize = 20 mathProblemLbl.TextColor3 = Color3.new(1, 1, 1) mathProblemLbl.Parent = mathContainer local mathAnswerInput = Instance.new("TextBox") mathAnswerInput.Size = UDim2.new(1, 0, 0, 45) mathAnswerInput.Position = UDim2.new(0, 0, 0, 120) mathAnswerInput.BackgroundColor3 = Color3.fromRGB(16, 22, 28) mathAnswerInput.PlaceholderText = "Type answer..." mathAnswerInput.Text = "" mathAnswerInput.Font = Enum.Font.GothamBold mathAnswerInput.TextSize = 14 mathAnswerInput.TextColor3 = Color3.fromRGB(0, 180, 255) mathAnswerInput.Parent = mathContainer Instance.new("UICorner", mathAnswerInput).CornerRadius = UDim.new(0, 10) local numA, numB, op, mathCorrect = 0, 0, "+", 0 local mathScoreCount = 0 local function generateMath() local maxLimit = (mathDiff == "Easy") and 20 or ((mathDiff == "Hard") and 150 or 50) numA = math.random(1, maxLimit) numB = math.random(1, maxLimit) local ops = (mathDiff == "Easy") and {"+", "-"} or {"+", "-", "*"} op = ops[math.random(1, #ops)] if op == "+" then mathCorrect = numA + numB elseif op == "-" then mathCorrect = numA - numB elseif op == "*" then numA = math.random(1, (mathDiff == "Hard" and 15 or 12)) numB = math.random(1, (mathDiff == "Hard" and 15 or 12)) mathCorrect = numA * numB end mathProblemLbl.Text = tostring(numA) .. " " .. op .. " " .. tostring(numB) .. " = ?" end generateMath() local submitMath = Instance.new("TextButton") submitMath.Size = UDim2.new(1, 0, 0, 45) submitMath.Position = UDim2.new(0, 0, 0, 175) submitMath.BackgroundColor3 = Color3.fromRGB(0, 120, 180) submitMath.Text = "CHECK ANSWER" submitMath.Font = Enum.Font.GothamBold submitMath.TextSize = 12 submitMath.TextColor3 = Color3.new(1, 1, 1) submitMath.Parent = mathContainer Instance.new("UICorner", submitMath).CornerRadius = UDim.new(0, 10) setupButtonAnimations(submitMath) submitMath.MouseButton1Click:Connect(function() local ans = tonumber(mathAnswerInput.Text) if ans == mathCorrect then mathScoreCount = mathScoreCount + 1 mathScoreLbl.Text = "CORRECT: " .. mathScoreCount .. " (CORRECT!)" generateMath() else mathScoreLbl.Text = "CORRECT: " .. mathScoreCount .. " (WRONG!)" end mathAnswerInput.Text = "" end) -------------------------------------------------- -- GAME 10: WHACK-A-MOLE -------------------------------------------------- local moleContainer = Instance.new("Frame") moleContainer.Size = UDim2.new(1, 0, 1, 0) moleContainer.BackgroundTransparency = 1 moleContainer.Parent = page10 local moleScoreLbl = Instance.new("TextLabel") moleScoreLbl.Size = UDim2.new(1, -90, 0, 30) moleScoreLbl.Position = UDim2.new(0, 0, 0, 10) moleScoreLbl.BackgroundTransparency = 1 moleScoreLbl.Text = "SCORE: 0" moleScoreLbl.Font = Enum.Font.GothamBold moleScoreLbl.TextSize = 12 moleScoreLbl.TextColor3 = Color3.fromRGB(0, 180, 255) moleScoreLbl.Parent = moleContainer local stopMoleBtn = Instance.new("TextButton") stopMoleBtn.Size = UDim2.new(0, 80, 0, 30) stopMoleBtn.Position = UDim2.new(1, -80, 0, 10) stopMoleBtn.BackgroundColor3 = Color3.fromRGB(180, 40, 40) stopMoleBtn.Text = "STOP" stopMoleBtn.Font = Enum.Font.GothamBold stopMoleBtn.TextSize = 11 stopMoleBtn.TextColor3 = Color3.new(1, 1, 1) stopMoleBtn.Parent = moleContainer Instance.new("UICorner", stopMoleBtn).CornerRadius = UDim.new(0, 8) local moleGrid = Instance.new("Frame") moleGrid.Size = UDim2.new(0, 260, 0, 260) moleGrid.Position = UDim2.new(0.5, -130, 0, 50) moleGrid.BackgroundTransparency = 1 moleGrid.Parent = moleContainer local moleButtons = {} local moleScore = 0 local activeMole = 0 local moleRunning = false local function spawnMole() if not moleRunning then return end if activeMole > 0 and moleButtons[activeMole] then moleButtons[activeMole].BackgroundColor3 = Color3.fromRGB(16, 22, 28) moleButtons[activeMole].Text = "" end activeMole = math.random(1, 9) moleButtons[activeMole].BackgroundColor3 = Color3.fromRGB(0, 180, 255) moleButtons[activeMole].Text = "🎯" end stopMoleBtn.MouseButton1Click:Connect(function() moleRunning = false if activeMole > 0 and moleButtons[activeMole] then moleButtons[activeMole].BackgroundColor3 = Color3.fromRGB(16, 22, 28) moleButtons[activeMole].Text = "" end activeMole = 0 moleScoreLbl.Text = "SCORE: " .. moleScore .. " (STOPPED)" end) for i = 1, 9 do local row = math.floor((i - 1) / 3) local col = (i - 1) % 3 local btn = Instance.new("TextButton") btn.Size = UDim2.new(0, 80, 0, 80) btn.Position = UDim2.new(0, col * 90, 0, row * 90) btn.BackgroundColor3 = Color3.fromRGB(16, 22, 28) btn.Text = "" btn.Font = Enum.Font.GothamBold btn.TextSize = 20 btn.TextColor3 = Color3.new(1, 1, 1) btn.Parent = moleGrid Instance.new("UICorner", btn).CornerRadius = UDim.new(0, 10) moleButtons[i] = btn btn.MouseButton1Click:Connect(function() if not moleRunning then moleRunning = true moleScore = 0 spawnMole() task.spawn(function() while moleRunning do task.wait(0.7) spawnMole() end end) elseif i == activeMole then moleScore = moleScore + 1 moleScoreLbl.Text = "SCORE: " .. moleScore spawnMole() end end) end -------------------------------------------------- -- TAB 11: ANTI-AFK PROTECTOR -------------------------------------------------- local afkContainer = Instance.new("Frame") afkContainer.Size = UDim2.new(1, 0, 1, 0) afkContainer.BackgroundTransparency = 1 afkContainer.Parent = page11 local afkStatus = Instance.new("TextLabel") afkStatus.Size = UDim2.new(1, 0, 0, 50) afkStatus.Position = UDim2.new(0, 0, 0, 30) afkStatus.BackgroundTransparency = 1 afkStatus.Text = "Anti-AFK Protector is currently: OFF" afkStatus.Font = Enum.Font.GothamBold afkStatus.TextSize = 12 afkStatus.TextColor3 = Color3.fromRGB(220, 235, 245) afkStatus.TextWrapped = true afkStatus.Parent = afkContainer local afkToggleBtn = Instance.new("TextButton") afkToggleBtn.Size = UDim2.new(1, 0, 0, 45) afkToggleBtn.Position = UDim2.new(0, 0, 0, 100) afkToggleBtn.BackgroundColor3 = Color3.fromRGB(16, 22, 28) afkToggleBtn.Text = "ENABLE ANTI-AFK" afkToggleBtn.Font = Enum.Font.GothamBold afkToggleBtn.TextSize = 12 afkToggleBtn.TextColor3 = Color3.fromRGB(0, 220, 130) afkToggleBtn.Parent = afkContainer Instance.new("UICorner", afkToggleBtn).CornerRadius = UDim.new(0, 10) setupButtonAnimations(afkToggleBtn) showTooltip(afkToggleBtn, "Simulates small actions to prevent server AFK kicks.") local antiAfkActive = false afkToggleBtn.MouseButton1Click:Connect(function() antiAfkActive = not antiAfkActive if antiAfkActive then afkToggleBtn.Text = "DISABLE ANTI-AFK" afkStatus.Text = "Anti-AFK Protector is currently: ON (Active)" else afkToggleBtn.Text = "ENABLE ANTI-AFK" afkStatus.Text = "Anti-AFK Protector is currently: OFF" end end) local VirtualUser = pcall(function() return game:GetService("VirtualUser") end) and game:GetService("VirtualUser") task.spawn(function() while true do task.wait(60) if antiAfkActive and VirtualUser then pcall(function() VirtualUser:CaptureController() VirtualUser:ClickButton1(Vector2.new(100, 100)) end) end end end) -------------------------------------------------- -- TAB 12: EXTRAS, KEYBIND & CROSSHAIR -------------------------------------------------- local extContainer = Instance.new("Frame") extContainer.Size = UDim2.new(1, 0, 1, 0) extContainer.BackgroundTransparency = 1 extContainer.Parent = page12 local keybindBtn = Instance.new("TextButton") keybindBtn.Size = UDim2.new(1, 0, 0, 32) keybindBtn.Position = UDim2.new(0, 0, 0, 0) keybindBtn.BackgroundColor3 = Color3.fromRGB(16, 22, 28) keybindBtn.Text = "MENU KEYBIND: " .. toggleKey.Name .. " (CLICK TO CHANGE)" keybindBtn.Font = Enum.Font.GothamBold keybindBtn.TextSize = 10 keybindBtn.TextColor3 = Color3.fromRGB(0, 180, 255) keybindBtn.Parent = extContainer Instance.new("UICorner", keybindBtn).CornerRadius = UDim.new(0, 8) setupButtonAnimations(keybindBtn) showTooltip(keybindBtn, "Click and press any key to set a new toggle keybind.") keybindBtn.MouseButton1Click:Connect(function() if listeningForKey then return end listeningForKey = true keybindBtn.Text = "PRESS ANY KEY..." keybindBtn.TextColor3 = Color3.fromRGB(255, 200, 0) local conn conn = UserInputService.InputBegan:Connect(function(input) if input.UserInputType == Enum.UserInputType.Keyboard then toggleKey = input.KeyCode keybindBtn.Text = "MENU KEYBIND: " .. toggleKey.Name .. " (CLICK TO CHANGE)" keybindBtn.TextColor3 = Color3.fromRGB(0, 180, 255) conn:Disconnect() task.wait(0.2) listeningForKey = false end end) end) local crosshairBtn = Instance.new("TextButton") crosshairBtn.Size = UDim2.new(1, 0, 0, 32) crosshairBtn.Position = UDim2.new(0, 0, 0, 36) crosshairBtn.BackgroundColor3 = Color3.fromRGB(16, 22, 28) crosshairBtn.Text = "CUSTOM CROSSHAIR: OFF" crosshairBtn.Font = Enum.Font.GothamBold crosshairBtn.TextSize = 10 crosshairBtn.TextColor3 = Color3.fromRGB(255, 80, 100) crosshairBtn.Parent = extContainer Instance.new("UICorner", crosshairBtn).CornerRadius = UDim.new(0, 8) setupButtonAnimations(crosshairBtn) showTooltip(crosshairBtn, "Toggle an on-screen center dot crosshair.") crosshairBtn.MouseButton1Click:Connect(function() crosshairGui.Enabled = not crosshairGui.Enabled if crosshairGui.Enabled then crosshairBtn.Text = "CUSTOM CROSSHAIR: ON" crosshairBtn.TextColor3 = Color3.fromRGB(0, 220, 130) else crosshairBtn.Text = "CUSTOM CROSSHAIR: OFF" crosshairBtn.TextColor3 = Color3.fromRGB(255, 80, 100) end end) local sizeBtn = Instance.new("TextButton") sizeBtn.Size = UDim2.new(0.48, 0, 0, 32) sizeBtn.Position = UDim2.new(0, 0, 0, 72) sizeBtn.BackgroundColor3 = Color3.fromRGB(16, 22, 28) sizeBtn.Text = "SIZE: NORMAL" sizeBtn.Font = Enum.Font.GothamBold sizeBtn.TextSize = 9 sizeBtn.TextColor3 = Color3.fromRGB(0, 180, 255) sizeBtn.Parent = extContainer Instance.new("UICorner", sizeBtn).CornerRadius = UDim.new(0, 8) setupButtonAnimations(sizeBtn) local sizes = { {6, "Small"}, {10, "Normal"}, {16, "Large"} } local sizeIdx = 2 sizeBtn.MouseButton1Click:Connect(function() sizeIdx = sizeIdx % #sizes + 1 local sData = sizes[sizeIdx] crossDot.Size = UDim2.new(0, sData[1], 0, sData[1]) crossDot.Position = UDim2.new(0.5, -sData[1]/2, 0.5, -sData[1]/2) sizeBtn.Text = "SIZE: " .. string.upper(sData[2]) end) local fpsBoostActive = false local fpsBtn = Instance.new("TextButton") fpsBtn.Size = UDim2.new(0.48, 0, 0, 32) fpsBtn.Position = UDim2.new(0.52, 0, 0, 72) fpsBtn.BackgroundColor3 = Color3.fromRGB(16, 22, 28) fpsBtn.Text = "FPS BOOSTER: OFF" fpsBtn.Font = Enum.Font.GothamBold fpsBtn.TextSize = 9 fpsBtn.TextColor3 = Color3.fromRGB(0, 220, 130) fpsBtn.Parent = extContainer Instance.new("UICorner", fpsBtn).CornerRadius = UDim.new(0, 8) setupButtonAnimations(fpsBtn) fpsBtn.MouseButton1Click:Connect(function() fpsBoostActive = not fpsBoostActive if fpsBoostActive then fpsBtn.Text = "FPS BOOSTER: ON" Lighting.GlobalShadows = false else fpsBtn.Text = "FPS BOOSTER: OFF" Lighting.GlobalShadows = true end end) local notepad = Instance.new("TextBox") notepad.Size = UDim2.new(1, 0, 0, 110) notepad.Position = UDim2.new(0, 0, 0, 108) notepad.BackgroundColor3 = Color3.fromRGB(16, 22, 28) notepad.MultiLine = true notepad.ClearTextOnFocus = false notepad.PlaceholderText = "Write quick local notes here..." notepad.Text = "" notepad.Font = Enum.Font.GothamMedium notepad.TextSize = 11 notepad.TextColor3 = Color3.fromRGB(210, 225, 235) notepad.TextXAlignment = Enum.TextXAlignment.Left notepad.TextYAlignment = Enum.TextYAlignment.Top notepad.Parent = extContainer Instance.new("UICorner", notepad).CornerRadius = UDim.new(0, 10) local clearNotesBtn = Instance.new("TextButton") clearNotesBtn.Size = UDim2.new(1, 0, 0, 28) clearNotesBtn.Position = UDim2.new(0, 0, 0, 222) clearNotesBtn.BackgroundColor3 = Color3.fromRGB(28, 16, 18) clearNotesBtn.Text = "CLEAR NOTES" clearNotesBtn.Font = Enum.Font.GothamBold clearNotesBtn.TextSize = 10 clearNotesBtn.TextColor3 = Color3.fromRGB(255, 70, 70) clearNotesBtn.Parent = extContainer Instance.new("UICorner", clearNotesBtn).CornerRadius = UDim.new(0, 8) setupButtonAnimations(clearNotesBtn) clearNotesBtn.MouseButton1Click:Connect(function() notepad.Text = "" end) -------------------------------------------------- -- TAB 13: THEMES & GLASS -------------------------------------------------- local themeContainer = Instance.new("Frame") themeContainer.Size = UDim2.new(1, 0, 1, 0) themeContainer.BackgroundTransparency = 1 themeContainer.Parent = page13 local themeTitle = Instance.new("TextLabel") themeTitle.Size = UDim2.new(1, 0, 0, 30) themeTitle.Position = UDim2.new(0, 0, 0, 10) themeTitle.BackgroundTransparency = 1 themeTitle.Text = "SELECT ACCENT THEME & FONT COLOR:" themeTitle.Font = Enum.Font.GothamBold themeTitle.TextSize = 11 themeTitle.TextColor3 = Color3.fromRGB(220, 235, 245) themeTitle.TextXAlignment = Enum.TextXAlignment.Left themeTitle.Parent = themeContainer local function applyTheme(color) mainStroke.Color = color resizeHandle.TextColor3 = color tooltipStroke.Color = color crossDot.BackgroundColor3 = color sizeBtn.TextColor3 = color sessionCounter.TextColor3 = color for _, btn in ipairs(dynamicButtons) do btn.TextColor3 = color end end local themeBlue = Instance.new("TextButton") themeBlue.Size = UDim2.new(0.48, 0, 0, 36) themeBlue.Position = UDim2.new(0, 0, 0, 45) themeBlue.BackgroundColor3 = Color3.fromRGB(16, 22, 28) themeBlue.Text = "TECH BLUE" themeBlue.Font = Enum.Font.GothamBold themeBlue.TextSize = 10 themeBlue.TextColor3 = Color3.fromRGB(0, 180, 255) themeBlue.Parent = themeContainer Instance.new("UICorner", themeBlue).CornerRadius = UDim.new(0, 8) setupButtonAnimations(themeBlue) themeBlue.MouseButton1Click:Connect(function() applyTheme(Color3.fromRGB(0, 180, 255)) end) local themeGreen = Instance.new("TextButton") themeGreen.Size = UDim2.new(0.48, 0, 0, 36) themeGreen.Position = UDim2.new(0.52, 0, 0, 45) themeGreen.BackgroundColor3 = Color3.fromRGB(16, 22, 28) themeGreen.Text = "MATRIX GREEN" themeGreen.Font = Enum.Font.GothamBold themeGreen.TextSize = 10 themeGreen.TextColor3 = Color3.fromRGB(0, 255, 120) themeGreen.Parent = themeContainer Instance.new("UICorner", themeGreen).CornerRadius = UDim.new(0, 8) setupButtonAnimations(themeGreen) themeGreen.MouseButton1Click:Connect(function() applyTheme(Color3.fromRGB(0, 255, 120)) end) local themePurple = Instance.new("TextButton") themePurple.Size = UDim2.new(0.48, 0, 0, 90) themePurple.Position = UDim2.new(0, 0, 0, 90) themePurple.BackgroundColor3 = Color3.fromRGB(16, 22, 28) themePurple.Text = "NEON PURPLE" themePurple.Font = Enum.Font.GothamBold themePurple.TextSize = 10 themePurple.TextColor3 = Color3.fromRGB(180, 0, 255) themePurple.Parent = themeContainer Instance.new("UICorner", themePurple).CornerRadius = UDim.new(0, 8) setupButtonAnimations(themePurple) themePurple.MouseButton1Click:Connect(function() applyTheme(Color3.fromRGB(180, 0, 255)) end) local themeOrange = Instance.new("TextButton") themeOrange.Size = UDim2.new(0.48, 0, 0, 36) themeOrange.Position = UDim2.new(0.52, 0, 0, 90) themeOrange.BackgroundColor3 = Color3.fromRGB(16, 22, 28) themeOrange.Text = "SUNSET ORANGE" themeOrange.Font = Enum.Font.GothamBold themeOrange.TextSize = 10 themeOrange.TextColor3 = Color3.fromRGB(255, 140, 0) themeOrange.Parent = themeContainer Instance.new("UICorner", themeOrange).CornerRadius = UDim.new(0, 8) setupButtonAnimations(themeOrange) themeOrange.MouseButton1Click:Connect(function() applyTheme(Color3.fromRGB(255, 140, 0)) end) local glassTitle = Instance.new("TextLabel") glassTitle.Size = UDim2.new(1, 0, 0, 30) glassTitle.Position = UDim2.new(0, 0, 0, 145) glassTitle.BackgroundTransparency = 1 glassTitle.Text = "OPTIONAL GLASS MODE:" glassTitle.Font = Enum.Font.GothamBold glassTitle.TextSize = 11 glassTitle.TextColor3 = Color3.fromRGB(220, 235, 245) glassTitle.TextXAlignment = Enum.TextXAlignment.Left glassTitle.Parent = themeContainer local glassSolid = Instance.new("TextButton") glassSolid.Size = UDim2.new(0.48, 0, 0, 36) glassSolid.Position = UDim2.new(0, 0, 0, 180) glassSolid.BackgroundColor3 = Color3.fromRGB(16, 22, 28) glassSolid.Text = "SOLID BLACK (DEFAULT)" glassSolid.Font = Enum.Font.GothamBold glassSolid.TextSize = 9 glassSolid.TextColor3 = Color3.fromRGB(220, 235, 245) glassSolid.Parent = themeContainer Instance.new("UICorner", glassSolid).CornerRadius = UDim.new(0, 8) setupButtonAnimations(glassSolid) glassSolid.MouseButton1Click:Connect(function() main.BackgroundTransparency = 0 end) local glassClear = Instance.new("TextButton") glassClear.Size = UDim2.new(0.48, 0, 0, 36) glassClear.Position = UDim2.new(0.52, 0, 0, 180) glassClear.BackgroundColor3 = Color3.fromRGB(16, 22, 28) glassClear.Text = "GLASS MODE (OPTIONAL)" glassClear.Font = Enum.Font.GothamBold glassClear.TextSize = 9 glassClear.TextColor3 = Color3.fromRGB(220, 235, 245) glassClear.Parent = themeContainer Instance.new("UICorner", glassClear).CornerRadius = UDim.new(0, 8) setupButtonAnimations(glassClear) glassClear.MouseButton1Click:Connect(function() main.BackgroundTransparency = 0.45 end) -------------------------------------------------- -- UNLOAD BUTTON & CONFIRMATION POPUP SYSTEM -------------------------------------------------- local unloadBtn = Instance.new("TextButton") unloadBtn.Size = UDim2.new(1, -180, 0, 32) unloadBtn.Position = UDim2.new(0, 170, 1, -44) unloadBtn.BackgroundColor3 = Color3.fromRGB(28, 16, 18) unloadBtn.Text = "UNLOAD MENU" unloadBtn.Font = Enum.Font.GothamBold unloadBtn.TextSize, unloadBtn.TextColor3 = 11, Color3.fromRGB(255, 70, 70) unloadBtn.Parent = main Instance.new("UICorner", unloadBtn).CornerRadius = UDim.new(0, 10) local unloadStroke = Instance.new("UIStroke") unloadStroke.Color = Color3.fromRGB(150, 50, 50) unloadStroke.Thickness = 1 unloadStroke.Transparency = 0.5 unloadStroke.Parent = unloadBtn showTooltip(unloadBtn, "Closes and completely removes the mega minigame hub.") local confirmOverlay = Instance.new("Frame") confirmOverlay.Size = UDim2.new(1, 0, 1, 0) confirmOverlay.Position = UDim2.new(0, 0, 0, 0) confirmOverlay.BackgroundColor3 = Color3.fromRGB(12, 15, 13) confirmOverlay.BackgroundTransparency = 1 confirmOverlay.Visible = false confirmOverlay.ZIndex = 30 confirmOverlay.Parent = main local confirmBox = Instance.new("Frame") confirmBox.Size = UDim2.new(0, 0, 0, 0) confirmBox.Position = UDim2.new(0.5, 0, 0.5, 0) confirmBox.BackgroundColor3 = Color3.fromRGB(16, 21, 24) confirmBox.BorderSizePixel = 0 confirmBox.ZIndex = 31 confirmBox.Parent = confirmOverlay Instance.new("UICorner", confirmBox).CornerRadius = UDim.new(0, 12) local cbStroke = Instance.new("UIStroke") cbStroke.Color = Color3.fromRGB(0, 180, 255) cbStroke.Thickness = 1.5 cbStroke.Transparency = 0.3 cbStroke.Parent = confirmBox local confirmLabel = Instance.new("TextLabel") confirmLabel.Size = UDim2.new(1, -20, 0, 45) confirmLabel.Position = UDim2.new(0, 10, 0, 15) confirmLabel.BackgroundTransparency = 1 confirmLabel.Text = "Are you sure you want to unload this menu?" confirmLabel.Font = Enum.Font.GothamBold confirmLabel.TextSize = 11 confirmLabel.TextColor3 = Color3.fromRGB(220, 235, 245) confirmLabel.TextWrapped = true confirmLabel.TextXAlignment = Enum.TextXAlignment.Center confirmLabel.ZIndex = 32 confirmLabel.Parent = confirmBox local yesBtn = Instance.new("TextButton") yesBtn.Size = UDim2.new(0.44, 0, 0, 32) yesBtn.Position = UDim2.new(0.04, 0, 0, 75) yesBtn.BackgroundColor3 = Color3.fromRGB(28, 16, 18) yesBtn.Text = "YES, UNLOAD" yesBtn.Font = Enum.Font.GothamBold yesBtn.TextSize = 10 yesBtn.TextColor3 = Color3.fromRGB(255, 70, 70) yesBtn.ZIndex = 32 yesBtn.Parent = confirmBox Instance.new("UICorner", yesBtn).CornerRadius = UDim.new(0, 8) local noBtn = Instance.new("TextButton") noBtn.Size = UDim2.new(0.44, 0, 0, 32) noBtn.Position = UDim2.new(0.52, 0, 0, 75) noBtn.BackgroundColor3 = Color3.fromRGB(16, 22, 28) noBtn.Text = "NO, CANCEL" noBtn.Font = Enum.Font.GothamBold noBtn.TextSize = 10 noBtn.TextColor3 = Color3.fromRGB(0, 180, 255) noBtn.ZIndex = 32 noBtn.Parent = confirmBox Instance.new("UICorner", noBtn).CornerRadius = UDim.new(0, 8) unloadBtn.MouseButton1Click:Connect(function() confirmOverlay.Visible = true confirmOverlay.BackgroundTransparency = 1 confirmBox.Size = UDim2.new(0, 0, 0, 0) confirmBox.Position = UDim2.new(0.5, 0, 0.5, 0) TweenService:Create(confirmOverlay, TweenInfo.new(0.2, Enum.EasingStyle.Quart, Enum.EasingDirection.Out), { BackgroundTransparency = 0.3 }):Play() TweenService:Create(confirmBox, TweenInfo.new(0.25, Enum.EasingStyle.Back, Enum.EasingDirection.Out), { Size = UDim2.new(0, 320, 0, 125), Position = UDim2.new(0.5, -160, 0.5, -62.5) }):Play() end) yesBtn.MouseButton1Click:Connect(function() yesBtn.Active = false noBtn.Active = false confirmOverlay.Visible = false aimActive = false clickActive = false moleRunning = false antiAfkActive = false typeActive = false if currentTimerThread then task.cancel(currentTimerThread) end if clickTimerThread then task.cancel(clickTimerThread) end local closeTween = TweenService:Create(main, TweenInfo.new(0.3, Enum.EasingStyle.Quart, Enum.EasingDirection.In), { Size = UDim2.new(0, 0, 0, 0), Position = UDim2.new(0.5, 0, 0.5, 0), BackgroundTransparency = 1 }) closeTween:Play() closeTween.Completed:Wait() if crosshairGui then crosshairGui:Destroy() end if gui then gui:Destroy() end end) noBtn.MouseButton1Click:Connect(function() local t1 = TweenService:Create(confirmOverlay, TweenInfo.new(0.15, Enum.EasingStyle.Quart, Enum.EasingDirection.In), { BackgroundTransparency = 1 }) local t2 = TweenService:Create(confirmBox, TweenInfo.new(0.15, Enum.EasingStyle.Quart, Enum.EasingDirection.In), { Size = UDim2.new(0, 0, 0, 0), Position = UDim2.new(0.5, 0, 0.5, 0) }) t1:Play() t2:Play() t2.Completed:Connect(function() confirmOverlay.Visible = false end) end) print("[Mega Hub] All systems initialized!")