using System; using System.Collections.Generic; using UnityEngine; public class SceneTaskDataLoader : SceneBaseDataLoader { public SceneTaskDataLoader(string _objectListName, string _objectFolderName) { SaveModelSystem = new SaveTaskDataManager(); SaveModelSystem.ObjectFolderName = _objectFolderName; SaveModelSystem.ObjectListName = _objectListName; } // public override List LoadData(SceneElementTypeEnum type) // { // string path = SaveSystem.GetSavePath(); // // if (!Directory.Exists(path)) // if not exists thats mean there was nothing saved yet - nothing to load // return new List(); // // FileInfo[] fileInfo = new DirectoryInfo(path).GetFiles(); // // foreach(FileInfo file in fileInfo) // { // if(file.Name != ItemsListName + ".fun") // continue; // // List taskList = SaveQuestSystem.LoadQuestsList(ItemsListName); // // foreach(Task task in taskList) // Elements.Add(task); // } // // return Elements; // } // public override void SaveData(List _elements, SceneElementTypeEnum type) // { // // Case I - if we remember all list // // 1) if after removed item form DynamicList is empty - remove all file // // 2) if after removed item form DynamciList there are another one - save updated list again // if(TaskManager.Instance.taskList.Count > 0) { // SaveQuestSystem.SaveQuestsList(_elements, ItemsListName); // } else { // string _path = SaveSystem.GetSavePath() + "/" + ItemsListName + ".fun"; // // try // { // Debug.Log("File to remove: " + _path); // // if(File.Exists(_path)) // { // File.Delete(_path); // } // } // catch (IOException ioExp) // { // Debug.LogError(ioExp.Message); // } // } // // // Case II - if we rememenber object per file // // 1) remove specyfic file // // // // Unfortunatelly we don't use this way of saving items yet :D // // } protected override List LoadGenericData() { SaveModelSystem.Path = PathBuilder.BuildSavePath().GetString(); return SaveModelSystem.LoadModelList(); } protected override bool SaveGenericData(List _elements) { SaveModelSystem.Path = PathBuilder.BuildSavePath().GetString(); try { SaveModelSystem.SaveModelList(_elements); return true; } catch (Exception e) { Debug.LogError(e.Message); } return false; } protected override List LoadStaticData() { throw new System.NotImplementedException(); } protected override List LoadDynamicData() { throw new System.NotImplementedException(); } protected override bool SaveStaticData(List _elements) { throw new System.NotImplementedException(); } protected override bool SaveDynamicData(List _elements) { throw new System.NotImplementedException(); } }