function PlayerCount()
PlayerCount = game.Players:GetChildren()
for PlayerCountLoop = 1, #PlayerCount do
leaderstats = (PlayerCount[PlayerCountLoop]:WaitForChild("leaderstats"))
print(PlayerCount[PlayerCountLoop].Name .. "'s Stats")
print(leaderstats.Attack.Value.. " - Attack")
print(leaderstats.Defense.Value.. " - Defense")
print(leaderstats.Agility.Value.. " - Agility")
print(leaderstats.Energy.Value.. " - Energy")
print(leaderstats["Power Level"].Value.. " - Power Level")
if #PlayerCount < 2 then
print("Wait For Another Player")
elseif #PlayerCount > 1 then
print("We May Begin!")
end
end
end
game.Players.PlayerAdded:connect(PlayerCount)
It is printing 'We May Begin!' twice, once when one player joins. Another time when another player joins. I tested it with my friend.

1 comment
You could try greater than or equal to 2. Not sure why this is doing it.