晴れ時々Unity、そののち映画Unityを使ったモバイルアプリ制作をはじめてみた、私の制作奮闘記。ウィークリーリーダーボード、できるかな?さて、前回は結構普通のリーダーボード導入出来ちゃいました。機能として、週間リーダーボードとか、期間限定ランキング、出来るのかと思ってたんですが、どうも無いみたい。その辺りを私なりにトライしてみたいと思います。しよう?基本的な考え方として、サーバーを持ちたくないんです。提供されてる機能でなんとかしたいんですが........そして20分後。考えてみた所、リーダーボードIDをなにか日付けに関連付けて名前を付けちゃえばいいのかな?なんて思ったんですが、この方法でトライしてみましょうかね?(なんか、問題もありそうなのも理解はしてるんですが...)じゃ、具体的にはこうしましょう!デバイスのカレンダーから、西暦と一年の第何週目か、っていう情報をGet。その情報を元に、リーダーボードIDをデバイス側で生成してリポートする。リサーチしてみると、結構便利なフレームワークが準備されてるみたいです。あと、この辺のドキュメントも参考にしましたよ。出来上がったコードはこれ。ゲット(today)して、その日付けから、西暦と週番号のコンポーネントを取得(comps)。呼ぶんですが、まえにネイティブプラグインのテストで言語設定を取って来た奴と一緒ですね。クラスに追加しちゃいます。ゲームスタート時の関数、StartGame内でコールしてます。ここで所得した文字列情報を、前に作ったデバッグ表示を使って画面に表示!どうかな?動くかな...おっ、出てるっぽい!でも今何週目か知らないんだよね...ちょっとサーチすると、ここで確認出来るのかな?合ってるみたい!ウィークリーリーダーボードをiTunesConnectで設定じゃ、実際のリーダーボードを設定しましょう!ちょっと、デバイスの時間を変えるのも面倒なんで、まずは来週のリーダーボードだけ設定して、現在のリーダーボードが未設定だった場合のテストから...存在しないリーダーボードに対してリポートしてますが、特に問題はなさそう。今週分のリーダーボードのidと一致するリーダーボードを追加してみましょう。知らない間に、ライフタイムの累計スコア用リーダーボードも出来てて、今回の今週用のリーダーボードを含めて、計4つのリーダーボードが存在してます。小手調べに少なめのスコアでゲームオーバーにするとリーダーボードは...ちゃんと、今週のリーダーボードだけアップデートされてますね!じゃ、今度は1ゲームのハイスコアも更新する様なスコアを記録してみますね。作った時点で見えちゃうのがちょっと予定外かなぁ。ま、問題ないんだけど、できれば隠せる機能があるといいんだけどなぁ〜。したりは、マニュアルで毎週やんないといけないんでちょい面倒。多少暗号化が必要かもね。2.0Seesaaブログ。