前回の記事の続きです。

今回はUnityで実装していきます。
こちらの記事でも引き続き私のサイトを参考にする場合は自己責任でお願いいたします。
UnityのJSONについては引き続きこちらのサイトを参考にさせていただきました。


全体像
完成した後のUnityの画面を載せます。
このような感じです。
空のGameObjectに前回作ったTestスクリプトをアタッチして、
ボタンを2つ作り子オブジェクトのTextをセーブとロードに変えて、
セーブボタンを押したときにPushSaveButtonメソッド、
ロードボタンを押したときにPushLoadButtonメソッド
が呼び出されるようにします。
Testスクリプトをアタッチ
まず空のGameObjectを作り、Testスクリプトをアタッチします。
セーブ、ロードボタンを作る
ボタンを作ります。
押しやすい大きさにしてセーブとロードの2つ分を作ってください。
子オブジェクトのTextをセーブとロードにして見やすくします。
ボタンがクリックされた時のメソッドを設定します。
セーブボタンにはPushSaveButtonメソッド、
ロードボタンにはPushLoadButtonメソッドを設定してください。
画像では分かりやすいようにヒエラルキーのButtonの名前をSaveButton、LoadButtonにしました。
テストプレイ
それではテストプレイしてみましょう。
セーブボタンを押すと
player.name=”かみこっぷ”
player.level=”2″
がセーブされ
ロードボタンを押すと
セーブデータが読み込まれ、Debug.Logメソッドでplayer.nameとplayer.levelが表示されます。
Loadメソッドでは、もしセーブデータがなければplayer.nameは空、player.levelは1が表示されるようにしています。
まずはロードボタンを押してみましょう。
このようになります。
1つ目は何も表示されず、2つ目は1が表示されています。
まだセーブデータが作られていないときは、こういう処理になるようにしました。
次にセーブボタンを押してみましょう。
セーブボタンを押してもセーブされるだけなのでコンソールには何も表示されません。
ちなみに押した時点でAssetファイルにsavedataという名前のテキストファイルが出来ています。
次にロードボタンを押してみましょう。
このようにかみこっぷと2が表示されました。
先ほど作られたsavedataというファイルが読み込まれ、その変数をDebug.Logメソッドで表示した結果がここに出ています。
テストプレイを停止してAssetファイルを見てみましょう。
もし画像のようにsavedataがなかったら最新状態に更新を押してみましょう。
すると、このように表示されます。
以上です。
私が悩んだところを記事にしていたらとても長くなってしまいました。
最後まで読んでいただき誠にありがとうございました。
コメント
あなた神ですわ(学生)
ありがとうございます!そういっていただけると嬉しいです!
以前より知識が増えてきたので、初心者や独学の人に役立つようなUnityの簡単な解説ページをいつか作りたいな~と考えています。
それから、以前諸事情でコメント欄を封鎖しようか考えていたのですが、そのまま放置していました(コメントが来て思い出しました)。
突然閉鎖するかもしれませんがよろしくお願いします。ペコリ(o_ _)o))