函數的用法
ArcadeLeaderboard.IsReady()
int IsReady(StatusCallback callback);
名稱 | 類型 | 描述 |
callback | StatusCallback | 回調函數 |
回傳:
int
。值為
1
表示函數已完成且沒有錯誤。
初始化 Arcade 排行榜 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 後端。請注意,只有目前使用者的得分可以更改。