Hey, so I am attempting to use LayoutOrder in order to add teams to my custom player list. Below is a script called “TeamHandler”, when I run it, unfortunately the team doesn’t even show up in the leaderboard. I can’t figure out why this is happening, but some help would really be appreciated.
local TeamStorage = game.StarterGui.PlayerList.TeamStorage
local Teams = game:GetService("Teams")
local AllTeams = Teams:GetTeams()
local PS = game:GetService("Players")
local ListStorage = script.Parent.Frame.ScrollingFrame
local RedLayoutOrder = 3
local BlueLayoutOrder = 1
function AddTeam(player)
for i,v in pairs(PS:GetPlayers()) do
if game.Teams[v.Team] then
if v.Team == game.Teams.TeamBlue then
local Clone = TeamStorage.TeamBlue:Clone()
Clone.Parent = ListStorage
Clone.Visible = true
end
if v.Team == game.Teams.TeamRed then
local Clone1 = TeamStorage.TeamRed:Clone()
Clone1.Parent = ListStorage
Clone1.Visible = true
end
end
end
end
PS.PlayerAdded:Connect(function(player)
local PlayersTemplate = script.Parent.Frame.ScrollingFrame:FindFirstChild(player.Name)
AddTeam(player)
PlayersTemplate.LayoutOrder = ListStorage[player.Team.Name].LayoutOrder + 1
player:GetPropertyChangedSignal("Team"):Connect(function()
for i,v in pairs(PS:GetPlayers()) do
local PlayersTeam = player.Team.Name
local ReferenceOrder = PlayersTeam.LayoutOrder
for i,c in pairs(ListStorage:GetChildren()) do
if c.LayoutOrder == ReferenceOrder + 1 then
PlayersTeam:Destroy()
end
end
end
end)
end)