local TweenService = game:GetService("TweenService")
local RunService = game:GetService("RunService")
local Camera = workspace.CurrentCamera
local Players = game:GetService("Players")
local LocalPlayer = Players.LocalPlayer
local Zone9 = workspace:WaitForChild("Brainrots"):WaitForChild("Zone9")
-- Speicher & Variablen
local espActive = false
local activeESPs = {}
local savedLocations = {}
local basePos = nil
local correctKey = "2026"
-- ### KEY SYSTEM GUI ###
local KeyGui = Instance.new("ScreenGui", game.CoreGui)
local KeyMain = Instance.new("Frame", KeyGui)
KeyMain.Size = UDim2.new(0, 300, 0, 200)
KeyMain.Position = UDim2.new(0.5, -150, 0.4, -100) -- Startet etwas höher für Einblend-Effekt
KeyMain.BackgroundColor3 = Color3.fromRGB(20, 20, 25)
KeyMain.BorderSizePixel = 0
KeyMain.BackgroundTransparency = 1
Instance.new("UICorner", KeyMain).CornerRadius = UDim.new(0, 15)
local KeyTitle = Instance.new("TextLabel", KeyMain)
KeyTitle.Size = UDim2.new(1, 0, 0, 50)
KeyTitle.Text = "ENTER KEY"
KeyTitle.TextColor3 = Color3.new(1,1,1)
KeyTitle.Font = Enum.Font.GothamBold
KeyTitle.TextSize = 20
KeyTitle.BackgroundTransparency = 1
KeyTitle.TextTransparency = 1
local KeyInput = Instance.new("TextBox", KeyMain)
KeyInput.Size = UDim2.new(0.8, 0, 0, 45)
KeyInput.Position = UDim2.new(0.1, 0, 0.4, 0)
KeyInput.BackgroundColor3 = Color3.fromRGB(30, 30, 35)
KeyInput.Text = ""
KeyInput.PlaceholderText = "Type Key here..."
KeyInput.TextColor3 = Color3.new(1,1,1)
KeyInput.Font = Enum.Font.Gotham
KeyInput.TextSize = 16
KeyInput.TextTransparency = 1
Instance.new("UICorner", KeyInput)
local SubmitBtn = Instance.new("TextButton", KeyMain)
SubmitBtn.Size = UDim2.new(0.8, 0, 0, 40)
SubmitBtn.Position = UDim2.new(0.1, 0, 0.7, 0)
SubmitBtn.BackgroundColor3 = Color3.fromRGB(0, 120, 255)
SubmitBtn.Text = "SUBMIT"
SubmitBtn.TextColor3 = Color3.new(1,1,1)
SubmitBtn.Font = Enum.Font.GothamBold
SubmitBtn.TextSize = 16
SubmitBtn.TextTransparency = 1
Instance.new("UICorner", SubmitBtn)
-- Key Einblenden Animation
TweenService:Create(KeyMain, TweenInfo.new(0.6), {Position = UDim2.new(0.5, -150, 0.5, -100), BackgroundTransparency = 0}):Play()
TweenService:Create(KeyTitle, TweenInfo.new(0.8), {TextTransparency = 0}):Play()
TweenService:Create(KeyInput, TweenInfo.new(0.8), {TextTransparency = 0}):Play()
TweenService:Create(SubmitBtn, TweenInfo.new(0.8), {TextTransparency = 0}):Play()
-- ### HAUPT GUI (Wird erst nach Key-Eingabe sichtbar) ###
local ScreenGui = Instance.new("ScreenGui", game.CoreGui)
ScreenGui.Enabled = false -- Warten auf Key
-- [Hier folgt der Rest deines optimierten Scripts]
local Main = Instance.new("Frame", ScreenGui)
Main.Size = UDim2.new(0, 600, 0, 420)
Main.Position = UDim2.new(0.5, -300, 0.5, -210)
Main.BackgroundColor3 = Color3.fromRGB(18, 18, 22)
Main.BorderSizePixel = 0
Instance.new("UICorner", Main).CornerRadius = UDim.new(0, 12)
-- Topbar
local Topbar = Instance.new("Frame", Main)
Topbar.Size = UDim2.new(1, 0, 0, 50)
Topbar.BackgroundColor3 = Color3.fromRGB(25, 25, 30)
Instance.new("UICorner", Topbar)
local Title = Instance.new("TextLabel", Topbar)
Title.Size = UDim2.new(0, 200, 1, 0)
Title.Position = UDim2.new(0, 20, 0, 0)
Title.Text = "BRAINROT HUB V3"
Title.TextColor3 = Color3.new(1,1,1)
Title.Font = Enum.Font.GothamBold
Title.TextSize = 18
Title.BackgroundTransparency = 1
Title.TextXAlignment = Enum.TextXAlignment.Left
local BaseBtn = Instance.new("TextButton", Topbar)
BaseBtn.Size = UDim2.new(0, 140, 0, 35)
BaseBtn.Position = UDim2.new(1, -160, 0, 7)
BaseBtn.Text = "SET BASE"
BaseBtn.BackgroundColor3 = Color3.fromRGB(0, 110, 220)
BaseBtn.TextColor3 = Color3.new(1,1,1)
BaseBtn.Font = Enum.Font.GothamBold
BaseBtn.TextSize = 14
Instance.new("UICorner", BaseBtn)
-- Sidebar & Tabs (Code wie vorher)
local Sidebar = Instance.new("Frame", Main)
Sidebar.Size = UDim2.new(0, 140, 1, -50)
Sidebar.Position = UDim2.new(0, 0, 0, 50)
Sidebar.BackgroundColor3 = Color3.fromRGB(12, 12, 15)
local Container = Instance.new("Frame", Main)
Container.Position = UDim2.new(0, 150, 0, 65)
Container.Size = UDim2.new(1, -170, 1, -80)
Container.BackgroundTransparency = 1
local Tabs = {
ESP = Instance.new("Frame", Container),
Misc = Instance.new("ScrollingFrame", Container),
Brainrots = Instance.new("ScrollingFrame", Container)
}
for name, frame in pairs(Tabs) do
frame.Size = UDim2.new(1, 0, 1, 0)
frame.BackgroundTransparency = 1
frame.Visible = (name == "ESP")
if frame:IsA("ScrollingFrame") then
frame.ScrollBarThickness = 3
Instance.new("UIListLayout", frame).Padding = UDim.new(0, 10)
end
end
-- Tab Buttons
local function makeTabBtn(name, y)
local b = Instance.new("TextButton", Sidebar)
b.Size = UDim2.new(1, -15, 0, 50); b.Position = UDim2.new(0, 7, 0, y)
b.Text = name; b.BackgroundColor3 = Color3.fromRGB(28, 28, 35); b.TextColor3 = Color3.new(1,1,1)
b.Font = Enum.Font.GothamBold; b.TextSize = 16; Instance.new("UICorner", b).CornerRadius = UDim.new(0, 8)
b.MouseButton1Click:Connect(function() for n, f in pairs(Tabs) do f.Visible = (n == name) end end)
end
makeTabBtn("ESP", 20); makeTabBtn("Misc", 80); makeTabBtn("Brainrots", 140)
-- ESP Toggle
local Toggle = Instance.new("TextButton", Tabs.ESP)
Toggle.Size = UDim2.new(1, 0, 0, 60); Toggle.Text = "ACTIVATE SCANNER"
Toggle.BackgroundColor3 = Color3.fromRGB(45, 45, 55); Toggle.TextColor3 = Color3.new(1,1,1)
Toggle.Font = Enum.Font.GothamBold; Toggle.TextSize = 18; Instance.new("UICorner", Toggle)
-- [ESP Logic & Functions hier einfügen wie im vorigen Script]
local function createESP(obj)
if not obj or activeESPs[obj] or not espActive then return end
local data = {}
activeESPs[obj] = data
local hl = Instance.new("Highlight", obj)
hl.FillColor = Color3.fromHSV(math.random(), 0.7, 1); hl.DepthMode = Enum.HighlightDepthMode.AlwaysOnTop
local gui = Instance.new("BillboardGui", obj); gui.Size = UDim2.new(0, 300, 0, 150); gui.AlwaysOnTop = true
local label = Instance.new("TextLabel", gui); label.Size = UDim2.new(1, 0, 1, 0); label.BackgroundTransparency = 1; label.TextColor3 = Color3.new(1,1,1); label.RichText = true; label.Font = Enum.Font.GothamBold
local tracer = Drawing.new("Line"); tracer.Thickness = 2.5; tracer.Color = hl.FillColor
data.Connection = RunService.RenderStepped:Connect(function()
if espActive and obj and obj.Parent then
local pos = (obj:IsA("Model") and obj:GetPivot().Position) or obj.Position
local screenPos, onScreen = Camera:WorldToViewportPoint(pos)
local inc = "0"
local br = obj:FindFirstChild("Attachment", true) and obj:FindFirstChild("Attachment", true):FindFirstChild("Brainrot")
if br and br:FindFirstChild("Income") then inc = br.Income.Text:gsub("Income: ", ""):gsub("%$", "") end
local attrs = ""
for n, v in pairs(obj:GetAttributes()) do attrs = attrs .. n .. ": " .. tostring(v) .. "\n" end
label.Text = "$ " .. inc .. "\n" .. attrs
if onScreen then tracer.From = Vector2.new(Camera.ViewportSize.X / 2, Camera.ViewportSize.Y); tracer.To = Vector2.new(screenPos.X, screenPos.Y); tracer.Visible = true else tracer.Visible = false end
else tracer.Visible = false end
end)
data.Highlight, data.Gui, data.Tracer = hl, gui, tracer
end
Toggle.MouseButton1Click:Connect(function()
espActive = not espActive
Toggle.Text = espActive and "SCANNER: ACTIVE" or "ACTIVATE SCANNER"
Toggle.BackgroundColor3 = espActive and Color3.fromRGB(0, 160, 90) or Color3.fromRGB(45, 45, 55)
if not espActive then for _, d in pairs(activeESPs) do d.Highlight:Destroy(); d.Gui:Destroy(); d.Tracer:Remove(); d.Connection:Disconnect() end; activeESPs = {} end
end)
BaseBtn.MouseButton1Click:Connect(function()
if not basePos then basePos = LocalPlayer.Character:GetPivot(); BaseBtn.Text = "GO TO BASE"; BaseBtn.BackgroundColor3 = Color3.fromRGB(0, 180, 100) else LocalPlayer.Character:PivotTo(basePos) end
end)
-- Key Logic
SubmitBtn.MouseButton1Click:Connect(function()
if KeyInput.Text == correctKey then
-- Richtig: Fenster weg-animieren und Main laden
TweenService:Create(KeyMain, TweenInfo.new(0.5), {Position = UDim2.new(0.5, -150, 0.2, -100), BackgroundTransparency = 1}):Play()
TweenService:Create(KeyTitle, TweenInfo.new(0.3), {TextTransparency = 1}):Play()
TweenService:Create(KeyInput, TweenInfo.new(0.3), {TextTransparency = 1}):Play()
TweenService:Create(SubmitBtn, TweenInfo.new(0.3), {TextTransparency = 1}):Play()
task.wait(0.5)
KeyGui:Destroy()
ScreenGui.Enabled = true
else
-- Falsch: Rot blinken und schütteln
local originalPos = KeyMain.Position
SubmitBtn.BackgroundColor3 = Color3.fromRGB(200, 0, 0)
task.spawn(function()
for i = 1, 5 do
KeyMain.Position = originalPos + UDim2.new(0, math.random(-5,5), 0, 0)
task.wait(0.05)
end
KeyMain.Position = originalPos
task.wait(0.5)
SubmitBtn.BackgroundColor3 = Color3.fromRGB(0, 120, 255)
end)
end
end)
-- Restliche Loops (Brainrots etc.) wie gehabt
local function updateLists()
for _, v in pairs(Tabs.Brainrots:GetChildren()) do if v:IsA("Frame") then v:Destroy() end end
for _, obj in ipairs(Zone9:GetChildren()) do
local r = Instance.new("Frame", Tabs.Brainrots); r.Size = UDim2.new(1, -10, 0, 90); r.BackgroundColor3 = Color3.fromRGB(30, 30, 38); Instance.new("UICorner", r)
local info = Instance.new("TextLabel", r); info.Size = UDim2.new(0.7, 0, 1, 0); info.Position = UDim2.new(0.05, 0, 0, 0); info.BackgroundTransparency = 1; info.TextColor3 = Color3.new(1,1,1); info.RichText = true; info.Font = Enum.Font.GothamBold; info.TextSize = 13
local tp = Instance.new("TextButton", r); tp.Size = UDim2.new(0.2, 0, 0.6, 0); tp.Position = UDim2.new(0.75, 0, 0.2, 0); tp.Text = "TP"; tp.BackgroundColor3 = Color3.fromRGB(0, 130, 255); Instance.new("UICorner", tp)
tp.MouseButton1Click:Connect(function() LocalPlayer.Character:PivotTo(obj:GetPivot()) end)
task.spawn(function()
while r and r.Parent do
local inc = "0"; local br = obj:FindFirstChild("Attachment", true) and obj:FindFirstChild("Attachment", true):FindFirstChild("Brainrot")
if br and br:FindFirstChild("Income") then inc = br.Income.Text:gsub("Income: ", ""):gsub("%$", "") end
local attrs = ""; for n,v in pairs(obj:GetAttributes()) do attrs = attrs .. n .. ": " .. tostring(v) .. " " end
info.Text = "" .. obj.Name .. "\n$ " .. inc .. "\n" .. attrs .. ""; task.wait(4)
end
end)
end
Tabs.Brainrots.CanvasSize = UDim2.new(0,0,0, #Zone9:GetChildren() * 100 + 50)
end
task.spawn(function()
while true do
if espActive then for _, child in ipairs(Zone9:GetChildren()) do createESP(child) end end
if Tabs.Brainrots.Visible then updateLists() end
task.wait(5)
end
end)
-- Dragging Support
local dS, sP, dO; Topbar.InputBegan:Connect(function(i) if i.UserInputType == Enum.UserInputType.MouseButton1 then dO = true; dS = i.Position; sP = Main.Position end end)
game:GetService("UserInputService").InputChanged:Connect(function(i) if dO and i.UserInputType == Enum.UserInputType.MouseMovement then local delta = i.Position - dS; Main.Position = UDim2.new(sP.X.Scale, sP.X.Offset + delta.X, sP.Y.Scale, sP.Y.Offset + delta.Y) end end)
game:GetService("UserInputService").InputEnded:Connect(function(i) if i.UserInputType == Enum.UserInputType.MouseButton1 then dO = false end end)