【Unity】アイテムデータを保存する方法

unity

ゲーム内で取得したアイテムを保存する方法を記載します。

アイテムの量などは保存せずに持っているか、いないかの2パターンの情報(Bool)を保存します。

PrayersPrefを使いますがBoolは扱えないため、専用のクラスを用意します。

using UnityEngine;

public static class BoolSaveData
{

    public static void SetBool(string key, bool value)
    {
        PlayerPrefs.SetInt(key, value ? 1 : 0);
    }

    public static bool GetBool(string key, bool defalutValue)
    {
        var value = PlayerPrefs.GetInt(key, defalutValue ? 1 : 0);
        return value == 1;
    }
}

アイテムをセーブする時には以下のようにします。

アイテムを所持したことが分かるようにTrueをセットしています。

BoolSaveData.SetBool("hope", true);

セーブデータを読み込むには以下の通り。

var hoge = BoolSaveData.GetBool("hoge", false);

2番目の引数はセーブデータの初期値です。デフォルトでfalse(アイテムを持っていない)状態なので、falseを指定しています。

ABOUTこの記事をかいた人

個人アプリ開発者。Python、Swift、Unityのことを発信します。月間2.5万PVブログ運営。 Twitter:@yamagablog