local player = game.Players.LocalPlayer local screenGui = Instance.new('ScreenGui', player:WaitForChild('PlayerGui')) local ReplicatedStorage = game:GetService('ReplicatedStorage') local UserInputService = game:GetService('UserInputService') local EventsFolder = ReplicatedStorage:WaitForChild('Events') -- ---------- Utilities ---------- local function addGradient(inst, c1, c2) local g = Instance.new('UIGradient', inst) g.Color = ColorSequence.new({ ColorSequenceKeypoint.new(0, c1), ColorSequenceKeypoint.new(1, c2), }) g.Rotation = 90 end local function makeButton( parent, text, pos, color, textColor, width, height, size ) local btn = Instance.new('TextButton') btn.Size = UDim2.new(0, width or 110, 0, height or 50) btn.Position = pos btn.Text = text btn.Font = Enum.Font.Cartoon btn.TextSize = size or 22 btn.TextScaled = false btn.TextColor3 = textColor btn.BackgroundColor3 = color btn.Parent = parent local grad = Instance.new('UIGradient', btn) local lighter = Color3.new( math.clamp(color.R + 0.15, 0, 1), math.clamp(color.G + 0.15, 0, 1), math.clamp(color.B + 0.15, 0, 1) ) grad.Color = ColorSequence.new({ ColorSequenceKeypoint.new(0, color), ColorSequenceKeypoint.new(1, lighter), }) grad.Rotation = 90 return btn end -- ---------- Main Menu Frame ---------- local mainFrame = Instance.new('Frame', screenGui) mainFrame.Size = UDim2.new(0, 350, 0, 370) mainFrame.Position = UDim2.new(0.5, -175, 0.3, 0) mainFrame.BackgroundColor3 = Color3.fromRGB(40, 40, 40) mainFrame.BorderSizePixel = 0 mainFrame.Active = true mainFrame.Draggable = true mainFrame.Visible = false addGradient(mainFrame, Color3.fromRGB(60, 60, 80), Color3.fromRGB(40, 40, 60)) Instance.new('UICorner', mainFrame).CornerRadius = UDim.new(0, 12) local title = Instance.new('TextLabel', mainFrame) title.Size = UDim2.new(1, 0, 0, 35) title.Position = UDim2.new(0, 0, 0, 0) title.Text = 'Luck Incremental Menu' title.Font = Enum.Font.Cartoon title.TextSize = 24 title.TextColor3 = Color3.fromRGB(255, 255, 255) title.BackgroundTransparency = 1 local closeBtn = makeButton( mainFrame, 'X', UDim2.new(1, -30, 0, 5), Color3.fromRGB(150, 0, 0), Color3.fromRGB(255, 255, 255), 25, 25, 18 ) -- ---------- Open Button ---------- local openBtn = Instance.new('TextButton') openBtn.Size = UDim2.new(0, 180, 0, 50) openBtn.Position = UDim2.new(0.5, -90, 0.05, 0) openBtn.Text = 'Open Menu' openBtn.Font = Enum.Font.Cartoon openBtn.TextSize = 24 openBtn.TextColor3 = Color3.fromRGB(255, 255, 255) openBtn.BackgroundColor3 = Color3.fromRGB(60, 60, 80) openBtn.Active = true openBtn.Draggable = true openBtn.Parent = screenGui addGradient(openBtn, Color3.fromRGB(80, 80, 120), Color3.fromRGB(60, 60, 100)) Instance.new('UICorner', openBtn).CornerRadius = UDim.new(0, 10) -- Prevent opening while dragging local dragging, mouseDown = false, nil openBtn.InputBegan:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseButton1 then mouseDown = input.Position dragging = false end end) openBtn.InputChanged:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseMovement and mouseDown then if (input.Position - mouseDown).Magnitude > 3 then dragging = true end end end) openBtn.InputEnded:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseButton1 then mouseDown = nil end end) openBtn.MouseButton1Click:Connect(function() if not dragging then mainFrame.Visible = true openBtn.Visible = false end end) closeBtn.MouseButton1Click:Connect(function() mainFrame.Visible = false openBtn.Visible = true end) -- ---------- Auto-Farm Controls ---------- local windows = { { name = 'Tokenize', event = EventsFolder:WaitForChild('tokenizeReq'), color = Color3.fromRGB(255, 170, 0), args = nil, }, { name = 'Energize', event = EventsFolder:WaitForChild('energyRequest'), color = Color3.fromRGB(0, 120, 255), args = { 'ReportClicks', 50 }, }, { name = 'Marketize', event = EventsFolder:WaitForChild('marketReq'), color = Color3.fromRGB(140, 255, 140), args = nil, }, { name = 'Temperaturize', event = EventsFolder:WaitForChild('temperatureReq'), color = Color3.fromRGB(255, 100, 100), args = nil, isTemperaturize = true, }, } local yPos = 0.15 local runningStates = {} for i, win in ipairs(windows) do -- Label local label = Instance.new('TextLabel', mainFrame) label.Size = UDim2.new(0, 100, 0, 30) label.Position = UDim2.new(0.05, 0, yPos, 0) label.Text = win.name label.Font = Enum.Font.Cartoon label.TextSize = 20 label.TextColor3 = Color3.fromRGB(255, 255, 255) label.BackgroundTransparency = 1 label.TextXAlignment = Enum.TextXAlignment.Left -- Status local status = Instance.new('TextLabel', mainFrame) status.Size = UDim2.new(0, 80, 0, 30) status.Position = UDim2.new(0.35, 0, yPos, 0) status.Text = 'Stopped' status.Font = Enum.Font.Cartoon status.TextSize = 18 status.TextColor3 = Color3.fromRGB(255, 100, 100) status.BackgroundTransparency = 1 -- Start Button local startBtn = makeButton( mainFrame, 'Start', UDim2.new(0.58, 0, yPos, 0), Color3.fromRGB(0, 150, 0), Color3.fromRGB(255, 255, 255), 60, 30, 18 ) -- Stop Button local stopBtn = makeButton( mainFrame, 'Stop', UDim2.new(0.79, 0, yPos, 0), Color3.fromRGB(180, 0, 0), Color3.fromRGB(255, 255, 255), 60, 30, 18 ) runningStates[i] = false local function loop() if win.isTemperaturize then -- Temperaturize special loop while runningStates[i] do local character = player.Character if not character or not character:FindFirstChild('HumanoidRootPart') then task.wait(1) continue end local resources = { {name = 'Ash', part = workspace:FindFirstChild('Ash'), stat = player:WaitForChild('Stats'):FindFirstChild('Ash')}, {name = 'Igneous', part = workspace:FindFirstChild('Igneous'), stat = player:WaitForChild('Stats'):FindFirstChild('Igneous')}, {name = 'Lava', part = workspace:FindFirstChild('Lava'), stat = player:WaitForChild('Stats'):FindFirstChild('Lava')}, {name = 'Magma', part = workspace:FindFirstChild('Magma'), stat = player:WaitForChild('Stats'):FindFirstChild('Magma')}, } local success = true for _, resource in ipairs(resources) do if not runningStates[i] then break end if not resource.part then print('[Temperaturize] ERROR: Could not find ' .. resource.name .. ' in workspace') ReplicatedStorage:WaitForChild('Events'):WaitForChild('teleportEvent'):FireServer('World7Arrival') runningStates[i] = false status.Text = 'Stopped' status.TextColor3 = Color3.fromRGB(255, 100, 100) success = false break end if not resource.part:FindFirstChild('Touch') then print('[Temperaturize] ERROR: ' .. resource.name .. ' has no Touch part') ReplicatedStorage:WaitForChild('Events'):WaitForChild('teleportEvent'):FireServer('World7Arrival') runningStates[i] = false status.Text = 'Stopped' status.TextColor3 = Color3.fromRGB(255, 100, 100) success = false break end if not resource.stat then print('[Temperaturize] ERROR: Could not find ' .. resource.name .. ' stat') ReplicatedStorage:WaitForChild('Events'):WaitForChild('teleportEvent'):FireServer('World7Arrival') runningStates[i] = false status.Text = 'Stopped' status.TextColor3 = Color3.fromRGB(255, 100, 100) success = false break end local initialValue = resource.stat.Value character.HumanoidRootPart.CFrame = resource.part.Touch.CFrame local waited = 0 local collected = false while waited < 2 and not collected do task.wait(0.1) waited = waited + 0.1 if resource.stat.Value > initialValue then collected = true break end end if not collected then initialValue = resource.stat.Value character.HumanoidRootPart.CFrame = resource.part.Touch.CFrame waited = 0 while waited < 2 and not collected do task.wait(0.1) waited = waited + 0.1 if resource.stat.Value > initialValue then collected = true break end end if not collected then print('[Temperaturize] ERROR: Failed to collect ' .. resource.name .. ' after retry - Teleporting to World 7') ReplicatedStorage:WaitForChild('Events'):WaitForChild('teleportEvent'):FireServer('World7Arrival') runningStates[i] = false status.Text = 'Stopped' status.TextColor3 = Color3.fromRGB(255, 100, 100) success = false break end end end if success and runningStates[i] then win.event:FireServer() task.wait(0.5) end end else -- Normal loop for other buttons while runningStates[i] do if win.args then win.event:FireServer(unpack(win.args)) else win.event:FireServer() end task.wait(0.1) end end end startBtn.MouseButton1Click:Connect(function() if not runningStates[i] then runningStates[i] = true status.Text = 'Running' status.TextColor3 = Color3.fromRGB(100, 255, 100) task.spawn(loop) end end) stopBtn.MouseButton1Click:Connect(function() runningStates[i] = false status.Text = 'Stopped' status.TextColor3 = Color3.fromRGB(255, 100, 100) end) yPos = yPos + 0.22 end -- ---------- LR Pity Display in Main Menu ---------- local pityLabel = Instance.new('TextLabel', mainFrame) pityLabel.Size = UDim2.new(1, 0, 0, 35) pityLabel.Position = UDim2.new(0, 0, 0.88, 0) pityLabel.Text = 'LR Pity: 0/2000' pityLabel.Font = Enum.Font.Cartoon pityLabel.TextSize = 22 pityLabel.TextColor3 = Color3.fromRGB(255, 255, 100) pityLabel.BackgroundTransparency = 1 -- Update pity display task.spawn(function() local miscStats = player:WaitForChild('MiscStats') local lrPity = miscStats:WaitForChild('LRPity') pityLabel.Text = 'LR Pity: ' .. tostring(lrPity.Value) .. '/2000' lrPity:GetPropertyChangedSignal('Value'):Connect(function() pityLabel.Text = 'LR Pity: ' .. tostring(lrPity.Value) .. '/2000' end) end)