Tableaux de classement dans le jeu

*Ce contenu est traduit en utilisant l'IA (Beta) et peut contenir des erreurs. Pour consulter cette page en anglais, clique ici.

Roblox dispose d'un système de tableau de classement intégré qui vous permet d'afficher des informations sur les utilisateurs, comme les scores, la monnaie ou le temps le plus rapide dans une course.

Écran de tableau de classement

Configurer le tableau de classement

Pour configurer le tableau de classement et ajouter des joueurs lorsqu'ils entrent dans le jeu :

  1. Créez un nouveau Script dans ServerScriptService et nommez-le Leaderboard.

    Insertion du script de tableau de classement
  2. Dans le script, connectez une fonction à l'événement PlayerAdded.

    local Players = game:GetService("Players")
    local function leaderboardSetup(player)
    end
    Players.PlayerAdded:Connect(leaderboardSetup)
  3. À l'intérieur de la fonction connectée, créez une nouvelle instance Folder, nommez-la leaderstats, et placez-la en tant qu'enfant du joueur.

    local Players = game:GetService("Players")
    local function leaderboardSetup(player)
    local leaderstats = Instance.new("Folder")
    leaderstats.Name = "leaderstats"
    leaderstats.Parent = player
    end
    Players.PlayerAdded:Connect(leaderboardSetup)

Ajouter des statistiques

Les tableaux de classement utilisent des objets de type valeur pour stocker et afficher les statistiques des joueurs. Ce script affichera l'or d'un joueur à l'aide d'un IntValue, un espace réservé pour un entier.

Dans la fonction leaderboardSetup(), ajoutez les lignes 8 à 11 :

local Players = game:GetService("Players")
local function leaderboardSetup(player)
local leaderstats = Instance.new("Folder")
leaderstats.Name = "leaderstats"
leaderstats.Parent = player
local gold = Instance.new("IntValue")
gold.Name = "Gold"
gold.Value = 0
gold.Parent = leaderstats
end
Players.PlayerAdded:Connect(leaderboardSetup)

Ces lignes accomplissent les éléments suivants :

  1. Une instance IntValue est créée.

  2. Le Name de l'instance est défini sur "Gold". C'est exactement comme la statistique apparaîtra sur le tableau de classement.

    Nom de la statistique 'Gold' affiché sur le tableau de classement
  3. La valeur initiale de Value de la statistique est définie sur 0. Cela peut être défini sur toute valeur souhaitée, y compris une valeur stockée dans un magasin de données si vous implémentez des tableaux de classement persistants.

  4. L'instance est ajoutée en tant qu'enfant du dossier leaderstats, ce qui l'ajoute au tableau de classement. Lorsque qu'un joueur entre dans le jeu, son nom apparaît sur le tableau.

    Plusieurs joueurs affichés sur le tableau de classement

Mettre à jour les statistiques

Pour mettre à jour la statistique de tableau de classement d'un joueur, modifiez la propriété Value de cette statistique dans leur dossier leaderstats. Par exemple, vous pouvez attacher le Script suivant à n'importe quel objet ramassable pour augmenter la statistique Gold du joueur qui le collecte.

local Players = game:GetService("Players")
local goldChunk = script.Parent
local function onPartTouch(otherPart)
local partParent = otherPart.Parent
local player = Players:GetPlayerFromCharacter(partParent)
local leaderstats = player and player:FindFirstChild("leaderstats")
local goldStat = leaderstats and leaderstats:FindFirstChild("Gold")
if goldStat then
-- Détruire le ramassable
goldChunk:Destroy()
-- Mettre à jour la statistique de tableau de classement du joueur
goldStat.Value += 10
end
end
goldChunk.Touched:Connect(onPartTouch)

Ordonner les statistiques

Il existe trois façons de contrôler l'ordre des statistiques dans un tableau de classement :

  • Ajoutez les statistiques dans l'ordre dans lequel vous souhaitez qu'elles apparaissent.
  • Ajoutez un enfant BoolValue nommé IsPrimary à la statistique et définissez sa valeur sur true pour placer la statistique en premier dans le tableau de classement.
  • Ajoutez un enfant NumberValue nommé Priority à la statistique et définissez sa valeur sur un entier. Les valeurs de priorité plus élevées apparaissent plus tôt dans le tableau de classement. Les statistiques sans priorité ont une priorité par défaut de 0.

Cet exemple de code montre comment ajouter une valeur IsPrimary à une statistique :

local Players = game:GetService("Players")
local function leaderboardSetup(player)
local leaderstats = Instance.new("Folder")
leaderstats.Name = "leaderstats"
leaderstats.Parent = player
local gold = Instance.new("IntValue")
gold.Name = "Gold"
gold.Value = 0
gold.Parent = leaderstats
local isPrimary = Instance.new("BoolValue")
isPrimary.Name = "IsPrimary"
isPrimary.Value = true
isPrimary.Parent = gold
end
Players.PlayerAdded:Connect(leaderboardSetup)

Cacher le tableau de classement

Pour cacher le tableau de classement, par exemple sur un écran de menu ou pendant une cinématique, placez un LocalScript dans StarterGui ou StarterPlayerScripts contenant un appel à StarterGui.

local StarterGui = game:GetService("StarterGui")
StarterGui:SetCoreGuiEnabled(Enum.CoreGuiType.PlayerList, false)
©2026 Société Roblox. Roblox, le logo Roblox et Powering Imagination font partie de nos marques déposées aux États-Unis et dans d'autres pays.