I’m trying to make a “Weekly Activity” type leaderboard where users with the most activity will be put on the board and their minutes will be shown. It would also say how many minutes you as a player have.
The issue is that it’s not working, I’ve put remotes where remotes should be, the GUI and I put the script into StarterPlayerScripts.
I’ve tried to look for solutions on the forum and google but nothing showed up.
The script
local v1 = {};
local l__PlayerGui__1 = game:GetService("Players").LocalPlayer.PlayerGui;
local function u2(p1)
local l__Activity__2 = l__PlayerGui__1:WaitForChild("Activity");
if l__Activity__2 and l__Activity__2:FindFirstChild("Frame") and (l__Activity__2.Frame:FindFirstChild("IndividualTime") and p1 ~= nil and #p1 > 0) then
local l__next__3 = next;
local v4, v5 = l__Activity__2.Frame.List:GetChildren();
while true do
local v6, v7 = l__next__3(v4, v5);
if not v6 then
break;
end;
v5 = v6;
if v7:IsA("Frame") and v7.Name ~= "Template" then
v7:Destroy();
end;
end;
local v8 = 0;
for v9, v10 in next, p1 do
local v11 = l__Activity__2.Frame.List.Template:Clone();
v11.Name = v10[3];
v11.User.Text = v10[2];
v11.Thumbnail.Image = "https://www.roblox.com/headshot-thumbnail/image?userId=" .. v10[3] .. "&width=420&height=420&format=png";
v11.Minutes.Text = v10[4] .. " Minutes";
v11.Parent = l__Activity__2.Frame.List;
v11.Visible = true;
v8 = v8 + 1;
if v8 > 0 and v8 < 4 then
if v8 == 1 then
local v12 = Color3.fromRGB(255, 162, 0);
if not v12 then
if v8 == 2 then
v12 = Color3.fromRGB(165, 165, 165);
if not v12 then
v12 = false;
if v8 == 3 then
v12 = Color3.fromRGB(126, 105, 72);
end;
end;
else
v12 = false;
if v8 == 3 then
v12 = Color3.fromRGB(126, 105, 72);
end;
end;
end;
elseif v8 == 2 then
v12 = Color3.fromRGB(165, 165, 165);
if not v12 then
v12 = false;
if v8 == 3 then
v12 = Color3.fromRGB(126, 105, 72);
end;
end;
else
v12 = false;
if v8 == 3 then
v12 = Color3.fromRGB(126, 105, 72);
end;
end;
v11.BackgroundColor3 = v12;
end;
end;
end;
end;
game:GetService("ReplicatedStorage"):WaitForChild("Remotes"):WaitForChild("ActivityClient").OnClientEvent:Connect(function(p2, ...)
local v13 = { ... };
if p2 == "Update" then
u2(v13[1]);
return;
end;
if p2 == "UpdateIndividual" then
local v14 = v13[1];
local l__Activity__15 = l__PlayerGui__1:WaitForChild("Activity");
if l__Activity__15 and l__Activity__15:FindFirstChild("Frame") and (l__Activity__15.Frame:FindFirstChild("IndividualTime") and v14 ~= nil) then
l__Activity__15.Frame.IndividualTime.Text = "<b>Your time: </b>" .. v14 .. " Minutes";
end;
end;
end);