public static bool LoadData(string fileName, ProtoSerialization serializer, out STSerializedLevel out_obj) { string fullPath = Path.Combine(AppDocumentPath, (fileName + LevelsExtention)); bool ret = false; out_obj = null; if (!File.Exists(fullPath)) { Debug.Log("Load Serialization File Not Exist At Path"); return(ret); } FileStream fs = null; Debug.Log("Load Serialization File"); fs = File.OpenRead(fullPath); out_obj = serializer.Deserialize(fs, null, typeof(STSerializedLevel)) as STSerializedLevel; ret = true; Debug.Log("Load Serialization Complete"); if (fs != null) { fs.Close(); } return(ret); }
public STSerializedLevel GetSerializedLevel() { STSerializedLevel sLevel = new STSerializedLevel(); sLevel.rootNode = new STSerializedNode(); sLevel.rootNode = _instance.RootNode.GetSerializedObject(sLevel.rootNode); sLevel.net = _instance.NodesNet.GetSerializedObject(); return(sLevel); }
public static bool SaveData(STSerializedLevel obj, ProtoSerialization serializer, string fileName, bool shouldRewrite) { string fullPath = Path.Combine(AppDocumentPath, (fileName + LevelsExtention)); //Debug.Log("Save Serialized Data to : " + fullPath); bool ret = false; if (File.Exists(fullPath)) { Debug.Log("Save Serialized Data Delete Old File"); if (shouldRewrite == false) { return(false); } File.Delete(fullPath); } FileStream fs = new FileStream(fullPath, FileMode.Create); if (fs != null) { //ProtoSerialization pSerializer = serializer as ProtoSerialization; serializer.Serialize(fs, obj); // if (pSerializer.CanSerialize (typeof ( STSerializedLevel))) // { // Debug.Log ("CAN SER"); // } // else // Debug.Log ("CAN NOT SER"); // ret = true; Debug.Log("Save Serialization Complete"); if (fs != null) { fs.Close(); } } else { Debug.Log("FS ERROR"); } return(ret); }
public static void LoadLevel(string fileName) { sLevel = new STSerializedLevel(); //STSerializedLevel data; if (STFileMng.LoadData(fileName, sLevelSerializer, out sLevel)) { clearLevel(); _instance.NodesNet.LoadNet(sLevel.net); _instance.RootNode.LoadNodes(sLevel.rootNode); } else { } }
public static bool SaveLevel(string fileName, bool shouldRewrite) { sLevel = STLevel.Instance().GetSerializedLevel(); return(STFileMng.SaveData(sLevel, sLevelSerializer, fileName, shouldRewrite)); }