local Players = game:GetService("Players") local player = Players.LocalPlayer local function waitForRockEvent() local gui, frame, event repeat gui = player.PlayerGui:FindFirstChild("Rock Rewards") if gui then frame = gui:FindFirstChild("Open_Frame") if frame then event = frame:FindFirstChild("RemoteEvent", true) end end task.wait(0.5) until event return event end local rockEvent = waitForRockEvent() rockEvent.Parent.LocalScript.Enabled = false local screenGui = Instance.new("ScreenGui") screenGui.Name = "PetRockGUI" screenGui.ResetOnSpawn = false screenGui.Parent = player:WaitForChild("PlayerGui") local mainFrame = Instance.new("Frame") mainFrame.Size = UDim2.new(0, 300, 0, 300) mainFrame.Position = UDim2.new(0.5, -150, 0.5, -150) mainFrame.BackgroundColor3 = Color3.fromRGB(255, 182, 193) mainFrame.BackgroundTransparency = 0.3 mainFrame.BorderSizePixel = 0 mainFrame.Parent = screenGui local corner = Instance.new("UICorner") corner.CornerRadius = UDim.new(0, 15) corner.Parent = mainFrame local dragging, dragInput, dragStart, startPos local draggingHandle = false local function update(input) local delta = input.Position - dragStart mainFrame.Position = UDim2.new(startPos.X.Scale, startPos.X.Offset + delta.X, startPos.Y.Scale, startPos.Y.Offset + delta.Y) end mainFrame.InputBegan:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseButton1 and not draggingHandle then dragging = true dragStart = input.Position startPos = mainFrame.Position input.Changed:Connect(function() if input.UserInputState == Enum.UserInputState.End then dragging = false end end) end end) mainFrame.InputChanged:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseMovement then dragInput = input end end) game:GetService("UserInputService").InputChanged:Connect(function(input) if input == dragInput and dragging then update(input) end end) local title = Instance.new("TextLabel") title.Size = UDim2.new(1, 0, 0, 40) title.BackgroundTransparency = 1 title.Text = "Pet Rock" title.TextColor3 = Color3.fromRGB(255, 255, 255) title.Font = Enum.Font.SourceSansBold title.TextScaled = true title.Parent = mainFrame local closeButton = Instance.new("TextButton") closeButton.Size = UDim2.new(0, 30, 0, 30) closeButton.Position = UDim2.new(1, -35, 0, 5) closeButton.BackgroundColor3 = Color3.fromRGB(255, 0, 0) closeButton.Text = "X" closeButton.TextColor3 = Color3.fromRGB(255, 255, 255) closeButton.Font = Enum.Font.SourceSansBold closeButton.TextScaled = true closeButton.Parent = mainFrame local closeCorner = Instance.new("UICorner") closeCorner.CornerRadius = UDim.new(0, 6) closeCorner.Parent = closeButton closeButton.MouseButton1Click:Connect(function() screenGui:Destroy() end) local timeLabel = Instance.new("TextLabel") timeLabel.Size = UDim2.new(1, -20, 0, 25) timeLabel.Position = UDim2.new(0, 10, 0, 50) timeLabel.BackgroundTransparency = 1 timeLabel.Text = "Estimated Time: 00:00:00" timeLabel.TextColor3 = Color3.fromRGB(255, 255, 255) timeLabel.TextXAlignment = Enum.TextXAlignment.Left timeLabel.Font = Enum.Font.SourceSans timeLabel.TextScaled = true timeLabel.TextSize = 18 timeLabel.Parent = mainFrame local function formatTime(seconds) local days = math.floor(seconds / 86400) seconds -= days * 86400 local hours = math.floor(seconds / 3600) seconds -= hours * 3600 local minutes = math.floor(seconds / 60) seconds -= minutes * 60 return string.format("%02d:%02d:%02d:%02d", days, hours, minutes, seconds) end local currentSize = 500000 local function setRockSize(size) currentSize = size timeLabel.Text = "Estimated Time: " .. formatTime(size) rockEvent:FireServer(size) end local sliderLabel = Instance.new("TextLabel") sliderLabel.Size = UDim2.new(1, -20, 0, 20) sliderLabel.Position = UDim2.new(0, 10, 0, 80) sliderLabel.BackgroundTransparency = 1 sliderLabel.Text = "Rock Size" sliderLabel.TextColor3 = Color3.fromRGB(255, 255, 255) sliderLabel.TextXAlignment = Enum.TextXAlignment.Left sliderLabel.Font = Enum.Font.SourceSans sliderLabel.TextScaled = true sliderLabel.TextSize = 16 sliderLabel.Parent = mainFrame local slider = Instance.new("Frame") slider.Size = UDim2.new(1, -20, 0, 20) slider.Position = UDim2.new(0, 10, 0, 110) slider.BackgroundColor3 = Color3.fromRGB(200, 200, 200) slider.Parent = mainFrame local sliderCorner = Instance.new("UICorner") sliderCorner.CornerRadius = UDim.new(0, 8) sliderCorner.Parent = slider local sliderFill = Instance.new("Frame") sliderFill.Size = UDim2.new(currentSize / 1000000000, 0, 1, 0) sliderFill.BackgroundColor3 = Color3.fromRGB(255, 105, 180) sliderFill.Parent = slider local sliderFillCorner = Instance.new("UICorner") sliderFillCorner.CornerRadius = UDim.new(0, 8) sliderFillCorner.Parent = sliderFill local handle = Instance.new("Frame") handle.Size = UDim2.new(0, 20, 1, 0) handle.Position = UDim2.new(currentSize / 1000000000, -10, 0, 0) handle.BackgroundColor3 = Color3.fromRGB(255, 255, 255) handle.Parent = slider local handleCorner = Instance.new("UICorner") handleCorner.CornerRadius = UDim.new(0, 10) handleCorner.Parent = handle handle.InputBegan:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseButton1 then draggingHandle = true end end) handle.InputEnded:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseButton1 then draggingHandle = false end end) game:GetService("UserInputService").InputChanged:Connect(function(input) if input.UserInputType == Enum.UserInputType.MouseMovement and draggingHandle then local mouse = game.Players.LocalPlayer:GetMouse() local relative = math.clamp((mouse.X - slider.AbsolutePosition.X) / slider.AbsoluteSize.X, 0, 1) sliderFill.Size = UDim2.new(relative, 0, 1, 0) handle.Position = UDim2.new(relative, -10, 0, 0) setRockSize(math.floor(relative * 1000000000)) end end) local toggleLabel = Instance.new("TextLabel") toggleLabel.Size = UDim2.new(0.6, 0, 0, 30) toggleLabel.Position = UDim2.new(0, 10, 0, 150) toggleLabel.BackgroundTransparency = 1 toggleLabel.Text = "Auto Size Adjust" toggleLabel.TextColor3 = Color3.fromRGB(255, 255, 255) toggleLabel.TextXAlignment = Enum.TextXAlignment.Left toggleLabel.Font = Enum.Font.SourceSans toggleLabel.TextScaled = true toggleLabel.TextSize = 16 toggleLabel.Parent = mainFrame local toggleButton = Instance.new("TextButton") toggleButton.Size = UDim2.new(0.3, 0, 0, 30) toggleButton.Position = UDim2.new(0.65, 0, 0, 150) toggleButton.BackgroundColor3 = Color3.fromRGB(200, 200, 200) toggleButton.Text = "OFF" toggleButton.TextColor3 = Color3.fromRGB(0, 0, 0) toggleButton.Font = Enum.Font.SourceSans toggleButton.TextScaled = true toggleButton.TextSize = 16 toggleButton.Parent = mainFrame local toggleCorner = Instance.new("UICorner") toggleCorner.CornerRadius = UDim.new(0, 8) toggleCorner.Parent = toggleButton local autoAdjust = false toggleButton.MouseButton1Click:Connect(function() autoAdjust = not autoAdjust toggleButton.Text = autoAdjust and "ON" or "OFF" rockEvent.Parent.LocalScript.Disabled = autoAdjust end) local resetButton = Instance.new("TextButton") resetButton.Size = UDim2.new(1, -20, 0, 30) resetButton.Position = UDim2.new(0, 10, 0, 200) resetButton.BackgroundColor3 = Color3.fromRGB(255, 105, 180) resetButton.Text = "Reset Rock Size" resetButton.TextColor3 = Color3.fromRGB(255, 255, 255) resetButton.Font = Enum.Font.SourceSansBold resetButton.TextScaled = true resetButton.TextSize = 16 resetButton.Parent = mainFrame local resetCorner = Instance.new("UICorner") resetCorner.CornerRadius = UDim.new(0, 8) resetCorner.Parent = resetButton resetButton.MouseButton1Click:Connect(function() setRockSize(1) sliderFill.Size = UDim2.new(0, 0, 1, 0) handle.Position = UDim2.new(0, -10, 0, 0) end) local creditsLabel = Instance.new("TextLabel") creditsLabel.Size = UDim2.new(1, -20, 0, 25) creditsLabel.Position = UDim2.new(0, 10, 0, 270) creditsLabel.BackgroundTransparency = 1 creditsLabel.Text = "Credits: areyoumental110" creditsLabel.TextColor3 = Color3.fromRGB(255, 255, 255) creditsLabel.TextXAlignment = Enum.TextXAlignment.Left creditsLabel.Font = Enum.Font.SourceSansBold creditsLabel.TextScaled = true creditsLabel.TextSize = 20 creditsLabel.Parent = mainFrame