#why is my leaderboard only showing one player?

1 messages · Page 1 of 1 (latest)

dense summit
vagrant monolith
#

Send the scripgt

dense summit
#

alr

#

local DSS = game:GetService("DataStoreService")
local WinsDS = DSS:GetOrderedDataStore("Wins")

local Playerholder = script.Parent.Leaderboard.SurfaceGui.Body.Container.CanvasGroup.Content.PlayerHolder.List

local function updateBoard()
local success, errorMessage = pcall(function()
local Data = WinsDS:GetSortedAsync(false, 10)
local page = Data:GetCurrentPage()
for rank, data in (page) do
local nameID = game.Players:GetNameFromUserIdAsync(tonumber(data.key))
local nickname = nameID

        local score = data.value
        local onLeaderboard = false

        for i, v in pairs(Playerholder:GetChildren()) do
            if v.Name ~= "UIListLayout" then
                if v.Player.Text == nickname then
                    onLeaderboard = true
                end
            end
        end

        if not onLeaderboard then
            local newFrame = script.Item:Clone()
            newFrame.PlayerLabel.Text = nickname
            newFrame.ScoreLabel.Text = score 
            newFrame.RankLabel.Text = "#" .. rank
            newFrame.Parent = Playerholder
            newFrame.Visible = true
        end
    end
end)

if not success then
    print(errorMessage)
end

end

task.wait(1)
while true do

for _, plr in (game.Players:GetPlayers()) do
    WinsDS:SetAsync(plr.UserId, plr:WaitForChild("leaderstats").Rebirths.Value)
end

for _, frame in (Playerholder:GetChildren()) do
    if frame.Name ~= "UIListLayout" then
        frame:Destroy()
    end
end

updateBoard()

task.wait(60) 

end

vagrant monolith
#

local DSS = game:GetService("DataStoreService")
local WinsDS = DSS:GetOrderedDataStore("Wins")

local Playerholder = script.Parent.Leaderboard.SurfaceGui.Body.Container.CanvasGroup.Content.PlayerHolder.List

local function updateBoard()
local success, errorMessage = pcall(function()
local Data = WinsDS:GetSortedAsync(false, 10)
local page = Data:GetCurrentPage()
for rank, data in page do
local nameID = game.Players:GetNameFromUserIdAsync(tonumber(data.key))
local nickname = nameID
local score = data.value
local onLeaderboard = false
for i, v in pairs(Playerholder:GetChildren()) do
if v.Name ~= "UIListLayout" then
if v.PlayerLabel.Text == nickname then
onLeaderboard = true
end
end
end
if not onLeaderboard then
local newFrame = script.Item:Clone()
newFrame.PlayerLabel.Text = nickname
newFrame.ScoreLabel.Text = score
newFrame.RankLabel.Text = "#" .. rank
newFrame.Parent = Playerholder
newFrame.Visible = true
end
end
end)
if not success then
print(errorMessage)
end
end

task.wait(1)
while true do
for _, plr in pairs(game.Players:GetPlayers()) do
WinsDS:SetAsync(plr.UserId, plr:WaitForChild("leaderstats").Rebirths.Value)
end
for _, frame in pairs(Playerholder:GetChildren()) do
if frame.Name ~= "UIListLayout" then
frame:Destroy()
end
end
updateBoard()
task.wait(60)
end
there alot of bugs here

#

try that script i gave you

dense summit
#

okay

vagrant monolith
#

lmk if it works

gaunt ruin
#

bruh

#

just help me pls

vagrant monolith
#

im helping sum one

buoyant hedgeBOT
#

studio** You are now Level 1! **studio

vagrant monolith
#

rn

dense summit
#

thank u

vagrant monolith
#

w

#

wel

dense summit
#

wait so it was just

#

v.PlayerLabel.Text

vagrant monolith
#

ye

dense summit
#

oh lmao

#

ty

old gyro
#

@dense summit @vagrant monolith Btw you can put your code into a code block by doing ` 3 times and then typing lua like

--Put text here
dense summit
#

ik