跳到主要内容

排行榜快速入门 · C#

本文档展示了如何快速接入排行榜功能。

创建排行榜

首先通过控制台创建一个世界排行榜:

  • 排行榜名称 statisticName 设置为 world
  • 玩家成绩降序排列。
  • 更新策略选择 better,即保留用户最好的成绩。
  • 每月自动重置。

image

点击完成后,我们在控制台看到一个已经创建好的排行榜。

SDK 安装

请参考 C# SDK 安装指南,获取 SDK 的数据存储模块,完成安装、初始化。

更新成绩

这里在客户端模拟注册两个玩家 A 和 B 并更新自己的成绩。首先运行以下代码注册玩家 A 并更新排行榜中的成绩:

var user = new AVUser();
user.Username = "playerA";
user.Password = "passwordA";
await user.SignUp();
var statistic = new Dictionary<string, double> {
{ "world", 20 }
};
await LCLeaderboard.UpdateStatistics(user, statistic);

接下来换玩家 B 登录并更新成绩,将以上代码中 AVUser.SignUp 的参数换成玩家 B 的用户名 playerB 和密码 passwordB 后再次运行代码,运行成功后排行榜中也就有了玩家 B 的成绩。

获取名次

接下来我们获取排行榜中前 10 的名次,由于当前排行榜中只有 2 个玩家,所以结果是这两个玩家的数据。

var leaderboard = LCLeaderboard.CreateWithoutData("world");
var rankings = await leaderboard.GetResults(limit: 10, selectUserKeys: new List<string> {"username", "age"});
foreach(var ranking in rankings) {
Debug.Log(ranking.User.Username);
Debug.Log(ranking.Rank.ToString());
Debug.Log(ranking.Value);
}

使用指南

更详细的使用方式,请参考C# 排行榜开发指南