public void savePlayerData(SaveDate sv) { StreamWriter writer; string jsonstr = JsonUtility.ToJson(sv); writer = new StreamWriter(Application.dataPath + "/savedata.json", false); writer.Write(jsonstr); writer.Flush(); writer.Close(); }
/// <summary> /// セーブデータ作成処理 /// json 形式にシリアライズして保存 /// </summary> public void CreateSaveDate(string downloadFolderPath) { SaveDate saveDate = new SaveDate(); saveDate.downloadPath = downloadFolderPath; var json = JsonUtility.ToJson(saveDate, false); Debug.Log("save"); File.WriteAllText(saveDatePath, json); saveDirectlyText.text = "保存先:" + downloadFolderPath; }
private void Save(Transform _transform) { BinaryFormatter bf = new BinaryFormatter(); FileStream file = File.Create(Application.persistentDataPath + "MySave.dat"); SaveDate saveDate = new SaveDate(); saveDate.X = _transform.position.x; saveDate.Y = _transform.position.y; saveDate.Z = _transform.position.z; saveDate.time = Time.time; bf.Serialize(file, saveDate); file.Close(); }
private void Load() { if (File.Exists(Application.persistentDataPath + "MySave.dat")) { BinaryFormatter bf = new BinaryFormatter(); FileStream file = File.Open(Application.persistentDataPath + "MySave.dat", FileMode.Open); SaveDate saveDate = (SaveDate)bf.Deserialize(file); file.Close(); gameObject.transform.position = new Vector3(saveDate.X, saveDate.Y, saveDate.Z); Debug.Log(saveDate.time); } }
// JSON形式にシリアライズしてセーブ public void OnSave(int stageNo) { // シリアライズするオブジェクトを作成 var obj = new SaveDate { stageFlags = stageNo }; // JSON形式にシリアライズ var json = JsonUtility.ToJson(obj, false); // JSONデータをファイルに保存 File.WriteAllText(dataPath, json); }
private void OnApplicationQuit() { PlayerPrefs.SetString(oldtime, (DateTime.Now.Ticks / 10000000).ToString()); PlayerPrefs.SetFloat("SEvolume", soundManager.audioSourceSE.volume); PlayerPrefs.SetFloat("BGMvolume", soundManager.audioSourceBGM.volume); PlayerPrefs.Save(); savebarvalue = slider.value; savebarmax = slider.maxValue; id.Clear(); for (int i = 0; i < scchars.Count; i++) { id.Add(scchars[i].type); Debug.Log(id[i]); } savedate = new SaveDate(potstatus, characters, sumpoint, savebarvalue, savebarmax, bartype, badtime, char_time, id, potflag); savePlayerData(savedate); Debug.Log("save"); }
void Start() { PlayerPrefs.DeleteAll(); if (PlayerPrefs.HasKey("Reset")) { PlayerPrefs.DeleteAll(); } soundManager = GetComponent <SoundManager>(); //出現テーブルの初期化 //ポット状態の初期化 potstatus = new PotStatus(0, 0, 0, 0); potimage = Resources.Load("100", typeof(Sprite)) as Sprite; //キャラ画像の初期化 charimage = new Sprite[chardate.Length / 2]; charimage[0] = Resources.Load("1", typeof(Sprite)) as Sprite; charimage[1] = Resources.Load("2", typeof(Sprite)) as Sprite; charimage[2] = Resources.Load("3", typeof(Sprite)) as Sprite; charimage[3] = Resources.Load("4", typeof(Sprite)) as Sprite; charimage[4] = Resources.Load("5", typeof(Sprite)) as Sprite; charimage[5] = Resources.Load("6", typeof(Sprite)) as Sprite; charimage[6] = Resources.Load("7", typeof(Sprite)) as Sprite; charimage[7] = Resources.Load("8", typeof(Sprite)) as Sprite; charimage[8] = Resources.Load("9", typeof(Sprite)) as Sprite; charimage[9] = Resources.Load("10", typeof(Sprite)) as Sprite; charimage[10] = Resources.Load("11", typeof(Sprite)) as Sprite; //キャラの設定 rare度, ポイント, number, 名前,詳細, 画像 生存時間 出現Pot characters.Add(new character(0, 1, 1, chardate[0, 0], chardate[0, 1], charimage[0], 1000, 0)); characters.Add(new character(1, 3, 2, chardate[1, 0], chardate[1, 1], charimage[1], 1000, 0)); characters.Add(new character(2, 5, 3, chardate[2, 0], chardate[2, 1], charimage[2], 1000, 0)); characters.Add(new character(3, 10, 4, chardate[3, 0], chardate[3, 1], charimage[3], 1000, 0)); characters.Add(new character(4, 20, 5, chardate[4, 0], chardate[4, 1], charimage[4], 1000, 0)); characters.Add(new character(5, 30, 6, chardate[5, 0], chardate[5, 1], charimage[5], 1000, 0)); characters.Add(new character(6, 50, 7, chardate[6, 0], chardate[6, 1], charimage[6], 1000, 0)); characters.Add(new character(7, 100, 8, chardate[7, 0], chardate[7, 1], charimage[7], 1000, 0)); characters.Add(new character(0, 300, 9, chardate[8, 0], chardate[8, 1], charimage[8], 1000, 1)); characters.Add(new character(0, 500, 10, chardate[9, 0], chardate[9, 1], charimage[9], 1000, 2)); characters.Add(new character(0, 1000, 11, chardate[10, 0], chardate[10, 1], charimage[10], 1000, 3)); //ロードするとこ if (PlayerPrefs.HasKey("SEvolume")) { savedate = new SaveDate(potstatus, characters, sumpoint, savebarvalue, savebarmax, bartype, badtime, char_time, id, potflag); leavetime = (int)(DateTime.Now.Ticks / (10000000) - long.Parse(PlayerPrefs.GetString(oldtime))); Debug.Log("Time:" + leavetime); savedate = loadPlayerData(); potstatus = savedate.potstatus; characters.Clear(); characters = savedate.characters; sumpoint = savedate.sumpoint; bartype = savedate.bartype; badtime = savedate.badtime; char_time = savedate.char_time; id = savedate.charevery; savebarvalue = savedate.savebarvalue; savebarmax = savedate.savebarmax; Debug.Log(savebarvalue + " " + leavetime); savebarvalue -= leavetime; if (savebarvalue > 0) { houtitime = leavetime; } else { houtitime = savebarvalue; badtime = leavetime - savebarvalue; } Debug.Log(houtitime); } else//初期の処理 { Debug.Log("new"); savedate = new SaveDate(potstatus, characters, sumpoint, savebarvalue, savebarmax, bartype, badtime, char_time, id, potflag); } sumpoint = 10000; }