--!nocheck local Players = game:GetService("Players") local ReplicatedStorage = game:GetService("ReplicatedStorage") local UserInputService = game:GetService("UserInputService") local RunService = game:GetService("RunService") local player = Players.LocalPlayer local Remotes = ReplicatedStorage:WaitForChild("Remotes") -- State local state = { fullAuto = false, train = false, rebirth = false, alive = true, isTraining = false } -- GUI Parent Safe Fallback local guiParent = (gethui and gethui()) or game:GetService("CoreGui") if not pcall(function() return guiParent.Name end) then guiParent = player:WaitForChild("PlayerGui") end if guiParent:FindFirstChild("TrainMenu_Auto") then guiParent.TrainMenu_Auto:Destroy() end local gui = Instance.new("ScreenGui") gui.Name = "TrainMenu_Auto" gui.ResetOnSpawn = false gui.Parent = guiParent local FULL_HEIGHT = 275 local MIN_HEIGHT = 28 -- Main frame local main = Instance.new("Frame") main.Size = UDim2.new(0, 230, 0, FULL_HEIGHT) main.Position = UDim2.new(0.5, -115, 0.35, 0) main.BackgroundColor3 = Color3.fromRGB(25, 25, 30) main.BorderSizePixel = 0 main.Parent = gui Instance.new("UICorner", main).CornerRadius = UDim.new(0, 8) -- Title bar local titleBar = Instance.new("Frame") titleBar.Size = UDim2.new(1, 0, 0, 28) titleBar.BackgroundColor3 = Color3.fromRGB(40, 40, 50) titleBar.BorderSizePixel = 0 titleBar.Parent = main Instance.new("UICorner", titleBar).CornerRadius = UDim.new(0, 8) local title = Instance.new("TextLabel") title.Size = UDim2.new(1, -64, 1, 0) title.Position = UDim2.new(0, 10, 0, 0) title.BackgroundTransparency = 1 title.Text = "Auto Rebirth & Train" title.TextColor3 = Color3.new(1, 1, 1) title.Font = Enum.Font.GothamBold title.TextSize = 13 title.TextXAlignment = Enum.TextXAlignment.Left title.Parent = titleBar local function makeTitleButton(text, xOffset, color) local b = Instance.new("TextButton") b.Size = UDim2.new(0, 24, 0, 20) b.Position = UDim2.new(1, xOffset, 0, 4) b.BackgroundColor3 = color b.Text = text b.TextColor3 = Color3.new(1, 1, 1) b.Font = Enum.Font.GothamBold b.TextSize = 13 b.BorderSizePixel = 0 b.Parent = titleBar Instance.new("UICorner", b).CornerRadius = UDim.new(0, 5) return b end local minBtn = makeTitleButton("-", -56, Color3.fromRGB(90, 90, 100)) local closeBtn = makeTitleButton("X", -28, Color3.fromRGB(190, 60, 60)) -- Content local content = Instance.new("Frame") content.Size = UDim2.new(1, 0, 1, -28) content.Position = UDim2.new(0, 0, 0, 28) content.BackgroundTransparency = 1 content.Parent = main local layout = Instance.new("UIListLayout", content) layout.Padding = UDim.new(0, 6) layout.HorizontalAlignment = Enum.HorizontalAlignment.Center local pad = Instance.new("UIPadding", content) pad.PaddingTop = UDim.new(0, 8) -- Status Bar local statusLabel = Instance.new("TextLabel") statusLabel.Size = UDim2.new(1, -20, 0, 24) statusLabel.BackgroundColor3 = Color3.fromRGB(35, 35, 42) statusLabel.TextColor3 = Color3.fromRGB(200, 200, 220) statusLabel.Font = Enum.Font.GothamMedium statusLabel.TextSize = 11 statusLabel.Text = "Status: Idle" statusLabel.BorderSizePixel = 0 statusLabel.Parent = content Instance.new("UICorner", statusLabel).CornerRadius = UDim.new(0, 5) local function setStatus(txt) statusLabel.Text = "Status: " .. txt end local function makeToggle(name, defaultOn, callback) local btn = Instance.new("TextButton") btn.Size = UDim2.new(1, -20, 0, 32) btn.BackgroundColor3 = defaultOn and Color3.fromRGB(50, 150, 80) or Color3.fromRGB(50, 50, 60) btn.TextColor3 = Color3.new(1, 1, 1) btn.Font = Enum.Font.Gotham btn.TextSize = 13 btn.BorderSizePixel = 0 btn.Text = name .. ": " .. (defaultOn and "ON" or "OFF") btn.Parent = content Instance.new("UICorner", btn).CornerRadius = UDim.new(0, 6) local on = defaultOn btn.MouseButton1Click:Connect(function() on = not on btn.Text = name .. ": " .. (on and "ON" or "OFF") btn.BackgroundColor3 = on and Color3.fromRGB(50, 150, 80) or Color3.fromRGB(50, 50, 60) callback(on) end) return btn end -------------------------------------------------------------------------------- -- HELPER FUNCTIONS FOR ROBLOX LOGIC -------------------------------------------------------------------------------- -- Teleport character safely local function teleportTo(cf) local char = player.Character or player.CharacterAdded:Wait() local hrp = char:FindFirstChild("HumanoidRootPart") if hrp then hrp.CFrame = cf task.wait(0.2) end end -- Leave Training Machine local function leaveMachine() Remotes:WaitForChild("TrainStop"):FireServer() task.wait(0.4) state.isTraining = false end -- Enter Training Machine (B8 Barbell) local function enterMachine() local b8 = workspace.Lobby.Gym.Barbells:FindFirstChild("B8") if not b8 then return false end local prompt = b8:FindFirstChildWhichIsA("ProximityPrompt", true) if not prompt then return false end -- Prompt mesafesine ışınlan teleportTo(b8:GetPivot() + Vector3.new(0, 2.5, 0)) task.wait(0.3) prompt.Enabled = true prompt.RequiresLineOfSight = false prompt.MaxActivationDistance = 25 task.wait(0.1) fireproximityprompt(prompt) task.wait(0.5) -- Check if training UI is active local guiCheck = player.PlayerGui:FindFirstChild("Training") local active = (guiCheck and guiCheck.Root.TrainingPanel.Card.Visible) state.isTraining = active return active end -- Read current strength & cap directly from Training UI local function getStrengthStats() local pGui = player:FindFirstChild("PlayerGui") local tGui = pGui and pGui:FindFirstChild("Training") if tGui and tGui.Root.TrainingPanel.Card.Visible then local valLabel = tGui.Root.TrainingPanel.Card.Body.Info:FindFirstChild("Value") if valLabel and valLabel.Text ~= "" then local clean = valLabel.Text:gsub("<[^>]+>", "") -- remove font tags local cur, cap = clean:match("(%d+)%s*/%s*(%d+)") if cur and cap then return tonumber(cur), tonumber(cap) end end end return nil, nil end -------------------------------------------------------------------------------- -- BUTTONS & AUTOMATION -------------------------------------------------------------------------------- -- FULL AUTOMATION TOGGLE makeToggle("⭐ FULL AUTO LOOP", false, function(on) state.fullAuto = on if on then task.spawn(function() while state.fullAuto and state.alive do -- 1. ADIM: Antrenmana Gir setStatus("Entering Barbell B8...") local entered = enterMachine() local retries = 0 while state.fullAuto and not entered and retries < 5 do retries = retries + 1 task.wait(0.5) entered = enterMachine() end if not state.fullAuto then break end -- 2. ADIM: Limite Ulaşana Kadar Train Yap setStatus("Training to Cap...") local reachCap = false while state.fullAuto and state.alive and not reachCap do Remotes.TrainRep:FireServer(1) task.wait(0.1) local cur, cap = getStrengthStats() if cur and cap then setStatus(string.format("Training: %d / %d", cur, cap)) if cur >= cap then reachCap = true end end end if not state.fullAuto then break end -- 3. ADIM: Makineden Güvenle İn setStatus("Leaving Machine...") leaveMachine() task.wait(0.5) -- 4. ADIM: Rebirth Noktasına Git setStatus("Traveling to Rebirth...") Remotes.TravelTo:FireServer("Rebirth") task.wait(0.8) -- 5. ADIM: Rebirth At setStatus("Executing Rebirth...") for _ = 1, 3 do Remotes.Rebirth:FireServer() task.wait(0.4) end setStatus("Waiting for reset...") task.wait(1.5) end setStatus("Auto Stopped") end) else setStatus("Idle") end end) -- Manuel: Start Training makeToggle("Enter Machine", false, function(on) if on then task.spawn(function() enterMachine() end) else leaveMachine() end end) -- Manuel: Train Rep Spam makeToggle("Auto Train Rep", false, function(on) state.train = on if on then task.spawn(function() local Event = Remotes:WaitForChild("TrainRep") while state.train and state.alive do Event:FireServer(1) task.wait(0.1) end end) end end) -- Manuel: Go to Rebirth (Otomatik makineden inerek ışınlanır) makeToggle("Go to Rebirth", false, function(on) if on then task.spawn(function() leaveMachine() task.wait(0.3) Remotes:WaitForChild("TravelTo"):FireServer("Rebirth") end) end end) -- Manuel: Rebirth makeToggle("Spam Rebirth", false, function(on) state.rebirth = on if on then task.spawn(function() local Event = Remotes:WaitForChild("Rebirth") while state.rebirth and state.alive do Event:FireServer() task.wait(0.8) end end) end end) -- Minimize & Close Handlers local minimized = false minBtn.MouseButton1Click:Connect(function() minimized = not minimized content.Visible = not minimized main.Size = UDim2.new(0, 230, 0, minimized and MIN_HEIGHT or FULL_HEIGHT) minBtn.Text = minimized and "+" or "-" end) closeBtn.MouseButton1Click:Connect(function() state.alive = false state.fullAuto = false state.train = false state.rebirth = false leaveMachine() gui:Destroy() end) -- Dragging Support local dragging, dragStart, startPos titleBar.InputBegan:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseButton1 or input.UserInputType == Enum.UserInputType.Touch then dragging = true dragStart = input.Position startPos = main.Position 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 main.Position = UDim2.new(startPos.X.Scale, startPos.X.Offset + delta.X, startPos.Y.Scale, startPos.Y.Offset + delta.Y) end end) UserInputService.InputEnded:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseButton1 or input.UserInputType == Enum.UserInputType.Touch then dragging = false end end)