-- AdvancedAdminPanel_Final.lua -- LocalScript -> StarterPlayer > StarterPlayerScripts -- All-in-one: draggable modern panel, tabs, fly, speed boost (walkspeed), infinite jump, noclip, kill, fling, TP dropdown, ESP (box + tracer if available), -- chat logs, server hop, rejoin. Buttons grey-degrade style. -- ===== CONFIG ===== local iconPath = '/mnt/data/A_2D_digital_illustration_infographic_titled_"Miku.png' -- local asset path (will be transformed by host) -- ===== SERVICES ===== local Players = game:GetService("Players") local RunService = game:GetService("RunService") local UIS = game:GetService("UserInputService") local TeleportService = game:GetService("TeleportService") local LocalPlayer = Players.LocalPlayer local PlayerGui = LocalPlayer:WaitForChild("PlayerGui") local cam = workspace.CurrentCamera -- ===== UTIL ===== local function New(class, props) local obj = Instance.new(class) if props then for k,v in pairs(props) do if k == "Parent" then obj.Parent = v else pcall(function() obj[k] = v end) end end end return obj end local function safeDisconnect(conn) if conn and conn.Disconnect then conn:Disconnect() elseif conn and conn.disconnect then conn:disconnect() end end -- ===== STATE ===== local state = { guiOpen = true, -- auto-open on execute flying = false, infjump = false, noclip = false, esp = false, tracer = false, box = true, speed = 16, freecamSpeed = 3, autoRejoin = false, } -- ===== GUI BUILD ===== local screen = New("ScreenGui", {Parent = PlayerGui, ResetOnSpawn = false, Name = "AdvAdminGUI_vFinal"}) screen.Enabled = true -- open immediately when executed -- panel local panel = New("Frame", {Parent = screen, Size = UDim2.new(0,600,0,420), Position = UDim2.new(0.08,0,0.06,0), BackgroundColor3 = Color3.fromRGB(24,24,24)}) New("UICorner", {Parent = panel, CornerRadius = UDim.new(0,8)}) New("UIStroke", {Parent = panel, Color = Color3.fromRGB(180,180,180), Transparency = 0.85, Thickness = 1}) -- topbar local top = New("Frame", {Parent = panel, Size = UDim2.new(1,0,0,42), BackgroundTransparency = 1}) -- Title local title = New("TextLabel", { Parent = top, Position = UDim2.new(0,12,0,8), Size = UDim2.new(0.6,0,1,0), BackgroundTransparency = 1, Text = "C00lkidd-Scripts admin gui V.1", Font = Enum.Font.SourceSansBold, TextSize = 20, TextColor3 = Color3.fromRGB(235,235,235) }) local closeBtn = New("TextButton", {Parent = top, Size = UDim2.new(0,34,0,34), Position = UDim2.new(1,-46,0,4), Text = "✕", TextColor3 = Color3.new(1,1,1), BackgroundColor3 = Color3.fromRGB(45,45,45)}) New("UICorner", {Parent = closeBtn, CornerRadius = UDim.new(0,6)}) New("UIStroke", {Parent = closeBtn, Color = Color3.fromRGB(140,140,140), Transparency = 0.8}) -- left tab column local tabCol = New("Frame", {Parent = panel, Position = UDim2.new(0,12,0,56), Size = UDim2.new(0,160,1,-70), BackgroundTransparency = 1}) local tabLayout = New("UIListLayout", {Parent = tabCol, FillDirection = Enum.FillDirection.Vertical, Padding = UDim.new(0,8)}) tabLayout.SortOrder = Enum.SortOrder.LayoutOrder -- content area local content = New("Frame", {Parent = panel, Position = UDim2.new(0,184,0,56), Size = UDim2.new(1,-196,1,-70), BackgroundColor3 = Color3.fromRGB(18,18,18)}) New("UICorner", {Parent = content, CornerRadius = UDim.new(0,6)}) -- tab helper (grey-degrade style) local pages = {} local function makeTab(name) local btn = New("TextButton", {Parent = tabCol, Size = UDim2.new(1,0,0,36), Text = name, Font = Enum.Font.SourceSans, TextSize = 15, BackgroundColor3 = Color3.fromRGB(36,36,36), TextColor3 = Color3.fromRGB(235,235,235)}) New("UICorner", {Parent = btn, CornerRadius = UDim.new(0,6)}) local grad = New("UIGradient", {Parent = btn}) grad.Color = ColorSequence.new{ColorSequenceKeypoint.new(0, Color3.fromRGB(64,64,64)), ColorSequenceKeypoint.new(1, Color3.fromRGB(44,44,44))} local page = New("Frame", {Parent = content, Size = UDim2.new(1,0,1,0), BackgroundTransparency = 1, Visible = false}) pages[name] = page btn.MouseButton1Click:Connect(function() for _,p in pairs(pages) do p.Visible = false end page.Visible = true btn.BackgroundColor3 = Color3.fromRGB(70,70,70) delay(0.12, function() btn.BackgroundColor3 = Color3.fromRGB(36,36,36) end) end) return page, btn end local homePage = makeTab("Home") local movementPage = makeTab("Movement") local combatPage = makeTab("Combat") local visualPage = makeTab("Visuals") local playersPage = makeTab("Players") local utilPage = makeTab("Utility") pages["Home"].Visible = true -- --- HOME CONTENT New("TextLabel", {Parent = homePage, Position = UDim2.new(0,12,0,8), Size = UDim2.new(1,-24,0,60), BackgroundTransparency = 1, Text = "Hoşgeldin kanka! F ile aç/kapa. Sunucu kısıtları bazı actionları engelleyebilir.", TextWrapped = true, Font = Enum.Font.SourceSans, TextSize = 14, TextColor3 = Color3.fromRGB(230,230,230)}) -- Discord link alt yazısı New("TextLabel", {Parent = homePage, Position = UDim2.new(0,12,1,-32), Size = UDim2.new(1,-24,0,20), BackgroundTransparency = 1, Text = "Discordumuza gelmeyi unutmayın ! https://discord.gg/BsfrKcjEys", TextWrapped = false, Font = Enum.Font.SourceSansItalic, TextSize = 14, TextColor3 = Color3.fromRGB(160,200,255)}) -- ================= Movement page controls (freecam removed) ================= local flyToggle = New("TextButton", {Parent = movementPage, Position = UDim2.new(0,12,0,12), Size = UDim2.new(0,320,0,40), Text = "Fly: OFF"}) New("UICorner", {Parent = flyToggle, CornerRadius = UDim.new(0,6)}) local speedLabel = New("TextLabel", {Parent = movementPage, Position = UDim2.new(0,12,0,62), Size = UDim2.new(0,220,0,20), BackgroundTransparency = 1, Text = "Speed: 16", TextColor3 = Color3.fromRGB(220,220,220)}) local speedBar = New("Frame", {Parent = movementPage, Position = UDim2.new(0,12,0,82), Size = UDim2.new(0,260,0,18), BackgroundColor3 = Color3.fromRGB(40,40,40)}) New("UICorner", {Parent = speedBar, CornerRadius = UDim.new(0,8)}) local speedFill = New("Frame", {Parent = speedBar, Size = UDim2.new(0.06,0,1,0), BackgroundColor3 = Color3.fromRGB(120,120,120)}) New("UICorner", {Parent = speedFill, CornerRadius = UDim.new(0,8)}) local infJumpToggle = New("TextButton", {Parent = movementPage, Position = UDim2.new(0,12,0,112), Size = UDim2.new(0,320,0,40), Text = "InfiniteJump: OFF"}) New("UICorner", {Parent = infJumpToggle, CornerRadius = UDim.new(0,6)}) local noclipToggle = New("TextButton", {Parent = movementPage, Position = UDim2.new(0,12,0,162), Size = UDim2.new(0,320,0,40), Text = "Noclip: OFF"}) New("UICorner", {Parent = noclipToggle, CornerRadius = UDim.new(0,6)}) -- ================= Combat page (Kill / Fling) ================= local killInput = New("TextBox", {Parent = combatPage, Position = UDim2.new(0,12,0,12), Size = UDim2.new(0,320,0,36), PlaceholderText = "PlayerName to Kill", BackgroundColor3 = Color3.fromRGB(36,36,36), TextColor3 = Color3.fromRGB(235,235,235)}) New("UICorner", {Parent = killInput, CornerRadius = UDim.new(0,6)}) local killBtn = New("TextButton", {Parent = combatPage, Position = UDim2.new(0,344,0,12), Size = UDim2.new(0,120,0,36), Text = "Kill"}) New("UICorner", {Parent = killBtn, CornerRadius = UDim.new(0,6)}) local flingInput = New("TextBox", {Parent = combatPage, Position = UDim2.new(0,12,0,62), Size = UDim2.new(0,320,0,36), PlaceholderText = "PlayerName to Fling", BackgroundColor3 = Color3.fromRGB(36,36,36), TextColor3 = Color3.fromRGB(235,235,235)}) New("UICorner", {Parent = flingInput, CornerRadius = UDim.new(0,6)}) local flingBtn = New("TextButton", {Parent = combatPage, Position = UDim2.new(0,344,0,62), Size = UDim2.new(0,120,0,36), Text = "Fling"}) New("UICorner", {Parent = flingBtn, CornerRadius = UDim.new(0,6)}) -- ================= Visuals (ESP) ================= local espToggle = New("TextButton", {Parent = visualPage, Position = UDim2.new(0,12,0,12), Size = UDim2.new(0,320,0,40), Text = "ESP: OFF"}) New("UICorner", {Parent = espToggle, CornerRadius = UDim.new(0,6)}) local tracerToggle = New("TextButton", {Parent = visualPage, Position = UDim2.new(0,12,0,64), Size = UDim2.new(0,320,0,40), Text = "Tracer: OFF"}) New("UICorner", {Parent = tracerToggle, CornerRadius = UDim.new(0,6)}) local boxToggle = New("TextButton", {Parent = visualPage, Position = UDim2.new(0,12,0,116), Size = UDim2.new(0,320,0,40), Text = "Box: ON"}) New("UICorner", {Parent = boxToggle, CornerRadius = UDim.new(0,6)}) -- ================= Players (TP) ================= local tpDropdown = New("TextBox", {Parent = playersPage, Position = UDim2.new(0,12,0,12), Size = UDim2.new(0,320,0,36), PlaceholderText = "PlayerName", BackgroundColor3 = Color3.fromRGB(36,36,36), TextColor3 = Color3.fromRGB(235,235,235)}) New("UICorner", {Parent = tpDropdown, CornerRadius = UDim.new(0,6)}) local tpBtn = New("TextButton", {Parent = playersPage, Position = UDim2.new(0,344,0,12), Size = UDim2.new(0,120,0,36), Text = "TP to Player"}) New("UICorner", {Parent = tpBtn, CornerRadius = UDim.new(0,6)}) local bringBtn = New("TextButton", {Parent = playersPage, Position = UDim2.new(0,344,0,62), Size = UDim2.new(0,120,0,36), Text = "Bring Player"}) New("UICorner", {Parent = bringBtn, CornerRadius = UDim.new(0,6)}) -- ================= Utility (Chat logs, server hop, rejoin) ================= local chatFrame = New("ScrollingFrame", {Parent = utilPage, Position = UDim2.new(0,12,0,12), Size = UDim2.new(1,-24,0,220), BackgroundColor3 = Color3.fromRGB(18,18,18), CanvasSize = UDim2.new(0,0,0,0)}) chatFrame.ScrollBarThickness = 6 New("UICorner", {Parent = chatFrame, CornerRadius = UDim.new(0,6)}) local chatLayout = New("UIListLayout", {Parent = chatFrame, Padding = UDim.new(0,4)}) local autoRejoinToggle = New("TextButton", {Parent = utilPage, Position = UDim2.new(0,12,0,248), Size = UDim2.new(0,160,0,36), Text = "AutoRejoin: OFF"}) New("UICorner", {Parent = autoRejoinToggle, CornerRadius = UDim.new(0,6)}) local serverHopBtn = New("TextButton", {Parent = utilPage, Position = UDim2.new(0,188,0,248), Size = UDim2.new(0,160,0,36), Text = "Server Hop"}) New("UICorner", {Parent = serverHopBtn, CornerRadius = UDim.new(0,6)}) local rejoinBtn = New("TextButton", {Parent = utilPage, Position = UDim2.new(0,364,0,248), Size = UDim2.new(0,160,0,36), Text = "Rejoin"}) New("UICorner", {Parent = rejoinBtn, CornerRadius = UDim.new(0,6)}) -- ===== DRAGGING ===== do local dragging, dragInput, dragStart, startPos top.InputBegan:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseButton1 then dragging = true dragStart = input.Position startPos = panel.Position input.Changed:Connect(function() if input.UserInputState == Enum.UserInputState.End then dragging = false end end) end end) top.InputChanged:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseMovement then dragInput = input end end) RunService.RenderStepped:Connect(function() if dragging and dragInput and dragStart and startPos then local delta = dragInput.Position - dragStart panel.Position = UDim2.new(startPos.X.Scale, startPos.X.Offset + delta.X, startPos.Y.Scale, startPos.Y.Offset + delta.Y) end end) end -- ===== TOGGLE GUI WITH F ===== UIS.InputBegan:Connect(function(input, gpe) if gpe then return end if input.KeyCode == Enum.KeyCode.F then state.guiOpen = not state.guiOpen screen.Enabled = state.guiOpen if not state.guiOpen then pcall(function() UIS.MouseBehavior = Enum.MouseBehavior.Default end) end end end) closeBtn.MouseButton1Click:Connect(function() state.guiOpen = false screen.Enabled = false pcall(function() UIS.MouseBehavior = Enum.MouseBehavior.Default end) end) -- ===== MOVEMENT SYSTEMS ===== local char = LocalPlayer.Character or LocalPlayer.CharacterAdded:Wait() local HRP = char:WaitForChild("HumanoidRootPart") local humanoid = char:WaitForChild("Humanoid") humanoid.WalkSpeed = state.speed -- FLY local flyBV = nil flyToggle.MouseButton1Click:Connect(function() state.flying = not state.flying flyToggle.Text = state.flying and "Fly: ON" or "Fly: OFF" if state.flying then humanoid.PlatformStand = true flyBV = Instance.new("BodyVelocity") flyBV.MaxForce = Vector3.new(1e6,1e6,1e6) flyBV.Velocity = Vector3.new(0,0,0) flyBV.Parent = HRP else humanoid.PlatformStand = false if flyBV then flyBV:Destroy() flyBV = nil end end end) RunService.RenderStepped:Connect(function() if state.flying and flyBV then local dir = Vector3.zero if UIS:IsKeyDown(Enum.KeyCode.W) then dir += cam.CFrame.LookVector end if UIS:IsKeyDown(Enum.KeyCode.S) then dir -= cam.CFrame.LookVector end if UIS:IsKeyDown(Enum.KeyCode.A) then dir -= cam.CFrame.RightVector end if UIS:IsKeyDown(Enum.KeyCode.D) then dir += cam.CFrame.RightVector end if UIS:IsKeyDown(Enum.KeyCode.E) then dir += Vector3.new(0,1,0) end if UIS:IsKeyDown(Enum.KeyCode.Q) then dir -= Vector3.new(0,1,0) end flyBV.Velocity = dir * 60 end end) -- SPEED SLIDER (walkspeed) local draggingSpeed = false speedBar.InputBegan:Connect(function(i) if i.UserInputType == Enum.UserInputType.MouseButton1 then draggingSpeed = true end end) speedBar.InputEnded:Connect(function(i) if i.UserInputType == Enum.UserInputType.MouseButton1 then draggingSpeed = false end end) RunService.RenderStepped:Connect(function() if draggingSpeed then local abs = speedBar.AbsolutePosition.X local w = speedBar.AbsoluteSize.X local mx = UIS:GetMouseLocation().X local rel = math.clamp((mx - abs) / w, 0, 1) speedFill.Size = UDim2.new(rel,0,1,0) local newSpeed = math.floor(10 + rel * 90) -- 10..100 state.speed = newSpeed speedLabel.Text = "Speed: "..tostring(newSpeed) if humanoid and not state.flying then humanoid.WalkSpeed = newSpeed end end end) -- INFINITE JUMP local jumpConn infJumpToggle.MouseButton1Click:Connect(function() state.infjump = not state.infjump infJumpToggle.Text = "InfiniteJump: "..(state.infjump and "ON" or "OFF") if state.infjump then if not jumpConn then jumpConn = UIS.JumpRequest:Connect(function() if humanoid and humanoid.Health > 0 then humanoid:ChangeState(Enum.HumanoidStateType.Jumping) end end) end else safeDisconnect(jumpConn) jumpConn = nil end end) -- NOCLIP local noclipConn noclipToggle.MouseButton1Click:Connect(function() state.noclip = not state.noclip noclipToggle.Text = "Noclip: "..(state.noclip and "ON" or "OFF") if state.noclip then noclipConn = RunService.Stepped:Connect(function() local c = LocalPlayer.Character if not c then return end for _,part in pairs(c:GetDescendants()) do if part:IsA("BasePart") then part.CanCollide = false end end end) else safeDisconnect(noclipConn) noclipConn = nil local c = LocalPlayer.Character if c then for _,part in pairs(c:GetDescendants()) do if part:IsA("BasePart") then part.CanCollide = true end end end end end) -- ===== COMBAT: Kill & Fling (client attempts) ===== local function findPlayerByName(name) if not name or name == "" then return nil end local target = Players:FindFirstChild(name) if not target then for _,p in pairs(Players:GetPlayers()) do if p ~= LocalPlayer and p.Name:lower():sub(1,#name) == name:lower() then target = p break end end end return target end killBtn.MouseButton1Click:Connect(function() local name = killInput.Text local target = findPlayerByName(name) if target and target.Character and target.Character:FindFirstChild("Humanoid") then pcall(function() target.Character.Humanoid.Health = 0 end) end end) flingBtn.MouseButton1Click:Connect(function() local name = flingInput.Text local target = findPlayerByName(name) if target and target.Character and target.Character:FindFirstChild("HumanoidRootPart") then local hrp = target.Character.HumanoidRootPart -- powerful yeet local v = Instance.new("BodyVelocity") v.MaxForce = Vector3.new(1e7,1e7,1e7) v.P = 1e6 v.Velocity = (hrp.CFrame.LookVector * 180) + Vector3.new(0,200,0) v.Parent = hrp game:GetService("Debris"):AddItem(v, 0.7) end end) -- ===== VISUALS: ESP (box + tracer) ===== local espObjects = {} local drawingAvailable, DrawingLib = pcall(function() return Drawing end) local Drawing = DrawingLib local boxEnabled = true local tracerEnabled = false local function clearEsp(p) local data = espObjects[p] if not data then return end if data.box and drawingAvailable then pcall(function() data.box.Visible = false; data.box:Remove() end) end if data.tracer and drawingAvailable then pcall(function() data.tracer.Visible = false; data.tracer:Remove() end) end if data.bill and data.bill.Parent then data.bill:Destroy() end espObjects[p] = nil end local function createEsp(p) if p == LocalPlayer then return end clearEsp(p) local c = p.Character if not c then return end local root = c:FindFirstChild("HumanoidRootPart") or c:FindFirstChild("Torso") or c:FindFirstChild("UpperTorso") local head = c:FindFirstChild("Head") if not root then return end local data = {} if drawingAvailable then local box = Drawing.new("Square") box.Thickness = 2 box.Filled = false box.Visible = false box.Color = Color3.new(1,1,1) local tracer = Drawing.new("Line") tracer.Thickness = 1.8 tracer.Color = Color3.new(1,0.4,0.4) tracer.Visible = false data.box = box data.tracer = tracer else if head then local bill = Instance.new("BillboardGui") bill.Size = UDim2.new(0,120,0,60) bill.Adornee = head bill.AlwaysOnTop = true bill.Parent = PlayerGui local f = Instance.new("Frame", bill) f.Size = UDim2.new(1,0,1,0) f.BackgroundTransparency = 1 f.BorderSizePixel = 2 f.BorderColor3 = Color3.new(1,1,1) data.bill = bill end end espObjects[p] = data end local function ensureAllCreated() for _,p in pairs(Players:GetPlayers()) do if p ~= LocalPlayer and p.Character then if not espObjects[p] then createEsp(p) end end end end Players.PlayerAdded:Connect(function(p) p.CharacterAdded:Connect(function() if state.esp then task.wait(0.6) createEsp(p) end end) end) Players.PlayerRemoving:Connect(function(p) clearEsp(p) end) espToggle.MouseButton1Click:Connect(function() state.esp = not state.esp espToggle.Text = "ESP: "..(state.esp and "ON" or "OFF") if state.esp then ensureAllCreated() else for p,_ in pairs(espObjects) do clearEsp(p) end end end) tracerToggle.MouseButton1Click:Connect(function() tracerEnabled = not tracerEnabled state.tracer = tracerEnabled tracerToggle.Text = tracerEnabled and "Tracer: ON" or "Tracer: OFF" end) boxToggle.MouseButton1Click:Connect(function() boxEnabled = not boxEnabled state.box = boxEnabled boxToggle.Text = boxEnabled and "Box: ON" or "Box: OFF" end) RunService.RenderStepped:Connect(function() if not state.esp then for p,data in pairs(espObjects) do if data.box and drawingAvailable then data.box.Visible = false end if data.tracer and drawingAvailable then data.tracer.Visible = false end if data.bill and data.bill.Parent then data.bill.Enabled = false end end return end local camera = cam for p,data in pairs(espObjects) do if not p or not p.Character then clearEsp(p) else local c = p.Character local root = c:FindFirstChild("HumanoidRootPart") or c:FindFirstChild("Torso") or c:FindFirstChild("UpperTorso") local head = c:FindFirstChild("Head") if not root then clearEsp(p) continue end local pos3 = root.Position local headPos = (head and head.Position) or (pos3 + Vector3.new(0,2,0)) local screenPos = camera:WorldToViewportPoint(headPos) local onScreen = screenPos.Z > 0 local screenX, screenY = screenPos.X, screenPos.Y if drawingAvailable and data.box and data.tracer then if onScreen then local topY = camera:WorldToViewportPoint(headPos + Vector3.new(0,0.5,0)).Y local bottomY = camera:WorldToViewportPoint(pos3 - Vector3.new(0,1,0)).Y local height = math.abs(bottomY - topY) if height <= 0 then height = 50 end local width = math.clamp(height * 0.45, 20, 200) if boxEnabled then data.box.Visible = true data.box.Size = Vector2.new(width, height) data.box.Position = Vector2.new(screenX - width/2, screenY - height/2) data.box.Color = Color3.new(1,1,1) else data.box.Visible = false end if tracerEnabled then data.tracer.Visible = true data.tracer.From = Vector2.new(camera.ViewportSize.X/2, camera.ViewportSize.Y) data.tracer.To = Vector2.new(screenX, screenY) data.tracer.Color = Color3.new(1,0.4,0.4) else data.tracer.Visible = false end else data.box.Visible = false data.tracer.Visible = false end else if data.bill and data.bill.Parent then data.bill.Enabled = onScreen and state.box end end end end end) -- ===== PLAYERS: TP & Bring ===== tpBtn.MouseButton1Click:Connect(function() local name = tpDropdown.Text if name == "" then return end local target = findPlayerByName(name) if target and target.Character and target.Character:FindFirstChild("HumanoidRootPart") then local myChar = LocalPlayer.Character if myChar and myChar:FindFirstChild("HumanoidRootPart") then myChar.HumanoidRootPart.CFrame = target.Character.HumanoidRootPart.CFrame + Vector3.new(0,3,0) end end end) bringBtn.MouseButton1Click:Connect(function() local name = tpDropdown.Text if name == "" then return end local target = findPlayerByName(name) if target and target.Character and target.Character:FindFirstChild("HumanoidRootPart") then pcall(function() target.Character.HumanoidRootPart.CFrame = LocalPlayer.Character.HumanoidRootPart.CFrame + Vector3.new(0,3,0) end) end end) -- ===== CHAT LOGS ===== local function addChatLine(text) local lbl = New("TextLabel", {Parent = chatFrame, Size = UDim2.new(1,-12,0,18), BackgroundTransparency = 1, Text = text, TextColor3 = Color3.fromRGB(220,220,220), Font = Enum.Font.SourceSans, TextSize = 14}) chatLayout.Parent.CanvasSize = UDim2.new(0,0,0,chatLayout.AbsoluteContentSize.Y + 8) end for _,p in pairs(Players:GetPlayers()) do p.Chatted:Connect(function(msg) addChatLine(p.Name..": "..tostring(msg)) end) end Players.PlayerAdded:Connect(function(pl) pl.Chatted:Connect(function(msg) addChatLine(pl.Name..": "..tostring(msg)) end) end) -- ===== AUTO-REJOIN & SERVER HOP ===== autoRejoinToggle.MouseButton1Click:Connect(function() state.autoRejoin = not state.autoRejoin autoRejoinToggle.Text = "AutoRejoin: "..(state.autoRejoin and "ON" or "OFF") if state.autoRejoin then LocalPlayer.CharacterRemoving:Connect(function() if state.autoRejoin then pcall(function() TeleportService:Teleport(game.PlaceId, LocalPlayer) end) end end) end end) serverHopBtn.MouseButton1Click:Connect(function() pcall(function() TeleportService:Teleport(game.PlaceId, LocalPlayer) end) end) rejoinBtn.MouseButton1Click:Connect(function() pcall(function() TeleportService:Teleport(game.PlaceId, LocalPlayer) end) end) -- ===== CLEANUP ON UNLOAD ===== screen.AncestryChanged:Connect(function() if not screen:IsDescendantOf(game) then pcall(function() UIS.MouseBehavior = Enum.MouseBehavior.Default end) for p,objs in pairs(espObjects) do if objs.box and drawingAvailable then pcall(function() objs.box:Remove() end) end if objs.tracer and drawingAvailable then pcall(function() objs.tracer:Remove() end) end end end end) -- ===== FINISH ===== humanoid.WalkSpeed = state.speed print("Advanced Admin Panel loaded. GUI opened automatically.") Players.PlayerAdded:Connect(function(pl) pl.Chatted:Connect(function(msg) addChatLine(pl.Name..": "..tostring(msg)) end) pl.CharacterAdded:Connect(function(c) if state.esp then createEsp(pl) end end) end)