como faço para esse script funcionar um uma leadboard personalizada que eu ja tenho criada, ao inves de  criar uma nova ? ; local DataStoreService = game:GetService("DataStoreService")
local Players = game:GetService("Players")
local RunService = game:GetService("RunService")

local PlayerDataStore = DataStoreService:GetDataStore("PlayerStreaks")

-- Armazena os dados dos jogadores
local playerDataTable = {}

-- GUI do Leaderboard Personalizado
local leaderboardGui = Instance.new("ScreenGui")
leaderboardGui.Name = "CustomLeaderboard"
leaderboardGui.DisplayOrder = 1000 -- Certifique-se de que está acima de outras GUIs

-- Verifica se está sendo executado no servidor
if RunService:IsServer() then
	leaderboardGui.ResetOnSpawn = false
	leaderboardGui.Parent = game:GetService("StarterGui")
end

local leaderboardFrame = Instance.new("Frame")
leaderboardFrame.Size = UDim2.new(0, 250, 0.5, 0)
leaderboardFrame.Position = UDim2.new(1, -260, 0, 10)
leaderboardFrame.BackgroundTransparency = 0.5
leaderboardFrame.BackgroundColor3 = Color3.fromRGB(0, 0, 0)
leaderboardFrame.Parent = leaderboardGui

local leaderboardTitle = Instance.new("TextLabel")
leaderboardTitle.Size = UDim2.new(1, 0, 0, 30)
leaderboardTitle.BackgroundTransparency = 1
leaderboardTitle.Text = "Leaderboard"
leaderboardTitle.TextColor3 = Color3.new(1, 1, 1)
leaderboardTitle.Font = Enum.Font.SourceSansBold
leaderboardTitle.TextSize = 24
leaderboardTitle.Parent = leaderboardFrame

local playerListFrame = Instance.new("ScrollingFrame")
playerListFrame.Size = UDim2.new(1, 0, 1, -30)
playerListFrame.Position = UDim2.new(0, 0, 0, 30)
playerListFrame.CanvasSize = UDim2.new(0, 0, 0, 0)
playerListFrame.BackgroundTransparency = 1
playerListFrame.ScrollBarThickness = 6
playerListFrame.Parent = leaderboardFrame

local function getDateInteger(utc)
	local t = os.date("!*t", utc) -- Hora UTC
	local dateInteger = t.year * 10000 + t.month * 100 + t.day
	return dateInteger
end

local function updateLeaderboard()
	-- Limpa a lista atual
	for _, child in ipairs(playerListFrame:GetChildren()) do
		if child:IsA("Frame") then
			child:Destroy()
		end
	end

	local sortedPlayers = {}
	for player, data in pairs(playerDataTable) do
		table.insert(sortedPlayers, {Player = player, Streak = data.Streak})
	end

	-- Ordena os jogadores por streak (decrescente)
	table.sort(sortedPlayers, function(a, b)
		return a.Streak > b.Streak
	end)

	-- Atualiza a lista de jogadores
	local yPos = 0
	for index, playerInfo in ipairs(sortedPlayers) do
		local player = playerInfo.Player
		local streak = playerInfo.Streak

		local playerEntry = Instance.new("Frame")
		playerEntry.Size = UDim2.new(1, -10, 0, 30)
		playerEntry.Position = UDim2.new(0, 5, 0, yPos)
		playerEntry.BackgroundTransparency = 1
		playerEntry.Parent = playerListFrame

		local playerLabel = Instance.new("TextLabel")
		playerLabel.Size = UDim2.new(1, 0, 1, 0)
		playerLabel.BackgroundTransparency = 1
		playerLabel.Text = tostring(streak).." 🔥  "..player.Name
		playerLabel.TextColor3 = Color3.new(1, 1, 1)
		playerLabel.Font = Enum.Font.SourceSansBold
		playerLabel.TextSize = 20
		playerLabel.TextXAlignment = Enum.TextXAlignment.Left
		playerLabel.Parent = playerEntry

		yPos = yPos + 30
	end

	playerListFrame.CanvasSize = UDim2.new(0, 0, 0, yPos)
end

Players.PlayerAdded:Connect(function(player)
	-- Tentativa de carregar os dados do jogador
	local success, data = pcall(function()
		return PlayerDataStore:GetAsync(player.UserId)
	end)

	if not success then
		warn("Erro ao obter dados para o jogador: "..player.Name)
		data = {}
	end

	if not data then
		data = {
			LastLoginDate = nil,
			Streak = 0
		}
	end

	local currentUnixTime = os.time()
	local currentDate = getDateInteger(currentUnixTime)
	local lastLoginDate = data.LastLoginDate

	if lastLoginDate then
		local dateDifference = currentDate - lastLoginDate
		if dateDifference == 1 then
			data.Streak = data.Streak + 1
		elseif dateDifference > 1 then
			data.Streak = 1
		elseif dateDifference == 0 then
			-- Já entrou hoje, não faz nada
		else
			data.Streak = 1
		end
	else
		data.Streak = 1
	end

	data.LastLoginDate = currentDate

	-- Salva os dados no DataStore
	local saveSuccess, err = pcall(function()
		PlayerDataStore:SetAsync(player.UserId, data)
	end)

	if not saveSuccess then
		warn("Erro ao salvar dados para o jogador: "..player.Name.."\n"..err)
	end

	-- Armazena os dados do jogador na tabela
	playerDataTable[player] = data

	-- Atualiza o leaderboard
	updateLeaderboard()

	-- Adiciona o leaderboard personalizado para o jogador
	-- Garantimos que a GUI seja clonada para o PlayerGui
	local playerGui = player:WaitForChild("PlayerGui")
	local playerLeaderboardGui = leaderboardGui:Clone()
	playerLeaderboardGui.ResetOnSpawn = false
	playerLeaderboardGui.Parent = playerGui
end)

Players.PlayerRemoving:Connect(function(player)
	-- Remove os dados do jogador da tabela
	playerDataTable[player] = nil
	-- Atualiza o leaderboard
	updateLeaderboard()
end)