Please Select Your Location
Australia
Österreich
België
Canada
Canada - Français
中国
Česká republika
Denmark
Deutschland
France
HongKong
Iceland
Ireland
Italia
日本
Korea
Latvija
Lietuva
Lëtzebuerg
Malta
المملكة العربية السعودية (Arabic)
Nederland
New Zealand
Norge
Polska
Portugal
Russia
Saudi Arabia
Southeast Asia
España
Suisse
Suomi
Sverige
台灣
Ukraine
United Kingdom
United States
Please Select Your Location
België
Česká republika
Denmark
Iceland
Ireland
Italia
Latvija
Lietuva
Lëtzebuerg
Malta
Nederland
Norge
Polska
Portugal
España
Suisse
Suomi
Sverige

函数的用法

Viveport.UserStats.IsReady()

int IsReady(StatusCallback callback);
名称 类型 描述
callback StatusCallback 回调函数

返回: int 。值为 1 表示函数已完成且没有错误。

初始化统计资料和成就 API 以及排行榜 API。它们共享相同的初始化函数。初始化完成后,回调函数将提供代码:如果成功会返回 0 ;如果失败,则返回 错误代码 。在调用其他排行榜 API 函数之前,请先调用此函数。

DownloadLeaderboardScores()

int DownloadLeaderboardScores(
   StatusCallback callback, 
   string pchLeaderboardName, 
   LeaderBoardRequestType eLeaderboardDataRequest, 
   LeaderBoardTimeRange eLeaderboardDataTimeRange, 
   int nRangeStart, 
   int nRangeEnd);
名称 类型 描述
callback StatusCallback 回调函数
pchLeaderboardName string 在 VIVEPORT 开发者控制台中指定的排行榜 API 名称
eLeaderboardDataRequest LeaderBoardRequestType 请求类型,请参见下文
eLeaderboardDataTimeRange LeaderBoardTimeRange 时间范围,请参见下文
nRangeStart int 范围起始值,请参见下文
nRangeEnd int 范围结束值,请参见下文

返回: int 。值为 1 表示函数已完成且没有错误。

调用此函数以从 VIVEPORT 后端为当前最终用户下载排行榜得分数据。此数据由 SDK 缓存,并可使用 GET 函数获取。

如果 eLeaderboardRequestType GlobalData LocalData ,则 RangeStart RangeEnd 指的是最终用户的绝对排名,从索引 0 开始,确切顺序由 LeaderBoardSortMethod 确定。 RangeStart RangeEnd 必须为整数。

例如,如果 RangeStart RangeEnd 设置为 0 9 ,则将下载前 10 个位置的 leaderboard 得分。在这种情况下,如果最终用户不在前 10 名中,则不会显示其名称。

索引 排名 名称 得分
0 1 player1 1000
1 2 player2 900
2 3 player3 800
3 4 player4 700
4 5 player5 600
5 6 player6 500
6 7 player7 400
7 8 player8 300
8 9 player9 200
9 10 player10 100

通过 GetLeaderBoardScore() 获得得分时使用该索引。

如果 LeaderboardRequestType GlobalDataAroundUser LocalDataAroundUser ,则 RangeStart RangeEnd 分别是最终用户之前和之后的 leaderboard 得分,且必须为整数。

例如,如果 RangeStart RangeEnd 设置为 -3 3 ,则将下载 7 个总得分,最终用户的得分位于中间:

索引 排名 名称 得分
0 6 player1 1000
1 7 player2 900
2 8 player3 800
3 9 user 700
4 10 player4 600
5 11 player5 500
6 12 player6 400

GetLeaderboardScore()

Leaderboard GetLeaderboardScore(int index);
名称 类型 描述
index int 记分牌的索引位置

返回: Leaderboard 。返回由索引指定的排行榜得分。排行榜得分的总数可以通过 GetLeaderboardScoreCount() 确定。

在调用此函数之前,请确保 DownloadLeaderBoardScore() 已成功完成。

GetLeaderboardScoreCount()

int GetLeaderboardScoreCount();

返回: int 。返回从 0 开始的得分总数。

使用索引值调用 GetLeaderBoardScore()

GetLeaderboardSortMethod()

LeaderBoardSortMethod GetLeaderboardSortMethod();

返回: LeaderBoardSortMethod

获取排行榜的排序方法,以便可以正确显示数据。

GetLeaderboardDisplayType()

LeaderBoardDisplayType GetLeaderboardDisplayType();

返回: LeaderBoardDisplayType

调用此函数以确定储存的得分类型,例如数字、毫秒等。有关返回类型的详细信息,请参阅 LeaderBoardDisplayType

UploadLeaderboardScore()

int UploadLeaderboardScore(StatusCallback callback, string pchLeaderboardName, int nScore);
名称 类型 描述
callback StatusCallback 回调函数
pchLeaderboardName string 在 VIVEPORT 开发者控制台中指定的排行榜 API 名称
nScore int 要上传得分的值。仅供当前最终用户上传。

返回: int 。值为 1 表示函数已完成且没有错误。

将最终用户的得分上传到 VIVEPORT 后端。请注意,只有当前最终用户的得分可以更改。