-
Notifications
You must be signed in to change notification settings - Fork 0
Leaderboards
yokoe edited this page Sep 14, 2010
·
16 revisions
- 連勝回数やクリア回数などの定量データを用いてランキングを行う機能がリーダーボードです。
- 最初にPANKIAのウェブ上から新しいリーダーボードを登録します。
- リーダーボードは「連勝回数」や「クリア回数」など、内容に応じてその分だけ登録します。
- リーダーボードには下記の要素を設定できます。
要素名 | 内容 |
Name | リーダーボードの名前。ダッシュボード上などで表示されます。 |
Sort by | ランキングの並び順。latestにすると最新のスコアが、Maxにすると過去最高スコアが集計対象になります。 |
Min version | そのリーダーボードの集計対象となるゲームの最低バージョン |
Max version | そのリーダーボードの集計対象となるゲームの最大バージョン |
- リーダーボードを登録するとIDが割り振られます。ゲーム側からはこのIDを使ってリーダーボードにスコアをポストしたり、ランキングを取得したりします。
- リーダーボードにスコアを送信するには+[PankiaNet postScore:leaderboardId:]を使用します。
- (void)postSomeScore { [PankiaNet postScore:10 leaderboardId:1]; //ID 1のリーダーボードにスコア「10点」を送信します }
- ランキングはサーバー上に保存されているため、現在のスコアと順位を取得する場合はサーバーに値を取得しにいきます。
- 任意リーダーボードにおける現在のスコアとランク順位を取得するには、fetchLeaderboardを使用します。
- (void)fetchRankOnLeaderboard26 { //ID 26のリーダーボードにおけるスコアと順位を取得しにいきます。 [PankiaNet fetchRankOnLeaderboard:26]; }
- あるいは、fetchAllLeaderboardsRankを使用して一度にすべてのリーダーボードのスコアと順位を取得しにいくこともできます。
- (void)fetchAllLeaderboardsRank { [PankiaNet fetchAllLeaderboardsRank]; }
- 値が取得されると、fetchRankOnLeaderboardDone:が呼ばれます。引数にはリーダーボードにおけるスコア/順位を表す PNRank データが配列になって含まれています。fetchRankOnLeaderboardを使用する場合は、この引数の一つ目のオブジェクトを使用してください。
- スコアはlong long int型です。NSLogやsnprintf等を使用するときには注意してください。
- (void)fetchRankOnLeaderboardDone:(NSArray *)rankArray { for(PNRank* rank in rankArray){ NSLog(@"%d における最新スコアは %lld (%d位)" ,rank.leaderboardId, rank.score, rank.rank); } }