Easy Save 3で多次元配列のLoadとSave

セールの時に購入して放置していたEasySaveをようやく使う機会が出て来たので、試してみました。


使おうと思った対象アプリは「とけいであそぶ」で、問題を回答した成績を格納しようと思いました。
成績は多次元配列で格納してます。

//時計の問題:成績
	public int[,,] ScoreRecord = {
		{{0,0},{0,0},{0,0}},
		{{0,0},{0,0},{0,0}},
		{{0,0},{0,0},{0,0}}
	};//種類*レベル*[スコア,合計]

既に、publicにしてあるので、アプリ内ではクラスおよびシーン間で共有されてます。
UnityのPlayerPrefsでも配列をバラバラにして格納すれば出来るのですが、超面倒臭い。
丸っと多次元配列で格納したかったのでEasySaveを導入することにしました。

プロジェクトにassetをimportしたら、あとは数行書くだけで済みました。

        if (ES3.KeyExists("ScoreRecord"))
        {
            ScoreRecord = ES3.Load<int[,,]>("ScoreRecord");
        }

セーブしたデータを呼び出すときは、キーで格納済みかを確認。
キーがあるなら、セーブデータからLoadします。
多次元配列と言ってもES3.Load(“キー名”)と書くだけです。

        //EasySaveに保存
        ES3.Save<int[,,]>("ScoreRecord", Manager_Game.Instance.ScoreRecord);

逆に、データをセーブする時は、問題を回答したタイミングでint[,,]を丸っとSaveするだけです。
PlayerPrefsと同じ感覚で使えますね。
本当に簡単です。PlayerPrefsを使ったことがあれば、サクっと差し替えられます。

Unity2018.2
macOS High Sierra
EasySave3