local Players = game:GetService("Players") local TweenService = game:GetService("TweenService") local UserInputService = game:GetService("UserInputService") local RunService = game:GetService("RunService") local player = Players.LocalPlayer local playerGui = player:WaitForChild("PlayerGui") local KEY_REQUIRED = "AIZENPAPA" local PROP_FOLDER_NAME = "AizenProps" local CENTER_NAME = "AizenCenter" local COLORS = { Bg = Color3.fromRGB(8, 8, 12), Panel = Color3.fromRGB(17, 17, 24), Panel2 = Color3.fromRGB(24, 24, 32), Stroke = Color3.fromRGB(58, 58, 74), Text = Color3.fromRGB(236, 236, 242), Muted = Color3.fromRGB(146, 146, 160), Accent = Color3.fromRGB(138, 34, 48), Accent2 = Color3.fromRGB(186, 54, 70), Success = Color3.fromRGB(80, 170, 120), Star = Color3.fromRGB(255, 255, 255) } local selectedMode = "ORBIT" local animationConnection = nil local function tween(obj, time, props, style, dir) local cleanProps = {} for k, v in pairs(props) do if v ~= nil then cleanProps[k] = v end end local info = TweenInfo.new(time, style or Enum.EasingStyle.Quint, dir or Enum.EasingDirection.Out) local tw = TweenService:Create(obj, info, cleanProps) tw:Play() return tw end local function getCenterPart() local obj = workspace:FindFirstChild(CENTER_NAME) if not obj then if player.Character and player.Character:FindFirstChild("HumanoidRootPart") then return player.Character.HumanoidRootPart end return nil end if obj:IsA("BasePart") then return obj end if obj:IsA("Model") and obj.PrimaryPart then return obj.PrimaryPart end return nil end local function getPropEntries() local entries = {} local checked = {} local folder = workspace:FindFirstChild(PROP_FOLDER_NAME) if folder and folder:IsA("Folder") then for _, item in ipairs(folder:GetChildren()) do if item:IsA("BasePart") and not checked[item] then checked[item] = true table.insert(entries, { instance = item, type = "Part", pivot = item.CFrame }) elseif item:IsA("Model") and item.PrimaryPart and not checked[item] then checked[item] = true table.insert(entries, { instance = item, type = "Model", pivot = item:GetPivot() }) end end end for _, item in ipairs(workspace:GetDescendants()) do if item:IsA("Model") and not checked[item] then local isYourProp = false local ownerTag = item:FindFirstChild("Owner") or item:FindFirstChild("Creator") or item:FindFirstChild("Player") if ownerTag and (ownerTag.Value == player or ownerTag.Value == player.Name or tostring(ownerTag.Value) == tostring(player.UserId)) then isYourProp = true elseif item:GetAttribute("OwnerId") == player.UserId or item:GetAttribute("Creator") == player.Name then isYourProp = true elseif string.find(item.Name:lower(), "placedprop") or string.find(item.Name:lower(), "houseprop") then isYourProp = true end if isYourProp then checked[item] = true if not item.PrimaryPart then item.PrimaryPart = item:FindFirstChildWhichIsA("BasePart") end if item.PrimaryPart then table.insert(entries, { instance = item, type = "Model", pivot = item:GetPivot() }) end end elseif item:IsA("BasePart") and (item.Name == "ManuallyPlacedProp" or item:GetAttribute("Creator") == player.Name) and not checked[item] then checked[item] = true table.insert(entries, { instance = item, type = "Part", pivot = item.CFrame }) end end return entries end local function moveEntry(entry, cf) if not entry.instance or not entry.instance.Parent then return end if entry.type == "Part" then if entry.instance.Anchored then entry.instance.Anchored = false end entry.instance.CFrame = cf entry.instance.AssemblyLinearVelocity = Vector3.new(0, 0.01, 0) elseif entry.type == "Model" then for _, part in ipairs(entry.instance:GetDescendants()) do if part:IsA("BasePart") then if part.Anchored then part.Anchored = false end part.AssemblyLinearVelocity = Vector3.new(0, 0.01, 0) end end entry.instance:PivotTo(cf) end end local function stopAnimation() if animationConnection then animationConnection:Disconnect() animationConnection = nil end end local function startOrbit(entries, centerPart) stopAnimation() local t = 0 local radius = 11 local height = 2.5 local speed = 1.8 animationConnection = RunService.RenderStepped:Connect(function(dt) t += dt * speed if not centerPart or not centerPart.Parent then return end local centerCF = centerPart.CFrame for i, entry in ipairs(entries) do local angle = t + ((i - 1) / math.max(#entries, 1)) * (math.pi * 2) local x = math.cos(angle) * radius local z = math.sin(angle) * radius local bob = math.sin(t * 2 + i) * 0.35 local targetCF = centerCF * CFrame.new(x, height + bob, z) * CFrame.Angles(0, -angle + math.rad(90), 0) moveEntry(entry, targetCF) end end) end local function startWings(entries, centerPart) stopAnimation() local t = 0 local spacing = 3.5 local backOffset = -4 local sideOffset = 6 local waveSpeed = 2.2 animationConnection = RunService.RenderStepped:Connect(function(dt) t += dt * waveSpeed if not centerPart or not centerPart.Parent then return end local centerCF = centerPart.CFrame local half = math.ceil(#entries / 2) for i, entry in ipairs(entries) do local isLeft = i <= half local wingIndex = isLeft and i or (i - half) local side = isLeft and -1 or 1 local x = side * (sideOffset + wingIndex * 1.4) local y = 2 + math.sin(t + wingIndex * 0.7) * 0.6 local z = backOffset - (wingIndex - 1) * spacing local yaw = isLeft and math.rad(25) or math.rad(-25) local targetCF = centerCF * CFrame.new(x, y, z) * CFrame.Angles(0, yaw, 0) moveEntry(entry, targetCF) end end) end local function startDomain(entries, centerPart) stopAnimation() local t = 0 local radius = 16 local spinSpeed = 0.9 animationConnection = RunService.RenderStepped:Connect(function(dt) t += dt * spinSpeed if not centerPart or not centerPart.Parent then return end local centerCF = centerPart.CFrame for i, entry in ipairs(entries) do local alpha = ((i - 1) / math.max(#entries, 1)) * (math.pi * 2) local angle = alpha + t local waveRadius = radius + math.sin(t * 1.4 + i) * 1.2 local x = math.cos(angle) * waveRadius local z = math.sin(angle) * waveRadius local y = 1.5 + math.sin(t * 2 + alpha * 3) * 1.1 local targetCF = centerCF * CFrame.new(x, y, z) * CFrame.Angles(0, -angle, 0) moveEntry(entry, targetCF) end end) end local screenGui = Instance.new("ScreenGui") screenGui.Name = "AizenOrbitHub" screenGui.ResetOnSpawn = false screenGui.ZIndexBehavior = Enum.ZIndexBehavior.Sibling screenGui.Parent = playerGui local introOverlay = Instance.new("Frame") introOverlay.Parent = screenGui introOverlay.Size = UDim2.new(1, 0, 1, 0) introOverlay.BackgroundColor3 = COLORS.Bg introOverlay.BorderSizePixel = 0 introOverlay.ZIndex = 50 local introGlow = Instance.new("Frame") introGlow.Parent = introOverlay introGlow.AnchorPoint = Vector2.new(0.5, 0.5) introGlow.Position = UDim2.new(0.5, 0, 0.5, 0) introGlow.Size = UDim2.new(0, 0, 0, 0) introGlow.BackgroundColor3 = COLORS.Accent introGlow.BackgroundTransparency = 0.75 introGlow.BorderSizePixel = 0 introGlow.ZIndex = 51 Instance.new("UICorner", introGlow).CornerRadius = UDim.new(1, 0) local introTitle = Instance.new("TextLabel") introTitle.Parent = introOverlay introTitle.AnchorPoint = Vector2.new(0.5, 0.5) introTitle.Position = UDim2.new(0.5, 0, 0.5, -8) introTitle.Size = UDim2.new(0, 380, 0, 50) introTitle.BackgroundTransparency = 1 introTitle.Text = "AIZEN ORBIT HUB" introTitle.Font = Enum.Font.GothamBlack introTitle.TextSize = 28 introTitle.TextColor3 = COLORS.Text introTitle.TextTransparency = 1 introTitle.ZIndex = 52 local introSub = Instance.new("TextLabel") introSub.Parent = introOverlay introSub.AnchorPoint = Vector2.new(0.5, 0.5) introSub.Position = UDim2.new(0.5, 0, 0.5, 26) introSub.Size = UDim2.new(0, 320, 0, 24) introSub.BackgroundTransparency = 1 introSub.Text = "visual prop controller loaded" introSub.Font = Enum.Font.Gotham introSub.TextSize = 13 introSub.TextColor3 = COLORS.Muted introSub.TextTransparency = 1 introSub.ZIndex = 52 local keyFrame = Instance.new("Frame") keyFrame.Name = "KeyFrame" keyFrame.Size = UDim2.new(0, 310, 0, 190) keyFrame.Position = UDim2.new(0.5, -155, 0.38, 0) keyFrame.BackgroundColor3 = COLORS.Panel keyFrame.BorderSizePixel = 0 keyFrame.Parent = screenGui keyFrame.Visible = false keyFrame.BackgroundTransparency = 1 Instance.new("UICorner", keyFrame).CornerRadius = UDim.new(0, 14) local keyStroke = Instance.new("UIStroke", keyFrame) keyStroke.Color = COLORS.Stroke keyStroke.Thickness = 1 keyStroke.Transparency = 1 local keyScale = Instance.new("UIScale", keyFrame) keyScale.Scale = 0.86 local keyHeader = Instance.new("TextLabel") keyHeader.Parent = keyFrame keyHeader.BackgroundTransparency = 1 keyHeader.Size = UDim2.new(1, -24, 0, 34) keyHeader.Position = UDim2.new(0, 12, 0, 12) keyHeader.Text = "AIZEN ORBIT HUB" keyHeader.Font = Enum.Font.GothamSemibold keyHeader.TextSize = 18 keyHeader.TextColor3 = COLORS.Text keyHeader.TextXAlignment = Enum.TextXAlignment.Left keyHeader.TextTransparency = 1 local keySub = Instance.new("TextLabel") keySub.Parent = keyFrame keySub.BackgroundTransparency = 1 keySub.Size = UDim2.new(1, -24, 0, 18) keySub.Position = UDim2.new(0, 12, 0, 42) keySub.Text = "secure access panel" keySub.Font = Enum.Font.Gotham keySub.TextSize = 12 keySub.TextColor3 = COLORS.Muted keySub.TextXAlignment = Enum.TextXAlignment.Left keySub.TextTransparency = 1 local keyInput = Instance.new("TextBox") keyInput.Parent = keyFrame keyInput.Size = UDim2.new(1, -24, 0, 40) keyInput.Position = UDim2.new(0, 12, 0, 86) keyInput.BackgroundColor3 = COLORS.Panel2 keyInput.BorderSizePixel = 0 keyInput.PlaceholderText = "Enter key" keyInput.Text = "" keyInput.ClearTextOnFocus = false keyInput.Font = Enum.Font.Gotham keyInput.TextSize = 14 keyInput.TextColor3 = COLORS.Text keyInput.PlaceholderColor3 = COLORS.Muted keyInput.BackgroundTransparency = 1 keyInput.TextTransparency = 1 Instance.new("UICorner", keyInput).CornerRadius = UDim.new(0, 10) local keyInputStroke = Instance.new("UIStroke", keyInput) keyInputStroke.Color = COLORS.Stroke keyInputStroke.Thickness = 1 keyInputStroke.Transparency = 1 local keyBtn = Instance.new("TextButton") keyBtn.Parent = keyFrame keyBtn.Size = UDim2.new(1, -24, 0, 42) keyBtn.Position = UDim2.new(0, 12, 1, -54) keyBtn.BackgroundColor3 = COLORS.Accent keyBtn.BorderSizePixel = 0 keyBtn.Text = "ACCESS" keyBtn.Font = Enum.Font.GothamSemibold keyBtn.TextSize = 14 keyBtn.TextColor3 = COLORS.Text keyBtn.BackgroundTransparency = 1 keyBtn.TextTransparency = 1 Instance.new("UICorner", keyBtn).CornerRadius = UDim.new(0, 10) local mainFrame = Instance.new("Frame") mainFrame.Name = "MainFrame" mainFrame.Size = UDim2.new(0, 390, 0, 290) mainFrame.Position = UDim2.new(0.5, -195, 0.27, 0) mainFrame.BackgroundColor3 = COLORS.Panel mainFrame.BorderSizePixel = 0 mainFrame.Visible = false mainFrame.Parent = screenGui mainFrame.BackgroundTransparency = 1 Instance.new("UICorner", mainFrame).CornerRadius = UDim.new(0, 14) local mainStroke = Instance.new("UIStroke", mainFrame) mainStroke.Color = COLORS.Stroke mainStroke.Thickness = 1 mainStroke.Transparency = 1 local mainScale = Instance.new("UIScale", mainFrame) mainScale.Scale = 0.9 local starsHolder = Instance.new("Frame") starsHolder.Parent = mainFrame starsHolder.BackgroundTransparency = 1 starsHolder.ClipsDescendants = true starsHolder.Size = UDim2.new(1, 0, 1, 0) local topBar = Instance.new("Frame") topBar.Name = "TopBar" topBar.Parent = mainFrame topBar.Size = UDim2.new(1, 0, 0, 44) topBar.BackgroundTransparency = 1 local title = Instance.new("TextLabel") title.Parent = topBar title.BackgroundTransparency = 1 title.Size = UDim2.new(1, -92, 1, 0) title.Position = UDim2.new(0, 14, 0, 0) title.Text = "AIZEN ORBIT HUB" title.Font = Enum.Font.GothamSemibold title.TextSize = 18 title.TextColor3 = COLORS.Text title.TextXAlignment = Enum.TextXAlignment.Left title.TextTransparency = 1 local subtitle = Instance.new("TextLabel") subtitle.Parent = mainFrame subtitle.BackgroundTransparency = 1 subtitle.Size = UDim2.new(1, -28, 0, 18) subtitle.Position = UDim2.new(0, 14, 0, 44) subtitle.Text = "placed prop visual controls" subtitle.Font = Enum.Font.Gotham subtitle.TextSize = 12 subtitle.TextColor3 = COLORS.Muted subtitle.TextXAlignment = Enum.TextXAlignment.Left subtitle.TextTransparency = 1 local miniBtn = Instance.new("TextButton") miniBtn.Parent = topBar miniBtn.Size = UDim2.new(0, 28, 0, 28) miniBtn.Position = UDim2.new(1, -68, 0, 8) miniBtn.BackgroundColor3 = COLORS.Panel2 miniBtn.BorderSizePixel = 0 miniBtn.Text = "—" miniBtn.Font = Enum.Font.GothamBold miniBtn.TextSize = 16 miniBtn.TextColor3 = COLORS.Text miniBtn.BackgroundTransparency = 1 miniBtn.TextTransparency = 1 Instance.new("UICorner", miniBtn).CornerRadius = UDim.new(0, 8) local miniStroke = Instance.new("UIStroke", miniBtn) miniStroke.Color = COLORS.Stroke miniStroke.Thickness = 1 miniStroke.Transparency = 1 local closeBtn = Instance.new("TextButton") closeBtn.Parent = topBar closeBtn.Size = UDim2.new(0, 28, 0, 28) closeBtn.Position = UDim2.new(1, -34, 0, 8) closeBtn.BackgroundColor3 = COLORS.Panel2 closeBtn.BorderSizePixel = 0 closeBtn.Text = "✕" closeBtn.Font = Enum.Font.GothamBold closeBtn.TextSize = 14 closeBtn.TextColor3 = COLORS.Text closeBtn.BackgroundTransparency = 1 closeBtn.TextTransparency = 1 Instance.new("UICorner", closeBtn).CornerRadius = UDim.new(0, 8) local closeStroke = Instance.new("UIStroke", closeBtn) closeStroke.Color = COLORS.Stroke closeStroke.Thickness = 1 closeStroke.Transparency = 1 local modeLabel = Instance.new("TextLabel") modeLabel.Parent = mainFrame modeLabel.BackgroundTransparency = 1 modeLabel.Size = UDim2.new(1, -28, 0, 16) modeLabel.Position = UDim2.new(0, 14, 0, 82) modeLabel.Text = "Modes" modeLabel.Font = Enum.Font.GothamMedium modeLabel.TextSize = 12 modeLabel.TextColor3 = COLORS.Muted modeLabel.TextXAlignment = Enum.TextXAlignment.Left modeLabel.TextTransparency = 1 local buttonsHolder = Instance.new("Frame") buttonsHolder.Parent = mainFrame buttonsHolder.BackgroundTransparency = 1 buttonsHolder.Size = UDim2.new(1, -28, 0, 44) buttonsHolder.Position = UDim2.new(0, 14, 0, 102) local listLayout = Instance.new("UIListLayout") listLayout.Parent = buttonsHolder listLayout.FillDirection = Enum.FillDirection.Horizontal listLayout.HorizontalAlignment = Enum.HorizontalAlignment.Left listLayout.VerticalAlignment = Enum.VerticalAlignment.Center listLayout.Padding = UDim.new(0, 8) local function makeModeButton(text) local btn = Instance.new("TextButton") btn.Size = UDim2.new(0, 114, 1, 0) btn.BackgroundColor3 = COLORS.Panel2 btn.BorderSizePixel = 0 btn.Text = text btn.Font = Enum.Font.GothamSemibold btn.TextSize = 13 btn.TextColor3 = COLORS.Text btn.BackgroundTransparency = 1 btn.TextTransparency = 1 Instance.new("UICorner", btn).CornerRadius = UDim.new(0, 10) local stroke = Instance.new("UIStroke", btn) stroke.Color = COLORS.Stroke stroke.Thickness = 1 stroke.Transparency = 1 btn.Parent = buttonsHolder return btn, stroke end local orbitBtn, orbitStroke = makeModeButton("ORBIT") local wingsBtn, wingsStroke = makeModeButton("WINGS") local domainBtn, domainStroke = makeModeButton("DOMAIN") local infoBox = Instance.new("Frame") infoBox.Parent = mainFrame infoBox.Size = UDim2.new(1, -28, 0, 92) infoBox.Position = UDim2.new(0, 14, 0, 162) infoBox.BackgroundColor3 = COLORS.Panel2 infoBox.BorderSizePixel = 0 infoBox.BackgroundTransparency = 1 Instance.new("UICorner", infoBox).CornerRadius = UDim.new(0, 10) local infoStroke = Instance.new("UIStroke", infoBox) infoStroke.Color = COLORS.Stroke infoStroke.Thickness = 1 infoStroke.Transparency = 1 local infoText = Instance.new("TextLabel") infoText.Parent = infoBox infoText.BackgroundTransparency = 1 infoText.Size = UDim2.new(1, -20, 1, -16) infoText.Position = UDim2.new(0, 10, 0, 8) infoText.Text = "Props unanchor automatically to allow Network Ownership replication so everyone in the server sees your custom animations!" infoText.TextWrapped = true infoText.Font = Enum.Font.Gotham infoText.TextSize = 13 infoText.TextColor3 = COLORS.Text infoText.TextXAlignment = Enum.TextXAlignment.Left infoText.TextYAlignment = Enum.TextYAlignment.Top infoText.TextTransparency = 1 local statusLabel = Instance.new("TextLabel") statusLabel.Parent = mainFrame statusLabel.BackgroundTransparency = 1 statusLabel.Size = UDim2.new(1, -28, 0, 18) statusLabel.Position = UDim2.new(0, 14, 1, -22) statusLabel.Text = "Ready" statusLabel.Font = Enum.Font.Gotham statusLabel.TextSize = 12 statusLabel.TextColor3 = COLORS.Muted statusLabel.TextXAlignment = Enum.TextXAlignment.Left statusLabel.TextTransparency = 1 local openIcon = Instance.new("TextButton") openIcon.Name = "OpenIcon" openIcon.Parent = screenGui openIcon.Visible = false openIcon.Size = UDim2.new(0, 56, 0, 56) openIcon.Position = UDim2.new(0, 18, 0.5, -28) openIcon.BackgroundColor3 = COLORS.Panel openIcon.BorderSizePixel = 0 openIcon.Text = "✦" openIcon.Font = Enum.Font.GothamBold openIcon.TextSize = 22 openIcon.TextColor3 = COLORS.Text openIcon.BackgroundTransparency = 1 openIcon.TextTransparency = 1 Instance.new("UICorner", openIcon).CornerRadius = UDim.new(1, 0) local openStroke = Instance.new("UIStroke", openIcon) openStroke.Color = COLORS.Accent openStroke.Thickness = 1.2 openStroke.Transparency = 1 local openScale = Instance.new("UIScale", openIcon) openScale.Scale = 0.85 local openTip = Instance.new("TextLabel") openTip.Parent = openIcon openTip.BackgroundTransparency = 1 openTip.Size = UDim2.new(0, 90, 0, 16) openTip.Position = UDim2.new(0.5, -45, 1, 4) openTip.Text = "Back to menu" openTip.Font = Enum.Font.Gotham openTip.TextSize = 10 openTip.TextColor3 = COLORS.Muted openTip.TextTransparency = 1 local function makeDraggable(guiObject) local dragging = false local dragStart local startPos guiObject.InputBegan:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseButton1 or input.UserInputType == Enum.UserInputType.Touch then dragging = true dragStart = input.Position startPos = guiObject.Position input.Changed:Connect(function() if input.UserInputState == Enum.UserInputState.End then dragging = false end end) end end) UserInputService.InputChanged:Connect(function(input) if dragging and (input.UserInputType == Enum.UserInputType.MouseMovement or input.UserInputType == Enum.UserInputType.Touch) then local delta = input.Position - dragStart guiObject.Position = UDim2.new( startPos.X.Scale, startPos.X.Offset + delta.X, startPos.Y.Scale, startPos.Y.Offset + delta.Y ) end end) end makeDraggable(mainFrame) makeDraggable(openIcon) makeDraggable(keyFrame) local function createStar() local star = Instance.new("Frame") star.Parent = starsHolder star.AnchorPoint = Vector2.new(0.5, 0.5) local size = math.random(1, 3) star.Size = UDim2.new(0, size, 0, size) star.Position = UDim2.new(math.random(), 0, math.random(), 0) star.BackgroundColor3 = COLORS.Star star.BorderSizePixel = 0 star.BackgroundTransparency = math.random(50, 80) / 100 Instance.new("UICorner", star).CornerRadius = UDim.new(1, 0) task.spawn(function() while star.Parent do tween(star, math.random(20, 36) / 10, { Position = UDim2.new(math.random(), 0, math.random(), 0), BackgroundTransparency = math.random(55, 90) / 100 }, Enum.EasingStyle.Sine, Enum.EasingDirection.InOut).Completed:Wait() end end) end for _ = 1, 28 do createStar() end local orbitScale = Instance.new("UIScale", orbitBtn) local wingsScale = Instance.new("UIScale", wingsBtn) local domainScale = Instance.new("UIScale", domainBtn) local keyBtnScale = Instance.new("UIScale", keyBtn) local miniScale = Instance.new("UIScale", miniBtn) local closeScale = Instance.new("UIScale", closeBtn) local function pulseButton(btn, hoverColor, normalColor, scaleObject) btn.MouseEnter:Connect(function() tween(btn, 0.16, {BackgroundColor3 = hoverColor, BackgroundTransparency = 0}) if scaleObject then tween(scaleObject, 0.16, {Scale = 1.03}) end end) btn.MouseLeave:Connect(function() tween(btn, 0.16, {BackgroundColor3 = normalColor, BackgroundTransparency = 0}) if scaleObject then tween(scaleObject, 0.16, {Scale = 1}) end end) end pulseButton(keyBtn, COLORS.Accent2, COLORS.Accent, keyBtnScale) pulseButton(orbitBtn, Color3.fromRGB(30, 30, 40), COLORS.Panel2, orbitScale) pulseButton(wingsBtn, Color3.fromRGB(30, 30, 40), COLORS.Panel2, wingsScale) pulseButton(domainBtn, Color3.fromRGB(30, 30, 40), COLORS.Panel2, domainScale) pulseButton(miniBtn, Color3.fromRGB(34, 34, 42), COLORS.Panel2, miniScale) pulseButton(closeBtn, Color3.fromRGB(54, 30, 36), COLORS.Panel2, closeScale) openIcon.MouseEnter:Connect(function() tween(openIcon, 0.16, {BackgroundColor3 = Color3.fromRGB(24, 24, 32), BackgroundTransparency = 0}) tween(openScale, 0.16, {Scale = 1.06}) tween(openTip, 0.16, {TextTransparency = 0}) end) openIcon.MouseLeave:Connect(function() tween(openIcon, 0.16, {BackgroundColor3 = COLORS.Panel, BackgroundTransparency = 0}) tween(openScale, 0.16, {Scale = 1}) tween(openTip, 0.16, {TextTransparency = 1}) end) local function animateIntro() tween(introGlow, 0.45, { Size = UDim2.new(0, 180, 0, 180), BackgroundTransparency = 0.82 }, Enum.EasingStyle.Quad, Enum.EasingDirection.Out) task.wait(0.08) tween(introTitle, 0.35, {TextTransparency = 0}, Enum.EasingStyle.Quart, Enum.EasingDirection.Out) tween(introSub, 0.35, {TextTransparency = 0}, Enum.EasingStyle.Quart, Enum.EasingDirection.Out) task.wait(0.55) tween(introGlow, 0.5, { Size = UDim2.new(0, 460, 0, 460), BackgroundTransparency = 1 }, Enum.EasingStyle.Quart, Enum.EasingDirection.Out) tween(introTitle, 0.28, {TextTransparency = 1}) tween(introSub, 0.28, {TextTransparency = 1}) tween(introOverlay, 0.35, {BackgroundTransparency = 1}) task.wait(0.36) introOverlay:Destroy() end local function revealKeyPanel() keyFrame.Visible = true tween(keyFrame, 0.22, {BackgroundTransparency = 0}) tween(keyStroke, 0.22, {Transparency = 0}) tween(keyScale, 0.24, {Scale = 1}, Enum.EasingStyle.Back, Enum.EasingDirection.Out) tween(keyHeader, 0.2, {TextTransparency = 0}) tween(keySub, 0.2, {TextTransparency = 0}) tween(keyInput, 0.2, {BackgroundTransparency = 0, TextTransparency = 0}) tween(keyInputStroke, 0.2, {Transparency = 0}) tween(keyBtn, 0.2, {BackgroundTransparency = 0, TextTransparency = 0}) end local function revealMain() mainFrame.Visible = true tween(mainFrame, 0.22, {BackgroundTransparency = 0}) tween(mainStroke, 0.22, {Transparency = 0}) tween(mainScale, 0.28, {Scale = 1}, Enum.EasingStyle.Back, Enum.EasingDirection.Out) for _, obj in ipairs({title, subtitle, modeLabel, infoText, statusLabel}) do tween(obj, 0.2, {TextTransparency = 0}) end for _, obj in ipairs({miniBtn, closeBtn, orbitBtn, wingsBtn, domainBtn, infoBox}) do if obj:IsA("TextButton") then tween(obj, 0.2, {BackgroundTransparency = 0, TextTransparency = 0}) else tween(obj, 0.2, {BackgroundTransparency = 0}) end end for _, stroke in ipairs({miniStroke, closeStroke, orbitStroke, wingsStroke, domainStroke, infoStroke}) do tween(stroke, 0.2, {Transparency = 0}) end end local function hideMainToIcon() tween(mainScale, 0.18, {Scale = 0.88}, Enum.EasingStyle.Quad, Enum.EasingDirection.In) tween(mainFrame, 0.18, {BackgroundTransparency = 1}) tween(mainStroke, 0.18, {Transparency = 1}) task.wait(0.18) mainFrame.Visible = false openIcon.Visible = true tween(openIcon, 0.18, {BackgroundTransparency = 0, TextTransparency = 0}) tween(openStroke, 0.18, {Transparency = 0}) tween(openTip, 0.18, {TextTransparency = 0}) tween(openScale, 0.2, {Scale = 1}, Enum.EasingStyle.Back, Enum.EasingDirection.Out) end local function showMainFromIcon() tween(openScale, 0.15, {Scale = 0.82}, Enum.EasingStyle.Quad, Enum.EasingDirection.In) tween(openIcon, 0.15, {BackgroundTransparency = 1, TextTransparency = 1}) tween(openStroke, 0.15, {Transparency = 1}) tween(openTip, 0.15, {TextTransparency = 1}) task.wait(0.15) openIcon.Visible = false revealMain() end keyBtn.MouseButton1Click:Connect(function() if keyInput.Text == KEY_REQUIRED then keyBtn.Text = "ACCESS GRANTED" keyBtn.BackgroundColor3 = COLORS.Success task.wait(0.3) tween(keyScale, 0.18, {Scale = 0.9}, Enum.EasingStyle.Quad, Enum.EasingDirection.In) tween(keyFrame, 0.18, {BackgroundTransparency = 1}) tween(keyStroke, 0.18, {Transparency = 1}) task.wait(0.2) keyFrame.Visible = false revealMain() applyMode("ORBIT") else keyBtn.Text = "INVALID KEY" keyBtn.BackgroundColor3 = Color3.fromRGB(94, 34, 40) task.wait(0.8) keyBtn.Text = "ACCESS" keyBtn.BackgroundColor3 = COLORS.Accent end end) miniBtn.MouseButton1Click:Connect(function() hideMainToIcon() end) openIcon.MouseButton1Click:Connect(function() showMainFromIcon() end) closeBtn.MouseButton1Click:Connect(function() stopAnimation() tween(mainScale, 0.18, {Scale = 0.84}, Enum.EasingStyle.Quad, Enum.EasingDirection.In) tween(mainFrame, 0.18, {BackgroundTransparency = 1}) tween(mainStroke, 0.18, {Transparency = 1}) tween(keyFrame, 0.18, {BackgroundTransparency = 1}) task.wait(0.2) screenGui:Destroy() end) task.spawn(function() animateIntro() revealKeyPanel() end)