コード例 #1
0
    // 저장된 데이터를 읽습니다.
    public void LoadData()
    {
        // 파일을 호출합니다.
        BinaryFormatter bf = new BinaryFormatter();
        FileStream      fs;

        // 파일이 존재하면 열고, 없으면 생성합니다.
        if (File.Exists(Application.persistentDataPath + "/UQData.dat"))
        {
            fs = File.Open(Application.persistentDataPath + "/UQData.dat", FileMode.Open);
        }
        else
        {
            fs = File.Create(Application.persistentDataPath + "/UQData.dat");
        }

        if (fs != null && fs.Length > 0)
        {
            // 읽어 들인 데이터의 정보를 저장합니다.
            UQData data = (UQData)bf.Deserialize(fs);

            UQGameManager.Instance.ClearNum     = data.clearNum;
            UQGameManager.Instance.STRBuff      = data.StrBuff;
            UQGameManager.Instance.CriticalBuff = data.CriticalBuff;
            UQGameManager.Instance.SkillBuff    = data.SkillBuff;
            UQGameManager.Instance.Monsters     = data.Monsters;
            for (int i = 0; i < UQGameManager.Instance.Monsters.Length; i++)
            {
                UQGameManager.Instance.Monsters[i] = data.Monsters[i];
            }
        }
        fs.Close();
    }
コード例 #2
0
    // 저장할 테이터를 특정 경로에 저장합니다.
    public void SaveData()
    {
        BinaryFormatter bf = new BinaryFormatter();
        FileStream      fs = File.Create(Application.persistentDataPath + "/UQData.dat");

        // UQData에 저장할 데이터를 넣습니다.
        UQData data = new UQData();

        data.Monsters = new bool[UQGameManager.Instance.Monsters.Length];

        data.clearNum     = UQGameManager.Instance.ClearNum;
        data.StrBuff      = UQGameManager.Instance.STRBuff;
        data.CriticalBuff = UQGameManager.Instance.CriticalBuff;
        data.SkillBuff    = UQGameManager.Instance.SkillBuff;

        for (int i = 0; i < UQGameManager.Instance.Monsters.Length; i++)
        {
            data.Monsters[i] = UQGameManager.Instance.Monsters[i];
        }
        bf.Serialize(fs, data);

        fs.Close();
    }