local oldGui = game:GetService("CoreGui"):FindFirstChild("PlaytimeTrackerGui") or game:GetService("Players").LocalPlayer:FindFirstChildOfClass("PlayerGui"):FindFirstChild("PlaytimeTrackerGui") if oldGui then oldGui:Destroy() end local parentObject local success, err = pcall(function() parentObject = game:GetService("CoreGui") end) if not success or not parentObject then parentObject = game:GetService("Players").LocalPlayer:WaitForChild("PlayerGui") end local screenGui = Instance.new("ScreenGui") screenGui.Name = "PlaytimeTrackerGui" screenGui.ResetOnSpawn = false screenGui.Parent = parentObject local mainFrame = Instance.new("Frame") mainFrame.Name = "MainFrame" mainFrame.Size = UDim2.new(0, 180, 0, 120) mainFrame.Position = UDim2.new(0.5, -90, 0.4, -60) mainFrame.BackgroundColor3 = Color3.fromRGB(30, 30, 30) mainFrame.BorderSizePixel = 0 mainFrame.Active = true mainFrame.Parent = screenGui local uiCorner = Instance.new("UICorner") uiCorner.CornerRadius = UDim.new(0, 10) uiCorner.Parent = mainFrame local titleLabel = Instance.new("TextLabel") titleLabel.Name = "TitleLabel" titleLabel.Size = UDim2.new(1, 0, 0, 30) titleLabel.BackgroundTransparency = 1 titleLabel.Text = "Playtime" titleLabel.TextColor3 = Color3.fromRGB(200, 200, 200) titleLabel.Font = Enum.Font.SourceSansBold titleLabel.TextSize = 14 titleLabel.Parent = mainFrame local timeBox = Instance.new("Frame") timeBox.Name = "TimeBox" timeBox.Size = UDim2.new(0, 150, 0, 65) timeBox.Position = UDim2.new(0.5, -75, 0.5, -15) timeBox.BackgroundColor3 = Color3.fromRGB(15, 15, 15) timeBox.BorderSizePixel = 0 timeBox.Parent = mainFrame local boxCorner = Instance.new("UICorner") boxCorner.CornerRadius = UDim.new(0, 8) boxCorner.Parent = timeBox local timeLabel = Instance.new("TextLabel") timeLabel.Name = "TimeLabel" timeLabel.Size = UDim2.new(1, 0, 1, 0) timeLabel.BackgroundTransparency = 1 timeLabel.Text = "00:00" timeLabel.TextColor3 = Color3.fromRGB(0, 255, 150) timeLabel.Font = Enum.Font.Code timeLabel.TextSize = 28 timeLabel.Parent = timeBox local userInputService = game:GetService("UserInputService") local dragging, dragInput, dragStart, startPos 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 or input.UserInputType == Enum.UserInputType.Touch 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 or input.UserInputType == Enum.UserInputType.Touch then dragInput = input end end) userInputService.InputChanged:Connect(function(input) if input == dragInput and dragging then update(input) end end) local totalSeconds = 0 local MAX_SECONDS = 10 * 60 -- 10 menit task.spawn(function() while mainFrame and mainFrame.Parent do task.wait(1) totalSeconds = totalSeconds + 1 if totalSeconds >= MAX_SECONDS then totalSeconds = 0 end local minutes = math.floor(totalSeconds / 60) local seconds = totalSeconds % 60 timeLabel.Text = string.format("%02d:%02d", minutes, seconds) end end)