Пример #1
0
    public SerializedSaveData ConvertFromOldData(savedata oldData)
    {
        SerializedSaveData newData = new SerializedSaveData();

        newData.objectList     = oldData.list1;
        newData.terrianHeights = oldData.heights;
        return(newData);
    }
Пример #2
0
    public void Load(string name)
    {
        if (File.Exists(Application.persistentDataPath + Path.DirectorySeparatorChar + "saves" + Path.DirectorySeparatorChar + name + ".dat"))
        {
            BinaryFormatter bf   = new BinaryFormatter();
            FileStream      file = File.Open(Application.persistentDataPath + "/saves/" + name + ".dat", FileMode.Open);
            try
            {
                try
                {
                    data = (SerializedSaveData)bf.Deserialize(file);
                }
                catch (InvalidCastException ex)
                {
                    savedata oldData = null;

                    // If this is an old save file, convert it.
                    oldData   = (savedata)bf.Deserialize(file);
                    data      = ConvertFromOldData(oldData);
                    isOldFile = true;
                }
            }
            catch (SerializationException exs)
            {
                List <string> s = new List <string>();
                s.Add("Back to Main Menu");
                WindowUI wui = new WindowUI(WindowImage.ERROR, WindowType.OK, s, "Unable to Load World", "It looks like the world could not be loaded. This could be due to a corruption or old version.", false, 22, ExitDefault.NONE);
                wui.SetBackgroundActive(true);
                wui.Display();
            }

            CopyLoadData();

            file.Close();
        }//
    }
Пример #3
0
 // Use this for initialization
 void Start()
 {
     // call Load (); or Save ();
     data = new SerializedSaveData();
 }