2014年11月26日

ゲームのアップグレード (31) | ランキングボーナス part4 完結編

さーて、軽く最終的な実装部分をまとめて、完結編って事にしちゃおうかな?


スコアの登録から
まずはスコア登録時の処理から!
リーダーボードへの登録は前にやった通りなんだけど、登録した時のウィークリーリーダーボードIDのキーを、別途、ローカルストレージのリストに登録。
このリストに乗ってるキーを使って、週間ランキングが終了済かどうか?チェックが必要かどうか?リワードを与えたか?これから与えるのか?
なんて事をチェックして行く事になります。
一応このリスト登録が、ランキングリワードの二重取りとかの問題に対応してるつもり!

リスト登録時のスクリプトはこんな感じ。
Screen Shot 2014-11-25 at 6.00.52 PM.png


ウィークリーリーダーボードキーは、現在の日時をベースにしたキー。
で、これを現在のキーと、保存された最終リーダーボードキーを比べて、現在のキーの方が新しければ、最終リーダーボードキーを上書き更新。これを setLatestRankingKey (319行目)でやってます。
で、リーダーボードへの登録キーリストをチェックして(327行目〜332行目)、同じキーが登録されてなければリストに登録(334行目〜3339行目)。

こっちが setLatestRankingKey の中身ね。
Screen Shot 2014-11-25 at 6.13.04 PM.png



リーダーボード期間終了後の順位チェック
じゃ、次はさっき登録したリーダーボード情報のチェック処理側。
これが起点になる GameManager の呼び出し側。

Screen Shot 2014-11-25 at 10.41.46 AM.png

この GameStep.CHECK_BONUS がメインステップのループの頭になるかな?
ここで、ログインボーナスとランキングボーナスの処理を初期化。
現在のリーダーボードキーを取得して(534行目)、GameCenterアカウントが有効かチェックして(536行目)、有効だったらランキングチェックを開始(537行目)。
で、ゲームオーバーになる毎に、毎回このチェックを通ってからタイトル画面に進む順番になってます。

で、今度はランキング情報の読み込みの判断と開始。

Screen Shot 2014-11-25 at 10.58.22 AM.png

保存したウィークリーリーダーボードに登録済のキーリストを取って来て(355行目)、リストの先頭にあるキーと、現在のキーを比較して(387行目)、リストのキーが古かったら、情報取得用のILeaderboardクラスを作成して(391行目)、ロードを指示(393行目)。
実際のロード処理は前回やったから大丈夫だよね...?

        にほんブログ村 ゲームブログ×PlayNCBlogへ
 初めてみました。よかったらクリックお願いね ♪




posted by やまけん at 09:20| Comment(0) | Unity | このブログの読者になる | 更新情報をチェックする
この記事へのコメント
コメントを書く
お名前:

メールアドレス:

ホームページアドレス:

コメント: