从排行榜版本获取特定层级的分数

This method fails when your leaderboard is not configured with tiers. When you retrieve scores by tier, the returned LeaderboardEntry response tiers are contextual to the rank. For example, if a rank named Silver starts at rank 100 and a player’s global rank is 101, their rank within the Silver tier is 1.

要从排行榜版本获取特定层级的分数,请使用 GetVersionScoresByTierAsync 方法。默认情况下,此方法返回指定层级的排名前 10 的分数

C#

public async void GetVersionScoresByTier()
{
    var versionId = "";
    var scoresResponse = await LeaderboardsService.Instance
        .GetVersionScoresByTierAsync(leaderboardId, versionId, "silver");
    Debug.Log(JsonConvert.SerializeObject(scoresResponse));
}

可以通过指定可选的 GetVersionScoresByTierOptions 对象以及可选的 OffsetLimit 分页参数,对层级内的所有分数进行分页访问。Offset 是在检索排行榜分数时要跳过的条目数,默认为 0。Limit 是要返回的排行榜分数数量,默认为 10。

C#

public async void GetPaginatedVersionScoresByTier()
{
    var scoresResponse = await LeaderboardsService.Instance.GetVersionScoresByTierAsync(
        leaderboardId,
        versionId,
        "silver",
        new GetVersionScoresByTierOptions{ Offset = 25, Limit = 50 }
    );
    Debug.Log(JsonConvert.SerializeObject(scoresResponse));
}

要获取带有任何关联元数据的分数,请在 GetVersionScoresByTierOptions 配置对象中使用 IncludeMetadata 选项

C#

public async void GetVersionScoresByTierWithMetadata()
{
    var scoresResponse = await LeaderboardsService.Instance.GetVersionScoresByTierAsync(
        leaderboardId,
        versionId,
        "silver",
        new GetVersionScoresByTierOptions { IncludeMetadata = true }
    );
    Debug.Log(JsonConvert.SerializeObject(scoreResponse));
}

默认情况下不检索元数据。

有关如何获取可用排行榜版本 ID 的详细信息,请访问 获取可用排行榜版本

For methods that retrieve scores: if your player has not submitted a score and the leaderboard is bucketed, the player is not assigned a bucket. A failed score retrieval returns an error that has its Reason field set to ScoreSubmissionRequired.