void Update()
    {
        // 現在のハイスコアの取得が完了したら1度だけ実行
        //@Nagashima -1はどういう状態なのかがわからないので定数を用いるなどするといいです
        if (currentHighScore.GameScore != -1 && !isScoreFetched)
        {
            leaderBoard.FetchRank(currentHighScore.GameScore);
            isScoreFetched = true;
        }

        // 現在の順位の取得が完了したら1度だけ実行
        if (leaderBoard.currentRank != 0 && !isRankFetched)
        {
            leaderBoard.FetchTopRankers();
            leaderBoard.FetchNeighbors();
            isRankFetched = true;
        }

        // ランキングの取得が完了したら1度だけ実行
        if (leaderBoard.topRankers != null && leaderBoard.neighbors != null && !isLeaderBoardFetched)
        {
            // 自分が1位のときと2位のときだけ順位表示を調整

            /*int offset = 2;
             * if (lBoard.currentRank == 1) offset = 0;
             * if (lBoard.currentRank == 2) offset = 1;*/

            // 取得したトップ5ランキングを表示
            for (int i = 0; i < leaderBoard.topRankers.Count; ++i)
            {
                top[i].GetComponent <Text>().text = i + 1 + ". " + leaderBoard.topRankers[i].ScreenPrint();
            }

            // 取得したライバルランキングを表示

            /*for (int i = 0; i < lBoard.neighbors.Count; ++i)
             * {
             *  nei[i].GetComponent<Text>().text = lBoard.currentRank - offset + i + ". " + lBoard.neighbors[i].Print();
             * }*/
            isLeaderBoardFetched = true;
        }
    }